Cursor becomes tiny when switching apps (xcursor)

Regression?
Yes
System Info and Version
 System/Version info
Hyprland, built from branch main at commit 4c3b03516209a49244a8f044143c1162752b8a7a  (pointer/hw: rollback the swapchain on multiple renders without a commit).
Date: Mon Jul 22 22:49:37 2024
Tag: v0.41.2-75-g4c3b0351, commits: 4961

flags: (if any)

System Information:
System name: Linux
Node name: devbox
Release: 6.9.10-arch1-1
Version: #1 SMP PREEMPT_DYNAMIC Thu, 18 Jul 2024 18:06:13 +0000

GPU information:
00:02.0 VGA compatible controller [0300]: Intel Corporation HD Graphics 530 [8086:191b] (rev 06) (prog-if 00 [VGA controller])

os-release: NAME="Arch Linux"
PRETTY_NAME="Arch Linux"
ID=arch
BUILD_ID=rolling
ANSI_COLOR="38;2;23;147;209"
HOME_URL="https://archlinux.org/"
DOCUMENTATION_URL="https://wiki.archlinux.org/"
SUPPORT_URL="https://bbs.archlinux.org/"
BUG_REPORT_URL="https://gitlab.archlinux.org/groups/archlinux/-/issues"
PRIVACY_POLICY_URL="https://terms.archlinux.org/docs/privacy-policy/"
LOGO=archlinux-logo

plugins:

======Config-Start======

Config File: /home/alpha/.config/hypr/hyprland.conf: Read Succeeded
# Hyprland config file

# This config file will get the config data from various other files

$confdir = $HOME/.config/hypr

$terminal = alacritty
$terminalOpen = $terminal -e
$fileManager = $terminalOpen yazi
$menu = $HOME/.config/rofi/scripts/launcher_t4
$browser = librewolf
$musicplayer = $terminalOpen musikcube
$powermenu = $HOME/.config/rofi/scripts/powermenu_t1
$lockscreen = hyprlock
$clipboardMenu = rofi -dmenu -theme $HOME/.config/rofi/launchers/type-4/style-2.rasi

env = DESKTOP_SESSION,hyprland

exec-once = /usr/lib/mate-polkit/polkit-mate-authentication-agent-1
exec-once = find $HOME/.config/waybar/ | entr -s "killall waybar; waybar &"
exec-once = nm-applet
exec-once = sleep 5 && keepassxc
exec-once = sleep 5 && $confdir/scripts/hyprpaper-gen.sh -r -s
exec-once = echo $confdir/hypridle.conf | entr -s "killall hypridle; hypridle &"
exec-once = kdeconnect-indicator
exec-once = safeeyes
exec-once = $confDir/scripts/hypr-portals.sh
exec-once = find $HOME/.config/dunst/ | entr -s "killall dunst; dunst &"

exec-once = wl-clip-persist --clipboard regular --all-mime-type-regex '^(?!x-kde-passwordManagerHint).+'
exec-once = wl-paste --type text --watch cliphist store #Stores only text data
exec-once = cliphist wipe

exec-once=[workspace 2] $browser
exec-once=[workspace 1 silent] $terminalOpen btop
exec-once=[workspace special:s10 silent] thunderbird
exec-once=node $HOME/.dotfiles/assets/utilities/arrpc/src

source = $confdir/display.conf
source = $confdir/looks.conf
source = $confdir/input.conf
source = $confdir/keybinds.conf
source = $confdir/workspaces.conf
source = $confdir/plugins.conf

Config File: /home/alpha/.config/hypr/display.conf: Read Succeeded
env = XCURSOR_SIZE,24
env = HYPRCURSOR_SIZE,24
env = XDG_CURRENT_DESKTOP,Hyprland
env = XDG_SESSION_TYPE,wayland
env = XDG_SESSION_DESKTOP,Hyprland

monitor=eDP-1,1920x1080,auto,1.25
monitor=,preferred,auto,1

Config File: /home/alpha/.config/hypr/looks.conf: Read Succeeded
# https://wiki.hyprland.org/Configuring/Variables/#general
general {
    gaps_in = 2
    gaps_out = 10

    border_size = 3

    col.active_border = rgba(33ccffee) rgba(00ff99ee) 45deg
    col.inactive_border = rgba(595959aa)

    resize_on_border = true
    extend_border_grab_area = 12
    no_border_on_floating = false

    allow_tearing = false

    layout = dwindle
}

# https://wiki.hyprland.org/Configuring/Variables/#decoration
decoration {
    rounding = 10

    # Change transparency of focused and unfocused windows
    active_opacity = 1.0
    inactive_opacity = 1.0

    drop_shadow = true
    shadow_range = 4
    shadow_render_power = 3
    col.shadow = rgba(1a1a1aee)

    # https://wiki.hyprland.org/Configuring/Variables/#blur
    blur {
        enabled = true
        passes = 1
        xray = false
        popups = false

        vibrancy = 0.1696
    }
}

# https://wiki.hyprland.org/Configuring/Variables/#animations
animations {
    enabled = true
    first_launch_animation = true

    bezier = myBezier, 0.05, 0.9, 0.1, 1.05

    animation = windows, 1, 7, myBezier
    animation = windowsOut, 1, 7, default, popin 80%
    animation = border, 1, 10, default
    animation = borderangle, 1, 8, default
    animation = fade, 1, 7, default
    animation = workspaces, 1, 6, default
}

# See https://wiki.hyprland.org/Configuring/Dwindle-Layout/ for more
dwindle {
    pseudotile = true # Master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below
    preserve_split = true # You probably want this
}

# https://wiki.hyprland.org/Configuring/Variables/#misc
misc {
    new_window_takes_over_fullscreen = 2
    force_default_wallpaper = -1
	animate_manual_resizes = true
    disable_hyprland_logo = false
	focus_on_activate = true
	mouse_move_focuses_monitor = false
	close_special_on_empty = true
}

xwayland {
	use_nearest_neighbor = true
	force_zero_scaling = true
}

Config File: /home/alpha/.config/hypr/input.conf: Read Succeeded
# https://wiki.hyprland.org/Configuring/Variables/#input
input {
    kb_layout = us
    kb_variant =
    kb_model =
    kb_options =
    kb_rules =

    numlock_by_default = true

    follow_mouse = 2
    natural_scroll = false

    sensitivity = 0 # -1.0 - 1.0, 0 means no modification.

    touchpad {
        disable_while_typing = true
        natural_scroll = true
        middle_button_emulation = true
		tap_button_map = lrm
		clickfinger_behavior = true
        tap-to-click = true
		tap-and-drag = true
    }

    touchdevice {
        enabled = true

    }
}

# https://wiki.hyprland.org/Configuring/Variables/#gestures
gestures {
    workspace_swipe = true
    workspace_swipe_fingers = 3
    workspace_swipe_touch = false
    workspace_swipe_invert = true
    workspace_swipe_forever = true  # don't clamp at neighbouring workspace
    workspace_swipe_cancel_ratio = 0.35
    workspace_swipe_create_new = true
    workspace_swipe_direction_lock = true
    workspace_swipe_direction_lock_threshold = 10
}

cursor {
	inactive_timeout = 10
	hide_on_key_press = true
	hide_on_touch = true
}

binds {
	workspace_center_on = 1
}

# Example per-device config
# See https://wiki.hyprland.org/Configuring/Keywords/#per-device-input-configs for more
#device {
#    name = epic-mouse-v1
#    sensitivity = -0.5
#}

$TOUCHPAD_ENABLED = true

device {
	name = dll07d0:01-044e:120b
	enabled = $TOUCHPAD_ENABLED
}

Config File: /home/alpha/.config/hypr/keybinds.conf: Read Succeeded
# https://wiki.hyprland.org/Configuring/Keywords/

$mainMod = SUPER    # Set 'SUPER' Key as Mainmod key

bind = $mainMod, w, exec, $terminal
bind = $mainMod, q, killactive
bind = $mainMod, f, fullscreen, 1
bind = $mainMod + SHIFT, f, fullscreen, 0
bind = $mainMod, p, togglefloating
bind = $mainMod + SHIFT, p, pin
bind = $mainMod, b, exec, $browser
bind = $mainMod, r, exec, $menu
bind = $mainMod + ALT, r, exec, $menu_all
bind = $mainMod, t, togglesplit
bind = $mainMod, TAB, workspace, previous
bind = $mainMod + SHIFT, TAB, movetoworkspace, previous
bind = $mainMod, e, exec, $fileManager
bind = $mainMod + CTRL, x, exec, kill -9 $(hyprctl -j activewindow | jq .pid);

# Navigating and moving windows to workspaces
bind = $mainMod + CTRL, code:35, workspace, r+1  # use ] to go to the next workspace
bind = $mainMod + CTRL, code:34, workspace, r-1  # use [ to go to the previous workspace
bind = $mainMod, code:35, workspace, e+1  # use ] to go to the next open workspace
bind = $mainMod, code:34, workspace, e-1  # use [ to go to the previous open workspace
bind = $mainMod + SHIFT, code:35, movetoworkspace, r+1 # move the current window to the next workspace
bind = $mainMod + SHIFT, code:34, movetoworkspace, r-1 # move the current window to the previous workspace
bind = $mainMod + CTRL +SHIFT, code:35, movetoworkspace, e+1 # move the current window to the next open workspace
bind = $mainMod + CTRL + SHIFT, code:34, movetoworkspace, e-1 # move the current window to the previous open workspace
bind = $mainMod, o, workspace, empty   # go to an empty workspace
bind = $mainMod + SHIFT, o, movetoworkspace, empty   # move current window to an empty workspace

# Move focus with mainMod + vim keybinds
bind = $mainMod, h, movefocus, l
bind = $mainMod, l, movefocus, r
bind = $mainMod, k, movefocus, u
bind = $mainMod, j, movefocus, d

# Move focus with mainMod + vim keybinds
binde = $mainMod + SHIFT, h, exec, echo "l" 20 | $confdir/scripts/window_movement.sh
binde = $mainMod + SHIFT, l, exec, echo "r" 20 | $confdir/scripts/window_movement.sh
binde = $mainMod + SHIFT, k, exec, echo "u" 20 | $confdir/scripts/window_movement.sh
binde = $mainMod + SHIFT, j, exec, echo "d" 20 | $confdir/scripts/window_movement.sh

# Switch workspaces with mainMod + [0-9]
bind = $mainMod, 1, workspace, 1
bind = $mainMod, 2, workspace, 2
bind = $mainMod, 3, workspace, 3
bind = $mainMod, 4, workspace, 4
bind = $mainMod, 5, workspace, 5
bind = $mainMod, 6, workspace, 6
bind = $mainMod, 7, workspace, 7
bind = $mainMod, 8, workspace, 8
bind = $mainMod, 9, workspace, 9
bind = $mainMod, 0, workspace, 10

# Move active window to a workspace with mainMod + SHIFT + [0-9]
bind = $mainMod + SHIFT, 1, movetoworkspace, 1
bind = $mainMod + SHIFT, 2, movetoworkspace, 2
bind = $mainMod + SHIFT, 3, movetoworkspace, 3
bind = $mainMod + SHIFT, 4, movetoworkspace, 4
bind = $mainMod + SHIFT, 5, movetoworkspace, 5
bind = $mainMod + SHIFT, 6, movetoworkspace, 6
bind = $mainMod + SHIFT, 7, movetoworkspace, 7
bind = $mainMod + SHIFT, 8, movetoworkspace, 8
bind = $mainMod + SHIFT, 9, movetoworkspace, 9
bind = $mainMod + SHIFT, 0, movetoworkspace, 10

# Resizing current window
binde=$mainMod,right,resizeactive,10 0
binde=$mainMod,left,resizeactive,-10 0
binde=$mainMod,up,resizeactive,0 -10
binde=$mainMod,down,resizeactive,0 10

binde=$mainMod + SHIFT,right,resizeactive,50 0
binde=$mainMod + SHIFT,left,resizeactive,-50 0
binde=$mainMod + SHIFT,up,resizeactive,0 -50
binde=$mainMod + SHIFT,down,resizeactive,0 50

# Move/resize windows with mainMod + LMB/RMB and dragging
bindm = $mainMod, mouse:272, movewindow
bindm = $mainMod, mouse:273, resizewindow

# Scroll through existing workspaces with mainMod + scroll
bind = $mainMod, mouse_down, workspace, e+1
bind = $mainMod, mouse_up, workspace, e-1

