Improve logging in Controllers by adding relevant context

Details
Right now, the controllers often produce logs that do not provide much value, due to missing context. A good example for that is this one: https://github.com/keptn/lifecycle-toolkit/blob/2558f742031e4d38a8006ce9894f41bddac7cd3f/lifecycle-operator/controllers/lifecycle/keptnappversion/controller.go#L75
This will generate something like:
2023-08-10T14:28:25Z	INFO	KeptnAppVersion Controller	Searching for Keptn App Version

On one side, this is helpful to indicate the start of a new reconciliation loop, but does not help much if I want to use the logs for debugging the reconciliation of a particular object in a cluster with a large number of resources. In some other places, this is done better by making use of the keysAndValues parameter of the logger's logging functions, where a list of keys and values is attached to a log line, as in the following:
2023-08-10T14:28:25Z	INFO	owner of pod is not supported by lifecycle controller	{"webhook": "/mutate-v1-pod", "object": {"kind":{"group":"","version":"v1","kind":"Pod"},"name":"","namespace":"kuttl-test-hot-gar"}, "namespace": "kuttl-test-hot-gar", "pod": ""}

Adding this context makes it way easier to actually use the logs for troubleshooting by filtering on e.g. a certain namespace, or the name of a resource.
The goal of this ticket should be to figure out a set of properties that should be attached to each log line, and make these available via a common function. Properties like name, namespace kind are good candidates, but others may also prove to be useful.
DoD

One PR per operator: lifecycle, cert-manager, metrics, scheduler
Log lines produced by the controllers contain contextual information which can be used to efficiently troubleshoot issues using the logs

I would like to work on this @bacherfl

@sudiptob2 this is the issue we discussed

@thisthat Could you please assign this issue to me

reopening because the merged PR #2253 is part of the issue, but the other operators remain to be improved

@geoffrey1330 you gotta explain me how you solved this issue :smile:
Would help me a ton.

@geoffrey1330 you gotta explain to me how you solved this issue 😄 Would help me a ton

Sure. you can hit me up on keptn slack channel


Text/images overlap on Extensions details page

VSCode Version: 1.51.1
OS Version: Ubuntu 18.04

Steps to Reproduce:

Go to Extensions page like Remote-Containers
Scroll the page under Details section

[After scrolling]Extensions page

Does this issue occur when all extensions are disabled?: Yes/No

Faced the same issue with windows.

OS: Windows 10
VSCode: Version: 1.51.1

I think this is a duplicate of #107104 which is already fixed in insiders and will be available in the November release
@Xavi007 @NaveenKumarMN20 can you reproduce with latest vscode insiders https://code.visualstudio.com/insiders/

@jeanp413 Thanks for the update, Checked with vscode insiders build, i was not able to reproduce the issue.


Document convenient way to measure pixel size on image with resolution bar

In some images coming from the microscope, there is often a bar indicating the image resolution / pixel size. This info is needed for ADS, and it would be nice to indicate users how to measure that bar.
@mariehbourget has a recommended software for this, maybe we could document it in RTD.

Stale


Python 3.7: async is now a reserved keyword

renamed references to async to c7n_async to avoid confusion

I am open to a better name but this was the first one that came to mind.

Thanks for the pull request!  If you don't mind could you sign the CLA at the bottom of the README? Direct link here: https://docs.google.com/forms/d/e/1FAIpQLSfwtl1s6KmpLhCY6CjiY8nFZshDwf_wrmNYx1ahpsNFXXmHKw/viewform
The s/async/c7n_async changes look good minus the action.py module, where its actually a user configuration string which we'll need to maintain for compatibility, for that case we'll need to define the schema manually instead of using the type_schema helper.

Hey @kaplit I filled out the CLA earlier (2-4 hours ago), maybe it didn't process yet?
I will review action.py soon! Thanks for the feedback!

@jvasallo thanks and sorry about that, it appears we're having some collection issues on that form, i'm trying to track it down.

