feat: Group by functions

Description
Proposal to add a group by fn feature, to group tasks by the return value of JavaScript expressions.
not done
group by fn root === "journal/" ? root : path

In this example the value of root and path are available in the expression body via named arguments passed to the function.
Motivation and Context
My initial motivation was simply the example above, to group tasks from my daily log notes under a single "journal" heading, otherwise group all other tasks by the full note path.
How has this been tested?
This is just a proposal. Happy to add tests if accepted.
Screenshots (if appropriate)
Types of changes
Changes visible to users:

[ ] Bug fix (prefix: fix - non-breaking change which fixes an issue)
[x] New feature (prefix: feat - non-breaking change which adds functionality)
[ ] Breaking change (prefix: feat!! or fix!! - fix or feature that would cause existing functionality to not work as expected)
[ ] Documentation (prefix: docs - improvements to any documentation content)
[ ] Sample vault (prefix: vault - improvements to the Tasks-Demo sample vault)

Internal changes:

[x] Refactor (prefix: refactor - non-breaking change which only improves the design or structure of existing code, and making no changes to its external behaviour)
[ ] Tests (prefix: test - additions and improvements to unit tests and the smoke tests)
[ ] Infrastructure (prefix: chore - examples include GitHub Actions, issue templates)

Checklist

[x] My code follows the code style of this project and passes yarn run lint.
[x] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.
[ ] My change has adequate Unit Test coverage.

Terms

[x] My contribution follow this project's contributing guide
[x] I agree to follow this project's Code of Conduct

Hi, thanks ever so much for offering to contribute to Tasks.
What does your sample function do exactly please, and what problem is this solving for users?

Apologies, I see the explanation now:

My initial motivation was simply the example above, to group tasks from my daily log notes under a single "journal" heading, otherwise group all other tasks by the full note path.

@weirdhorror Wow. I have to be honest and say that it scares me a little!  🤣  Like, is any sanitising of the code needed, for example? Are there going to be issues with parsing if mismatched quotes and things like that?
BUT I can see the power of it, and I do think it would be worth working up to release.
FYI The features I was planning to implement soon for group by are:

Allowing users to supply custom date formats for group-based dates (this is highly requested)
Allowing reversed sorting of the group headings - such as group by done reverse (also highly requested)

Can you see how your changes to the regular expression for parsing would cope with the above?
A lot of Tasks users will be non-developers, so things like the ternary operator and using === will all need to be well documented. I would be very happy to do final editing of docs, but would ask you to at least write a first draft of it, please. Would you feel up to that?

I had no idea that something this flexible could be implemented so succinctly!

Hi, thanks ever so much for offering to contribute to Tasks.
What does your sample ~function~ group by line do exactly please

In my vault I have my daily notes set to a folder named "journal" and I often add one-off tasks in daily notes.
Using group by path to list my tasks creates separate groups for every daily note that has a task or three in it, which is visually distracting and journal/2022-12-22, etc, etc. are not meaningfully group names for those one-off tasks.
Before
journal/2022-12-20
  [ ] task foo from note journal/2022-12-20

journal/2022-12-15
  [ ] task bar from journal/2022-12-15

journal/2022-12-10
  [ ] task baz from journal/2022-12-10

journal/...
journal/...
journal/...

projects/foo
  [ ] task one from projects/foo
  [ ] task two from projects/foo

topics/research-buzz
  [ ] task one from topics/research-buzz
  [ ] task two from topics/research-buzz

So in this example:
not done
group by fn root === "journal/" ? root : path

All tasks in any note with a root path === "journal/" will be grouped under "journal/" otherwise the task will be grouped by the full path of the note.
After
journal/
  [ ] task foo from note journal/2022-12-20
  [ ] task bar from journal/2022-12-15
  [ ] task baz from journal/2022-12-10
  [ ] etc

projects/foo
  [ ] task one from projects/foo
  [ ] task two from projects/foo

topics/research-buzz
  [ ] task one from topics/research-buzz
  [ ] task two from topics/research-buzz

and what problem is this solving for users?

This group by fn feature could be used as an escape hatch to create all kinds of custom group functions that don't exist out of the box.
I should probably try to think of some good, useful examples but here are two off the top of my head:
group by fn description.startsWith('Read') ? 'Readme' : path

group by fn priority > 8 ? 'now' : 'later'

@weirdhorror Wow. I have to be honest and say that it scares me a little! 🤣

Hah, yes, it's a bit wild I know. I think using new Function and passing the named args in is a bit less #yolo than eval which generally scares me 👀

Like, is any sanitising of the code needed, for example? Are there going to be issues with parsing if mismatched quotes and things like that?

Anything to the right of group by fn will be evaluated as a JavaScript function, so if the function call fails currently it just groups everything by Error with group result or Error parsing group function. Not sure if this is ideal or if failure should bubble up to a full parse error, like Tasks query: do not understand query ...?

FYI The features I was planning to implement soon for group by are:

Allowing users to supply custom date formats for group-based dates (this is highly requested)
Allowing reversed sorting of the group headings - such as group by done reverse (also highly requested)

Can you see how your changes to the regular expression for parsing would cope with the above?

Can you share the proposed syntax for custom date formats?
I think group by <field> reverse could be done via the GroupingArg. You can see here I'm only passing arg in the case of group by fn, but this could be changed to pass extra args to any new grouping functions that accept them.

A lot of Tasks users will be non-developers, so things like the ternary operator and using === will all need to be well documented. I would be very happy to do final editing of docs, but would ask you to at least write a first draft of it, please. Would you feel up to that?

Yes of course! The group by fn currently would run any JavaScript, so the full scope of what's possible is ... the entire language, haha, but I think it would be great to have some good examples showing non-developers how to use this for common customizations.

Error handling

Like, is any sanitising of the code needed, for example? Are there going to be issues with parsing if mismatched quotes and things like that?

Anything to the right of group by fn will be evaluated as a JavaScript function, so if the function call fails currently it just groups everything by Error with group result or Error parsing group function. Not sure if this is ideal or if failure should bubble up to a full parse error, like Tasks query: do not understand query ...?

Oooh - that's a really good point.
Some of the people using this feature will have minimal to no JS experience, so the more info we can give them about any errors, and the earlier the error can happen, the better.
So I think the failures should indeed bubble up, please, as you put so well...
Potential new group by features

FYI The features I was planning to implement soon for group by are:

Allowing users to supply custom date formats for group-based dates (this is highly requested)
Allowing reversed sorting of the group headings - such as group by done reverse (also highly requested)

Can you see how your changes to the regular expression for parsing would cope with the above?

Can you share the proposed syntax for custom date formats?

Well I'm not sure, but maybe something like:
group by due [[YYYY/MM/YYYY-MM-DD dddd]]
Which in my main vault would would like to the daily note for the particular day.
That's just a suggestion.
Aside: How sort by instructions now work

I think group by <field> reverse could be done via the GroupingArg. You can see here I'm only passing arg in the case of group by fn, but this could be changed to pass extra args to any new grouping functions that accept them.

Now might be a good time to point you to the refactoring I've been doing recently on sort by.
Here's the new code added to Field.ts:
https://github.com/obsidian-tasks-group/obsidian-tasks/blob/fab47788f1fae2b7d716f24e05ccd2525dfb806b/src/Query/Filter/Field.ts#L102-L233
Fields that use the standard sort pattern (sort by filename [reverse]) only need to implement two methods:
https://github.com/obsidian-tasks-group/obsidian-tasks/blob/fab47788f1fae2b7d716f24e05ccd2525dfb806b/src/Query/Filter/PriorityField.ts#L73-L81
But fields that support additional sort options - like sort by tag 3 - can do a little more, protecting all the others from needing to know about the corner cases:
https://github.com/obsidian-tasks-group/obsidian-tasks/blob/fab47788f1fae2b7d716f24e05ccd2525dfb806b/src/Query/Filter/TagsField.ts#L24-L98
Dividing up the group by code a lot more quickly
The above is a culmination of a series of careful refactorings. From what I learned, I would be able to divide up the group by code a lot more quickly.
When I first read this PR, I initially toyed with the idea of suggesting that it be picked up after I had divided up the group by code, as the new implementation would be a lot simpler, since all the new code would be in one file - which would have its own tests. And could have its own regex.
And over time, it could be taught to do sort by function and possible even function-based filters.
Docs

A lot of Tasks users will be non-developers, so things like the ternary operator and using === will all need to be well documented. I would be very happy to do final editing of docs, but would ask you to at least write a first draft of it, please. Would you feel up to that?

Yes of course! Note, the group by fn currently would run any JavaScript, so the full scope of what's possible is ... the entire language, haha, but I think it would be great to have some good examples showing non-developers how to use this for common customizations.

Awesome - thank you!

Error handling
So I think the failures should indeed bubble up, please, as you put so well...

OK, let me know if you'd like me to tinker with bubbling up errors from Group.by, or if I should hold off for a bit. My hunch is that this might be a bigger change, right, since currently Group.by always returns TaskGroups but I think would need to be changed to return a Result/Either type.

When I first read this PR, I initially toyed with the idea of suggesting that it be picked up after I had divided up the group by code, as the new implementation would be a lot simpler, since all the new code would be in one file - which would have its own tests. And could have its own regex.
And over time, it could be taught to do sort by function and possible even function-based filters.

Oh, yes, and let me just say too, I promise I won't be hurt if you decide to ice this PR for time being, or even if you decide it simply doesn't fit into this plugin at all rn. Whatever you think is right.
Also thanks for all the explanations and links, etc. I'm going to read them more in depth now.

OK, let me know if you'd like me to tinker with bubbling up errors from Group.by, or if I should hold off for a bit. My hunch is that this might be a bigger change, right, since currently Group.by always returns TaskGroups but I think would need to be changed to return a Result/Either type.