# Scroll through all workspaces with CTRL + mainMod + scroll
bind = $mainMod + CTRL, mouse_down, workspace, e+1
bind = $mainMod + CTRL, mouse_up, workspace, e-1

# Special workspaces
bind = $mainMod, S, togglespecialworkspace, magic
bind = $mainMod + SHIFT, S, movetoworkspace, special:magic
bind = $mainMod, D, exec, hyprctl dispatch togglespecialworkspace && hyprctl dispatch togglespecialworkspace
bind = $mainMod + SHIFT, D, movetoworkspace, e+0     # Move the current window from special workspace to active workspace

bind = $mainMod + CTRL, 1, togglespecialworkspace, s1
bind = $mainMod + CTRL, 2, togglespecialworkspace, s2
bind = $mainMod + CTRL, 3, togglespecialworkspace, s3
bind = $mainMod + CTRL, 4, togglespecialworkspace, s4
bind = $mainMod + CTRL, 5, togglespecialworkspace, s5
bind = $mainMod + CTRL, 6, togglespecialworkspace, s6
bind = $mainMod + CTRL, 7, togglespecialworkspace, s7
bind = $mainMod + CTRL, 8, togglespecialworkspace, s8
bind = $mainMod + CTRL, 9, togglespecialworkspace, s9
bind = $mainMod + CTRL, 0, togglespecialworkspace, s10
bind = $mainMod + CTRL + SHIFT, 1, movetoworkspace, special:s1
bind = $mainMod + CTRL + SHIFT, 2, movetoworkspace, special:s2
bind = $mainMod + CTRL + SHIFT, 3, movetoworkspace, special:s3
bind = $mainMod + CTRL + SHIFT, 4, movetoworkspace, special:s4
bind = $mainMod + CTRL + SHIFT, 5, movetoworkspace, special:s5
bind = $mainMod + CTRL + SHIFT, 6, movetoworkspace, special:s6
bind = $mainMod + CTRL + SHIFT, 7, movetoworkspace, special:s7
bind = $mainMod + CTRL + SHIFT, 8, movetoworkspace, special:s8
bind = $mainMod + CTRL + SHIFT, 9, movetoworkspace, special:s9
bind = $mainMod + CTRL + SHIFT, 0, movetoworkspace, special:s10

# Volume controls
bindel =, XF86AudioRaiseVolume, exec, wpctl set-volume -l 1 @DEFAULT_SINK@ 0.02+; notify-send --category=device --urgency=low --hint=int:value:$(pactl get-sink-volume $(pactl get-default-sink) | grep -oP '\d?\d?\d%' | head --lines=1 | sed 's/%//g') volume_event
bindel =, XF86AudioLowerVolume, exec, wpctl set-volume @DEFAULT_SINK@ 0.02-; notify-send --category=device --urgency=low --hint=int:value:$(pactl get-sink-volume $(pactl get-default-sink) | grep -oP '\d?\d?\d%' | head --lines=1 | sed 's/%//g') volume_event
bindel =, XF86AudioMute, exec, wpctl set-mute @DEFAULT_SINK@ toggle

# mic mute toggle
bindl =, XF86AudioMicMute, exec, wpctl set-mute @DEFAULT_SOURCE@ toggle

# media controls
bindl =, XF86AudioPlay, exec, playerctl play
bindl=, XF86AudioPause, exec, playerctl pause
bindl=, XF86AudioNext, exec, playerctl next
bindl=, XF86AudioPrev, exec, playerctl previous

# clipboard manager binds (keyboard history)
bind = $mainMod, v, exec, cliphist list | $clipboardMenu | cliphist decode | wl-copy

# power controls
bindl = $mainMod + SHIFT, q, exec, $powermenu
bindl = CTRL + ALT, code:119, exec, hyprctl dispatch exit
bindl = ALT, f4, exec, $powermenu
bind = $mainMod + CTRL + ALT, l, exec, systemd-inhibit bash $confdir/scripts/hyprlock-transparent.sh
bind = $mainMod + ALT, l, exec, $lockscreen

# Brightness controls
bindel =, XF86MonBrightnessUp, exec, val=$(brightnessctl --device='intel_backlight' -m s +1%); notify-send --category=device --urgency=low --hint=int:value:$(($(echo $val | cut --delimiter="," --fields=3)*100/$(echo $val | cut --delimiter="," --fields=5))) brightness_event
bindel =, XF86MonBrightnessDown, exec, val=$(brightnessctl --device='intel_backlight' --min-value=75 -m s 1%-); notify-send --category=device --urgency=low --hint=int:value:$(($(echo $val | cut --delimiter="," --fields=3)*100/$(echo $val | cut --delimiter="," --fields=5))) brightness_event
bindel = SHIFT, XF86MonBrightnessUp, exec, val=$(brightnessctl --device='intel_backlight' -m s +5%); notify-send --category=device --urgency=low --hint=int:value:$(($(echo $val | cut --delimiter="," --fields=3)*100/$(echo $val | cut --delimiter="," --fields=5))) brightness_event
bindel = SHIFT, XF86MonBrightnessDown, exec, val=$(brightnessctl --device='intel_backlight' --min-value=75 -m s 5%-); notify-send --urgency=low --category=device --hint=int:value:$(($(echo $val | cut --delimiter="," --fields=3)*100/$(echo $val | cut --delimiter="," --fields=5))) brightness_event

# Screenshots
bind = $mainMod + CTRL, S, exec, grim -g "$(slurp -d)" - | wl-copy
bind = , Print, exec, grim - | wl-copy; notify-send --urgency=low "Screenshot copied to clipboard"
bind = SHIFT, Print, exec, grim -g "$(slurp -d)" - | wl-copy; notify-send --urgency=low "Screenshot copied to clipboard"
bind = CTRL, Print, exec, window=$(hyprctl activewindow -j); filename="$(date +%Y%m%d_%H%M%S)_$(echo $window | jq -r .class).png"; grim "$HOME/Pictures/Screenshots/$filename"; notify-send --urgency=low "Screenshot saved under: $filename"
bind = CTRL + SHIFT, Print, exec, window=$(hyprctl activewindow -j); filename="$(date +%Y%m%d_%H%M%S)_$(echo $window | jq -r .class).png"; grim -g "$(slurp -d)" "$HOME/Pictures/Screenshots/$filename"; notify-send --urgency=low "Screenshot saved under: $filename"

# Screenrecord
bind = ALT, Print, exec, $confdir/scripts/screen-record.sh true false
bind = ALT + SHIFT, Print, exec, $confdir/scripts/screen-record.sh true true
bind = ALT + CTRL, Print, exec, $confdir/scripts/screen-record.sh false false
bind = ALT + CTRL + SHIFT, Print, exec, $confdir/scripts/screen-record.sh false true

# Change wallpaper
bind = $mainMod + Alt, W, exec, $confdir/scripts/hyprpaper-gen.sh -r -S

# Bind to toggle touchpad
bind =, XF86Search, exec, $confdir/scripts/touchpad-toggle.sh

Config File: /home/alpha/.config/hypr/workspaces.conf: Read Succeeded
workspace = special:music, on-created-empty:[workspace special:music] $musicplayer, persistent:false
bind = $mainMod, m, togglespecialworkspace, music
workspace = special:magic, on-created-empty:$browser --new-window "https://discord.com/channels/@me", persistent:false

layerrule = blur,waybar

windowrulev2 = stayfocused, class:^(org.kde.kwalletd6)$
windowrulev2 = suppressevent maximize, class:.* # You'll probably like this.

windowrule = float, title:^(Picture-in-Picture)$
windowrule = pin, title:^(Picture-in-Picture)$

windowrulev2 = float, class:(org.keepassxc.KeePassXC), title:(Unlock Database - KeePassXC)
windowrulev2 = float, class:(org.keepassxc.KeePassXC), title:(KeePassXC -  Access Request)
windowrulev2 = float, class:(org.keepassxc.KeePassXC), title:(KeePassXC - Browser Access Request)

Config File: /home/alpha/.config/hypr/plugins.conf: Read Succeeded
# exec-once = hyprpm reload -n

# bind = ALT, grave, hyprexpo:expo, toggle # can be: toggle, off/disable or on/enable
# bind = $mainMod, grave, overview:toggle

plugin {
    hyprexpo {
        columns = 3
        gap_size = 5
        bg_col = rgb(111111)
        workspace_method = first 1 # [center/first] [workspace] e.g. first 1 or center m+1

        enable_gesture = true # laptop touchpad, 4 fingers
        gesture_distance = 300 # how far is the "max"
        gesture_positive = true # positive = swipe down. Negative = swipe up.
    }

	# overview {
	# 	disableGestures = true
	# 	reverseSwipe = true
	# 	showSpecialWorkspace = false
	# }
}

======Config-End========

Description
Sometimes, while changing workspaces or while moving the cursor in and out of different apps, the cursor changes its size and becomes tiny.
How to reproduce
Move the cursor into an empty workspace
Crash reports, logs, images, videos
https://github.com/user-attachments/assets/c460307e-4a14-42a5-97ca-b92f5a604391

Not using any cursor themes
Installed hyprcursor from git (AUR package hyprcursor-git)

waybar and firefox follows the gsettings, I'd assume qt apps behave like on desktop with tiny cursors.. and I'm not having this issue with hyprcursor-git, since u don't have hyprcursor themes installed, will it help to comment out the line env = HYPRCURSOR_SIZE,24

will it help to comment out the line env = HYPRCURSOR_SIZE,24

I haven't realized this line existed. I yanked an example config from hyprland wiki long ago when I was setting up my config. I have commented out that line and still have the issue. Moreover, that line existed from the very beginning of using hyprland so im sure recent commits have caused the issue.
Instances of the cursor size turning tiny: opening a new workspace with no windows (always), having the cursor on hyprland window border, moving the cursor from firefox (librewolf) to alacritty (terminal emulator). It doesnt turn tiny when moving from waybar to alacritty.

so im sure recent commits have caused the issue.

Yep, I just came here because immediately after updating to the latest git, I now have this same issue.

You are likely using an XCursor. Have you tried installing a hyprcursor theme?

I tried installed hyprcursor theme hyprcursor-dracula-kde-git and hyprcursor-git package, and it changes cursor for that half of windows that was with a tiny cursor.
env = HYPRCURSOR_THEME,hyprcursor_Dracula
env = HYPRCURSOR_SIZE,48

I made size bigger, but cursors are different theme from window to window.
How to make them consistent?
Btw theme sucks and there is no variety to choose

you'll have to set the XCursor theme to be the same theme as your hyprcursor theme, just compiled for X.

patch.txt
try this patch for small xcursor

That's my path to consistent cursors, may be useful for others:
# 1) install the only cursor package that supports x and hyprland at the same time
yay -S bibata-cursor-git

# 2) set cursor for gtk-2
gsettings set org.gnome.desktop.interface cursor-theme Bibata-Modern-Classic

# 3) TODO: set cursors for gtk-3 via lxappearance to Bibata-Modern-Classic

# 4) edit hyprland.conf

hyprland.conf
env = HYPRCURSOR_THEME,Bibata-Modern-Classic
# without HYPRCURSOR_SIZE

without patch sizes ok

I had this exact same problem - was also a regression when Hyprland switched from wlroots-hyprland to aquamarine.
Have documented the steps here for using the rose-pine theme:

https://github.com/hyprwm/Hyprland/issues/6320#issuecomment-2243109637

Perhaps check if this works first before exploring other themes to help isolate the issue.

with normal hyprland packages like hyprland, hyprcursor etc i set both hyrpcursor and xcursor to same theme
env = HYPRCURSOR_THEME, Bibata-Original-Amber
env = HYPRCURSOR_SIZE, 20
env = XCURSOR_THEME,Bibata-Original-Amber
env = XCURSOR_SIZE, 20

but when i installed all git version to use hyprpm the cursor becomes tiny and no theme when moved to different apps

You are likely using an XCursor. Have you tried installing a hyprcursor theme?