historical context.. I was trying to track down our use of ruamel through the code base to audit compatibility, but was trying to remember why we have it at all. It was something @chadwhitacre did to help py2/3 compatibility specifically in tools/c7n_mailer for lambda support (normal custodian policies don't have a runtime dep on yaml in lambda) as pyyaml had issues deploying lambdas across language versions (ie. 3.6 cli deploying a 2.7 lambda or vice versa) due to the internal details of the package. everywhere else we use pyyaml.
I installed the latest ruamel.yaml==0.15.42 and it looks like its compatible with the mailer usage, so upgrading that version pin to 0.15.42 sounds good for py3.7 compatibility.

you'll need one more change to restrict the 3.7 ci execution to the test runs in. tools/dev/citoxenv.py you'll need another clause for 3.7 that looks like the one for 3.6. This will restrict the 3.7 matrix build to just run the tests instead of also doing the sphinx/coverage/lint runs.

Fixed issue with py37 env. Thanks for that info as well!

I think we're down to the last leg, thanks again for working on this. So the last ci failure is a bit more interesting, and may require some additional changes, its specifically in regards to handling namespace packages in python 3.7 which is either a behavior change in 3.7 or a test issue.
scanning through the 3.7 changeling this part shows a relevant bit
 Fixed some consistency problems with namespace package module attributes. Namespace module objects now have an __file__ that is set to None (previously unset), and their __spec__.origin is also set to None (previously the string "namespace"). See bpo-32305. Also, the namespace module object’s __spec__.loader is set to the same value as __loader__ (previously, the former was set to None). See bpo-32303.
re last ci failure
Traceback (most recent call last):
  File "/home/travis/build/capitalone/cloud-custodian/tests/test_mu.py", line 825, in test_handles_namespace_packages
    self.assertTrue(filenames[-1].endswith("-nspkg.pth"))
  File "/opt/python/3.7.0/lib/python3.7/unittest/case.py", line 692, in assertTrue
    raise self.failureException(msg)
AssertionError: False is not true
```

so looking at the code I'm guessing the fix is in c7n/mu.py line 91 the hasattr check that guards namespace handling, since there is a `__file__` attribute now (with `None` value) and that guard condition needs to be updated to also allow a None attribute. This change should do it.

`if getattr(module, '__file__', None) is None:`

Testing the above fix locally for py27, py36, and py37. So far so good. I must have missed the py37 failure last night apologies! Commit with fix coming soon. Thanks for the help, learning a bit here too 👍


Add support for buddy.core.crypto

Notice: This pull request includes the changes of pull request #9 , as I needed to fix the CI build for the "linux" job. Otherwise CircleCI failed the build for this commit, even if the code of the commit is perfectly fine. So you may want to merge PR #9, and then this one.
As the commit message says, add support for buddy.crypto.core. I'm aware of PR #8, but the changes proposed in that patch cannot work. It exposes the original buddy.core.crypto functions. And some of them return instances of BouncyCastle Java classes that cannot be serialized back to the pod client.
So I've taken the same approach that pod.babashka.buddy.kdf has taken for get-engine-bytes: compose the problematic functions together inside the pod function, and always return serializable values.
I have also decided to expose just a very small subset of what is available in buddy.core.crypto namespace. My rationale for this is that a babahska pod user won't generally need or use the low-level cryptographic primitives, or know what cryptographic constructs may offer which security properties (like non-malleable encryption, nonce or iv misuse, etc).
So I have restricted the offered functions to those that are sane and secure enough for most people (mostly the authenticated encryption versions for block ciphers), and the only stream cipher offered by buddy.core.crypto (in case someone like me need it, even if it doesn't provide authenticated encryption).
I think this is a good compromise, but YMMV.

@iarenaza Could you submit another PR with the updated docs? Then I'll take care of a release

Sure thing!


Setting files as default file manager makes all instances of Windows Explorer to Files

Description
If Files is set as default file manager, running Explorer will open Files instead. This is not what used to happen, folders opened from the desktop would still open in Files but Explorer could still launched from Run/CMD.
Steps To Reproduce

Make Files the default file manager.
Open the Run prompt.
Type "explorer"
Observe bug as Files opens in place of Windows Explorer.

Requirements

Return to the old behavior where Explorer could still be launchable.

Files Version
<IP_ADDRESS>
Windows Version
10.0.22631.2050
Log File
debug.log

Thanks for the feedback, but this is intended as the option replace all calls to Windows File Explorer. You can still open it by putting a path in like c: this also works in Files address bar.

Thanks for the feedback, but this is intended as the option replace all calls to Windows File Explorer. You can still open it by putting a path in like c: this also works in Files address bar.

It wasn't like this though. I could open Explorer just fine before the update. In fact, it has come to the point where when I start Windows, the shell won't load as it will not load Explorer and instead start Files.

Can you try turn the option off and confirm it's from Files causing the desktop to load. You can also turn it back on and see if it fixes it.

Since your on the beta branch of Windows did it update before the issue started

Can you try turn the option off and confirm it's from Files causing the desktop to load. You can also turn it back on and see if it fixes it.

I did check Task Manager. With the option on, the desktop won't load but there is one Files instance active. Running explorer repeatedly seems to get it through, but several Files instances open this time.

Since your on the beta branch of Windows did you update before the issue started

I did. Maybe it's issues with the updates WinUI3 explorer that's causing it.

Can you try turning the option off and see if the desktop is ran like normal.
If it does it's very likely a Windows issue and Files probably wont be able to fix it for awhile.

Can you try turning the option off and see if the desktop is ran like normal. If it does it's very likely a Windows issue and Files probably wont be able to fix it for awhile.

The desktop launches as normal when the option is turned off.

Thanks for the information, I've added this to the project board.

@cartifanwlr thank you for your feedback, this is indeed one of the side effects of modifying the registry keys. I'm not sure why the behavior was different before (we didn't make any changes that I'm aware of), but it's possible that it depends on the Windows version. We've shared this feedback with Microsoft and requested a built-in setting for changing the default file manager, but until then, this is one of the reasons why the setting is still experimental.


Spotdl fails to download playlist with URLError: WinError 10061

System OS
Windows
Python Version
3.11 (CPython)
Install Source
pip / PyPi
Install version / commit hash
4.1.8
Expected Behavior vs Actual Behavior
spotdl fails downloading the following playlist:
https://open.spotify.com/playlist/1O1pdjEr9LWAd1hkujPui5?si=ee80e138ee8c4c85
Steps to reproduce - Ensure to include actual links!

Open cmd or wsl

Type: spotdl https://open.spotify.com/playlist/1O1pdjEr9LWAd1hkujPui5?si=ee80e138ee8c4c85

Traceback
URLError: <urlopen error [WinError 10061] No connection could be made because the target machine actively refused it>
URLError: <urlopen error [WinError 10061] No connection could be made because the target machine actively refused it>
URLError: <urlopen error [WinError 10061] No connection could be made because the target machine actively refused it>
URLError: <urlopen error [WinError 10061] No connection could be made because the target machine actively refused it>
URLError: <urlopen error [WinError 10061] No connection could be made because the target machine actively refused it>
URLError: <urlopen error [WinError 10061] No connection could be made because the target machine actively refused it>
URLError: <urlopen error [WinError 10061] No connection could be made because the target machine actively refused it>
URLError: <urlopen error [WinError 10061] No connection could be made because the target machine actively refused it>
URLError: <urlopen error [WinError 10061] No connection could be made because the target machine actively refused it>
URLError: <urlopen error [WinError 10061] No connection could be made because the target machine actively refused it>
URLError: <urlopen error [WinError 10061] No connection could be made because the target machine actively refused it>
URLError: <urlopen error [WinError 10061] No connection could be made because the target machine actively refused it>
URLError: <urlopen error [WinError 10061] No connection could be made because the target machine actively refused it>
URLError: <urlopen error [WinError 10061] No connection could be made because the target machine actively refused it>
URLError: <urlopen error [WinError 10061] No connection could be made because the target machine actively refused it>
URLError: <urlopen error [WinError 10061] No connection could be made because the target machine actively refused it>
URLError: <urlopen error [WinError 10061] No connection could be made because the target machine actively refused it>
URLError: <urlopen error [WinError 10061] No connection could be made because the target machine actively refused it>
URLError: <urlopen error [WinError 10061] No connection could be made because the target machine actively refused it>
URLError: <urlopen error [WinError 10061] No connection could be made because the target machine actively refused it>
URLError: <urlopen error [WinError 10061] No connection could be made because the target machine actively refused it>
URLError: <urlopen error [WinError 10061] No connection could be made because the target machine actively refused it>
URLError: <urlopen error [WinError 10061] No connection could be made because the target machine actively refused it>
URLError: <urlopen error [WinError 10061] No connection could be made because the target machine actively refused it>
URLError: <urlopen error [WinError 10061] No connection could be made because the target machine actively refused it>
URLError: <urlopen error [WinError 10061] No connection could be made because the target machine actively refused it>
URLError: <urlopen error [WinError 10061] No connection could be made because the target machine actively refused it>
URLError: <urlopen error [WinError 10061] No connection could be made because the target machine actively refused it>
URLError: <urlopen error [WinError 10061] No connection could be made because the target machine actively refused it>
https://open.spotify.com/track/1Zyj1TtYdxJsXjpwAEvDms - URLError: <urlopen error [WinError 10061] No connection could be made because the target machine actively refused it>
https://open.spotify.com/track/3cWzy2XDyZP5OT5MygdxHt - URLError: <urlopen error [WinError 10061] No connection could be made because the target machine actively refused it>
https://open.spotify.com/track/3ttorjJ7bjjIAvJAD8UyaX - URLError: <urlopen error [WinError 10061] No connection could be made because the target machine actively refused it>
https://open.spotify.com/track/0H9WHopZ62JeDaGau7REMw - URLError: <urlopen error [WinError 10061] No connection could be made because the target machine actively refused it>
https://open.spotify.com/track/1vbkGTBLNJYRvT5GJlWXLf - URLError: <urlopen error [WinError 10061] No connection could be made because the target machine actively refused it>
https://open.spotify.com/track/0wedgCpvgK8SrNGCCgpMYc - URLError: <urlopen error [WinError 10061] No connection could be made because the target machine actively refused it>
https://open.spotify.com/track/47XiTkMb4QCa2iMGAeRhOp - URLError: <urlopen error [WinError 10061] No connection could be made because the target machine actively refused it>
https://open.spotify.com/track/4bUbQ60lgiWkAykImjoHc8 - URLError: <urlopen error [WinError 10061] No connection could be made because the target machine actively refused it>
https://open.spotify.com/track/7sJNeWTXkZCEC7OnFMpGWL - URLError: <urlopen error [WinError 10061] No connection could be made because the target machine actively refused it>
https://open.spotify.com/track/6fDC5DIa4bt6NbPZWR1yxM - URLError: <urlopen error [WinError 10061] No connection could be made because the target machine actively refused it>
https://open.spotify.com/track/2pfio0uHpT4USTPBNeTIWo - URLError: <urlopen error [WinError 10061] No connection could be made because the target machine actively refused it>
https://open.spotify.com/track/3Fa9QIr2kM3oJc5vRppFWy - URLError: <urlopen error [WinError 10061] No connection could be made because the target machine actively refused it>
https://open.spotify.com/track/6AFIVhbJLR7YVvW9fLFMu1 - URLError: <urlopen error [WinError 10061] No connection could be made because the target machine actively refused it>
https://open.spotify.com/track/1TM2i0pjWHpus4t3p6zs0V - URLError: <urlopen error [WinError 10061] No connection could be made because the target machine actively refused it>
https://open.spotify.com/track/1VEMUkGFio5uURvN8x1DZJ - URLError: <urlopen error [WinError 10061] No connection could be made because the target machine actively refused it>
https://open.spotify.com/track/7pMc3ABRFP5oj6U9FfWmZE - URLError: <urlopen error [WinError 10061] No connection could be made because the target machine actively refused it>
https://open.spotify.com/track/2kkcJ8tSDV42LdWcPjy6We - URLError: <urlopen error [WinError 10061] No connection could be made because the target machine actively refused it>
https://open.spotify.com/track/42hrHYe1Dw92eiZwWQF0sr - URLError: <urlopen error [WinError 10061] No connection could be made because the target machine actively refused it>
https://open.spotify.com/track/2pfio0uHpT4USTPBNeTIWo - URLError: <urlopen error [WinError 10061] No connection could be made because the target machine actively refused it>
https://open.spotify.com/track/1vbkGTBLNJYRvT5GJlWXLf - URLError: <urlopen error [WinError 10061] No connection could be made because the target machine actively refused it>
https://open.spotify.com/track/5FGtzUgxycYideaPBFdkaV - URLError: <urlopen error [WinError 10061] No connection could be made because the target machine actively refused it>
https://open.spotify.com/track/3hjWfU0ZBa9MjFY6C12pYR - URLError: <urlopen error [WinError 10061] No connection could be made because the target machine actively refused it>
https://open.spotify.com/track/1LcvTvRfWrQjrF6aymfugd - URLError: <urlopen error [WinError 10061] No connection could be made because the target machine actively refused it>
https://open.spotify.com/track/50mQStZYV5QFgyGK9GOVZg - URLError: <urlopen error [WinError 10061] No connection could be made because the target machine actively refused it>
https://open.spotify.com/track/1As8f8iPGCx0evpgY0xrka - URLError: <urlopen error [WinError 10061] No connection could be made because the target machine actively refused it>
https://open.spotify.com/track/1b0gUslAhQa88NT3tRB6MP - URLError: <urlopen error [WinError 10061] No connection could be made because the target machine actively refused it>
https://open.spotify.com/track/7G4wi7IAadEj3pzQeR923K - URLError: <urlopen error [WinError 10061] No connection could be made because the target machine actively refused it>
https://open.spotify.com/track/11nCZnfaUl7BDwBCoezUTf - URLError: <urlopen error [WinError 10061] No connection could be made because the target machine actively refused it>
https://open.spotify.com/track/3TgvfxkNsd4YU1898XnBrM - URLError: <urlopen error [WinError 10061] No connection could be made because the target machine actively refused it>

Other details
No response

do you use proxies/vpn?

do you use proxies/vpn?

No i don't use any vpn or proxy, if i open the link for the tracks in the browser it loads normally.

There might be an issue with your python environment or your local network might be misconfigured. I can't really help you here, google is your best bet.


Cleanup matrix and run tests in CI

I discovered in https://github.com/servo/surfman/pull/321 that we do not run any test in CI, so I cleaned up matrix, run tests on native platforms (use wayland/x11 emulation on linux) and fix examples (mostly by removing support for rwh05 that wasn't working anyway). I think it should be safe to remove rwh05 as winit only supports rwh06, but that should be done as a followup.

I've added https://github.com/servo/surfman/pull/323/commits/f7280b645be9ae7e7dd2a36023103c50a7c8453b that ignores some bad results from angle.
BTW I do not have permissions to land in surfman :(

I just fixed the repo settings; the Maintainers team only had read access for some reason.

I added the maintainers team to the list of authorized users.

It works!


[Bug] volume viewport resetCamera doesn't behave as expected

Describe the Bug
On VolumeViewports this doesn't seem to work now, which worked pre 2.0:
volumeViewport.resetCamera({
      resetPan: true,
      resetZoom: true,
      resetToCenter: false,
      resetRotation: false,
      supressEvents: false,
      resetOrientation: false,
    });

Previously, it would reset the zoom/pan, maintain the current view direction and not reset to the center of slice/volume. I.e. it would work as a "fit image to screen" regardless of orientation/rotation, etc.
Now it just seems to always reset the volume completely (i.e. all rotation, to the middle slice).
Steps to Reproduce
Set up a volume viewport, rotate it obliquely and scroll to some random slice.
call:
volumeViewport.resetCamera({
      resetPan: true,
      resetZoom: true,
      resetToCenter: false,
      resetRotation: false,
      supressEvents: false,
      resetOrientation: false,
    });

on the volume viewport.
The current behavior
It resets the volume completely (i.e. all rotation, to the middle slice).
The expected behavior
Previously, it would reset the zoom/pan, maintain the current view direction and not reset to the center of slice/volume. I.e. it would work as a "fit image to screen" regardless of orientation/rotation, etc.
OS
N/A
Node version
N/A
Browser
Chrome

It seems that it works in the example, no ? https://www.cornerstonejs.org/live-examples/resetcamera


Fix bugs in FastBootLocation path and queryString methods

📖 Description
There was a bug in both path and queryString methods for FastBootLocation where we assumed that a #hash would be present. I added a test for both methods and fixed the bug!
🦀 Dispatch

#dispatch/ember

🦀 Requesting reviewers for this pull request:

@garno (contributor with 0 commits in the last 90 days and 7 commits overall)
@charlesdemers (reviewer for the ember stack)


Fix kubelet-config file name

Changed the kubelet-config file name from /var/lib/kubelet/config.conf to /var/lib/kubelet/config.yaml
This will fix https://github.com/kubernetes/website/issues/43213

Thanks @dipesh-rawat I have merged the suggestion code. Please feeback and review when you have time.

/sig cluster-lifecycle

Please try squash the PR into a single commit.
Each time when you make amendments to your existing PR, you can do git commit --amend to avoid a new commit.
Having more than one commit may pose some annoying problems when the maintainers try to merge the main branch with the dev-1.xx branch. Unless there is a good reason to split a PR into several commits. When you have to do that, it may mean you are supposed to propose a separate PR.
/approve

Thanks. I have done this one commit now.


PopupMenu size doesn't respect usable screen size

Godot version:
master b0ca859501186b6fa088a3d3542f7dd4d72ae305
OS/device including version:
Linux (Ubuntu 20.04)
Also reproduced on Windows 10
Issue description:
PopupMenu items sometimes expand outside of the usable desktop space, either on top or behind decorations like task bars depending on the desktop system.
Example with Ubuntu/Gnome, the menu can show behind the top bar and the dock (when set at the bottom):

Steps to reproduce:
Simple repro case in the editor:

Make an export variable of type Resource
Click the resource load button in the inspector
Scroll up and down through resource types

Minimal reproduction project:
popup-menu-size-bug.zip

The strange thing for me is that sometimes the popup does respect the bounds, and sometimes not. For example, when right-clicking in the File System Dock near the bottom, the popup will go under the taskbar (WIN10). However, if I open a popup menu in the inspector which is near the bottom of the screen, it will respect the bounds.
No good:

Just fine:


Added Signum University

@johnsda Could you please provide us with:

a proof of official recognition of the school by the national education authority,
an URL of a page on the official school's website where the school offers an IT-related long-term (>1 year) course,
an info about the school's policy regarding issuing e-mail addresses for students, as well as withdrawal of the addresses from those who already graduated.

@johnsda I am sorry, this request remains unanswered for a while. I have to close it without merging. Please reopen and comment if you have an update regarding the aforementioned issue. Thank you for the understanding!


Less verbose logging and feedback

We need to improve HelmVM logging as what we have currently is considered to be way too verbose. We need to try to find a balance between being too verbose and lacking proper feedback (the later may cause the user to misunderstand the lacking of logging with a hang).
This is an example of what is being logged during a single node install today:
root@ip-172-16-10-179:~# helmvm install
INFO[0000] Materializing binaries
INFO[0000] Processing cluster configuration
✓  [ssh] <IP_ADDRESS>:22: executing `[ "$(id -u)" = 0 ]`
INFO[0001] Applying cluster configuration
✓  level=info msg="     k0sctl kubeconfig"
INFO[0038] Reading cluster access configuration
INFO[0039] Kubeconfig saved to /root/.helmvm/etc/kubeconfig
INFO[0039] Applying add-ons
✓  Kubernetes API server is ready.
INFO[0042] Apply addon openebs.
INFO[0042] Finding latest OpenEBS addon version          addon=openebs
INFO[0042] Latest OpenEBS version found: v3.7.0          addon=openebs
INFO[0042] OpenEBS hasn't been installed yet, installing it.  addon=openebs
INFO[0042] creating 1 resource(s)                        addon=openebs
INFO[0043] creating 1 resource(s)                        addon=openebs
INFO[0043] beginning wait for 2 resources with timeout of 1m0s  addon=openebs
INFO[0043] Clearing REST mapper cache                    addon=openebs
INFO[0044] creating 1 resource(s)                        addon=openebs
INFO[0044] creating 6 resource(s)                        addon=openebs
INFO[0044] Addon openebs applied.
INFO[0044] Apply addon adminconsole.
INFO[0044] Finding Latest Admin Console addon version    addon=adminconsole
INFO[0044] Latest Admin Console version found: v1.100.1  addon=adminconsole
INFO[0044] Admin Console hasn't been installed yet, installing it.  addon=adminconsole
? Enter a new Admin Console password: ************
INFO[0049] creating 1 resource(s)                        addon=adminconsole
INFO[0049] creating 17 resource(s)                       addon=adminconsole`
INFO[0030] Created a new ServiceAccount called "kotsadm" in helmvm  addon=adminconsole
INFO[0030] Patch Secret "kotsadm-cluster-token" in namespace helmvm  addon=adminconsole
INFO[0030] Created a new Secret called "kotsadm-encryption" in helmvm  addon=adminconsole
INFO[0030] Looks like there are no changes for Secret "kotsadm-session"  addon=adminconsole
INFO[0030] Looks like there are no changes for Secret "kotsadm-rqlite"  addon=adminconsole
INFO[0030] Looks like there are no changes for Secret "kotsadm-minio"  addon=adminconsole
INFO[0030] Created a new Secret called "kotsadm-password" in helmvm  addon=adminconsole
INFO[0030] Created a new ConfigMap called "kotsadm-confg" in helmvm  addon=adminconsole
INFO[0030] Created a new ClusterRole called "kotsadm-role" in   addon=adminconsole
INFO[0030] Created a new ClusterRoleBinding called "kotsadm-rolebinding" in   addon=adminconsole
INFO[0030] Created a new Service called "admin-console" in helmvm  addon=adminconsole
INFO[0030] Created a new Service called "kotsadm-minio" in helmvm  addon=adminconsole
INFO[0030] Created a new Service called "kotsadm-rqlite" in helmvm  addon=adminconsole
INFO[0030] Created a new Service called "kotsadm-rqlite-headless" in helmvm  addon=adminconsole
INFO[0030] Created a new Deployment called "kotsadm" in helmvm  addon=adminconsole
INFO[0030] Created a new StatefulSet called "kotsadm-minio" in helmvm  addon=adminconsole
INFO[0030] Created a new StatefulSet called "kotsadm-rqlite" in helmvm  addon=adminconsole
INFO[0030] Applying admin console customization
INFO[0030] No admin console customization found
INFO[0030] Addon adminconsole applied.
INFO[0030] Apply addon custom.
INFO[0030] No embed charts found, skipping custom addons.  addon=custom
INFO[0030] Addon custom applied.
INFO[0030] Running post-apply script on nodes
✓  Post apply process finished
INFO[0030] Cluster configuration has been applied
INFO[0030] Kubeconfig file has been placed at at /root/.helmvm/etc/kubeconfig
INFO[0030] Cluster configuration file has been placed at /root/.helmvm/etc/k0sctl.yaml
INFO[0030] You can now access your cluster with kubectl by running:
INFO[0030]   helmvm shell
root@ip-172-16-10-179:~#

What we want is something similar to this:
$ helmvm install
✓ Installing HelmVM node `x`
✓ Waiting for services to start
✓ Creating systemd service
✓ Installing OpenEBS
✓ Installing AdminConsole
Cluster configuration has been applied
Kubeconfig file has been placed at at /root/.helmvm/etc/kubeconfig
Cluster configuration file has been placed at /root/.helmvm/etc/k0sctl.yaml
You can now access your cluster with kubectl by running:
   helmvm shell
$

We still want to have the spinning circle ("◐", "◓", "◑", "◒") while the operations are taking place. We should store all more verbose logging in a file and if something goes wrong dump a message informing the path to the file so users can or send the file to us or investigate themselves what may be causing the issue.
Notes

We want to stop using logrus for these logging hitting the user, we should divert to fmt default functions instead.

Already on Shortcut.


Sensitivity and scroll bug

OS
macOS 13.3 (Build 22E252)
LinearMouse
v0.8.0
Describe the bug
When I come back to my computer after being locked, my sensitivity is much higher than it was before. Scroll also does not work. What will reset this is opening USB Overdrive (I used this previously) and quitting it. However, while the sensitivity is restored back to normal after this, a repeated error sound plays till I unplug and replug the mouse.
To reproduce
No response
Expected behavior
Sensitivity and scroll should not change.
Anything else?
No response

That's weird. Can you consistently reproduce this issue on your Mac?
It would be helpful if you could provide the logs from before the system was locked until you logged in again. Please refer to #117 for instructions on how to access and provide the logs.

I actually somewhat found out what the issue was. It turns out that my mouse shows up as itself and then like 4 other VirtualHIDs in the tab. The input source constantly switches between them. I don’t know if there is anything you can do as this seems like a mouse software issue. Thanks though.Sent from my iPhoneOn Apr 5, 2023, at 4:55 AM, Jiahao Lu @.***> wrote:
That's weird. Can you consistently reproduce this issue on your Mac?
It would be helpful if you could provide the logs from before the system was locked until you logged in again. Please refer to #117 for instructions on how to access and provide the logs.
—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you authored the thread.Message ID: @.***>

These VirtualHID devices should've been created by USB Overdrive. I would suggest not installing LinearMouse and USB Overdrive at the same time, as they may conflict with each other.

I had also uninstalled usb overdrive, but the problem persisted. Do I have
to go delete them from somewhere?
On Thu, Apr 6, 2023 at 8:11 AM Jiahao Lu @.***> wrote:

These VirtualHID devices should've been created by USB Overdrive. I would
suggest not installing LinearMouse and USB Overdrive at the same time, as
they may conflict with each other.
—
Reply to this email directly, view it on GitHub
https://github.com/linearmouse/linearmouse/issues/427#issuecomment-1499043119,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AQ2SYHKZ3QBGJDM5CMPB5KLW726HPANCNFSM6AAAAAAWTHX5PA
.
You are receiving this because you authored the thread.Message ID:
@.***>

--
William He

Do VirtualHID devices still exist after uninstalling USB Overdrive?

Yes
On Thu, Apr 6, 2023 at 8:36 AM Jiahao Lu @.***> wrote:

Do VirtualHID devices still exist after uninstalling USB Overdrive?
—
Reply to this email directly, view it on GitHub
https://github.com/linearmouse/linearmouse/issues/427#issuecomment-1499076255,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AQ2SYHM5RZCZHKMK4TGQP3DW73BFPANCNFSM6AAAAAAWTHX5PA
.
You are receiving this because you authored the thread.Message ID:
@.***>

--
William He

Let's see if there are system extensions left over.
Open Terminal.app and paste the following command:
systemextensionsctl list

Press Enter and you'll see all the system extensions installed.
For example, I have Karabiner-Elements installed on my Mac:
➜  ~ systemextensionsctl list
1 extension(s)
--- com.apple.system_extension.driver_extension
enabled	active	teamID	bundleID (version)	name	[state]
*	*	G43BCU2T37	org.pqrs.Karabiner-DriverKit-VirtualHIDDevice (1.6.0/1.6.0)	org.pqrs.Karabiner-DriverKit-VirtualHIDDevice	[activated enabled]

It's interesting, I also have the same issue, also previously coming from usboverdrive but that's completely uninstalled. There's nothing unexpected in the systemextensionsctl list output.
The issue is also very subtle for me. Like after I log in to my mac I feel like I'm overshooting every target with my mouse, although I'm pretty accurate with my settings.
I 'feel' that it resolves itself after a few minutes, so maybe there is some other utility loaded upon log-in that has some influence on my mouse speed?
I know, these subtle issues are hard to debug.

Thank you! This would have taken so long to figure out without your answer. Instantly corrected the issue without a reboot.
λ systemextensionsctl list com.apple.system_extension.driver_extension
4 extension(s)
--- com.apple.system_extension.driver_extension
enabled	active	teamID	bundleID (version)	name	[state]
*	*	YYYYYYYYY	com.usboverdrive.dext (5.1/5100)	OverdriveDriver	[activated enabled]
*	*	ZZZZZZZZZ	org.pqrs.Karabiner-DriverKit-VirtualHIDDevice (1.6.0/1.6.0)	org.pqrs.Karabiner-DriverKit-VirtualHIDDevice	[activated enabled]

λ systemextensionsctl uninstall YYYYYYYYY com.usboverdrive.dext
Success

λ systemextensionsctl list com.apple.system_extension.driver_extension
4 extension(s)
--- com.apple.system_extension.driver_extension
enabled	active	teamID	bundleID (version)	name	[state]
		YYYYYYYYY	com.usboverdrive.dext (5.1/5100)	OverdriveDriver	[terminated waiting to uninstall on reboot]
*	*	ZZZZZZZZZ	org.pqrs.Karabiner-DriverKit-VirtualHIDDevice (1.6.0/1.6.0)	org.pqrs.Karabiner-DriverKit-VirtualHIDDevice	[activated enabled]


Initial build

Linter check found the following problems:
The following problems have been found:
ERROR: clone/recipe/meta.yaml:16: pip_install_args: pip install should be run with --no-deps and --no-build-isolation.
ERROR: clone/recipe/meta.yaml:21: host_section_needs_exact_pinnings: Packages in host must have exact version pinnings, except python build tools.
Errors were found


How we can change the color of text into statusline?

Hi, I'd like to change the color of text for more contrast but I coudn't do it, I tryed to change the color #53586F to # another  but nothing.

Hi @jazei-AR,
The text is indeed unreadable. Do you have a plugin installed for your statusline? Archery supports Airline and Lightline, which are great in most cases.
Otherwise, you may have an issue with colors in your terminal emulator. Which one, by the way?
Have a nice day!


Http Integration Tests for Bit Operations

Fixes : https://github.com/DiceDB/dice/issues/734

Closed due to inactivity.


How can I change delay ?

Hi,
I want to change delay. for example, by changing sample rate or buffer size.
How can I do it ?

gradually like to route audio to https://github.com/googlesamples/android-audio-high-performance
it is focus on low latency audio. create an issue there:  https://github.com/googlesamples/android-audio-high-performance/issues/92
assuming you want to go lower and lower for latency, buffer size would be directly affecting it. But it could not go too low: system will glitch. let's address it in that repo.

Yes. I want to have ability to change delay.
I try that repo https://github.com/googlesamples/android-audio-high-performance  but it doesn't compile.


Cumulativity should keep the output relation the same

https://github.com/Beluga-lang/McLTT/blob/86f48d948352683b1c6c28413db5d1d2894c5d0d/theories/Core/Soundness/LogicalRelation/Lemmas.v#L623-L627
P and El should not change. This is how it is in Agda: https://hustmphrrr.github.io/mech-type-theories/MLTT.Soundness.Cumulativity.html

ok I see. I am wrong. Indeed, there should be an implication.

Yeah, reverse direction for El should be handled by a lowering lemma. You know, this is why the lowering lemma is (at least in the technical level) so important.

yeah I think this lemma can be changed to a form easier to prove though. notice that the existential claim can already be established due to cumulativity of the per model, so what's important is really the implication part. so P' and El' here should also be universally quantified, and the conclusion should be implications.

Yeah, that would be easier to prove. I will change the form if you are not going to do so in a few days.

no I am not. go ahead. I can prove monotonicity

cumulativity should probably go under a different file, because it uses realizability.


[HTML5] TextField width with size 1px cause crash

I have my class which extend Textfield . At example :
class CommonLabel extends TextField
so when I create instance and init my class I set width = 1px , but the app freeze and not have any error or other indication for problem . If set width to be 4px or more, everything works. On flash there is no problem to set 1 px . Setting width on textfield to be 1px is only for initial creation on class.  Why there have problem to set < 4 px only for html5 target ?

This might have been fixed already. Is your OpenFL at the latest version? If so, try using the latest dev build.

I'm using OpenFL 6.1.0 and Lime 5.4.0 . I will update to 6.1.2 and will try

It's work with 6.1.2
Thank you.


fix(build): fix arm64 build

This fixes arm64 build error below:
"config/arm/meson.build:474:16: ERROR: Problem encountered: Error when getting Arm Implementer ID and part number."
Nix build only support generic platform for Arm64. Need to define "DPDKBUILD_FLAGS=-Dplatform=generic". For details see: https://github.com/NixOS/nixpkgs/commit/5ff289f39e7e3a30298ea7920337480d00988510
https://github.com/spdk/spdk/issues/2444
close #1201
Signed-off-by: Xinliang Liu<EMAIL_ADDRESS>

bors merge


Allow passing in a generic type for the client

Consumers who use seam.client would like to use https://www.npmjs.com/package/typed-axios-instance
Supporting typed-axios-instance directly in this library is out of scope.
Instead, the SeamHttp class could provide setting the client type via 'fromClient`, e.g.,

import { SeamHttp } from '@seamapi/http'
import type { TypedAxios } from 'typed-axios-instance'

import type { Routes } from './routes.js'

const seam = new Seam() // create a new instance normally

type Client = TypedAxios<Routes>

const seamWithTypedRoutes = Seam.fromClient<Client>(seam.client)

Reviewing this again, I don't feel the generic parameter is the correct solution. We should just be able to respect the type of the client passed to fromClient, e.g., why doesn't this work?
import { SeamHttp } from '@seamapi/http'
import type { TypedAxios } from 'typed-axios-instance'

import type { Routes } from './routes.js'

const seam = new Seam() // create a new instance normally

type Client = TypedAxios<Routes>

const seamWithTypedRoutes = Seam.fromClient(seam.client as Client)


size_hint should be able to return a lower bound that is infinite

 Issue by vks
Friday Nov 07, 2014 at 22:01 GMT
For earlier discussion, see https://github.com/rust-lang/rust/issues/18751
This issue was labelled with: A-iterators, A-libs, B-RFC in the Rust repository

Taken from the standard library:
impl<A: Add<A, A> + Clone> Iterator<A> for Counter<A> {
    [...]
    #[inline]
    fn size_hint(&self) -> (uint, Option<uint>) {
        (uint::MAX, None) // Too bad we can't specify an infinite lower bound
    }
}

Some iterators are infinite, size_hint should be able to return (None, None) for that. This warrants changing the type signature to (Option<uint>, Option<uint>).

@steveklabnik
Triage: This issue is largely academic at this point (breaking change). Mind closing?


Crazy error with ENetMultiplayer

Tested versions
v4.2.2.rc1.official [c7fb0645a]
System information
Windows 10/64 - Vulkan (Forward+) - dedicated NVIDIA GeForce RTX 4070 Desktop GPU (NVIDIA; <IP_ADDRESS>33)
Issue description
I have been having issues trying to get my multiplayer working, and have been battling many bugs. One bug is the garbled mess shown below. This is exactly as it comes from the console. Some errors are legible (as in not a crazy aztec language) but even the legible ones (ERROR: Condition "!pinfo" is true. Continuing.) confuse me. I can't narrow down what is causing them to apear.
My scene setup is pretty like this:
root

World
MultiplayerSpawner (only to spawn scenes under "Level")

Level

Map1

Players

1 (server)

ServerSynchronizer (position, rotation, etc.)

1837827 (client) (same as server)

MultiplayerSpawner (Spawns everything in "Map1")

MultiplayerSpawner2 (Spawns only players in "Players")

etc. map stuff

ERROR: Condition "paproesnitt-i>ohans:_ n(o3d2e.(5n3a5m4e8),"  7i7s1 .t5r2u5e8.,  R-e2tu5r7.n0i0n4g4:)
ERR_INVALID_DATA
ERROR: ID 5 not found in cache of peer 1.
   at: (modules/multiplayer/scene_cache_interface.cpp:278)