I do think your hunch is right, and let's stick with the design you currently have.
(I was briefly going to suggest that the error-checking be at the point when the group by function line is parsed, as that is the point at which a syntax-type error would need to be reported. Like maybe Query.parseGroupBy() could be persuaded to create a Task list with one dummy task, and group it. But looking at the code, I think it would just be too complicated - and so let's stick with the error-checking at the point of grouping for now.)

When I first read this PR, I initially toyed with the idea of suggesting that it be picked up after I had divided up the group by code, as the new implementation would be a lot simpler, since all the new code would be in one file - which would have its own tests. And could have its own regex.
And over time, it could be taught to do sort by function and possible even function-based filters.

Oh, yes, and let me just say too, I promise I won't be hurt if you decide to ice this PR for time being, or even if you decide it simply doesn't fit into this plugin at all rn. Whatever you think is right.

Gosh, thank you very much indeed.
I definitely think it fits. I also definitely think it's worth completing - and I think it will open up some other ideas later on.
So please do continue with the current PR!

https://github.com/obsidian-tasks-group/obsidian-tasks/discussions/1133 looks like a request for the exact same facility.

I definitely think it fits. I also definitely think it's worth completing - and I think it will open up some other ideas later on.
So please do continue with the current PR!

Got pulled into a holiday whirlwind, but planning to resume this next week fyi 🙃

Hi @weirdhorror, Happy New Year!
I've got someone offering to pair with me on some groups-related refactoring - and so was wondering how this was going...
If you thought this might be coming soon-ish (for any definition of soon!) then I would hold off and wait for this... to avoid creating merge conflicts...
However, the merge conflicts will be fairly easy to fix, so there is no absolutely no pressure for you to work on this, I promise - me and the other person could always work on the refactoring anyways, in parallel or advance of this, if that was better for you.


Home: Carousel is not vertically aligned

Duplicate of https://github.com/AdvisorySG/dawn-advisory-theme/issues/404.


docs: Levski Change Log

Signed-off-by: Leonard Goodell<EMAIL_ADDRESS>

If your build fails  due to your commit message not passing the build checks, please review the guidelines here: https://github.com/edgexfoundry/edgex-go/blob/main/.github/Contributing.md
PR Checklist
Please check if your PR fulfills the following requirements:

[x] I am not introducing a breaking change (if you are, flag in conventional commit message with BREAKING CHANGE: describing the break)
[x] I am not introducing a new dependency (add notes below if you are)
[ ] I have added unit tests for the new feature or bug fix (if not, why?)
[ ] I have fully tested (add details below) this the new feature or bug fix (if not, why?)
[ ] I have opened a PR for the related docs change (if not, why?)

Testing Instructions

New Dependency Instructions (If applicable)

A bunch of the fixes are there because they were introduced in dev releases, rather than a fix added in this minor release. I guess we don't have a mechanism to label those on PRs and filter them our by the tooling.

Yes, I try to remove those as they are not relevant to the actual release. Please highlight ones that I have missed.

Missing https://github.com/edgexfoundry/go-mod-bootstrap/pull/367


Use safe version of tool provider request validator

If the LTI request is invalid, let the valid_lti? helper method just return false. In turn, the request fail using the omniauth fail! helper
One option might be to also make this change in behaviour sit behind an option (default to keep behaviour as is?)
Let me know what you think. Happy to tweak either way.

Thanks!


[E2E] Use weave as default cni for all k8s and kind versions.

This PR uses Cluster.networking.disableDefaultCNI option for clusters 2 and 3. After the container nodes are up we are installing weave manually. In previous setup with k8s version 1.14.1, weave was ignoring podCidr provided in kind config file and used its default <IP_ADDRESS>/12 cidr as podCidr. This PR fixes this issue.The result is a cluster with weave and podCidr that is taken from kind config file. This removes the need to be constrained to specific k8s version or kind version. After this is merged kind can be safely upgraded. Other types of cni plugins can be tested more easily.

@sridhargaddam will love this ;)

@sridhargaddam will love this ;)

Yes :)

I have a few questions inline but looks good to me.
It'd be awesome to be able to control on an env var if we want kindnet or weave, or eventually something else. But let's get into that complication the day we really need it.

Yes that's nice idea. I have also tested calico, but had some issues related to kernel modules. Seems to be fixable. Didn't want to waste too much time and used weave instead. Seems as long as cni supports podCidr customization we can utilize most of them.


Make tracing easier to configure

🤔 Problem: We recently released the opentelemetry-tracing experiment for the agent, but currently, it's tricky to use through the elastic stack for a couple of reasons:

We don't currently expose the --tracing-backend argument as a cfn parameter
At current, there's no easy way to pack arbitrary environment variables into the agents launched by the elastic stack. To use opentelemetry tracing, we need to supply an envar like OTEL_EXPORTER_OTLP_ENDPOINT, which tells the agent where to send its traces, and it's tricky/impossible to set this envar via the elastic stack.

✅ Solution: Fix those two things!

Make the tracing-backend config element settable through cloudformation, defaulting to ""
Add a new cfn parameter called BuildkiteAgentExtraEnvironmentVariables, a comma-separated string of envars like:

COLOR=green,FLAVOR=sour,TEXTURE=chewy,OTEL_EXPORTER_OTLP_ENDPOINT=https://tracing.com/buildkite

each of these envars will be added to the environment in which the agent runs, across both windows and linux.
⁉ Open Questions:

wrt. BuildkiteAgentExtraEnvironmentVariables, is comma-separation the right way to go? There are times when users might want to have commas in their environment variables... OTEL_EXPORTER_OTLP_HEADERS comes to mind. Perhaps we want to separate by |? but that's super ugly. ; maybe?

I wonder if we could point at a collection of environment variables stored elsewhere on AWS?
It could be like BootstrapScriptUrl which can be hosted on S3 or any arbitrary HTTPS endpoint.
Or it could be an SSM Parameter Store prefix; see https://github.com/cultureamp/parameter-store-exec for what I'm imagining on that front.
Externalising it sidesteps the questions around syntax/delimiters, and the janky bash/python needed to handle them, and also makes it less likely people will pass secrets to the agent via an insecure stack parameter.
🤔

@pda given the prior art of the bootstrap script, i think doing an environment file in a similar way is pretty reasonable. I'll update this PR so it does something similar to what we do for the bootstrap script.


Runelite (Java?) fails to internally resize itself until state updates are given to the window

Bug or Regression?
Regression
System Info and Version
 System/Version info
Hyprland, built from branch main at commit a9d7befc36f2890f080d02b8c04b678778ded080  (formats: fixup for legacy_renderer builds).
Date: Thu Jun 13 07:29:24 2024
Tag: v0.41.0-21-ga9d7befc, commits: 4815

flags: (if any)

System Information:
System name: Linux
Node name: milkbar
Release: 6.9.3-arch1-1
Version: #1 SMP PREEMPT_DYNAMIC Fri, 31 May 2024 15:14:45 +0000

GPU information:
0b:00.0 VGA compatible controller [0300]: Advanced Micro Devices, Inc. [AMD/ATI] Navi 10 [Radeon RX 5600 OEM/5600 XT / 5700/5700 XT] [1002:731f] (rev c1) (prog-if 00 [VGA controller])
0c:00.0 VGA compatible controller [0300]: NVIDIA Corporation TU104 [GeForce RTX 2070 SUPER] [10de:1e84] (rev a1) (prog-if 00 [VGA controller])

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

plugins:

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

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

# Environmental variables
env = XDG_SESSION_TYPE,wayland
env = XDG_SESSION_DESKTOP,Hyprland
env = XDG_CURRENT_DESKTOP,Hyprland
env = GDK_BACKEND,wayland,x11
env = QT_QPA_PLATFORM,wayland;xcb
env = QT_AUTO_SCREEN_SCALE_FACTOR,1
env = QT_WAYLAND_DISABLE_WINDOWDECORATION,1
env = QT_QPA_PLATFORMTHEME,qt6ct
#env = SDL_VIDEODRIVER,x11
env = CLUTTER_BACKEND,wayland
env = MOZ_ENABLE_WAYLAND,1
env = ECORE_EVAS_ENGINE,wayland_egl
env = ELM_ENGINE,wayland_egl
env = _JAVA_AWT_WM_NONREPARENTING,1
env = NO_AT_BRIDGE,1
env = XCURSOR_SIZE,24
exec-once = dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP

#monitor = DP-1, 1920x1080@144, 1440x0  , 1
#monitor = DP-2, 1440x900@60  , 0x340   , 1
monitor = DP-1, 1920x1080@144, 1920x0  , 1
monitor = DP-2, 1920x1080@60 , 0x100   , 1
monitor = DP-3, 1440x900@60  , 3840x320, 1

# Source a file (multi-file configs)
# source = ~/.config/hypr/myColors.conf