I dont think im using a xcursor theme. Ive been using this same setup since many months.
I uninstalled the -git versions of hypr suite and installed releases from the arch repos and used it for a few days. The cursor size wasnt a problem. Reinstalling the -git versions beings back the inconsistent cursors.
https://github.com/user-attachments/assets/fa659317-f2fe-47a5-9705-9dda0fb263b8
Ive followed @coffebar guide to consistent cursors but it seems either the cursor themes arent working in some cases. Ive confirmed this by commenting either theme env vars and restarting hyprland. It produces the same results as the video.
Also, all the apps shown in the demonstration are wayland apps (alacritty, librewolf (firefox fork) with MOZ_ENABLE_WAYLAND=1, alacritty terminal emulator, waybar and of course hyprland (built from commit 33a5c8ce325e1657ec5571b57e05c6378706f4cd)

I posted a patch 2 days ago and nobody bothered to try it, so I will ignore your laments

I posted a patch 2 days ago and nobody bothered to try it, so I will ignore your laments

have no idea where to apply that patch , i am newbie . so have zero idea where to paste it or to add into any other file

@HK-Sepuri
Here's how you can do it when building from source:

Clone Hyprland and cd into it as per the installation instructions:
git clone --recursive https://github.com/hyprwm/Hyprland
cd Hyprland

(ensure you have all the dependencies as listed on that page for your distribution)

Download the patch.txt file and place it at the root of the Hyprland repository that you've just cloned

Use the patch  command to apply this patch file
patch -p1 < patch.txt

you can sanity-check that the patch has been applied successfully with
git diff

Rebuild and reinstall hyprland
make all && sudo make install

As an aside, you can revert the patch with
patch -p1 -R < patch.txt

@nktnet1  i actually installed from aur(Arch) , hyprland-git version , ill revert back to hyprland version (not git one) that works well. Thanks for help :)

@nktnet1
https://github.com/hyprwm/Hyprland/issues/6320#issuecomment-2243109637
This worked! Thank you ! :)

try this patch for small xcursor

Applied that patch and built Hyprland, still same results.
 System/Version info
Hyprland, built from branch main at commit a4b8e3808b29f4861601ffc859241f46da5aa980  (apply xcursor patch).
Date: Sat Jul 27 10:21:35 2024
Tag: v0.41.2-100-ga4b8e380, commits: 4986
flags: (if any)
System Information:
System name: Linux
Node name: devbox
Release: 6.10.1-arch1-1
Version: #1 SMP PREEMPT_DYNAMIC Wed, 24 Jul 2024 22:25:43 +0000
GPU information:
00:02.0 VGA compatible controller [0300]: Intel Corporation HD Graphics 530 [8086:191b] (rev 06) (prog-if 00 [VGA controller])
os-release: NAME="Arch Linux"
PRETTY_NAME="Arch Linux"
ID=arch
BUILD_ID=rolling
ANSI_COLOR="38;2;23;147;209"
HOME_URL="https://archlinux.org/"
DOCUMENTATION_URL="https://wiki.archlinux.org/"
SUPPORT_URL="https://bbs.archlinux.org/"
BUG_REPORT_URL="https://gitlab.archlinux.org/groups/archlinux/-/issues"
PRIVACY_POLICY_URL="https://terms.archlinux.org/docs/privacy-policy/"
LOGO=archlinux-logo
plugins:
======Config-Start======
Config File: /home/alpha/.config/hypr/hyprland.conf: Read Succeeded
Hyprland config file
This config file will get the config data from various other files
$confdir = $HOME/.config/hypr
$terminal = alacritty
$terminalOpen = $terminal -e
$fileManager = $terminalOpen yazi
$menu = $HOME/.config/rofi/scripts/launcher_t4
$browser = librewolf
$musicplayer = $terminalOpen musikcube
$powermenu = $HOME/.config/rofi/scripts/powermenu_t1
$lockscreen = hyprlock
$clipboardMenu = rofi -dmenu -theme $HOME/.config/rofi/launchers/type-4/style-2.rasi
env = DESKTOP_SESSION,hyprland
exec-once = /usr/lib/mate-polkit/polkit-mate-authentication-agent-1
exec-once = find $HOME/.config/waybar/ | entr -s "killall waybar; waybar &"
exec-once = nm-applet
exec-once = sleep 5 && keepassxc
exec-once = sleep 5 && $confdir/scripts/hyprpaper-gen.sh -r -s
exec-once = echo $confdir/hypridle.conf | entr -s "killall hypridle; hypridle &"
exec-once = kdeconnect-indicator
exec-once = safeeyes
exec-once = $confDir/scripts/hypr-portals.sh
exec-once = find $HOME/.config/dunst/ | entr -s "killall dunst; dunst &"
exec-once = wl-clip-persist --clipboard regular --all-mime-type-regex '^(?!x-kde-passwordManagerHint).+'
exec-once = wl-paste --type text --watch cliphist store #Stores only text data
exec-once = cliphist wipe
exec-once=[workspace 2] $browser
exec-once=[workspace 1 silent] $terminalOpen btop
exec-once=[workspace special:s10 silent] thunderbird
exec-once=node $HOME/.dotfiles/assets/utilities/arrpc/src
source = $confdir/display.conf
source = $confdir/looks.conf
source = $confdir/input.conf
source = $confdir/keybinds.conf
source = $confdir/workspaces.conf
source = $confdir/plugins.conf
Config File: /home/alpha/.config/hypr/display.conf: Read Succeeded
env = XCURSOR_SIZE,24
env = HYPRCURSOR_SIZE,24
env = XDG_CURRENT_DESKTOP,Hyprland
env = XDG_SESSION_TYPE,wayland
env = XDG_SESSION_DESKTOP,Hyprland
monitor=eDP-1,1920x1080,auto,1.25
monitor=,preferred,auto,1
Config File: /home/alpha/.config/hypr/looks.conf: Read Succeeded
https://wiki.hyprland.org/Configuring/Variables/#general
general {
gaps_in = 2
gaps_out = 10
border_size = 3

col.active_border = rgba(33ccffee) rgba(00ff99ee) 45deg
col.inactive_border = rgba(595959aa)

resize_on_border = true
extend_border_grab_area = 12
no_border_on_floating = false

allow_tearing = false

layout = dwindle

}
https://wiki.hyprland.org/Configuring/Variables/#decoration
decoration {
rounding = 10
# Change transparency of focused and unfocused windows
active_opacity = 1.0
inactive_opacity = 1.0

drop_shadow = true
shadow_range = 4
shadow_render_power = 3
col.shadow = rgba(1a1a1aee)

# https://wiki.hyprland.org/Configuring/Variables/#blur
blur {
    enabled = true
    passes = 1
    xray = false
    popups = false

    vibrancy = 0.1696
}

}
https://wiki.hyprland.org/Configuring/Variables/#animations
animations {
enabled = true
first_launch_animation = true
bezier = myBezier, 0.05, 0.9, 0.1, 1.05

animation = windows, 1, 7, myBezier
animation = windowsOut, 1, 7, default, popin 80%
animation = border, 1, 10, default
animation = borderangle, 1, 8, default
animation = fade, 1, 7, default
animation = workspaces, 1, 6, default

}
See https://wiki.hyprland.org/Configuring/Dwindle-Layout/ for more
dwindle {
pseudotile = true # Master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below
preserve_split = true # You probably want this
}
https://wiki.hyprland.org/Configuring/Variables/#misc
misc {
new_window_takes_over_fullscreen = 2
force_default_wallpaper = -1
animate_manual_resizes = true
disable_hyprland_logo = false
focus_on_activate = true
mouse_move_focuses_monitor = false
close_special_on_empty = true
}
xwayland {
use_nearest_neighbor = true
force_zero_scaling = true
}
Config File: /home/alpha/.config/hypr/input.conf: Read Succeeded
https://wiki.hyprland.org/Configuring/Variables/#input
input {
kb_layout = us
kb_variant =
kb_model =
kb_options =
kb_rules =
numlock_by_default = true

follow_mouse = 2
natural_scroll = false

sensitivity = 0 # -1.0 - 1.0, 0 means no modification.

touchpad {
    disable_while_typing = true
    natural_scroll = true
    middle_button_emulation = true
	tap_button_map = lrm
	clickfinger_behavior = true
    tap-to-click = true
	tap-and-drag = true
}

touchdevice {
    enabled = true

}

}
https://wiki.hyprland.org/Configuring/Variables/#gestures
gestures {
workspace_swipe = true
workspace_swipe_fingers = 3
workspace_swipe_touch = false
workspace_swipe_invert = true
workspace_swipe_forever = true  # don't clamp at neighbouring workspace
workspace_swipe_cancel_ratio = 0.35
workspace_swipe_create_new = true
workspace_swipe_direction_lock = true
workspace_swipe_direction_lock_threshold = 10
}
cursor {
inactive_timeout = 10
hide_on_key_press = true
hide_on_touch = true
}
binds {
workspace_center_on = 1
}
Example per-device config
See https://wiki.hyprland.org/Configuring/Keywords/#per-device-input-configs for more
#device {
name = epic-mouse-v1
sensitivity = -0.5
#}
$TOUCHPAD_ENABLED = true
device {
name = dll07d0:01-044e:120b
enabled = $TOUCHPAD_ENABLED
}
Config File: /home/alpha/.config/hypr/keybinds.conf: Read Succeeded
https://wiki.hyprland.org/Configuring/Keywords/
$mainMod = SUPER    # Set 'SUPER' Key as Mainmod key
bind = $mainMod, w, exec, $terminal
bind = $mainMod + SHIFT, w, exec, [float] $terminal
bind = $mainMod, q, killactive
bind = $mainMod, f, fullscreen, 1
bind = $mainMod + SHIFT, f, fullscreen, 0
bind = $mainMod, p, togglefloating
bind = $mainMod + SHIFT, p, pin
bind = $mainMod, b, exec, $browser
bind = $mainMod, r, exec, $menu
bind = $mainMod + ALT, r, exec, $menu_all
bind = $mainMod, t, togglesplit
bind = $mainMod, TAB, workspace, previous
bind = $mainMod + SHIFT, TAB, movetoworkspace, previous
bind = $mainMod, e, exec, $fileManager
bind = $mainMod + CTRL, x, exec, kill -9 $(hyprctl -j activewindow | jq .pid);
Navigating and moving windows to workspaces
bind = $mainMod + CTRL, code:35, workspace, r+1  # use ] to go to the next workspace
bind = $mainMod + CTRL, code:34, workspace, r-1  # use [ to go to the previous workspace
bind = $mainMod, code:35, workspace, e+1  # use ] to go to the next open workspace
bind = $mainMod, code:34, workspace, e-1  # use [ to go to the previous open workspace
bind = $mainMod + SHIFT, code:35, movetoworkspace, r+1 # move the current window to the next workspace
bind = $mainMod + SHIFT, code:34, movetoworkspace, r-1 # move the current window to the previous workspace
bind = $mainMod + CTRL +SHIFT, code:35, movetoworkspace, e+1 # move the current window to the next open workspace
bind = $mainMod + CTRL + SHIFT, code:34, movetoworkspace, e-1 # move the current window to the previous open workspace
bind = $mainMod, o, workspace, empty   # go to an empty workspace
bind = $mainMod + SHIFT, o, movetoworkspace, empty   # move current window to an empty workspace
Move focus with mainMod + vim keybinds
bind = $mainMod, h, movefocus, l
bind = $mainMod, l, movefocus, r
bind = $mainMod, k, movefocus, u
bind = $mainMod, j, movefocus, d
Move focus with mainMod + vim keybinds
binde = $mainMod + SHIFT, h, exec, echo "l" 20 | $confdir/scripts/window_movement.sh
binde = $mainMod + SHIFT, l, exec, echo "r" 20 | $confdir/scripts/window_movement.sh
binde = $mainMod + SHIFT, k, exec, echo "u" 20 | $confdir/scripts/window_movement.sh
binde = $mainMod + SHIFT, j, exec, echo "d" 20 | $confdir/scripts/window_movement.sh
Switch workspaces with mainMod + [0-9]
bind = $mainMod, 1, workspace, 1
bind = $mainMod, 2, workspace, 2
bind = $mainMod, 3, workspace, 3
bind = $mainMod, 4, workspace, 4
bind = $mainMod, 5, workspace, 5
bind = $mainMod, 6, workspace, 6
bind = $mainMod, 7, workspace, 7
bind = $mainMod, 8, workspace, 8
bind = $mainMod, 9, workspace, 9
bind = $mainMod, 0, workspace, 10
Move active window to a workspace with mainMod + SHIFT + [0-9]
bind = $mainMod + SHIFT, 1, movetoworkspace, 1
bind = $mainMod + SHIFT, 2, movetoworkspace, 2
bind = $mainMod + SHIFT, 3, movetoworkspace, 3
bind = $mainMod + SHIFT, 4, movetoworkspace, 4
bind = $mainMod + SHIFT, 5, movetoworkspace, 5
bind = $mainMod + SHIFT, 6, movetoworkspace, 6
bind = $mainMod + SHIFT, 7, movetoworkspace, 7
bind = $mainMod + SHIFT, 8, movetoworkspace, 8
bind = $mainMod + SHIFT, 9, movetoworkspace, 9
bind = $mainMod + SHIFT, 0, movetoworkspace, 10
Resizing current window
binde=$mainMod,right,resizeactive,10 0
binde=$mainMod,left,resizeactive,-10 0
binde=$mainMod,up,resizeactive,0 -10
binde=$mainMod,down,resizeactive,0 10
binde=$mainMod + SHIFT,right,resizeactive,50 0
binde=$mainMod + SHIFT,left,resizeactive,-50 0
binde=$mainMod + SHIFT,up,resizeactive,0 -50
binde=$mainMod + SHIFT,down,resizeactive,0 50
Move/resize windows with mainMod + LMB/RMB and dragging
bindm = $mainMod, mouse:272, movewindow
bindm = $mainMod, mouse:273, resizewindow
Scroll through existing workspaces with mainMod + scroll
bind = $mainMod, mouse_down, workspace, e+1
bind = $mainMod, mouse_up, workspace, e-1
Scroll through all workspaces with CTRL + mainMod + scroll
bind = $mainMod + CTRL, mouse_down, workspace, e+1
bind = $mainMod + CTRL, mouse_up, workspace, e-1
Special workspaces
bind = $mainMod, S, togglespecialworkspace, magic
bind = $mainMod + SHIFT, S, movetoworkspace, special:magic
bind = $mainMod, D, exec, hyprctl dispatch togglespecialworkspace && hyprctl dispatch togglespecialworkspace
bind = $mainMod + SHIFT, D, movetoworkspace, e+0     # Move the current window from special workspace to active workspace
bind = $mainMod + CTRL, 1, togglespecialworkspace, s1
bind = $mainMod + CTRL, 2, togglespecialworkspace, s2
bind = $mainMod + CTRL, 3, togglespecialworkspace, s3
bind = $mainMod + CTRL, 4, togglespecialworkspace, s4
bind = $mainMod + CTRL, 5, togglespecialworkspace, s5
bind = $mainMod + CTRL, 6, togglespecialworkspace, s6
bind = $mainMod + CTRL, 7, togglespecialworkspace, s7
bind = $mainMod + CTRL, 8, togglespecialworkspace, s8
bind = $mainMod + CTRL, 9, togglespecialworkspace, s9
bind = $mainMod + CTRL, 0, togglespecialworkspace, s10
bind = $mainMod + CTRL + SHIFT, 1, movetoworkspace, special:s1
bind = $mainMod + CTRL + SHIFT, 2, movetoworkspace, special:s2
bind = $mainMod + CTRL + SHIFT, 3, movetoworkspace, special:s3
bind = $mainMod + CTRL + SHIFT, 4, movetoworkspace, special:s4
bind = $mainMod + CTRL + SHIFT, 5, movetoworkspace, special:s5
bind = $mainMod + CTRL + SHIFT, 6, movetoworkspace, special:s6
bind = $mainMod + CTRL + SHIFT, 7, movetoworkspace, special:s7
bind = $mainMod + CTRL + SHIFT, 8, movetoworkspace, special:s8
bind = $mainMod + CTRL + SHIFT, 9, movetoworkspace, special:s9
bind = $mainMod + CTRL + SHIFT, 0, movetoworkspace, special:s10
Volume controls
bindel =, XF86AudioRaiseVolume, exec, wpctl set-volume -l 1 @DEFAULT_SINK@ 0.02+; notify-send --category=device --urgency=low --hint=int:value:$(pactl get-sink-volume $(pactl get-default-sink) | grep -oP '\d?\d?\d%' | head --lines=1 | sed 's/%//g') volume_event
bindel =, XF86AudioLowerVolume, exec, wpctl set-volume @DEFAULT_SINK@ 0.02-; notify-send --category=device --urgency=low --hint=int:value:$(pactl get-sink-volume $(pactl get-default-sink) | grep -oP '\d?\d?\d%' | head --lines=1 | sed 's/%//g') volume_event
bindel =, XF86AudioMute, exec, wpctl set-mute @DEFAULT_SINK@ toggle
mic mute toggle
bindl =, XF86AudioMicMute, exec, wpctl set-mute @DEFAULT_SOURCE@ toggle
media controls
bindl =, XF86AudioPlay, exec, playerctl play
bindl=, XF86AudioPause, exec, playerctl pause
bindl=, XF86AudioNext, exec, playerctl next
bindl=, XF86AudioPrev, exec, playerctl previous
clipboard manager binds (keyboard history)
bind = $mainMod, v, exec, cliphist list | $clipboardMenu | cliphist decode | wl-copy
power controls
bindl = $mainMod + SHIFT, q, exec, $powermenu
bindl = CTRL + ALT, code:119, exec, hyprctl dispatch exit
bindl = ALT, f4, exec, $powermenu
bind = $mainMod + CTRL + ALT, l, exec, systemd-inhibit bash $confdir/scripts/hyprlock-transparent.sh
bind = $mainMod + ALT, l, exec, $lockscreen
Brightness controls
bindel =, XF86MonBrightnessUp, exec, val=$(brightnessctl --device='intel_backlight' -m s +1%); notify-send --category=device --urgency=low --hint=int:value:$(($(echo $val | cut --delimiter="," --fields=3)*100/$(echo $val | cut --delimiter="," --fields=5))) brightness_event
bindel =, XF86MonBrightnessDown, exec, val=$(brightnessctl --device='intel_backlight' --min-value=75 -m s 1%-); notify-send --category=device --urgency=low --hint=int:value:$(($(echo $val | cut --delimiter="," --fields=3)*100/$(echo $val | cut --delimiter="," --fields=5))) brightness_event
bindel = SHIFT, XF86MonBrightnessUp, exec, val=$(brightnessctl --device='intel_backlight' -m s +5%); notify-send --category=device --urgency=low --hint=int:value:$(($(echo $val | cut --delimiter="," --fields=3)*100/$(echo $val | cut --delimiter="," --fields=5))) brightness_event
bindel = SHIFT, XF86MonBrightnessDown, exec, val=$(brightnessctl --device='intel_backlight' --min-value=75 -m s 5%-); notify-send --urgency=low --category=device --hint=int:value:$(($(echo $val | cut --delimiter="," --fields=3)*100/$(echo $val | cut --delimiter="," --fields=5))) brightness_event
Screenshots
bind = $mainMod + CTRL, S, exec, grim -g "$(slurp -d)" - | wl-copy
bind = , Print, exec, grim - | wl-copy; notify-send --urgency=low "Screenshot copied to clipboard"
bind = SHIFT, Print, exec, grim -g "$(slurp -d)" - | wl-copy; notify-send --urgency=low "Screenshot copied to clipboard"
bind = CTRL, Print, exec, window=$(hyprctl activewindow -j); filename="$(date +%Y%m%d_%H%M%S)$(echo $window | jq -r .class).png"; grim "$HOME/Pictures/Screenshots/$filename"; notify-send --urgency=low "Screenshot saved under: $filename"
bind = CTRL + SHIFT, Print, exec, window=$(hyprctl activewindow -j); filename="$(date +%Y%m%d%H%M%S)_$(echo $window | jq -r .class).png"; grim -g "$(slurp -d)" "$HOME/Pictures/Screenshots/$filename"; notify-send --urgency=low "Screenshot saved under: $filename"
Screenrecord
bind = ALT, Print, exec, $confdir/scripts/screen-record.sh true false
bind = ALT + SHIFT, Print, exec, $confdir/scripts/screen-record.sh true true
bind = ALT + CTRL, Print, exec, $confdir/scripts/screen-record.sh false false
bind = ALT + CTRL + SHIFT, Print, exec, $confdir/scripts/screen-record.sh false true
Change wallpaper
bind = $mainMod + Alt, W, exec, $confdir/scripts/hyprpaper-gen.sh -r -S
Bind to toggle touchpad
bind =, XF86Search, exec, $confdir/scripts/touchpad-toggle.sh
Config File: /home/alpha/.config/hypr/workspaces.conf: Read Succeeded
workspace = special:music, on-created-empty:[workspace special:music] $musicplayer, persistent:false
bind = $mainMod, m, togglespecialworkspace, music
workspace = special:magic, on-created-empty:$browser --new-window "https://discord.com/channels/@me", persistent:false
layerrule = blur,waybar
windowrulev2 = stayfocused, class:^(org.kde.kwalletd6)$
windowrulev2 = suppressevent maximize, class:.* # You'll probably like this.
windowrule = float, title:^(Picture-in-Picture)$
windowrule = pin, title:^(Picture-in-Picture)$
windowrulev2 = float, class:(org.keepassxc.KeePassXC), title:(Unlock Database - KeePassXC)
windowrulev2 = float, class:(org.keepassxc.KeePassXC), title:(KeePassXC -  Access Request)
windowrulev2 = float, class:(org.keepassxc.KeePassXC), title:(KeePassXC - Browser Access Request)
Config File: /home/alpha/.config/hypr/plugins.conf: Read Succeeded
exec-once = hyprpm reload -n
bind = ALT, grave, hyprexpo:expo, toggle # can be: toggle, off/disable or on/enable
bind = $mainMod, grave, overview:toggle
plugin {
hyprexpo {
columns = 3
gap_size = 5
bg_col = rgb(111111)
workspace_method = first 1 # [center/first] [workspace] e.g. first 1 or center m+1
    enable_gesture = true # laptop touchpad, 4 fingers
    gesture_distance = 300 # how far is the "max"
    gesture_positive = true # positive = swipe down. Negative = swipe up.
}

# overview {
# 	disableGestures = true
# 	reverseSwipe = true
# 	showSpecialWorkspace = false
# }

}
======Config-End========

