PoC Fix VRR for constrained cursors

Describe your PR, what does it fix/add?

allows cursor:no_break_fs_vrr to work with locked cursors
skips window z order changes if window is in correct position
uses m_pLastMonitor instead of getMonitorFromCursor with locked cursor in some places

When cursor is constrained (and maybe also locked) g_pSeatManager->sendPointerFrame() results in an extra listener_commitWindow call which schedules a frame for monitor. These extra frames break VRR. https://github.com/hyprwm/Hyprland/issues/5918#issuecomment-2189672071
Since there is no direct connection (at least I couldn't find one) between sendPointerFrame and listener_commitWindow and the latter also happens when an app sends a new frame it is hard to filter unnecessary frame schedules.
This PR delays sendPointerFrame to be called when an app sends a new frame and then skips the damage from next listener_commitWindow. This fixes VRR ~but loses most of the cursor movement between the frames~.
I don't think that it is the correct way to fix this issue. If it is possible to not get those extra window commit events than it will be a better solution.
Is there anything you want to mention? (unchecked code, possible bugs, found problems, breaking compatibility, etc.)
If something is wrong with this PR as a whole consider cherry-picking 05de4f3
if clicked on a floating window make it top comment is misleading. changeWindowZOrder is called for every clicked window. Is it intended behaviour or a bug?
CInputManager::onMouseMoved might set the cursor position outside the constraint. Some code uses this incorrect position before the constraints are handled. This PR fixes several of such situations. There might be more.
Works more reliable when the app is the only one on its workspace.
Is it ready for merging, or does it need work?
Ready if there is no better way to do it.

[x] check this hack is disabled when vrr = 0
[x] test GW2
[x] deal with movement speed
[x] test games on special workspaces
[x] fast mouse movement can briefly jump outside of constraint

With this PR, vrrtest on a regular workspace with the below relevant config results in:

No cursor movement = functional VRR
Cursor movement = lowered framerate while moving despite software cursors and no_break_fs_vrr
Mouse clicking = refresh rate spikes consistent with the main issue

hyprland.conf
... omitted: exec-once

plugin=/nix/store/4ciqvzb102b03k8gx3qsirvnbm0wn9bh-hyprbars-0.1/lib/libhyprbars.so
binds {
  allow_workspace_cycles=true
  disable_keybind_grabbing=true
  scroll_event_delay=0
}

cursor {
  hotspot_padding=10
  min_refresh_rate=0
  no_break_fs_vrr=true
  no_hardware_cursors=true
  no_warps=true
  zoom_rigid=true
}

decoration {
  blur {
    enabled=false
  }
  col.shadow=rgba(00000040)
  col.shadow_inactive=rgba(0000001a)
  dim_special=0.500000
  rounding=16
  shadow_range=50
  shadow_render_power=4
}

device {
  name=kensington-orbit-wireless-tb-mouse
  accel_profile=adaptive
  left_handed=true
  middle_button_emulation=true
  natural_scroll=true
  sensitivity=-0.500000
}

device {
  name=logitech-m570
  accel_profile=adaptive
  sensitivity=-1
}

device {
  name=wireless-controller-touchpad
  enabled=false
}

general {
  border_size=2
  col.active_border=rgb(93a1a1)
  col.inactive_border=rgba(93a1a140)
  col.nogroup_border=rgba(dc322f40)
  col.nogroup_border_active=rgb(dc322f)
  gaps_in=10
  gaps_out=20
  layout=master
  resize_on_border=true
}

gestures {
  workspace_swipe=true
  workspace_swipe_cancel_ratio=0.200000
  workspace_swipe_distance=1000
  workspace_swipe_forever=true
  workspace_swipe_min_speed_to_force=10
}

group {
  groupbar {
    col.active=rgb(6c71c4)
    col.inactive=rgba(6c71c440)
    col.locked_active=rgb(d33682)
    col.locked_inactive=rgba(d3368240)
    font_size=12
    height=10
    render_titles=false
    text_color=rgb(93a1a1)
  }
  col.border_active=rgb(6c71c4)
  col.border_inactive=rgba(6c71c440)
  col.border_locked_active=rgb(d33682)
  col.border_locked_inactive=rgba(d3368240)
  insert_after_current=false
}

input {
  touchpad {
    clickfinger_behavior=true
    natural_scroll=true
    scroll_factor=0.300000
  }
  accel_profile=flat
  float_switch_override_focus=0
  follow_mouse=1
  mouse_refocus=false
  repeat_delay=400
  repeat_rate=40
  sensitivity=0.500000
}

master {
  always_center_master=true
  mfact=0.500000
  new_on_active=before
  orientation=center
}

misc {
  background_color=rgb(073642)
  disable_hyprland_logo=true
  disable_splash_rendering=true
  focus_on_activate=true
  font_family=Iosevka NF SemiBold
  force_default_wallpaper=0
  initial_workspace_tracking=0
  key_press_enables_dpms=true
  middle_click_paste=false
}

plugin {
  hyprbars {
    bar_button_padding=12
    bar_color=rgb(002b36)
    bar_height=36
    bar_padding=12
    bar_precedence_over_border=true
    bar_title_enabled=false
    hyprbars-button=rgb(dc322f), 16,, /nix/store/wcwpgpb6ragsn2vz96r19xp2fr4l2x6d-hyprland-0.41.2/bin/hyprctl dispatch killactive
    hyprbars-button=rgb(d33682), 16,, /nix/store/wcwpgpb6ragsn2vz96r19xp2fr4l2x6d-hyprland-0.41.2/bin/hyprctl dispatch fullscreen 1
    hyprbars-button=rgb(6c71c4), 16,, minimize
  }
}

xwayland {
  force_zero_scaling=true
}
animation=global, 1, 5, default
animation=specialWorkspace, 1, 5, default, fade

... omitted: bind, envd, exec-once, windowrulev2, workspace

To address the rest of the tests:

vrr = 0 correctly disables VRR with no cursor side effects

With vrr = 2, = 1 not tested:

GW2 is <1 fps while moving cursor with min_refresh_rate = 0, = 60 results in dropping to 60 during movement, followed by a large stutter when stopping movement that seems visually identical to mouse click
GW2 has large stutters when clicking mouse, unsure if framerate or refresh rate as I do not have a monitor OSD
Cursor update speed does seem lower than the current framerate while VRR is active
VRR with vrrtest does not work in a special workspace

GW2 internal fps limit doesn't seem to do a good job, fps fluctuates around the limit. Mangohud limit fixes that.
Can't reproduce mouse click issues in GW2.
cursor:no_break_fs_vrr works only on regular workspaces. Is there any need to have it on special?
Note that there is an issue with switching vrr from 2 to 1 https://github.com/hyprwm/Hyprland/issues/6893
This fix and cursor:no_break_fs_vrr doesn't rely on vrr setting. They check the real adaptive sync status.

This PR shouldn't change the vrrtest behaviour.
Still can't detect any spikes when clicking. Does this happen with mouse or with touchpad?

I wasn't sure initially, but the latest commit reverted functionality to the same as Hyprland main @ bd526822deb9ed47c0b51b534817aa8541fff07b, as far as I can tell. The spikes happen on both main and this PR for my system. It does not occur with a bluetooth controller nor the keyboard. None of the usual suspect keywords (under general, input, misc, or cursor) seem to have an effect on whether it spikes on click.
Tested with hardware:

Razer Viper Ultimate in wireless mode, all buttons including side
Kensington Orbit trackball, both buttons
AMD RX 6750 XT with pp_power_profile_mode = 1
Samsung S34CG50 monitor @ 48?-100hz, target framerate set to 60

I can confirm what Myned is saying. Clicking M1, M2, M3 (mmb), M4, or M5 cause refresh rate spikes. as seen in the video below
https://github.com/user-attachments/assets/477612da-40b8-4afe-812f-ff824f012b7a
On the other hand I've noticed another bug happening with mouse movements that I'd not encountered before. With no_break_fs_vrr = true mouse movements in any direction except right are fine. However moving right which is the direction of my second monitor causes spikes. I've also tested changing the position of my monitors and it moves the trouble direction as you'd expect. Clip below
https://github.com/user-attachments/assets/4364754c-005d-4873-b8e0-8f74918de797
This can be mitigated by leaving a large gap between monitors (0x0 and 2000x0 vs 0x0 and 1920x0), however this means that you have to move the mouse fast to move between monitors normally and also means that you still get spikes when moving the mouse fast enough to that side. So this leads me to believe that the mouse is leaving the game and moving to the other monitor briefly which is what's causing the spikes in this case.
Also I don't know if this is supposed to be the case for no_break_fs_vrr = false on this pr or on the latest git, but with that disabled my refresh rate sits at 144 when moving the mouse at all in fps games despite it being invisible anyway.

Also I don't know if this is supposed to be the case for no_break_fs_vrr = false on this pr or on the latest git, but with that disabled my refresh rate sits at 144 when moving the mouse at all in fps games despite it being invisible anyway.

Ok after a quick test I can confirm this is just how Hyprland functions now on the latest git no matter the state of no_break_fs_vrr. On the latest git no matter what settings used Hyprland will sit at max refresh rate when moving the mouse in fps games. On this PR, no_break_fs_vrr=true fixes this with the added issues of the second clip I explained in my previous comment.

This PR shouldn't change the vrrtest behaviour.
Still can't detect any spikes when clicking. Does this happen with mouse or with touchpad?

Just to clarify, the mouse button spikes Myned and I mentioned have been a thing in all Hyprland versions I've ever used. I don't think this PR has anything to do with that. Recent Hyprland versions prior to this PR just don't work with vrr at all when looking around in games so that might have made it harder to notice the mouse button thing between 0.41.0 and this PR where vrr had completely broken.

Does the spike happen on mouse down, mouse up or both? Can't test it myself, my osd doesn't refresh itself and I don't see such short spikes.
This PR requires cursor:no_break_fs_vrr = true.
LFC might work incorrectly for some setups. This is a hw or driver issue. My monitor advertises 48hz min refresh but starts doing weird stuff when fps goes below 52.

Does the spike happen on mouse down, mouse up or both?

I can test this tomorrow. But I'm not sure considering it doesn't happen on every single input as you can see from the video I posted. Which is just really odd.

The spike occurs on mouse down only, for barely a millisecond as indicated above. Movement while mouse down does not incur additional spikes.  I also tested without building with hyprbars to the same effect.
I cannot test the multi-monitor issues as I only have one display.
Additionally, my entire system freezes occasionally when VRR is active. It just happened recently while testing in vrrtest. There are no logs and I cannot SSH into the machine nor switch to a different TTY.

hyprctl systeminfo
Hyprland, built from branch  at commit f412e11aa530650a37080edd834dcec7fd7b38b5  ().
Date: 2024-07-15
Tag: , commits: f412e11aa530650a37080edd834dcec7fd7b38b5

flags: (if any)

System Information:
System name: Linux
Node name: mynix
Release: 6.9.8-zen1
Version: #1-NixOS ZEN SMP PREEMPT_DYNAMIC Tue Jan  1 00:00:00 UTC 1980

GPU information:
03:00.0 VGA compatible controller [0300]: Advanced Micro Devices, Inc. [AMD/ATI] Navi 22 [Radeon RX 6700/6700 XT/6750 XT / 6800M/6850M XT] [1002:73df] (rev c0) (prog-if 00 [VGA controller])

os-release: ANSI_COLOR="1;34"
BUG_REPORT_URL="https://github.com/NixOS/nixpkgs/issues"
BUILD_ID="24.11.20240714.693bc46"
DOCUMENTATION_URL="https://nixos.org/learn.html"
HOME_URL="https://nixos.org/"
ID=nixos
IMAGE_ID=""
IMAGE_VERSION=""
LOGO="nix-snowflake"
NAME=NixOS
PRETTY_NAME="NixOS 24.11 (Vicuna)"
SUPPORT_URL="https://nixos.org/community.html"
VERSION="24.11 (Vicuna)"
VERSION_CODENAME=vicuna
VERSION_ID="24.11"

plugins:
  hyprbars by Vaxry ver 1.0

Some additional testing in vrrtest:

Dispatcher does not spike via watch -n 1 'hyprctl dispatch sendshortcut , mouse:272, class:love'
Hardware scroll wheel does not spike in either direction (but middle mouse still does)

I can reproduce the mouse click issue but only in some games and combinations of windowed/fullscreen.

What's worse though is that VRR doesn't appear to work properly without inputs to begin with:
When I run vrrtest at 139 fps, actual vfreq is 144 and stutters ~twice a second.
When I run vrrtest at 130 fps, actual vfreq jumps between 144~130 and sometimes dips far below into the 80s-90s, quite stuttery overall.
When I run vrrtest at 75 fps, actual vfreq appears to be quite stable but actually jumps around very often (causing stutter) and results in jumps to 90~100 in vfreq from time to time.
(Vsync on and AMDGPU in the VR power profile (4).)

BTW, if you have an LG monitor, the debug menu has a more frequent vfreq display without as much averaging that also stays on screen permanently via the service menu. Power off, left, left, left, right, power on and then settings, debug info.
Other monitors may have similar service menus.

@Atemu

but only in some games and combinations of windowed/fullscreen.

If you're using vrr = 1, there are still many events that can interrupt the stability of VRR in windowed mode outside of input, as commented. This can cause issues without proper direct scanout, if I understand correctly, and is worth revisiting after the wlroots migration. If vrr = 2, you wouldn't have VRR active without fullscreen, which would cause stutter. I'd suggest testing only with vrr = 2 for the purposes of this PR.

It's definitely on mouse down for me too. Oddly enough, I found a "fix" for this back in 0.40.0 but that doesn't work on this PR. I'm not sure when that changed as I've been sticking with 0.40.0 since it's the last good vrr build I've found on my testing.

What's worse though is that VRR doesn't appear to work properly without inputs to begin with:
When I run vrrtest at 139 fps, actual vfreq is 144 and stutters ~twice a second.
When I run vrrtest at 130 fps, actual vfreq jumps between 144~130 and sometimes dips far below into the 80s-90s, quite stuttery overall.
When I run vrrtest at 75 fps, actual vfreq appears to be quite stable but actually jumps around very often (causing stutter) and results in jumps to 90~100 in vfreq from time to time.

I can't reproduce this at all. My vfreq on all values in vrr test and other applications is within +-1hz from the reported fps. The only change is below 51fps when LFC kicks in, though oddly enough LFC is supposed to be 48 but idk.

Also, in most games, VSync adds additional overhead without benefit for adaptive refresh, and vrrtest runs by default with it disabled. If there's no difference, it's usually better to disable it.

@Gwenodai
Your linked comments sound like fullscreen wasn't being enabled. Did you confirm that VRR is active while the spikes do not occur? A decent way to visually see whether the window is fullscreened properly is with reserved space such as overlays (e.g. waybar). If the overlay is not hidden, the window isn't in true fullscreen.

@Myned
Yes I can confirm fullscreen was enabled and that vrr was functioning in both instances. I limit the fps to 60 when testing to make it very easy to tell if spikes occur both visually and by seeing the vfreq go from 2 digits to 3 digits. I have waybar at the top of my screen, it is not visible during fullscreen. On top of that, the testing to confirm that was done with the help of hyprctl's activewindow output which confirms that in all cases the application was in proper fullscreen.
I have no idea why "floating": true has any effect on a fullscreen window, but it is consistent and reproducible on 0.40.0 for me. In fact I'll include a video of it to demonstrate it.
https://github.com/user-attachments/assets/552f2d0f-d3ab-458c-a8f9-2a0dd04848c2
This video was taken with vfr = 1 and vrr = 2 on Hyprland 0.40.0 with vrrtest set to 87fps. The first and third tests have the properties of  "floating": true, "fullscreen": true, "fullscreenMode": 0. The second one has the properties of "floating": false, "fullscreen": true, "fullscreenMode": 0.
As you can see this bug is completely eliminated under these circumstances on 0.40.0. This however does not prevent it on this PR, so something has changed since then. This however really shouldn't be necessary and makes no sense as to why it works. But the weird thing is that it does and because of that I've written a script that checks for floating on fullscreen game windows and fixes it for me, essentially eliminating the bug in a hacky behind the scenes way for me. However since discovering this back on June 22nd I've not been effected by the spikes again until trying this new PR.

Do mouse clicks cause spikes with input:follow_mouse = 3?

Do mouse clicks cause spikes with input:follow_mouse = 3?

They do not! Looks like it's related to focus as cyclenext while vrrtest is the only window also triggers the spike.
I can also confirm that follow_mouse = 3 works on v0.40.0 as I was testing the floating fix mentioned, without being able to reproduce.

Do mouse clicks cause spikes with input:follow_mouse = 3?

No they do not. So it appears mouse buttons must be doing something like shifting the focus or refocusing for a single frame. Then why does this behaviour not happen on fullscreen applications in 0.40.0 when "floating": false?
For reference I use follow_mouse = 1

Looks like these spikes are caused by refocus or bringing a floating window to top.

@UjinT34
Then wouldn't mouse_refocus = false solve the issue with follow_mouse = 1? Because it seems to have no effect for me.

My bad, it does indeed spike on alterzorder. I had it bound to the same key as cyclenext.

@Gwenodai
As for floating: 0 not causing spikes, I believe that's due to some configuration differences as I wasn't able to reproduce myself. Best guess would be this rule from your posted config, which would mean tiled windows might paint differently than floating ones:
windowrulev2 = bordercolor rgba(00fbff85),fullscreen:1

@Myned
It may well be something in my config, but it's definitely not that as that only changes the border color of maximized windows not fullscreened ones and removing that has no effect.
The odd thing is nothing in my config changes between Hyprland versions outside of WLR_NO_HARDWARE_CURSORS, default_cursor_monitor = DP-1, cursor_inactive_timeout = 0 being removed from my config and these being added to cursor: no_hardware_cursors = true, inactive_timeout = 0, default_monitor = DP-1, no_break_fs_vrr = true, min_refresh_rate = 48

It's likely because tiled windows don't use z-order, thus can't be brought to the top on click, though that doesn't explain why floating: 0 doesn't work in recent versions or why I can't reproduce.

though that doesn't explain why floating: 0 doesn't work in recent versions or why I can't reproduce.

That's really odd to me. Both my partner and I have completely different hardware from each other (Mobo, cpu, gpu, ram, monitors, mouse, keyboard, etc) as well as similar but different software setups to each other. We're both running Fedora 40, different mesa driver versions, completely different kernels (6.9.6-200_tkg_zen2_preempt.fc40.x86_64 vs 6.8.10-300.fc40.x86_64) and a bunch of different applications though her Hyprland config is almost the same as mine. But despite that all of this is reproducible on her PC too. So surely it can't be a hardware thing then.

The code doesn't really checks the floating state, it checks g_pSeatManager->state.pointerFocus variable. I didn't bother to look what really sets its value. changeWindowZOrder calls damageMonitor which schedules an additional frame even when the order doesn't really change. I've made it return early if the window is already in the correct position. Please, verify that spikes on mouse click are gone and several floating windows have no trouble changing their order when clicked.

Seems fixed with the latest commit, no spiking on click for vrrtest nor GW2, and multiple floating windows were changing z-order just fine via follow_mouse = 1 on click and an alterzorder, top bind. I'll roll with this PR for a while to stability test.

That latest commit is amazing! The spiking is completely gone from mouse button clicks now. Now the only issue is the one I mentioned here to do with multiple monitors and cursor constraints.

Now the only issue is the one I mentioned here to do with multiple monitors and cursor constraints.

Does latest commit fix this issue? Is there any issues with switching focus between monitors?

Does latest commit fix this issue? Is there any issues with switching focus between monitors?

There's no issues switching focuses between monitors that I noticed. It's just the issue I highlighted prior, which is basically:
Moving the mouse in the direction of my second monitor causes spikes. This can be mitigated by leaving a large gap between monitors (0x0 and 2000x0 vs 0x0 and 1920x0), however this presents it's own issues and you'd not want to use a computer like this. This also means that you still get spikes when moving the mouse fast enough to that side. So this leads me to believe that the mouse is leaving the game and moving to the other monitor briefly which is what's causing the spikes in this case.

@UjinT34
Sadly the latest commit doesn't seem to have any effect on the bug whatsoever. There are also no issues switching focus between monitors that I can find.

@Gwenodai
How about now? If this doesn't help then it should be a separate issue.

@UjinT34
That fixed it completely! I haven't found any other issues either. I'm gonna stick with this PR for a bit and see how things go.

@vaxerski please take a look at this PR

VRR with the cursor being moved appears to have regressed for me.
If the cursor is visible, I'm at max refresh rate again.
When the cursor is not visible, it sort of works but somehow only when I'm not moving it very quickly. Flinging the camera around nets me max refresh rate regardless of the frame rare.
Clicking appears to work correctly though now.

If the cursor is visible, I'm at max refresh rate again.
When the cursor is not visible, it sort of works but somehow only when I'm not moving it very quickly. Flinging the camera around nets me max refresh rate regardless of the frame rare.

Looks like you have hw cursors enabled.
Multi-monitor? What games have you tested?

If the cursor is visible, I'm at max refresh rate again.
When the cursor is not visible, it sort of works but somehow only when I'm not moving it very quickly. Flinging the camera around nets me max refresh rate regardless of the frame rare.

To add onto what UjinT34 said, also make sure no_break_fs_vrr is enabled.

no_hardware_cursors = true. All other prerequisites are set correctly too AFAICT:
misc {
    force_default_wallpaper = 1 # Set to 0 or 1 to disable the anime mascot wallpapers
    disable_hyprland_logo = true # If true disables the random hyprland logo / anime girl background. :(

    # I'd like my screen to turn on when I press a button please
    mouse_move_enables_dpms = true
    key_press_enables_dpms = true

    # Variable frame rate?
    # TODO need to test whether this affects input delay
    vfr = true
    vrr = 2

    no_direct_scanout = true
}

cursor {
    no_hardware_cursors = true
    hide_on_key_press = false
    no_break_fs_vrr = true
    min_refresh_rate = 10
}

I've also toggled HW cursors to no avail.
As mentioned, it does partially work too when the mouse cursor is not visible.

I've discovered a strange bug with mouse movements in games. If I move my mouse very slowly it doesn't seem to transfer all of the movement into the game, some frames seem to ignore mouse movement alltogether when I move the mouse slowly. Disabling no_break_fs_vrr (thereby essentially disabling this entire PR) "fixes" this issue. So there's an odd effect on mouse movement being impacted/ignored during slow movements.

@Gwenodai
Should be fixed now

@Atemu
Do you have WLR_NO_HARDWARE_CURSORS in your environment? Definitely sounds like hardware cursors. Also make sure to do a full session restart or system reboot, if you haven't already.
@UjinT34
Was able to reproduce the ignoring of slow mouse movement when the cursor is locked @ https://github.com/hyprwm/Hyprland/pull/6877/commits/658e79e0d340765b62e60f82c4139ee06fc46b7e, tis fixed @ https://github.com/hyprwm/Hyprland/pull/6877/commits/b325df22dfc8ef54bbb9619bb98ff5fd56030a7c (latest)

@UjinT34
Sadly something has completely broken now for me with this new commit.
Moving the camera in games now brings the refresh rate up to the max again (But not moving a visible mouse). But along with this I've now got new bugs that weren't present before.
The random spikes are back and now there's even more weirdness with them. Locking it to 60fps results in random spikes to 144 every few seconds, whereas locking it to something larger like 89fps results in completely random spikes all over the place constantly. This behavior appears in both vrrtest and games for me. I've attached a video below that demonstrates the 60fps and 89fps comparison. (I only set it to 89fps because I just held the up arrow for a bit, the issue appears on other framerates as well.)
https://github.com/user-attachments/assets/c1fc2c06-e8ed-4d3f-9cec-5a9df883bcb3

Ok more odities.
The spikes in vrrtest only seem to happen when there's a game open on another workspace (The workspace is hidden/not visible). This doesn't happen when vrrtest is the only fullscreen application open, and also oddly enough doesn't happen when I fullscreen other applications in the background. (The games I tested with are Monster Hunter World and Warhammer 40,000: Boltgun). Without a game open in the background it works perfectly.
Moving the camera with the mouse in Monster Hunter World causes the refresh rate to sit at max during said mouse movements, however moving the camera in Warhammer 40,000: Boltgun does not cause this issue for some reason.

Ok so the refresh rate that vrrtest is jumping up to seems to be the framerate Monster Hunter World was running at in the other workspace, so that explains why it didn't happen with other fullscreen applications. Something weird is going on and it's mixing together the two refresh rates. no_direct_scanout also seems to have no effect on this.
This might actually be happening on https://github.com/hyprwm/Hyprland/commit/658e79e0d340765b62e60f82c4139ee06fc46b7e as well, I just didn't test Monster Hunter World, nor did I test multiple vrr applications at different refresh rates on other workspaces simultaneously before.

@Gwenodai
b325df2 is very unlikely to cause any trouble
658e79e might be a regression with multi monitor setup
I don't have any trouble with vrrtest and a game on separate workspaces. Having them on the same workspace breaks vrr. But why anyone would want that?) This issue is outside the scope of this PR. If you have several fullscreen apps on a single workspace and switch between them the focus might get stuck with the wrong app and fullscreen status might get lost. Most games (especially online) keep rendering in the bg. I don't know how it'll affect other apps.

I can reproduce as well with GW2 and vrrtest on separate workspaces:

GW2 fullscreen on workspace 1, mangohud limited to 100 (max refresh), vsync off, internal limiter set to Unlimited
vrrtest fullscreen on workspace 2, target fps at 60
Observe stutter/flickering as the refresh rate fluctuates on vrrtest
Limit GW2 to 60 fps
Observe no stutter/flickering on vrrtest

I do agree, however, that this is probably a different issue to track as it is not related to input.

Yes I'd assume the new issues I mentioned and Myned reproduced might be unrelated to input and a different issue entirely. And just to be clear I was talking about apps on other workspaces entirely not on the same one.
However for some reason I'm still able to reproduce mouse movements causing spikes in MHW. I'm not sure why I can in that game but not others, but that might be something else to look into. Maybe there's another way games handle locking input which at least MHW uses that's causing this issue to reappear there.
Clip of it below taken on the latest commit.
https://github.com/user-attachments/assets/bc3cd486-a91d-4ee4-b0d0-48b187c8489e

Also to add onto my last comment, I've just confirmed that the refresh rate does not spike up during mouse movements in MHW back on 0.40.0 prior to cursor:no_break_fs_vrr. So I assume that does have something to do with input and this PR.

Reproduced the issue with GW2. Even the launcher is enough to break VRR. Seems to be limited to specific apps. Doesn't happen with vrrtest + quake 2 + noita. As soon as I start GW2 VRR breaks for all other apps.

The fact that it's only some games and that GW2 is included makes me think this is related to my comment about frame accumulation in the background. I'm interested to see how aquamarine handles that once it's in main.

Oh, I did not see the force-push in time, I will test that it appears to use an entirely different backend now instead of wlroots? O.o

@Atemu

It still feels like sometimes the refresh rate doesn't match for a split second when frame rate drops slightly but I couldn't reproduce that in vrrtest

I've noticed this as well, even in vrrtest, but I chalked it up to the current situation with wlroots. Will retest on aquamarine.

Another thing that needs to happen is for the required settings to be documented

Thanks for the writeup, I agree it should be documented, perhaps in a wiki PR once commits have settled in this area. Only thing to note is that vrr = 2 can be toggled while a session is running (it's how I tested), but it only takes effect when switching to another workspace and back. I can't comment on the rest myself.

LFC repeats the same frame to keep monitor refresh rate within supported range. The content still refreshes at low rate when LFC is active. cursor:min_refresh_rate will force a minimum content refresh rate when mouse moves. This forced rate is not guaranteed to be smooth.
Settings are documented https://wiki.hyprland.org/Configuring/Variables/#cursor All settings can be changed at runtime (except one specific change https://github.com/hyprwm/Hyprland/issues/6893)
Direct scanout requires HW cursors. With cursor:no_hardware_cursors = true ds setting has no effect. With cursor:no_hardware_cursors = false cursor:no_break_fs_vrr = true will only work for locked cursors with this PR. I'll look more into hw cursors if this PR gets merged.

LFC repeats the same frame

I don't think it's that simple. I never had my cursor drop below ~60 fps with LFC on Xorg or on any Windows implementation of VRR.
Or is that behaviour due to usage of a HW cursor?

LFC repeats the same frame

I don't think it's that simple. I never had my cursor drop below ~60 fps with LFC on Xorg or on any Windows implementation of VRR.
Or is that behaviour due to usage of a HW cursor?

It really is that simple. LFC is done entirely on your monitor, not on the computer. It can't move your mouse in between frames and render it separately from the given frame.
LFC actually works by multiplying the frames the monitor gets when it's below the lower limit of your display. It does this by doubling, tripping, etc the current frame based on your current frame rate in order to get it above your minimum. You may see 30fps become 90hz (3x) or 46fps become 92hz (2x) depending on how the monitor decides to multiply your framerate at its current number.

Well, evidently, it is not that simple as the cursor updates far more frequently than the synced content in other systems. You can easily try this out yourself using vrrtest on Xorg. At 5 fps, my mouse is at a perfectly smooth 120Hz and the bars stutter along at a constant rate with no tearing.
I also don't believe the monitor plays any role in this as they're generally quite dumb. Even VRR itself is little more than the graphics card varying the front porch of the output signal sent to the monitor AFAIK. The fact that the same code path used for VRR on modern displays can be made to work with analogue CRTs should be telling.
What you're describing sounds more like PSR (panel self refresh) which is something entirely different (though I guess it could be used for LFC in theory?).
I know how LFC works conceptually, I'm just unsure of the concrete implementation details.

Retested @ https://github.com/hyprwm/Hyprland/pull/6877/commits/7dc595ec4100be4fbff099508cddb0c576efdb6e, seems to be working the same as before aquamarine in both vrrtest and GW2. The occasional stutter is still present, but that's likely due to external factors outside of Hyprland's control, such as hardware.
@Atemu

Or is that behaviour due to usage of a HW cursor?

From my understanding, the difference in behavior you're seeing is indeed because of hardware cursors, due to them being on a separate plane than the main framebuffer, thus can be updated independently at a multiple of the main framerate (LFC).
X11 and Windows may have the ability to update cursors as a multiple of refresh without triggering a page flip (which discards the previous frame), but it seems that Wayland does not currently have an API path to do so, though I was unable to confirm this. zamundaaa from KDE explains it better than I can - by "AMS API" I believe they mean AMD, so FreeSync only.
cursor:min_refresh_rate is needed for software cursors because it's a single framebuffer for both cursor and application, which can be under minimum refresh, and is essentially a workaround for cursor movement not refreshing the display, but is not dynamic like with LFC and hardware cursors.
According to a thread in that issue, a type of pseudo-LFC could theoretically be implemented by a compositor, where the frame could be repeated at the highest supported multiple with an updated cursor position instead of relying on the monitor's handling below minimum refresh, which would also work for software cursors, but this was not expanded upon further from what I could find.
Disclaimer: I am paraphrasing quite a lot here, but I tried to compile as much info as possible since LFC is such a misunderstood topic in the general VRR space (and possibly by myself).
@UjinT34
If you haven't seen it already, KWin has some additional context that may be worth looking at, and some potential options for working around hardware cursors here.

zamundaaa from KDE explains it better than I can - by "AMS API" I believe they mean AMD, so FreeSync only.

AMS likely means atomic mode setting in this context.
The thread linked is very helpful because they had to solve the exact same issue at hand here and the currently chose workaround was also presented as one of the options.

The newest version does not appear as smooth as the previous iteration anymore. When moving the camera around in Planetside 2 at a locked 7.2ms (Mangohud shows variation of 7.1~7.2), refresh rate often jumps between 137Hz and 143Hz though it appears to primarily focus around 138.something and 139.something. It feels off too, this is not an accurate representation of the frame rate.
It's not easy to tell in vrrtest but if you make it fluctuate a bit (I chose 120 min 139 max), you can tell it judders a bit with a frequency of roughly ~4Hz but it's not constant. Super hard to tell reproducibly but irritating in practice.

I tried the previous version again (7dc595ec4100be4fbff099508cddb0c576efdb6e) and it does indeed feel better, so I wasn't imagining it.
However, it also shows the issue I noticed on the newer version with the refresh rate jumping a bit. Though it appears not quite as much? It's that hard to tell.
The small judder is not visible in vrrtest however (or at least not to a noticeable degree).

vrrtest and GW2 @ 3d3955f0720c8d18ba7be1ff92e919610c974019
I don't notice anything different with software cursors myself and rapid fluctuations would result in pretty noticeable flicker on my monitor.
With hardware cursors it still fluctuates on cursor movement, but very minorly and only in GW2. When the cursor is locked there is no noticeable difference to software cursors, so that's great.

A merge conflict arose btw.

Is this still being worked on? I miss having reliable vrr in hyprland without having to swap between versions depending on what input device I want to use.

This is ready to be merged if there no other way to get rid of unwanted _CWlSurfaceCommit calls. Still might not work for every game https://github.com/hyprwm/Hyprland/discussions/7386

Tested this PR to see how games work with it. Quake champions worked well, but Apex legends was very laggy with this PR compared to main branch. I can't really check if vrr is working, because my monitor doesn't have an fps overlay, but I didn't notice any tearing with allow_tearing on. I can maybe add some logs or other details about the Apex legends issue later. Basically the game is running well (Mangohud frametimes), but appears extremely stuttery and possibly shows out of order frames.
I also checked if this happens to fix https://github.com/hyprwm/Hyprland/issues/7414, but it didn't.

@Cloudperry Have you ensured you're not running into https://gitlab.freedesktop.org/drm/amd/-/issues/1500?
Also look up whether there's a debug/service menu for your display which shows this info. I believe all of them do for QA purposes but it's not always documented (usually unofficially).

@Cloudperry Have you ensured you're not running into gitlab.freedesktop.org/drm/amd/-/issues/1500?
Also look up whether there's a debug/service menu for your display which shows this info. I believe all of them do for QA purposes but it's not always documented (usually unofficially).

I have ran into that quirk before and fixed it, but actually that was the cause. My Corectrl autostart was somehow broken. Now VRR is working really nicely (no tearing when allow_tearing is on) with games capped to 142 fps using Mangohud. On main branch with no_break_fs_vrr I had occasional tearing with the same games, but that testing was with a 143 fps cap.

when can we expect this to be merged? I would really love to see vrr working on the current build

idk it's still a PoC

FWIW, this makes VRR work much better than it did before; it's quite essential honestly.

@UjinT34

I finally found a way to spot the imperfections I've been feeling: Set vrrtest to the lowest speed.
The stutters become immediately obvious.
This needs a rebase btw. I've done it myself at https://github.com/Atemu/Hyprland/tree/vrr-new-rebased-rebased, resolving conflicts to the best of my ability but I have no way of verifying whether the changes still make sense in integration with the rest of the codebase. It appears to work just like before. (It's atop v43.0 but applies cleanly to 44.0.)

I don't think there is a better way to fix it. Looks like something similar is required for HW cursors in general.
Ready for merging

Sorry, I'm not following.
HW cursors are disabled in my case and it's not visible on screen. I'll have to re-test whether this is the status quo in which case we can move the discussion to another issue.
@Gwenodai do you also notice the stutters in low-speed vrrtest?

@Atemu I didn't notice the stutters from my short testing of it. I was just giving a thumbs up for the rebasing and such. Sorry for the confusion 😅


[PIO-129] Move CLI document

There are links to CLI document in the deploy section and collecting data section of the side menu, but if these links are clicked, the side menu is closed because these links have a hash like /cli/#engine-commands. I think that such unclear navigation would confuse readers.
https://predictionio.incubator.apache.org/cli/#engine-commands
I propose to remove these links from the deploy section and the collecting data section, and put a link to CLI document in the resource section without hash:

In addition, put links to the CLI reference in documents of the event server and the engine server. A following screenshot shows a link to the event server CLI in the document about deployment:

LGTM. Merging. Thanks @takezoe !


[Docs] Replace Github Emojis with their image equivalents

In docs/index.md there are three emojis (for example :hammer:). They are shown correctly in the preview (for example like this: :hammer: ) but the HTML rendering at https://googlechrome.github.io/rendertron doesn't show them correctly.

Look at the preview in https://github.com/GoogleChrome/rendertron/blob/master/docs/index.md and right click an emoji to get the image address
Edit docs/index.md to use the image instead of the :hammer: etc.

To do (2) you will need to replace the emojis (for example :hammer:) with the corresponding image (for example ![](https://github.githubassets.com/images/icons/emoji/unicode/1f528.png))

Hey @AVGP, The image is bigger than the emoji.
:hammer: :hammer:

![](https://github.githubassets.com/images/icons/emoji/unicode/1f528.png)
 <img src="https://github.githubassets.com/images/icons/emoji/unicode/1f528.png" width="16">

hey @AVGP
I would like to work on this issue.

hey @AVGP,
create a PR for this, please have a look.

@mfaheemakhtar That's correct! Good catch! 👍
I just merged the PR that replaces them with markdown for images - would you like to do another PR to use the HTML markup you mention?

@AVGP , sure.

@AVGP,  there are a couple of issues here.

 The img tag is being wrapped in an a tag. One way is to set href to #.

When using the actual emoji, it is being replaced by an g-emoji element, which has its own styles plus it sets the height and width to '1rem'.

TLDR: The position and size will not be absolutely same as the emoji.
I'm making the PR, you can compare if it looks good or not and merge.


Faraday::ConnectionFailed

Howdy, and thanks for this great gem caching service!
 So when I try to pull some larger gems I sometimes get:
ERROR - Connection failure - execution expired (Faraday::ConnectionFailed)
It would be great to be able to set an increased timeout value for Faraday.  If I get a few mins. I'll drop in a PR here.
Thanks again!

Thanks so much for trying it out and the feedback! I'd be happy to merge it in when you have a PR ready! Would it help to get a patch release of the gem, or are you running Gemstash directly from a git clone?

I'm running from a git clone at the moment. Just working on the config setup portion now, as I've already got the patch itself working and passed all specs. Calling the option config[:fetch_timeout], but please let me know if you want to change it, or feel free to.

I wonder,
If we catch the error as a timeout and not a general connection error, does it make sense to have some form of exponential retry? that would adjust itself when we have a gem that is too big and we are in a slooooow connection.
Something like leaving the default timeout configured, no idea how much is it, say 5 seconds; catch the timeout error, double the timeout to 10 seconds and retry. If it fails again this second time we could just give up and let the error bubble up or double and try again one more time.
That would be a bit more dynamic and will allow us to not think so much about the connection we are dealing with. And I love not having to think at all.
Just a thought, the PR is a good solution also.

I usually prefer exponential backoff as the solution for things like this. The issue that I foresee is what if the 3 backoffs isn't enough and it still times out? Do we do 4? And then what if someone is on dial-up... LOL. I jest but, also like the ability to just set it and forget it. I could be on the beach somewhere with horrible bandwidth, set it to 999, and have some drinks while I wait for it to cache up 'nokogiri' and all the other gems for my app, and not have to worry about it timing out. :watch:
Re: not having to think about it, we could make it a hidden config option and not ask the question during 'setup'?
I'm willing to try exponential if you'd rather have that. It may take me some time to get to it as I've got to wrap up for tonight. Let me know, and I'll pursue it this coming week.

Oh no, I think that having the ability to set it up as a general timeout is great. Do not ditch that.
In a case like this a backoff makes sense to only have a second try, not more than that (just honouring the lazy in me so I don't have to setup anything at all), but that said, simplicity beats complexity.

Ya, it definitely raises on timeout. We could catch it and do EB. I'll add that as a second try thing, like you are thinking. :+1:

@midwire does it make sense to close this one since the branch is merged in?

Yes indeed. Closing.


Added a blank line between date and supported version. It wasn't being rendered properly

Even if the phrase about supported Kubernetes versions was in a new line, it wasn't rendered corretly

Confirmed in the preview instance that now it works fine


Tweepy documentation does not specify that OAuth 1a is required for Streaming

I have been reading the Tweepy documentation as I try to use it for a new project.
As it wasn't clear to me what the difference between OAuth 1a and OAuth 2 authentication mechanisms is, I opted to use OAuth 2 as it involved fewer steps. Great success followed, I was able to search for users, hashtags, etc.
However, when trying to stream, I was consistently getting 401 errors from Twitter. There are existing issues surrounding Tweepy and 401 errors, such as #877.
Eventually I decided to try another python library for streaming, as I had already double checked that the system time was set to UTC and synced with NTP with a drift of <5 minutes. That's when I started reading Twython's documentation and stumbled across this:

The Streaming API requires that you have OAuth 1 authentication credentials.

I changed my Tweepy authentication to use OAuth 1a, and magically the Streaming API works.
I went back and reviewed Tweepy's authentication documentation and streaming documentation, and nowhere do I see it mentioned that Streaming is only possible using OAuth 1a authentication.
It would be very nice to add this warning to your documentation, as Twython has done. Knowing this in advance would have saved me untold hours of debugging and hair pulling.

Also took me way too long to figure this out. Thanks for the hint.

With https://github.com/tweepy/tweepy/commit/c9f59e680f17412522206d0999bf9f5ac7788f2f, this should no longer be necessary, with all the credentials being required arguments.

How can i now the version of OAuth streaming installed on my pc?

Please don't necrobump old closed issues.
I'm not sure what you mean by "the version of OAuth streaming installed".
You can check your version of Tweepy using pip show or by checking tweepy.__version__.


Update Typescript definition to better match documentation

The documentation for the capture function indicates optional parameters, but the typescript definition file require those parameters to be valued.

Thanks! Merged into master.


1.8.0-rc.2

Mini changelog:
Implemented #913
Fixed #1088 in API
Minor readme fixes for wrangler dev

just a heads up since i will be ooo when this is tagged - if the github release fails (i've had the action flake out on me before with an opaque error message) you will need to delete the tag, push the deleted tag, and then re-add and re-push the tag again :)

@ashleygwilliams good catch, the readme changes don't seem to have been copied to the npm dir as well. @EverlastingBugstopper, since you handled this community PR, do you mind taking this on? Otherwise I can pick up the pieces!

for future reference: this is something we always do in our release process - not when changes are made to the README.
see item #11 here


BLAST Service Implementation

Reference: Sequence Similarity Search Requirements: https://docs.google.com/document/d/1H7zKdm8RC5oBKhvaGeaihP5meJAJ7Q2vuR-zyydYPdU/edit
Design app service framework for BLAST that work with/without authentication to access private/public genomes
Place for creating and storing blast databases.
Prototype submission interface for BLAST
A search is against one of several classes of target:

Genome. Search against one or more given genomes.
Taxonomy tree. Search against all genomes at or below a given NCBI taxonomy ID. (species or genus only and only where we have existing genomes)
Genome group. Search against all genomes in a given genome group.
Feature group. Search against all features in a given feature group.
Enumerated database. Search against an explicitly curated database. Type is either protein or DNA.

Returned data: Essentially content of blast –m8 output. Some search mechanisms may not return some columns.
Enumerate databases call needs to be REST capable
Searching against a genome implies a choice of one of the following three searches:
(a)   Amino acid sequences of its protein encoding genes. Returns PATRIC feature IDs.
(b)  DNA sequences of individual features. Returns PATRIC feature IDs.
(c)   DNA sequences of contigs. Returns PATRIC genome sequence IDs.

this is complete now and supports all the requirements laid out earlier.


Coral Fan will not die outside of water as long as nothing is placed next to it.

wh

can confirm, is bug


[BUG] [Uno] 'RoutedViewHost' does not contain a definition for 'SetBinding'

Describe the bug
Compilation error when trying to build iOS project:
'RoutedViewHost' does not contain a definition for 'SetBinding' and no accessible extension method 'SetBinding' accepting a first argument of type 'RoutedViewHost' could be found (are you missing a using directive or an assembly reference?). There are no SetBinding method on RoutedViewHost at all.
Steps To Reproduce

Create Uno application via the Uno template in VS.
Add RoutedViewHost on Page (UserControl, whatever)
Run build
See error

Expected behavior
iOS head project builds without errors (UWP and Android projects are built without errors).
Screenshots

Environment

OS:        Windows 10
Version:    VS Community 2019 16.5.4

Additional context

ReactiveUI.Uno 11.3.8
Uno.UI 2.3.0-dev.98
Uno.Core 2.0.0-dev.7

Just for clarity, is this something that worked with a previous version, and is now broken?  Or is this something you just discovered?

I just discovered this error and don't know if it worked previously.
Just updated to 11.4.1. Still error.

Hey,
I haven't seen this error for a long time. I think this issue may be closed.
Thank you good man for fixing it!


Should keep previous record id when put with replaceOnConflict: true

Is your feature request related to a problem? Please describe.
When I run this code multiple times, the ID of the record increases.
For example, the first time, the result is [{"id":1,"name":"Tom"},{"id":2,"name":"Jack"}]. But when I run it again, the result is [{"id":3,"name":"Tom"},{"id":4,"name":"Jack"}].
Describe the solution you'd like
I think the replaceOnConflict feature should behave the same as `SQLite's REPLACE command.
Describe alternatives you've considered
Query exists record's id for update, but this is too verbose.
Version

Platform: iOS, Android, Mac, Windows, Linux, Web
Flutter version: 2.10.5
Isar version: 2.4.0

That's an interesting proposal. Could you give an example why this would be useful? Why do you need the id to stay the same?

That's an interesting proposal. Could you give an example why this would be useful? Why do you need the id to stay the same?

I think it is more intuitive to keep the id unchanged. Taking the user collection as an example, if you add a unique index to the email field, after triggering 'replaceOnConflict', the new record and the old record should represent the same user, so they should have the same id.

There is also a use case. If isar is used as local storage, in extreme cases, entries may be continuously updated with the same unique index field. In this case, if the id keeps increasing, it may eventually exceed the maximum value of int.

If you keep the same ID then basically you've done an update on the record but using a different "method". The attribute does not state update on conflict but rather replace on conflict, and I think this is the way it should work.

I put some more though into this and unfortunately it's not possible to implement this efficiently and with good developer experience. There are too many edge cases for example when multiple indexes are violated.


Inline quick fix for importing types within a crate is not working for "no more mod.rs" Rust 2018 modules - regression.

Thank you for the great tool! I'm facing rather a strange problem. I believe that rust-analyzer was capable of offering an inline Quick-Fix for importing a type from the crate (adding use and merging it nicely with other uses).
I now updated to the latest version of rust-analyzer and meanwhile vscode got updated to the February update as well.
Now the import quick fix for the std types works as it used to:

Or for example, here is the quick-fix from the problems panel:

But here is the inline quick fix for the type from the same crate:

For my own/crate types inline Quick-fix is not offered. For the problems panel, it works differently from what it used to be:

"Consider importing this struct" is the last suggestion and tapping on this line actually works in a way that cursor goes to the top of the screen, blue quick fix hint is shown, tapping on it shows "consider importing this struct", tapping on the suggestion adds line with a "use" to the top of the file.
But it used to work for the crate types in the same way as it was working for the std types?
I re-installed vscode, rust-analyzer, tried several weeks old rust-analyzer version, tried older version of vscode, but I can't get rust-analyzer to help me import types from my own crate.
I should have messed with the settings somehow, but now I'm having the fresh settings after re-installing everything and still there is no nice auto-import and inline quick fix for the types from the same crate.
What I can be missing?

Just to make sure, you're still declaring bar in foo.rs with mod bar, right?

True. It looks like this:

Quick fix import is not working inside methods of add.rs and pull.rs. Interestingly enough it is working outside of methods in these files!
Inline/Problems import quick-fix used to work as I was using rust-analyzer 3 weeks ago to re-organize a few places into "no more mod.rs" and re-factoring exactly these places with import quick-fix. Now all of these "no more mod.rs" modules are not showing import quick fixes. Actually they do, but not for the types from the crate, std types continue to invoke import quick fix.
I'll try to isolate the problem by having an empty project, but can't tell when I'd get to this.

I tested in more places and I have only one place when the issue holds true. Importing hints work alright in other places with the "no more mod.rs" structure.  I'll try to experiment more to find what is the difference in the folders/modules that is causing the problem.

Probably fixed in #10872. Tested with the code in https://github.com/rust-analyzer/rust-analyzer/issues/7963#issuecomment-953567521.


ToC generated inside block level (a) table cells with toc2 attr set on command line

If a document contains a table with a multi line cell (with prefix a), the table of contents is generated into this cell.
Example document with html output attached.
tested with version 0.0.15
command used to create html output:
docker run --rm --user $(id -u) -v $(pwd):/documents/ gbif/asciidoctor-toolkit asciidoctor -r asciidoctor-multipage -b multipage_html5 -D . -a toc2 -a toclevels=3 -a toc=left -a docinfo=shared testtable.adoc -o testtable.html
testtable.zip

@pdabr1, it works for me. There is already a test for this too at test/black-box-docs/table-block-operator/.
Are you sure you are using asciidoctor-multipage v0.0.15?

@owenh000, thanks for the reply. I could get it to work. I converted the files into unix format and changed "-a toc2" of the build command into "-a toc".

@pdabr1, I'm glad you got it working. Thanks for the update.
It looks like the -a toc2 option on the command line is what breaks it; I missed that earlier. You should be able to work around this by setting the :toc2: document attribute inside the source file rather than with the -a option.
It appears that the document attribute specified on the command line is getting passed to the nested document when it shouldn't. I'll update the issue title and reopen this.

Test file test.adoc:
= Title
:toc2:

== Header1

|===
|Column1        |Column2
|Regular cell  a|ToC should not appear in this cell
|===

Test commands:
## This breaks
$ asciidoctor -r asciidoctor-multipage -b multipage_html5 -a toc2 -D test/out test.adoc

## This works
$ asciidoctor -r asciidoctor-multipage -b multipage_html5 -D test/out test.adoc

@owenh000  thanks for looking into this in depth. I'm glad I didn't waste your time. Keep on the good work 👍

Completing issue #46 would probably fix this issue.


★(√NOWATCHVIDEOs:.) Subhashree Sahu Viral Leaked Video 2024 Trending On Social Media X Twitter [HD319K√]

13 sec ago Subhashree Sahu Leaked Video Viral On Social Media. ★(√NOWATCHVIDEOs:.) Subhashree Sahu Viral Leaked Video 2024 Trending On Social Media X Twitter [HD319K√]

Subhashree Sahu’s latest video has taken the internet by storm, igniting conversations across various social media platforms. The rising digital star, known for her engaging content—especially her recent Spiderman-themed clip—has experienced a remarkable boost in popularity, with fans eagerly seeking the full version. Viewers are flocking to Instagram, X (formerly Twitter), and Discord to engage with her latest creation.
As the excitement grows, fans are passionately sharing their reactions online, highlighting the vital role social media plays in propelling creators like Subhashree Sahu into the spotlight. With her unique style and innovative approach, she has quickly made a notable impact in the digital landscape, leaving many curious about her next moves.

Thank You

FG

.
.
.

vf
.
.

.

.


Crash using Controllable 0.15.1 with MC 1.18

Attached crash lo
crash-2021-12-03_08.55.38-client.txt
g.

1.18 is no longer a supported version of this mod, please use 1.18.2 or higher.


Maestral crashes on launch

Describe the bug
Maestral crashes on launch.
To Reproduce

Expected behaviour

System:

Maestral version: 1.6.3
Python version: 3.10.6
OS: MacOS 10.14.6

Additional context
Here's the traceback:
Traceback (most recent call last):
File "Contents/Resources/app/maestral_cocoa/main.py", line 43, in
File "Contents/Resources/app/maestral_cocoa/main.py", line 14, in main
File "Contents/Resources/app/maestral_cocoa/app.py", line 44, in
File "Contents/Resources/app/maestral_cocoa/private/widgets.py", line 17, in
File "Contents/Resources/app/maestral_cocoa/private/platform.py", line 25, in get_platform_factory
File "Contents/Resources/app/maestral_cocoa/private/implementation/cocoa/factory.py", line 26, in
File "Contents/Resources/app_packages/toga_cocoa/libs/init.py", line 25, in
File "Contents/Resources/app_packages/toga_cocoa/libs/appkit.py", line 32, in
File "Contents/Resources/app_packages/rubicon/objc/runtime.py", line 61, in load_library
File "Contents/Resources/Support/Python/Resources/lib/python3.10/ctypes/init.py", line 374, in init
OSError: dlopen(/Library/Frameworks/AppKit.framework/AppKit, 6): no suitable image found.  Did find:
/Library/Frameworks/AppKit.framework/AppKit: code signature in (/Library/Frameworks/AppKit.framework/AppKit) not valid for use in process using Library Validation: mapped file has no Team ID and is not a platform binary (signed with custom identity or adhoc?)

Apologies for the slow response time. This is not a good error message, it suggests that the AppKit framework at /Library/Frameworks/AppKit.framework/AppKit does not appear to be properly signed, even though it is distributed with macOS.
Best case scenario: Maestral 1.6.3 was compiled with library validation enabled in a way which is not compatible with macOS Mojave and earlier.

Closing as packaging and signing now works differently. Feel free to reopen if this still persists with the latest release.


Update README.md

Long-overdue contributor recognition.

@Lakritzator  and @punker76 , please check whether you're fine with your recognition and the links. Feel free to suggest otherwise!

Looks great ❤
But do change the order, Jan should go first due to alphabetic ordering.

👍🏻 LGTM


Merge models refactor trunk

[ ] Get test coverage back up
[ ] Add plotting back to helper script
[ ] Update linters/tooling
[ ] Run type-checking
[ ] Use Pydantic V2 API
[ ] Docs?

Codecov Report
Attention: Patch coverage is 81.25000% with 21 lines in your changes missing coverage. Please review.

Project coverage is 84.68%. Comparing base (0a94095) to head (8416ea8).

Additional details and impacted files


Enable Cloud Gurobi integration with solver factory params in pyomo

This PR adds an additional option to solver_params, in the form of solver_factory_params. These are parameters that are added to the solver at creation time. This is relevant in the following example:
When using Gurobi Cloud, you must set the cloud parameters at creation time. Passing in these after creation does nothing, since the environment is already created to be the local environment.
To use this, during the creation of an optimizer, the params dictionary that is passed to the Optimizer should include the following:
params["solver_factory_options"] = {
      "CloudAccessID": "<access-id>",
      "CloudSecretKey": "<api-key>",
}

Thank you, @TobyBoyne !


specify the version number of the Docker image.

When deploying with Docker, it is necessary to specify the version number of the Docker image, such as<PHONE_NUMBER>1. However, if all Docker images are named "latest", it becomes impossible to roll back to the previous branch.

@miss-uny please try to set the docker image version same with the release version like v1.0.0:
here is an example to pull the v1.0.0 docker image:
docker  pull opencsg-registry.cn-beijing.cr.aliyuncs.com/opencsg_public/csghub_server:v1.0.0


fromHTML function losing content on page change

Pretty much what the title says, if you try to print a big HTML chunk, so big that it need more than one page, some content (a whole line) is lost in between the pages.
This didn't happen with the version in use in your web page (http://mrrio.github.io/jsPDF/), 1.0.272, but happens in both 1.1.135 and 1.1.239.
Thanks.

#190


Node.js Foundation Outreach Meeting 2019-09-03

Time
UTC Tue 03-Sep-2019 16:00 (04:00 PM):

Timezone
Date/Time

US / Pacific
Tue 03-Sep-2019 09:00 (09:00 AM)

US / Mountain
Tue 03-Sep-2019 10:00 (10:00 AM)

US / Central
Tue 03-Sep-2019 11:00 (11:00 AM)

US / Eastern
Tue 03-Sep-2019 12:00 (12:00 PM)

London
Tue 03-Sep-2019 17:00 (05:00 PM)

Amsterdam
Tue 03-Sep-2019 18:00 (06:00 PM)

Moscow
Tue 03-Sep-2019 19:00 (07:00 PM)

Chennai
Tue 03-Sep-2019 21:30 (09:30 PM)

Hangzhou
Wed 04-Sep-2019 00:00 (12:00 AM)

Tokyo
Wed 04-Sep-2019 01:00 (01:00 AM)

Sydney
Wed 04-Sep-2019 02:00 (02:00 AM)

Or in your local time:

http://www.timeanddate.com/worldclock/fixedtime.html?msg=Node.js+Foundation+Outreach+Meeting+2019-09-03&iso=20190903T16
or http://www.wolframalpha.com/input/?i=04PM+UTC%2C+Sep+03%2C+2019+in+local+time

Links

Minutes Google Doc: https://docs.google.com/document/d/1IDQt3U5qpns9-8w7yjp_bXdU-_YK8JLDO_uYG94fgtk/edit

Agenda
Extracted from outreach-agenda labelled issues and pull requests from the nodejs org prior to the meeting.
nodejs/outreach

[Node.js] New Community Page #24

Invited

Outreach Members: @nodejs/outreach

Observers/Guests
Feel free to follow along on the YouTube live stream, or attend meeting as a guest
by calling in to Zoom, using the links below. If you will be attending as a guest,
please comment on this issue to let us know you'll be joining.
Notes
The agenda comes from issues labelled with outreach-agenda across all of the repositories in the nodejs org. Please label any additional issues that should be on the agenda before the meeting starts.
Joining the meeting

Link for participants: https://zoom.us/j/526318636
For those who just want to watch: https://www.youtube.com/nodejs-foundation

AWAIS: Saqib and Saad comments on the issue and most of it looks good to go except for the Slack link that Saad posted so maybe not add that.
MAEDAH: Can we have a Code of Conduct for meetups as well
AWAIS: Let's start with a community.md in the https://github.com/nodejs/outreach repo and Saqib + Saad can start adding content to it.
SAAD: Can we start adding all this to the community.md page.
AWAIS: Let's go ahead and do that


Automated Package Upgrade

:tada: This PR is included in version 25.4.71 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


VS Code stuck on opening remote with WSL

Does this issue occur when all extensions are disabled?: Yes (except WSL)

VS Code Version: 1.89.1
OS Version:  Windows 11 23H2, WSL2 Ubuntu 22.04.4

I recently started having this issue, that after I open up a (specific) repository for the second time, vs code gets stuck in loading mode, and the status bar shows "Opening Remote..." message at the remote indicator.
Opening it in a different location works, but once I change folder and choose this repo folder it reload the window and the remote refuses to connect.
This happens starting from the second time of me opening that repo as workspace, it only applies to that repository at that location (meaning, resetting or deleting the repository and cloning it again at the same path doesn't work, but cloning it and using a different path works, maybe cache related(?)), also opening the workspace on the parent folder or one of the child folders works okay as well, only that specific repository and not other.
I couldn't find anything worth mentioning in all of the output tabs, and no tab of WSL log or anything like that was available
The repository in question is quite ironically VS code own repository (this one)
I started code with debug info and got this:
+ COMMIT=dc96b837cf6bb4af9cd736aa3af08cf8279f7685
+ APP_NAME=code
+ QUALITY=stable
+ NAME=Code
+ SERVERDATAFOLDER=.vscode-server
+ realpath /mnt/c/Users/user/AppData/Local/Programs/Microsoft VS Code/bin/code
+ dirname /mnt/c/Users/user/AppData/Local/Programs/Microsoft VS Code/bin/code
+ dirname /mnt/c/Users/user/AppData/Local/Programs/Microsoft VS Code/bin
+ VSCODE_PATH=/mnt/c/Users/user/AppData/Local/Programs/Microsoft VS Code
+ ELECTRON=/mnt/c/Users/user/AppData/Local/Programs/Microsoft VS Code/Code.exe
+ IN_WSL=false
+ [ -n Ubuntu ]
+ IN_WSL=true
+ [ true = true ]
+ export WSLENV=ELECTRON_RUN_AS_NODE/w:WT_SESSION:WT_PROFILE_ID:
+ wslpath -m /mnt/c/Users/user/AppData/Local/Programs/Microsoft VS Code/resources/app/out/cli.js
+ CLI=C:/Users/user/AppData/Local/Programs/Microsoft VS Code/resources/app/out/cli.js
+ WSL_EXT_ID=ms-vscode-remote.remote-wsl
+ ELECTRON_RUN_AS_NODE=1 /mnt/c/Users/user/AppData/Local/Programs/Microsoft VS Code/Code.exe C:/Users/user/AppData/Local/Programs/Microsoft VS Code/resources/app/out/cli.js --locate-extension ms-vscode-remote.remote-wsl
+ cat /tmp/remote-wsl-loc.txt
+ WSL_EXT_WLOC=c:\Users\user\.vscode\extensions\ms-vscode-remote.remote-wsl-0.88.2
+ [ -n c:\Users\user\.vscode\extensions\ms-vscode-remote.remote-wsl-0.88.2 ]
+ wslpath -u c:\Users\user\.vscode\extensions\ms-vscode-remote.remote-wsl-0.88.2
+ WSL_CODE=/mnt/c/Users/user/.vscode/extensions/ms-vscode-remote.remote-wsl-0.88.2/scripts/wslCode.sh
+ /mnt/c/Users/user/.vscode/extensions/ms-vscode-remote.remote-wsl-0.88.2/scripts/wslCode.sh dc96b837cf6bb4af9cd736aa3af08cf8279f7685 stable /mnt/c/Users/user/AppData/Local/Programs/Microsoft VS Code/Code.exe code .vscode-server .
+ [ -z .vscode-server ]
+ [ .vscode-server = .vscode-insiders ]
+ [ ! -t 0 ]
+ VSCODE_REMOTE_BIN=/home/user/.vscode-server/bin
+ AUTHORITY=wsl+default
+ [ Ubuntu ]
+ AUTHORITY=wsl+Ubuntu
+ dirname /mnt/c/Users/user/.vscode/extensions/ms-vscode-remote.remote-wsl-0.88.2/scripts/wslCode.sh
+ /mnt/c/Users/user/.vscode/extensions/ms-vscode-remote.remote-wsl-0.88.2/scripts/wslDownload.sh dc96b837cf6bb4af9cd736aa3af08cf8279f7685 stable /home/user/.vscode-server/bin
+ [ ! -d /home/user/.vscode-server/bin/dc96b837cf6bb4af9cd736aa3af08cf8279f7685 ]
+ RC=0
+ [ 0 -eq 100 ]
+ [ 0 -ne 0 ]
+ mktemp /tmp/vscode-distro-env.XXXXXX
+ STORED_ENV=/tmp/vscode-distro-env.FsU8F9
+ env
+ dirname /mnt/c/Users/user/.vscode/extensions/ms-vscode-remote.remote-wsl-0.88.2/scripts/wslCode.sh
+ VSCODE_CLIENT_COMMAND=/mnt/c/Users/user/AppData/Local/Programs/Microsoft VS Code/Code.exe VSCODE_CLIENT_COMMAND_CWD=/mnt/c/Users/user/.vscode/extensions/ms-vscode-remote.remote-wsl-0.88.2/scripts VSCODE_CLI_AUTHORITY=wsl+Ubuntu VSCODE_CLI_REMOTE_ENV=/tmp/vscode-distro-env.FsU8F9 VSCODE_STDIN_FILE_PATH= WSLENV=VSCODE_CLI_REMOTE_ENV/w:ELECTRON_RUN_AS_NODE/w:WT_SESSION:WT_PROFILE_ID: /home/user/.vscode-server/bin/dc96b837cf6bb4af9cd736aa3af08cf8279f7685/bin/remote-cli/code .
+ exit 0

I tried the workaround suggested here: https://github.com/microsoft/vscode/issues/212289#issuecomment-2106931415
but it didn't help
Would love help and/or directions to explore!

@aeschli
no, it seems the extension did not fully load yet, or some of that nature

Anything in the dev tools console?

no errors / warnings in devtools, 3 logs in total, the first is large with all the settings (copied it into here https://pastebin.com/N0htuN8t)
the other two are:
DEBUG Overwriting user extension /c:/Users/user/.vscode/extensions/ms-vscode-remote.remote-wsl-0.88.2 with /c:/Users/user/.vscode/extensions/ms-vscode-remote.remote-wsl-0.88.2.

and
TRACE pickRunningLocation for ms-vscode-remote.remote-wsl, extension kinds: [ui], isInstalledLocally: true, isInstalledRemotely: false, preference: None => LocalProcess

I also checked the logs folder (C:\Users\user\AppData\Roaming\Code\logs, i'm using a user install if it matters)
It seems that when starting the vs code at that directory, two logs folders are created, the following is a link to a zip file containing both folders and the logs inside
https://mega.nz/file/czJiWQ4B#JmLCcvspgzmC8n6gpeY-yYmRS1WO3QHTBqev4BSIhu0

I tried running it directly in the wsl, (code --user-data-dir="%TEMP%\test123" .) and it ignored the option (Ignoring option 'user-data-dir': not supported for code.) and open it regularly,
but running it from powershell at the windows computer and then connecting to wsl, did work!
So we can assume it's a storage thing?

You mentioned it runs the first time with a particular but never the second time?

So, I've investigated a bit more, because of that question, it think I might have found the culprit, opening it multiple times worked, until I looked at the "recommended extensions" again and added the VS Code Selfhost Test Provider, afterwards reopening the project becomes impossible

Oh, that's interesting. @connor4312 ...

I don't reproduce this, and I have no idea how that would be related to this. The selfhost test provider a test extension and nothing more

This is probably https://github.com/microsoft/vscode/issues/212105


Fix format package xml

colcon build is still having following errors:
multiprocessing.pool.RemoteTraceback:
"""
Traceback (most recent call last):
  File "/usr/local/lib/python3.8/dist-packages/flake8/checker.py", line 451, in run_check
    return plugin["plugin"](**arguments)
  File "/usr/local/lib/python3.8/dist-packages/flake8/plugins/pyflakes.py", line 99, in __init__
    super(FlakesChecker, self).__init__(
  File "/usr/local/lib/python3.8/dist-packages/pyflakes/checker.py", line 497, in __init__
    self.handleChildren(tree)
  File "/usr/local/lib/python3.8/dist-packages/pyflakes/checker.py", line 824, in handleChildren
    self.handleNode(node, tree)
  File "/usr/local/lib/python3.8/dist-packages/pyflakes/checker.py", line 871, in handleNode
    handler(node)
  File "/usr/local/lib/python3.8/dist-packages/pyflakes/checker.py", line 1276, in CLASSDEF
    self.handleNode(stmt, node)
  File "/usr/local/lib/python3.8/dist-packages/pyflakes/checker.py", line 871, in handleNode
    handler(node)
  File "/usr/local/lib/python3.8/dist-packages/pyflakes/checker.py", line 824, in handleChildren
    self.handleNode(node, tree)
  File "/usr/local/lib/python3.8/dist-packages/pyflakes/checker.py", line 870, in handleNode
    handler = self.getNodeHandler(node.__class__)
  File "/usr/local/lib/python3.8/dist-packages/pyflakes/checker.py", line 700, in getNodeHandler
    self._nodeHandlers[node_class] = handler = getattr(self, nodeType)
AttributeError: 'FlakesChecker' object has no attribute 'CONSTANT'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/lib/python3.8/multiprocessing/pool.py", line 125, in worker
    result = (True, func(*args, **kwds))
  File "/usr/local/lib/python3.8/dist-packages/flake8/checker.py", line 682, in _run_checks
    return checker.run_checks()
  File "/usr/local/lib/python3.8/dist-packages/flake8/checker.py", line 612, in run_checks
    self.run_ast_checks()
  File "/usr/local/lib/python3.8/dist-packages/flake8/checker.py", line 513, in run_ast_checks
    checker = self.run_check(plugin, tree=ast)
  File "/usr/local/lib/python3.8/dist-packages/flake8/checker.py", line 456, in run_check
    raise exceptions.PluginExecutionFailed(
  File "/usr/local/lib/python3.8/dist-packages/flake8/exceptions.py", line 86, in __init__
    self.original_exception = kwargs.pop("exception")
KeyError: 'exception'
"""

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/opt/ros/foxy/bin/ament_flake8", line 11, in <module>
    load_entry_point('ament-flake8==0.9.5', 'console_scripts', 'ament_flake8')()
  File "/opt/ros/foxy/lib/python3.8/site-packages/ament_flake8/main.py", line 32, in main
    rc, _ = main_with_errors(argv=argv)
  File "/opt/ros/foxy/lib/python3.8/site-packages/ament_flake8/main.py", line 86, in main_with_errors
    report = generate_flake8_report(
  File "/opt/ros/foxy/lib/python3.8/site-packages/ament_flake8/main.py", line 203, in generate_flake8_report
    report.report = style.check_files(paths)
  File "/usr/local/lib/python3.8/dist-packages/flake8/api/legacy.py", line 101, in check_files
    self._application.run_checks(paths)
  File "/usr/local/lib/python3.8/dist-packages/flake8/main/application.py", line 318, in run_checks
    self.file_checker_manager.run()
  File "/usr/local/lib/python3.8/dist-packages/flake8/checker.py", line 338, in run
    self.run_parallel()
  File "/usr/local/lib/python3.8/dist-packages/flake8/checker.py", line 302, in run_parallel
    for ret in pool_map:
  File "/usr/lib/python3.8/multiprocessing/pool.py", line 868, in next
    raise value
KeyError: 'exception'

Any idea how to fix them?

@mitsudome-r this looks like an issue in PyFlakes and not colcon (https://github.com/PyCQA/pyflakes/issues/367). What version of pyflakes do you have installed? On Ubuntu 20.04, the version available of python3-pyflakes is 2.1.1, which should fix the issue.

I was running on ade environment.
I installed pyflakes version 2.1.1-2 by sudo apt install pyflakes, and re-run test, but it still fails with the same error...

@mitsudome-r could you check again after installing python3-flakes and pyflakes3? I think the pyflakes (without a 3) package is for Python 2

I don't know why, but it started to pass in ade now...

I will merge this.

@esteve I'm getting the flake8 error again. Did you by chance find out anything new in the meantime?

@nnmm in the ros2 branch or in another one?

@esteve Sorry, false alarm. Restarting ade seems to have fixed it, not sure why.


How to get last inserted row ID?

Is LastInsertId supported - if not, how to get the last inserted row ID?

The last inserted row ID should be automatically assigned on the model when it is inserted. LastInsertId is supported too if the driver provides it.


Documentation seems outdated for getting started with Material-UI extended components

Hi @siriwatknp. Very cool project you have here!
I noticed the following in the getting started docs though:
https://mui-treasury.com/components

Should mention need npm install @material-ui/core for Material-UI Extended section
import BirthdayTextField from @mui-treasury/components/textField/birthday doesn't seem to be a valid import?  Needs to be import Birthday from '@mui-treasury/components/textField/birthday'  instead?

https://mui-treasury.com/components/text-field/birthday

needs a link to code (<> button)

https://mui-treasury.com/components/text-field
-Not responsive enough/ needs scroll on Mac Chrome. When viewing the large screen preview the buttons on the top left go off the screen and cant be scrolled up to:

I'm happy to open a pull request to fix these things.

@pacurtin Feel free to improve and send PR!, thanks a lot. Currently I'm working on Layout v4 #660 so I will not be able to fix other issues until mid-May but happy to review PR.

And agreed, I realised documentation is number 1 priority and I will keep improving that.


Easy Configuration through web form

Allow user to pass argument to start application in config mode. This would:

Start basic web server
Allow user to navigate through web form filling in information easily.
Save config in either json file or use Python sqlite3 module to store information in DB.
Allow user to confirm that that are ready for the application to begin.

Tasks:

[ ]  Web Server
[ ]  Web Form
[ ]  Store Config
[ ]  If no config load default

This enhancement would create unnecessary complexity that would result in the same result at the end.


Journald does not save messages, is not accessible through commands.

I used to be able to send my script logs to journald and have that work fine, but after ny1 went back up, this is no longer possible.
$ journalctl
No journal files were found
$ journalctl --user
No journal files were found
$ systemctl --user status unitfile
● unitname.service - UnitName
   Loaded: loaded (/home/username/.config/systemd/user/unitname.service; enabled)
   Active: active (running) since Mi 2017-02-08 18:30:11 UTC; 2min 24s ago
 Main PID: 24011 (sh)
   CGroup<EMAIL_ADDRESS>           ├─24011 /bin/sh -c /home/username/foldername/env/bin/python main.py
           └─24012 /home/username/foldername/env/bin/python main.py

(notable here is the lack of logs in systemctl status, which normally prints the most recent logs of the unit.

Note: problem only occurs on ny1

I think this is caused by permissions on /etc/machine-id:
open("/etc/machine-id", O_RDONLY|O_NOCTTY|O_CLOEXEC) = -1 EACCES (Permission denied)

I manually set the permissions on /etc/machine-id and journalctl --user started working again.
As this was only an issue on ny1 I'm going to assume this was not an issue with shell-etc and instead a result of the last recovery process.

Thanks!

@daurnimator Thanks for debugging this.


[Compute] az vm/vmss identity assign: Add warning log and modify help to inform that the default value Contributor of --role will be removed

Related command

az vm/vmss identity assign
Description

Similar to #20924
As the security team raised the security concern: the permission of  Contributor is too high to be used as the default role for az vm/vmss identity assign, so the default value Contributor of --role will be removed in the future.
Therefore, the first step is to prompt users that parameters --role and --scope  should be passed in at the same time when assigning role to the managed identity to reduce the impact of breaking change.
Testing Guide

History Notes

[Component Name 1] BREAKING CHANGE: az command a: Make some customer-facing breaking change
[Component Name 2] az command b: Add some customer-facing feature

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

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

[ ] I adhere to the Command Guidelines.

[ ] I adhere to the Error Handling Guidelines.

Compute

@dcaro Could you please help review this PR?

@zhoxing-ms can you reuse the messages that have been discussed in https://github.com/Azure/azure-cli/pull/24755 ?
cc: @dbradish-microsoft

@dcaro Thanks for your suggestion, I have reused the description of timeline as in the breaking change release of the fall
For other parts, I have reused the previous descriptions in similar requirements #20924


pip install pyfg failing

I am trying to install pyfg using pipenv (python 3.9) but the command fails with the following error:
>pipenv install pyfg
Installing pyfg…
Error:  An error occurred while installing pyfg!
Error text: Collecting pyfg
  Using cached pyfg-0.50.tar.gz (9.1 kB)

    ERROR: Command errored out with exit status 1:
     command: /Users/vikrant.tyagi/.virtualenvs/fortios-automation-uy-maohS/bin/python -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/private/var/folders/kh/m16w2sgn10jd06jfxd58wl_c_2h4vh/T/pip-install-_8rwn0my/pyfg/setup.py'"'"'; __file__='"'"'/private/var/folders/kh/m16w2sgn10jd06jfxd58wl_c_2h4vh/T/pip-install-_8rwn0my/pyfg/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' egg_info --egg-base /private/var/folders/kh/m16w2sgn10jd06jfxd58wl_c_2h4vh/T/pip-pip-egg-info-c6kf6k4d
         cwd: /private/var/folders/kh/m16w2sgn10jd06jfxd58wl_c_2h4vh/T/pip-install-_8rwn0my/pyfg/
    Complete output (5 lines):
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "/private/var/folders/kh/m16w2sgn10jd06jfxd58wl_c_2h4vh/T/pip-install-_8rwn0my/pyfg/setup.py", line 4, in <module>
        from pip.req import parse_requirements
    ModuleNotFoundError: No module named 'pip.req'
    ----------------------------------------
ERROR: Command errored out with exit status 1: python setup.py egg_info Check the logs for full command output.

This is likely caused by a bug in pyfg. Report this to its maintainers.
✘ Installation Failed

Update: It's failing for 2.7 and 3.7 as well.

This will be fixed once one of the below is merged
https://github.com/spotify/pyfg/pull/35
https://github.com/spotify/pyfg/pull/44


Processing Error

I'm getting the error below thrown, but curious why I'm not seeing it in the callbacks (for both connection and subscription messages) where I check for error.
if (error) {
        console.log('error occurred: ' + error.message);
        return;
}

ERROR
events.js:165
      throw er; // Unhandled 'error' event
      ^

Error: Processing error
    at Client.Socket._createError (/home/node/app/node_modules/stompit/lib/Socket.js:258:13)
    at Client.Socket.createApplicationError (/home/node/app/node_modules/stompit/lib/Socket.js:292:20)
    at Client.onError (/home/node/app/node_modules/stompit/lib/Client.js:409:20)
    at readFrameBody (/home/node/app/node_modules/stompit/lib/Socket.js:79:15)
    at readIncomingFrame (/home/node/app/node_modules/stompit/lib/Socket.js:102:5)
    at process._tickCallback (internal/process/next_tick.js:176:11)
Emitted 'error' event at:
    at Client.Socket.destroy (/home/node/app/node_modules/stompit/lib/Socket.js:136:12)
    at IncomingFrame.<anonymous> (/home/node/app/node_modules/stompit/lib/Client.js:420:12)
    at IncomingFrame.emit (events.js:185:15)
    at endReadableNT (_stream_readable.js:1106:12)
    at process._tickCallback (internal/process/next_tick.js:178:19)
error An unexpected error occurred: "Command failed.
Exit code: 1

Any thoughts?

I think this may have had to do with when I was ack-ing a message. Immediately ack-ing a message then processing it, seems to have resolved the issue.


Screen shots and workflow are outdated

The screen shots and defined steps have been updated in Partner Center but not in this document.

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

ID: 4c14f046-8a16-65ac-2bb2-0740610e2b55
Version Independent ID: 5a901ada-563e-378d-a9b8-fddd9059901b
Content: Azure Table
Content Source: articles/marketplace/partner-center-portal/commercial-marketplace-lead-management-instructions-azure-table.md
Service: marketplace
Sub-service: partnercenter-marketplace-publisher
GitHub Login: @qianw211
Microsoft Alias: dsindona

@Jont-K  Thank you for bringing this to our notice, will look into it and update the document accordingly.

@Jont-K  Apologies for the delay to get back to you on this. Assigning this issue to our document author @qianw211 to further evaluate the feedback and update the document accordingly.

#please-close
The updates should be live today.  Thanks!

Thank you for making the update.
Jont
Jonathan Kingsepp
e<EMAIL_ADDRESS>m:<PHONE_NUMBER>
https://tackle.io
On Mon, Apr 13, 2020 at 10:49 AM PRMerger18<EMAIL_ADDRESS>wrote:

Closed #51913 https://github.com/MicrosoftDocs/azure-docs/issues/51913.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/MicrosoftDocs/azure-docs/issues/51913#event-3227540829,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ANWNOUIIB4LK7Y3YQCRBZOTRMMYBHANCNFSM4MDLB32A
.


old data files should be removed

with the replacement of all dthe data files with education simulated data, there should be no need to keep the old data files thus they should be removed

i did this and also removed all the pkl stuff


Release REX-Ray 0.4.3-RC3

This patch marks the release of REX-Ray 0.4.0-RC3.

Coverage remained the same at 63.636% when pulling f979654b1541faa14821c2bfd651aa7c259703be on akutz:release/0.4.0-rc3 into 007a3d2e317dd153277fc37e008ca897ad2458e3 on emccode:master.

[Current coverage][cc-pull] is 64.66%

Merging [#452][cc-pull] into [master][cc-base-branch] will not change coverage

@@             master       #452   diff @@
==========================================
  Files             1          1
  Lines           133        133
  Methods           0          0
  Messages          0          0
  Branches          0          0
==========================================
  Hits             86         86
  Misses           47         47
  Partials          0          0

[][cc-pull]

Powered by Codecov. Last updated by [007a3d2...f979654][cc-compare]
[cc-base-branch]: https://codecov.io/gh/emccode/rexray/branch/master?src=pr
[cc-compare]: https://codecov.io/gh/emccode/rexray/compare/007a3d2e317dd153277fc37e008ca897ad2458e3...f979654b1541faa14821c2bfd651aa7c259703be
[cc-pull]: https://codecov.io/gh/emccode/rexray/pull/452?src=pr


I have added a profile

Dear,  i have added a profile

@AneesAbbasi you must add the photo...otherwise, the PR will not be merged....please modify the changes and make a commit...don't open another PR


feat: add tests for ppp_line and ppp_res examples

Add base tests for examples from README.md.
close #11

@bugen, I have just added a few lines and record tests. Could you please take a look and leave your comments? My plan is to add all the examples from the README.md

@horw Cool! Very clear, versatile.
Is it better to merge at this point, or should I wait until additional test cases are added?

@horw Cool! Very clear, versatile. Is it better to merge at this point, or should I wait until additional test cases are added?
It's nice to hear that you like it. Just wait for the rest of the examples; I will complete them in few days.

@bugen you can check for updates. I've already added most of the tests and have also included pre-commit and CI tests.

Thank you @horw . The test code is excellent. I also appreciate the information about pre-commit and ci.yml.
Could you please explain ci.yml? Am I correct in understanding that ruff only performs linting and it doesn't handle formatting? If there are some linting errors, does that mean push won't be allowed?

This basic CI.yml configuration for linting and tests without formatting. Its main purpose is to ensure that when people create new pull requests for your project, you can quickly determine if they pass basic tests. Sometimes, making changes might unexpected break other parts of the project. You can set up more complete tests using GitHub Actions, btw those are separate from the current pull request's purpose.
Pre-commit is also very helpful for maintaining code quality, but it requires installation to enforce these rules. For the next PR you can add additional rules for contributing.
For further reading on this topic:

https://github.com/astral-sh/ruff/blob/982ae6ff08b832de0b39e3fdc9781a468ae3d19c/README.md?plain=1#L148
https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/collaborating-on-repositories-with-code-quality-features/about-status-checks
https://docs.github.com/en/repositories/configuring-branches-and-merges-in-your-repository/managing-protected-branches/managing-a-branch-protection-rule
https://stackoverflow.com/questions/65580689/how-we-can-disable-merge-of-a-pull-request-in-github-if-any-check-fails-in-the-c

@horw Thank you for the explanation. I have a general understanding of what you are trying to do. Maintaining code quality is important, so I agree with the content of this PR.  When I checked the current pypipe.py using ruff, I already found some errors...
Is it okay to merge this content for now, or are there still additional changes to be made to this PR?

P.S. there are many other linters available such as flake 8, black, etc. And you can choose which you like.
Yes, you can merge the current content.

@horw I merged. Thank you for your contribution.


complete variable names

new feature to complete defined variable names. triggered by the position before cursor is {{.
fixed bug where partial complete step expression would complete incorrectly.

strange that microsofts @vscode/test-electron fails to spawn the vscode binary it just downloaded on microsoft windows....


Replace np.in1d with np.isin in g123.py

Re: issue #609
Avoids DeprecationWarning raised by anoph/g123.py: "in1d is deprecated. Use np.isin instead."

Will try to resolve CI coverage test failures.

Thanks @jonbrenas


Alternative Signalling Servers

Has anyone managed to get a different signalling server to work with the unity integration? I have attempted to try and get a websockets server connection but have been stuck on how to proceed.

This PR #184 shows one way a web socket can be used for signalling.


sigterm on nexus7

Issue Type: Bug
Bog standard first flutter app. get a sigterm
VS Code version: Code 1.21.0 (9a199d77c82fcb82f39c68bb33c614af01c111ba, 2018-03-07T11:04:09.969Z)
OS version: Windows_NT x64 10.0.16299

System Info

Item
Value

CPUs
Intel(R) Core(TM) i7-4600M CPU @ 2.90GHz (4 x 2893)

Memory (System)
15.43GB (6.79GB free)

Process Argv
C:\Program Files\Microsoft VS Code\Code.exe

Screen Reader
no

VM
0%

Extensions (2)

Extension
Author (truncated)
Version

dart-code
Dar
2.10.0

fs-flutter-snippets
fra
0.1.3

Reproduces only with extensions

Please provide steps on how to reproduce this bug.
Also, which of your extensions is causing this?

Sorry, I thought you got logs on this.
I am using completely bog standard Windows 10 professional.
Standard implementation of Flutter install. Visual Code + Flutter extensions. Flutter doctor - no errors. Using Android Emulator Nexus 7 API 23.
First Flutter App - no changes. Flutter run - I get the sigterm when the app tries to transfer the app to the emulator. No errors from output.
I cannot find Android API24 emulator available for download.
peter richards
From: "tsalinger"<EMAIL_ADDRESS>To: "Microsoft/vscode"<EMAIL_ADDRESS>Cc: "petervrichards"<EMAIL_ADDRESS>"Author"<EMAIL_ADDRESS>Sent: Tuesday, March 13, 2018 12:47:10 AM
Subject: Re: [Microsoft/vscode] sigterm on nexus7 (#45633)
Please provide steps on how to reproduce this bug.
Also, which of your extensions is causing this?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub , or mute the thread .

more info re sigterm
Resolving dependencies... 26.7s
Running 'gradlew assembleDebug'... 4.9s
Built build\app\outputs\apk\debug\app-debug.apk (24.6MB).
Installing build\app\outputs\apk\app.apk... 10.1s
I/FlutterActivityDelegate( 1233): onResume setting current activity to this
E/flutter ( 1233): [ERROR:flutter/shell/gpu/gpu_surface_gl.cc(39)] Failed to setup Skia Gr context.
D/skia ( 1233): [SkFontMgr Android Parser] '/system/etc/fonts.xml' could not be opened
D/skia ( 1233): [SkFontMgr Android Parser] '/vendor/etc/fallback_fonts.xml' could not be opened
Syncing files to device Nexus 10 KitKat... 4.0s
same as android emulator
this is a Bliss emulator
peter richards
From: "tsalinger"<EMAIL_ADDRESS>To: "Microsoft/vscode"<EMAIL_ADDRESS>Cc: "petervrichards"<EMAIL_ADDRESS>"Author"<EMAIL_ADDRESS>Sent: Tuesday, March 13, 2018 12:47:10 AM
Subject: Re: [Microsoft/vscode] sigterm on nexus7 (#45633)
Please provide steps on how to reproduce this bug.
Also, which of your extensions is causing this?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub , or mute the thread .

Thanks for the additional info!
I moved this thread to the dart-code repository.
Please continue the discussion there.