[KBM] - Edit Shortcuts and Edit Keyboard UI is not scrollable

If the user creates many remappings, the controls overflow and the window is not currently scrollable to adjust this.
A quick fix might be to enable scrolling on the C++ window (but it won't appear fluent) but I'm not sure if this applies to Xaml islands.
The best way to fix it is to shift to a list view as tracked in #2170

I say this is build, but lower priority.

I was wondering the following: can't we treat the ListView in the XAML settings as the overview of remapped keys/shortcuts and the KBM windows as the 'dialog'that allows the user to update the remapping?
This means, if the user presses on 'Remap a key', this opens as a dialog eith a simple UI to do this. Saving it would update the ListView in settings.
By selecting a remapping in the ListView the dialog opens so the user can update the remapping.
Deleting one can then be done in the settings listview as well.
I think this would make the UX better and less confusing. Not sure if it's technically feasible though. Thoughts?

@niels9001 We also want to keep the Type key / Type shortcut option and currently we had to implement that on the C++ side because it is heavily tied in to a Low level keyboard hook in order to work for all keys on the keyboard. We plan to decouple these as much as possible in the future and move it to XAML (since right now we have added all the WinUI controls in C++ without XAML). We may consider moving some of those controls to the settings UI as well. The current Remap a key window and the actual keyboard remapping backend run on the same process so that makes alot of communication between the two simpler. Moving it over to the Settings UI would make it a bit harder in terms of implementation.
I like the concept though of the UI for a single row, but if someone wanted to bulk add or remove remaps that might become a bit more cumbersome? @saahmedm thoughts? I think these are all after v1 tweaks though.

@arjunbalgovind Thanks for the clarification :)!
Maybe as an easy fix: can we enable the C++ scrollbar (you mentioned it won't look Fluent?). Hopefully most users won't see it (if it's set to Auto?) if we optimize the UI a bit:

This is a quick mock-up, and should be possible (this is only out-of-the-box WinUI without any styling) with the code we have now. It would replace the 'Type shortcut' buttons with small clickable icon buttons saving valuable vertical space (we can use a tooltip to show what the button does).
This would allow way more items to be shown without any scrolling!

I really like the UI tweaks visually with the keyboard icon. But I'd like the "keyboard" icon to be a lot more prominent however, as hopefully its the main method of creating shortcuts / remapping keys. @crutkas wdy think
I'm of the contrary opinion on integrating the KBM windows as dialog, as obv this will only get more complex (with app-specific options, registry vs in-process, etc) with a whole host of user options. I know the UX can get confusing, so I need to do more thinking here.
@arjunbalgovind yes, I'd say these tweaks are post-v1.

Love it. If I see the xaml, we can get it to code generated easily.

I really like the UI tweaks visually with the keyboard icon. But I'd like the "keyboard" icon to be a lot more prominent however, as hopefully its the main method of creating shortcuts / remapping keys. @crutkas wdy think
I'm of the contrary opinion on integrating the KBM windows as dialog, as obv this will only get more complex (with app-specific options, registry vs in-process, etc) with a whole host of user options. I know the UX can get confusing, so I need to do more thinking here.
@arjunbalgovind yes, I'd say these tweaks are post-v1.

@crutkas The above concept was a quick image mock-up. Here's a XAML version:

XAML for the row:
 <StackPanel Height="56" Orientation="Horizontal" Spacing="6">             <ComboBox Width="140" VerticalAlignment="Center" />             <Button Content="" FontSize="18" FontFamily="Segoe MDL2 Assets" ToolTipService.ToolTip="Type shortcut" Background="Transparent"/>             <ComboBox VerticalAlignment="Center" Width="140" Margin="64,0,0,0" />             <Button Content="" FontSize="18" FontFamily="Segoe MDL2 Assets" ToolTipService.ToolTip="Type shortcut" Background="Transparent" />             <Button Content="" FontSize="18" FontFamily="Segoe MDL2 Assets" Background="Transparent" Margin="48,0,0,0"/>         </StackPanel>
If I look at the C++ code, we could easily fix translate this, right? Happy to help with that.
@saahmedm I see your point. What if we keep the background color of the button (or use the AccentButtonStyle to emphasize?

I like that!!

@saahmedm The scrollable part has been fixed, however the suggestions that @niels9001 has proposed have not been added in yet. Do we just create a separate issue for that and close this one?

Yup, made new issue.


Chuck Norris is uninitialized

When I try to make a Chuck Norris joke, this is what I get:
[1] Pry(main)> require 'faker' => true
[2] Pry(main)> Faker::ChuckNorris.fact NameError: uninitialized constant Faker::ChuckNorris from (pry):2:in __pry__'
(I'd put a Chuck Norris joke here but I'm not witty enough to make one)

@stympy
Needs version bump.
1.6.3  doesn't include Faker::ChuckNorris or Faker::Crypto

The README indicates that it describes the master branch, not the latest release.  You can find the README for the latest gem version here: https://github.com/stympy/faker/tree/v1.6.3


Logger used before being bootstrapped

Is there an existing issue for this?

[X] I have searched the existing issues

What happened?
This issue is happening on agent / operator startup. The log object in pkg/option/config.go is used before it is properly initialized. This results in logs not being properly formatted.
For example if we start the agent with --log-opt='format=json', the very first logs emitted by the agent are still formatted as k/v values:
$ kubectl logs cilium-agent-qgz98 | head
level=info msg="Memory available for map entries (0.003% of<PHONE_NUMBER>6B): 165519267B" subsys=config
level=info msg="option bpf-ct-global-any-max set by dynamic sizing to 290384" subsys=config
level=info msg="option bpf-neigh-global-max set by dynamic sizing to 524288" subsys=config
level=info msg="option bpf-sock-rev-map-max set by dynamic sizing to 290384" subsys=config
{"level":"info","msg":"  --agent-health-port='9879'","subsys":"daemon"}
{"level":"info","msg":"  --agent-labels=''","subsys":"daemon"}
{"level":"info","msg":"  --agent-not-ready-taint-key='node.cilium.io/agent-not-ready'","subsys":"daemon"}

This is due to the fact that the option.DaemonConfig.Populate() method is called before the logger is initialized and it is logging various things in there.
It's happening in the Operator here and in the Agent here.
It's kind of a chicken-and-egg problem because the Populate method is actually parsing the LogOpt values here so we can't really initialize the logger before the LogOpts are parsed.
Not sure what would be the best fix here, maybe we can parse only the LogOpts right away, setup the loggers afterwards and only then process all the other logic?
Cilium Version
Daemon: 1.13.9 a65bfca8cc 2023-11-29T14:19:04-07:00 go version go1.20.11 linux/arm64
Kernel Version
5.15.0-1050-aws
Kubernetes Version
Server Version: version.Info{Major:"1", Minor:"26+", GitVersion:"v1.26.6", GitCommit:"219d3257e999424d258e7e3bbd3afc1979bba8e4", GitTreeState:"clean", BuildDate:"2023-07-05T10:36:16Z", GoVersion:"go1.19.10", Compiler:"gc", Platform:"linux/arm64"}
Sysdump
No response
Relevant log output
No response
Anything else?
No response
Code of Conduct

[X] I agree to follow this project's Code of Conduct

Very good find :-). Thanks!

Not stale!

Still fresh!

Still an issue on 1.14.13


Automate source terms in FEM

When you solve an ODE (pointwise) using the FEM the variable on the lhs is multiplied by the mass matrix upon discretisation. If you wrap the rhs in pybamm.source then it also gets multiplied by the mass matrix so everything is fine. However, it would be easy to miss this. We should either NOT multiply the lhs by the mass matrix OR automate adding pybamm.source where it is needed.
See this example
import pybamm

class Model(pybamm.lithium_ion.BaseModel):
    def __init__(self, name="2+1D test"):
        super().__init__({"dimensionality": 2}, name)

        i = pybamm.PrimaryBroadcast(1, "current collector")
        a = pybamm.Variable("a", domain="current collector")
        b = pybamm.Variable(
            "b",
            domain="negative electrode",
            auxiliary_domains={"secondary": "current collector"},
        )
        c = pybamm.Variable("c", domain="current collector")

        self.rhs[a] = i
        self.rhs[b] = pybamm.PrimaryBroadcast(i, "negative electrode")
        self.rhs[c] = pybamm.source(i, c)

        self.initial_conditions[a] = pybamm.Scalar(0)
        self.initial_conditions[b] = pybamm.Scalar(0)
        self.initial_conditions[c] = pybamm.Scalar(0)

        self.variables = {
            "a": a,
            "b": b,
            "c": c,
            "b_av": pybamm.x_average(b),
            "true": i * pybamm.t,
        }

    def new_empty_copy(self):
        return pybamm.BaseModel.new_empty_copy(self)

model = Model()
var = pybamm.standard_spatial_vars
var_pts = {
    var.x_n: 3,
    var.x_s: 3,
    var.x_p: 3,
    var.r_n: 3,
    var.r_p: 3,
    var.y: 3,
    var.z: 3,
}
sim = pybamm.Simulation(model, var_pts=var_pts)
sim.solve([0, 3600])
sim.plot(["a", "b_av", "c", "true"])

a gives the wrong result, but b and c are correct (because b has domain negative electrode it is discretised by FVM and because c uses source)

This was the cause of the problem in #1399 where we had an ODE for the concentration at each point (y,z)

Is the problem that the mass matrix always assumes everything is a laplacian unless you wrap it in source?

It’s because you expect to end up with discretised equations of the form M*dc/dt = K*c + M*s, where the stiffness matrix K comes from the laplacian.  We automatically put the M on the lhs but need to use source to get the M on the rhs.
It’s not a huge deal to do this manually atm moment, but it is confusing. If/when we add more spatial methods we’ll have to think a bit more carefully about issues like this.

Hi! Seems interestihng. Should I take this up?


Use PSR-17 factory from Guzzle/psr7 2.0

http-interop/http-factory-guzzle recommends to use PSR-17 implementation from guzzlehttp/psr7 if we can use version ^2.0. Since it matches our dependencies, I replaced old package with the new one.
Users can still use http-interop/http-factory-guzzle if they add it manually.
Closes #3105

Coverage remained the same at 100.0% when pulling 45607c9d110c5290618c8b6d478fc2fc724a7f53 on t0mmy742:support_guzzle_psr17_2_0 into c43151423b96969a3a808b0b69ae67a19f632e61 on slimphp:4.x.

This shouldn’t break any downstream projects since they would already have Guzzle PSR-7 which includes the Psr17 factories correct?

@l0gicgate Since we dropped support for guzzlehttp/psr7:^1.0 and updated to ^2.0, people using this PSR-7 provider already have PSR-17 factory.
If keeping http-interop/http-factory-guzzle is something wanted, people already installed it manually since it's not in our requirement packages.
TODO: We should update README file to specify version of supported PSR-7 providers.

On version (current / 4.8.1 release)  not yet update.
https://github.com/slimphp/Slim/blob/c8934c35d9d98b1a1df9f99ee69b77a59e0aa820/Slim/Factory/Psr17/GuzzlePsr17Factory.php#L15
Any info about released from current master?

@ArrayIterator just release 4.9.0 which features the changes.


Use Escape key to cancel small inline edit

Perfect idea, thanks man!

No problem, thank you for merging.


(packaging) Update beaker and install methods

The latest beaker release includes new install utilities that enable
less reliance on correctly guessing the path to artifacts staged on
builds.delivery.puppetlabs.net. This commit updates the puppet tests to
use these new install utilities.

Currently testing with fedora 25 at https://jenkins-master-prod-1.delivery.puppetlabs.net/job/platform_puppet-agent_intn-van-sys_suite-daily-puppet-ad-hoc/SLAVE_LABEL=beaker,TEST_TARGET=fedora25-64a/40/console

The 5.2.x branch is about to vanish in favor of 5.3.x as soon as 5.2.0 goes out the door. This should probably be targeted at Master or 4.10.x, depending on where it needs to end up when all is said and done.

@kevpl these are the changes I needed to make to get beaker tests working.
@McdonaldSeanp @johnduarte these are my changes!

I updated the branch also, I haven't run through tests against puppet-agent 1.10.x yet though

CLA signed by all contributors.

We still have to update the beaker method to take a hostname, but here I've set it so users can override builds.delivery.puppetlabs.net by setting DEV_BUILDS_URL

I've updated this PR to look like what I think it should look like. It's blocked on https://github.com/puppetlabs/beaker-puppet/pull/16 to add in the ability to limit the hosts the install command is run on.

Successful test https://jenkins-master-prod-1.delivery.puppetlabs.net/view/puppet-agent/view/ad-hoc/job/platform_puppet-agent_intn-van-sys_suite-daily-puppet-ad-hoc/45/

Oh wait, there are a few more updates I need to make before this is merged

Beaker passed with https://jenkins-master-prod-1.delivery.puppetlabs.net/view/puppet-agent/view/ad-hoc/job/platform_puppet-agent_intn-van-sys_suite-daily-puppet-ad-hoc/49/


fix(clerk-js): Use redirectWithAuth after multi session signOut

Type of change

[x] 🐛 Bug fix
[ ] 🌟 New feature
[ ] 🔨 Breaking change
[ ] 📖 Refactoring / dependency upgrade / documentation
[ ] other:

Packages affected

[x] @clerk/clerk-js
[ ] @clerk/clerk-react
[ ] @clerk/nextjs
[ ] @clerk/remix
[ ] @clerk/types
[ ] @clerk/themes
[ ] @clerk/localizations
[ ] @clerk/clerk-expo
[ ] @clerk/backend
[ ] @clerk/clerk-sdk-node
[ ] @clerk/shared
[ ] @clerk/fastify
[ ] @clerk/chrome-extension
[ ] gatsby-plugin-clerk
[ ] build/tooling/chore

Description

[ ] npm test runs as expected.
[ ] npm run build runs as expected.

This PR persists the session when the user is being redirected from the app to the accounts page.
Uses redirectWithAuth in order to inject the session JWT into the URL and the accounts app to pick it up.
Before
https://user-images.githubusercontent.com/19269911/235620593-7fb7521c-87e1-478a-9e04-ed1df96f313b.mov
After
https://user-images.githubusercontent.com/19269911/235620504-ffde5c08-b484-46f9-aee4-313274f9c4b9.mov

❓ What does this change fix? If we make this change i think we should also apply it to the navigateAfterSignOut  and navigateAfterSwitchSession.

I updated description with before and after videos + minor description.
Are we sure we want to use redirectWithAuth to navigate to afterSignOutUrl and/or afterSwitchSessionUrl. These will be configured by the developer, should we allow any external url to be injected with the session JWT  ? Whereas the displayConfig.afterSignOutOneUrl comes from FAPI a trusted source
Will it be more secure if I rewrite the code to this
  const navigateAfterMultiSessionSingleSignOut = () => {
     ctx.afterMultiSessionSingleSignOutUrl
        ? () => navigate(ctx.afterMultiSessionSingleSignOutUrl)
        : () => Clerk.redirectWithAuth(displayConfig.afterSignOutOneUrl)
  }


stroke_options not working

Ciao Daniele, ti scrivo in inglese cosi magari puo' essere utile anche ad altri.
I have a new Maplace with these settings
new Maplace({
locations: locations,
map_div: '#gmap-route',
generate_controls: false,
//controls_type: 'list',
show_markers: true,
type: 'directions',
draggable: true,
directions_panel: '#route',
styles: styles,
stroke_options: {
strokeColor: '#161616',
strokeOpacity: 0.8,
strokeWeight: 20,
fillColor: '#161616',
fillOpacity: 0.4
},
map_options: {
scrollwheel: false,
zoom: 8
},
afterRoute: function(distance) {
jQuery('#km').text(': '+(distance/1000)+'km');
}
}).Load();
But stroke options doesn't work at all. I have looked everywhere but I can't find a solution to this. The documentation says it should work with type: directions. Can you spot if I'm doing anything wrong?
Grazie
Jeff

If you try this it will work.
I've commented out the variable styles as is not part of your example.
new Maplace({
  locations: LocsB,
  map_div: '#gmap-route',
  generate_controls: false,
  //controls_type: 'list',
  show_markers: true,
  type: 'directions',
  draggable: true,
  directions_panel: '#route',
  //styles: styles,
  stroke_options: {
    strokeColor: '#161616',
    strokeOpacity: 08,
    strokeWeight: 20,
    fillColor: '#161616',
    fillOpacity: 04
  },
  map_options: {
    scrollwheel: false,
    zoom: 8
  },
  afterRoute: function(distance) {
    //$('#km').text(': '+(distance/1000)+'km');
  }
}).Load();

I've just realised that there's no support for stroke options by Google using directions.
FYI https://groups.google.com/forum/#!topic/google-maps-js-api-v3/I9J1McAcEIY

Oh I see, that's why. Thank you for looking into it anyway.


Emtpy table field not handled properly

Hi,
The following table definition renders 'Desc01' to the 'Default' column in Confluence.
Deleting the table header (which is think is invalid in markdown) "solves" the problem.

Property
Default
Description

A

Desc01

Thanks for your work!!
Peter

Hi @nagper
thanks for feedback, I'll check soon

Hi @nagper
I added unit test to check your issue but it seems work well
could you give me further details ?

Hi @bsorrentino ,
Thanks for taking care of my bug report.
I did a small test project just to reproduce this scenario from scratch:
https://github.com/nagper/maven-confluence-plugin-issue264
The steps I've reproduced the issue:

started a fresh confluence install in a docker container (user atlassian/confluence inage from docker hub)
issued mvn -N confluence-reporting:deploy@readme from the project's root dir.

The result:

Let me know please if i can test anything more.
Regards,
Peter

fix released in version 7.5


[WIP] Auth refresh error check

Which issue this PR addresses:
Fixes 8440740
What this PR does / why we need it:
Should check for AADSTS700016 and TokenRefreshError whenever refreshing authorizer.
Test plan for issue:
Run existing E2Es
Is there any documentation that needs to be updated for this PR?
No

My latest changes to my branch are missing from this PR for some reason: https://github.com/Azure/ARO-RP/compare/master...nilsanderselde:auth-refresh-error-check
I may need to open a new PR to fix it. All I did was add two commits, push, git rebase upstream/master, and force push... Never seen this before.
It says I just have one commit in the PR.


Datetime object of an NFL Game do not contains "time".

Describe the bug
Datetime object of an NFL Game do not contains "time".
To Reproduce
Sample code which causes an issue.
>>> schedule_nwe = Schedule("NWE")
>>> print(schedule_nwe[0].datetime)
2020-09-13 00:00:00

Expected behavior
When requesting for a datetime of a game I expect to have date and time of the game.
Screenshots
If applicable, add screenshots to help explain your problem.

Desktop (please complete the following information):

OS: Windows 10 / script running on Windows Subsystem for Linux (WSL) / python 3.6.9
Sportsreference Version: 0.5.2

Additional context
https://www.pro-football-reference.com/teams/nwe/2020.htm

Our team @ISD14-LNMIIT wants to work on this issue. Please assign this issue to us!
@fx182ch

Hey @fx182ch, thanks for bringing this up! Correct, the time is not included with the NFL schedules. The package actually pulls data from a different location on the website for each team (the gamelog for the Patriots for example). While the gamelog has additional high-level information for each team that is useful in the stats, it actually doesn't include the scheduled start time on the page. This is a limitation of the sports-reference.com gamelogs and unfortunately this can't be changed unless the source for the Schedule module is changed which would sacrifice the other high-level information that some look for in the schedules. As a result, I don't think an update can be made here given the structure of the site, but if the game times are added to the gamelogs, I would be very happy to make that change to the package. For now, I will close this issue. Thanks again for bringing this up!


HUDS.TF links no longer working

Hey there!
HUDS.TF shut down (at least the website) on 1/30. On the settings page (https://uncledane.com/settings), the budhud and rayshud links no longer work.
There is now an alternative, hosted by mastercoms (https://comfig.app/huds/1/). The two huds can be found on there below:

budhud: https://comfig.app/huds/page/budhud/
rayshud: https://comfig.app/huds/page/rayshud/

Alternatively, you could also link to the GitHub sites:

budhud: https://github.com/rbjaxter/budhud
rayshud: https://github.com/raysfire/rayshud

@rbjaxter Thanks, these have been updated :+1:


Add ability to rename (set a name for) a project

Why would you want to add such kind of complexity in this package? In my opinion the project names should be simply a string with list of folders in this project.

Currently, that is exactly what the project name is. It's just path.basename over each project folder joined with commas.
This was just an idea to be able to add an explicit name. I wouldn't use it myself, but maybe someone wants it.
Project-plus is supposed to extend projects however it can if it adds value. If you or anyone else has any ideas, that's what this issue board is for.

@mehcode BTW I just want to ask you, what do you think about support external project configuration, for instance if project contains project.json or project.yml etc. we can just load it and apply to current project. Something like http://editorconfig.org/
This way we can keep atom-project-plus clean and simple

@shemerey I'm not sure what exactly you're asking. What kind of configuration / etc.
When doing something like this we need to remain aware of the project vs. project folder distinction.

There is a package -- project-view -- which reads in a name from bower/package/etc. and replaces tree view folder / project folder name with it.

On what's possible ..  there is a json document that is stored per project in atom. This is what project-plus reads from to load the project. And what it reads from to find projects. We can extend this json document however we want with project specific configuration (if we can figure out what exactly we want to configure per-project). We could even have a command to open the JSON document for manual editing (if that is needed/desired).

Yes it's better to define what kind of behavior will be expected. I was thinking about atom - per - project setup. For instance you have project where you want to use specific version of rubocop or enable/disable some packages.
for me it looks like
{
 project: {
   name: 'Some New Node',
   packages:[{
     name: 'linter',
     enable: false
  }]
 }
}

again I think it needs some time to rethink, I just found an old discussion about Layered Configuration
 might be it's can be useful

On configuration.. reading more into atom we can already do per-scope (language) configuration (eg.. enable a python package only when in a python file or make the font size 24pt when in a javascript file).
If we want per-project configuration.. it seems possible. We'd add a Project Plus: Open Project Config  command. This would open a JSON document of the current project configuration.. that would be editable (much like the Application: Open Your Config command).
I'm currently seeing (what I think is) a big problem that I can't think past. If you've applied any project-specific configuration and you go to edit the global/default configuration (in the normal settings menu or in any command that adjusts the config, like the toggle menu bar shortcut), atom would save the project-specific configuration as the new global/default configuration. As project-manager (the current "big" project package) implements what I'm talking about and also has this issue .. I don't think it's something we can solve without implementing a project specific configuration API into atom proper.

Add project specific configuration in project-plus with the above drawback (with perhaps a clear disclaimer).

Submit a PR for a project specific configuration API to atom core. This wouldn't be that complicated.

When the PR lands, use the new API in project-plus -- if it's available -- otherwise keep the shimmed one (until the PR makes its way into a stable atom version).

Of course.. we could just do 2 and skip trying to shim it into project-plus.

2 and 3 Looks good, as for me it make sense to move project specific configuration to atom core, since atom cares about projects.

This is possible via projects.cson


python3Packages.aioshelly: 0.5.3 -> 0.5.4

Motivation for this change
Update to latest upstream release 0.5.4
Change log: https://github.com/home-assistant-libs/aioshelly/releases/tag/0.5.4
Things done

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

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

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

Result of nixpkgs-review pr 110482 run on x86_64-linux 1

3 packages built:

python37Packages.aioshelly
python38Packages.aioshelly
python39Packages.aioshelly

Result of nixpkgs-review pr 110482 run on x86_64-linux 1

3 packages built:

python37Packages.aioshelly
python38Packages.aioshelly
python39Packages.aioshelly


Cleanup list fields

What type of PR is this?

Uncomment one (or more) /kind <> lines:

/kind bug

/kind cleanup

/kind design

/kind documentation

/kind failing-test

/kind feature

Any specific area of the project related to this PR?

Uncomment one (or more) /area <> lines:

/area build

/area driver-kmod

/area driver-ebpf

/area libscap

/area libsinsp

/area tests

/area proposals

What this PR does / why we need it:
Which issue(s) this PR fixes:

Fixes #
Special notes for your reviewer:
Does this PR introduce a user-facing change?:

Add built-in support for pretty-printing fields that can be used across programs.

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: mstemm
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS [mstemm]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

Thanks for your pull request. Before we can look at it, you'll need to add a 'DCO signoff' to your commits.
:memo: Please follow instructions in the contributing guide to update your commits with the DCO
Full details of the Developer Certificate of Origin can be found at developercertificate.org.
The list of commits missing DCO signoff:

de6e2de Squash w Use filter_fieldclass_info::as_string to prnt fields/remove markdown

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

Sorry I didn't know markdown output was actually used. I added it back. PTAL again!

Tested this change and terminal+markdown formatting seems to be right. Just a little thing: I noticed that evt (All event types) appears at the bottom of the list, would it be possible to make it appear on top? This would make the documentation easier to consume when piped to a pager or exported to the documentation website.

Sorry I didn't know markdown output was actually used. I added it back. PTAL again!

Tested this change and terminal+markdown formatting seems to be right. Just a little thing: I noticed that evt (All event types) appears at the bottom of the list, would it be possible to make it appear on top? This would make the documentation easier to consume when piped to a pager or exported to the documentation website.

There isn't any explicit sorting of fields at the moment, the order is the order in which the filterchecks are added to the global sinsp_filter_check_list: https://github.com/falcosecurity/libs/blob/master/userspace/libsinsp/filter_check_list.cpp#L106. But I did move sinsp_filter_check_gen_event to the top so it will be next to evt (Syscall events only).

@LucaGuerra: changing LGTM is restricted to collaborators

In response to this:

@mstemm yes, I did the same when I wanted to reorder the doc page. LGTM.

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

/retest

/check-dco

LGTM label has been added.  Git tree hash: 3beda0f0710961840fac24f3aacb20266d390b9e

@FedeDP: changing LGTM is restricted to collaborators

In response to this:

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


Use cell metadata to store selection/focused state of cells

Here's what we have in the cell metadata today:
    interface ICodeCellMetadata extends IBaseCellMetadata {
        /**
         * Whether the cell is collapsed/expanded.
         */
        collapsed: boolean;
        /**
         * The Jupyter metadata namespace
         */
        jupyter: {
                /**
                 * Whether the outputs are hidden. See https://github.com/jupyter/nbformat/issues/137.
                 */
                outputs_hidden: boolean;
                /**
                 * Whether the source is hidden.
                 */
                source_hidden: boolean;
        },
        /**
         * Whether the cell's output is scrolled, unscrolled, or autoscrolled.
         */
        scrolled: boolean | 'auto';
    }

Looks like others are already using this metadata to store UI state (Jupyterlabs, nteract, etc).
https://github.com/jupyter/nbformat/issues/137
It would make sense for us to use these as well, instead of creating our own state.
Here's the spec https://github.com/jupyter/nbformat/blob/master/nbformat/v4/nbformat.v4.4.schema.json
@rchiodo  @IanMatthewHuff @DavidKutu
This makes code more portable, if widgets also end up using these properties (metadata).
Possible uses

If cells are collapsed and we re-open the notebook, it will stay collapsed
Behavior will be close to other editors
I believe nb extensions/widgets use this information today (toc widgets, etc).

This makes it easier to port ensure nb extensions work with vscode.

Note:

As this is a plain json object, we could probably store other UI state if and when required.
Today I can see us storing UI related info in here.

Something to discuss. As this introduces changes that's not necessary.

Not sure we'd want to do that. That would mean somebody else opening the same document would get my UI state in their view.

my UI state in their view.

Good point.
However, the benefit of using the metadata is state is maintained across sessions.
I think that provides a good editor experience, taking the user back to where they left off...similar to #9389

Yes the idea of saving the UI state is good, just not in the notebook itself. This would also mean UI updates cause git differences, which of course would be bad. We should save UI state in memento storage somewhere.

Yup agreed


#354 Add CONAN_CONANFILE option

Changelog: Feature: Support custom Conanfile path (#354)
fixes #354

[x] Refer to the issue that supports this Pull Request.
[x] If the issue has missing info, explain the purpose/use case/pain/need that covers this Pull Request.
[x] I've read the Contributing guide.
[x] I've followed the PEP8 style guides for Python code.

Travis is not listed as mandatory check but its build is here:
https://travis-ci.org/conan-io/conan-package-tools/builds/508471895


Revert "Update BundleUpload status for observability"

Reverts trunk-io/analytics-cli#99
I've narrowed down a breakage that I've been seeing locally to this PR. It is the first time uploads start to fail in the check and it makes changes to the area of code in question.
https://github.com/trunk-io/analytics-cli/actions/runs/11113171931/job/30876881217#step:9:26
It wasn't caught because we're returning exit code 0 even when the upload fails. So the job looked like it passed. We need to add a mode that forces fail on any error so we can better test the cli.
I'm putting up a revert in case the actual fix is non trivial. Feel free to close this if we can get a proper fix in in a timely manner.
After revert everything looks as expected:
2024-10-02T20:44:39 [INFO] - Reading git repo at "/Users/work/src/iOS-example"
2024-10-02T20:44:39 [INFO] - Found git_url: Some("git@github.com:gnalh/iOS-example.git")
2024-10-02T20:44:39 [INFO] - Found git_sha: Some("3959a8720720b3ce83309ecdb34086ebb167afcc")
2024-10-02T20:44:39 [INFO] - Found git_branch: Some("refs/heads/main")
2024-10-02T20:44:39 [INFO] - Found git_commit_time: Time { seconds:<PHONE_NUMBER>, offset: -25200, sign: Minus }
2024-10-02T20:44:39 [INFO] - Found git_commit_message: Some("test\n")
2024-10-02T20:44:39 [INFO] - Found git_author: Some(HeadAuthor { name: "gnalh", email<EMAIL_ADDRESS>})
2024-10-02T20:44:39 [INFO] - Starting trunk-analytics-cli 0.0.0 (git=e398c742381c564e9118f6a49488c37e1eb51c13) rustc=1.80.0-nightly
2024-10-02T20:44:40 [INFO] - Total files pack and upload: 1
2024-10-02T20:44:40 [INFO] - Total bytes in: 77753, total bytes out: 15196 (size reduction: 80.46%)
2024-10-02T20:44:40 [INFO] - Flushed temporary tarball to "/var/folders/3y/n_0cx1_94sx4h8xq510svyh00000gn/T/.tmplqjRIF/bundle.tar.zstd"
2024-10-02T20:44:40 [INFO] - Done

We can definitely add tests that assert the test should fail—testing both happy and sad paths:
https://github.com/trunk-io/analytics-cli/blob/f81ac924d5687b4cd1115709fa673ba06088d9a6/cli/tests/upload.rs#L64-L65

Also, my PR #109 conflicts with #99, so I want to know whether or not we revert 😅


[Bug]: Disconnection and log

Version
1.3.0 of Eudy Security Add - on (home assistant)
Node version
Don't know where to find it.
Operating System type
Other
Operating system version
Home Assistant
Describe the bug
Hello, I'm using the Eufy Security integration built by fuatakgun, in my Home Assistant running on a Raspberry Pi 4. However, I got the below issue, for which fuatakgun told me I could maybe get some help here :
In the log of the Eufy Security Add-on, I get the following

It seems there are numerous connection issue.. Any clue on where this could come from?
I'm not sure there is a direct link, but I then get in My Home Assistant log, numerous information (new URLs?), even, when the Eufy system is disarmed!?

Any clue on what I should do?
Thanks in advance,
To reproduce
Log in Home Assistant
Screenshots & Logfiles
No response
Additional context
No response

Try out last version 1.3.1.

Hello Bropat,
How can I get the latest version?
Even if I put it as "Auto-update", i only have the 1.3.0
Thanks!

@fuatakgun need to update the version of the addon here before you see the new version.

Will do it soon

@fuatakgun
I have created an official hassio-eufy-security-ws repository here, with the corresponding eufy-security-ws add-on. The add-on is already running in host mode and local discovery works as expected.
I have already tested it with your integration and it works perfectly.
Back then you asked me if I could manage it and now it's done 😉.
One thing I haven't implemented yet is the code signing with codenotary (I don't understand where I can register 😅).

Thanks, shared with community

Cool.
I tried to use @bropat 's version, but I get errors during startup. (I raised an issues about it)
What do you mean by running in host mode?
Thanks,
Rien

@fuatakgun
I have created an official hassio-eufy-security-ws repository here, with the corresponding eufy-security-ws add-on. The add-on is already running in host mode and local discovery works as expected. I have already tested it with your integration and it works perfectly. Back then you asked me if I could manage it and now it's done 😉.
One thing I haven't implemented yet is the code signing with codenotary (I don't understand where I can register 😅).

Unfortunatly i couldnt get the add-on to work on a Rpi4 Hassio set-up.  Got the same errors starting the Add-on as @RienduPre.

Fixed in latest release.


feat: add List.foldl_concat and List.foldr.concat

These are special versions of List.fold[lr]_append in case a single element list is appended.

bors merge


Reverse

Proposed changes
Implemented reverse() method. Due to the nature of the forward linked list, this method is implemented recursively to reverse the links of each node. Otherwise we would have to copy each element into some sort of buffer and replace the data member in each node.
Types of changes
What types of changes does your code introduce?
Put an x in the boxes that apply

[ ] Bugfix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)

Checklist
Put an x in the boxes that apply. You can also fill these out after creating the PR. If you're unsure about any of them, don't hesitate to ask. We're here to help! This is simply a reminder of what we are going to look for before merging your code.

[x] I have read the CONTRIBUTING doc
[x] Unit tests pass locally with my changes
[x] I have added tests that prove my fix is effective or that my feature works
[x] I have added necessary documentation (if appropriate)

Codecov Report

Merging #43 into master will not change coverage.
The diff coverage is 100%.

@@          Coverage Diff          @@
##           master    #43   +/-   ##
=====================================
  Coverage     100%   100%
=====================================
  Files           5      5
  Lines         408    474   +66
=====================================
+ Hits          408    474   +66

Impacted Files
Coverage Δ

tests/linkedListTest.cpp
100% <100%> (ø)
:arrow_up:

src/linkedList.cpp
100% <100%> (ø)
:arrow_up:

Continue to review full report at Codecov.

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


Fix displaying logarithmic tick labels

When activating the logarithmic option on x axis I get:
java.lang.NullPointerException
at com.xeiam.xchart.internal.chartpart.Axis.getXAxisHeightHint(Axis.java:282)
because the first label is null:
tickLabels[null, null, null, null, null, null, null, null, 0.1, null, null, null, null, null, null, null, null, 1]
I think the best fix is to always fill the labels.

thanks!


Allow setting slice capacity

I'm not sure why there is no way to create a slice's from another, with a capacity lower than it's length.
It has a few uses. For example, I could pass in a copy of my slice set to 0 capacity to benefit from copy-on-write semantics. The length would still appear to have N items, but trying to write to any of them would trigger the slice to re-grow. This would allow for immutable, lightweight slices in general.
I'm not certain if it would break any code, I've seen almost noone calling "cap" in my experience.

You can do this already. See "Full slice expressions" in https://golang.org/ref/spec#Slice_expressions.

@rogpeppe a bit quick on the trigger there!
"The indices are in range if 0 <= low <= high <= max <= cap(a)"
I'm discussing relaxing the last constraint, and allowing cap to be smaller than the max/length. Then normal semantics kick in, where the slice will grow if you append outside it's length. However, the only new behavior is that writing to an index that is below the cap is meaningless and won't actually do anything, or could even panic. If a function tried to write to index 0, when my cap was 0, it should panic.
It's a method of creating simple, effective readonly slices.
Here's an example where a function will, once in a blue moon, edit one of the underlying array items. I don't want to have to pass in a copy, because it would most likely be wasting memory/cpu to make a copy each time. However, I do want to ensure my slice is readonly. Right now I have no choices. However, it intuitively makes sense that if I create a new slice with 0 capacity, then no one can shove anything new into my slice. Anything people try to do to my slice would be over it's capacity, and so internally would need to grow. The length would still be 10, so they can still read all my items, just can't write to them.
https://play.golang.org/p/xf8F6_-4usD

It doesn't seem intuitive to me to allow the slice's capacity to be smaller than its length. It especially doesn't seem intuitive that s[i] could panic when i < len(s).
There are other discussions around immutability that seem more promising to me. For example, #22876 and #20443 seem relevant, and there are other proposals and mailing list discussions.

Why not, @cespare ?
All the other proposals I've seen include adding new keywords and changing types entirely.
Also, I believe it makes perfect sense for the capacity to be 0, how else would you describe an item that cannot hold anything? Slices with zero capacity but a positive length are simply saying "I have something, but I can't hold anything", which is precisely the definition of readonly.
To me it's a natural extension.

I agree with @cespare , cap < len is weird.
Bounds checks are now different for a[i] = x and x = a[i] (the former also has an i < cap(a) check).
What does slicing even mean now?
x = a[:i] used to always succeed if i<cap(a), and sets len(a)=i.  Now what happens? Can this still set the length if i>cap(a) but i < len(a)?
Plus all the readonly problems, like ranging over a slice of large objects without copying them:
for i := 0; i < len(a); i++ {
    p := &a[i]  //oops! if cap(a)<len(a)
    ... do something with p ...
}

Or needing multiple versions of library functions like bytes.Index, one to search only up to cap(a) because the caller wants to do a modification, and one which searches up to len(a) because the caller is only reading.

@randall77
I appreciate your feedback, but I'm not sure you understand the proposal.
Slicing would be the same as it is now - the cap would work as it does now, where the new slice will have zero capacity and len(a)=1, as you put it.
Your loop is a good example, as getting a reference to a specific element is a unique bit of syntactic sugar that would have to be modified to check for cap, not just len. It is the compilers job, in that situation, to determine if your code can safely use a reference. Alternatively, try take a reference, and when the caller passes you a cap<len slice it will panic, and the caller will now know it needs write-access to your slice. Then you might get curious why it wants write-access, and investigate, in case you misunderstood what the function was going to do.
I'm not sure where the multiple versions comment comes from. bytes.Index would remain unchanged, like most functions that only use "len". The only functions that would "change" are functions that edit a slice in-place, and even then, the change would be to panic only if passed a cap<len slice. It's 100% backwards compatible.

Your loop is a good example, as getting a reference to a specific element is a unique bit of syntactic sugar that would have to be modified to check for cap, not just len. It is the compilers job, in that situation, to determine if your code can safely use a reference. Alternatively, try take a reference, and when the caller passes you a cap<len slice it will panic, and the caller will now know it needs write-access to your slice. Then you might get curious why it wants write-access, and investigate, in case you misunderstood what the function was going to do.

But what if the ... do something with p... is only reading from p?  Somehow you would now want two different &a[i] operations, one of which gives you back a writeable pointer (and panics if i>=len(a) || i >= cap(a)) and one of which gives you back a read-only pointer (and panics if i>=len(a)).
It would be unfortunate if you had to give write permission to a function which only reads a slice, solely to allow it to construct pointers to the elements.  As a result, I don't think the cap<len solution can work in isolation; a more holistic read-only data structure solution is required.
For library functions, I think you need multiple versions because the "length" of the operation now depends on what you're going to do with the result.  For example:
    a[bytes.IndexByte('a')] = 'b' // replace an 'a' with a 'b'
    a[bytes.IndexByte('a') + 1] // return the character after 'a'

So does IndexByte stop searching at len(a), or min(len(a),cap(a))?
(This is maybe not the best example, I will try and think of a better one.)

@randall77 I think maybe what's not clear is that this does not change the default behavior of anything. There is no "give write permissions", there is only removing write permissions.
If a function wants a reference, it would simply add i<cap to the bounds check. Only if I explicitly pass a cap<len slice would it be any different than it usually is. I would only pass in a cap<len slice because, now or in the future, I'm not anticipating this function changing my slice elements in any way. There's no read/writeable pointer differentiation, it simply would not allow you to reference a pointer outside of a slice's cap, because that value does not exist. In can not be referenced, nor dereferenced, only read. This makes complete sense when you remember that you're looking at an element the slice does not have the capacity to be holding.
Also, for all those situations (and all existing code), you would use len as normal. Using slices never changes in any scenario. The only real change is that you can use a cap<len for slice creation, and if you choose to do so, some functions may reveal themselves as not-just-reading from your slices.

@dantoye What do you mean when you say "trying to write to any of them would trigger the slice to re-grow"?

@ianlancetaylor By "write to", I did mean append to. Apologies.
Writing to an array would be changed in one way: perform a cap check first, then a len check. In most situations it would have equal performance, but would have an extra check if writing to an index between len and cap. If the cap check fails, but the len check passes, a new panic is raised: "runtime error: index not within slice capacity".
For appending, however, the standard mechanics apply, though I'm sure some changes must be made if the append logic assumes the len<cap invariant.

It seems to me to be fairly unfortunate to have to do an extra memory load and comparison for every write to a slice, but I agree that this seems to work.  I'm going to turn into a language change proposal.  Fair warning, though: I do not think it will be accepted.

This would allow for immutable, lightweight slices in general.

All the other proposals I've seen include adding new keywords and changing types entirely.

Having a clear way of expressing immutability - be it via keywords and types - helps developers and compilers/tooling.

@ianlancetaylor we don't have to do an extra load often. I'm not too certain about the growth factor for slices, but an average chance of needing the extra load could be calculated fairly precisely.
It would add the extra load/cmp for cases where len < idx < cap, which would be equal to half of the growth factor, which is a function of cap. Probably something like log(len)/2 more load/cmp's on average, not a linear growth.

@dantoye I'm probably missing something, but it seems to me that for a write to a slice we must always check against both cap and len.  If we skip the cap check, we will mutate an immutable slice.  If we skip the len check, we will do the wrong thing when cap > len.  In the normal case both comparisons pass, so I don't see how we can skip either one.

@ianlancetaylor true, now that I think about it.
However, maybe it could be determined at slice creation time. Internally setting a hidden "max" property to max(len,cap) and use that for bounds checking?
Implementation aside, I'm more curious of your thoughts about it's use. As it's just a slice of any type, it automatically can be used for readonly values of anything.

Internally setting a hidden "max" property to max(len,cap) and use that for bounds checking?

Increasing the size of a slice from 3 words to 4 would probably have far more reaching consequences (performance and otherwise) than adding the extra bounds check, since the compiler could probably eliminate a bunch of them.

Implementation aside, I'm more curious of your thoughts about it's use. As it's just a slice of any type, it automatically can be used for readonly values of anything.

My 2c, FWIW: It is an interesting idea. But (a) I find it rather unintuitive and (b) like many of the readonly proposals, it enforces one particular kind of readonly-ness. Note that in a readonly slice []*T, you can't change which T a particular element points to, but you can modify the T that is pointed to. Relatedly, some of the blog posts linked to in #22876 are useful reading. If Go 2 is going to include some kind of immutability, I'd personally rather see it be more deeply integrated, rather than a clever but awkward trick that applies only to slices.

@josharian Fair points.
It seems there's a lot more to cap<len than meets the eye, as well as readability in general.
Your []*T example, and all the points above, show that for all intents and purposes it could function well as a backwards-compatible shim for readonly semantics. However, as with all shims, it would not serve well as a permanent fixture.

We aren't going to make this change.  It will make all slice writes more costly.  It's not a general answer to issues about immutability, as it only applies to slices.  It's a special case with relatively few applications, and we don't need another special case.
(By the way, I'm not really clear on what happens when an index outside of the cap is written.  The initial message suggests that the slice would "re-grow", but where would the newly grown slice be stored?  Later messages suggest a panic on write, which would be easier to implement.)


[OSPK8-431] Migrate osipset functionality to osnetcfg

This migrates the IP reservation functionality from osipset to
osmacaddr controller. The osmacaddr controller watches osctlplane
osvmset, osclient and osbmset resources and creates IP reservations
if needed. The reservations get stored on the osnet spec, like before.
The ip set information is stored on the status of the osnetcfg CR.
If a node gets deleted, the default is to persist the reservations
of a node if the full role isn't deleted (like before). With this
change this can be controlled by the osnetcfg Spec.PreserveReservations
parameter, which controlls both IP and MAC address reservations.
In a follow up static IP reservation will be added.

/lgtm


Jest test cases are failing throwing the error "TypeError: Cannot redefine property: session"

Jest test cases which are calling the getServersideProps which is wrapped inside the withSessionSsr are failing due to "TypeError: Cannot redefine property: session"

Hey there @priyabubbles we just released v8 of iron session, if you're still having an issue please open a new issue with a github repository demonstrating the problem. Thanks!


unexpected inversion in fisher_exact p-values over small range of arguments

I ran into a case of fisher_exact p-values going slowly up and then sharply down and slowly up again, over a uniform range of a single argument.  I'm fairly sure this shouldn't be happening.  Am I misusing the function somehow, or is this a real error?
>>> for x in range(1338,1356): print scipy.stats.fisher_exact([[0, x], [2369, 699722]])
...
(0.0, 0.02787009907791051)
(0.0, 0.02791103203574459)
(0.0, 0.027952350965163682)
(0.0, 0.027994055770513251)
(0.0, 0.028036146824929845)
(0.0, 0.028078624032413353)
(0.0, 0.028121487508106453)
(0.0, 0.017484170648664931)
(0.0, 0.017484101168458062)
(0.0, 0.017484299162895015)
(0.0, 0.017484764558238983)
(0.0, 0.01748549734269924)
(0.0, 0.017486497556017597)
(0.0, 0.017487765173154451)
(0.0, 0.017489300176743185)
(0.0, 0.017491102560909973)
(0.0, 0.017493172361352043)
(0.0, 0.017495509613732918)

(scipy 0.14.1, in python 2.7.10 and 3.4.3+)

I'm pretty sure that's the expected behavior.
Because of the discreteness of the sample space, exact statistics have the sawtooth patternm e.g. the power function w.r.t sample size.
The easiest would be to check with R or another package for this example.

Wow, you're right - I checked in R and got the same result. I had no idea the correct results could look so strange. Sorry about the unnecessary bug report, then.


unwrap-useless-dropdowns should work on more pages

It works here: https://github.com/sindresorhus/refined-github/runs/2736205107?check_suite_focus=true
But not here: https://github.com/sindresorhus/refined-github/pull/4441/checks?check_run_id=2735776462
Required: also find variations of this URL that have the same button, maybe there are more cases like this.

No longer necessary

https://github.com/refined-github/refined-github/pull/5419


How to change font size and color on chart?

The font size on the charts are to small and hard to read on certain colors. Is there a way to change these attributes?
I can do this do make the whole pie red but setting color or font-size doesn't make a change:
.ct-series-x .ct-slice-pie {
    fill: #f05b4f
}

If you look in chartist.css, you can see that the only class that has a font-size specified is .ct-label. You'll have to override that if you want to set the size and colour.

Yup, general approach of chartist is to use CSS for styling.

I got stuck on this. Remember CSS priority and to import your custom stylesheet after the chartist one.


osx compile issue (regression)

Osx build is broken in the commit 063d677ebb45bac5495d261e7ee7935a40e9f84a
[ 91%] Building CXX object dbms/src/Storages/System/CMakeFiles/clickhouse_storages_system.dir/StorageSystemZooKeeper.cpp.o
/Users/silviu.caragea/Desktop/ClickHouse/dbms/src/Functions/FunctionsMiscellaneous.cpp: In static member function 'static bool DB::IsFiniteImpl::execute(T)':
/Users/silviu.caragea/Desktop/ClickHouse/dbms/src/Functions/FunctionsMiscellaneous.cpp:1257:12: error: expected '(' before 'constexpr'
         if constexpr (std::is_same<T, float>::value)
            ^~~~~~~~~
/Users/silviu.caragea/Desktop/ClickHouse/dbms/src/Functions/FunctionsMiscellaneous.cpp:1261:9: error: 'else' without a previous 'if'
         else if constexpr (std::is_same<T, double>::value)
         ^~~~
/Users/silviu.caragea/Desktop/ClickHouse/dbms/src/Functions/FunctionsMiscellaneous.cpp:1261:17: error: expected '(' before 'constexpr'
         else if constexpr (std::is_same<T, double>::value)
                 ^~~~~~~~~
/Users/silviu.caragea/Desktop/ClickHouse/dbms/src/Functions/FunctionsMiscellaneous.cpp:1265:9: error: 'else' without a previous 'if'
         else
         ^~~~
/Users/silviu.caragea/Desktop/ClickHouse/dbms/src/Functions/FunctionsMiscellaneous.cpp: In static member function 'static bool DB::IsInfiniteImpl::execute(T)':
/Users/silviu.caragea/Desktop/ClickHouse/dbms/src/Functions/FunctionsMiscellaneous.cpp:1276:12: error: expected '(' before 'constexpr'
         if constexpr (std::is_same<T, float>::value)
            ^~~~~~~~~
/Users/silviu.caragea/Desktop/ClickHouse/dbms/src/Functions/FunctionsMiscellaneous.cpp:1280:9: error: 'else' without a previous 'if'
         else if constexpr (std::is_same<T, double>::value)
         ^~~~
/Users/silviu.caragea/Desktop/ClickHouse/dbms/src/Functions/FunctionsMiscellaneous.cpp:1280:17: error: expected '(' before 'constexpr'
         else if constexpr (std::is_same<T, double>::value)
                 ^~~~~~~~~
/Users/silviu.caragea/Desktop/ClickHouse/dbms/src/Functions/FunctionsMiscellaneous.cpp:1284:9: error: 'else' without a previous 'if'
         else
         ^~~~
[ 91%] Building CXX object dbms/src/Functions/CMakeFiles/clickhouse_functions.dir/FunctionsRound.cpp.o
[ 91%] Building CXX object dbms/src/Functions/CMakeFiles/clickhouse_functions.dir/FunctionsStringSearch.cpp.o
[ 91%] Building CXX object dbms/src/Functions/CMakeFiles/clickhouse_functions.dir/FunctionsURL.cpp.o
At global scope:
cc1plus: error: unrecognized command line option '-Wno-unused-private-field' [-Werror]
cc1plus: all warnings being treated as errors
make[3]: *** [dbms/src/Functions/CMakeFiles/clickhouse_functions.dir/FunctionsMiscellaneous.cpp.o] Error 1
make[3]: *** Waiting for unfinished jobs....
[ 91%] Linking CXX static library libclickhouse_storages_systemd.a
[ 91%] Built target clickhouse_storages_system
Scanning dependencies of target clickhouse_table_functions

can you use newer clang ? (3.9+)

Build instructions changed ?
I'm using:
cmake .. -DCMAKE_CXX_COMPILER=which g++-6 -DCMAKE_C_COMPILER=which gcc-6 -DCMAKE_CXX_FLAGS="-I/usr/local/include" -DCMAKE_BUILD_TYPE=Release
make -j 16 clickhouse
Silviu

Hello,
using clang works fine

BTW, gcc-7 is also Ok.

@alexey-milovidov I just updated to last master and last xcode but only clang works.
cmake .. -DCMAKE_CXX_COMPILER=`which g++-7` -DCMAKE_C_COMPILER=`which gcc-7` -DCMAKE_CXX_FLAGS="-I/usr/local/include" -DCMAKE_BUILD_TYPE=Debug

-- The C compiler identification is GNU 7.2.0
-- The CXX compiler identification is GNU 7.2.0
-- Checking whether C compiler has -isysroot
-- Checking whether C compiler has -isysroot - yes
-- Checking whether C compiler supports OSX deployment target flag
-- Checking whether C compiler supports OSX deployment target flag - yes
-- Check for working C compiler: /usr/local/bin/gcc-7
-- Check for working C compiler: /usr/local/bin/gcc-7 -- broken
CMake Error at /usr/local/Cellar/cmake/3.9.6/share/cmake/Modules/CMakeTestCCompiler.cmake:51 (message):
  The C compiler "/usr/local/bin/gcc-7" is not able to compile a simple test
  program.

  It fails with the following output:

   Change Dir: /Users/silviu.caragea/Desktop/ClickHouse/build/CMakeFiles/CMakeTmp

  Run Build Command:"/usr/bin/make" "cmTC_8761e/fast"

  /Applications/Xcode.app/Contents/Developer/usr/bin/make -f
  CMakeFiles/cmTC_8761e.dir/build.make CMakeFiles/cmTC_8761e.dir/build

  Building C object CMakeFiles/cmTC_8761e.dir/testCCompiler.c.o

  /usr/local/bin/gcc-7 -o CMakeFiles/cmTC_8761e.dir/testCCompiler.c.o -c
  /Users/silviu.caragea/Desktop/ClickHouse/build/CMakeFiles/CMakeTmp/testCCompiler.c

  Linking C executable cmTC_8761e

  /usr/local/Cellar/cmake/3.9.6/bin/cmake -E cmake_link_script
  CMakeFiles/cmTC_8761e.dir/link.txt --verbose=1

  /usr/local/bin/gcc-7 -Wl,-search_paths_first
  -Wl,-headerpad_max_install_names
  CMakeFiles/cmTC_8761e.dir/testCCompiler.c.o -o cmTC_8761e

  ld: library not found for -lSystem

  collect2: error: ld returned 1 exit status

  make[1]: *** [cmTC_8761e] Error 1

  make: *** [cmTC_8761e/fast] Error 2

  CMake will not be able to correctly generate this project.
Call Stack (most recent call first):
  CMakeLists.txt:1 (project)

-- Configuring incomplete, errors occurred!
See also "/Users/silviu.caragea/Desktop/ClickHouse/build/CMakeFiles/CMakeOutput.log".
See also "/Users/silviu.caragea/Desktop/ClickHouse/build/CMakeFiles/CMakeError.log".


Include advisories and licenses in dependency graphs?

(Originally requested by @agmond in #3.)
Currently, to get a list of the advisories that affect a package version or one of its dependencies, a client:

Calls GetDependencies.
For each node in the response, calls GetVersion, ideally making many requests concurrently as in the package_lock_licenses example.

If the response from GetDependencies included advisories, only a single call would be needed. The same applies to licenses.
The downside is that the response would be larger (and slower to serve) for all clients, regardless of whether they are interested in advisories (or licenses).

Regarding the downside mentioned above, it can be solved by adding a query param for including the additional data (or by adding a new API call that returns all the data in a single call, keeping the current API unchanged).

The extra data parameter is something we did in previous (internal) iterations of the API and it works pretty well, but we may end up just including all the data in the responses always (it's not a huge amount of extra information, and the cost server-side is not significant). This is on our roadmap.

I was also looking for such a single API call to get package and dependency information (especially licensing information in my case) via a single API call. The website seems to do it via https://deps.dev/_/s/maven/p/org.everrest:everrest-core/v/1.15.0/dependencies . @adg mentioned a roadmap for such a single API call, any news on this one?


about saver

hi,
I want to set ckpt file name as model.ckpt-000201.data-*
saver = tf.train.Saver(max_to_keep=1000, pad_step_number=True)
pad_step_number=True is the setting.
how to set saver in estimator.train()   ???
help !!!

For model saving, tf.estimator uses export_savedmodel.
Please see the documentation.


Unable to find element by exact matching inner text

Are you requesting a feature or reporting a bug?
feature
What is the current behavior?
Selector.withText(text)	method creates a selector that filters a matching set by a containing the specified text.
What is the expected behavior?
Sometimes it is necessary to find element by exact matching inner text
How would you reproduce the current behavior (if this is a bug)?
Provide the test code and the tested page URL (if applicable)
Tested page URL:
Test code

Specify your

operating system:
testcafe version:
node.js version:

Hello, Dmitry! I guess, you want something like Selector('*').withText(theText)`. It matches every element on the page, and then filters it with the specified text.

I need a strong match, that means "equal", not "contains".
For example, a have two divs "Object 1" and "Object 11". I want to find only "Object 1", but with .withText('Object 1') I will get both these divs.
I have solved this problem by the following approach:
`var innerTextEquals = ClientFunction((element, text) => {
return $.trim(element.innerText) === $.trim(text);
});
//...
Selector('.dx-navigation-item').filter((node, idx) => {
return innerTextEquals(node, itemCaption)
}, { innerTextEquals, itemCaption });`

I guess it would be nice to have this feature. As a temporary workaround you can represent your text as regexp and set boundaries:
import escapeRegExp from 'lodash/escapeRegExp';

function getWholeTextRe(text) {
    return new RegExp(`^${escapeRegExp(text)}$`);
}

// use it as t.expect(smthg).contains(getWholeTextRe('myText'));

We need to figure out API for that. How about Selector.withWholeText()? \cc @DevExpress/testcafe @VasilyStrelyaev

what about withTextStrictly or withStrictText

May be withExactText

May be better to change withText to do exact search by default
and add a new method withTextContains or withTextIncludes or withPartialText

I wouldn't like to make a breaking change here. It can break a lot of existing tests. The withText method can take a regexp so it's quite flexible for any cases. So I'd like to leave it as is

closed in #2124


Make Footer more attractive by adding Social Media Handles

Please assign me this issue will implement and make footer more attractive

@parthksingh1 What footer are you talking about?

This one the Author one it is looking quite simple
Adding social media handles will
Engagement: Connect with users and foster community discussions around your project.
Visibility: Enhance project visibility as content gets shared or discussed on social platforms.
Feedback: Get direct user feedback and insights to iterate and improve the project.
Drive Traffic: Direct interested users from social platforms to your project page.
Trust: Show that the project is active and updated, building user trust.
Updates: Share project updates, milestones, and news effortlessly.
Networking: Connect with potential collaborators, contributors, or stakeholders.
Linking social media handles in your project helps in bridging the communication gap, expanding reach, and fostering an active community around your project.

This page is populated from the README.md, changing this would just be adding some badges.
https://hacktoberfest.com/participation/

Avoid submitting low-quality pull/merge requests.


DataTable - write to csv

The opposite of #42, add ability to write table to CSV.
EDIT: can implement this after #87 since it would be convenient to cast everything to string prior to writing to CSV.

implemented in fc20accbf5e384045df0ad59ba43035ef8b61c20


Export the credentials option

As this tool stores all the credentials in pc memory, so its will create a challenging situation is the pc dies. So, to fix this issue, a CLI feature is needed using which, the user will be able to export the secret json file and take time to time backup and store it in somewhere else.
CLI Command Should be:_
secretcli secret -export </path/filename_where_to_export>

PR


Support CXSMILES extensions

Here's the page at ChemAxon defining what's there:
https://docs.chemaxon.com/pages/viewpage.action?pageId=19694483
Some pieces to consider supporting (need examples for all of these), this will evolve:

[ ] Special atoms
[ ] Coordinates (need to find some examples)
[ ] R attachment points

Duplicate with #1237


Is Assertion verification same for all formats?

In verifyAuthenticatorAssertionResponse(), there is this condition : if(authr.fmt === 'fido-u2f')   and then all the logic for verification.
However, shouldn't the logic for verifying assertions be the same for all formats?
I have commented this line out and it gives me a positive verification for android-safetynet.
So, should this if condition be there? or are things actually different for different formats?

How did you verify the android-safetynet  attestation?

Does anyone know how one can verify the android-safetynet attestation?


WebAPI Versioning with Swagger Error (ApiVersion unspecified)

VERSION:
Swashbuckle: 5.6.0
AspNet.WebApi.Versioning 2.2.0
STEPS TO REPRODUCE:
Consume any endpoint (postman or swagger)
EXPECTED RESULT:
Hits the actual endpoint
ACTUAL RESULT:
Receive the error:
ApiVersionUnspecified or Swagger UI requires a version input.
ADDITIONAL DETAILS
Using Owin with WebAPI. Owin's Setup is blank.
Global.asax.cs:

protected void Application_Start(object sender, EventArgs e)
{
GlobalConfiguration.Configure((GlobalConfiguration.Configuration.DependencyResolver.GetService(typeof(WebApiConfig)) as WebApiConfig).Register);
}

WebApiConfig.cs:

public void Register(HttpConfiguration config)
{
var constraintResolver = new DefaultInlineConstraintResolver
{
ConstraintMap =
{
["apiVersion"] = typeof(ApiVersionRouteConstraint)
}
};
config.MapHttpAttributeRoutes(constraintResolver);
config.AddApiVersioning(o => o.ReportApiVersions = true);
this.restApiConfig.Register(config);
}

Controller route formatting:

[ApiVersion("3.0")]
[RoutePrefix("v3")]
public class SomeController {
[Route("/someRoute")]
public HttpResponseMessage GetStuff(){ }

We have attempted to use the [RoutePrefix(v{version : apiVersion)] attribute, which works with actually making the endpoints function under versioning, but forces Swagger to include a version parameter, which we do not want. We want our paths to be "/v2/controller/action" or  "/v3/controller/action".
Happy to use the [RoutePrefix(v{version : apiVersion)] method, as long as we can display the paths properly in Swagger without having to input a version parameter.  Otherwise, if we could use the [RoutePrefix("v3")] method without getting ApiVersionUnspecified errors, that would be even better.

You need to also include the API Explorer extensions for API versioning for this to work. You would then add the configuration:
config.AddVersionedApiExplorer();

You can find a complete end-to-end sample here


Make communication with rabbitmq async (in Hermes)

https://ocd.appscale.com:8080/job/Daily Build/5749/

https://ocd.appscale.com:8080/job/Daily Build/5752/


Selector Unique Color

Creation of a single color selector to change all color elements in the Menu (Initially it follows the order you entered in colors)
I made some changes to organize JS/CSS and HTML.

Fiz pois acho legal a possibilidade de incluir esse tipo de recurso porém caso ache interessante ta ai... xD


Implement WorldQuery for EntityRef

Objective
Partially address #5504. Fix #4278. Provide "whole entity" access in queries. This can be useful when you don't know at compile time what you're accessing (i.e. reflection via ReflectComponent).
Solution
Implement WorldQuery for EntityRef.

This provides read-only access to the entire entity, and supports anything that EntityRef can normally do.
It matches all archetypes and tables and will densely iterate when possible.
It marks all of the ArchetypeComponentIds of a matched archetype as read.
Adding it to a query will cause it to panic if used in conjunction with any other mutable access.
Expanded the docs on Query to advertise this feature.
Added tests to ensure the panics were working as intended.
Added EntityRef to the ECS prelude.

To make this safe, EntityRef::world was removed as it gave potential UnsafeCell-like access to other parts of the World including aliased mutable access to the components it would otherwise read safely.
Performance
Not great beyond the additional parallelization opportunity over exclusive systems. The EntityRef is fetched from Entities like any other call to World::entity, which can be very random access heavy. This could be simplified if ArchetypeRow is available in WorldQuery::fetch's arguments, but that's likely not something we should optimize for.
Future work
An equivalent API where it gives mutable access to all components on a entity can be done with a scoped version of EntityMut where it does not provide &mut World access nor allow for structural changes to the entity is feasible as well. This could be done as a safe alternative to exclusive system when structural mutation isn't required or the target set of entities is scoped.

Changelog
Added: Access::has_any_write
Added: EntityRef now implements WorldQuery.  Allows read-only access to the entire entity, incompatible with any other mutable access, can be mixed with With/Without filters for more targeted use.
Added: EntityRef to bevy::ecs::prelude.
Removed: EntityRef::world
Migration Guide
TODO

@james7132 I'm happy with this work and glad to see more steps towards runtime component access coming together! Once you've resolved conflicts feel free to merge <3


MINOR: Upgraded RocksDB to 5.3.6

Solves a problem as described here: https://groups.google.com/forum/#!topic/confluent-platform/cR02K2o6BIw

cc @dguy @guozhangwang. Note that newer versions are out in May, but it might be worth not rushing for the latest one and waiting for a month or two.

Why not 5.4.5? http://central.maven.org/maven2/org/rocksdb/rocksdbjni/

@ijuma see my comment about not immediately picking latest release to be a bit conservative. I'm open to being more liberal though :)

Race condition in our comments. ;) With RocksDB is a bit tricky. Older releases are not necessarily more stable. We could ask the RocksDB people what they recommend. Otherwise, the best option is probably to go for latest since it's early in our release cycle.

I'd recommend trust the rocksDB community using the latest stable version, as I agree with @ijuma that for OS projects it is usually better to use newer version.

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/kafka-pr-jdk7-scala2.11/5856/
Test FAILed (JDK 7 and Scala 2.11).

Hmm, all streams tests with RocksDB failed.

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/kafka-pr-jdk8-scala2.12/5844/
Test PASSed (JDK 8 and Scala 2.12).

Upgraded to 5.3.6, one short of latest since 5.4.5 gave me a strange error on one test and I'm following up with RocksDb. Meanwhile this one should be a good stepping stone from the current 5.0.1. cc @dguy @guozhangwang

Thanks @enothereska - can you update the PR title?

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/kafka-pr-jdk7-scala2.11/5879/
Test PASSed (JDK 7 and Scala 2.11).

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/kafka-pr-jdk8-scala2.12/5864/
Test PASSed (JDK 8 and Scala 2.12).

Regarding the failure: maybe this can help https://stackoverflow.com/questions/22489398/unsupported-major-minor-version-52-0
If we can still fix it soon I'd suggest let's upgrade to 5.4.5 in one PR?

@guozhangwang there seems to be a new RocksDB release every month. I don't know why we can't move ahead with this and then pick up the next one as we go. It's not the unsupported major-minor version problem, it's a reference check inside the RocksDB's deallocator that's giving the current problem.

If rocksdb#2533 is indeed an overlook by the rocksDB community which means we cannot work with 5.4.5 anyways, then I'm good with 5.3.6; let's wait for a bit more on that ticket.

IMO, we can go ahead with 5.3.6 and update again if there is a resolution for https://github.com/facebook/rocksdb/issues/2533.

I have not heard back from the rocksDB community; if they do not reply by eow let's assume 5.4.5 has a defect that cannot be used and upgrade to 5.3.6 for now.

@enothereska I retested 5.4.5 on jenkins but did not see the issues you mentioned (triggered twice but did not see once): https://github.com/apache/kafka/pull/3509 Is it consistently producible?

I get the problem locally on my laptop, not Jenkins.

Merged to trunk

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/kafka-pr-jdk7-scala2.11/6033/
Test PASSed (JDK 7 and Scala 2.11).

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/kafka-pr-jdk8-scala2.12/6018/
Test PASSed (JDK 8 and Scala 2.12).


Fxing Login/Signup button reeor

As you told, I fixed the Login/SignUp button. Kindly check once and merge it to the main branch. Also I cooit the reply in issue #13

@mdazfar2, feel free to reach out if there is any issue, and don't forget to add labels.


Stderr and stdout are mixed in jupyter

And rerun it will result in random orders.
If you run this code in rustc, order will always equal to execution flow (at least in my tests).
code for rustc:
fn main() {
    #[derive(Debug, Default)]
    enum Testi {
        #[default]
        Foo,
        Bar,
    }

    let x = Testi::default();
    println!("{x:?}");

    let x = Option::<Testi>::default();
    println!("{x:?}");
    dbg!(Some(Testi::default()));
}

result:
Foo
None
[x.rs:14] Some(Testi::default()) = Some(
    Foo,
)

Using a single pipe for stdout and stderr like a regular terminal is the only way to fix this. This prevents showing stderr with a different color however. I don't think this is fixable without using a single pipe. The OS doesn't preserve any state as to which text was written to which pipe first. It only stores an order within a single pipe. On Unix pipes are also asynchronous, so you can't make the other end of the pipe wait until you have read the current value before allowing it to continue and write to the othet pipe.

A possible workaround is separating stdout and stderr completely, like how it works on playground. It wouldn't keep things equal to execution flow but think I would prefer it to the current state.

Hi @HKalbasi - thanks for the feedback.
Evcxr just sends stdout and stderr through to Jupyter a line at a time as it receives - the lines then appear in Jupyter in the order in which they're sent. So the only way to control the grouping / ordering is by controlling when each line gets passed through.
It's worth noting that reordering can be reproduced in Python too:
import sys
import threading
import time
def do_stuff():
    for i in range(1, 10):
        print(f'stderr {i}', file=sys.stderr)
        print(f'stdout {i}', file=sys.stdout)
        time.sleep(0.05)

t = threading.Thread(target=do_stuff)
t.start()

Although I wasn't able to observe mixing of outputs from one print statement with outputs from another with Python.
Although it's not possible to guarantee that we can output things in the same order as the print statements in the code, I think we can probably lessen the impact of this if we're prepared to add a little complexity to the code that passes stdout and stderr through to Jupyter. What I'm thinking is when we receive a line from either stdout or stderr, try then to read more lines from only that source for some amount of time (say 1ms). That would then mean that if stuff was printed to say stderr, it would wait until there was at least a 1ms pause in stderr output before it would attempt to read anything from stdout. I've just tried this and it seems to work well.
I think doing that should bring us to a similar position as Python - ordering not guaranteed, but hopefully no mixing of one print statement's output with another.

Thanks for the response!
The python's behavior is very strange at first look. I would expect that 50ms is very enough for syncing anything, so at most the order of each number should be random but numbers should be in order, like what happens in rust's equivalent code:
use std::{thread, time::Duration};
let jh = thread::spawn(|| {
    for i in 1..10 {
        println!("stdout {i}");
        eprintln!("stderr {i}");
        thread::sleep(Duration::from_millis(50));
    }
});
jh.join();

But your explanations make sense and match the result. That solution in normal codes (codes without sleep or heavy computations) will result in separating stdout and stderr completely, and as I said above I think it is fine, so feel free to close this issue after implementing it.


Laravel v10 support

Hi
Can we support this new version of Laravel?

+1 👍

Hi @yoannblot @NLegendre, we've released v3.1.0 to enable usage with Laravel 10. Please let us know if you experience any issues.


Add support for specifying an External ID value in IAM role ARNs.

This is a breaking change as it requires the YAML config file to be
updated if you're currently using the roleArns field.
Context
IAM role delegation allows optionally setting an External ID string
value shared between parties. This is useful and recommended in order to
prevent the "confused deputy" problem when the account that can assume
the IAM role is outside your organisation.
When an External ID is setup for a role, users in the trusted account
must provide the exact identifier value to be able to assume the role.
More context here: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-user_externalid.html
Changes
In this PR we change the config file format to allow specifying IAM
roles with both an ARN string and an External ID string. The credentials
handling code is updated to check for the presence of the External ID
value and pass it along in the assumeRole request, if present.

Hey @thomaspeitz 👋
I was wondering if you had a chance to look at this PR. Let me know if you have any feedback or need any change/clarification.
Thanks! 🙏

Hey @cristiangreco sorry that I was not able to put this into newest release. That was mainly due to the size.
Need to read it carefully. I overflew it and it looked good but need more time :)
Thanks for submitting this! Really appreciate it!

Thank you very much for your prompt reply @thomaspeitz! No rush, just wanted to check if there's any big blocker that would stop getting this merged after proper review. I'll rebase the PR in the meanwhile.
Feel free to ping me for anything.

Have you had any chance to look at this PR recently? I'm available for any clarification or help you might need.

Hi @thomaspeitz, pinging you as I see there's been some recent activity in the repo ☺
I've just rebased this PR. We've been using these changes in production for a while now, would be great to have them merged.
If you need any help with repo maintenance, generally speaking, I'm also available to help you with other PRs and bugs. Let me know and we could schedule a chat ;)

Yeah, I am planning to reorganize this whole project in august and take more time for it.
I put you on my list and will contact you! - Just send me a mail<EMAIL_ADDRESS>for your contact details! - Thanks <3

Thank you very much @thomaspeitz! I'll email you today.
While at it, I've rebased this other tiny bugfix PR as well 🙂 https://github.com/ivx/yet-another-cloudwatch-exporter/pull/375


Create more Language components

In the website, there are is Languages dropdown menu in the header/navbar.
Add more languages that are not yet in this list. The language components has to be made similarly as the other components, so you can simply copypaste existing language component inside components/languageComponents directory and create new component from that by adding the information needed as well as the badge image if it is available.
After creating the component:

Add the path to data/languageList.ts file similarly as the other languages.
Add the component inside pages/languages/[lang].tsx file same way as the other components are added.

Remember to ask permission to get signed for this task to avoid other contributors possible working at the same issue and avoiding conflicts.
Feel free to ask any questions here if you have some problems!

@nikohoffren can you please assign me this issue?

@nikohoffren can you please assign me this issue?

Sure!


fix key outline verifier bug

#74

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.徐霜馥 seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.


Add SMK Maarif 5 Kotagajah

https://dapo.kemdikbud.go.id/sekolah/F0150A4EF8E04C2B4F09
https://referensi.data.kemdikbud.go.id/tabs.php?npsn=69889006
https://sekolah.data.kemdikbud.go.id/index.php/Chome/profil/D47003DE-D29D-4A0A-8C30-3D20B73446BB

@khoirulaksara First stage of verification passed, official domain is smkmaliga.sch.id as far as I verified. This is just an informational note. Pull request is still in the review. I appreciate your patience while waiting for the final decision.

@khoirulaksara Please provide us with an URL of a page on the official website (smkmaliga.sch.id) where the school offers an IT-related long-term (>1 year) course. Alternatively, you can explain what is relationship between the school and the pages you have mentioned, specifically these ones:
https://dapo.kemdikbud.go.id/sekolah/F0150A4EF8E04C2B4F09
https://referensi.data.kemdikbud.go.id/tabs.php?npsn=69889006
https://sekolah.data.kemdikbud.go.id/index.php/Chome/profil/D47003DE-D29D-4A0A-8C30-3D20B73446BB

all pages are the same, it shows that our school (smkmaliga.sch.id) is officially a school institution authorized by the government.

@khoirulaksara  Thank you for the clarifications. Pull request merged.

Thank you very much

Thank you very much


link to guidelines is broken

Hi,
I was reading the docs to know how to make the pull request for qualimap and I realize the guideline links in the contributing file (https://github.com/nf-core/rnaseq/tree/master/.github/CONTRIBUTING.md) is broken: http://nf-co.re/guidelines. Not sure what is the right destination, so open an issue here.

That is probably wrong in the template - so nfcore/tools and there in the template

This will be resolved when the salmon branch is merged into rnaseq. Going to transfer this to tools for the appropriate changes to be made there.
Link should be https://nf-co.re/developers/guidelines


core[patch]: Fix stream events and stream log with global backgrounded callbacks, add warning

Makes certain callback handlers always awaited.
CC @nfcampos @hinthornw

With message history and run collector also did not work with this setting, fixes those too


many keyfreq.sh processes

first of all, thanks for this great tool. I was using the karpathy/ulogme which required sudo for keyfreq, your version does not need it and it's much appreciated.
When I run ps -ef f I see many copies of keyfreq.sh in the output. Is this expected or something is off in my case?
Initially, I thought the problem might be too many tty/terminals being open. But when I closed many of them the number of keyfreq.sh entries in ps output didn't change.
Luckily, there are no duplicate entries in logs/keyfreq_today.txt file.
Here's process list:
/bin/bash /home/user/softwares/uLogMe/scripts/ulogme_data.sh
  \_ /bin/bash ./keyfreq.sh
  |   \_ /bin/bash ./keyfreq.sh
  |   |   \_ /bin/bash ./keyfreq.sh
  |   |       \_ timeout -s 10 10 xinput test 5
  |   |       |   \_ xinput test 5
  |   |       \_ grep press
  |   |       \_ tr -dc 0-9\n
  |   |       \_ grep -vE 37|50|62|64|66|105|204
  |   |       \_ tr -c \n 0
  |   \_ /bin/bash ./keyfreq.sh
  |   |   \_ /bin/bash ./keyfreq.sh
  |   |       \_ timeout -s 10 10 xinput test 11
  |   |       |   \_ xinput test 11
  |   |       \_ grep press
  |   |       \_ tr -dc 0-9\n
  |   |       \_ grep -vE 37|50|62|64|66|105|204
  |   |       \_ tr -c \n 0
  |   \_ /bin/bash ./keyfreq.sh
  |   |   \_ /bin/bash ./keyfreq.sh
  |   |       \_ timeout -s 10 10 xinput test 16
  |   |       |   \_ xinput test 16
  |   |       \_ grep press
  |   |       \_ tr -dc 0-9\n
  |   |       \_ grep -vE 37|50|62|64|66|105|204
  |   |       \_ tr -c \n 0
  |   \_ /bin/bash ./keyfreq.sh
  |   |   \_ /bin/bash ./keyfreq.sh
  |   |       \_ timeout -s 10 10 xinput test 17
  |   |       |   \_ xinput test 17
  |   |       \_ grep press
  |   |       \_ tr -dc 0-9\n
  |   |       \_ grep -vE 37|50|62|64|66|105|204
  |   |       \_ tr -c \n 0
  |   \_ /bin/bash ./keyfreq.sh
  |   |   \_ /bin/bash ./keyfreq.sh
  |   |       \_ timeout -s 10 10 xinput test 8
  |   |       |   \_ xinput test 8
  |   |       \_ grep press
  |   |       \_ tr -dc 0-9\n
  |   |       \_ grep -vE 37|50|62|64|66|105|204
  |   |       \_ tr -c \n 0
  |   \_ /bin/bash ./keyfreq.sh
  |   |   \_ /bin/bash ./keyfreq.sh
  |   |       \_ timeout -s 10 10 xinput test 13
  |   |       |   \_ xinput test 13
  |   |       \_ grep press
  |   |       \_ tr -dc 0-9\n
  |   |       \_ grep -vE 37|50|62|64|66|105|204
  |   |       \_ tr -c \n 0
  |   \_ /bin/bash ./keyfreq.sh
  |   |   \_ /bin/bash ./keyfreq.sh
  |   |       \_ timeout -s 10 10 xinput test 7
  |   |       |   \_ xinput test 7
  |   |       \_ grep press
  |   |       \_ tr -dc 0-9\n
  |   |       \_ grep -vE 37|50|62|64|66|105|204
  |   |       \_ tr -c \n 0
  |   \_ /bin/bash ./keyfreq.sh
  |   |   \_ /bin/bash ./keyfreq.sh
  |   |       \_ timeout -s 10 10 xinput test 18
  |   |       |   \_ xinput test 18
  |   |       \_ grep press
  |   |       \_ tr -dc 0-9\n
  |   |       \_ grep -vE 37|50|62|64|66|105|204
  |   |       \_ tr -c \n 0
  |   \_ /bin/bash ./keyfreq.sh
  |   |   \_ /bin/bash ./keyfreq.sh
  |   |       \_ timeout -s 10 10 xinput test 10
  |   |       |   \_ xinput test 10
  |   |       \_ grep press
  |   |       \_ tr -dc 0-9\n
  |   |       \_ grep -vE 37|50|62|64|66|105|204
  |   |       \_ tr -c \n 0
  |   \_ /bin/bash ./keyfreq.sh
  |       \_ /bin/bash ./keyfreq.sh
  |           \_ timeout -s 10 10 xinput test 6
  |           |   \_ xinput test 6
  |           \_ grep press
  |           \_ tr -dc 0-9\n
  |           \_ grep -vE 37|50|62|64|66|105|204
  |           \_ tr -c \n 0
  \_ /bin/bash ./logactivewin.sh
      \_ sleep 2

I checked the shared memory folder and saw the following list:
$ ls /dev/shm/keyfreqraw.*
 /dev/shm/keyfreqraw.10   /dev/shm/keyfreqraw.16   /dev/shm/keyfreqraw.19   /dev/shm/keyfreqraw.7
 /dev/shm/keyfreqraw.11   /dev/shm/keyfreqraw.17   /dev/shm/keyfreqraw.5    /dev/shm/keyfreqraw.8
 /dev/shm/keyfreqraw.13   /dev/shm/keyfreqraw.18   /dev/shm/keyfreqraw.6

And here's the list of inputs:
$ xinput
⎡ Virtual core pointer                    	id=2	[master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer              	id=4	[slave  pointer  (2)]
⎜   ↳ MSFT0001:01 06CB:CD5F Mouse             	id=14	[slave  pointer  (2)]
⎜   ↳ MSFT0001:01 06CB:CD5F Touchpad          	id=15	[slave  pointer  (2)]
⎜   ↳ ITE Tech. Inc. ITE Device(8910) Consumer Control	id=12	[slave  pointer  (2)]
⎜   ↳ Logitech M315/235/317                   	id=9	[slave  pointer  (2)]
⎣ Virtual core keyboard                   	id=3	[master keyboard (2)]
    ↳ Virtual core XTEST keyboard             	id=5	[slave  keyboard (3)]
    ↳ ITE Tech. Inc. ITE Device(8910) Keyboard	id=11	[slave  keyboard (3)]
    ↳ Ideapad extra buttons                   	id=16	[slave  keyboard (3)]
    ↳ AT Translated Set 2 keyboard            	id=17	[slave  keyboard (3)]
    ↳ Power Button                            	id=8	[slave  keyboard (3)]
    ↳ ITE Tech. Inc. ITE Device(8910) Wireless Radio Control	id=13	[slave  keyboard (3)]
    ↳ Video Bus                               	id=7	[slave  keyboard (3)]
    ↳ ITE Tech. Inc. ITE Device(8910) Consumer Control	id=18	[slave  keyboard (3)]
    ↳ Integrated Camera: Integrated C         	id=10	[slave  keyboard (3)]
    ↳ Video Bus                               	id=6	[slave  keyboard (3)]

Hi @alperyilmaz!
Thanks for the appreciations, and for your detailed feedback!
It's perfectly normal to see several processes of these xinput test [kbd_id], see in the keyfreq.sh script there is a for loop:
    # check each possible keyboard
    keyboardIds=$(xinput | grep 'slave  keyboard' | grep -o 'id=[0-9]*' | cut -d= -f2)
    for kbd_id in $keyboardIds; do
     ...

As you saw, there is a few keyboards on your device, and keyfreq.sh is very naive and constantly try them all.
If you look at your pstree output above, you will see that there is only on mother process of keyfreq.sh, showing that it was only launched once.
As soon as there is timeout in the for loop (the one I show just above), pstree will show different processes being active simultaneously.
So, to conclude, yes everything works as expected! I'm sure the keyfreq.sh could be improved, for instance by storing somewhere the list of kbd_id of active keyboards and only scanned these (which for most laptops will be only real keyboard!), but I never tried to optimize this.
One reason is that on my laptops, there is always a background uLogMe process running, and if I change from one office to another one, I use different external keyboards on each office, so I don't want to have to manually relaunch uLogMe!

Thanks for detailed answer. It's good to know that it's normal.
Maybe, the xinput polling for"list of kbd_id of active keyboards" might be performed every 10 mins or 30 mins, then maybe the list is cleaned up by removing buttons or video bus from list, then listen to all "actual" keyboards.
For instance:
xinput | grep 'slave  keyboard' | sed -e's/slave *keyboard//' | grep keyboard | grep -o 'id=[0-9]*' | cut -d= -f2

decreases kbd_id list to 3 only.. Not sure if it will miss any "actual" keyboards though..

somehow, the following line finds keyboard ids as 5 11 and 17
xinput | grep 'slave  keyboard' | sed -e's/slave *keyboard//' | grep keyboard | grep -o 'id=[0-9]*' | cut -d= -f2

however the keyfreq.sh was collecting data from 5 and 17 only, missing the actual keyboard 11. So, I used the following line for filter out non-keyboard entries (taken from this post)
xinput --list | cut -d\[ -f1 | grep -i keyboard | egrep -iv 'virtual|video|button|bus' | egrep -o 'id=[0-9]+' | cut -f2 -d=

Hi @alperyilmaz,
Thanks for the suggestions. I no longer update uLogMe except for bug fixes, so I won't try these.
But if you do try something and want to submit a pull-request, I will gladly look at it and merge it! Thanks in advance :pray:!
I wish you a Happy New Year (in advance, or not, depending on your time zone)!


package 'openssl' - Doesn't install openssl

Description
A custome recipe with:
package 'openssl'
Briefly describe the issue
Running the recipe should install openssl
Chef Version
Hosted chef server - chef.io
Tell us which version of chef-client you are using (see below for Server+ChefDK bugs).
12.30.37
Platform Version
Ubuntu 12.04
Tell us which Operating System distribution and version chef-client is running on.
Replication Case
Tell us what steps to take to replicate your problem.  See How to create a Minimal, Complete, and Verifiable example
for information on how to create a good replication case.
Client Output
The relevant output of the chef-client run or a link to a gist of the entire run, if there is one.
The debug output (chef-client -l debug) may be useful, but please link to a gist, or truncate it.
Stacktrace
Please include the stacktrace.out output or link to a gist of it, if there is one.
NOTE: CHEF CLIENT BUGS ONLY
This issue tracker is for the code contained within this repo -- chef-client, base knife functionality (not
plugins), chef-apply, chef-solo, chef-client -z, etc.

Server issues
ChefDK issues
Cookbook Issues (see the https://github.com/chef-cookbooks repos or search Supermarket or GitHub/Google)

closing as likely a dup of #3256 although there's not quite enough information to determine.


Remove Python 3.7 from tests actions

Given we are dropping Python 3.7 support, we could remove Python 3.7 from our tests actions: https://github.com/microsoft/vscode-autopep8/blob/main/.github/workflows/pr-check.yml

can you assign this to me please?


Add  header to libcpp

Proposed for consideration with the aim of adding support for smart pointers.

For instance, this implementation enables managing object lifetimes across Python and C++ as follows (based on the Rectangle example in the Cython docs):
from .libcpp.memory cimport shared_ptr, unique_ptr, weak_ptr

cimport c_rect

cdef extern from "<utility>" namespace "std" nogil:
    #cdef T move[T](T) # Not Supported
    cdef unique_ptr[c_rect.Rectangle] move(unique_ptr[c_rect.Rectangle])
    cdef shared_ptr[c_rect.Rectangle] move(shared_ptr[c_rect.Rectangle])

cdef class Rectangle(object):
    cdef shared_ptr[c_rect.Rectangle] _this

    @staticmethod
    cdef inline Rectangle from_shared(shared_ptr[c_rect.Rectangle] _this):
        ''' Wrap existing instance from C++. '''
        cdef Rectangle result = Rectangle.__new__(Rectangle)
        result._this = _this
        return result

    @staticmethod
    cdef inline Rectangle from_unique(unique_ptr[c_rect.Rectangle] _this):
        ''' Wrap existing instance from C++. '''
        return Rectangle.from_shared(shared_ptr[c_rect.Rectangle](move(_this)))

    def __init__(self, int x0, int y0, int x1, int y1):
        ''' Create new instance in Cython. '''
        self._this.reset(new c_rect.Rectangle(x0, y0, x1, y1))

    def __nonzero__(self):
        return self._this != NULL

    def __hash__(self):
        return hash(<size_t>self._this.get())

Potentially small things that would make this even better:

Support for nullptr and std::nullptr_t. (Attempting to use nullptr currently results in "undeclared name not builtin: nullptr".)
Support for std::move, which somewhat works, but has to be declared separately for every type (see above). (Attempting to declare it as a template results in compiler error "cannot convert argument 1 from 'T' to 'T&&'".)


rust-mode does not recognize Rust hex notation

https://github.com/brotzeit/rustic/issues/252

This can be done with tree-sitter.


fix user access to the private items

See issue #20

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 3 (0.0%)  changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage decreased (-0.009%) to 65.879%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

daiquiri/core/utils.py
0
3
0.0%

Totals

Change from base Build<PHONE_NUMBER>:
-0.009%

Covered Lines:
4599

Relevant Lines:
6981

💛  - Coveralls