To note:

I haven't used any hyprcursor/xcursor themes (see config file).
I didnt do a sudo make install, instead, I did a ./Hyprland inside build/ directory.

@sudoAlphaX what do you see in the logs?
e.g.
grep -i 'cursor' "$XDG_RUNTIME_DIR/hypr/$(ls -t $XDG_RUNTIME_DIR/hypr | head -n 1)/hyprland.log"

These are the lines containing 'cursor' in my hyprlad.log file
[LOG] [CursorShape] Registered global
[LOG] Creating the CursorManager!
[hc] CHyprcursorManager: attempting to find theme from env
[hc] CHyprcursorManager: attempting to find any theme
[hc] CHyprcursorManager: no themes matched
[ERR] Hyprcursor failed loading theme "", falling back to X.
[LOG] XCursor has no shape invalid, skipping
[LOG] XCursor has no shape context-menu, skipping
[LOG] XCursor has no shape progress, skipping
[LOG] XCursor has no shape vertical-text, skipping
[LOG] XCursor has no shape alias, skipping
[LOG] XCursor has no shape copy, skipping
[LOG] XCursor has no shape no-drop, skipping
[LOG] XCursor has no shape not-allowed, skipping
[LOG] XCursor has no shape grab, skipping
[LOG] XCursor failed to find a shape with name n-resize, skipping
[LOG] XCursor failed to find a shape with name ns-resize, skipping
[LOG] XCursor has no shape nesw-resize, skipping
[LOG] XCursor has no shape nwse-resize, skipping
[LOG] XCursor has no shape col-resize, skipping
[LOG] XCursor has no shape row-resize, skipping
[LOG] XCursor has no shape all-scroll, skipping
[LOG] XCursor has no shape zoom-in, skipping
[LOG] XCursor has no shape zoom-out, skipping
[LOG] [AQ] drm: Cursor buffer imported into KMS with id 138
[LOG] [AQ] drm: Cursor buffer imported into KMS with id 138
[LOG] [AQ] drm: Cursor buffer imported into KMS with id 138
[LOG] [AQ] drm: Cursor buffer imported into KMS with id 139
[LOG] [AQ] drm: Cursor buffer imported into KMS with id 138
[LOG] [seatmgr] Rejecting a setCursor because the client ain't in focus
[LOG] cursorImage request: shape 1 -> default
[LOG] [AQ] drm: Cursor buffer imported into KMS with id 139
[LOG] Hiding the cursor (hl-mandated)
[LOG] cursorImage request: shape 9 -> text
[LOG] cursorImage request: surface 56bd292b9be0
[LOG] Showing the cursor (hl-mandated)
[LOG] [AQ] drm: Cursor buffer imported into KMS with id 138
[LOG] cursorImage request: surface 56bd292bd490
[LOG] [AQ] drm: Cursor buffer imported into KMS with id 138
[LOG] cursorImage request: surface 56bd292bd490
[LOG] [AQ] drm: Cursor buffer imported into KMS with id 139
[LOG] [AQ] drm: Cursor buffer imported into KMS with id 139
[LOG] Hiding the cursor (hl-mandated)
[LOG] [seatmgr] Rejecting a setCursor because the client ain't in focus
[LOG] [seatmgr] Rejecting a setCursor because the client ain't in focus
[LOG] Showing the cursor (hl-mandated)
[LOG] [AQ] drm: Cursor buffer imported into KMS with id 138
[LOG] Hiding the cursor (hl-mandated)
[LOG] [AQ] drm: Cursor buffer imported into KMS with id 138
[LOG] [seatmgr] Rejecting a setCursor because the client ain't in focus
[LOG] cursorImage request: surface 56bd292b9be0
[LOG] Showing the cursor (hl-mandated)
[LOG] [AQ] drm: Cursor buffer imported into KMS with id 139
[LOG] [AQ] drm: Cursor buffer imported into KMS with id 139
[LOG] cursorImage request: shape 9 -> text
[LOG] [AQ] drm: Cursor buffer imported into KMS with id 138
[LOG] Hiding the cursor (hl-mandated)
[LOG] [seatmgr] Rejecting a setCursor because the client ain't in focus
[LOG] Showing the cursor (hl-mandated)
[LOG] [AQ] drm: Cursor buffer imported into KMS with id 139
[LOG] cursorImage request: surface 56bd292b9be0
[LOG] [AQ] drm: Cursor buffer imported into KMS with id 138
[LOG] [AQ] drm: Cursor buffer imported into KMS with id 138
[LOG] Hiding the cursor (hl-mandated)
[LOG] cursorImage request: shape 1 -> default
[LOG] [seatmgr] Rejecting a setCursor because the client ain't in focus
[LOG] Showing the cursor (hl-mandated)
[LOG] [AQ] drm: Cursor buffer imported into KMS with id 139
[LOG] cursorImage request: shape 9 -> text
[LOG] [AQ] drm: Cursor buffer imported into KMS with id 139
[LOG] Hiding the cursor (hl-mandated)
[LOG] Showing the cursor (hl-mandated)
[LOG] [AQ] drm: Cursor buffer imported into KMS with id 138
[LOG] Hiding the cursor (hl-mandated)
[LOG] Showing the cursor (hl-mandated)
[LOG] [AQ] drm: Cursor buffer imported into KMS with id 139
[LOG] [AQ] drm: Cursor buffer imported into KMS with id 139
[LOG] Hiding the cursor (hl-mandated)
[LOG] cursorImage request: shape 9 -> text
[LOG] cursorImage request: shape 1 -> default
[LOG] cursorImage request: shape 9 -> text
[LOG] cursorImage request: shape 1 -> default
[LOG] cursorImage request: shape 9 -> text
[LOG] cursorImage request: shape 1 -> default
[LOG] cursorImage request: shape 9 -> text
[LOG] Showing the cursor (hl-mandated)
[LOG] [AQ] drm: Cursor buffer imported into KMS with id 138
[LOG] Hiding the cursor (hl-mandated)
[LOG] Showing the cursor (hl-mandated)
[LOG] [AQ] drm: Cursor buffer imported into KMS with id 139
[LOG] Hiding the cursor (hl-mandated)
[LOG] Window 56bd29318020 set title to grep --color=auto -i cursor hyprland.log
[LOG] Searching for matching rules for Alacritty (title: grep --color=auto -i cursor hyprland.log)
[LOG] Window rule suppressevent maximize ->  class:.* matched [Window 56bd29318020: title: "grep --color=auto -i cursor hyprland.log"]
[LOG] Window 56bd29318020 set title to grep --color=auto -i cursor hyprland.log | wl-copy
[LOG] Searching for matching rules for Alacritty (title: grep --color=auto -i cursor hyprland.log | wl-copy)
[LOG] Window rule suppressevent maximize ->  class:.* matched [Window 56bd29318020: title: "grep --color=auto -i cursor hyprland.log | wl-copy"]

