protoc-gen-validate: 0.6.12 -> 0.6.13

Description of changes
https://github.com/bufbuild/protoc-gen-validate/releases/tag/v0.6.13
This change supersedes the automated change in https://github.com/NixOS/nixpkgs/pull/194437
The repository was moved from envoyproxy to bufbuild a few days ago.
Things done

Built on platform(s)

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

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

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

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

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module
[ ] (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes

[x] Fits CONTRIBUTING.md.

this will close #194437


Guard import of UserPotcarFunctional behind an if TYPE_CHECKING block

This PR seeks to close https://github.com/SMTG-Bham/ShakeNBreak/issues/73, allowing doped to function with pymatgen>=5.31.2024.
In short, throughout Pymatgen, type hints are generally guarded behind an if TYPE_CHECKING block to ensure that compute time isn't wasted on loading imports during calculations. This is pretty standard practice.
Previously, pymatgen.io.vasp.sets.UserPotcarFunctional was not guarded by an if TYPE_CHECKING block and could be imported directly. However, in pymatgen==<IP_ADDRESS>4, it was guarded in the if TYPE_CHECKING block, meaning it can no longer be imported directly. This was the cause of the incompatability.
I have resolved the issue by guarding the import in doped now.

Hi @Andrew-S-Rosen, thanks for opening this (and explaining the move to more TYPE_CHECKING blocks in pymatgen)!
I added this fix too in develop (47a88b8d462faa7291d97762f4ebf8a69b90103b) the other day, but was waiting for the next pymatgen release (which came yesterday afternoon) before making a new release, as there were a couple other minor breaking changes to both doped/ShakeNBreak. These are fixed now, so will be releasing shortly!

Wonderful! Thank you!!


Bursty transmission on Windows 10 64bit

I'm working on a flight sim controller with display on my arduino. When sending commands via serial_port, I've noticed my data is getting queued up and burst out every second. A simple test of this is the following code:
  new Timer.periodic(const Duration(milliseconds: 500), (_) {
    disp.cursor(0, 16);
    disp.text("${i++}");
    disp.display();
  })

I would expect to see the screen updating every half a second, counting up from zero. What I noticed is even numbers get written and odd numbers get written over the even ones very fast. I ruled out the display first by writing this in C and running it on the arduino, which works great down to 16ms intervals.
The following is a simple protocol trace. "recv" is echo'd bytes back from the arduino as soon as they are read (simple loop() { while(Serial.available()) { byte read = Serial.read(); Serial.write(read); ... stuff).  "bytes" is the bytes being sent to serial_port.write "text" is just informative. The time code is just the program start DateTime differenced against DateTime.now when the log messages are printed.
0:00:00.000000 recv: F0,F0,
0:00:00.499000 bytes: [6, 2, 0, 0, 0, 16] <- move the cursor to 0, 16
0:00:00.501000 text: 0
0:00:00.502000 bytes: [3, 5, 48] <- write "0"
0:00:00.503000 bytes: [2, 0] <- display
0:00:00.997000 bytes: [6, 2, 0, 0, 0, 16]
0:00:00.998000 text: 1
0:00:00.999000 bytes: [3, 5, 49]
0:00:00.999000 bytes: [2, 0]
0:00:01.005000 recv: 6,2,0,0,0,10,hc,3,5,30,hc,2,0,  <- hc == handle command, which is the group of bytes. here 3,5,30 is write "0". This is 500ms late.
0:00:01.047000 recv: hc,6,2,0,0,0,10,hc,3,5,31 <- move, write "1" really quickly.
0:00:01.050000 recv: ,hc,2,0,
0:00:01.088000 recv: hc,
0:00:01.498000 bytes: [6, 2, 0, 0, 0, 16]
0:00:01.499000 text: 2
0:00:01.499000 bytes: [3, 5, 50]
0:00:01.500000 bytes: [2, 0]
0:00:01.998000 bytes: [6, 2, 0, 0, 0, 16]
0:00:01.999000 text: 3
0:00:01.999000 bytes: [3, 5, 51]
0:00:02.000000 bytes: [2, 0]
0:00:02.091000 recv: 6,
0:00:02.094000 recv: 2,0,0,0,10,hc,3,5,32,hc,2,0,
0:00:02.136000 recv: hc,6,2,0,0,0,10,hc,3,5,33,hc,2
0:00:02.140000 recv: ,0,
0:00:02.177000 recv: hc,

Is there a "flush" api that I'm suppose to be calling or is it expected a stream of no-ops to flush out data?

I recompiled with ccompile and the following diff and got nearly the exact results I was expecting (120 display updates, evenly timed over 60 seconds).  I believe these can be non-hardcoded though.. and it would certainly be nice to pass these in if the platform is windows.
diff --git a/lib/src/native/serial_port_win.cc b/lib/src/native/serial_port_win.cc
index b089423..75ea47a 100644
--- a/lib/src/native/serial_port_win.cc
+++ b/lib/src/native/serial_port_win.cc
@@ -94,8 +94,8 @@ int openSerialPort(const char* port_name, int baudrate, int databits, parity_t p
     COMMTIMEOUTS commTimeouts = {0};
     commTimeouts.ReadIntervalTimeout = 1;
     commTimeouts.ReadTotalTimeoutMultiplier  = 0;
-    commTimeouts.ReadTotalTimeoutConstant    = 1000;
-    commTimeouts.WriteTotalTimeoutConstant   = 1000;
+    commTimeouts.ReadTotalTimeoutConstant    = 100;
+    commTimeouts.WriteTotalTimeoutConstant   = 100;
     commTimeouts.WriteTotalTimeoutMultiplier = 1;
     SetCommTimeouts(handlePort, &commTimeouts);

lgtm - I'll give it a try here soon. Right now I'm using 1 and 1, but that's just as low as I could go while working on other portions of my arduino code.

Thanks for feed back, I got a building problems with AppVeyor (#8), so I had to wait to use my windows computer.
I'm thinking of adding extra param, that could be use by platform.


Support convolution (assumes full rhs, based on Jamie's earlier version)

Nice one. I reckon the update rule code could be simplified a bit but we can always look at that later.


fixed base url

Fixed base request url according to : https://docs.microsoft.com/en-us/azure/cognitive-services/bing-web-search/quickstarts/python

Hi @lmazuel / @mayurid , can you please review this change. Due to above bug I am unable to use the azure-sdk and using my own temporary function for now.

Hi @girishnadiger-gep
Those SDKs are not supported anymore, and have been replaced by new ones. Bing is not a part of Azure nowadays, please address issues to https://github.com/microsoft/bing-search-sdk-for-python and consider using https://pypi.org/project/microsoft-bing-websearch/ instead. Thanks, and sorry for the late answer.


Could we have a link or button to open a web search for the no-match help subject?

Obviously we are almost there, but still make the programmer close the F1-nomatch web page, copy the text of interest, open a browser, and search for the text from the clipboard.  This could be less tedious!  Frankly, I would not mind also having an editor context menu option to search web for selected text.

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

ID: 9a28ee58-bd99-e74a-0c0c-30f5a41da08e
Version Independent ID: 2467c672-a567-583c-2801-87dcaf0f2c91
Content: F1 help no-match fallback - Visual Studio (Windows)
Content Source: docs/ide/not-in-toc/default.md
Product: visual-studio
Technology: ****
GitHub Login: @Mikejo5000
Microsoft Alias: mikejo

@mstasak Those are good product feedback ideas, but there's not much we can do on this doc page. To make sure that this is logged in the right place, please use the Report a Problem tool to report the issue. When you do this, your report becomes part of the work items that are listed in the in the Visual Studio Developer Community, which allows you to engage directly with the engineering team while they address and fix the problem.


Label binding issue in FormCheckbox

If we click on the label or text of the checkbox it won't select/deselect the checkbox

@pournasserian It needs an id, I can set a random id inside the component. it's ok?


Problems installing (w/ Ruby 1.8/CentOS6/RHEL6)

[x] Confirmed this is a problem with running a brew command and not brew installing or the post-install behaviour of one or more formulae? If it's a formulae-specific problem please file this issue at the relevant tap e.g. for Linuxbrew/homebrew-core https://github.com/Linuxbrew/homebrew-core/issues/new
[x] Ran brew update and retried your prior step?
[ ] Ran brew doctor, fixed all issues and retried your prior step?
[x] Ran brew config and brew doctor and included their output with your issue?

Running on RHEL6 and CentOS6 (which I believe to be supported?); Get the error on or after installation:
/usr/bin/ruby: no such file to load -- rubygems (LoadError)
/home/brewser/.linuxbrew/Homebrew/Library/Homebrew/brew.rb:83: syntax error, unexpected ':', expecting kEND
    Homebrew.help cmd, empty_argv: empty_argv
                                  ^
/home/brewser/.linuxbrew/Homebrew/Library/Homebrew/brew.rb:125: syntax error, unexpected ':', expecting kEND
  Homebrew.help cmd, usage_error: e.message
                                 ^

This happens inconsistently; on my RH6 station it happens during install; on a CentOS6 docker image it happens after installation, but when running any of the brew commands (e.g. doctor, config)
The internet suggests this is a old ruby (1.8) problem. There's a test in the installer for missing ruby (and so a portable version is installed as "Homebrew ruby" first) but the only check is for existence - no version.
Manually downloading and removing the ruby test which ruby >/dev/null ||  from the install.sh forces the portable 2.x to be installed and appears to fix the problem.
Presumably there should be a test for ruby version in the installer?

Here's what's supposed to happen. Reality may of course differ from intention.
The Linuxbrew installation script in Ruby should work just fine with any old version of Ruby. Your old version of Ruby is only used to boot-strap a newer version. That bootstrapping process is supposed to work with old versions of Ruby. That's why there's no check on Ruby version in the Linuxbrew installation script in Shell. From a clean installation, can you please report the entire log of running the command:
sh -c "$(curl -fsSL https://raw.githubusercontent.com/Linuxbrew/install/master/install.sh)"

If/when that fails, please report the complete output of
brew vendor-install ruby

Here's the log of the failing installation:
$ sh -c "$(curl -fsSL https://raw.githubusercontent.com/Linuxbrew/install/master/install.sh)"
==> Select the Linuxbrew installation directory
- Enter your password to install to /home/linuxbrew/.linuxbrew (recommended)
- Press Control-D to install to /home/mep23677/.linuxbrew
- Press Control-C to cancel installation
[sudo] password for mep23677:
sudo: pam_authenticate: Conversation error
==> This script will install:
/home/mep23677/.linuxbrew/bin/brew
/home/mep23677/.linuxbrew/share/doc/homebrew
/home/mep23677/.linuxbrew/share/man/man1/brew.1
/home/mep23677/.linuxbrew/share/zsh/site-functions/_brew
/home/mep23677/.linuxbrew/etc/bash_completion.d/brew
/home/mep23677/.cache/Homebrew/
/home/mep23677/.linuxbrew/Homebrew
==> The following new directories will be created:
/home/mep23677/.linuxbrew/Cellar
/home/mep23677/.linuxbrew/bin
/home/mep23677/.linuxbrew/etc
/home/mep23677/.linuxbrew/include
/home/mep23677/.linuxbrew/lib
/home/mep23677/.linuxbrew/opt
/home/mep23677/.linuxbrew/sbin
/home/mep23677/.linuxbrew/share
/home/mep23677/.linuxbrew/share/zsh
/home/mep23677/.linuxbrew/share/zsh/site-functions
/home/mep23677/.linuxbrew/var
/home/mep23677/.linuxbrew/Homebrew

Press RETURN to continue or any other key to abort
==> /bin/mkdir -p /home/mep23677/.linuxbrew/Cellar /home/mep23677/.linuxbrew/bin /home/mep23677/.linuxbrew/etc /home/mep23677/.linuxbrew/include /home/mep23677/.linuxbrew/lib /home/mep23677/.linuxbrew/opt /home/mep23677/.linuxbrew/sbin /home/mep23677/.linuxbrew/share /home/mep23677/.linuxbrew/share/zsh /home/mep23677/.linuxbrew/share/zsh/site-functions /home/mep23677/.linuxbrew/var /home/mep23677/.linuxbrew/Homebrew
==> /bin/chmod g+rwx /home/mep23677/.linuxbrew/Cellar /home/mep23677/.linuxbrew/bin /home/mep23677/.linuxbrew/etc /home/mep23677/.linuxbrew/include /home/mep23677/.linuxbrew/lib /home/mep23677/.linuxbrew/opt /home/mep23677/.linuxbrew/sbin /home/mep23677/.linuxbrew/share /home/mep23677/.linuxbrew/share/zsh /home/mep23677/.linuxbrew/share/zsh/site-functions /home/mep23677/.linuxbrew/var /home/mep23677/.linuxbrew/Homebrew
==> /bin/chmod 755 /home/mep23677/.linuxbrew/share/zsh /home/mep23677/.linuxbrew/share/zsh/site-functions
==> /bin/chown mep23677 /home/mep23677/.linuxbrew/Cellar /home/mep23677/.linuxbrew/bin /home/mep23677/.linuxbrew/etc /home/mep23677/.linuxbrew/include /home/mep23677/.linuxbrew/lib /home/mep23677/.linuxbrew/opt /home/mep23677/.linuxbrew/sbin /home/mep23677/.linuxbrew/share /home/mep23677/.linuxbrew/share/zsh /home/mep23677/.linuxbrew/share/zsh/site-functions /home/mep23677/.linuxbrew/var /home/mep23677/.linuxbrew/Homebrew
==> /bin/chgrp mep23677 /home/mep23677/.linuxbrew/Cellar /home/mep23677/.linuxbrew/bin /home/mep23677/.linuxbrew/etc /home/mep23677/.linuxbrew/include /home/mep23677/.linuxbrew/lib /home/mep23677/.linuxbrew/opt /home/mep23677/.linuxbrew/sbin /home/mep23677/.linuxbrew/share /home/mep23677/.linuxbrew/share/zsh /home/mep23677/.linuxbrew/share/zsh/site-functions /home/mep23677/.linuxbrew/var /home/mep23677/.linuxbrew/Homebrew
==> Downloading and installing Linuxbrew...
remote: Counting objects: 6226, done.
remote: Compressing objects: 100% (3387/3387), done.
remote: Total 6226 (delta 3946), reused 4248 (delta 2673), pack-reused 0
Receiving objects: 100% (6226/6226), 2.70 MiB | 1.80 MiB/s, done.
Resolving deltas: 100% (3946/3946), done.
From https://github.com/Linuxbrew/brew
 * [new branch]      master     -> origin/master
 * [new tag]         1.0.0      -> 1.0.0
 * [new tag]         1.0.1      -> 1.0.1
 * [new tag]         1.0.2      -> 1.0.2
 * [new tag]         1.0.3      -> 1.0.3
 * [new tag]         1.0.4      -> 1.0.4
 * [new tag]         1.0.5      -> 1.0.5
 * [new tag]         1.0.6      -> 1.0.6
 * [new tag]         1.0.7      -> 1.0.7
 * [new tag]         1.0.8      -> 1.0.8
 * [new tag]         1.0.9      -> 1.0.9
 * [new tag]         1.1.0      -> 1.1.0
 * [new tag]         <IP_ADDRESS>    -> <IP_ADDRESS>
 * [new tag]         1.1.1      -> 1.1.1
 * [new tag]         1.1.10     -> 1.1.10
 * [new tag]         1.1.11     -> 1.1.11
 * [new tag]         1.1.12     -> 1.1.12
 * [new tag]         1.1.13     -> 1.1.13
 * [new tag]         1.1.2      -> 1.1.2
 * [new tag]         <IP_ADDRESS>    -> <IP_ADDRESS>
 * [new tag]         1.1.3      -> 1.1.3
 * [new tag]         1.1.4      -> 1.1.4
 * [new tag]         1.1.5      -> 1.1.5
 * [new tag]         1.1.6      -> 1.1.6
 * [new tag]         1.1.7      -> 1.1.7
 * [new tag]         1.1.8      -> 1.1.8
 * [new tag]         1.1.9      -> 1.1.9
 * [new tag]         1.2.0      -> 1.2.0
 * [new tag]         1.2.1      -> 1.2.1
 * [new tag]         1.2.2      -> 1.2.2
 * [new tag]         1.2.3      -> 1.2.3
 * [new tag]         1.2.4      -> 1.2.4
 * [new tag]         1.2.5      -> 1.2.5
 * [new tag]         1.2.6      -> 1.2.6
 * [new tag]         1.2.7      -> 1.2.7
 * [new tag]         1.2.8      -> 1.2.8
 * [new tag]         1.3.0      -> 1.3.0
 * [new tag]         1.3.1      -> 1.3.1
 * [new tag]         1.3.2      -> 1.3.2
 * [new tag]         1.3.3      -> 1.3.3
 * [new tag]         1.3.4      -> 1.3.4
 * [new tag]         1.3.5      -> 1.3.5
Checking out files: 100% (1128/1128), done.
HEAD is now at b39b60a Merge tag Homebrew/1.3.6 into Linuxbrew/master
/usr/bin/ruby: no such file to load -- rubygems (LoadError)
/dls/science/users/mep23677/brew/brew/Homebrew/Library/Homebrew/brew.rb:83: syntax error, unexpected ':', expecting kEND
    Homebrew.help cmd, empty_argv: empty_argv
                                  ^
/dls/science/users/mep23677/brew/brew/Homebrew/Library/Homebrew/brew.rb:125: syntax error, unexpected ':', expecting kEND
  Homebrew.help cmd, usage_error: e.message
                                 ^
Failed during: /home/mep23677/.linuxbrew/bin/brew update --force

brew vendor-install ruby actually seems to solve the problem:
==> Downloading https://homebrew.bintray.com/bottles-portable/portable-ruby-2.3.3.x86_64_linux.bottle.tar.gz
Already downloaded: /home/mep23677/.cache/Homebrew/portable-ruby-2.3.3.x86_64_linux.bottle.tar.gz
==> Pouring portable-ruby-2.3.3.x86_64_linux.bottle.tar.gz

So, it looks like if that's supposed to happen, then it isn't. I don't have sudo access on the system I'm trying to install, so that could be one difference from "normal"? I can somewhat reproduce the problem on a docker centos6 with:
from centos:centos6

RUN yum install -y ruby git curl file git python-setuptools
RUN useradd -m brewser

USER brewser
WORKDIR /home/brewser

# Fails first time with 'private method `gsub' called for nil:NilClass (NoMethodError)' but
# cannot reproduce on RH6; assuming is a docker problem
RUN sh -c "$(curl -fsSL https://raw.githubusercontent.com/Linuxbrew/install/master/install.sh)" || \
    sh -c "$(curl -fsSL https://raw.githubusercontent.com/Linuxbrew/install/master/install.sh)"

ENV PATH="/home/brewser/.linuxbrew/bin:${PATH}"
RUN echo $PATH
RUN brew doctor

Although the install fails the first time, I'm assuming it's a docker issue because I don't have any other way to replace it.

Here's a Dockerfile for CentOS 6 that works: https://github.com/Linuxbrew/docker/blob/master/centos6/Dockerfile

The order of execution is supposed to be…
bin/brew
Library/Homebrew/brew.sh
Library/Homebrew/utils/ruby.sh
Library/Homebrew/cmd/vendor-install.sh

All that's shell code, so no Ruby (except for the installer script) is supposed to be executed until the new version of Ruby is boot strapped. It's clearly not working as intended in your case.
The work around for now is either…
eval "`curl -fsSL https://raw.githubusercontent.com/Linuxbrew/install/master/install-ruby`"
ruby -e "`curl -fsSL https://raw.githubusercontent.com/Linuxbrew/install/master/install`"

or
sh -c "$(curl -fsSL https://raw.githubusercontent.com/Linuxbrew/install/master/install.sh)"
brew vendor-install ruby

I'll try to look into this further when I find time. If you dig into it deeper, a PR to fix this issue would be most welcome.

Second workaround (brew vendor-install ruby) works for me. (ruby 1.8.6, centos6)

Thanks for the centos fix; I imagined a normally configured systems wouldn't have that problem - and obviously it works fine when ruby is completely missing.
And vendor-install is a simple-enough workaround.
Relatedly to versioning but in the possibly-separate-bug category, it also doesn't seem to handle the system git==1.7.1 very well; When git is missing it properly bootstraps itself from bottles - but when the system git 1.7.1 is present:

Installation doesn't warn you
Anything that triggers an update fails (error: unknown option 'list' from git, then hangs)
brew doctor tells you to brew install git
brew install git causes a self-update, which obviously fails

You seem to need to HOMEBREW_NO_AUTO_UPDATE=1 brew install git to actually fix the problem, which isn't obvious unless you know homebrew. Perhaps the brew doctor git error should tell you to use no-update (or even special-case install git installs).
I've also had "Error: glibc cannot be built with any available compilers." problems but haven't investigated/diagnosed that yet.

Following up on glibc cannot be built with any available compilers - same issue on my side. I am trying to sylink gcc4.4 as per instructions here - no luck yet.

@ivan-krukov Which distribution of Linux are you using?

I'm guessing that the git tag --list error comes from one of these two places:
https://github.com/Linuxbrew/brew/blob/master/Library/Homebrew/cmd/update.sh#L220
https://github.com/Linuxbrew/brew/blob/master/Library/Homebrew/cmd/update.sh#L447
At this point, it checks whether git is installed. It should also check that the version of git is new enough:
https://github.com/Linuxbrew/brew/blob/master/Library/Homebrew/cmd/update.sh#L386
A PR would be welcome if you'd like to submit a fix. It is Hacktoberfest after all!
https://hacktoberfest.digitalocean.com

@sjackman  CentOS release 6.8 (Final)

@ivan-krukov Try these installation instructions for CentOS6:
https://github.com/Linuxbrew/brew/wiki/CentOS6

Ah, that looks like it's the fix, thanks - I had only found the -core documentation and legacy bugs -
searching for the actual error message.

@sjackman It seems to have done the trick. The only other thing was to install git through brew, then it is all smooth sailing.

Sorry, I ended up getting quite swamped with other stuff. I'll try to tackle this when I can find the time/energy.


 Any other methods to sync an Apple Card to YNAB by chance?
It was sweet while it lasted at least.

Not currently. I have some aspirations to reverse engineer how Mint is getting Apple Card transactions, but I haven't sat down and given it an ernest go. I got as far as grabbing the link Mint sends to Apple to start the process (https://appleid.apple.com/auth/oauth2/v2/authorize?scope=apple-card-summary-and-transactions-readonly+openid&response_type=code&redirect_uri=https%3A%2F%2Fpartnerauth.platform.intuit.com%2Fexternal_partner%2Fapple-card%2Fcallback&client_id=com.mint.internal&state=[some UUID string]) but haven't perused it further. Apple documentation is notoriously lacking in many areas. this is about the most that I can find for how to integrate with them. Maybe I'm not using the right search terms, though. I've never set up oauth integrations before.

The article I read mentioned Credit Karma was the replacement. My only hope is Apple is going to partner with Credit Karma and maybe that could be a way to sync it to YNAB.  Who knows though.
Regardless, thank you for your work. Your tool has saved me a lot of time over the past ~ 6 months. I may just be back to staying on top of entering transactions on my phone as they happen in the new year which isn’t the end of the world.

I'm glad you've found it useful! I knew I couldn't be the only one with this problem.
I'm in a similar boat and rethinking my budgeting practices. I'm considering using a different credit card for the majority of my transactions, and only using the Apple Card for repeated, scheduled transactions that can be set up once in YNAB and ignored after that.
As for moving to CK: we can hope that Apple would play nice with them, but even then we'd have to reverse engineer their API. The mintapi project for Mint was a huge boon to ynam, and nothing such exists for CK yet.
On the topic of rethinking budgeting, I've been made aware of an app called LunchMoney that I may switch to. It's maintained by an indie developer, and is potentially cheaper than YNAB.


Make host a non optional argument

Most use cases if not all seem to require a host/url. Being able to pass the host without extra arguments would be nice.

@afranck64 I don't understand very well your issue.
But, it's possible to pass arguments inside a file.
Configuration file (conf.ini)
[Checker]
host=https://example.com
delay=1

[Notifier]
<EMAIL_ADDRESS>password=example
smtp_server=smtp.example.com:123
<EMAIL_ADDRESS>
Usage
python3 -m broken_link_checker -c conf.ini

Most use cases if not all seem to require a host/url. Being able to pass the host without extra arguments would be nice.

Ok, i understand now. Actually we need to add the keyword "--host" in front. But host should not be optional.


header bug

When scrolling, the header disappears, but you can click on it

Hi @Arhell what are the steps to reproduce?

Hi @Arhell what are the steps to reproduce? cc/ @Aaron-Junker we can't fix what we can't reproduce. We may consider having a issue template that includes a question around this. Pretty common in issue templates, and probably one we can borrow from another project.

I already fixed this issue https://github.com/microsoft/opensource.microsoft.com/pull/179
When you scroll the header disappears and you can click on it. I fixed it.


:broom: bump 0.7.1

create release 0.7.1
also changes the docs/readme for the next community meeting (as discussed in the last meeting)

/approve


Removes static web monitor files path for the dev env

Motivation
Fixes issue #500
Have you read the Contributing Guidelines on pull requests?
Yes. Just after the commit.

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


[report] Field editor (differences between versions 3.0.9 and 3.0.10)

Issue description:
@aristath, I noticed some differences between the version 3.0.9 and 3.0.10, just to let you know:

In 3.0.9, the editor field is okay, but I found some encoding problem, specially when you use &, my guess it's because it's converted to html, the & becomes &. That's the expected behaviour of editor, convert text to html, but this problem is happening in a text field.

In 3.0.10, the encoding problem it's finally fixed, consider that for text field, but I noticed that  editor button doesn't close the editor (the close button is working at 3.0.9). I also got some duplicated content in two different editor fields (I will try to reproduce this below the best way I can, hold on).

Versions used:
Kirki 3.0.9, 3.0.10, 3.1.0 and develop
Using theme_mods or options?
Theme mods
Code to reproduce the issue (config + field(s))
Kirki::add_config( 'twentyseventeen', array(
	'capability'    => 'edit_theme_options',
	'option_type'   => 'theme_mod',
) );

Kirki::add_panel( 'panel_test', array(
	'priority'    => 10,
	'title'       => __( 'The Panel', 'twentyseventeen' ),
	'description' => __( 'The Description', 'twentyseventeen' ),
) );

Kirki::add_section( 'section_test', array(
	'title'          => __( 'Test Section' ),
	'description'    => __( 'Test Section' ),
	'panel'          => 'panel_test', // Not typically needed.
	'priority'       => 160,
	'capability'     => 'edit_theme_options',
	'theme_supports' => '', // Rarely needed.
) );

Kirki::add_field( 'twentyseventeen', array(
	'settings' => 'my_setting',
	'label'    => __( 'My custom control', 'twentyseventeen' ),
	'section'  => 'section_test',
	'type'     => 'editor',
	'priority' => 10,
	'default'  => 'some-default-value',
) );

Hope in 3.1.0 these problems will be fixed.
Regards and thanks for support!

page-test.php
<?php get_header(); ?>

first editor

    <?= get_theme_mod('my_setting', 'default of first setting'); ?>

second editor

    <?= get_theme_mod('my_setting2', 'default of second setting'); ?>

<?php get_footer(); ?>

customizer.php
        Kirki::add_config( 'twentyseventeen', array(
		'capability'    => 'edit_theme_options',
		'option_type'   => 'theme_mod',
	) );

	Kirki::add_panel( 'panel_test', array(
		'priority'    => 10,
		'title'       => __( 'The Panel', 'twentyseventeen' ),
		'description' => __( 'The Description', 'twentyseventeen' ),
	) );

	Kirki::add_section( 'section_test', array(
		'title'          => __( 'Test Section' ),
		'description'    => __( 'Test Section' ),
		'panel'          => 'panel_test', // Not typically needed.
		'priority'       => 160,
		'capability'     => 'edit_theme_options',
		'theme_supports' => '', // Rarely needed.
	) );

	Kirki::add_section( 'section_test2', array(
		'title'          => __( 'Test Section 2' ),
		'description'    => __( 'Test Section 2' ),
		'panel'          => 'panel_test', // Not typically needed.
		'priority'       => 160,
		'capability'     => 'edit_theme_options',
		'theme_supports' => '', // Rarely needed.
	) );

	Kirki::add_field( 'twentyseventeen', array(
		'settings' => 'my_setting',
		'label'    => __( 'My custom control', 'twentyseventeen' ),
		'section'  => 'section_test',
		'type'     => 'editor',
		'priority' => 10,
		'default'  => 'some-default-value',
	) );

	Kirki::add_field( 'twentyseventeen', array(
		'settings' => 'my_setting2',
		'label'    => __( 'My custom control2', 'twentyseventeen' ),
		'section'  => 'section_test2',
		'type'     => 'editor',
		'priority' => 11,
		'default'  => 'some-default-value',
	) );

I think there's a slight misunderstanding here.
If you don't close the editor or click to open another editor, the previous data will be displayed and handled.
In your screencast I can see you change sections, but you don't click on the actual editor buttons to switch to the other control.

Ok, I admit I didn't switched the editor, but It's strange that two different settings has the same value. And other thing I observed was referenced in #1584. I guess it is an intermittent problem because I tested today and I didn't observed nothing, only the fact the missing last character.

I'm also seeing the same issue with the new version. The setting seems to have set for all of the editor settings which is rather annoying :/

@aristath Is this an old UI for editor?

Yeah, it's about a previous implementation that was later removed when WP-Core added a way to add tinyMCE to widgets & the customizer.
This old version was forcing a hack which had its issues. There was a single instance of TinyMCE, and the "control" was a button that was triggering a content area to slide-up from the preview pane. When there were multiple editor controls, clicking on another control's button would change the content of the editor and so on. If I remember correctly it was inspired by a "Customize Posts" feature-plugin than never made it in WP Core.
Closing the ticket since it's no longer relevant.


Want to contribute

Hi, how are you? I found this project interesting. I'd like to contribute. Is it accepting MRs?

Sure, be aware that there are plans to integrate this more closely with osism/openstack-image-manager as part of SovereignCloudStack/issues#168 and DCO Sign-Off being mandatory


Add serialize methods to objects

The biggest reason is that the objects now contain circular references so plain JSON.stringify() will throw an error. You can get around that using the replacer argument of stringify like this:
JSON.stringify(object, function(key, value){
  if(key.indexOf('$') === 0){
    return;
  }
  return value;
});

But it would be much better if the SDK did that for us.

Mixing with toJSON provides an ideal solution.
FS.BaseClass.prototype.toJSON = function(){
  return JSON.stringify(this, function(key, value){
    if(key.indexOf('$') === 0){
      return;
    }
    return value;
  });
};

I think we could avoid the error by removing the client property from the Plumbing object since that property is never used. But I still think we should add the toJSON function to the base class so that JSON.stringify() doesn't add junk properties when trying to serialize the SDK instance and helpers.

:disappointed: It's not that easy; the code I shared two weeks ago doesn't work.

We don't do protoype inheritance properly. We use the BaseClass constructor but don't inherit it's prototype. We would either need to refactor all classes to properly inherit or add the toJSON method in the constructor.

The return value of toJSON is an object, not a string.

Calling JSON.stringify on this inside of toJSON is recursive and blows the stack.

I think the best option is to use that code and just rename it to serialize:
FS.BaseClass.prototype.serialize= function(){
  return JSON.stringify(this, function(key, value){
    if(key.indexOf('$') === 0){
      return;
    }
    return value;
  });
};

That fixes problems (2) and (3). If we don't fix protoype inheritance then we can just assign it in the constructor (not ideal but leaving the option open in case fixing inheritance is too much work).

closed by fc1336ff95f2021ce767912934d43597ab46f158


canal: use localhost option

according to https://github.com/go-mysql-org/go-mysql/pull/36
I use canal and need to provide localhost option to syncer stream.

Hi, don't worry about the CI, I'll fix it in https://github.com/go-mysql-org/go-mysql/pull/779


[Form Recognizer] Consistency changes

Updates mainly to the names in the Admin client, ..Model.. -> ..DocumentModel..

API change check
APIView has identified API level changes in this PR and created following API reviews.
azure-ai-form-recognizer


Allow changing the Gradle build type for Android Gradle exports

Closes godotengine/godot-proposals#11163.
This adds two new export settings for Android exports, called gradle_build/debug_build_type and gradle_build/release_build_type, which can be used to control which of Gradle's buildTypes is used when building a Gradle export.
This lets you distribute a debug template export on Google Play, by enabling gradle_build/use_gradle_build and setting gradle_build/debug_build_type to Release, which omits the debuggable attribute and thus allows it to be uploaded for distribution.

A mobile project that needs to distribute debug exports on Google Play.

I don't understand what this PR is addressing, what does it mean to distribute debug exports?
The only things the changes in this PR seem to do is swap which keystore is used to sign the builds, which you can already do by directly specifying the keystore properties in the export settings.

I'm not quite clear on the purpose of exporting a debug app without the debuggable attribute. If your goal is to distribute the app for internal testing, there are other more suitable methods than Google Play.

I don't understand what this PR is addressing, what does it mean to distribute debug exports?

I'm referring to exporting a build with the "Export With Debug" toggle enabled in the file dialog that shows up when you press the "Export Project..." button.
Debug builds in Godot bring with them a slew of useful error checks (through the DEBUG_ENABLED macro) that we want included in internal testing builds, which are to be distributed through Google Play Console. Frankly, there is a high likelihood that this game will end up distributing debug exports for the final release even, as many of these debug checks (and upcoming features like the GDScript backtraces in #91006) are important for a live service title like this one.
However, if you try to upload one of these debug builds to Google Play Console you will be met with a rather cryptic error saying "All uploaded bundles must be signed", which as far as I can tell has nothing to do with signing, unless there's some kind of signing entitlement that I've missed. Searching around for this error will tell you that disabling the debuggable attribute (either by modifying the debug build type or by using the release build type like in this PR) resolves the error, which seems to be the case. From what I've gathered Google simply does not allow you distribute builds (internally or otherwise) that have this attribute enabled for security purposes.
It's of course possible for this PR to take the approach of adding some kind of "For Distribution" checkbox instead (which I believe is how Unreal phrases it) and then pass some custom argument along with the Gradle invocation that disables the debuggable attribute for Gradle's debug build type, but that leaves out other distribution-related features like various minifications that Gradle does for release builds.

The only things the changes in this PR seem to do is swap which keystore is used to sign the builds, which you can already do by directly specifying the keystore properties in the export settings.

The actual important change is above the keystore changes, which changes build_type to read from these new export settings rather than be picked based on the value of p_debug.
The keystore changes are admittedly messier than they probably should have been, but what it does is change it so that the appropriate [debug|release]_keystore_file (etc.) is used based on what Gradle build type is desired, instead of basing it on p_debug. If I'd left the code as-is then you would always pass debug_keystore_file (etc.) when doing a debug export, which always maps to the debug Gradle build type, and thus wouldn't apply when using the release build type, resulting in an error about missing keystore.

I'm not quite clear on the purpose of exporting a debug app without the debuggable attribute.

The "debug" terminology is somewhat broad/ambiguous in general, and many of the meanings are largely orthogonal to eachother. I would argue that the way Android refers to "debuggable" in the case of this attribute (which as I understand just allows you to attach a JDWP debugger) maps better to what Godot refers to as a "development build" (dev_build=yes), meaning one where you'd typically want to attach a debugger. Many of the things that Godot's DEBUG_ENABLED builds allow for are still useful even when not attaching a debugger of any kind.

If your goal is to distribute the app for internal testing, there are other more suitable methods than Google Play.

I am admittedly somewhat new to the modern Android ecosystem, but I can't really see the argument for not wanting to lessen the friction with the first-party tools of the biggest distribution platform.

I'm still not sure about this approach. A logging system might be more suitable and Godot also generate logs on crash.
Wouldn't adding the release keystore info to the "debug keystore" columns in export settings work?

I'm still not sure about this approach. A logging system might be more suitable and Godot also generate logs on crash.

I'm not sure how this applies to this particular use-case. There is no substitute for the many error checks (and general development features) that get compiled out completely from a DEBUG_ENABLED build within Godot itself. I'm not strictly talking about DEBUG_ENABLED stuff in the project itself.

BTW Wouldn't adding the release keystore info to the "debug keystore" columns in export settings work?

No, as mentioned in my previous comment, if I had left the keystore code as-is then you would always end up passing debug_keystore_[file|alias|password] when doing a debug export from Godot, which will only ever apply to the debug Gradle build type, which as of this PR isn't necessarily the Gradle build type used.

Though, it's a discussion worth having whether we should provide additional options in order to customize that behavior.

@mihe One option would be to add an advanced setting gradle_debuggable with the following values:

auto: set debuggable to true for debug builds and false for release builds
true: debuggable is always true
false: debuggable is always false

One option would be to add an advanced setting gradle_debuggable with the following values

I was also thinking about this solution, though I was considering using a boolean instead. But enum should be better.
Implementing it would be also pretty simple, just add a check at the time of manifest creation and handle android:debuggable value conditionally.

This is likely because your debug build is signed with a debug keystore and not a release keystore. The playstore doesn't accept debug keystore (keystores with the default credentials), so the solution here as @syntaxerror247 mentioned is to update your export options so that the debug keystore settings match the release keystore.

This was one of the first things we tried. Providing a non-debug keystore for the debug keystore settings does not resolve the error on its own. Setting the debuggable attribute to false in res://android/build/build.gradle (which I assume is this file) did however resolve the error (while also using a non-debug keystore).

There's a misunderstanding about how the Android gradle build system works; the build type that's passed to the gradle build is used here to select which prebuilt Godot Android library is used.
So your changes are effectively a no-op; by selecting 'Export with debug' but setting the build type to Release, you're pretty much doing a normal release build. The release version of the Godot Android library will be used and the DEBUG_ENABLED macro will be false.

That does indeed seem to have been a misunderstanding on my part.

However unlike the Android editor, regular users don't get the option for a dev build, so setting debuggable to false for debug builds mean they also lose the ability to use certain tools that require that setting to properly operate.

Right, yes, just to be clear, I'm not advocating for changing anything about the default state of debug exports. I just wanted to make clear that there's some ambiguity with debug/debuggable here.

Though, it's a discussion worth having whether we should provide additional options in order to customize that behavior.
In the meantime, to unblock yourself you can grab the godot-lib.template_debug.aar from res://android/build/build/libs/debug and copy it to the res://android/build/build/libs/release folder (make sure you also delete godot-lib.template_release.aar from that folder).

We've already unblocked ourselves by manually changing the manifest to set debuggable to false, as mentioned above, but moving these *.aar files around sounds more like what this pull request was trying to achieve, so I can give that a try.

One option would be to add an advanced setting gradle_debuggable

I did consider taking a similar approach to this, but as mentioned previously we are also considering shipping debug exports, and from what I understand (and correct me if I'm wrong) there are other things happening as part of the Gradle release build type that would be appropriate for production builds, like certain types of minification?

EDIT: But I am still not sure that we need this export setting though (even after reading these long comments). It seems like a niche use case that could be addressed with a custom template or manually editing manifest in gradle build.

Assuming that this debuggable attribute is in fact the culprit here then I do think debuggable should be configurable as an export option. While the use-case of shipping debug exports for production use is admittedly niche, the use-case of wanting debug exports for internal testing builds seems much less niche to me. Frankly I'm a bit surprised nobody else has reported this problem already.

Adding DEBUG_ENABLED macro in a release app also has several disadvantages

It can cause performance overhead as it will do additional checks and diagnostics that are not optimized for performance.
It also increases binary size by several megabytes.
I guess, debug build also doesn't have better error handling and it can have craches.

Yes, certainly. We're aware of these trade-offs though.

Anyway, it's clear that this PR isn't the correct approach here, so I'll go ahead and close this.
I struggle to see the workaround of moving/picking *.aar files made into any sort of export option worth upstreaming, and while configuring the debuggable attribute definitely seems worthwhile/useful, it's unclear right now whether that's going to be enough for our purposes, so I'll hold off with making a new proposal/PR for now.


SharedModel not unpacking data based on load order

I'm having an issue related to the SharedModel.  Here's an example:
I have a /scenes route and I have /locations route.  Every scene has a location associated with it via a BelongsTo.  When I load the data in the following order everything loads fine:
var locations = LocationsFactory.$search().$then(function(){
   var scenes = ScenesFactory.$search()
});

Results:  17 scenes are loaded, 13 scenes are loaded.
However, when I swap the load order (e.g. scenes and then locations), I suddenly find that the results are different:
Results:  17 scenes are loaded, but only 7 scenes are loaded.
It appears that only the 7 locations that were not tagged in a scene are loaded into the locations object.  If I bury down into the location's $response.data object, I see that indeed all 13 scenes are returned by the API, but for some reason only those 7 were properly unpacked and linked.
I'm using the SharedModel posted by @jasonayre in #208.  Though I've also tried it with the published SharedModel and get the same results.
This issue is happening across all my different routes. It's really crippling my ability to use the SharedModel because I have a TON of related data.
Any insight or thoughts are greatly appreciated!!

Could you share your model definitions? I'm struggling to understand the underlying structure.

Hi @iobaixas,
Since posting this question, I've discovered the source of the issue.  It's actually something wrong within the SharedModel code where it would begin to nest scopes after returning them from the cache.  I will do a pull request to propose my patch.


Add some specific prefix to class 'yfm'

We have a problem with redefinition of styles because of same class naming ('yfm') from diplodoc/transform and doc-tools (in project styles from the second one are extended, so we have a component with class 'yfm', and after project building styles priorities are mixed). Let's add some specific prefix.


⚠ SceneTime has degraded performance

In 8b2b795, SceneTime ($ST) experienced degraded performance:

HTTP code: 200
Response time: 2399 ms

Resolved: SceneTime performance has improved in e6ab935 after 9 minutes.


chore: Fix statement of eq_iff_not_lt_of_le

The statement said (a ≤ b → b = a) ↔ ¬a < b instead of the intended a ≤ b → (b = a ↔ ¬a < b). While both are true, the latter is the more useful one. Also pull out a PartialOrder section.

LGTM

Thanks!
bors r+


feat: SKU matrix full preview (do not merge)

What's the purpose of this pull request?
This PR is just to generate a preview of full sku matrix feature.

hello people, @tiago-freire @ramondorosario-ct can you please open a PR from vtex:feat/sku-matrix-cubos, we'll run a last review there. Thanks!

hello people, @tiago-freire @ramondorosario-ct can you please open a PR from vtex:feat/sku-matrix-cubos, we'll run a last review there. Thanks!

Hello! @hellofanny, as requested, a new pull request has been created, and a new preview link has been generated from it. I will be closing this pull request.
New PR: #2588
New preview link: https://starter-czgiqny8p-vtex.vercel.app/


SyncSubmitBlock

The block submission to the swarm is done.
The sanity checks are not, as this requires introducing some extra abstractions and infra.

Hi!
Unfortunately, seems like the chain head still doesn't get updated. I'm not sure why. I've set tracing to debug (info for the most noise-producing stuff) and I'm attaching a log. Hopefully it's at least a little bit helpful.
forestlog.txt
The commit hash from which Forest was built for testing is 3a1291d4655fb641a85d25dd288cd3f19d5c2c2d .
The testing was performed on a local 2K devnet, with Forest bootstrapped and synced via a Lotus node.
Tested using custom miner that is tested against Lotus and works on the same devnet on the Lotus node.

@ruseinov
Hi Roman,
I don't currently have a great method of reproducing to share. I tried quickly jury-rigging lotus-miner to work with Forest as means of being able to create a repro but I haven't had much success yet.
Here's the RPC sequence used by the custom miner:

ChainHead
MinerGetBaseInfo -> Beacon entries & is eligible for mining
WalletSign -> VRFProof for computing election proof
MinerGetBaseInfo -> Sector info for winning PoST
WalletSign -> Signing computed block ticket hash
MpoolSelect -> Messages to include in block
MinerCreateBlock
SyncSubmitBlock -> With result from MinerCreateBlock
ChainHead

The only change I made is to hard-code block_delay_secs from StateGetNetworkParams as that RPC isn't implemented in Forest yet. I used the same value returned by the Lotus node.
I have also manually run each of these against both Lotus/Forest synced to the same tipset/head and all RPCs listed here return identical responses on both Forest and Lotus nodes for the same inputs.
If you would find it helpful, I can share the request/response for each of these as well.

@alt-ivan
Thanks for lining that up for me, it's helpful. The requests and responses would be nice to see as well if possible.
With the sequence above - how can we be sure that the head is never set?
Bear in mind that the way this works in forest is that a block is sent to the message queue for processing, so there are no guarantees as to exactly when it actually gets processed, though it should be quite fast. Have you tried verifying that the given block never makes it into the chain?

3a1291d4655fb641a85d25dd288cd3f19d5c2c2d

This does not seem to exist anymore, could you try the latest main?  Though as long as it had my latest SyncSubmitBlock change - it should not matter.

@ruseinov

The requests and responses would be nice to see as well if possible.

Seems like I didn't save them after all 🤦 ... I'll redo the sequence and send the requests/responses. Sorry for the delay.

With the sequence above - how can we be sure that the head is never set?

Calling ChainHead returns the same tipset as before the SyncSubmitBlock call. Also, SyncSubmitBlock can be called over and over again with the same block and it will return a successful result, but the blocks seems to get "eaten" somewhere.

Bear in mind that the way this works in forest is that a block is sent to the message queue for processing, so there are no guarantees as to exactly when it actually gets processed, though it should be quite fast. Have you tried verifying that the given block never makes it into the chain?

I figured as much when looking at the codebase. I only stepped through the SyncSubmitBlock impl and there I saw that the created tipset doesn't get a CID assigned to it at that point in time. After that I didn't know where to follow the propagation of the block to see if it gets recorded anywhere using GetChainBlock, because I couldn't find its CID if it did.

I figured as much when looking at the codebase. I only stepped through the SyncSubmitBlock impl and there I saw that the created tipset doesn't get a CID assigned to it at that point in time. After that I didn't know where to follow the propagation of the block to see if it gets recorded anywhere using GetChainBlock, because I couldn't find its CID if it did.

That is helpful, let me check..

I figured as much when looking at the codebase. I only stepped through the SyncSubmitBlock impl and there I saw that the created tipset doesn't get a CID assigned to it at that point in time. After that I didn't know where to follow the propagation of the block to see if it gets recorded anywhere using GetChainBlock, because I couldn't find its CID if it did.

That is helpful, let me check..

@alt-ivan in fact key is lazily initialized on fn key() call.
https://github.com/ChainSafe/forest/blob/4a6ad5c8f4c90ed0dcf13f3069540545fad0a8f4/src/blocks/tipset.rs#L301-L304
So you can basically check the CIDs of headers to see which ones to monitor.
For further debugging:

Here's where tipset channel is being consumed: https://github.com/ChainSafe/forest/blob/32ae416f8dbd34a2e0eadf0ffbbeb9846e41e380/src/chain_sync/tipset_syncer.rs#L348
Here's where the rest of the logic happens: https://github.com/ChainSafe/forest/blob/32ae416f8dbd34a2e0eadf0ffbbeb9846e41e380/src/chain_sync/tipset_syncer.rs#L375-L573

@ruseinov
I tried to adapt lotus-miner so I can give you easy steps to reproduce (to stop at MinerCreateBlock so you can feed the output of that into SyncSubmitBlock) but I ran into so many speedbumps that I gave up for now.
Some new interesting info:

So you can basically check the CIDs of headers to see which ones to monitor.

When I connect Forest/Lotus and execute SyncSubmitBlock on Forest, it propagates that block to Lotus and Lotus now has the correct chain head with the latest tipset. Forest also receives this block, seemingly back from Lotus via gossip, because I can query it via GetChainBlock and see it. However, Forest's ChainHead still points to the previous epoch tipset.
When I don't connect Forest/Lotus and execute SyncSubmitBlock on Forest, then that block doesn't get stored and I cannot query it via GetChainBlock

Here's where tipset channel is being consumed:

I added tracing into these locations and nothing happens. Doing some more eye-level examination I saw this:
    fn follow(&self, tipset_opt: Option<FullTipset>) -> ChainMuxerFuture<(), ChainMuxerError> {
        // Instantiate a TipsetProcessor

But in devnet it seems that Forest never enters follow mode https://github.com/ChainSafe/forest/issues/3089
From what I saw, tipset_receiver only gets consumed here via TipsetProcessor? I might be wrong though.
This may also explain other sync issues with Lotus in devnet i.e. Forest often doesn't sync fully with Lotus with similar "symptoms" (ChainHead returns earlier tipset but later one exists in store)

@alt-ivan Thanks a lot for looking into this, no it starts to make a lot of sense!

When I don't connect Forest/Lotus and execute SyncSubmitBlock on Forest, then that block doesn't get stored and I cannot query it via GetChainBlock

That's probably due to the fact that the actual network send works, but the TipsetProcessor part does not work.

But in devnet it seems that Forest never enters follow mode #3089

You are correct, it seems it never does. Good spot! And logically you can submit a block if the node is never "in sync".  I guess we'll have to deal with it to fix this.

@alt-ivan Can you please try going through the process using this commit: https://github.com/ChainSafe/forest/pull/4328 ?
It's going to be merged to master automatically in a little bit. This should fix the follow issue.

@ruseinov
I will be testing shortly and reporting back here. Thanks!


Proposal for supporting semantic highlighting

Discussed in https://github.com/p4lang/p4analyzer/discussions/23

Originally posted by qobilidop April 20, 2023
Semantic highlighting is a feature supported by LSP[1], and major editors/IDEs (like VS Code[2]) through LSP. The benefits of semantic highlighting are explained in more detail in [2]. I think it is a very useful feature, and a natural fit for p4analyzer to implement. As a reference, rust-analyzer has implemented this feature already[3].
Reference:

[1] https://microsoft.github.io/language-server-protocol/specifications/lsp/3.17/specification/#textDocument_semanticTokens
[2] https://code.visualstudio.com/api/language-extensions/semantic-highlight-guide
[3] https://github.com/rust-lang/rust-analyzer/issues/604
[4] https://github.com/build2/build2/issues/109

The challenge of building a good semantic highlighter is that it should be architecture-aware, meaning that things like:

The names of externs (extern constructors) and their parameters
The names of extern methods and their parameters
The names of architecture-specific types (typedefs, structs, headers, enums, etc.) and constants
The names of architecture-specific package (package constructrors) and their parameters
should be properly highlighted. All this information can be gleaned by analyzing the architecture-specific include files, such as tna.p4, psa.p4, etc.

In addition to that, the highlighter should also be target-aware so that it can properly highlight:

target-specific annotations
target-specific table attributes (properties)
Unfortunately, there is no standard method to retrieve those. Intel's Tofino compiler allows one to dump all Tofino-specific annotations, but there is no way to dump Tofino-specific table attributes (fortunately, there are not that many).

Semantic highlighter for Emacs supports all the above (@timjroberts  -- ask me for the latest version), but only for TNA and T2NA, because all those definitions are hard-coded inside (and I do even update them periodically).
p4analyzer should definitely do better than that.


[Feedback Wanted] Evaluate scaffolder templates through dry-run API

Status: Open for comments

Need
Template developers want to test their in-development templates against their installation of backstage.
Proposal
Have a CLI script that uses the dry-run API of a backstage installation, and serialize the created workdir to local disk for the developer to test.
With some auth trickery, this could also be used for CI on template repositories.
Check out a possible variant of such a script in the contrib documentation, https://github.com/backstage/backstage/tree/master/contrib/scaffolder.
Alternatives

Just rendering a template with nunjucks.

This would not utilize all the non-fetch-template parts

Write a wrapper around the actual dry-run logic to be executed locally.

This would require some way to get all custom steps to execute, and would require quite a bit of mocking of backstage infrastructure.

Risks
This doesn't actually test the survey/questionnaire part of the template.

Hi,
Just checking, are you aware of the /create/edit path that's typically available on your Backstage installation? Also reachable from the top right "kebab menu" in the Create section.

Does this correlate with what you need?

Can this be closed with #13991 merged in?

Can this be closed with #13991 merged in?

This issue is to collect feedback on that document, so no.

Forgot about the relation between things here, got a bit confused by the format I think x) I updated the title to hopefully be a bit more clear about the intent. Perhaps it would be best to update the issue body with references to the code in contrib as well?

Hey all,
New to Backstage. Still learning and experimenting with the scaffolder templating. Quick doubt about this:
Is that a standalone tool or does it have a dependency to be run from within a Backstage node? I.e. does it have some system/node dependencies?

Yes, it does have node.js dependencies, but it's not required to be run on a machine with backstage installed. To avoid saying node twice for different things. The machine you run it on does need network access to the machine running backstage, though. So it's low on local dependencies, but whether you call that stand-alone or not would be up to you ;-)

Hey, @Pike, basically I am having issues with running this on local machine, due to following errors:
import { dirname, join, relative } from 'node:path';
^^^^^^

SyntaxError: Cannot use import statement outside a module
    at Object.compileFunction (node:vm:360:18)
    at wrapSafe (node:internal/modules/cjs/loader:1088:15)
    at Module._compile (node:internal/modules/cjs/loader:1123:27)
    at Module._extensions..js (node:internal/modules/cjs/loader:1213:10)
    at Module.load (node:internal/modules/cjs/loader:1037:32)
    at Module._load (node:internal/modules/cjs/loader:878:12)
    at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:81:12)
    at node:internal/main/run_main_module:23:47

I suspected I am missing a package.json file whereby I specify something like:
{
  "type": "module"
}

and then I get
import type { ScaffolderDryRunResponse } from '@backstage/plugin-scaffolder';
            ^
SyntaxError: Unexpected token '{'
    at Loader.moduleStrategy (internal/modules/esm/translators.js:145:18)
    at async link (internal/modules/esm/module_job.js:64:21)

I know I am doing something wrong or missing some npm dependencies, but not sure which?
I am on Node.js v18.12.1. I am running it in the following way:
node scaffolder-dry.js http://remotehost/ <template-directory> template.yml <output-directory>

Excuse my ignorance if it is something obvious :)

Would also like some clarification on how to use the script, not super familiar with typescript and couldn't get it working while messing around with it. My apologies if something is obvious.

Let's keep this open.

For a bit more context, with Cookiecutter we had a simple way to test templates locally: just run cookiecutter and examine the output. This was critical because when building new templates, you need to iterate rapidly and don't want to add any extra steps or dependencies like running the template through an active Backstage instance.
We also used Cookiecutter in CI pipelines to build some basic tests. At least, making sure the template compiled and didn't have any errors.
With the switch to nunjucks, we don't have any good way to test locally or in CI. This is a big step backward for us in terms of functionality.

Could really use some more details on how this is meant to be run. Not clear on why this is a .md. As a .ts the path to the package.json may have changed since this was created, but the package.json it appears to be referencing is not configured properly to execute this as a module. Not currently able to get this to function.

@Gladdstone I got it working, here's how I modified it: https://gist.github.com/rmartine-ias/4fe26f27b6d520806bd26fa0f1607fa2
If this is missing anything, let me know. It's not super pretty, but it runs.
yarn install, and run with
npx ts-node --esm src/index.ts http://localhost:7007/ path/to/template/folder values.yml out --token "$FRONTEND_TOKEN" (also kind of hacky, but it runs)
I got FRONTEND_TOKEN by going to backstage in my browser, and inspecting the request headers to authenticated resources (e.g. asking about entities) -- copy the JWT after "Bearer: " and then export FRONTEND_TOKEN="whatever". values.yml should include all required values for the parameters step.

I've been bumping into an issue recently using the template editor directly, it appears that when using replace(' ', '-') to set up a value, trying to click Create in the preview to run through the scaffolder dry-run results in a 403 error. Switching this to replace(' ', '\-'), gets through fine and it appears that using the escaping has no ill effects when done for real.
The unescaped form works fine when using templates for real, it only appears to cause an issue when sent to the dry-run endpoint. I'm guessing a serialisation issue perhaps? Using roadie and they confirmed they weren't seeing anything in their logs regarding the forbidden error.
Happy to report this as a separate issue, just figured some people might end up i this thread.
Btw, having this is fantastic, so I'm hopeful that work will continue and build out a CLI tool to support along the lines of the scripts referenced above.

@electrofelix Could you make a separate issue with some reproduction steps for that?

Any chance we can increase the priority for this CLI to be official? It's an amazing tool

@sp71 yep it's something that's on our radar, I think we probably want to wait for some of #15999 before to settle before taking on some of the CLI work. Thinks like authentication etc need to be settled for CLI's first.

not stale, still want this

@Pike what do you think about moving this to an official @backstage/plugin-scaffolder-cli package? (👀 @benjdlambert)

naggitynagnag

naggitynagnag

@Pike that aught to keep the stalebot away. Still blocked on the auth issue at the minute though, which we should hopefully get some time in Q1 to start taking a look at.

Any update about the integration of the dry-run part of the backstage client ?

The new backend makes this easier. I have a less-hacky version locally, but I haven't been able to actually run through it in earnest due to day job things.

Can you share it please ?

In case you or someone else still need it. Here is how I have done it:
Add this to catalog-info.yaml
backend:
  auth:
    externalAccess:
      - type: static
        options:
          token: ${STATIC_TOKEN_CICD}
          subject: cicd-scaffolder-dry-run
        accessRestrictions:
          - plugin: scaffolder

I can use value of STATIC_TOKEN_CICD in my CI pipeline (which does a scaffolder dry-run) to auth against backstage.
See https://backstage.io/docs/auth/service-to-service-auth/#static-tokens


CFY-4393 wait for a finished event when running an execution

Running an execution like cfy executions start only waits until
the execution's status changes to terminated (or failed, cancelled).
This makes it so the cli also waits for a workflow_succeeded (or failed,
cancelled) event, not just for the status change.

Updated the PR, fixing 2 tests that were broken by this change

Added a new commit (will squash later if needed), rewriting event tests to not use threads (they were sometimes failing on CI, even though they passed on my machine...); this should make them easier to understand and debug, and less brittle; please review.
Although CI is still failing right now due to broken dev-requirements.txt on master :(


[KYUUBI #1643][FOLLOWUP] Fix Flink GetFunctions result schema

Why are the changes needed?

Implement GetFunctions operation.
How was this patch tested?

[ ] Add some test cases that check the changes thoroughly including negative and positive cases if possible

[ ] Add screenshots for manual tests if appropriate

[x] Run test locally before make a pull request

Codecov Report

Merging #1773 (05ed769) into master (7ca1665) will decrease coverage by 0.32%.
The diff coverage is 50.00%.

:exclamation: Current head 05ed769 differs from pull request most recent head 498c7f9. Consider uploading reports for the commit 498c7f9 to get more accurate results

@@             Coverage Diff              @@
##             master    #1773      +/-   ##
============================================
- Coverage     59.84%   59.52%   -0.33%
+ Complexity      263      247      -16
============================================
  Files           275      274       -1
  Lines         13613    13536      -77
  Branches       1745     1738       -7
============================================
- Hits           8147     8057      -90
- Misses         4774     4784      +10
- Partials        692      695       +3

Impacted Files
Coverage Δ

...e/kyuubi/engine/flink/operation/GetFunctions.scala
75.67% <50.00%> (-16.64%)
:arrow_down:

...ine/flink/operation/FlinkSQLOperationManager.scala
86.95% <0.00%> (-4.72%)
:arrow_down:

...ache/kyuubi/operation/KyuubiOperationManager.scala
92.50% <0.00%> (-2.50%)
:arrow_down:

...org/apache/kyuubi/engine/flink/schema/RowSet.scala
60.00% <0.00%> (-1.96%)
:arrow_down:

...he/kyuubi/engine/spark/operation/GetTypeInfo.scala
98.68% <0.00%> (-1.32%)
:arrow_down:

...rc/main/scala/org/apache/spark/ui/EnginePage.scala
78.93% <0.00%> (-0.65%)
:arrow_down:

...uubi/engine/spark/operation/ExecuteStatement.scala
83.87% <0.00%> (-0.26%)
:arrow_down:

...org/apache/spark/kyuubi/SQLOperationListener.scala
94.00% <0.00%> (-0.12%)
:arrow_down:

...uubi/engine/spark/events/SparkOperationEvent.scala
88.88% <0.00%> (ø)

...he/kyuubi/engine/flink/operation/GetTypeInfo.scala

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 7ca1665...498c7f9. Read the comment docs.

@yaooqinn, @pan3793,  I have rebased the lastest master branch and fixed the conflicts from the master branch. Please take a look again.

Thanks, merging to master


kubeshark: 52.0.0 -> 52.1.9

Automatic update generated by nixpkgs-update tools. This update was made based on information from passthru.updateScript.
meta.description for kubeshark is: The API Traffic Viewer for Kubernetes
meta.homepage for kubeshark is: https://kubeshark.co/
meta.changelog for kubeshark is: https://github.com/kubeshark/kubeshark/releases/tag/52.1.0
Updates performed

Ran passthru.UpdateScript

To inspect upstream changes

Release on GitHub

Compare changes on GitHub

Impact
Checks done

built on NixOS
The tests defined in passthru.tests, if any, passed
found 52.1.0 with grep in /nix/store/dr5dihidbsws21aynwzz794z51c0hd7r-kubeshark-52.1.0
found 52.1.0 in filename of file in /nix/store/dr5dihidbsws21aynwzz794z51c0hd7r-kubeshark-52.1.0

Rebuild report (if merged into master) (click to expand)

1 total rebuild path(s)

1 package rebuild(s)

First fifty rebuilds by attrpath
kubeshark

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/dr5dihidbsws21aynwzz794z51c0hd7r-kubeshark-52.1.0 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A kubeshark https://github.com/r-ryantm/nixpkgs/archive/4ea298f38701f705cfbf708097f7781d8b7b855b.tar.gz

Or:
nix build github:r-ryantm/nixpkgs/4ea298f38701f705cfbf708097f7781d8b7b855b#kubeshark

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/dr5dihidbsws21aynwzz794z51c0hd7r-kubeshark-52.1.0
ls -la /nix/store/dr5dihidbsws21aynwzz794z51c0hd7r-kubeshark-52.1.0/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review run on x86_64-linux 1

1 package built:

kubeshark

Maintainer pings
cc @bryanasdev000 @qjoly for testing.

Automatic update generated by nixpkgs-update tools. This update was made based on information from passthru.updateScript.
meta.description for kubeshark is: The API Traffic Viewer for Kubernetes
meta.homepage for kubeshark is: https://kubeshark.co/
meta.changelog for kubeshark is: https://github.com/kubeshark/kubeshark/releases/tag/52.1.9
Updates performed

Ran passthru.UpdateScript

To inspect upstream changes

Release on GitHub

Compare changes on GitHub

Impact
Checks done

built on NixOS
The tests defined in passthru.tests, if any, passed
found 52.1.9 with grep in /nix/store/yav64ji4wwd3wx4fnnlpqr8zzj8awxpi-kubeshark-52.1.9
found 52.1.9 in filename of file in /nix/store/yav64ji4wwd3wx4fnnlpqr8zzj8awxpi-kubeshark-52.1.9

Rebuild report (if merged into master) (click to expand)

1 total rebuild path(s)

1 package rebuild(s)

First fifty rebuilds by attrpath
kubeshark

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/yav64ji4wwd3wx4fnnlpqr8zzj8awxpi-kubeshark-52.1.9 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A kubeshark https://github.com/r-ryantm/nixpkgs/archive/0f6a6c8777e082e8b24d529e0f4818be5118af02.tar.gz

Or:
nix build github:r-ryantm/nixpkgs/0f6a6c8777e082e8b24d529e0f4818be5118af02#kubeshark

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/yav64ji4wwd3wx4fnnlpqr8zzj8awxpi-kubeshark-52.1.9
ls -la /nix/store/yav64ji4wwd3wx4fnnlpqr8zzj8awxpi-kubeshark-52.1.9/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review run on x86_64-linux 1

1 package built:

kubeshark

Maintainer pings
cc @bryanasdev000 @qjoly for testing.


Unfortunately, due to the limited amount of time of the maintainers and since the information given does not indicate that this is an Electron Forge specific problem, we cannot help debug your app at this time. Instead, you should consider using one of the community forums, as there are more people there available to answer questions.


Add Reference Link to Trace Library

It might be nice to add a link to an explanation/definition of the Trace library so beginners can explore this feature without having to search the MSDocs website.  As it exists now, the short intro to Trace is out of context and not supported with opportunities for further exploration.

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

ID: 80ccbb63-7f84-55e6-1b3e-f48400aa17ae
Version Independent ID: 6aba5d1b-f8ce-7b82-560e-c6a9926423ac
Content: Tutorial: Extend a simple C# console app - Visual Studio
Content Source: docs/get-started/csharp/tutorial-console-part-2.md
Product: visual-studio-windows
Technology: vs-ide-general
GitHub Login: @ghogen
Microsoft Alias: ghogen

I think this is simple enough to do and would contribute to the reader's understanding of what the Trace library could do.  A simple link at the bottom or even in the text of the section involved would contribute to greater understanding of the tutorial and growth of overall knowledge of C#'s existing capabilities.  This should take 10 mins to implement.

@JustaSimpleUser
Thanks for your patience. I agree with your suggestion and will add a link.


VIRAL-VIDEO! de Dafne Keen Twitter video: filtración del clip íntimo original, ¿dónde ver?

VIRAL-VIDEO! de Dafne Keen Twitter video: filtración del clip íntimo original, ¿dónde ver?Dafnekeen video xxx leaked,anne hathaway , dafne keen 2024 leak,dafne keen twitter video , dafne keen updates.
Watch 🟢 ➤ ➤ ➤ 🌐 Click Here To link (Full Viral Video Link)
🔴 ➤►DOWNLOAD👉👉 (Full Viral Video Link)
Dafne Keen filtración, ¿video en Twitter es real?
Dafne Keen 2024 Video Leak: The Dark Side of Celebrity Leaks and the Internet’s Obsession with Scandal
The recent buzz surrounding Dafne Keen, known for her breakout roles in movies like Logan, has taken an unsettling turn with the unauthorized leak of private videos circulating online. Terms like “Dafne Keen 2024 Leak,” “Dafne Keen Twitter Video,” and even mentions alongside other celebrities like Anne Hathaway have fueled the internet’s insatiable appetite for scandal and controversy.
This article delves into the reasons why leaked videos involving celebrities captivate audiences, the impact on those affected, and the ethical implications of engaging with such content.
The Allure of Celebrity Leaks: Why Are We So Drawn to Scandals?
In a world where celebrities’ lives are constantly in the public eye, leaked videos and private moments often generate significant buzz. The fascination with leaked content, particularly when it involves well-known personalities like Dafne Keen, stems from a combination of curiosity, the allure of exclusivity, and the thrill of witnessing something intended to remain private.
These leaks offer a rare, often intimate glimpse into the lives of those we admire, turning private moments into public consumption.
Leaked videos also thrive in the viral ecosystem of social media, where platforms like Twitter, Instagram, and TikTok amplify and circulate content at lightning speed. As soon as rumors of a leak surface, viewers flock to see what’s been revealed, fueling a cycle of shares, comments, and reactions. In Dafne Keen’s case, the presence of her name alongside terms like “video xxx leaked” only heightens the intrigue, drawing in audiences eager for the latest scandalous glimpse.
There’s also the element of shock value. Videos that depict celebrities in unexpected or vulnerable situations challenge the polished image they often present to the public. This contrast between the celebrity persona and their private self can be both jarring and captivating, keeping viewers hooked on the unfolding drama.
The Impact on Celebrities: Privacy Violations and Personal Consequences
For celebrities like Dafne Keen, the unauthorized spread of private videos can be deeply invasive and damaging.
Leaks not only violate personal privacy but also disrupt the carefully managed public image that many stars work hard to maintain. The consequences extend beyond embarrassment; they can lead to emotional distress, public shaming, and even professional repercussions.
The constant scrutiny faced by celebrities is intensified when private content is exposed without their consent. For Dafne Keen, the dissemination of such videos means dealing with an overwhelming invasion of privacy, as well as the challenge of controlling her narrative amidst a torrent of online speculation.
It’s a stark reminder of how celebrities, despite their fame, are entitled to the same respect for their personal boundaries as anyone else.
Moreover, these leaks can have long-term effects, impacting mental health and personal relationships. The relentless exposure and judgment from the public eye can lead to anxiety, depression, and a sense of powerlessness as one’s private life is turned into a spectacle.
Ethical Considerations: Our Role as Viewers
As consumers of digital content, it’s crucial to reflect on the ethical implications of engaging with leaked videos.
While it may be tempting to click on the latest trending link, doing so perpetuates a cycle of exploitation that disregards the consent and well-being of those involved.
In the case of Dafne Keen and other affected celebrities, choosing to watch, share, or comment on unauthorized videos contributes to the violation of their privacy.
Respecting privacy means taking a stand against the spread of leaked content.
It involves recognizing the humanity behind the headlines and choosing not to participate in the public dissection of someone’s private life.
By refraining from engaging with leaked material, we can help foster a more respectful and ethical online environment.
The Responsibility of Social Media Platforms
Social media platforms bear significant responsibility in managing the spread of leaked content.
With millions of users actively sharing and discussing such material, these platforms must enforce stricter policies to prevent unauthorized videos from going viral.
Swift removal of leaked content, clearer reporting mechanisms, and penalties for violating privacy guidelines are essential steps in protecting individuals from further harm.
Platforms like Twitter, where much of the buzz around the Dafne Keen leak has circulated, need to be proactive in curbing the spread of sensitive content.
This includes working closely with affected individuals to ensure that their privacy rights are respected and that harmful material is taken down promptly.
Conclusion: Navigating the Ethics of Celebrity Leaks
The fascination with celebrity leaks, like the recent Dafne Keen video, reflects a broader societal issue of how we engage with digital content.
While the allure of exclusive, behind-the-scenes glimpses of celebrity lives is undeniable, it’s important to remember the real impact of these leaks on the individuals involved.
As viewers, we hold the power to choose how we respond to such content, and with that power comes the responsibility to act ethically.
By respecting privacy, advocating for better protections on social media platforms, and choosing not to participate in the spread of leaked videos, we can help create a more compassionate and respectful digital culture.


TestEVM fail

Reproduce example:
https://github.com/Qitmeer/qng/runs/5210110682?check_suite_focus=true#step:6:3430
https://github.com/Qitmeer/qng/runs/5163827045?check_suite_focus=true#step:6:3424
Error location:
func TestEVM(t *testing.T)
Error info:
 evm_test.go:46: GetBalance failed:Post "http://<IP_ADDRESS>:18545": dial tcp <IP_ADDRESS>:18545: connect: connection refused

Fix By PR #69


Makefile generation: circular dependency when targetdir is "."

Note: If you use the fuzzy expressions such as 'can't use/no effect/problem/error', but don't give any relevant auxiliary information according to the template below, this issue will be not replied.

Describe the bug
The issue happen when a makefile is generated by xmake project -k make.
When set_targetdir(".") is called, the generated makefile is incorrect and make will warn about a "circular dependency" issue.
Expected behavior
Make should not show an error.
Error output
When calling make
make: Circular sampletarget <- sampletarget dependency dropped.

Related Environment
Please provide compiling and running environment information:

xmake version: 2.5.5
os: Fedora Linux
target platform: -

Additional context
The faulty xmake.lua:
target("sampletarget")
    set_kind("binary")
    set_targetdir(".")  -- targetdir is .
    add_files("*.c")

Thank you very much for your contribution. 👍


Prisma PgBouncer mode doesn't play nice with PGBouncer v1.21.0

PGBouncer 1.21 introduced some support for prepared statements: https://www.pgbouncer.org/config.html#max_prepared_statements
However, this support does not include support for parsing and interpreting DEALLOCATE ALL/RELEASE ALL, which is used here to clean up any prepared statements. This means pgbouncer gets confused about the state of the session with its prepared statements and tries to execute them when a new client asks to execute the equivalent statement; resulting in PostgreSQL erroring out because the statements were released:
Order of exection:

Prisma T1 prepares and executes protocol-level SELECT 1, name bla
pgbouncer receives that statement and stores it, forwarding the prepare as PGBOUNCER_1 on session 1, storing the mapping SELECT 1=>PGBOUNCER_1.
Prisma T1 is done with its transaction - pgbouncer's session 1 is available again
Prisma T2 starts, cleans up the connection and thereby executes DEALLOCATE ALL.
Pgbouncer doesn't interpret the message, and forwards it to PostgreSQL. This deallocates the prepared statement PGBOUNCER_1 without pgbouncer's knowledge.
Prisma T2 prepares and executes protocol-level SELECT 1, name bla (it doesn't think it has any prepared statements)
pgbouncer recieves that statement, finds it as SELECT 1 => PGBOUNCER_1, and forwards EXECUTE PGBOUNCER_1 as it thinks the statement is still loaded.
PostgreSQL receives the EXECUTE PGBOUNCER_1 command, but then returns an error as it has already deallocated that prepared statement at 5. This error is forwarded to prisma.

Note: this assumes pgbouncer is configured with a non-0 value for max_prepared_statements

Thanks for opening an issue @MMeent, we'll look into this.

Ok, this makes sense to me from your description, and is really unfortunate as that is the previous "hack" that was necessary to make Prisma's PostgreSQL driver work with PgBouncer.
What error message exactly are you getting @MMeent? I assume something along the lines that s0 does not exist or similar? (s0 etc are the names prepared statements get from the PostgreSQL driver we are using)

https://community.neon.tech/t/i-encounter-this-error-for-some-reason-related-to-pgbouncer/1295/11
You might see different stack traces here

To pull this in here, it looks more like this:
Error occurred during query execution:
ConnectorError(ConnectorError { user_facing_error: None, kind: QueryError(PostgresError { code: “26000”, message: “prepared statement "PGBOUNCER_3" does not exist”, severity: “ERROR”, detail: None, column: None, hint: None }), transient: false }) {

(PGBOUNCER_3 is the name PgBouncer gives internally to the prepared statements before actually creating them)

So the problem is that pgbouncer=true used to require a DEALLOCATE ALL query to make sure that each new transaction did not have any previous statements prepared on the connection, so Prisma executes that query in the background. Now with the new PgBouncer version, prepared statements are actually properly supported - but PgBouncer does not handle the fact that the DEALLOCATE ALL query removes all prepared statements on the underlying database server, and then running a prepared statement will fail because PgBouncer expects it to be there - which leads to error messages like prepared statement "PGBOUNCER_3" does not exist.
It might potentially be enough to remove pgbouncer=true from the connection string in this case to make Prisma work - but this has not been fully tested and confirmed yet.

There is now an issue for PgBouncer: https://github.com/pgbouncer/pgbouncer/issues/974
And a PR that already suggests a way how to fix this: https://github.com/pgbouncer/pgbouncer/pull/972

The PR was merged: https://github.com/pgbouncer/pgbouncer/pull/972
Next release of PgBouncer will probably prevent this problem.
We are currently working on testing this and making sure there are not other surprises hiding.

I tried to remove the pgbouncer=true from the string. still facing same issue

That is unexpected. Please open a new issue and describe your full problem and situation. Thanks.

@guyromb what pool_mode are you using?

Is this know fixed with the new release of PgBouncer 1.22.0?

It should be, yes @MrDigii - 1.22.0 includes the change that I linked above.
Please try it out, don't forget to enable prepared statement support and not use pgbouncer=true in the connection string for Prisma, and let us know.

@janpio I'm using Digital Ocean for my DB and pooling so I have no control and informations about the installed PgBouncer version and max_prepared_statements setting.
I can confirm that if I update to the latest DB patch in Digital Ocean, switching zu transaction pooling Mode and remove the pgbouncer=true from the connection string then it's working for me.
So maybe someone else with a more configurable or local installation of PgBouncer can verifiy this?

I guess I want to state here, out of frustration, what I really wish I'd NOT have chosen Prisma.  It's a HUGE MESS due to deployment and management issues.
Between confusing information about Digital Ocean (which I don't use), but the same problems happen on my Kubernetes deployed Postgres cluster. Other services, even some other queries, perform fine.
Net net, Prisma is not a great solution unless evidently you use THEIR solution. It not a generic ORM that's really a drop in tool across environments.
I've lost a month+ fighting Prisma, trying to get it to reliably work through a PG Bouncer instance which is required for my app because of its scale.
While i'm waiting for any sort of feedback or answer to this ticket, i'll be actively working to engineer Prisma out of my app. Easy to startup, but a NIGHTMARE to deploy and scale.

Do you have an actual problem we can help you with @wflanagan? If so, please open an issue and describe the challenge you are facing instead. Ranting probably feels good, but does not allow us to help understand your problem or help you. Thanks.


Do not try to pipe Gzip responses with no body

Fixes #2045
Fixes #2177

Thanks, @simov!

LGTM! :cake:

Version 2.72 is out! :sparkles:


Ability to specify DOCKER_OPTS

The ability to specify DOCKER_OPTS as an env var on the vagrant up command and have it be passed to the virtual machines is very useful for adding params such as insecure-registry for local testing.

@josephschorr you should thank @tcichowicz!

@tcichowicz: Thanks for doing this!

No problem, hope this helps :)


Fix persist.proto link

Hi @sashabaranov, many thanks for the PR. This all LGTM. Even though it's small, before I can merge it I need you to sign our CLA: https://pachyderm.wufoo.com/forms/pachyderm-contributor-license-agreement/.

@jdoliner done

@sashabaranov :+1: merged


"Was this page helpful?" form is still present on a few pages

          @danoc I just noticed this form is still present on a few pages.

Examples:

https://thumbprint.design/components/action-sheet/ios/
https://thumbprint.design/help/
https://thumbprint.design/updates/notes/

Originally posted by @egoens in https://github.com/thumbtack/thumbprint/issues/964#issuecomment-1899071450

Thanks! I'll remove these as we migrate away from Gatsby. 🙇🏻


Can't start marathon/mesos UI if ./security-setup --enable=false

We faced with issue that if we build cluster with ./security-setup --enable=false  on top of OpenStack it finish successfully but:

Marathon UI not available but service is running on the host
Mesos UI not available but service is running on the host
Consul UI works fine

As result I'm not able to deploy app to cluster. In my case my Kafka scheduler ( branch feature\frameworks) not able to deploy or start.

Looks like that my misunderstanding of options:
./security-setup --mesos-iptables=false --mesos-framework-auth=false works fine for me
./security-setup --enable=false dose’t work for me even at master

It is an issue with the nginx container. It is trying to connect to consul via SSL with Consul disabled.
Try the fix/nginx-ssl branch.

PR https://github.com/CiscoCloud/microservices-infrastructure/pull/317 is a better option for resolving

@ChrisAubuchon will that PR also resolve an issue I'm currently seeing where I can't access any of the UIs any longer and get 403 Forbidden from nginx for any of the 3 UIs (consul, mesos, marathon). I assumed it was due to the fact my security.yml was out of date. So I reran the security setup, and then the playbook ran successfully but the UIs are no longer accessible.

@kenjones-cisco Separate issue. That is due to improper versioning of the nginx-consul container. That should be resolved now.

I've merged #317. @Y4Rv1K can we test and close this issue?

@stevendborrelli sure.

Tested and verified. Looks ok. feature/frameworks will be rebased to latest master.
Thank you


Upgrade to jwx/v2 version

Fixes #70
Signed-off-by: Yogesh Deshpande<EMAIL_ADDRESS>

This is duplicate of PR #71. Hence closing the PR without merging the same!


[BUG] AttributeError when calling read_parquet('xxx.parquet')

I tried to call read_parquet to read a parquet file generated by pandas.to_parquet(). The file could be successfully read by pandas.read_parquet(). But when I tried to call mars.dataframe.read_parquet on it, I got the following error:

/opt/anaconda3/envs/tf_gpu_36/lib/python3.6/site-packages/mars/dataframe/datasource/read_parquet.py in read_parquet(path, engine, columns, groups_as_chunks, use_arrow_dtype, incremental_index, storage_options, **kwargs)

393
394         with open_file(file_path, storage_options=storage_options) as f:
395             dtypes = engine.read_dtypes(f)
396
397         if columns:

/opt/anaconda3/envs/tf_gpu_36/lib/python3.6/site-packages/mars/dataframe/datasource/read_parquet.py in read_dtypes(self, f, **kwargs)
88     def read_dtypes(self, f, **kwargs):
89         file = pq.ParquetFile(f)
90         return file.schema_arrow.empty_table().to_pandas().dtypes
91
92     @classmethod

AttributeError: 'ParquetFile' object has no attribute 'schema_arrow'
What could the problem be?

Could you please run import pyarrow; print(pyarrow.__version__) to print the pyarrow version?

The pyarrow version is 0.16.0, and the pymars version is 0.5.3.

Could you upgrade your pyarrow to 0.17.0 or later and run your code again?

I upgrade pyarrow to 2.0.0, then the problem disappears. Thank you very much.

I upgrade pyarrow to 2.0.0, then the problem disappears. Thank you very much.

Thank your report, we will add a hint in our error message.

I upgrade pyarrow to 2.0.0, then the problem disappears. Thank you very much.

Thank your report, we will add a hint in our error message.


Fix Export-PSSession to not throw error when a rooted path is specified for -OutputModule

PR Summary
The 7.0.10 release contains a commit for a potential security issue: https://github.com/PowerShell/PowerShell/commit/38e55e14adadda43503486baf2909b3341e26d7a#. Here is the announcement about it: https://github.com/PowerShell/Announcements/issues/31.
This particular change from that commit caused a regression in Azure Function when running Import-Module <module-name> -UseWindowsPowerShell, where the user's module path doesn't exist. That command worked fine with the PowerShell 7.0.9 SDK but started to fail with the PowerShell 7.0.11 SDK.
The root cause is that when Export-PSSession is used by Import-Module -UseWindowsPowerShell, a rooted path is always specified to the -OutputModule parameter, so it doesn't matter whether the user's module path exists or not because it doesn't need it to identify the directory to use.
The fix is to use the specified rooted path directly. Actually, Path.Combine(path1, path2) will return path2 if it's rooted.
The error message is also updated:

PR Checklist

[x] PR has a meaningful title

Use the present tense and imperative mood when describing your changes

[x] Summarized changes
[x] Make sure all .h, .cpp, .cs, .ps1 and .psm1 files have the correct copyright header
[x] This PR is ready to merge and is not Work in Progress.

If the PR is work in progress, please add the prefix WIP: or [ WIP ] to the beginning of the title (the WIP bot will keep its status check at Pending while the prefix is present) and remove the prefix when the PR is ready.

Breaking changes

[x] None
OR
[ ] Experimental feature(s) needed

[ ] Experimental feature name(s):

User-facing changes

[x] Not Applicable
OR
[ ] Documentation needed

[ ] Issue filed:

Testing - New and feature

[x] N/A or can only be tested interactively
OR
[ ] Make sure you've added a new test if existing tests do not effectively test the code changed

Tooling

[x] I have considered the user experience from a tooling perspective and don't believe tooling will be impacted.

It makes sense for PowerShell Committee to review OutModule parameter. I think the case is the same as #3174 - OutModule parameter should be LiteralPath. If so we could simplify CreateModuleDirectory() method.

/backport release/v7.2.6

/backport to release/v7.0.12

/backport to release/v7.2.6


Add support for cohere embeddings

This PR adds support for Cohere embeddings and supports all embedding models as per Cohere documentation (large, small, multi-lingual).

Thanks!
This looks good, would you mind also updating the embeddings doc to reflect this new function?


Longstanding Intellisense bug

Will somebody please give this bug some attention?  There are many of us that haven't been able to move from version 0.10.3 in December.  I would very much like to run an up to date version of VSCode.
https://github.com/OmniSharp/omnisharp-roslyn/issues/371
https://github.com/OmniSharp/omnisharp-vscode/issues/6

This issue was moved to OmniSharp/omnisharp-vscode#269


Donate maxgio92/capsule-addon-fluxcd

Hello,
I'd like to donate an addon (maxgio92/capsule-addon-fluxcd) I developed for the integration of Capsule with GitOps scenarios made with Flux CD (v2), following the documented integration guide that describes a use case to provide tenants a Namespace-as-a-Service the GitOps-way.
The addon simply automates all the Tenant owner ServiceAccount setup for:

Required permissions
Credentials and client config (kubeConfig) to be used in Flux reconciliation resources.

The setup aligns with all the Flux multi-tenancy lockdown security rules, which are fundamental for multi-tenancy scenarios.
This setup, as for the integration documentation, introduces a pattern that is the Tenant system Namespace.
This Namespace is outside the Tenant and it contains all system resources, such as:

The ServiceAccount Tenant owner
The Rolebindings
The client config for the Service Account Tenant owner

These resources are intended to be used by the Flux reconciliation resources, in order to reconcile Tenant resources as Tenant owner.
Furthermore, with the autogenerated client config, all the requests are directed to the API server through the Capsule proxy, allowing the tenant to operate, the GitOps-way, on cluster-wide resources, including the custom ones.
The addon allows to optionally distribute the Tenant owner client config in all Tenant's Namespaces through GlobalTenantResources. This is configurable as a per-owner knob.
More on this in the addon's home.

LGTM, I'm looking forward to having it donated to the Project Capsule organization! 👍🏻

We had the feedback in the Slack channel also from @bsctl.
So we have 2 positive feedbacks from 2 maintainers, within 9 days.
I think I can now request the transfer WDYT @prometherion?

@maxgio92 please, proceed with the repo transfer to the projectcapsule organization.
Closing this, and welcome aboard!

Thank you @prometherion!
Just sent the ownership transfer.


Migrate stats from json files to MySQL database

For now, this migrates everything need for the pipelines pages, but not yet stats (that's why stats.php still contains the old code).
The entries corresponding to older stats from nfcore_stats.json and nfcore_issue_stats.json can be manually migrated into the database with import_stats.php (the contributor_stats.json files can be completely reconstructed from github.

@nf-core-bot fix linting


General RowData class that simply adds a value with a key #60

Note: a copy of it is used already in opentaskspal

Updated the class to be a final one instead of an abstract so it can be used in composition instead of inheritance.
Like:
public final class DueData extends DelegatingRowData<TaskContract.Tasks>
{
    public DueData(@NonNull Long dueTimeStamp)
    {
        super(new SimpleRowData<TaskContract.Tasks>(TaskContract.Tasks.DUE, dueTimeStamp));
    }

}


using single click to open file

Hi i'm a big fun of your product! This is surely a great app, but it still should add some feature. I always use the old explorer, since i can just click on a certain file for on time(instead of double click)to open my files. This feature won't be hard to accomplish. Hope you can make this come true. Thank you in advance.

Duplicate of #261

well it's good to see your update but i cannot download the newest version From store...

Do you need us to compile manually with v0.10?

Do you need us to compile manually with v0.10?

We have not implement #261 yet. I just mentioned to let you know that we're working on it.

ok. thanks.

Merging with #261.


Improvement - Rancher UI - Generate an access link on each service running on the cluster

Hi,
Kubernetes API allow us to access on the services via the poxy API
(https://kubernetes.io/docs/tasks/administer-cluster/access-cluster-services/)
When Rancher monitoring is enabled, Rancher add link to the service of grafana or prometheus
example :
https://my-rancher/k8s/clusters/local/api/v1/namespaces/cattle-prometheus/services/http:access-grafana:80/proxy/
https://my-rancher/k8s/clusters/local/api/v1/namespaces/cattle-prometheus/services/http:access-prometheus:80/proxy/

It will really cool to generate into the Rancher UI, a "proxy http url link" for each service (if they can support it)
https://<rancher-url>/k8s/clusters/<cluster-id>/api/v1/namespaces/<namespace-name>/services/http:<service-name>:<port>/proxy/

Regards

This is a valid use-case. No matter who I try Rancher keeps ignoring the "Rancher-Proxy" option they use in their charts.


Fix some compiler warnings

Remove some unused variables and fix initialization order for PMEInstance.

Can we say that -0.01% coverage is acceptable? :-)