ERROR: ID 6 not found in cpaocshiet iofo np:e e(r3 21..5
35 4 8 ,a t7:7 1(m.o5d2u5l8e,s /-2m5u7l.t0i0p4l4a)y
er/scene_cache_interface.cpp:278)
ERROR: ID 7 not found in cache of peer 1.
   at: (modules/multiplayer/scene_cache_interface.cpp:278)
ERROR: ID 8 not found in cache of peer 1.
   at: (modules/multiplayer/scene_cache_interface.cpp:278)
ERROR: ID 5 not found in cache of peer 1.
   at: (modules/multiplayer/scene_cache_interface.cpp:278)
ERROR: ID 6 not found in cache of peer 1.
   at: (modules/multiplayer/scene_cache_interface.cpp:278)
ERROR: ID 7 not found in cache of peer 1.
   atp:o s(itimoond:u l(e3s/2m.u5l3t5i4p8l,a y7e7r1/.s5c2e5n8e,_ c-a2c5h7e._0i0n4t4e)r
face.cpp:278)
ERROR: Condition "!pinfo" is true. Continuing.
   at: _remove_node_cache (modules/multiplayer/scene_cache_interface.cpp:57)

Steps to reproduce
I don't know the exact steps to reproduce.
Minimal reproduction project (MRP)
I was unable to create a small, simple reproduction of this bug, I don't know what is not working correctly, but I tried 10 different configurations.