You are likely using an XCursor. Have you tried installing a hyprcursor theme?

How can I find out whether the hyprcursor is working or not?

How can I find out whether the hyprcursor is working or not?

@aljustiet, you can see that in your hyprland.log (make sure to set disable_logs = true under debug).
[ERR] Hyprcursor failed loading theme "", falling back to X.

https://github.com/hyprwm/Hyprland/issues/6983#issuecomment-2254516682

@aljustiet, you can see that in your hyprland.log (make sure to set disable_logs = true under debug).

How you made the @aljustiet colored?

I had this exact problem - was also a regression when Hyprland switched from wlroots-hyprland to aquamarine. Wrote up this workaround it after some trial and error.
Same as everything mentioned above, but I've documented the full steps here for using the rose-pine theme on Arch:
* [Inconsistent cursor size #6320 (comment)](https://github.com/hyprwm/Hyprland/issues/6320#issuecomment-2243109637)

Perhaps check if this works first before exploring other themes to help isolate the issue.

It was working for me with rose-pine theme until today I updated Hyprland from AUR.
https://github.com/user-attachments/assets/6af8be89-2640-4bb2-899d-6e5eeb333942

@coffebar I couldn't reproduce the issue on the latest hyprland-git and aquamarine-git:

https://github.com/hyprwm/Hyprland/commit/eb42adc4c090918ad6be9fcb24066da8cdfd9bd0
https://github.com/hyprwm/aquamarine/commit/abb3c81c59f64e37d7abbe4bc874302507042a7b

but I've seen these steps fix the issue for others. Will also edit my linked post. Thanks :).

yeah, in case the problem is gsettings can't save settings - cursor fallbacks to default every time after exit the session. Idk why, but it seems not an issue for hyprland


How to use H3DNet on custom dataset?

Hi @zaiweizhang , @GitBoSun
Please provide tips on how to use H3DNet on our custom dataset, one having very dfferent distribution.
Specifically how to properly tune/choose the config parameters and threshold values?

For custom datasets, there are two major components to look at: dataset and threshold values (model config).

For dataset, if the custom datasets contain instance label/mask, then please just refer to the code in scannet_detection_dataset_hd.py for label generation. Basically, you will use the bounding box labels to get the plane labels (plane mask, plane center voting) and also line/edge labels.
If the custom datasets do not contain instance label/mask, then you can still use similar methods to get the plane and line labels but you need to be care of overlapping objects, such as box on a sofa. When you use nearest neighbor to extract the points near a plane/surface or a line/edge, please visualize the results and carefully choose a range threshold for getting the labels.

For threshold values, if you are working with indoor scenes, I would not worry about the current model configuration. However if you are working with outdoor scenes, for lidar sparse point clouds, you might need to change the model (use Pointnet2MSG or models commonly used for lidar, examples in here https://github.com/open-mmlab/OpenPCDet). For other outdoor point clouds, collected by a kinect camera or other cameras using infrared for depth estimation, if the objects are large, you might need to increase the radius of the match_surface_center module and match_line_center module. Other than that, I do not think you need to change anything.

Thank you for your interests in our project. If you have any questions when trying out custom datasets, feel free to post your questions here. I will be happy to answer.
zaiwei

@zaiweizhang
Thank you very much for your elaborate reply. I will try to implement it.

@zaiweizhang
Hi,
I hope you are doing well.
While implementing H3DNet on my custom dataset, I got one confusion regarding the radius of the match_surface_center module and match_line_center module. As far as I can understand, in the paper, it is mentioned that the radius used is 0.05m. While in the code, in file proposal_module_refine.py, there are two thresholds used SURFACE_THRES=0.5 and LINE_THRES=0.5. And also in arguments of function PointnetSAModuleMatch, radius=0.5 is used.
Please clarify my confusion.

Yeah. That's a mistake. It should be 0.05m. We will fix it in the paper. Thanks for pointing that out!


Razor page generator generates unexpected lines

Describe the bug
I'm struggling with this issue recently but I'm not sure if this is a bug or I have wrong assumption about how Razor Pages works. I created simple Razor Page that derives from RazorPage<TModel>   Everythings is ok until Razor generates page code. Two bottom lines (shown on screenshot) imply compilation error. Why there are even generated? Looks like PageContext is used by AspNetCore PageModel class, but my model is not deriving such class. Can someone explain it?
To Reproduce
Create Razor Page likeshown on the screenshot
Expected behavior
Razor compiler should not (?) generate code lines showed on screenshot
Screenshots

Additional context
C:\Users\Arek>dotnet --info
Zestaw .NET Core SDK (odzwierciedlenie dowolnego pliku global.json):
 Version:   3.0.100-rc1-014190
 Commit:    c4d43f672d

Środowisko uruchomieniowe:
 OS Name:     Windows
 OS Version:  10.0.17134
 OS Platform: Windows
 RID:         win10-x64
 Base Path:   C:\Program Files\dotnet\sdk\3.0.100-rc1-014190\

Host (useful for support):
  Version: 3.0.0-rc1-19456-20
  Commit:  8f5d7b1ba4

.NET Core SDKs installed:
  3.0.100-rc1-014190 [C:\Program Files\dotnet\sdk]

.NET Core runtimes installed:
  Microsoft.AspNetCore.All 2.1.12 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.All]
  Microsoft.AspNetCore.App 2.1.12 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
  Microsoft.AspNetCore.App 3.0.0-rc1.19457.4 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
  Microsoft.NETCore.App 2.1.12 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 3.0.0-rc1-19456-20 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.WindowsDesktop.App 3.0.0-rc1-19456-20 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]

created simple Razor Page that derives from RazorPage<TModel>

Razor Pages are meant to derive from Microsoft.AspNetCore.Mvc.RazorPages.Page. Picking a different base type is going to involve a fair bit of work. What is it that you're trying to do?

@pranavkm I read a bit more about Razor Pages design and I think I have much cleaner picture now. What was confusing for me and other people aswell was two existing classes: RazorPage and Page but in separate namespaces. You are right I should use Microsoft.AspNetCore.Mvc.RazorPages.Page instead RazorPage<TModel>. Thanks for help.


second automated pagespeed install fails