# For all categories, see https://wiki.hyprland.org/Configuring/Variables/
input {
    kb_layout = us
    kb_variant =
    kb_model =
    kb_options =
    kb_rules =
    numlock_by_default = true

    follow_mouse = 1

    touchpad {
        natural_scroll = false
    }

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

general {
    # See https://wiki.hyprland.org/Configuring/Variables/ for more

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

    layout = dwindle
}

decoration {
    # See https://wiki.hyprland.org/Configuring/Variables/ for more

    rounding = 0

    blur {
        enabled = false
        #size = 3
        #passes = 1
    }

    drop_shadow = false
    #shadow_range = 4
    #shadow_render_power = 3
    #col.shadow = rgba(1a1a1aee)
}

animations {
    enabled = false

    # Some default animations, see https://wiki.hyprland.org/Configuring/Animations/ for more

    bezier = myBezier, 0.05, 0.9, 0.1, 1.05

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

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

master {
    # See https://wiki.hyprland.org/Configuring/Master-Layout/ for more
    new_is_master = true
}

gestures {
    # See https://wiki.hyprland.org/Configuring/Variables/ for more
    workspace_swipe = false
}

misc {
    force_default_wallpaper = 0
}

binds {
    movefocus_cycles_fullscreen = false
}

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

# Example windowrule v1
# windowrule = float, ^(kitty)$
# Example windowrule v2
# windowrulev2 = float,class:^(kitty)$,title:^(kitty)$
# See https://wiki.hyprland.org/Configuring/Window-Rules/ for more
windowrulev2 = noborder,onworkspace:1
windowrulev2 = opacity 0.0 override,class:^(xwaylandvideobridge)$
windowrulev2 = noanim,class:^(xwaylandvideobridge)$
windowrulev2 = noinitialfocus,class:^(xwaylandvideobridge)$
windowrulev2 = maxsize 1 1,class:^(xwaylandvideobridge)$
windowrulev2 = noblur,class:^(xwaylandvideobridge)$

# See https://wiki.hyprland.org/Configuring/Keywords/ for more
$mainMod = SUPER

# Workspace Bindings
bind = $mainMod, 1, workspace, 1
bind = $mainMod, 2, workspace, 2
bind = $mainMod, 3, workspace, 3
bind = $mainMod, 4, workspace, 4
bind = $mainMod, 5, workspace, 5
bind = $mainMod, 6, workspace, 6
bind = $mainMod, 7, workspace, 7
bind = $mainMod, 8, workspace, 8
bind = $mainMod, 9, workspace, 9
bind = $mainMod, 0, workspace, 10
bind = $mainMod, KP_End, workspace, 11
bind = $mainMod, KP_Down, workspace, 12
bind = $mainMod, KP_Next, workspace, 13
bind = $mainMod, KP_Left, workspace, 14
bind = $mainMod, KP_Begin, workspace, 15
bind = $mainMod, KP_Right, workspace, 16
bind = $mainMod, KP_Home, workspace, 17
bind = $mainMod, KP_Up, workspace, 18
bind = $mainMod, KP_Prior, workspace, 19
bind = $mainMod, KP_Insert, workspace, 20

bind = $mainMod SHIFT ALT, left, movecurrentworkspacetomonitor, l
bind = $mainMod SHIFT ALT, right, movecurrentworkspacetomonitor, r
bind = $mainMod SHIFT ALT, up, movecurrentworkspacetomonitor, u
bind = $mainMod SHIFT ALT, down, movecurrentworkspacetomonitor, d

bind = $mainMod, mouse_down, workspace, e-1
bind = $mainMod, mouse_up, workspace, e+1

# Window Bindings
bind = $mainMod SHIFT, 1, movetoworkspace, 1
bind = $mainMod SHIFT, 2, movetoworkspace, 2
bind = $mainMod SHIFT, 3, movetoworkspace, 3
bind = $mainMod SHIFT, 4, movetoworkspace, 4
bind = $mainMod SHIFT, 5, movetoworkspace, 5
bind = $mainMod SHIFT, 6, movetoworkspace, 6
bind = $mainMod SHIFT, 7, movetoworkspace, 7
bind = $mainMod SHIFT, 8, movetoworkspace, 8
bind = $mainMod SHIFT, 9, movetoworkspace, 9
bind = $mainMod SHIFT, 0, movetoworkspace, 10
bind = $mainMod SHIFT, KP_End, movetoworkspace, 11
bind = $mainMod SHIFT, KP_Down, movetoworkspace, 12
bind = $mainMod SHIFT, KP_Next, movetoworkspace, 13
bind = $mainMod SHIFT, KP_Left, movetoworkspace, 14
bind = $mainMod SHIFT, KP_Begin, movetoworkspace, 15
bind = $mainMod SHIFT, KP_Right, movetoworkspace, 16
bind = $mainMod SHIFT, KP_Home, movetoworkspace, 17
bind = $mainMod SHIFT, KP_Up, movetoworkspace, 18
bind = $mainMod SHIFT, KP_Prior, movetoworkspace, 19
bind = $mainMod SHIFT, KP_Insert, movetoworkspace, 20

bind = $mainMod, left, movefocus, l
bind = $mainMod, right, movefocus, r
bind = $mainMod, up, movefocus, u
bind = $mainMod, down, movefocus, d
bind = $mainMod SHIFT, left, movewindow, l
bind = $mainMod SHIFT, right, movewindow, r
bind = $mainMod SHIFT, up, movewindow, u
bind = $mainMod SHIFT, down, movewindow, d

bind = $mainMod, R, submap, resize
submap = resize
binde = SHIFT, left, resizeactive, -10 0
binde = SHIFT, right, resizeactive, 10 0
binde = SHIFT, up, resizeactive, 0 -10
binde = SHIFT, down, resizeactive, 0 10
binde = , left, resizeactive, -5 0
binde = , right, resizeactive, 5 0
binde = , up, resizeactive, 0 -5
binde = , down, resizeactive, 0 5
binde = ALT, left, resizeactive, -1 0
binde = ALT, right, resizeactive, 1 0
binde = ALT, up, resizeactive, 0 -1
binde = ALT, down, resizeactive, 0 1
bind = , escape, submap, reset
submap = reset

bind = $mainMod SHIFT, Q, killactive
bind = $mainMod, F, fullscreen
bind = $mainMod, E, togglesplit # dwindle
bind = $mainMod, P, pseudo # dwindle
bind = $mainMod SHIFT, SPACE, togglefloating

bindm = $mainMod, mouse:272, movewindow
bindm = $mainMod, mouse:273, resizewindow

# Media Bindings
binde = , XF86AudioRaiseVolume, exec, pactl set-sink-volume @DEFAULT_SINK@ +5% #increase sound volume
binde = , XF86AudioLowerVolume, exec, pactl set-sink-volume @DEFAULT_SINK@ -5% #decrease sound volume
bind = , XF86AudioMute, exec, pactl set-sink-mute @DEFAULT_SINK@ toggle # mute sound
bind = , XF86AudioPlay, exec, playerctl play
bind = , XF86AudioPause, exec, playerctl pause
bind = , XF86AudioNext, exec, playerctl next
bind = , XF86AudioPrev, exec, playerctl previous

# Program Bindings
bind = $mainMod, Return, exec, kitty
#bind = $mainMod, D, exec, kickoff
bind = $mainMod, D, exec, tofi-run | xargs hyprctl dispatch exec
bind = $mainMod SHIFT, M, exit
bind = , PRINT, exec, hyprshot -m region -o /tmp -f $(date +%s%3N).png
bind = ALT, PRINT, exec, hyprshot -m window -o /tmp -f $(date +%s%3N).png
bind = $mainMod, PRINT, exec, hyprshot -m output -o /tmp -f $(date +%s%3N).png

# Global Hotkeys
#bindn = , Control_L, pass, ^(discord)$
bindn = , F10, pass, ^(com\.obsproject\.Studio)$

# Startup Programs
exec-once = /usr/lib/polkit-kde-authentication-agent-1
exec-once = xwaylandvideobridge
exec-once = mako
exec-once = waybar
exec-once = easyeffects --gapplication-service
exec-once = sleep 3 && keepassxc
exec-once = [workspace 1 silent] librewolf
exec-once = [workspace 9 silent] brave
exec-once = [workspace 7 silent] discord
exec-once = [workspace 3 silent] kitty
exec-once = [workspace 8 silent] kitty
exec-once = pactl set-sink-volume @DEFAULT_SINK@ 85%
exec-once = pactl set-sink-volume easyeffects_sink 100%
exec-once = pactl set-source-volume @DEFAULT_SOURCE@ 85%
exec-once = pactl set-source-volume easyeffects_source 100%
exec-once = send-ctrl-to-xwayland /dev/input/by-id/usb-04d9_USB_Keyboard-event-kbd

# Hacks
#windowrulev2 = nomaximizerequest,class:(mpv)

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

Description
When the side menu in the game client Runelite (available in the AUR) is opened or closed, instead of the primary space shrinking or expanding to properly fit the menu, the side menu either expands outside of the bounds of the window when opened, or leaves a ghost of itself in its previously occupied space when closed.
However, the window can be forced to properly update its internal sizing if it is either resized, or another XWayland window is focused and focus is then returned to the Runelite window (see #6468 for why specifically an XWayland window).
Here's a video demonstrating the issue.
https://github.com/hyprwm/Hyprland/assets/6110140/e0ab0d46-b8e5-4c23-9fc9-45fb140e5db6
I'm marking this as a regression because it did not happen under 0.40.0 (before the rewrites), and it's not a new Runelite bug because it still doesn't happen under Sway. I'd attempt a bisect but am currently unable to build older commits.
How to reproduce
Run Runelite and open and close the side menus as shown in the demo.
Crash reports, logs, images, videos
No response

I'm getting this same issue on Hyprland, it is significantly worse when playing on resizable as the entire game becomes mosaiced and misaligned. Especially annoying when opening a new window next to it


Return 404  codacy API

Hello, everyone I am trying to do the integration, but ends up returning this error.
In CodacyApiClient.php line 54:
Error: Call to URL https://api.codacy.com/2.0/coverage/3c7760d2a5adc8a9c4453d8a208a35a630c13f93/php failed with status 404, response {"error": "not found"}, curl_error 0

Hello,
Can you confirm CODACY_PROJECT_TOKEN env variable is set correctly? Check here: https://github.com/codacy/php-codacy-coverage#updating-codacy


Match rule transform POST in GET

Hi All,
we noticed on  modsecurity for Nginx connector a strange behavior. If a rule is matched before the normal CRS rules engine the HTTP method is noticed like GET instead the original POST.
We already had some issues with the internal redirects but the matching on different phases can generate this type of error?
Thanks,
Marcello

Hello @cello86 ,
I'm not sure I understand the use case that you are describing.
Note that ModSecurity (including the nginx connector) is the "engine".  CRS is a generic rule set that is often used with ModSecurity.
From what have included, however, what you are seeing sounds like it might be expected behaviour related to error redirects. You may wish to have a look at the following for more detail: https://github.com/SpiderLabs/ModSecurity-nginx/issues/152#issuecomment-583037424
If you think what you are experiencing is unrelated to that, please provide additional detail.

Hi @cello86,
we configured the nginx instance with the error page without mod_security enabled to avoid the internal redirect.
    server {
	server_name test.local;

        modsecurity on;
        modsecurity_rules_file /usr/local/nginx/conf/modsecurity.conf;

        error_page 403 /error/403.json;

        location ^~ /error {
            modsecurity_rules 'SecRule REQUEST_URI "@beginsWith /" "id:1,pass,phase:2,log,ctl:ruleEngine=DetectionOnly"';
            alias "/usr/local/nginx/error";
        }

        location / {
            root   html;
        }
    }

Marcello

Hello @cello86 ,
Perhaps I've misunderstood something but how does that configuration result in 'without mod_security enabled'?
You explicitly have 'modsecurity on' within the outside server block. So it will still be 'on' inside the 'location ^~ /error' -- which it seems you understand because you include an extra modsecurity_rules entry there.
That extra rule includes an action 'ctl:ruleEngine=DetectionOnly', so rules that are impacted by that will, of course, use Detection Only.
However even for rule detections after that point, you will still see the effect of the GET requests that were originally POSTs (e.g. in logging). Note also that your "id:1" rule will run later than at least some other rules (you have it as a phase:2 rule), you could have a look at the DebugLog output to confirm which rules are being run in which order.
If none of the above clarifies things for you, I think you're going to have to describe in more detail, what effects exactly you are seeing and how you expect them to be different.

Was there anything further on this?


Do sources/sinks need Set semantics?

The current spec text says we need to store sources/sinks as an ordered set, but do we know for sure that's necessary? I'm not so sure.
Sinks: these need to be ordered to ensure a predictable order of calling notify, but I think it's not actually observable whether or not they're deduplicated:

we only call notify once on a node until the next time someone calls get on it and makes it clean again
during the notification pass, caling get is forbidden
So it seems like even if we were to store the sink twice, we'd be guaranteed to skip over it the second time.

Sources: these need to be ordered to ensure a predictable order of calling equals and the bodies of Computeds. In normal scenarios you can't observe whether or not they're deduplicated, because they'll become clean after the first time they're reached (at which point neither their body nor equals needs to run). But there's an exception here, depending on some details we haven't nailed down yet:

Computed C depends on (in order) computeds [A, B, A]. A is clean; B is dirty.
recomputing B causes a set to a state that A (directly or transitively) depends on, but B's equals prevents B from becoming dirty so it doesn't interrupt checking.
if A appears twice in C's sources, we'll skip it the first time (it's clean), dirty it when recomputing B, and then recompute A (and then C, if A's equals doesn't cut off the computation). If A appears only once, we'll skip over it and then not recompute A (or C).

Note that this sort of set presents some consistency problems: it seems that we must rerun A and (depending on A's equals) rerun C, even if C only read [A, B], so it's not clear the deduplication is really implicated here. If we don't rerun them, we end up in a situation where we finish checking C's sources and decide that it's clean, even after a change which would cause its from-scratch value to be something different!
So it sounds to me like we really want to pin down which States are allowed to be set when, and it's possible that a satisfying solution there will cause both sources and sinks to have the same observable behavior whether or not they're deduplicated.

As far as I know knowing that a signal got read N times inside a tracking scope, for N > 1, has zero utility, so keeping that information around seems wasteful. Like you can technically even run out of memory because of this, and running out of memory for useless information doesn't seem ideal.
In general though one may not necessarily want to use actual sets for this either, as most tracking scopes will be tracking 1 or 2 signals, some will even be tracking nothing, and in these cases just a linear scan would probably perform better. In practice for me on the JS side of things up to something like 512 items a linear scan was faster, iirc.

@fabiospampinato Yeah, IMO the best possible outcome here would be:

we come up with a semantics for all operations that makes it impossible to observe whether a dependency is listed more than once
we mandate that reading N distinct sources should only take O(N) memory, even if you read them many times
implementations get to pick their own heuristic for when to switch from linear scan with duplicates to a deduplicated structure with worse constant factors, or even some weirder deduplication option (like mobx uses).

So the question is how we ensure (1), because as a spec we have to pin down all observable behaviors -- even the observable behaviors that convey or depend upon "useless" information.
@littledan I don't really know what to do about .sets in computeds, TBH. In a ranking of behavioral simplicity I'd probably order the options as...

Just ban .set in computeds.
Allow .set, but only in "outermost computeds", those that aren't consumed by other computeds. (This seemed cleaner in a world where we had Effects rather than Watchers. Getting to choose up front whether your derivation can set states or can have a value which other things read, but not both, is a lot more intelligible than having your set-permission determined by your position in the graph.)
Allow .set, but throw if it ever happens during the "check dependencies" phase. (Worse than the previous -- "is this computed allowed to set state" isn't even the right question anymore, it depends on when it's running.)
Allow .set, and it doesn't throw, but it behave slightly differently to avoid you getting to make a mess if you try to do it in the wrong situations. (This seems just too surprising to stomach... I hope.)

I'm not completely clear on what level of chaos freedom frameworks needed here... and I wonder if there's something like the computed<->effect distinction we could add back in to make a hard line between the "can set" and "can have a value" derivations.


Added osvr_server command-line options

This PR adds command-line options to the server for adjusting the log verbosity and also allows the server to run without specifying a configuration file (in which case it will assume an empty configuration { }).
$ ./osvr_server --help
Command Line Options:
  --help                display this help message
  -v [ --verbose ]      enable verbose logging
  -d [ --debug ]        enable debug logging

Verbose logging sets the log level to debug and debug logging sets the log level to trace.
This subsumes PR #293 by @Outurnate.

If no configuration file is specified, we default to using osvr::server::getDefaultConfigFilename(). If that fails (e.g., that file doesn't exist), then we'll use an empty { } configuration.


onRowClick functionality

Hi Allen,
Is it possible to selectively call onRowClick? For example, for one of my columns I have a button but I don't want my onRowClick function to be called when I click the button. The issue is that onRowClick is executed before my button click.
Thanks!

@sunnyownage, currently is not, but I think you can use event object to distinguish them.
Let me know if you still have any question :)


GSD Request

--- GSD JSON ---
{
  "vendor_name": "Linux",
  "product_name": "Kernel",
  "product_version": "versions from  to before v5.10.85",
  "vulnerability_type": "unspecified",
  "affected_component": "unspecified",
  "attack_vector": "unspecified",
  "impact": "unspecified",
  "credit": "",
  "references": [
    "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=02b2b691b77cd7b951fa7b6c9d44d4e472cdc823"
  ],
  "extended_references": [
    {
      "type": "commit",
      "value": "02b2b691b77cd7b951fa7b6c9d44d4e472cdc823",
      "note": "fixed"
    }
  ],
  "reporter": "joshbressers",
  "reporter_id": 1692786,
  "notes": "",
  "description": "ALSA: pcm: oss: Fix negative period/buffer sizes\n\nThis is an automated ID intended to aid in discovery of potential security vulnerabilities. The actual impact and attack plausibility have not yet been proven.\nThis ID is fixed in Linux Kernel version v5.10.85 by commit 02b2b691b77cd7b951fa7b6c9d44d4e472cdc823. For more details please see the references link."
}
--- GSD JSON ---

This issue has been assigned GSD-2021-1002511


Composer Update Not Working

Bagisto has detected that the required composer dependencies are not installed.
Go to the root directory of Bagisto and run "composer install".

Can you please share more info so that I can check and also please fill out the full issue form?

Hi @Seunakomolafe1
Is your issue resolved.?

I am closing this as this is not reproducable, please use the Bagisto forum.


add jommartinez cards

@Jommartinez  You already submited a pr #282 few days ago and got merged too. Why are you creating another PR ?


fix: change enrtree public key to pattern

Not sure if I escaped backslash properly.
Please test.
See:

https://github.com/waku-org/js-waku-examples/pull/190/files#r1080774184
https://discord.com/channels/1110799176264056863/1111541029309534249/1158771714868658196

I've run prettier locally (unfortunately --list-different on CI doesn't show the problematic code.
And problem appeared to be in the pattern. I've fixed the complaing, but I don't know how to test that pattern works.
@fryorcraken, @danisharora099, please help to test it.

Sorry, what's the problem here?

I don't think there was an issue. Sorted 🙂


Epoch count should be a parameter that we can set somewhere

For #24 I had to parameterize the number of epochs. I defined it as a constant in constants.py. It is a single variable, used for both compute_test_score_for_single_node' and compute_test_score`. It could be further improved by enabling two different value for these 2 functions.


Possibility of adding additional features if supported by API

Is there any plan to incorporate additional information into the integration. I'm particularly interested in being able manage the different heating modes and schedules or is this currently limited by what the API provides?
Also does the API support the new available sensors (cover, Fill & Drain, Water Detection)? I'm particularly interested in the Cover sensor,
Thank you

+1 on the sensors
Fwiw, you can get the sensor info by calling get_status_full().  It's not implemented in the command line example but is in the API.

I don't have additional sensors and don't use the heating modes (I control schedules via home assistant), but am happy to support you if you want to work on this


[10.x] It catches BindingResolutionException in db:seed command when given class name is not found

It adds a try catch block for php artisan db:seed command. When given class name is not being resolved by laravel,
it uses error component instead of rendering vendor frame.

Can you show a before/after screenshot?

Thanks for your pull request to Laravel!
Unfortunately, I'm going to delay merging this code for now. To preserve our ability to adequately maintain the framework, we need to be very careful regarding the amount of code we include.
If possible, please consider releasing your code as a package so that the community can still take advantage of your contributions!
If you feel absolutely certain that this code corrects a bug in the framework, please "@" mention me in a follow-up comment with further explanation so that GitHub will send me a notification of your response.


InstagramLocation

Property 'id' should be Int in the 'InstagramLocation' model

Hey @Dzionis thanks for your help and your pull request (#8), unfortunately, I'm not sure thats correct. In fact, I have tested it and this was the Instagram API response:
{
    "data": {
        "id": "213135265",
        "name": "Minsk-Arena",
        "latitude": 53.9365,
        "longitude": 27.4829
    },
    "meta": {
        "code": 200
    }
}

You can see the id is a String and I haven't had any parse issue, how have you tested it, or where did you find that?
Thanks! :thumbsup:

Thank you for quick replay @AnderGoig .
I logged in by this code:
api.login(navController: navigationController!, scopes: [.basic, .likes, .followerList, .publicContent], success: {
                // Do your stuff here ...
            }, failure: { error in
                print(error.localizedDescription)
            })

and I got media by this code:
api.recentMedia(fromUser: "self", count: 5, success: { (mediaSet) in

        }, failure: { (error) in
            print(error.localizedDescription)
        })

And i got response: [jsonParseError] - The data couldn’t be read because it isn’t in the correct format.

Oh :hushed:, I see.
It seems like the Instagram API returns a different type of id depending on the called endpoint. The location id returned from a media object is an Int, as you said. But the location id returned from a call to /locations/location-id is a String.
Unfortunately, your pull request (#8) would do the trick with the first example, but would fail with the second.
The only thing I can think of is to have an internal struct inside InstagramMedia.swift for the location property that would parse the id's as Int.
Thank you very much, I wouldn't have discovered this without your help! 👍

Fixed in 7bdaa34.


Get-UiPathAuthToken with windows credentials and tenant

There seems to be a problem with Get-UiPathAuthToken with windows credentials and tenant. If I have the same AD account in multiple tenants and use Get-UiPathAuthToken I get a response, that I'm connected to the correct tenant but when I use Get-UiPathRobot I get the robots from the tenant with the lowest Id.

I'm experiencing the same issue. It seems like the -TenantName parameter accepts any string value regardless if it's a tenant or not. As far as I can tell it simply authenticates to the "default" tenant despite listing the token as authenticated to the TenantName you entered.

Hi, I'm using O19.10 and Get-UiPathAuthToken always use context of Default tenant, even if I specify different one. If Default Tenant is disable while other in use it throws: The operation returned an error: 0: You are not authenticated!
AD Authentication, same user on each tenant. Any update on that?

This is an Orchestrator bug, using the API with Windows credentials is incompatible with multiple tenants. We need to fix first the Orchestrator, in a future release.


add: Frontend Development info

Related issue #561

we are not adding coursera courses because it's not completely free , we need to apply financial aid and it takes time


Pin kabanero scanner image for issue #143

For issue #143
Use Kabanero/scanner:1.3.1 from the image-scan-task.yaml.

Manual test shows that the Kabanero/scanner:1.3.1 was found per the events in the PipelineRun,
Ptest-build-push-deploy-pipeline-run-1574713470552-image-s-dtrhc-pod-6bf50aNamespaceNSkabanero
4 minutes ago
Generated from kubelet on worker1.ttorres.os.fyre.ibm.com
Successfully pulled image "kabanero/scanner:1.3.1"


Integrate make to the development process

this helps with brevity of the commands one needs to type to make things happen, also, some extra
help text is provided to guide newcomers on what they are expected to do after any execution of make

Can you also change the CI config files to use make?
The Windows section in the doc also needs to be expanded, since it will be more different from macOS/Linux than before.

well, naturally apt-get will fail on MacOS

Okay, I don't understand what went wrong with the tests themselves. Any pointers?

Seems like the Rust grammar changed, invalidating the test. It’s not related to the changes here. I’ll check it.

after that the PR can be merged?


kafka-manager keeps consuming memory (memory leak ?)

Hi,
I have a Kafka Manager deployed in Kubernetes.
I can see from my monitoring that it keeps using more and more memory.
Nobody is using the interface. It's just running by itself.

I finally restarted it and it's now taking "only" 412Mo of memory, still without using it.
I'm using kafka-manager-<IP_ADDRESS>
Will try to provide more info but any specific test to do or debug to provide  is welcome.

Any update on this, I was considering running it in K8s as well, but that's obv not ideal

I upgraded to Kafka manger <IP_ADDRESS> and memory issue seems to still be there...

I am building my own image with this Dockerfile (which is based on the same image as yours) :
FROM hseeberger/scala-sbt
# https://hub.docker.com/r/sheepkiller/kafka-manager/~/dockerfile/

MAINTAINER Prune<EMAIL_ADDRESS>ARG CI_COMMIT_TAG="none"
ARG CI_COMMIT_SHA="none"
ARG NOW="unknown"
ARG KAFKA_MANAGER_VERSION="<IP_ADDRESS>"

ENV ZK_HOSTS=localhost:2181 \
     KM_VERSION=$KAFKA_MANAGER_VERSION

RUN mkdir -p /tmp && \
    cd /tmp && \
    wget https://github.com/yahoo/kafka-manager/archive/${KM_VERSION}.tar.gz && \
    tar xxf ${KM_VERSION}.tar.gz && \
    cd /tmp/kafka-manager-${KM_VERSION} && \
    sbt clean dist && \
    unzip  -d / ./target/universal/kafka-manager-${KM_VERSION}.zip && \
    rm -fr /tmp/${KM_VERSION} /tmp/kafka-manager-${KM_VERSION} && \
    ln -s /kafka-manager-${KM_VERSION} /kafka-manager

WORKDIR /kafka-manager-${KM_VERSION}

EXPOSE 9000
ENTRYPOINT ["./bin/kafka-manager","-Dconfig.file=conf/application.conf"]

I'm also seeing this with <IP_ADDRESS>.
In the figure below, you can see the following alternating patterns:

periods of escalating memory usage, after which GC is able to reclaim some memory
2 periods of escalating memory usage after which the service is restarted

Classic example of a ramped sawtooth pattern caused by a memory leak

Same here on Docker / Rancher 1.6 using v <IP_ADDRESS>:

Same here on Docker / Rancher 1.6 using v <IP_ADDRESS>:

Note : no JMX polling, 1 cluster of 3 brokers, around 150 topics, 2 consumer groups

Any fix on this, i'm running 5.2.1 and seeing the same issue

any updates? i tried several versions but looks like there is a memory leak :\
log error:
2020-02-17 14:50:16,833 - [ERROR] a.a.ActorSystemImpl - Uncaught error from thread [kafka-manager-system-akka.actor.default-dispatcher-53]: GC overhead limit exceeded, shutting down JVM since 'akka.jvm-exit-on-fatal-error' is enabled for ActorSystem[kafka-manager-system] java.lang.OutOfMemoryError: GC overhead limit exceeded 	at scala.collection.immutable.HashSet$HashTrieSet.updated0(HashSet.scala:551) 	at scala.collection.immutable.HashSet$HashTrieSet.updated0(HashSet.scala:548) 	at scala.collection.immutable.HashSet.$plus(HashSet.scala:84) 	at scala.collection.immutable.HashSet.$plus(HashSet.scala:35) 	at scala.collection.mutable.SetBuilder.$plus$eq(SetBuilder.scala:28) 	at scala.collection.mutable.SetBuilder.$plus$eq(SetBuilder.scala:24) 	at scala.collection.TraversableLike.$anonfun$filterImpl$1(TraversableLike.scala:251) 	at scala.collection.TraversableLike$$Lambda$123/48361312.apply(Unknown Source) 	at scala.collection.Iterator.foreach(Iterator.scala:941) 	at scala.collection.Iterator.foreach$(Iterator.scala:941) 2020-02-17 14:50:16,852 - [INFO] p.c.s.AkkaHttpServer - Stopping server...

I am seeing the memory leak with the latest version of CMAK <IP_ADDRESS> in Docker container... it makes this application unusable, since it grows from ~500MB to 6GB in a day.
The JMX metric collection is disabled and the single Kafka cluster has negligible number of messages.

The logs are show huge amount of these:

2020-02-27 09:52:03,301 - [WARN] o.a.k.c.NetworkClient - [Consumer clientId=consumer-KMOffsetCache-ac805b8c58a1-4789, groupId=KMOffsetCache-ac805b8c58a1] 25 partitions have leader brokers without a matching listener, including [__consumer_offsets-9, __consumer_offsets-39, __consumer_offsets-11, __consumer_offsets-31, __consumer_offsets-13, __consumer_offsets-43, __consumer_offsets-29, __consumer_offsets-1, __consumer_offsets-41, __consumer_offsets-27]
2020-02-27 09:52:03,406 - [WARN] o.a.k.c.NetworkClient - [Consumer clientId=consumer-KMOffsetCache-ac805b8c58a1-4789, groupId=KMOffsetCache-ac805b8c58a1] 25 partitions have leader brokers without a matching listener, including [__consumer_offsets-9, __consumer_offsets-39, __consumer_offsets-11, __consumer_offsets-31, __consumer_offsets-13, __consumer_offsets-43, __consumer_offsets-29, __consumer_offsets-1, __consumer_offsets-41, __consumer_offsets-27]
2020-02-27 09:52:03,510 - [WARN] o.a.k.c.NetworkClient - [Consumer clientId=consumer-KMOffsetCache-ac805b8c58a1-4789, groupId=KMOffsetCache-ac805b8c58a1] 25 partitions have leader brokers without a matching listener, including [__consumer_offsets-9, __consumer_offsets-39, __consumer_offsets-11, __consumer_offsets-31, __consumer_offsets-13, __consumer_offsets-43, __consumer_offsets-29, __consumer_offsets-1, __consumer_offsets-41, __consumer_offsets-27]
2020-02-27 09:52:03,619 - [WARN] o.a.k.c.NetworkClient - [Consumer clientId=consumer-KMOffsetCache-ac805b8c58a1-4789, groupId=KMOffsetCache-ac805b8c58a1] 25 partitions have leader brokers without a matching listener, including [__consumer_offsets-9, __consumer_offsets-39, __consumer_offsets-11, __consumer_offsets-31, __consumer_offsets-13, __consumer_offsets-43, __consumer_offsets-29, __consumer_offsets-1, __consumer_offsets-41, __consumer_offsets-27]
2020-02-27 09:52:03,722 - [WARN] o.a.k.c.NetworkClient - [Consumer clientId=consumer-KMOffsetCache-ac805b8c58a1-4789, groupId=KMOffsetCache-ac805b8c58a1] 25 partitions have leader brokers without a matching listener, including [__consumer_offsets-9, __consumer_offsets-39, __consumer_offsets-11, __consumer_offsets-31, __consumer_offsets-13, __consumer_offsets-43, __consumer_offsets-29, __consumer_offsets-1, __consumer_offsets-41, __consumer_offsets-27]
2020-02-27 09:52:03,825 - [WARN] o.a.k.c.NetworkClient - [Consumer clientId=consumer-KMOffsetCache-ac805b8c58a1-4789, groupId=KMOffsetCache-ac805b8c58a1] 25 partitions have leader brokers without a matching listener, including [__consumer_offsets-9, __consumer_offsets-39, __consumer_offsets-11, __consumer_offsets-31, __consumer_offsets-13, __consumer_offsets-43, __consumer_offsets-29, __consumer_offsets-1, __consumer_offsets-41, __consumer_offsets-27]
2020-02-27 09:52:03,932 - [WARN] o.a.k.c.NetworkClient - [Consumer clientId=consumer-KMOffsetCache-ac805b8c58a1-4789, groupId=KMOffsetCache-ac805b8c58a1] 25 partitions have leader brokers without a matching listener, including [__consumer_offsets-9, __consumer_offsets-39, __consumer_offsets-11, __consumer_offsets-31, __consumer_offsets-13, __consumer_offsets-43, __consumer_offsets-29, __consumer_offsets-1, __consumer_offsets-41, __consumer_offsets-27]
2020-02-27 09:52:04,047 - [WARN] o.a.k.c.NetworkClient - [Consumer clientId=consumer-KMOffsetCache-ac805b8c58a1-4789, groupId=KMOffsetCache-ac805b8c58a1] 25 partitions have leader brokers without a matching listener, including [__consumer_offsets-9, __consumer_offsets-39, __consumer_offsets-11, __consumer_offsets-31, __consumer_offsets-13, __consumer_offsets-43, __consumer_offsets-29, __consumer_offsets-1, __consumer_offsets-41, __consumer_offsets-27]

Dockerfile:

@dpajin We are seeing the same issue. I spent some time cleaning up build.sbt (e.g., "org.apache.kafka" % "kafka-streams" % "2.4.0" % "test")  and applying the following JVM settings for our deployment in a k8s cluster:
- -Djdk.nio.maxCachedBufferSize=1048576
- -Dlogger.file=/opt/kafkamanager/etc/logback.xml
- -Dpidfile.path=/dev/null
- -J-server
- -J-Xms256m
- -J-Xmx256m
- -J-Xss256k
- -J-XX:CompressedClassSpaceSize=16m
- -J-XX:ConcGCThreads=2
- -J-XX:+ExitOnOutOfMemoryError
- -J-XX:MaxDirectMemorySize=1m
- -J-XX:MinMetaspaceFreeRatio=50
- -J-XX:MaxMetaspaceFreeRatio=80
- -J-XX:MaxMetaspaceSize=108m
- -J-XX:ParallelGCThreads=2
- -J-XX:ReservedCodeCacheSize=16m
- -J-XX:+UseG1GC
- -J-XX:+UseStringDeduplication
# begin JMX
- -Dcom.sun.management.jmxremote
- -Dcom.sun.management.jmxremote.authenticate=false
- -Dcom.sun.management.jmxremote.ssl=false
- -Dcom.sun.management.jmxremote.local.only=false
- -Dcom.sun.management.jmxremote.port=9999
- -Dcom.sun.management.jmxremote.rmi.port=9999
- -Djava.rmi.server.hostname=<IP_ADDRESS>
# end JMX

We see a sharp rise in G1 Survivor usage until the heap is full. Most likely a "cache" is not implemented correctly.

Hi all, there is an inmemory cache for offset storage.  You can control it via cluster config by setting these two values:
kafkaManagedOffsetGroupCacheSize
kafkaManagedOffsetGroupExpireDays

Reduce the above two values to reduce memory consumption.

We could add off heap on disk with LRU cache to reduce memory consumption if there is enough demand.

@patelh Thanks for the reply. We set these two values to:
kafkaManagedOffsetGroupCacheSize = 10000 (the smallest allowed size)
kafkaManagedOffsetGroupExpireDays = 1 (the memory leak manifests with 10 mins)
and the leak is unaffected. The larger, default values worked without leaks in v<IP_ADDRESS>.

That is odd, there is no other cache we use.  Let me look at the kafka 2.4.0 upgrade changes in case i missed something.

@jonbuffington Looks like it is caused by kafka consumer in 2.4.0, will need to see how to disable this.

@jonbuffington try <IP_ADDRESS>

@jonbuffington please try <IP_ADDRESS>

@patelh Nice fix! So far we are not seeing the rate of growth we did with <IP_ADDRESS>. I will report back tomorrow after it has run for a day.

@jonbuffington let us know if this resolved the leak when you get a chance. ty!

@patelh Success! The large increases in heap growth is resolved.
We are looking into a smaller 5MB/hour container memory growth. This smaller growth occurs even when no clusters are configured. Unfortunately, I am not yet familiar with configuring the deployment of a Play framework app.

We have had stable k8s container memory usage after applying the following settings:
- -Djdk.nio.maxCachedBufferSize=1048576
- -Dlogger.file=/opt/kafkamanager/etc/logback.xml
- -Dpidfile.path=/dev/null
- -J-server
- -J-Xss256k
- -J-XX:CompressedClassSpaceSize=16m
- -J-XX:+ExitOnOutOfMemoryError
- -J-XX:MaxDirectMemorySize=16m
- -J-XX:MaxMetaspaceSize=108m
- -J-XX:MaxRAMPercentage=70
- -J-XX:+PerfDisableSharedMem
- -J-XX:ReservedCodeCacheSize=16m
- -J-XX:-UseBiasedLocking
- -J-XX:+UseStringDeduplication
# begin JMX
- -Dcom.sun.management.jmxremote
- -Dcom.sun.management.jmxremote.authenticate=false
- -Dcom.sun.management.jmxremote.ssl=false
- -Dcom.sun.management.jmxremote.local.only=false
- -Dcom.sun.management.jmxremote.port=9999
- -Dcom.sun.management.jmxremote.rmi.port=9999
- -Djava.rmi.server.hostname=<IP_ADDRESS>
# end JMX

Note: The above settings require JVM 10+. We are running using JDK 11. The helpful setting was XX:MaxRAMPercentage rather than setting heap directly.


Items in transit report not including "check in service point"

In the code, "check in service point" are ostensibly coming in from a couple of data.  In the returned CSV, the values are blank.

This fixes the download: https://github.com/TAMULib/mod-circulation/commit/d2ae516651bace6db40515debdf88fd083ffead9?diff=unified but does not address the cause of the nulls.

Can we confirm that this working in Nolana? I seem to remember that it is.

Column Check in service point is populated only on Nolana but not on PRE and PROD

This is considered done, as it is working in Nolana.


Inconsistent information

This page suggests to use resumable file transfers for files larger than 10MiB however the DriveItem PUT page (https://docs.microsoft.com/en-us/graph/api/driveitem-put-content?view=graph-rest-1.0) states that the max upload size is 4MB for the simple upload option.
"Use resumable file transfers for files larger than 10 MiB (10,485,760 bytes)."
and
"This method only supports files up to 4MB in size."

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

ID: c42d74d1-8c6f-5282-9fba-30fdd6449362
Version Independent ID: 88bd8f18-730d-6970-8a02-641346661404
Content: Resumable file upload - Microsoft Graph v1.0
Content Source: api-reference/v1.0/api/driveitem-createuploadsession.md
Product: sharepoint
Technology: microsoft-graph
GitHub Login: @JeremyKelley
Microsoft Alias: JeremyKelley

As part of a repository clean up effort we are closing older issues. If this issue remains, please: open a new issue, reference this issue, and provide any additional details that may help in resolution. Thank you for your understanding as we work to improve our responsiveness.


Add pagebreak

Codecov Report

Merging #272 (f754d2d) into master (7f2bd79) will not change coverage.
The diff coverage is n/a.

@@            Coverage Diff            @@
##             master     #272   +/-   ##
=========================================
  Coverage     50.66%   50.66%
  Complexity      606      606
=========================================
  Files           107      107
  Lines          2556     2556
  Branches        297      297
=========================================
  Hits           1295     1295
  Misses         1195     1195
  Partials         66       66

Continue to review full report at Codecov.

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


Allow instructors to configure an end date until which students can run automated tests

Motivation and Context

Closes #6822. Currently, MarkUs allows instructors to enable a "start date" at which students can begin running "student-run tests". Tests can be run up until the assignment due date. This pull request augments this functionality to allow the instructor to configure an end date until which students can run tests. If the end date is left blank, the existing functionality (up until assignment due date) will be used instead.
Your Changes

Description:

Performed a database migration to add a token_end_date attribute to assignment_properties.
Added a new date picker box in the automated testing view of the web UI (instructor side) that allows instructors to select the value for token_end_date.
Updated the logic by adding new policies in assignment_policy and student_policy that check for whether the student can run automated testing based on the value for  token_end_date.

Type of change (select all that apply):

[X] Bug fix (non-breaking change which fixes an issue)
[X] Breaking change (fix or feature that would cause existing functionality to change)

Testing

Manually tested whether instructors can successfully configure an end date for student autotests in the web UI.
Manually tested whether students can run or not run automated tests based on the configured token_end_date in the web UI.
Added RSpec unit tests to check for the logic mentioned above.

Questions and Comments (if applicable)

Checklist

[X] I have performed a self-review of my own code.
[x] I have verified that the pre-commit.ci checks have passed.
[ ] I have verified that the CI tests have passed.
[ ] I have reviewed the test coverage changes reported on Coveralls.
[X] I have added tests for my changes.
[X] I have updated the Changelog.md file.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>
Details

31 of 31 (100.0%)  changed or added relevant lines in 5 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.005%) to 91.789%

Totals

Change from base Build<PHONE_NUMBER>:
0.005%

Covered Lines:
39205

Relevant Lines:
42090

💛  - Coveralls


Continuity

Hi,
This project is valuable, is it continued?
A setup procedure for windows is needed....
thanks.

Hello, lahavservices.
This project is valuable, the stakeholder is @cpipero and i am maintainer. Of Couse, initail purpose for a project is secondary scool education tool, you can use it as cross platform designer and translator. I will add instruction for windows, looks for me trivial.

install arduino ide
instal mono
install gtksharp
xbuild ArduinoLadder
Configure path to ArduinoIDE and device port in ArduinoLadder.config in output build folder
Run ArduinoLadder.exe from explorer of from command line with:
mono ArduinoLadder.exe

Please ask stakeholder it is possible to add required features or give a feedback to setup feature sprint.
Thank you

Hello arise-project,
Thank you for your reply.
I'm a mechanical engineer, most of what you wrote is "Chinese" for me...

Hello, lahavservices.
I can build installer for windows and will write user guide. Is it possible to wait?
Thank you

arise-project, Do you need any help?

Hello, Matheus Monte. Do you have adruino board tor you, I can build installer we can test and I can screeshot setup for documentation. What do you think, it is possible to teamviwer to computer with board?

I created installer for tests
https://drive.google.com/file/d/0B3eddXV1Rk7YclJQWnRwVDRaTEU/view?usp=sharing
I still needed a help with arduino board to make screenshots for doc.
Thank you

Hi,
Can you help me install it on linux?
Thank you

Hello, Caterina. Sorry I am being late. Do you have any progress installing Arduino Ladder. To help you i need to know linux flawor and version, then I can send install script to you.
Thank you.
Yevhen Pyrohov


Memory spike at the end of transcription

Hello, great work! I experimented a bit with this and came across an anomaly. While transcribing George Bush Columbia talk, the memory stays around 2.5GB, but then I encounter a sudden spike beyond 3.5GB in VRAM in case of GPU usage and RAM in case of CPU usage, when using int8, when all spoken text was already out of the model. Is it due to silence at the end or some additional operations?  Would you know why this happens and how to prevent this?
!wget https://upload.wikimedia.org/wikipedia/commons/1/1f/George_W_Bush_Columbia_FINAL.ogg
model_path = "whisper-large-v2-ct2/"
model = WhisperModel(model_path, device="cuda", compute_type="int8",)
segments, info = model.transcribe("./George_W_Bush_Columbia_FINAL.ogg", beam_size=1, language="en", condition_on_previous_text=False)

The output:
...
[183.06s -> 185.82s]  are safely home.
[185.82s -> 192.62s]  May God bless the grieving families and may God continue to bless America.
['transcribe /home/ubuntu/src/faster-whisper/run.py:10', 'time_delta', 44.965]
Traceback (most recent call last):
  File "/home/ubuntu/src/faster-whisper/run.py", line 16, in <module>
    for segment in segments:
  File "/home/ubuntu/src/faster-whisper/faster_whisper/transcribe.py", line 285, in generate_segments
    result, avg_log_prob, temperature = self.generate_with_fallback(
  File "/home/ubuntu/src/faster-whisper/faster_whisper/transcribe.py", line 461, in generate_with_fallback
    result = self.model.generate(
RuntimeError: CUDA failed with error out of memory

Hi,
The last segment triggers the "temperature fallback" which runs with best_of=5 by default. Since you are using beam_size=1 you may want to use the same value for best_of:
segments, info = model.transcribe(
    "./George_W_Bush_Columbia_FINAL.ogg",
    beam_size=1,
    best_of=1,
    language="en",
    condition_on_previous_text=False,
)

Alternatively, you can also disable the temperature fallback entirely:
segments, info = model.transcribe(
    "./George_W_Bush_Columbia_FINAL.ogg",
    beam_size=1,
    temperature=0,
    language="en",
    condition_on_previous_text=False,
)


I need to know an important question.

While I know I should be asking questions on Stack Overflow, I don't think there's an answer to my question there. So sorry to post this kind of question here.
Is this project independent?
Is this project based on a derivative of Spring Security?
Or is Spring Security just the default implementation of the authentication feature for this project?
Because I found that this project has no middle layer of Spring Security and is deeply coupled with Spring Security.
I hope that the above concepts can be clarified, and it will be very helpful for me to think about related issues.

@lu-cheng as you mentioned, we do prefer to use Stack Overflow for questions like this.
Take a look at the Getting Help page in our in-progress reference documentation which has answers to your questions and links to learn more. If you have additional questions or need more clarification, feel free to update this issue with a link to an existing or new Stack Overflow question (so that other people can find it).


Allow configuration of the test reporter

The reporter for the standard tests is still spec; the one for the
gathering of code coverage is set to dot to not clutter the output
of the logfile on travis.

Thanks for any review.

LGTM

Looks good, please merge.

Cheers for the reviews.


📜 formalize list of all new components

names and descriptions of every component we need to have, examples:
<namaka-comments>
list of comments (which may also be reviews) that has a "load more" button, and sorting features
<namaka-bans>
list of users that have been banned

Sorry ive clicked discord push button when scrolling through projects xd


feat: cache contract types from deploy and explorer

What I did

Caches contract types by address in each network.
This makes it so we can easily reload contract types from address in O(1) lookup.

Also adds method get_contract_type() to the BaseModel (right above get_contract_instance() and get_contract_container())

Caches contract types from explorer when the explorer is used to fetch it.

I believe this is a necessary step for getting an environment that I can play with traces in, as it will allow me to interact locally with a more complex transaction and do the tracing from there.
How I did it
Dict[AddressType, ContractType]
How to verify it
See tests!
Checklist

[ ] All changes are completed
[ ] New test cases have been added
[ ] Documentation has been updated

Failing hypothesis test resolved by this PR: https://github.com/ApeWorX/ape/pull/711

a good add would be a lock per ecosystem-network-address to avoid bombarding etherscan with requests from different threads when they all miss the cache simultaneously

a good add would be a lock per ecosystem-network-address to avoid bombarding etherscan with requests from different threads when they all miss the cache simultaneously

We don't have threads, but this would be something to consider if running Ape in a multi-threaded environment


openwebrxplus: init at 1.2.70

Provides many more decoders than openwebrx. Can be used by setting services.openwebrx.package.

Things done

Built on platform(s)

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

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

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

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

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

[ ] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

I would be happy to maintain this package & module, for what it's worth.

Not sure if we should keep the packages local to openwebrx.

No, it's probably a direct hindrance for debugging if you do so. At least, that's what I found in the original efforts to make the package work; I had @arcnmx help me fix it up in the end as a result.

You could do a PR that sorts out the dependencies into proper packages.


Using different file and setup structure for packages

Currently, the lit components are compiled with storybook webpack configuration. In case I would like to run webpack-serve from the current lit element project (that I will bring over to packages/my-lit-project), where should I do it? Do you recommend creating custom commands to root level package.json? Also what about production builds. Would you build them in /dist/package/package-name/bundle.js or /packages/package-name/dist/?

Do you have specific recommendations to follow on package file structure. For example my project currently looks something like this like this:

/src/components/component-name.js
/src/components/component-name.scss
/src/theme/vaadin/vaadin-button.js
/src/theme/vaadin/vaadin-button.scss
/src/redux/
/templates/file.html (that put together initial component setups)

webpack-configs.js
netlify.toml
babel.config.js

Sorry about the long delay with answer. Is the question still valid?
Regarding file structure, it's up to the user. And note that Aybolit is not following any patterns used by Vaadin components, as it's not related to them.

@chanar latest thoughts on this subject?

Closing per above comment and because it's not an issue of the library itself but tooling question.


x/tools/gopls: using overlay in GOPACKAGESDRIVER fails or panics

I can't seem to figure out how to prepare the results from my GOPACKAGESDRIVER for gopls to correctly use them.  I am using overlay to simultaneously inject my own new packages and to zero out (i.e. replace with package pkgname) any files that are not in my overlay to try to get autocompletion working for TinyGo-based Go programs (which have their own "machine" "runtime" etc packages).  In the course of this, I accidentally managed to get gopls to crash.  While the input is almost certainly incorrect in some way, it seems like gopls would prefer not tp allow malformed input (from either Go source or GOPACKAGESDRIVERs) to cause it to panic.
What did you do?
I am working on trying to get a go/packages driver working for TinyGo.  My package driver performs overlays before calling out to packages.Load.  If I do this, then I see errors about not being able to open files under $GOROOT that aren't actually there, they're in an overlay.  So, I decided to translate the GoFiles, CompiledGoFiles, etc back to the original files on their way back to gopls.  This only made things even more interesting :)
What did you expect to see?
Gopls should parse the remapped files (maybe), or at least report an error message if some information is not available.
What did you see instead?
gopls crashes with a stack trace:
panic: runtime error: invalid memory address or nil pointer dereference
[signal 0xc0000005 code=0x0 addr=0x0 pc=0x674aa3]

goroutine 2200 [running]:
go/types.(*StdSizes).Sizeof(0x0, 0xbbd840, 0xfedbe0, 0xc000d5bcc0)
	c:/go/src/go/types/sizes.go:154 +0x1c3
golang.org/x/tools/go/analysis/passes/atomicalign.run(0xc003c8a960, 0xc0017a7f00, 0x0, 0xc003ca22b8, 0x1)
	C:/Users/kyle/dev/go/src/golang.org/x/tools/go/analysis/passes/atomicalign/atomicalign.go:30 +0x69
golang.org/x/tools/internal/lsp/source.(*Action).execOnce(0xc0027d03c0, 0xbc6a80, 0xc003c89900, 0xc0001dcb00, 0xc000d5bec8, 0x10)
	C:/Users/kyle/dev/go/src/golang.org/x/tools/internal/lsp/source/analysis.go:174 +0x812
golang.org/x/tools/internal/lsp/source.(*Action).exec.func1()
	C:/Users/kyle/dev/go/src/golang.org/x/tools/internal/lsp/source/analysis.go:108 +0x55
sync.(*Once).Do(0xc0027d03c0, 0xc000d5bf08)
	c:/go/src/sync/once.go:44 +0xba
golang.org/x/tools/internal/lsp/source.(*Action).exec(0xc0027d03c0, 0xbc6a80, 0xc003c89900, 0xc0001dcb00, 0xbc7380, 0xc000d5bf90)
	C:/Users/kyle/dev/go/src/golang.org/x/tools/internal/lsp/source/analysis.go:107 +0x92
golang.org/x/tools/internal/lsp/source.execAll.func1(0xc000000008, 0xb0d268)
	C:/Users/kyle/dev/go/src/golang.org/x/tools/internal/lsp/source/analysis.go:99 +0x4f
golang.org/x/sync/errgroup.(*Group).Go.func1(0xc003c7f8f0, 0xc003ca67c0)
	C:/Users/kyle/dev/go/src/golang.org/x/sync/errgroup/errgroup.go:57 +0x5e
created by golang.org/x/sync/errgroup.(*Group).Go
	C:/Users/kyle/dev/go/src/golang.org/x/sync/errgroup/errgroup.go:54 +0x6d

This corresponds to the if statement below in analysis.go:
func run(pass *analysis.Pass) (interface{}, error) {
	if 8*pass.TypesSizes.Sizeof(types.Typ[types.Uintptr]) == 64 {
		return nil, nil // 64-bit platform
	}

I checked the results that are getting sent back, and they do set TypesSizes:
{   "WordSize": 4,   "MaxAlign": 4 }
If I forcibly return from that analysis, I get a different failure further down the line:
[Trace - 12:07:16 AM] Sending notification 'textDocument/documentSymbol' in 3633ms.
Params: {"textDocument":{"uri":"file:///c%3A/Users/kyle/dev/tinygo/tests/gameboy-advance/registeroffsets/registeroffsets.go"}}

panic: interface conversion: types.Object is nil, not *types.Func

goroutine 2323 [running]:
golang.org/x/tools/go/analysis/passes/ctrlflow.run.func1(0xbbd6c0, 0xc00210c7b0)
	C:/Users/kyle/dev/xtools/go/analysis/passes/ctrlflow/ctrlflow.go:105 +0x39f
golang.org/x/tools/go/ast/inspector.(*Inspector).Preorder(0xc001896660, 0xc000d59c70, 0x2, 0x2, 0xc000d59c90)
	C:/Users/kyle/dev/xtools/go/ast/inspector/inspector.go:77 +0xa6
golang.org/x/tools/go/analysis/passes/ctrlflow.run(0xc00336a6e0, 0xc0020ed000, 0x0, 0xc00343e000, 0x223)
	C:/Users/kyle/dev/xtools/go/analysis/passes/ctrlflow/ctrlflow.go:102 +0x1a8
golang.org/x/tools/internal/lsp/source.(*Action).execOnce(0xc00327f080, 0xbc7080, 0xc0016fab80, 0xc00002b940, 0xc000d59ec8, 0x10)
	C:/Users/kyle/dev/xtools/internal/lsp/source/analysis.go:174 +0x812
golang.org/x/tools/internal/lsp/source.(*Action).exec.func1()
	C:/Users/kyle/dev/xtools/internal/lsp/source/analysis.go:108 +0x55
sync.(*Once).Do(0xc00327f080, 0xc000d59f08)
	c:/go/src/sync/once.go:44 +0xba
golang.org/x/tools/internal/lsp/source.(*Action).exec(0xc00327f080, 0xbc7080, 0xc0016fab80, 0xc00002b940, 0xc0019acb80, 0xc000d59f90)
	C:/Users/kyle/dev/xtools/internal/lsp/source/analysis.go:107 +0x92
golang.org/x/tools/internal/lsp/source.execAll.func1(0x8, 0xb0db68)
	C:/Users/kyle/dev/xtools/internal/lsp/source/analysis.go:99 +0x4f
golang.org/x/sync/errgroup.(*Group).Go.func1(0xc0007d69f0, 0xc001b69140)
	C:/Users/kyle/dev/go/pkg/mod/golang.org/x/sync@v0.0.0-20190423024810-112230192c58/errgroup/errgroup.go:57 +0x5e
created by golang.org/x/sync/errgroup.(*Group).Go
	C:/Users/kyle/dev/go/pkg/mod/golang.org/x/sync@v0.0.0-20190423024810-112230192c58/errgroup/errgroup.go:54 +0x6d

Build info
version v0.1.3, built in $GOPATH mode

Go info
go version go1.12.7 windows/amd64

set GOARCH=amd64
set GOBIN=
set GOCACHE=C:\Users\kyle\AppData\Local\go-build
set GOEXE=.exe
set GOFLAGS=
set GOHOSTARCH=amd64
set GOHOSTOS=windows
set GOOS=windows
set GOPATH=C:\Users\kyle\dev\go
set GOPROXY=
set GORACE=
set GOROOT=c:\go
set GOTMPDIR=
set GOTOOLDIR=c:\go\pkg\tool\windows_amd64
set GCCGO=gccgo
set CC=gcc
set CXX=g++
set CGO_ENABLED=1
set GOMOD=C:\Users\kyle\dev\tinygo\go.mod
set CGO_CFLAGS=-g -O2
set CGO_CPPFLAGS=
set CGO_CXXFLAGS=-g -O2
set CGO_FFLAGS=-g -O2
set CGO_LDFLAGS=-g -O2
set PKG_CONFIG=pkg-config
set GOGCCFLAGS=-m64 -mthreads -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fdebug-prefix-map=C:\Users\kyle\AppData\Local\Temp\go-build437939018=/tmp/go-build -gno-record-gcc-switches

I agree that we should probably handle nil pointers in go/analysis a bit better, as these do seem to happen fairly often.
However, I'm not sure on how to help with the overlay issue - is there a way we can reproduce this to help you investigate? I'm not surprised that gopls would crash with a replaced standard library, but if you could report the issues you saw with the files not being found, that would be helpful as well.

I've added an example of this as kylelemons/gopls33727 -- though along the way, it looks like the panic that I'm getting might not actually relate to the overlay.  If you comment out the overlay environment variable and replace MaxInt with something that exists like Max, I still see the same panic.

I'm sorry for the delay on replying to this; it must have slipped my notice. @kylelemons: Is this still an issue for you?

It's not a problem for me at the moment in a sense because I haven't had a chance to hack on the project that was making use of this (making a gopackagesdriver for working within tinygo) recently.

We do now have a recover in analysis, so I expect that panic should be resolved. Are there still issues related to overlays here? gopls has changed a great deal since August, so I imagine that this may be obsolete now.

Closing this as, based on https://github.com/golang/go/issues/33727#issuecomment-524696070, the recover in analysis was all that was needed to make this work. @kylelemons: Please open a new issue if you're still encountering issues.


Legalization bugs when cells in a macro are placed across clock region

INFO: [DRC 23-27] Running DRC with 8 threads
ERROR: [DRC CASC-31] Cascade crosses rbrk: The RAMB36E2 cell design_1_i/DigitRec_0/inst/test_set_V_U/DigitRec_test_set_V_ram_U/ram_reg_bram_11 is cascaded in series to expand the RAMB depth, however the cascade connection crosses a Clock Region. The pin design_1_i/DigitRec_0/inst/test_set_V_U/DigitRec_test_set_V_ram_U/ram_reg_bram_11/CASOREGIMUXA is connected to an ACTIVE net (design_1_i/DigitRec_0/inst/test_set_V_U/DigitRec_test_set_V_ram_U/ram_reg_bram_1_i_1_n_6). This causes a potential hold violation on the dedicated cascade paths between the RAMBs that cannot be corrected. This creates an invalid timing situation. Please take steps to ensure placement of the cascaded RAMB remains inside a single Clock Region or else choose a different implementation style for this RAMB in order to prevent the need for cascading across a Clock Region or the use of this pin.
ERROR: [DRC CASC-31] Cascade crosses rbrk: The RAMB36E2 cell design_1_i/DigitRec_0/inst/test_set_V_U/DigitRec_test_set_V_ram_U/ram_reg_bram_11 is cascaded in series to expand the RAMB depth, however the cascade connection crosses a Clock Region. The pin design_1_i/DigitRec_0/inst/test_set_V_U/DigitRec_test_set_V_ram_U/ram_reg_bram_11/CASOREGIMUXEN_A is connected to an ACTIVE net (design_1_i/DigitRec_0/inst/regslice_both_input_V_U/obuf_inst/test_set_V_ce0). This causes a potential hold violation on the dedicated cascade paths between the RAMBs that cannot be corrected. This creates an invalid timing situation. Please take steps to ensure placement of the cascaded RAMB remains inside a single Clock Region or else choose a different implementation style for this RAMB in order to prevent the need for cascading across a Clock Region or the use of this pin.
ERROR: [DRC CASC-31] Cascade crosses rbrk: The RAMB36E2 cell design_1_i/DigitRec_0/inst/test_set_V_U/DigitRec_test_set_V_ram_U/ram_reg_bram_9 is cascaded in series to expand the RAMB depth, however the cascade connection crosses a Clock Region. The pin design_1_i/DigitRec_0/inst/test_set_V_U/DigitRec_test_set_V_ram_U/ram_reg_bram_9/CASOREGIMUXA is connected to an ACTIVE net (design_1_i/DigitRec_0/inst/test_set_V_U/DigitRec_test_set_V_ram_U/ram_reg_bram_1_i_1_n_6). This causes a potential hold violation on the dedicated cascade paths between the RAMBs that cannot be corrected. This creates an invalid timing situation. Please take steps to ensure placement of the cascaded RAMB remains inside a single Clock Region or else choose a different implementation style for this RAMB in order to prevent the need for cascading across a Clock Region or the use of this pin.
ERROR: [DRC CASC-31] Cascade crosses rbrk: The RAMB36E2 cell design_1_i/DigitRec_0/inst/test_set_V_U/DigitRec_test_set_V_ram_U/ram_reg_bram_9 is cascaded in series to expand the RAMB depth, however the cascade connection crosses a Clock Region. The pin design_1_i/DigitRec_0/inst/test_set_V_U/DigitRec_test_set_V_ram_U/ram_reg_bram_9/CASOREGIMUXEN_A is connected to an ACTIVE net (design_1_i/DigitRec_0/inst/regslice_both_input_V_U/obuf_inst/test_set_V_ce0). This causes a potential hold violation on the dedicated cascade paths between the RAMBs that cannot be corrected. This creates an invalid timing situation. Please take steps to ensure placement of the cascaded RAMB remains inside a single Clock Region or else choose a different implementation style for this RAMB in order to prevent the need for cascading across a Clock Region or the use of this pin.
INFO: [Vivado_Tcl 4-198] DRC finished with 4 Errors
INFO: [Vivado_Tcl 4-199] Please refer to the DRC report (report_drc) for more information.
ERROR: [Vivado_Tcl 4-23] Error(s) found during DRC. Placer not run.
INFO: [Common 17-83] Releasing license: Implementation
9 Infos, 0 Warnings, 0 Critical Warnings and 5 Errors encountered.
place_design failed
place_design: Time (s): cpu = 00:00:33 ; elapsed = 00:00:16 . Memory (MB): peak = 12107.438 ; gain = 681.867 ; free physical = 5118 ; free virtual = 26935
ERROR: [Common 17-39] 'place_design' failed due to earlier errors.
while executing

"place_design"
(file "/home/tingyuan/Documents/AMF-Placer/build/dumpData_digitRecognition/DumpCLBPacking-first-0.tcl" line 543053)

Problem is fixed in AMF-Placer 2


[📖] /brand page to share Qwik Logo

Suggestion
we should have a /brand page to include qwik brand things like the logo

+1

#6798  pretty  much finish only need some review and make sure there no perf regression

this was merged by https://github.com/QwikDev/qwik/pull/6798


Add stream configuration options to KSML Runners

The current KSML runners are very different with configuration options for the backing Kafka Streams implementations.
A uniform configuration approach is needed to allow for easy and scalable deployments of KSML.
See Kafka Streams Configs for the available configurations
Several of these configurations are required for proper scaling/behaviour in production.
At first I see these items as needed for deployments, based on past experience with cloud and kubernetes deployments:

group.instance.id
num.standby.replicas
acceptable.recovery.lag
cache.max.bytes.buffering
max.task.idle.ms
max.warmup.replicas
num.stream.threads
processing.guarantee
rack.aware.assignment.tags
task.timeout.ms
buffered.records.per.partition
commit.interval.ms
connections.max.idle.ms
metadata.max.age.ms
request.timeout.ms

Fixed as part of #81


Bigger is greater

Solved issue #210
In Language- (C++)

[x] Updated README Link

[x] Added code with comments

Please place it in Algorithms/Implementation

@adityabisoi kindly check this

Can I do these changes? because I didn't create that folder

@satyampandeygit Yes, do the changes

done kindly see


(NoJIra) re-apply Vienna math scala

Re-apply the base vienna math module after its removal for 0.12.2 release.  This patch includes base directory, pom.xml, headers and simple passing hello world tests in both vienna and math-scala dirs.

so the decision is to take and include all VCL code in the build?

Yes I'd thought it would be be easiest originally, in order to preserve the tree structure and since I didn't know yet didn't know yet exactly what we classes we were going to be using.  @smarthi had concerns about this being too much code also.  And looking closer the sources are much larger than I'd thought. I'd thought that I'd commit the whole thing first and then remove what wasn't used, but in the long run I guess its better to add them only as they are they are needed.

wouldn't it be perhaps a better strategy to ask user to have their own
build of VCL? VCL is under development, it will morph a lot, we will have
to support a fixed release of it?
On Tue, Jun 14, 2016 at 3:04 PM, Andrew Palumbo<EMAIL_ADDRESS>wrote:

Yes I'd thought it would be be easiest originally, in order to preserve
the tree structure and since I didn't know yet didn't know yet exactly what
we classes we were going to be using. @smarthi
https://github.com/smarthi had concerns about this being too much code
also. And looking closer the sources are much larger than I'd thought. I'd
thought that I'd commit the whole thing first and then remove what wasn't
used, but in the long run I guess its better to add them only as they are
they are needed.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/apache/mahout/pull/242#issuecomment-226030200, or mute
the thread
https://github.com/notifications/unsubscribe/AAf7_6FT2LatiYArxpDcCqIyTMNZSAa4ks5qLyVfgaJpZM4I0vVT
.


[Improvement] Sage 3 - Copy Button Functionality Updates

Description

The Copy Button component calls for the following additions for Sage 3:

New variation of input/value field with a floating label
Updated JS settings to account for prefixes, suffixes, and concatenation

Design

Figma
Additional Information

#520 - Original Sage 3 issue
#843 - Initial Sage 3 styling updates addressed here.

Moved to Jira: https://kajabi.atlassian.net/browse/UXD-103


Standardised accessors, added modifiers and tools for code-gen

This PR combines a few different enhancements that generally clean up the code and a few that are required to get my code generation code to work but which I thought would be nice to have upstream:

Standardises child element storage/access

all child members are now stored in dictionaries named _aliases, _parameters, _on_events, etc,
dictionaries are keyed either by the name of the child element or its identifying characteristic (e.g. the trigger expression for OnCondition)
iterators are provided to child element values, e.g. aliases, parameters, on_events, and their keys, alias_names, parameter_names, on_event_port_names
lookup by key is provided for each child member type by alias('name'), parameter('name'), on_event('port_name'), etc.

Generic lookups to child element dictionaries are provided by class_to_member dictionaries in each class that has child members, mapping the type of child element to the appropriate member dictionary. Using this I have written generic methods

add - add new child element to the appropriate dictionary (which is found by the type of the child element)
remove - removes a child element from the appropriate dictionary
__contains__ - tests to see whether an element (or a name) is used within the child member container
__iter__ - provides an iterator over all child elements (most visitors now use this iterator, which should make them easier to update)

index_of - generates and stores an index for a child member on demand. Useful for code generation where you would like to refer to an object via a unique index
added methods for to each component class type that call the corresponding visitor:

__copy__ -> *ClonerVisitor (although not sure whether __deepcopy__ is more appropriate)
rename_symbol -> *RenameSymbol
required_for -> *RequiredDefinitions. This is a new visitor I have created to determine which expressions (aliases, ports, etc) are required for any given expression. Particularly useful for code generation

Just checked that this branch works with the Brunel Model. To do so I had to push some more changes to my code generation and pyNN branches

Also implemented __getitem__ for convenient access to members by name only (would not be recommended way to access them in production scripts but useful for prototyping and debugging)


New ideas

Hi Marcel,
I'd like your ideas for the functionality extension.
Do you plan to build a new version this year?

I managed to add

Number of Dumps (st22)
Number of critical syslog issues (sm21)
Number of failed/pending IDOCs (we02)

Kindly check it out ;).
I might add further metrics based on customer feedback.


How to provide arguments to dotnet script exec?

Consider the following script:
if (Args.Count > 0)
{
   Console.WriteLine(Args[0]);
}
else
{
   Console.WriteLine("args missing");
}

Without publish/exec, I can provide arguments as follows:
C:\>dotnet script foo.csx
args missing

C:\>dotnet script foo.csx a
a

C:\>dotnet script foo.csx -- a
a

However with publish/exec, I am unable to:
C:\>dotnet script publish foo.csx --dll
Published C:\foo.csx to C:\publish\foo.dll

C:\>dotnet script exec publish\foo.dll
args missing

C:\>dotnet script exec publish\foo.dll a
Unrecognized command or argument 'a'

C:\>dotnet script exec publish\foo.dll -- a
args missing

@Sharpiro Any thoughts on this?

thanks for the report, it was fixed in #333. We will release 0.26.1 soon

@mbp LETS GO