Could this have something to do with multi threading? It's two messages overlapping each other. With each message contributing approximately every other character.
cpaocshiet iofo np:e e(r3 21..5 is a combination of cache of peer 1. and position: (32.5

Nice catch. I am not utilizing anything with threading specifically in my project yet. But I suppose it could be the fact that I am running two instances at once in a server / client config running on localhost. So it could be the overlap of the server and client together?
But I still am unable to trace down my issue with the vague "Condition "!pinfo" is true." error.

I'm not sure if this will lead you to a solution, but I think the first message says ERROR: Condition "parent->has_node(name)" is true. Returning: That error might lead to a cascade of the other errors you see. Maybe there's a conflict where two nodes are attempting to have the same name?
As for why some of the messages come across as gibberish, it may be useful to look into what is causing the other message. position: (32.53548, 771.5258, -257.0044)
Do you have anything that is printing its position to the console repeatedly? Perhaps it's being run on a physics or other asynchronous thread.


How to describe the stored procedure MSSQL and call it a CMS?

Good afternoon, misters.
I can't understand as to issue store procedure and to cause it from CMS.
I write as to documentation:
[Function(Name = "usp_SelectCustomer", IsComposable = false)]
public ISingleResult getCustomerAll()
{
IExecuteResult objResult =
this.ExecuteMethodCall(this,(MethodInfo)(MethodInfo.GetCurrentMethod()));
ISingleResult<clsCustomerEntity> objresults =
    (ISingleResult<clsCustomerEntity>) objResult.ReturnValue;
return objresults;

}
What's the problem?

Any more info on this question or can I close the issue?


Updates flutter_gallery to latest Shrine code.

This PR removes the original version of Shrine from the gallery and replaces it with the latest code from the Material team (also kept at https://github.com/flutter/samples/tree/master/shrine/).

Also full disclosure: This PR now includes the addition of a toString method for TweenSequence. It ended up in this PR because it was needed to unbreak some tests, but should be a good thing in the long run regardless.


feat: create scaffolding for a O11y cluster

This adds changes for an o11y cluster using Packer, Terraform, and Ansible. Note that this PR is NOT wholesome, and some boilerplate code may have been added before this PR.
The main things in this order are:

We build Linode Image for the Linode Instance with pre-installed tooling
We use Terraform to provision a given no. of instances for "leaders" and "workers"
We use Ansible to initialize the swarm cluster

Use dynamic inventory plugins to poll and get the Linode nodes based on tags

...

This is getting out of hand - I might merge this in and bring in more PRs.


csg_stat_angular throws std::bad_alloc

Testing 1.5_rc1 on Fedora, I get a:
48/74 Test #48: Run_csg_stat_angular ...................Child aborted***Exception:   0.18 sec
begin to calculate distribution functions
# of bonded interactions: 0
# of non-bonded interactions: 1
I have 648 beads in 216 molecules
I have 216 beads in 216 molecules for the coarsegraining
Reading frame, timestep 0
terminate called after throwing an instance of 'std::bad_alloc'
  what():  std::bad_alloc

std::bad_alloc usually means the system ran out of heap memory, but the test system is so small that
should not be the case!
Any ideas?

hmm... maybe some runaway access. My big guess is a massive memory leak.
Valgrind will help.

how do I execute this test on its own?

ctest -R Run_csg_stat_angular

is this fixed?


Error :  too many values to unpack

Hi,
When I manually launch barman-exporter, I got this error :
Traceback (most recent call last):
  File "/usr/local/bin/barman_exporter.py", line 41, in list_backup
    server_name_and_ts, date, size, wal_size = backup_line.split("-")
ValueError: too many values to unpack (expected 4)

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/bin/barman_exporter.py", line 154, in <module>
    core.REGISTRY.register(BarmanCollector(args.servers))
  File "/usr/lib/python3.4/site-packages/prometheus_client/registry.py", line 24, in register
    names = self._get_names(collector)
  File "/usr/lib/python3.4/site-packages/prometheus_client/registry.py", line 64, in _get_names
    for metric in desc_func():
  File "/usr/local/bin/barman_exporter.py", line 122, in collect
    backups_done, backups_failed = barman.list_backup(server_name)
  File "/usr/local/bin/barman_exporter.py", line 48, in list_backup
    server_name_and_ts, status = backup_line.split("-")
ValueError: too many values to unpack (expected 2)

barman version is 2.8
Python version is Python 3.4.5

This bug is fixed by PR #2


expand icon for multiline TOC entries needs attention

There shouldn't be any linebreak before the <span> and the triangle should be vertically aligned. Maybe it's time to move the triangle to the left side?

Check the implementation in the MS Style Guide. https://docs.microsoft.com/en-us/style-guide. This looks simple enough, but means moving things around slightly.


Issue with k8s.io/docs/reference/access-authn-authz/authorization/

This is a Bug Report

**Problem: kubernetes api server not using custom flags for authentication/authorization webhook based
I'm trying to configured the kube apiserver to use webhooks for authentication/authorization and made following changes:
pwd
/etc/kubernetes/manifests
diff kube-apiserver.yaml kube-apiserver.yaml_orig
18c18
<     - --authorization-mode=Node,RBAC,Webhook

- --authorization-mode=Node,RBAC

48,50d47
<     - --authentication-token-webhook-config-file=/etc/kubernetes/auth/authn_webhook
<     - --authorization-webhook-config-file=/etc/kubernetes/auth/authz_webhook
<     - --authorization-webhook-cache-authorized-ttl=2m0s

I then restart the kube-api server via: "systemctl restart kubelet"; ps -eaf|grep apiverser shows process was restarted but it doesn't show these new custom flags to use the webhooks.
My question, after making changes to kube-apiserver.yaml to add these custom flags; is there anything else i need to do to get the apiserver to use them?
this is on "Operating System: Red Hat Enterprise Linux Server 7.6 (Maipo)"; and install was done using kubespray 2.7.6 and kubernetes version is v1.13.2
Any help is greatly appreciated. Thanks.
hostnamectl
Static hostname: alpd1004
Pretty hostname: alpd1004.aldc.att.com
Icon name: computer-server
Chassis: server
Machine ID: d3d19c7d7dfe476d89b4a1a71f157522
Boot ID: 1c7225665f3242eb9215e106f4c6abb4
Operating System: Red Hat Enterprise Linux Server 7.6 (Maipo)
CPE OS Name: cpe:/o:redhat:enterprise_linux:7.6:GA:server
Kernel: Linux 3.10.0-957.10.1.el7.x86_64
Architecture: x86-64

Proposed Solution:
Page to Update:
https://kubernetes.io/...

@shadih, you restart kube-apiserver or kubelet actually?

Hello @lojies , After I made the changes below in  kube-apiserver.yaml, right i restared kubelet.
I thought that's how we get kube-apiserver to restart; is there another way to restart it?
I also removed the apiserver docker containers and re-started kubelet with no success:
docker rm -f docker ps | grep apiserver | awk '{print $1}'
50d330fb4a00
303ce3c0fb0d
systemctl restart kubelet
So now I have the kube-apiserver.yaml with the updated custom flags but still not able to get the kube-apiserver to run w/ these updated flags.
Thanks!
pwd
/etc/kubernetes/manifests
diff kube-apiserver.yaml_orig kube-apiserver.yaml
18c18
<     - --authorization-mode=Node,RBAC

- --authorization-mode=Node,RBAC,Webhook

47a48,50

- --authentication-token-webhook-config-file=/etc/kubernetes/auth/authn_webhook
- --authorization-webhook-config-file=/etc/kubernetes/auth/authz_webhook
- --authorization-webhook-cache-authorized-ttl=2m0s

I removed kube-apiserver.yaml_orig from /etc/kubernetes/manifests since it might have been causing kubelet to start the original apiserver; now issue i'm having is that the apiserver is not coming up; I only see 1 docker container:
docker ps|grep -i api
4db4d8b45ea8        gcr.io/google_containers/pause-amd64:3.1   "/pause"                 About an hour ago   Up About an hour                        k8s_POD_kube-apiserver-alpd1004.aldc.att.com_kube-system_cd4283f54a4f1f6475f1ef3cdb788663_0

I think I'm missing the main apiserver container: k8s_kube-apiserver_kube-apiserver
but not sure why it's not coming up. Any logs I can look at?

Issue resolved; I had to remove the kube-apiserver.yaml_orig from /etc/kubernetes/manifests


Fixed auth issue

$server.ConnectionContext.SqlConnectionObject.Open() which enables connection pooling does not support alternative Windows Credentials and passes default credentials
When you look at the SQL Connection Object, the ConnectionString is as follows:
ConnectionString = Data Source=sql2016;Integrated Security=True;MultipleActiveResultSets=False;Encrypt=False;TrustServerCertificate=False;Application Name="dbatools PowerShell module - dbatools.io"

So we have to connect using the non-pooled way (ConnectionContext), and this produces an immediate failure when a bad cred is passed.
I should probably write a blog post about this.

yessssssss, thank you both!

from our experiments in #dbatools-dev, this actually still needs more work but this is a step closer


Fund the yTranslation Team

Scope
This is a fixed grant request for the yTranslation Team. The idea is to continue with our work on translating the website, yearn-meta, & yearn-comms (Yearn Blog) repositories. Our contributors have made over 230 PRs on these above repos over the last 2 months.
With the new docs being re-done, it's important to continue to have a translation team ready.
New partners and users from all around the world will come from new partnerships. We need every piece of TVL we can get in this market. Having all the content available in different languages helps in this objective.
The translation team has been auto-sufficient and a fairly active group with fast response and the idea is to maintain the same energy and attitude, which makes it important to have part of Yearn´s budget allocated to this group.
Plan
The action plan is simple, the yTranslations team will continue translating and sharing yearn content in the same way it has for the past 5 months.
@DarkGhost7 will continue to guide the team about protocol priorities (new docs, etc.).
We will continue to prioritize time-sensitive translations (marketing-related content and newsletters).
Deadline
This grant is for 3 months, finishing on August 31st
People
The yTranslation team is composed of a dozen active contributors. Below are the people currently active and included in this grant request:

This fixed grant for the yTranslations team allows for any language or contributor to be added to the team without affecting the requested budget.
note:
Cryptouf will continue being part of the team as an FR translator but he made an individual proposal so is not being included in this grant.
@qosmonot will continue to manage the yTranslations team, but also made an individual proposal, so is not being included in this grant.
We will establish a procedure for new translators for a minimum of translations needed to join the translations group. This is important not to show languages in the blog that don´t have enough content.
Money
The requested grant, covering a period of three months, will be streamed to a multi-sig managed by members of the yTranslation team, and will be distributed monthly between the contributors and active members of yTranslations, through a point system that was developed within the team (allowing the funds to be split between the team members based on the amount of work each has completed during the epoch).
The previous epoch's spreadsheet can be found here: https://docs.google.com/spreadsheets/d/1sR8_nUM5UpL2yk0Yttc1AvOq0GcEb_rM-vQ3uwpf23U/
The aim here is to establish a fair grant so people are motivated to do the work with good quality and in a timely fashion (expected for most content, especially newsletters), but we know the importance of adjusting the expectations based on the actual market conditions.
Looking at the last three epochs of Coordinape (epochs 14, 15, 16), the average budget allocated to translations (incl. 12 translators, not including Cryptouf, qosmonot) was of 15k$ (see table below).

For this grant request, we propose a fixed budget, along with a 30% haircut, for a monthly amount of 10k $. The current request covers a period of 3 months, finishing in August.
Amount
30,000 DAI
Wallet address
0x0
Reporting

[X] I agree to post weekly updates

Pulled data for blog and main websites – main problem with translations is coverage. Yearn only gets ~2% users (per country) from non-english countries.
That brings the question if translated articles are that useful for larger coverage. It’s good overall job but necessity is questionable, especially, with budgets cut.
Stand is – it’s better to commission separate pieces when there is a decision to target specific audience.


feat(tutorial): complete step 1

Closes #
{{short description}}
Changelog
New

{{new thing}}

Changed

{{change thing}}

Removed

{{removed thing}}

Creating another pull request


Error management issue on /graphql endpoint

if I run this script:
'use strict'

const Fastify = require('fastify')
const GQL = require('fastify-gql')
const makeExecutableSchema = require('graphql-tools').makeExecutableSchema

const app = Fastify()

const schema = [
  `
  type Query {
    history(id: ID!): [History]
  }
  `,
  `
  type History {
      id: ID!
      name: String!
      created: Date!
      sysPeriod: Range!
    }
  `,
  `
  type Range {
    begin: Date!,
    end: Date!
  }
  `,
  `
    scalar Date
  `
]

const resolvers = {
  Query: {
    history: async ({ id }) => {
      return Promise.resolve({ id, name: 'test', created: new Date(), sysPeriod: 'not a range!' })
    }
  }
}

app.register(GQL, {
  schema: makeExecutableSchema({ typeDefs: schema, resolvers: [resolvers] }),
  graphiql: true
})

app.get('/', async function (req, reply) {
  console.log('/')
  const query = `
  {
    history(id: "1") {
      id
      name
      created
      sysPeriod {
        begin
        end
      }
    }
  }
  `
  return reply.graphql(query)
})

app.listen(7000)

then do a curl to hit / like this, I have http 200 +  some error reporting:
curl http://localhost:7000 | jq
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   170  100   170    0     0   3269      0 --:--:-- --:--:-- --:--:--  3269
{
  "errors": [
    {
      "message": "Expected Iterable, but did not find one for field Query.history.",
      "locations": [
        {
          "line": 3,
          "column": 5
        }
      ],
      "path": [
        "history"
      ]
    }
  ],
  "data": {
    "history": null
  }
}

but if I go to /graphiql with a browser and run the same query:
{
  history(id: "1") {
    id
    name
    created
    sysPeriod {
      begin
      end
    }
  }
}

I still have a http 200, null data.history, but no errors reported.
I believe I should not have a http 200 as a result, probably an http 500, and it should probably detail the errors

Moreover, the errorHandler seems not to be triggered which should probably be the case


Show compiler diagnostics in literate output

This is the best feature I've ever implemented! The JavaScript code used to show the popup is copied from 1lab (thanks!!!!).

In the docs, we should make the hover window less dark (or maybe make it white-ish).

merge?

merge?

wait a sec, lots of tweaks are coming ~

Merge?

JavaScript master....

bors merge


Text rendering

https://crates.io/crates/rusttype

https://medium.com/@raphlinus/inside-the-fastest-font-renderer-in-the-world-75ae5270c445

https://github.com/alexheretic/ab-glyph

https://github.com/twilco/kosmonaut/issues/10

I saw somewhere that one project is migrating to https://crates.io/crates/allsorts
There is also https://github.com/redox-os/rusttype
Discussion https://news.ycombinator.com/item?id=21579866


Availability of the options json.formatter and json.args

Current behavior
The options json.formatter and json.args have been removed. With the native components, no child process is spawned.
Desired behavior
Availability of the options json.formatter and json.args for other usage such as:
Adding a meta data to the cucumber HTML Report.
Test code to reproduce
.cypress-cucumber-preprocessorrc.json file:
{
  "json": {
    "enabled": true,
    "output": "cypress/cucumber-json/cucumber-json.json",
    "formatter": "node",
    "args": [
      "cypress/helper/setJsonMetaData.js"
    ]
  },
  "html": {
    "enabled": true
  },
  "filterSpecs": true,
  "omitFiltered": true
}

setJsonMetaData.js file:
async function writeToFile(newNJson) {
    var fs = require('fs');
    fs.writeFileSync("cucumber-messages.ndjson", newNJson);
}

async function readJsonFromStdin() {
    let stdin = process.stdin
    let inputChunks = []

    stdin.resume()
    stdin.setEncoding('utf8')

    stdin.on('data', function (chunk) {
      inputChunks.push(chunk);
    });

    return new Promise((resolve, reject) => {
      stdin.on('end', function () {
        let inputJSON = inputChunks.join('')
        const jsonResult = `{"meta":{"implementation":{"name":"TestName","version":""},"runtime":{"name":"ABC","version":"Latest"},"os":{"name": "${process.platform}"}}}\n${inputJSON}`
        resolve(jsonResult)
      })
      stdin.on('error', function () {
        reject(Error('error during read'))
      })
      stdin.on('timeout', function () {
        reject(Error('timout during read'))
      })
    })
  }

  async function main() {
    let json = await readJsonFromStdin();
    await writeToFile(json)
  }

  main()

Versions

Cypress version: 12.7.0
Preprocessor version: 16.0.0
Node version: 16.13.0

Checklist

[x] I've read the FAQ.
[x] I've read instructions for logging issues.
[x] I'm not using<EMAIL_ADDRESS>(package name has changed and it is no longer the most recent version, see #689).

That option was never really intended for this usage. Instead, you should use life cycle methods to do post-processing, like shown below.
const fs = require("node:fs/promises");
const { defineConfig } = require("cypress");
const createBundler = require("@bahmutov/cypress-esbuild-preprocessor");
const preprocessor = require("@badeball/cypress-cucumber-preprocessor");
const createEsbuildPlugin = require("@badeball/cypress-cucumber-preprocessor/esbuild");

async function setupNodeEvents(on, config) {
  // This is required for the preprocessor to be able to generate JSON reports after each run, and more,
  await preprocessor.addCucumberPreprocessorPlugin(on, config, {
    omitAfterRunHandler: true,
  });

  on("after:run", async () => {
    await preprocessor.afterRunHandler(config);

    await fs.writeFile(
      "cucumber-messages.ndjson",
      JSON.stringify({ meta: { os: { name: process.platform } } }) + "\n",
      { flag: "a" }
    );
  });

  on(
    "file:preprocessor",
    createBundler({
      plugins: [createEsbuildPlugin.default(config)],
    })
  );

  // Make sure to return the config object as it might have been modified by the plugin.
  return config;
}

module.exports = defineConfig({
  e2e: {
    specPattern: "**/*.feature",
    setupNodeEvents,
  },
});

Thank you, @badeball , however this solution only works partially:
Only the ndjson file gets updated, not the cucumber-report.html.
In that case I would have to set the html.enable to false and find another way to generate the html file based on the updated ndjson.

You can move the post-processing above the call to afterRunHandler, that way the HTML report will be affected.


[azeventhubs] Bug fixes: send to 'any' partition, also offset position strings were incorrect.

Fixing two bugs and adding in some tests:

When you send a batch of events you can choose to send it to any available partition. I missed a nil check, added in and added a test.
The offset position filter strings were being incorrectly formatted. It appears that the sequence number one was accepted anyways, but I've now fixed it so they're aligned with what JS does.

/azp run go - azeventhubs


When I type a new word, atom delete the letter before the cursor

Hello!
I have installed a new instance and no package installed.
My input method framework is fcitx, version <IP_ADDRESS>,
Other places where text can be entered do not have this problem,Is this a bug?
Thanks!

Versions

apm  1.19.0
npm  3.10.10
node 6.9.5 x64
atom 1.25.0
python 2.7.12
git 2.7.4
system elementary OS 0.4.1 Loki based on Ubuntu 16.04.3 LTS

Thanks for reaching out! Filling out the issue template is super helpful for us - e.g. what's the full output of atom -v?  Did you install Atom with the official .deb from https://atom.io?
Can you share specific step by step instructions to reproduce (though the GIF is helpful, it's easier to reproduce along with repro steps)?  And was this issue also a problem in the Atom 1.24?

system elementary OS 0.4.1 Loki

I would only be able to confirm with Ubuntu but if you can confirm this happens with Ubuntu as well, that would be helpful to know.
If you can share more of these details we can go from there.


Windows standalone version crashes on launch with an AttributeError

First of all, I can't try everything I would like to troubleshoot the issue because I don't have permissions to manage the virtual machine I'm using. I had to request the installation of spyder, which the responsible party did, but without adding shortcuts in the start menu or on the desktop. I found two ways of launching spyder: right click a file and open with spyder, or through cmd C:\Program Files\Spyder>Python\python Spyder.launch.pyw either way the logs show the exact same output.
Problem Description
With a fresh install of the standalone version on windows, spyder crashes on launch after a brief splash screen.
I tried restarting it and clearing AppData/Local/Spyder, which is about all I can try with the permissions I have.
I found someone with the same unanswered issue on stackoverflow. I can't try the suggested solution, which didn't work for them anyway, because I don't have pip on this machine.
Steps to reproduce

Install the latest windows standalone version of spyder
Right click any file
"Edit with Spyder"

Expected and actual output
Expected a GUI window after the splash screen. Getting nothing instead, the splash screen just closes.
Full logs
fromIccProfile: failed minimal tag size sanity
Traceback (most recent call last):
  File "C:\Program Files\Spyder\pkgs\spyder\app\mainwindow.py", line 753, in <lambda>
    lambda plugin_name, omit_conf: self.register_plugin(
  File "C:\Program Files\Spyder\pkgs\spyder\app\mainwindow.py", line 213, in register_plugin
    self.show_compatibility_message(message)
  File "C:\Program Files\Spyder\pkgs\spyder\app\mainwindow.py", line 1069, in __getattr__
    return super().__getattr__(attr)
AttributeError: 'MainWindow' object has no attribute 'show_compatibility_message'

Versions
Spyder won't launch and I'm not using the conda version, so here's what I know from the included package files.

Spyder version: latest standalone windows version
Python version: 3.8.10
Qt version: ?
PyQt version: 5.15.7
Operating System name/version: Windows Server 2016 Datacenter 64 bits (10.0, version 14393)

Hi @FontaineRiant thank you for the feedback! Could it be possible for you to run from cmd the following and submit here the generated log?:
"C:\Program Files\Spyder\Python\python.exe" "C:\Program Files\Spyder\Spyder.launch.pyw" --debug-info verbose

I tried locally doing an installation for all the users (as it seems you have in the virtual machine that was provided to you) but Spyder starts normally. Could you also submit here the mainwindow.py file that is installed in you VM? Could this file been modified somehow when removing the shortcuts for the Spyder installation in your provided VM?
Any other info in order to reproduce this is greatly appreciated. Let us know!

I think this could be caused by not uninstalling the previous version and installing the current one on top of it. We've seen odd issues like this one triggered by that before.

Thank you for your replies.

Hi @FontaineRiant thank you for the feedback! Could it be possible for you to run from cmd the following and submit here the generated log?:
"C:\Program Files\Spyder\Python\python.exe" "C:\Program Files\Spyder\Spyder.launch.pyw" --debug-info verbose

I tried locally doing an installation for all the users (as it seems you have in the virtual machine that was provided to you) but Spyder starts normally. Could you also submit here the mainwindow.py file that is installed in you VM? Could this file been modified somehow when removing the shortcuts for the Spyder installation in your provided VM?

verbose_logs.txt
mainwindow.py.txt
I find very unlikely that mainwindow.py would have been modified as they usually just go through the installer without testing anything. The missing shortcuts were most likely unchecked instead of removed.

I think this could be caused by not uninstalling the previous version and installing the current one on top of it. We've seen odd issues like this one triggered by that before.

There was no previous version at all, it's a fresh install. I'm not ruling out a mistake of the person who did the installation, but I'd like to narrow down the issue before requesting another maintenance to try a reinstall. Because that won't happen before a couple of weeks and my team is getting impatient to start using a real IDE.

Thanks @FontaineRiant for the logs! Checking them seems like there is an issue when loading the Terminal plugin:

2022-08-02 19:34:29,977 [INFO] [spyder.app.mainwindow] -> Loading terminal...
Traceback (most recent call last):
  File "C:\Program Files\Spyder\pkgs\spyder\app\mainwindow.py", line 753, in <lambda>
    lambda plugin_name, omit_conf: self.register_plugin(
  File "C:\Program Files\Spyder\pkgs\spyder\app\mainwindow.py", line 213, in register_plugin
    self.show_compatibility_message(message)
  File "C:\Program Files\Spyder\pkgs\spyder\app\mainwindow.py", line 1069, in __getattr__
    return super().__getattr__(attr)
AttributeError: 'MainWindow' object has no attribute 'show_compatibility_message'

Also checking the traceback more carefully indeed there is no show_compatibility_message method. The actual name for it is show_plugin_compatibility_message...
Will submit a fix for this :+1:
As a side note, I'm not totally sure why the Terminal plugin validation is failing (which then ends up trying to show the compatibility message). Checking the plugin' code seems like it tries to import winpty and fails in your VM setup:
https://github.com/spyder-ide/spyder-terminal/blob/08568bfb2311710a2e6d1c46d5e1fab67648c8b5/spyder_terminal/terminalplugin.py#L109-L125

As a side note, I'm not totally sure why the Terminal plugin validation is failing (which then ends up trying to show the compatibility message). Checking the plugin' code seems like it tries to import winpty and that is failing in your VM setup?:
https://github.com/spyder-ide/spyder-terminal/blob/08568bfb2311710a2e6d1c46d5e1fab67648c8b5/spyder_terminal/terminalplugin.py#L109-L125

Indeed, importing winpty fails with the included environment:
C:\Program Files\Spyder>Python\python
Python 3.8.10 (tags/v3.8.10:3d8993a, May  3 2021, 11:48:03) [MSC v.1928 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import winpty
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "C:\Program Files\Spyder\pkgs\winpty\__init__.py", line 10, in <module>
    from .winpty import PTY, WinptyError, __version__
ImportError: DLL load failed while importing winpty: La procédure spécifiée est introuvable. [translation: The specified procedure could not be found.]

Looking at the intended error message in check_compatibility, it mentions upgrading from windows 7. Meaning this is possibly also an issue with Windows Server 2016.


Drop util::[unique_]function target/target_type

The functionality is not particularly useful, and has a high cost in binary bloat.

I think we rely on unique_function<>::target() in Phylanx (https://github.com/STEllAR-GROUP/phylanx/blob/master/src/execution_tree/compiler/compiler.cpp#L409). Would you see a way to have it optionally available, at least for unique_function?

Ideally we should be able to clean phylanx's design to not depend on this kind of functionality, but if not we could at least replace it with a low level unsafe unchecked function returning a void pointer to the stored callable.

Is the bloat caused by the target_type() function or by target()? I think that target() itself does not depend on type_info so it shouldn't add much to our vtables… Phylanx relies on target() only, so leaving that while removing just target_type() would be an option as well.

The bloat is caused by target_type(). And we can implement target() without it, despite its semantics being defined in terms of target_type(). I'll measure and report back.

@K-ballo FWIW, target() is already implemented without relying on type_info.

::target() now restored.


add ut for DashboardSettingDeleteButton

Signed-off-by: Ke Xu<EMAIL_ADDRESS>
Description

Areas changed

npm packages changed:

[ ] responsibleai/causality
[ ] responsibleai/core-ui
[ ] responsibleai/counterfactuals
[ ] responsibleai/dataset-explorer
[ ] responsibleai/fairness
[ ] responsibleai/interpret
[ ] responsibleai/localization
[ ] responsibleai/mlchartlib
[ ] responsibleai/model-assessment

Python packages changed:

[ ] raiwidgets
[ ] responsibleai
[ ] erroranalysis
[ ] rai_core_flask

Tests

[ ] No new tests required.
[ ] New tests for the added feature are part of this PR.
[ ] I validated the changes manually.

Screenshots (if appropriate):
Documentation:

[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.

Codecov Report

Merging #1231 (381afe7) into main (1756613) will increase coverage by 0.02%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##             main    #1231      +/-   ##
==========================================
+ Coverage   65.99%   66.02%   +0.02%
==========================================
  Files          91       91
  Lines        4473     4471       -2
==========================================
  Hits         2952     2952
+ Misses       1521     1519       -2

Flag
Coverage Δ

unittests
66.02% <ø> (+0.02%)
:arrow_up:

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

raiwidgets/raiwidgets/constants.py
0.00% <0.00%> (ø)

raiwidgets/raiwidgets/dashboard.py
0.00% <0.00%> (ø)

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 1756613...381afe7. Read the comment docs.


Autocomplete results lead to non-human-friendly urls (for profiles, artworks)

After the recent switchover from Solr- to ES-powered autocomplete results, we are observing that selecting an autocomplete result brings you to a URL with a BSON id, rather than a human-readable slug.
This has to do with the way search results are structured now, and will be addressed with an update to Gravity.
After that's done, client-side changes may still need to be made to use the new slug field that will be returned with the search hit.
Liaison help request:
https://artsy.slack.com/archives/partner-success/p1474065713000318
Slack discussion:
https://artsy.slack.com/archives/platform-humans/p1474304180002790

Thanks for the detailed / more actionable issue here! 👍

Looks like we're going back to the status quo of autosuggest results returning the slug value as the id of the hit, so as soon as https://github.com/artsy/gravity/pull/10401 goes live, this should resolve itself.

Fixed for most models, Artwork are chugging away in Sidekiq, so closing this now.


Change GITBUCKET_HOME to Network drive

Hi, I am trying to utilse GitBucket on windows with IIS and Jetty. everything works great. I would like to change the GITBUCKET_HOME directory so that all repositories are stored on a network drive. I tried changing the GITBUCKET_HOME to a mounted drive letter, but when restarted I get Service Unavailable.
I have also tried creating folder links. Assigning various premissions. I also tried using full UNC path.
Any help/advice would be appreciated.

This works in Linux and Mac OS X environments. I am running Gitbucket on EC2 and have set my GIT_BUCKET home to a mounted EBS volume and everything works without a hitch. I wonder if this is is Windows-specific error? Do you have any output you could share?

I really wish I could find any logs but I cannot find location where any logs are being created In Windows.

I was able to get Gitbucket to start on Windows using a network share as the GITBUCKET_HOME. In my case, it took 2h35m for Jetty to extract the war file over the network (VPN over the internet, double whammy) plus several more minutes just to initialize. Try running Gitbucket outside of IIS to see if any errors are thrown or if it's just a long delay from extracting files. I used java -jar gitbucket.war --gitbucket.home=\\hostname\sharename\gitbucket from a cmd prompt. All of the messages appear as standard output.

It might be better to be able to be specify the war extraction directory as different location from GITBUCKET_HOME to reduce initialization time.
But even so, I don't recommend using network drive as GITBUCKET_HOME because GitBucket accesses to Git repositories frequently.

Thanks for the suggestion guys. I think, I have discovered a solution. I've decided to use some software the syncs the gitucket_data to a network drive in realtime. As well as that, do a nightly backup off the gitbucket_data folder.
Thanks

Setting Git Bucket home does not work and freezes.
This happens on NFS mount where NFS is mounting EXT4 file system and I can write on it and everything.
Using Ubuntu 14.04 (64-Bit)
echo $GITBUCKET_HOME
/home/vagrant/git

ls -l
total 53732
-rw-rw-r-- 1 vagrant vagrant 55015539 Jun 26 21:22 gitbucket.war
drwxr-xr-x 3 vagrant vagrant     4096 Jul  4 08:09 tmp/

df -h /home/vagrant/git
Filesystem                       Size  Used Avail Use% Mounted on
<IP_ADDRESS>:/mnt/SERVICES/Git  2.7T  135M  2.6T   1% /home/vagrant/git

java -jar gitbucket.war
2015-07-04 08:09:23.457:INFO:oejs.Server:jetty-8.y.z-SNAPSHOT
2015-07-04 08:09:23.535:INFO:oejw.WebInfConfiguration:Extract jar:file:/home/vagrant/git/gitbucket.war!/ to /home/vagrant/git/tmp/webapp

Ans it freezes and nothing happens here.

This is typical behavior. It's not actually frozen here, just taking a long time to perform the war extraction since it's happening over a network share. You can monitor the progress in /home/vagrant/git/tmp/webapp from another shell. My version 3.3 instance currently uses 86M in the tmp/webapp dir

Yes you are correct. After 10 minutes I see it working now.
Thanks

is there a way to run the gitbucket.war file in windows service style?

@RobertoFlores it is currently the way I run gitbucket. For windows services now I am using NSSM.

Thanks a lot McFoggy :+1:

If you use Vagrant with VirtualBox and use "synced_folder" to sync local host to guest vm and use type 'NFS' loop back then it takes 10 minutes to work.
However if you use the default type which is VirtualBox local loop back then it takes less them 1 minute. They both are external connection however NFS is not fully understood by Java.


fzf-contrib

As @junegunn suggests in #84, let discuss more detail about how to organize useful snippets for users.
A fzf-contrib would be great. Any other thought?

Would a github organization perhaps be an option? Something like this tmux organization https://github.com/tmux-plugins for example.
This would allow for separate repos which is useful for things like vim plugin managers. I've created a repo which is essentially a mirror of the vim plugin in this repo with some minor additions purely to better integrate with my dotfiles.

@george-b I'd thought about it. But felt that it would not be very useful to many, as everyone has different tastes and needs. So we would have to provide stuff that can be heavily customized, but then again, most of the stuff have only a few lines of code, so doing so can be an overkill or too much work at the same time. So, I'm currently okay with the current way of sharing examples on the wiki page. I have a feeling though, that the page is getting too long. We may need to split the page into sub pages.

@junegunn I suppose the vim plugin is the only complex thing, as you say the other snippets are fairly simple.
:+1: for breaking up the wiki though.

@george-b @junegunn
Sorry I totally forgot this issue ...
I'm somehow against placing snippets in wiki as it's not easy to maintain them (without version control, and modification management). Either placing them into fzf repo, or using fzf-contrib to contain them would be better, IMHO.
By the way, @george-b , if you'd like to, maybe I can add you as fzf-contrib's collaborator, and then we can transfer the snippets to that repo?
Thanks.

@lazywei @george-b I see it differently now. For me, they are just examples to give the idea of what can be done with fzf, so I don't think strict version management is really required. I want the users of fzf to creatively come up with their own solutions to their problems on their environment after skimming through the examples, instead of just picking up random stuff without fully understanding them. In the sense, I think wiki pages, blog posts or video screencasts should suffice. Anyway, that's just my idea.

Hey, if someone is still interested in "organizing" code snippets around fzf, have a look at this. It's simply a first draft (or something like that). Feel free to fork and modify it to your needs.

@D360, thanks for the initiative. I like the way ctrlp snippets do things. If you want to filter on registers you can install the plugin  'ctrlp-register' and then add it to the list of authorized ctrlp plugins. IMO the contrib folder could split the snippets into several repositores "fzf-registers.vim", "fzf-marks.vim" what do you think ?


Android integration - gradle plugin versions

At https://pub.dev/packages/firebase_auth under "1." there is an example how to configure dependencies:
dependencies {
  // Example existing classpath
  classpath 'com.android.tools.build:gradle:3.2.1'
  // Add the google services classpath
  classpath 'com.google.gms:google-services:4.3.0'
}

This combination does not work and causes an error, this is what the debug console in VSCode prints:
Launching lib/main.dart on Android SDK built for x86 in debug mode...

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:transformNativeLibsWithStripDebugSymbolForDebug'.
> tried to access method com.google.common.io.Files.fileTreeTraverser()Lcom/google/common/collect/TreeTraverser; from class com.android.utils.FileUtils

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 0s
Gradle task assembleDebug failed with exit code 1
Exited (sigterm)

(Running flutter run --stacktrace or flutter run --info does not work either, btw.)
I have never been an Android developer and have no idea, what is going on. Does the gradle plugin have a specific version dependency on the google services? Do I need to have a specific Android version running in my emulator? (Currently a Pixel 3 with API 27...)
The only combination that is working and actually builds the project is:
dependencies {
  classpath 'com.android.tools.build:gradle:3.2.1'
  // Add the google services classpath - v4.2.0 works!!
  classpath 'com.google.gms:google-services:4.2.0'
}

Please advice! And please improve the documentation! After all Flutter was made for people who do NOT develop with Java or Swift, right? Thank you!

I created a PR to fix the doc here https://github.com/FirebaseExtended/flutterfire/pull/273

Hey 👋
Our rework of the Auth, Core & Firestore plugins as part of the FlutterFire roadmap was published over a week ago with a ton of fixes and new features.
As part of this we introduced a new documentation site which should has a lot of new documentation that should cover this issue & others in general. If you spot any issues on the documentation or anything missing then please raise a new GitHub issue, or better yet suggest a change via a Pull Request (there's a 'Edit this page' button at the bottom of every page on the docs).
Additionally, for help migrating to these new plugins I'd recommend checking out the migration guide: https://firebase.flutter.dev/docs/migration


workspace_tools/tests.py: Added required USB header dependencies

The path to the USB Device libaries was missing.
It prevented to build the USB Device test.
To duplicate the defect:
rm -Rf build/*
python workspace_tools/build.py  -m LPC1768 -t GCC_ARM
python workspace_tools/make.py -m LPC1768 -t GCC_ARM -p 102

Any libraries in mbed SDK (rtos or ethernet) needs to be built before use. Currently even for exporting a project with sources, it fails because does not find path in build directory.
Not certain that USB path in dependencies is proper fix..Probably @PrzemekWirkus can add a comment here

HI guys,
this is not needed:
This is how building test flow looks like:
Build your mbed SDK with libraries you need (note switch --usb):
$ build.py -m LPC1768 -t ARM -j 8 --usb
Building library CMSIS (LPC1768, ARM)
Building library MBED (LPC1768, ARM)
Building library USBDEVICE (LPC1768, ARM)

Completed in: (0.24)s

Build successes:
  * ARM::LPC1768

Build everything (test, test_env, mbed SDK + libraries):
$ make.py -m LPC1768 -t ARM -n USB_1
Building project BASIC (LPC1768, ARM)
Image: C:\Work\mbed-przemek\build\test\LPC1768\ARM\USB_1\basic.bin

This is how it works. You just need to build stuff with build.py, make.py will not build stuff for you if it's missing.
@0xc0170: Please close this pull request, no merge this time.


Debian: fails to build in backports

Hi @zyedidia,
Whilst backporting 2.0.6 to stable (via buster-backports), I couldn't build it. It fails with the following (snipped) logs:
I am not sure what's causing this, any clue?
I can only think of a dependency mismatch. But not sure which one.
(and I don't think it's go-humanize)
<snip>
crypto/tls
github.com/zyedidia/micro/pkg/highlight
github.com/zyedidia/micro/internal/lua
# github.com/zyedidia/micro/internal/lua
src/github.com/zyedidia/micro/internal/lua/lua.go:569:48: undefined: humanize.FtoaWithDigits
net/http/httptrace
net/http
dh_auto_build: cd obj-x86_64-linux-gnu && go install -gcflags=all=\"-trimpath=/<<PKGBUILDDIR>>/obj-
x86_64-linux-gnu/src\" -asmflags=all=\"-trimpath=/<<PKGBUILDDIR>>/obj-x86_64-linux-gnu/src\" -v -p 8
-buildmode=pie "-ldflags=-extldflags -Wl,-z,now -s -w -X 'github.com/zyedidia/micro/v2/internal/util.Version=
2.0.6' -X 'github.com/zyedidia/micro/v2/internal/util.CommitHash=' -X 'github.com/zyedidia/micro/v2/internal
/util.CompileDate=' " github.com/zyedidia/micro/cmd/micro returned exit code 2

It must be go-humanize, but that is quite surprising since the version of the go-humanize dependency did not change with 2.0.6. Are you sure that you are using go-humanize v1.0.0?

I am very sure!
See: https://tracker.debian.org/pkg/golang-github-dustin-go-humanize
There's v1.0.0 in unstable, testing, and backports! That's why I am surprised too.
However, let me also state that the version of micro in backports is 2.0.3. And I am going to introduce 2.0.6.
Did any version of dependency change since then except tcell?
Because for v2.0.6 of micro, I just had to bump tcell to it's latest version and the build was clean in unstable.
So now, I have backported tcell and when I am trying to backport micro v2.0.6, it fails to build as shown above^^ :/

There have been some updates to the dependencies since 2.0.3, but none of them (other than tcell) change the outward interface, or any of the import names in the micro source code, so I don't think updating them should be necessary. None of them should cause this error either since they have nothing to do with go-humanize. The changes are

zyedidia/clipboard updated from v0.0.0-20190823154308-241f98e9b197 to<PHONE_NUMBER>1010-7c45b8673834.
kballard/go-shellquote is replaced with zyedidia/go-shellquote. This only changes behavior on Windows, so including this change should not be necessary for Debian, and using kballard/go-shellquote should build without errors.
mattn/go-runewidth is replaced with p-e-w/go-runewidth. This change improves performance, but does not change the interface and it should be possible to build using mattn/go-runewidth without errors.

Since the changes to go-shellquote and go-runewidth are made in go.mod by using the replace directive, these replacements shouldn't cause any build errors.
I'm not sure if this is possible, but if you delete the code in src/github.com/zyedidia/micro/internal/lua/lua.go on line 569 (the line causing the error), does it build cleanly?

I'm not sure if this is possible, but if you delete the code in src/github.com/zyedidia/micro/internal/lua/lua.go on line 569 (the line causing the error), does it build cleanly?

Wow, it does build fine now!
Many thanks! \o/
Would you want to remove it from here as well, if it's not doing anything useful?
(I'd be happy to raise a pull request if so!? :smile:)

I have no idea why that would be. Sure you can open a PR to remove it, and you can remove the line above it too (the one with humanize.Ftoa). The line is just exposing that function from humanize to plugins, but I think the same behavior can be achieved with fmt.Sprintf which is already exposed, and I'm quite certain that no plugin is using FtoaWithDigits or Ftoa. It was probably a bad idea to decide to expose them to plugins in the first place. The PR should also remove those functions from the documentation in runtime/help/plugins.md (lines 367-368). Thanks!

Sure, shall do! <3

While I have you here, I think the version of micro in the Ubuntu focal repositories is still 2.0.1. Is it possible to upgrade it to 2.0.6 as you have done for Debian buster? Thank you greatly for your help.

@zyedidia, hi,
I'm not sure if we can bump the version but I'm in midst of fixing those issues that we discussed earlier in Ubuntu.
I'll definitely try to bump the version but not sure how Ubuntu folks would react to it.
But I'll give you some more (and hopefully nice) updates this weekend! 😄

Hi,
I am sorry I forgot to update :man_facepalming:
The version cannot be upgraded in the stable release, focal. That's a no-go.
So there are two things here:

Fix whatever bug is there in v2.0.1 in Ubuntu.
Somehow, backport v2.0.6 to focal-backports (not focal!).

Thanks for the update! It seems like backporting to focal-backports is the best option.
What do you mean by fix whatever bug is in v2.0.1 in Ubuntu? Is it possible to modify the build script after the fact? If so, the best thing would be to add -X github.com/zyedidia/micro/internal/util.Debug=OFF to the go build invocation. Of course, getting v2.0.6 into focal-backports would be better anyway because of the improvements since v2.0.1.

Thanks for the update! It seems like backporting to focal-backports is the best option. Is this difficult to do?

A bit, I think. I am going to have to devote sometime to get this going.

What do you mean by fix whatever bug is in v2.0.1 in Ubuntu?

I read somewhere that the version of Micro in Ubuntu has some bug that needs fixing, not sure which issue was it.

Is it possible to modify the build script after the fact? If so, the best thing would be to add -X github.com/zyedidia/micro/internal/util.Debug=OFF to the go build invocation.

I see, yeah. When I do this, I'll give you a ping with the changes that I am making.

Of course, getting v2.0.6 into focal-backports would be better anyway because of the improvements since v2.0.1.

Yeah, right, of course!

Great, thank you so much!

Just wanted to ping this to see if there was an update, and because I'm planning on releasing 2.0.7 soon. Fixing the build script for 2.0.1 is the most important though, and hopefully it's not too complex.


Update zio, zio-test, zio-test-sbt to 1.0.14

Updates

dev.zio:zio
dev.zio:zio-test
dev.zio:zio-test-sbt

from 1.0.0-RC17 to 1.0.14.
GitHub Release Notes - Version Diff
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

Applied Scalafix Migrations

dev.zio:zio-test:1.0.0-RC18

github:zio/zio/CurriedAssert?sha=v1.0.0-RC18

Files still referring to the old version number
The following files still refer to the old version number (1.0.0-RC17).
You might want to review and update them manually.
project/Dependencies.scala

Ignore future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "dev.zio" } ]

labels: library-update, early-semver-pre-release, semver-spec-pre-release, scalafix-migrations, old-version-remains, commit-count:n:2

Superseded by #142.