I used
bash <(curl -f -L -sS https://ngxpagespeed.com/install) --nginx-version latest  -a "MY_OPTION_MODULES"
To install nginx with pagespeed on ubuntu 14.04 which already had nginx installed via apt.  The build worked, but it installed to the wrong place using the wrong configuration files.  I wanted the configuration to be exactly the same as the ubuntu distribution, so I tried to compile again with a prefix and sbin path:
bash <(curl -f -L -sS https://ngxpagespeed.com/install) --nginx-version latest  -a "--prefix=/etc/nginx --sbin-path=/usr/sbin MY_OPTION_MODULES"
But running the install script a second time fails at the link stage with "multiple definition" errors.  This happens whether I include the new directory options or not.  It is mysterious, because the install script rm's both build directories, so I'm not sure what the problem could be.

objs/addon/src/log_message_handler.o: In function std::string::_M_data() const': /home/ubuntu/ngx_pagespeed-latest-stable/src/log_message_handler.cc:101: multiple definition of net_instaweb::log_message_handler::Install(ngx_log_s*)'
objs/addon/src/log_message_handler.o:/home/ubuntu/ngx_pagespeed-latest-stable/src/log_message_handler.cc:101: first defined here
objs/addon/src/ngx_base_fetch.o: In function std::string::_M_data() const': /home/ubuntu/ngx_pagespeed-latest-stable/src/ngx_base_fetch.cc:350: multiple definition of net_instaweb::NgxBaseFetch::IsCachedResultValid(net_instaweb::ResponseHeaders const&)'
objs/addon/src/ngx_base_fetch.o:/home/ubuntu/ngx_pagespeed-latest-stable/src/ngx_base_fetch.cc:350: first defined here
objs/addon/src/ngx_base_fetch.o: In function `basic_ostream':

I fail to reproduce this. Could this be a permission problem caused by running one install with sudo and the other without? Are the build directories really removed?

Thanks for your help, it was my fault.  I had written a script to pull in modules from the existing nginx installation so I wouldn't lose any.  My script passed pagespeed into the -a of the install script on the second pass.  This resulted in the pagespeed files being linked twice.
I've seen a recommendation on another thread to dynamically link pagespeed to an existing installation to avoid headaches.  Why not have the install script stop and suggest this if there's a nginx already present?

That is a nice idea. I filed a feature request for that: https://github.com/pagespeed/ngx_pagespeed/issues/1369


Create SECURITY.md

:warning: Please install the  to ensure uploads and comments are reliably processed by Codecov.
Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 35.77%. Comparing base (fbaacb3) to head (b39c14b).
Report is 13 commits behind head on develop.

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@             Coverage Diff             @@
##           develop     #332      +/-   ##
===========================================
- Coverage    35.78%   35.77%   -0.02%
===========================================
  Files           23       23
  Lines        10026    10029       +3
===========================================
  Hits          3588     3588
- Misses        6438     6441       +3

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

🚨 Try these New Features:

Flaky Tests Detection - Detect and resolve failed and flaky tests


plasmatube: init at unstable-2021-03-18

Motivation for this change
Things done

[x] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
Built on platform(s)

[x] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Ensured that relevant documentation is up to date
[x] Fits CONTRIBUTING.md.

Doesn't play any videos yet. Help is very welcome.
I also filed an upstream issue about some error messages: https://invent.kde.org/lnj/plasmatube/-/issues/8.

Since upstream claims not be maintained anymore, this pull request probably doesn't make much sense.


readme 6

update readme
update readme

📝 Description

Add a brief description

⛳ Current behavior (updates)

Please describe the current behavior that you are modifying

🚀 New behavior

Please describe the behavior or changes this PR adds

💣 Is this a breaking change (Yes/No):

📝 Additional Information

/approve


postgresml: init at 2.4.0

Description of changes
this fails to build on darwin, opening this PR to test it on linux
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)
[ ] 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.05 Release Notes (or backporting 22.11 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

[ ] Fits CONTRIBUTING.md.

This currently doesn't compile because of some missing symbols on lightgbm-sys. I'm guessing the c++ dependency needs to be packaged first and added as a nativebuildinput, I will test again once I get the c++ dependency merged.

Still a lightgbm-sys missing symbol even after packaging that c++ dependency. It must be that vendoring the dependency doesn't work properly. I'll retry periodically, but this doesn't look good.


Spaceship scout doesn't work in space.

Game Version: 1.1.72
OWML Version: 2.1.0
NomaiVR Version: 2.2.0
VR hardware: Oculus Quest 2 w/ link

While drifting through space in the spaceship, the scout launched seems to attach to the ship. Pictures taken from it are from the ship, not an object heading in the direction I shot the scout. I believe the scout may be preemptively returning and attaching itself to the ship. Can comment with screenshots if needed. To recreate, simply fly into space, don't be within a planet's gravitational effect, fire the scout and take snapshots.

Youtube
Video I took displaying the bug. It is possible that since I altered the world scale using SteamVR as a test, that it somehow caused it, yet at the time of this recording I had reset it to default. It is the only thing I have don't that would make my game different from most others in the case no one else can reproduce the effect.

Well, damn just uninstalled the mod and ran unmodded OW and the problem still persists. I guess its a problem with my OW not the mod.

I don't think that's even a bug at all, I think it's just the probe being slower than you might expect, so it looks almost like it's standing still? If you try flying closer to a planet and shooting the probe at it, you'll more easily notice the movement. Anyway I'll close this since it's not a NomaiVR bug, even if it is a bug.


Feature request: Change  "X files selected" text

We can already enter our own strings for the browse button and choose files text.
It would be nice if we could also change the text "X files selected".
This way we could localize it for languages other than English.

Looks like this is tied to line 176 in file-upload-with-preview.js
processFile(file) {         // Update our input label here based on instance selectedFilesCount         if (this.selectedFilesCount === 0) {             this.inputLabel.innerHTML = this.options.text.chooseFile         } else if (this.selectedFilesCount === 1) {             this.inputLabel.innerHTML = file.name         } else {             this.inputLabel.innerHTML =${ this.selectedFilesCount } files selected         }

Hey @damonbakker - good suggestion - in the next coming days we'll be adding this feature. We'll update here when it's added. Thank you.

Hey @damonbakker, thanks for the suggestion! We've added this to the options object, so you can change the X files selected default text by setting text.selectedCount as follows:
var upload = new FileUploadWithPreview('myUniqueUploadId', {
    showDeleteButtonOnImages: true,
    text: {
        selectedCount: 'Custom Files Selected Copy'
    }
})


Converts existing tests to JUnit and AssertJ

Formerly, tests were written using TestNG. This converts them to use JUnit and
AssertJ. There are a number of benefits, but these are my top 2:

There are a lot of JUnit rules which may prove helpful as the project progresses.
AssertJ has built-in support for Java 8 and can make failures more expressive.

ps I think TaskDetails.matchesTask() can be removed as it looks like it was only used for tests. lemme know and I can do that.

okie I tried to pay for the assertion code by cleaning up other things. net loss of 5 lines now :)

removed junit from this change as it wasn't necessary to achieve what I wanted

@Randgalt assuming this passes travis, should be ready for review.

closing as I don't want to distract from more important things


Make psycopg2 an optional dependency of conda-store-server

sqlalchemy should theoretically just work with sqlite, so it would be nice to not have psycopg2 as a required dependency. The dependency is also on the pscopg2 package, rather than the psycopg2-binary package - so conda-store-server installation fails if a compilation environment and libpq-dev are not available (see https://www.psycopg.org/articles/2018/02/08/psycopg-274-released/).

Hi @yuvipanda :) Thanks for your feedback.
Conda Store is designed to be database-agnostic. Sure, it can work with a simple sqlite backend, but it can also work with a postgres database for instance - as we can see in the example docker files.
So in the end, I think psycopg2 remains necessary - getting rid of it would force users to use sqlite and only this.
On the other hand, you're right about the use psycopg2 vs psycopg2-binary and I opened a PR for this.

Hey @yuvipanda this makes sense. Yeup no reason that sqlalchemy has to run with postgres. I've removed this in PR #206

Haha, guess what : I mixed up psycopg2 and sqlalchemyin my previous comment, which doesn't make any sense because of this 😅 as conda store is indeed database-agnostic, it's sqlalchemy that is necessary and psycopg2 is obviously optional.
Anyway, thank you all !


Fixing Accessibility Issues

There are some outstanding accessibility issues which should be fixed.  Both empty links and undefined form elements.

There needs to be additional semantics added to this to see that assistive technology users can properly know what they are clicking on.
This is entirely based on evaluation of http://antenna.io/demo/jquery-bar-rating/examples/ using the Wave Toolbar http://wave.webaim.org/extension/
Adding more information about what the links are will give context to help users know what they are selecting.

With the "showValues" option we can display de labels.

The missing label tag maybe that was not inserted manually.

I added a pull request with a partial solution.
https://github.com/antennaio/jquery-bar-rating/pull/123


Use an abi package

Checklist

[ ] Used a fork of the feedstock to propose changes
[ ] Bumped the build number (if the version is unchanged)
[ ] Reset the build number to 0 (if the version changed)
[ ] Re-rendered with the latest conda-smithy (Use the phrase @conda-forge-admin, please rerender in a comment in this PR for automated rerendering)
[ ] Ensured the license file is being packaged.

@conda-forge-admin, rerender

Adding an ABI package here to support multiple versions like gtk2 and gtk3.

After this is merged, I'll remove the previous two build numbers.


Make genesis file relative to configuration yaml file fix

Issue

#611

This PR results in breaking changes to upstream dependencies.

Checklist

[x] This PR contains all the work required to resolve the linked issue.

[x] I have committed clear and descriptive commits. Be considerate as somebody else will have to read these.

[x] I have added the appropriate labels to this PR.

Looks good. We got mainnet-genesis.json duplicated (in root dir and in configuration).Should I open I separate ticket for that @Jimbo4350 ?

bors r+

bors r-

bors r+


[BUG] LNBITS_ADMIN_UI="false" doesn't restore .env as source of configuration

Describe the bug
Changed the backend funding endpoint to a value that doesn't work and now get only
INFO | Retrying connection to backend in 5 seconds...
Unfortunately this means the admin UI isn't available to correct the error.
The documentation offers: the first time you set the environment variable LNBITS_ADMIN_UI=true the settings are initialized and saved to the database and will be used from there as long the UI is enabled  This appears to mean if you remove or set LNBITS_ADMIN_UI="false" the user admin setting will be removed, also @talvasconcelos confirmed this in the Telegram channel
Changed the .env contents to remove the LNBITS_ADMIN_UI setting, no change.
Altered the entry to read:
LNBITS_ADMIN_UI="false"
No change.
Expected behavior
That LNbits would see the change in .env and remove the LNBITS_ADMIN_UI support, restoring .env as the configuration source.

After a suggestion removing the quotes and using:
LNBITS_ADMIN_UI=false
The admin ui setting was removed, but
LNBITS_ADMIN_UI=true
Restored admin ui with the erroneous funding endpoint.

you will have to truncate the settings table, or reset to defaults in admin ui.

$ sqlite3
SQLite version 3.27.2 2019-02-25 16:06:06
Enter ".help" for usage hints.
Connected to a transient in-memory database.
Use ".open FILENAME" to reopen on a persistent database.
sqlite> .open /mnt/hdd/mynode/lnbits/database.sqlite3
sqlite> SELECT * FROM settings;
c1f2b3ce015a4acd9071ad89fe8bd10f|{"boltz_network": "main", "boltz_url": "https://boltz.exchange/api", "boltz_mempool_space_url": "https://mempool.space", "boltz_mempool_space_url_ws": "wss://mempool.space", "lntips_api_endpoint": null, "lntips_api_key": null, "lntips_admin_key": null, "lntips_invoice_key": null, "spark_url": null, "spark_token": null, "opennode_api_endpoint": null, "opennode_key": null, "lntxbot_api_endpoint": null, "lntxbot_key": null, "lnpay_api_endpoint": null, "lnpay_api_key": null, "lnpay_wallet_key": null, "lnd_grpc_endpoint": null, "lnd_grpc_cert": null, "lnd_grpc_port": null, "lnd_grpc_admin_macaroon": null, "lnd_grpc_invoice_macaroon": null, "lnd_grpc_macaroon": null, "lnd_grpc_macaroon_encrypted": null, "lnd_rest_endpoint": "https://<IP_ADDRESS>:10080/", "lnd_rest_cert": "/app/tls.cert", "lnd_rest_macaroon": "/app/admin.macaroon", "lnd_rest_macaroon_encrypted": null, "lnd_cert": null, "lnd_admin_macaroon": null, "lnd_invoice_macaroon": null, "eclair_url": null, "eclair_pass": null, "corelightning_rpc": null, "clightning_rpc": null, "cliche_endpoint": null, "lnbits_endpoint": "https://legend.lnbits.com", "lnbits_key": null, "fake_wallet_secret": "ToTheMoon1", "lnbits_backend_wallet_class": "LndRestWallet", "lnbits_force_https": false, "lnbits_reserve_fee_min": 2000, "lnbits_reserve_fee_percent": 1, "lnbits_service_fee": 0, "lnbits_hide_api": false, "lnbits_denomination": "sats", "lnbits_site_title": "LNbits", "lnbits_site_tagline": "free and open-source lightning wallet", "lnbits_site_description": "Some description about your service, will display if title is not 'LNbits'", "lnbits_default_wallet_name": "LNbits wallet", "lnbits_theme_options": ["classic", "bitcoin", "freedom", "mint", "autumn", "monochrome", "salvador"], "lnbits_custom_logo": null, "lnbits_ad_space_title": "Supported by", "lnbits_ad_space": "", "lnbits_ad_space_enabled": false, "lnbits_admin_users": [], "lnbits_allowed_users": [], "lnbits_admin_extensions": [], "lnbits_disabled_extensions": ["amilk"]}
sqlite> DELETE FROM settings;
sqlite> .exit
Error: attempt to write a readonly database

Repeat with improved permissions.

try sqlite3 data/database.sqlite3 "delete from settings;"
works just fine for me.


automatically collect proxies

It wouldn't be too hard to write something to go through the results of wsl ls /usr/bin and format them as individual batch files.  If I have time I might try this out, otherwise you're welcome to it ;)

It would be awesome if you find the time. I never expected this project to get so popular, but I love contributions

Awesome project! I created a pull request to try to address this issue:
https://github.com/watzon/wsl-proxy/pull/14

Solved with #14


Settings: Rename Users and Deactivated users tab.

The second commit contains an optional change to rename Users to Active users in the Active tab for the heading and the filter text. We can discard that change if it's desired.
Fixes: https://chat.zulip.org/#narrow/stream/9-issues/topic/deactivated.20users.20tab/near/1843114

Screenshots and screen captures:

Self-review checklist

[ ] Self-reviewed the changes for clarity and maintainability
(variable names, code reuse, readability, etc.).

Communicate decisions, questions, and potential concerns.

[ ] Explains differences from previous plans (e.g., issue description).
[ ] Highlights technical choices and bugs encountered.
[ ] Calls out remaining decisions and concerns.
[ ] Automated tests verify logic where appropriate.

Individual commits are ready for review (see commit discipline).

[ ] Each commit is a coherent idea.
[ ] Commit message(s) explain reasoning and motivation for changes.

Completed manual review and testing of the following:

[ ] Visual appearance of the changes.
[ ] Responsiveness and internationalization.
[ ] Strings and tooltips.
[ ] End-to-end functionality of buttons, interactions and flows.
[ ] Corner cases, error conditions, and easily imagined bugs.

See CZO for discussion of what to do here.

We should be sure to update the related /help/ articles as part of this.

I reworked this to just change "deactivated" and did the help/ updates to get a version integrated today.


(pkg/trace) Pre-grow the trace receiver buffers to the "Content-Length" header, or 8KiB

What does this PR do?
Pre-allocate the buffers before copying request body's, in the trace-agent http receivers.
Motivation
A non negligible portion of the time of the trace-agent is spent growing these buffers. Pre-allocating them to the request body, or a reasonable default if missing should reduce the cost of this operation

Additional Notes

Possible Drawbacks / Trade-offs

Describe how to test/QA your changes

Thanks! Do you have any benchmark data showing improvement here or any QA needed?

Thanks! Do you have any benchmark data showing improvement here or any QA needed?

I discussed with @knusbaum and @ahmed-mez and we decided that it can't really hurt anything, so we'd just merge it and look at if makes a significative change on the nightly releases

Marking as approved but please either provide a QA testing plan or mark the PR as skip-qa/done if you already performed the QA

/merge


switch to tabs navigation

What is the motivation for adding/enhancing this feature?

 Let's just go back to tabs.
Facilities, Parking, Groups, Settings. Persist the navigation on all detail pages as well.

Issue verified and working fine in v1.4.0.
https://jam.dev/c/73d94f13-3877-492f-854a-1e75cd0ce507


ci: fix bug where the 2 args were being treated as a single arg and passed to GREN

Signed-off-by: Harikrishnan Balagopal<EMAIL_ADDRESS>

Can we sync the branch?

Can we sync the branch?

done


fix system package detection

The action is supposed to do this but I assume there is a path where it gets into the GitHub Action cache...


Fix ssl add config flow

Breaking change

Proposed change

Type of change

[x] Dependency upgrade
[ ] Bugfix (non-breaking change which fixes an issue)
[ ] New integration (thank you!)
[ ] New feature (which adds functionality to an existing integration)
[ ] Deprecation (breaking change to happen in the future)
[x] Breaking change (fix/feature causing existing functionality to break)
[ ] Code quality improvements to existing code or addition of tests

Additional information

This PR fixes or closes issue: fixes #
This PR is related to issue:
Link to documentation pull request:

Checklist

[x] The code change is tested and works locally.
[x] There is no commented out code in this PR.
[x] I have followed the development checklist
[x] The code has been formatted using Black (black --fast homeassistant tests)
[ ] Local tests pass. Your PR cannot be merged unless tests pass
[ ] Tests have been added to verify that the new code works.

If user exposed functionality or configuration variables are added/changed:

[ ] Documentation added/updated for www.home-assistant.io

If the code communicates with devices, web services, or third-party tools:

[ ] The manifest file has all fields filled out correctly.
Updated and included derived files by running: python3 -m script.hassfest.
[x] New or updated dependencies have been added to requirements_all.txt.
Updated by running python3 -m script.gen_requirements_all.
[ ] For the updated dependencies - a link to the changelog, or at minimum a diff between library versions is added to the PR description.
[x] Untested files have been added to .coveragerc.

To help with the load of incoming pull requests:

[ ] I have reviewed two other open pull requests in this repository.

Okay, nvm. I added the async calls and from my side it should work. I have not tested self signed certificates yet, maybe I'll get this done by tomorrow.
Basically the integration should work. Please have a review from your side and let me know your thoughts.
I would like to add the current stable version published from nextcloud as another sensor. I have not investigated in this.
Could you prepare the tests for this?

Except testing the config flow, the developer checklist is completed, code is working locally.

@devPeete Thank you very much. But because you were on newer commit than me i got many files in PR which shouldn't be there so  i did rebase. Now we have merge conflicts.

@devPeete Thank you very much. But because you were on newer commit than me i got many files in PR which shouldn't be there so i did rebase. Now we have merge conflicts.

Yes, merge conflicts are ok. I would propose to take the integration folder from me and adopt the tests you've written. I am already using my files as custom integration and for me it works.

@devPeete In that case i think we are doing merge wrong way :D I should merge just tests into your repository

@devPeete In that case i think we are doing merge wrong way :D I should merge just tests into your repository

Would be ok for me aswell, we only need to post a new PR on homeassistant then.

I fixed merge conflict and took all your changes.

Okay, will you adopt the test for the config_flow?

I will have time next week. Not earlier unfortunatelly.

I will have time next week. Not earlier unfortunatelly.

Okay, I will check if I have time tomorrow. Otherwise it will be next week for me aswell.
Can you tell me how I can execute the tests locally?


Refactor MassaStation API enable deploy SC

[ ] Refactor API endpoint to a application/json
[ ] Change to SmartContract parameter to accept bytecode as an argument
[ ] Adjust the Deploy SC internal function in massastation to the new parameters
[ ]  Modify the DeploySC function in the onchain pkg to behave the same as this code

https://github.com/massalabs/station/issues/1369#issuecomment-2493871758


Fixed bug with incorrect UI state after activity recreate

Overview :notebook:
After screen rotation or process death MultipleBackStacks state is not restored properly. If NavController.OnDestinationChangedListener is set, after activity recreation it's not set and navcontroller doesn't have any active listener. This leads to different problems, for e.g. if NavController.OnDestinationChangedListener is used to hide some views depending on destitation it doesn't work as expected. Also onBottomNavigationView returns LiveData which instead of controller contains null.
Intorduced a new screen which hides bottom menu and allows to write an instrumeted test to verify fix.
Also did a minor change to bottom menu to highlight currently selected item ;-)
Screenshots, video :framed_picture:

Before
After

Testing :mag:
Added new UI test to cover that case, also verified that all previous tests are passing

Thanks again for this new contribution! I'm going to review the PR, but it looks pretty useful at first glance :)

PS: not sure why, but it's not possible to request review or assign, is it expected?

No idea, we have the default setup, but in any case, it is fine as it is because we get the notification and we internally assign some member to the PR ;)

@VictorAlbertos addressed your feedback, also found another issue, selectedFragmentTag was not initialized during first start, fixed it too.

Thanks for addressing the suggestion 👍


one stops screenshare then next person`s videoTrack gone before that one starts to speak

here is my phone record
https://user-images.githubusercontent.com/63730157/198534470-c100f774-d818-4ac1-b9fe-f75f275d9a17.mp4

turns out my videoTrack became undefined when another one stops screenshare

insufficient information provided


Fixed #6157: Reset cups instance on disconnect.

The global cups backend instance reference was not properly reset on release by reference count.

consider for stable ?


[Registration] Translate provenience

[Actual Results]:  Provenience select options always in English
[Expected results]: Provenience should be translated according to locale
[Steps to reproduce]: Registration >  Add > Contacts

 Resolve Pending Issues/Bugs on POC

The provenience select options will always be in the locale set in OpenMRS. It looks like Webservices REST Module added  the possibility of setting locale per session. This might solve the issues with different locales for POC and OpenMRS.

Sounds like a good solution @ynurmahomed, do you want to try that?

 Use consistent language choice


Floodgate incompatible with Hydrogen+Ferritecore

https://mclo.gs/Br8JyXr
I am using hydrogen 0.2 and ferritecore 2.0.4.

It doesn't crash when using only one of them, but not both together.

Ouch 2 mods that do the same thing (reduce memory)

But they optimize different parts of code so, free performance

This doesn’t look like a floodgate-fabric issue

It is. It works fine with both of the mods without floodgate. Only when you add floodgate it crashes.


AzureOpenAI Embedding Model and LLM Model Initialisation from Config.

Description
AzureOpenAI Configuration for Mem0.
Type of change
Please delete options that are not relevant.

[X] Bug fix (non-breaking change which fixes an issue)
[X] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] Refactor (does not change functionality, e.g. code style improvements, linting)
[ ] Documentation update

Changes
1. Memory config
  config = {
      "llm": {
          "provider": "azure_openai",
          "config": {
              "model" : "gpt-4o",
              "temperature": 0.1,
              "max_tokens": 2000,
              "azure_kwargs" : {
                  "azure_deployment" : "",
                  "api_version" : "",
                  "azure_endpoint" : "",
                  "api_key" : ""
              }
          }
      },
      "vector_store": {
          "provider": "qdrant",
          "config": {
              "collection_name": "",
              "embedding_model_dims": 1536,
              "url": "",
              "api_key": "",
          }
      },
      "embedder": {
          "provider": "azure_openai",
          "config": {
              "model": "text-embedding-3-small",
              "azure_kwargs" : {
                  "api_version" : "",
                  "azure_deployment" : "",
                  "azure_endpoint" : "",
                  "api_key": ""
              }

          }
      }
  }

    m = Memory.from_config(config_dict=config)

2. Seperate Env Variables
Need if both model are initialise together then API keys will conflict hence the change.
AzureOpenAI for LLM
LLM_AZURE_OPENAI_API_KEY
LLM_AZURE_DEPLOYMENT
LLM_AZURE_ENDPOINT
LLM_AZURE_API_VERSION

AzureOpenAI for Embeddings
EMBEDDING_AZURE_OPENAI_API_KEY
EMBEDDING_AZURE_DEPLOYMENT
EMBEDDING_AZURE_ENDPOINT
EMBEDDING_AZURE_API_VERSION

FYI @prateekchhikara @taranjeet @deshraj @Dev-Khant

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

Hey @ketangangal Can you please resolve the merge conflicts so we can run the tests?

Hey @Dev-Khant sure!

@ketangangal Can you please check failing tests?

@ketangangal Can you please check failing tests?

done

FYI @deshraj @Dev-Khant can you review and let me know if changes are required.

@ketangangal Thanks for the contribution.


Add documentation on how handling a cookie based session can be done.

Description
I am not really good at backend related tasks but as far as I understand, When a user makes a request to your server, you need to check if the request contains a session cookie. If the session cookie is present, you can extract the session ID from it and verify it against your session storage (e.g., a database or cache) we can fetch from. If the session ID is valid, fetch the associated user information, including the user's role (for a role-based authentication for example). From here on, we can hydrate our store like a userStore pinia for example. And decide which layout can be used, have routeguards do its RBAC logic, etc.
I just don't know how to write these using vite-plugin-ssr. I believe I have to access the req/request object from somewhere like in a typical vanilla vue ssr app with express something like below (pseduo-code):
const app = express();

app.get('*', async (req, res) => {
  const pinia = createPinia();
  const appInstance = createSSRApp(App);

  // Check if the session cookie exists and retrieve session ID
  const sessionID = req.cookies.session;

  if (sessionID) {
    // Retrieve user info based on session ID
    const user = await getUserInfo(sessionID);

    if (user) {
      // Pass user information to the Vue application context
      appInstance.config.globalProperties.$user = user;
    }
  }

  // Render the Vue application to a string
  const appContent = await renderToString(appInstance);

  // Send the rendered HTML to the client
  res.send(`
    <!DOCTYPE html>

        <title>My App</title>

${appContent}

  `);
});

And if not cookie based, I don't really how the auth would look like.
I have tried looking into the application server instance code from https://vite-plugin-ssr.com/renderPage, still having a hard time.

You should use the render() instead of generating HTML inside your server middleware.

And if not cookie based, I don't really how the auth would look like.

That depends on how you want to treat non-logged users.

still having a hard time.

Yea, it takes some time until it all makes click. FYI the plan is to use https://batijs.github.io/ to make things easier.
Closing as I'm not sure how the docs can be improved about this. Although contribution welcome to add an authentication example.


Change old logo with recent logo

I'm not sure the significance of the transparent padding. Will the Cosmos Chain Registry also need to be updated likewise?

I'm not sure the significance of the transparent padding. Will the Cosmos Chain Registry also need to be updated likewise?

Yes, the Cosmos chain Registry needs to be updated too. The reason for this is the disparity in size of the SOMM logo and other logo in the chain registry.
Also, since we changed our logo, this PR updates the logo to the recent one.

I'm not sure the significance of the transparent padding. Will the Cosmos Chain Registry also need to be updated likewise?

Yes, the Cosmos chain Registry needs to be updated too (I sent a PR for that also). The reason for this is the disparity in size of the SOMM logo and other logo in the chain registry.
Also, since we changed our logo, this PR updates the logo to the recent one.

Apologies, I forgot Osmosis was still using the old logo. It looks like this image is a little different from the Chain Registry; should we keep that in sync?
Also, square images tend to not look as nice on the Osmosis frontend; can we turn this into a circular shape?

I'm not sure the significance of the transparent padding. Will the Cosmos Chain Registry also need to be updated likewise?

Yes, the Cosmos chain Registry needs to be updated too (I sent a PR for that also). The reason for this is the disparity in size of the SOMM logo and other logo in the chain registry.
Also, since we changed our logo, this PR updates the logo to the recent one.

Apologies, I forgot Osmosis was still using the old logo. It looks like this image is a little different from the Chain Registry; should we keep that in sync?

I just replaced it with the circular logo.
Also, I have a PR here, with the same logo, that should cover the chain registry right?
https://github.com/osmosis-labs/assetlists/pull/180

right?

The chain registry would be here:
https://github.com/cosmos/chain-registry/pulls

right?

The chain registry would be here: https://github.com/cosmos/chain-registry/pulls Then will have to go to new location

Yes. However, there's no provision to put in the logo here. I believe it's in the assetlist

right?

The chain registry would be here: https://github.com/cosmos/chain-registry/pulls Then will have to go to new location

Yes. However, there's no provision to put in the logo here. I believe it's in the assetlist

Please confirm the following PR for Chain Registry: https://github.com/cosmos/chain-registry/pull/381
I've created another PR to add the new images to the new frontend: https://github.com/osmosis-labs/osmosis-frontend/pull/533

This has now been updated on the Main app


Fix "Username Required" error

When use USERNAME_AND_EMAIL auth fields it will show error if it open in Sign Up state then switch to Sign Up state and do login even if username or email field was filled.

LGTM


Suggestion: UTCDateTime

Initial Checks

[X] I have searched Google & GitHub for similar requests and couldn't find anything
[X] I have read and followed the docs and still think this feature is missing

Description
Requiring a datetime with a timezone specifically set to UTC is a common pattern. I implemented the following for UTCDateTime, I would suggest upstreaming it:
class UTCDateTime(datetime):
    @classmethod
    def __get_validators__(cls):
        yield cls.validate

    @classmethod
    def validate(cls, v):
        value = parse_datetime(v)
        if not value.tzinfo:
            raise TypeError("timezone information is required")

        if value.tzinfo != timezone.utc:
            raise TypeError("timezone must be utc")

        return value

I think it's also a common-enough pattern to require a datetime to have any timezone, so I would also suggest a TimezoneAwareDateTime to be included.
Affected Components

[ ] Compatibility between releases
[X] Data validation/parsing
[ ] Data serialization - .dict() and .json()
[ ] JSON Schema
[ ] Dataclasses
[ ] Model Config
[ ] Field Types - adding or changing a particular data type
[ ] Function validation decorator
[ ] Generic Models
[ ] Other Model behaviour - construct(), pickling, private attributes, ORM mode
[ ] Settings Management
[ ] Plugins and integration with other tools - mypy, FastAPI, python-devtools, Hypothesis, VS Code, PyCharm, etc.

See #4330 I agree timezone offset constraints would be good, and having a specific UTCDateTime type would make sense.


Add animated GIF showing different style possibilities

It would be nice to replace the current banner with an animated GIF that shows different styles so that we can illustrate configurability.

Sorry to bring this up, but by banner, do you mean the Screenshot part in README.md?

Yes, exactly. This could be done in a similar way as was done for wavedrom-rs.
Your help would be very much appreciated.


[WIP] Add TCP proxy

Thanks for sharing the PR. TCP proxy has been implemented and merged to the master branch.


Getting "can't evaluate field connectors in type interface {}" when using multiple exists check condition using "and"

Hi,
my values.yaml looks something like this.
---
key:
   key1:
      key2: "value"

and my condition looks like :
{{- if and .Values.key .Values.key.key1 .Values.key.key1.key2 }}
{{  .Values.key.key1.key2 }}
{{ end }}

and this works with above values.yaml
but when my values.yaml looks like :
---
key:
   key1:

"can't evaluate field key2 in interface {}." -> this is the error when tried.
And i tried with multiple if check and it works as expected don't understand why "and" fails here.
i used helm template command to test this.

For the YAML there is no schema. So, key2 is entirely unknown. There is no key2 to be evaluated by the golang builtin and function. You might need to create a default value when there isn't one or use a different check like empty. See https://masterminds.github.io/sprig/defaults.html
Does this help?

yes @mattfarina thanks for your explanation.

Closing as issue is resolved.


use Neuron Delegate from github

Use Neuron Delegate from github instead of binary aar
close #331 and #324

I think this PR does not solve https://github.com/mlcommons/mobile_app_open/issues/324.
That issue is about the old Android app in merge-submission-v2.0-into-android-v2 branch.
I'm not sure if the issue is currently present in the android-v2 branch but if it does then we need a separate PR for this branch to fix it.

I think this PR does not solve #324. That issue is about the old Android app in merge-submission-v2.0-into-android-v2 branch. I'm not sure if the issue is currently present in the android-v2 branch but if it does then we need a separate PR for this branch to fix it.

Thanks, I sent PR #400 for android-v2 to close #324


Esefah/legend inspector

Fixes #477.

Updated syntax in Legend.tsx to reflect new Vega syntax. Mainly properties -> encode. and added .value to the property names.
Added change listeners to the inputs.
Fixed the "this" bug in MoreProperties component.
Fixed use of setIn in guideReducer to reflect updated use of how to pass property names.
Added missing properties to legend record.

Submitting for code review.
Only issue currently is that I am getting this warning:
Warning: A component is changing an uncontrolled input of type range to be controlled. Input elements should not switch from uncontrolled to controlled (or vice versa). Decide between using a controlled or uncontrolled input element for the lifetime of the component.
Looking into this.

Oh also default values aren't being reflected when you initially open the inspector. Another thing I am looking into.

This is really fantastic work so far. You've done a great job of connecting the inspector to the store, so now changes in the inspector are reflected in the visualization, which is exactly where we wanted to get started.
A next step we'll want to accomplish is making sure the inspector:

reads the initial values shown in the inspector from the store. For example, when I create a symbol and bind something to fill, it makes a new legend with orient: right by default, but the inspector initially shows orient: left
shows only the relevant properties to the legend. If you bind something to fill and that generates a legend, the legend inspector only needs to show fill and not the other un-bound stuff like opacity, etc.
shows the user when properties are bound to fields. If you make a symbol mark and then bind a field to fill, in the symbol inspector it will show the name of the field instead of a color picker. This indicates that the value is bound, rather than user-defined. you can use the symbol inspector as an example to make sure this happens in the legends inspector too.
shows all relevant properties for all marks. For example, create a symbol mark and then bind something to size. Size is a property specific to the symbol mark, but it should show up in the inspector.


Fix URL Encoded LBRY links from explorer

https://explorer.lbry.io/claims/6bbd31d0e1bcbcf7735ff7b35bcca322a24ec64b
When clicking open in LBRY, the app fails to open the file because of a % in the URL.
https://open.lbry.io/@unclejed613/lbry2 works but https://open.lbry.io/%40unclejed613%2Flbry2 does not.

There is also HTML being outputting over the thumb.

@tzarebczan Further to this. Both links in example above work, maybe you meant this link from the Open in LBRY button, which breaks the app for me?
lbry://%40unclejed613/lbry2 w

Yes, that's what this issue is for  - when clicking Open in LBRY the app doesn't handle some of the encoding currently.
Opened https://github.com/lbryio/block-explorer/issues/25 for the html issue.

This claim had a thumbnail with html characters (). Issue is fixed by escaping html characters.

@akinwale Can you confirm if this has been fixed?

fixed


reinstate .coveragerc

This PR reinstates the .coveragerc file that I accidentally on purpose purged in #41 :relaxed:
Hopefully this will reinstate codecov test coverage metrics of cython .pyx files :crossed_fingers:

Bingo :tada: ... of course codecov is triggering a PR failure as deemed coverage has regressed, but that's based on an unfair comparison i.e., previously .pyx files weren't included in its metrics.

I may now play with configuring codecov, rather than opting for the default behaviours...

Closes #42

@jamesp Are you happy to roll with this PR as is?


Uncaught ReferenceError: AFMA_ReceiveMessage is not defined

Hello,
I'm getting the error above in my console.log when I use an interstitial. The interstitial layer opens, but it is fully black (I can only see the close button). Just implemented it like this:
AdMob.prepareInterstitial( {adId:"ca-.....", autoShow:true} );

See: https://groups.google.com/forum/m/#!category-topic/google-admob-ads-sdk/LVnmBbQd2l4
Can you reproduce the issue with good network, and give more details?

Yeah, we've used our WLAN (100 Mbits) connection. The plugin was implemented into our Meteor Cordova app, which uses the Crosswalk plugin. The presentation of the first ad was successful (an Amazon ad), but all ads after that one failed with a black screen. I don't know if this has something to do with that issue, but normally we will see some "forex trading" ad campaign which uses a video interstitial. Maybe there are some issues with video ads?

You can try configure your ad unit Id what type of ads to receive (in your admob portal), to see whether It happens to certain type of ads?

After disabling "video", everything works fine. I'll later try it again with enabled video to be 100% sure that it has something to do with it.

Okay, now it is working fine, also with activated video. I can't say why this error happened.

I think it's caused by the ad content loaded from ad server, not by plugin. So I'll close this issue.

I've faced same issue, it was the problem with loading time.I was trying to show adds before it loading completely. I changed the code like, loading settings in loading time and show adds in another page after some time. SO it works.


feat(ab): Add support for Activate and GetVariation APIs.

Summary

Adds the Activate and GetVariation APIs
Hooks up the CompositeService to an ExperimentService

Tests

Unit tests on the way!

Closing in favor of #122


Default GPS values in /state

The GPS provides an nan in the latitude and longitude fields when it has had a GPS fix then losses it. This makes it's way through the /state topic as nan. Before the GPS gets a fix, it doesn't provide anything and the /state defaults to 0. I suggest we have the /state default to nan to have uniformity between no fix states.

Closing as it's been done for a week now!


GH-2939: Rely on custom AmqpHeaders.RETRY_COUNT for server retries

Fixes: https://github.com/spring-cloud/spring-cloud-stream/issues/2939
The RabbitMQ 4.0 does not deal with client side x-* headers. Therefore, an x-death.count is not incremented anymore when message is re-published from client back to the broker.

Spring AMQP 3.2 has introduced an AmqpHeaders.RETRY_COUNT custom header. Use messageProperties.incrementRetryCount() in the RabbitMessageChannelBinder when we re-published message back to the broker for server-side retries
Fix docs respectively

NOTE: this might fail for a while until Spring Cloud could bring for us Spring AMQP and Spring Integration SNAPSHOTs.


implements Pete Spence.

fixes #595
work in progress

@mmeldo  - Pete works as intended at this point, except for the last part

If that dude attached a Weapon and has no bounty, raise their bounty by 1.

I don't know how to chain this onto the game action that puts the Weapon into play/attaches it. Any ideas? Thanks.

@stopfstedt There is a callback parameter in the putIntoPlay:
StandardActions.putIntoPlay = function(properties, callback) {
    return new PutIntoPlayCardAction(properties, callback);
};

For reference, you can check JiaMein.

@stopfstedt There is a callback parameter in the putIntoPlay:
StandardActions.putIntoPlay = function(properties, callback) {
    return new PutIntoPlayCardAction(properties, callback);
};

For reference, you can check JiaMein.

@mmeldo thank you for the tip, that did the trick.

thanks for the feedback, will deal with all raised issues over lunch today.


Update boringssl

The version of BoringSSL used by gRPC is over 16 months old. This is creates a problem when linking against gRPC with other libraries that want to use a more recent version of BoringSSL.
[1] https://github.com/grpc/grpc/blob/bc690e04441adc14fbe60bef03d5d59bd4565f23/bazel/grpc_deps.bzl#L74
[2] https://github.com/google/boringssl/commit/886e7d75368e3f4fab3f4d0d3584e4abfc557755

This is actually a request to upgrade the third_party/boringssl-with-bazel submodule, not the third_party/boringssl submodule.