Fix Metadata so ASP.NET Core and .NET Core content shows in search & Reporting

Review .NET Core, ASP.NET Core and EF Core representation in MSL Learn.
Update ms.product values so that content shows up in search and for reporting.
This is for the Microsoft Learn Repo but for lack of anywhere else to track this I am opening, and closing the issue at the same time here along with link to PR that merged today.

Fixed in MS Learn repo: https://github.com/MicrosoftDocs/learn-pr/pull/5127


Event Handlers are not removed on 'destroy'

Editor call:
$('#editor').trumbowyg()
.on('tbwfocus', function(){ console.log('Focus!'); })
.on('tbwblur', function(){ console.log('Blur!'); });

The problem arises if one intend to create/destroy the editor multiple times on the same element: the events are called n + 1 times (n = number of previous editors).
Fix: destroy function should end with
t.$c.trigger('tbwclose');
t.$ed.off(); //not sure if $ed is the right option, but it works

Thanks for this fix. I will add it to the next version.

I've check, it's on your side to do this.
It's your code which add listener, not mine, so you need to perform a .off() after a .destroy().
It allows you to create an editor, add listeners, destroy editor, create editor and keep your old listeners. If you don't want that, you need to remove listeners before/after destroy.
Hope it helps you, sorry for delay.


How to make one value change based on another reactive value?

For example, if i want to show some text based on a member in the viewmodel:
public class MyViewModel {
    protected string state = "a";
    public string State {
        get => state;
        set => this.RaiseAndSetIfChanged(ref state, value);
    }

    public string ValueBasedOnState => state;
}

<TextBlock Text="{Binding ValueBasedOnState}">
<!-- The text above does not change as State changed -->

You probably want ReactiveUI's ObservableAsPropertyHelper:
https://reactiveui.net/docs/handbook/observable-as-property-helper/
You'd do something like:
    public class MyViewModel : ReactiveObject
    {
        private ObservableAsPropertyHelper<string> valueBasedOnState;
        protected string state = "a";

        public MyViewModel()
        {
            valueBasedOnState = this.WhenAnyValue(x => x.State).ToProperty(this, x => x.ValueBasedOnState);
        }

        public string State
        {
            get => state;
            set => this.RaiseAndSetIfChanged(ref state, value);
        }

        public string ValueBasedOnState => valueBasedOnState.Value;
    }

That's exactly what I needed. Thanks!


[DRAFT] Have build_and_upload_dependencies.sh use the new docker image hashes

Docker images are now referenced by digests - basically upload hashes. This allow us to pin a specific version of a Docker image to each commit in the repo.
This change broke the build_and_upload_dependencies.sh script, so this PR cleans up this script, improves it, adds support for Docker digests and adds support for a potential public build of Orbit dependencies.

@danielfenner I'm finally coming back to this. Could you have another look?


Avro 3584 rust unit test

AVRO-3584 : Add unit test for Rust.

You may need to rebase your Git clone. There are 10 merge commits which should not be there.

Thanks for the new test, @clesaec !
But please do something about the merge commits for the next PR! :-)


Running results in "Error: signal 11"

It seems like I receive a few errors during installation (first screenshot), yet when I try again all requirements are satisfied (top of second screenshot). However, when I try to play nothing happens except some output and a non-descriptive error. Any idea what's going on here?

You should upgrade pip (as suggested in your terminal) before proceeding with pip3 install .:
pip3 install --upgrade pip setuptools wheel
Concerning your second screenshot (Error: signal 11) it looks like SDL is failing to load the image.
Consider reinstalling sdl2-image (and probably sdl2):
sudo apt-get install --reinstall libsdl2-dev libsdl2-image-dev
Please provide the output of the command above.
After reinstalling sdl2-image, repeat the full installation. I recommend to start from the beginning and remove the folder with virtual environment:
rm -r football-env
create a new one:
python3 -m venv football-env
activate it:
source football-env/bin/activate
upgrade pip:
pip3 install --upgrade pip setuptools wheel
and install the game:
pip3 install .

@vi3itor, I've reinstalled sdl2-image/sdl-2 as you recommended. The output is below:

After repeating the full installation, I received a new, long error during the build which included:
 and followed the solution from #116.
Lastly, I have to set environment variables for MESA driver as mentioned in the [FAQ](set environment variables for MESA driver).
All working now! Thanks for your help.

Hey, I get the same error with a docker on a mac (and a docker on a remote server runnign Debian). I've tried reinstalling sdl2 as mentioned above and then reinstalling gfootball. I still get "Error: signal 11". Any help would be really appreciated.


[mathgl]Fix feature glut/hdf5/qt5.

This PR will fix:

[x] missing opengl utility toolkit.
[x] mathgl[glut].
[x] mathgl[hdf5]
[ ] mathgl[qt5]

Related: #8360 #8357 #8359.

LINK : fatal error LNK1104: cannot open file 'freeglut.lib'
Why?
-- Found GLUT: optimized;C:/vsts/_work/2/s/installed/x64-windows/lib/glut32.lib;debug;C:/vsts/_work/2/s/installed/x64-windows/debug/lib/freeglutd.lib
Did not find any place to call it in error log.

Isn’t it better if you use freeglut and that’s it for glut? Also I don’t like at all the “vendor” mixing inside a single port, where the glut feature inside OpenGL is coming from another repository completely unrelated to Windows SDK...

@cenit mathgl[glut] does depend on the port freeglut now.

it's the "hidden" work you did on OpenGL here that I was trying to point out...

@cenit  yes, you're right.


[stable/satisfy] add apiVersion

Adding the apiVersion for chart.yaml
to fix the issue: https://github.com/helm/charts/issues/13763
Checklist

[x] DCO signed
[x] Chart Version bumped
[x] title of the PR contains starts with chart name e.g. [stable/chart]

/assign @mattfarina

/test pull-charts-e2e

@maorfr PTAL here as well :)

/lgtm

holy cow, just noticed this PR after noticing unexpected chart version on Helm Hub
I understand the need for adding apiVersion, as mentioned in #13763..
but I have couple of questions / comments for @xlucas, @maorfr, and Helm maintainers

why version bump so severe (0.1.2 -> 1.0.0)?
I haven't received notification on #13763, what can I do to get similar notifications in the future?
I'd expect to be pinged on PRs for this chart. This sort of silent change seems inappropriate, albeit good intention. Should I expect no notifications on changes to this chart?

hey @anapsix,
version bump went to 1.0.0 since this chart is in stable, and there is a convention that charts in stable should be at least 1.0.0. if we find a chart that isn't, we will bump it to 1.0.0 the next PR, without regards to the content.
I am not sure why you weren't pinged on this PR, but I think the reason is that you are not a trusted collaborator. you are now! :)

appreciate the explanation, thanks @maorfr


Implement subdivision aliases support

Per https://github.com/vacanza/python-holidays/pull/1656 discussion it'd be great to have an ability to assign aliases to ISO3166-2 subdivision codes.
Let's figure out complexity and priority of the task (v0 vs v1) and implement this feature. It would provide better user experience.

BTW I could help implementing this, but I noticed that you seem to have very strict ideas, how the API should work and I guess also how it should be implemented. If you don't have the time to do it yourself and you give me some valuable hints, I could help out …

Yeah, that'd be much appreciated.
The main priority for the current PH version is compatibility. This may be the reason for the seemed strictness you've mentioned. Then goes performance and code readability. Those are sort of my promises to previous code author/maintainer.
We've started working on v1 of the library. If you have improvement ideas or with to participate in some other way -- check out https://github.com/vacanza/python-holidays/issues/1649

In other words the only strict requirement for any contribution is compatible and well tested code made right from performance perspective (we have ~5M monthly downloads relying on that).

I can have a go, if you like. Three different approaches come do mind (all without in-depth investigation): Using a dictionary, where the key is the official ISO code and the value a tuple of all aliases. Secondly, use a tuple with a tuple for each subregion, where the first element is the official ISO code and all other elements aliases. And finally keep the subregion tuple as it is and have a separate dictionary with the aliases. Any preferences?

The idea with mapping is right -- use alias subdiv as a key and iso3166 code as a value:
subdivisions_aliases = {
    "B": "1",
    "K": "2",
    ...
}

This way you'd have average O(1) lookup. Then just swap alias to an official subdiv code at right place of HolidayBase::init. I guess that would be it (no in-depth investigation as well). You'll need to update TestArgs::test_subiv of tests/test_holiday_base.py to make sure it works as expected.
An apparent drawback of this simple approach is that the holidays object would have the subdiv code implicitly changed from the user perspective.
Just create a PR or use this thread for further questions if any.

I also thought about this approach, because of the same reason: the quick lookup. The reason why I did not propose it, was the other major drawback: You are limited to just one alias. In the Austrian case: You can only use 'N', but not 'NÖ' or even 'Niederösterreich', all valid and widely used aliases for the subregion 3!

Thinking further about it, we could use:
subdivisions_aliases = {
    "B": "1",
    "K": "2",
    "N": "3",
    "NÖ": "3",
    "Niederösterreich": "3",
    ...
}

Quick lookup vs. readability …

I believe that wouldn't be the case:
subdivisions_aliases = {
    "N": "3",
    "NÖ": "3",
    "Niederösterreich": "3"
}

All mapped to "3". Am I missing something?

Same idea at the same time! :sweat_smile:

@sphh thank you for taking care of this!


sfBrowserBase - don't post unnamed submit fields

Fix #106

Well I guess trait support in autoloader couldn't be a bad thing.
Ping @GromNaN


Update host.cpp

For two different devices likes U200 and U250

@rajeshkrmeena  Thanks for suggesting the changes in multiple_devices design. We need to modify other files as well along with host code changes. We will make the required changes.
Thanks,
Vishnu

Ok, Thanks !!! You can use https://github.com/rajeshkrmeena/Vitis_Accel_Examples/blob/rajeshkrmeena-patch-1/sys_opt/multiple_devices/src/host.cpp if you want to modify.


[gardening] Remove "REQUIRES: asserts" from /fixed/ crash cases.

Obviously a test case shouldn't require asserts enabled to pass.

@swift-ci Please test

Thanks.


bitmask does not match with contains()

the behavior of contains doesn't match &
#[macro_use] extern crate bitflags;

bitflags! {
    pub struct Flags: u8 {
        const FlagA = 0xff;
    }
}

fn main() {
    println!("{}", Flags::from_bits(1).unwrap().contains(FlagA));
}

false

The doc says:

contains: true all of the flags in other are contained within self

In this case all of the flags in FlagA (bits 0 through 7) are not contained in self (bit 0 only).

makes sense, can we have a & operator then instead?

Yes, there is a & operator on Flags.

yep. i missread an error message. sorry for the noise


Reworked sprites, inhands and new melee weapons

Anyway, for now I replaced the icon of the combat knife with something smaller and reworked the inhands for the fireaxe.
The machete, baseball bat and captain's saber will be coded and added tomorrow.
Final Update: Added a proper changelog
🆑
-add: baseball bat, machete, captain's sabre and katana.
-fix: smaller combat knife icon, inhands for fireaxe, Olivaw pistol and WT-550 smg.

*the kitchen knife is just for comparison

*olivaw and wt inhands before. the both had the cr20r inhands

*after.

Ok, I'm done with this PR.
All four checks are completed, everything is where it's supposed to be. Still, if there's anything wrong just let me know.

What's wrong with the existing inhand sprites?

What's wrong with the existing inhand sprites?

I didn't see he did the inhands, he needs to post screenshots of what they look like.

What's wrong with the existing inhand sprites?
Also changelog doesn't look like it's the right format.

Ok. I corrected the changelog and added screenshots.

I like the inhands very much, they look great. The katana looks good + the sword but the bat and machete look bad.
If you remove the machete and bat i'll merge this.

I like the inhands very much, they look great. The katana looks good + the sword but the bat and machete look bad.
If you remove the machete and bat i'll merge this.

ok, removed them. didn't cared too much about the bat but I will try to improve the machete in a next PR.  any suggestions to improve it?


Adding context for the method "choice_set"

The method "choice_set" appearing without explanation is confusing. I tried to add clarity there. See so many people having the same issue here:
https://stackoverflow.com/questions/2048777/what-is-choice-set-in-this-django-app-tutorial

Thanks for the patch, however this is already explained a few lines above:
https://github.com/django/django/blob/4376c2c7f8cd9c7604a7d053b3c4022dd5ac2795/docs/intro/tutorial02.txt#L511-L513
There is also a reference, just below this example, to the "Accessing related objects" docs with detailed explanation. I think that's enough.

Hi Felixxm, thanks for your answer. I think the previous explanation is hard to understand and hard to associate with the creation of that method. I just read this part of the tutorial, like 3 times, and I couldn't understand it until I went to the slack exchange question... I suggest this is further clarified in some way...

@felixxm More explains like this should add there, so many people are confused here(look at how many votes and viewed time of the question at stackoverflow)


Identifier validation inconsistent with ICS024

Summary of Bug
ICS 024 defines several criteria for an identifier to be valid:
https://github.com/cosmos/ics/tree/master/spec/ics-024-host-requirements#paths-identifiers-separators

Identifiers MUST be non-empty (of positive integer length).
Identifiers MUST consist of characters in one of the following categories only:

Alphanumeric
., _, +, -, #
[, ], <, >

Our validation function implementation is more strict than the above requirements (and possibly buggy).
There are a couple of issues:

we prevent characters such as ., _, +, -, #
we prevent numbers (each character has to be both  alphanumeric and lowercase, and numbers are not lowercase)

https://github.com/informalsystems/ibc-rs/blob/96ee9735e050a87b09b3ba7544081537953d64ba/modules/src/ics24_host/validate.rs#L41-L43
Can we align validation with ICS024? Or is there a reason why we have a more strict validation on identifiers?

For Admin Use

[x] Not duplicate issue
[x] Appropriate labels applied
[x] Appropriate contributors tagged
[x] Contributor assigned/self-assigned

After a closer look:
It seems that the identifier validation requirements changed more recently (April 27) than our code (originally ~March):
https://github.com/cosmos/ics/commit/dc4ecb807bf9ecbe0a146dc9bf9d22c2e27c7d18


codesign problems

My Setup
Mac OSX
Description
Has anyone successfully signed an app for distribution without external users getting the "Unidentified Developer" notification upon signing? Using the default release codesign.
Even using the --deep flag the cosign doesnt appear to work correctly. I have downloaded and used numerous certs from apple dev dashboard.

Fixed on version 2.1.0 using electron-rebuild


Successfully install from bash scrip in AWS but WireGuard does not start up

In raising this issue, I confirm the following:
{please fill the checkboxes, e.g: [X]}

[x] I have read the documentation
[x] Is it a feature request? please consider opening a [Discussion] (https://github.com/pivpn/pivpn/discussions/new)
[x] I have read and understood the contributors guide.
[x] The issue I am reporting can be replicated.
[x] The issue I am reporting is directly related to the pivpn installer script.
[x] The issue I am reporting isn't a duplicate (see FAQs, closed issues, and open issues).

Has your install failed?
no

Describe the issue

I install PiVPN in AWS with successful but can't start
Job for<EMAIL_ADDRESS>failed because the control process exited with error code.
Can you replicate the issue? Describe the steps below

Steps to reproduce the behavior:

Go to curl -L https://install.pivpn.io | bash
Success
Auto reboot
See error

Have you searched for similar issues and solutions?
(yes/ which issues?)

https://github.com/pivpn/pivpn/issues/1175

 but no help

Additional context
Add any other context about the problem here.
Have you taken any steps towards solving your issue?
  which?
sudo dpkg-reconfigure wireguard-dkms

Please provide your system information
What type of hardware are you running PiVPN at?

AWS

Output of uname -a
  Linux ip-172-31-30-248 4.19.0-16-cloud-amd64 #1 SMP Debian 4.19.181-1 (2021-03-19) x86_64 GNU/Linux

Output of cat /etc/os-release
 PRETTY_NAME="Debian GNU/Linux 10 (buster)"
NAME="Debian GNU/Linux"
VERSION_ID="10"
VERSION="10 (buster)"
VERSION_CODENAME=buster
ID=debian
HOME_URL="https://www.debian.org/"
SUPPORT_URL="https://www.debian.org/support"
BUG_REPORT_URL="https://bugs.debian.org/"

If install failed Please provide the console output of  curl -L https://install.pivpn.io | bash
 https://pastebin.com/gCB69cBa

Console output of      curl -L install.pivpn.io | bash
 https://pastebin.com/SUP07ajF

Console output of      pivpn debug

  https://pastebin.com/AbqqscsL

Make sure you have the latest kernel (which version?). If you don't, update and reboot. Also you can just post the output here instead of adding a layer of indirection via pastebin.

which AMI are you using? (can i get AMI ID and Region?)
have you done sudo apt update && sudo apt upgrade  before running pivpn?
Are you running on user data or installing manually? have you checked this: https://docs.pivpn.io/guides/user-data/ ?
Moving to discussions ...


Changed args parser. Now uri and output are required and version parsed as standard action.

Slightly changed the way args parsed in order to use standard argparse checks and positional args instead of named for required args.

Thanks for the PR!
I don't want to change the interface of this SW.
I'm open to new features though.


Metadata section claims SSR comes next

https://book.leptos.dev/metadata.html?highlight=attr%3A#metadata-and-server-rendering finishes with "We haven’t actually talked about server-side rendering yet. As a matter of fact... Let’s do that next!", but this is not what happens today.

Thanks for pointing this out... Clearly the two intervening chapters were later additions :smile:


Unable to create DNS A-records, ipv4address and ttl not set

Hi!
I am not able to create A-records. No errors reported, but no ipv4address is added to the DNS entry. Maybe it related to #1161 because TTL is not set too.
package main

import (
	"context"
	"fmt"

	"github.com/Azure/azure-sdk-for-go/services/dns/mgmt/2017-09-01/dns"
	"github.com/Azure/go-autorest/autorest/azure/auth"
	"github.com/Azure/go-autorest/autorest/to"
)

func main() {

	vdnsClient := dns.NewRecordSetsClient("ssssssss")
	authorizer, err := auth.NewAuthorizerFromEnvironment()

	if err == nil {
		vdnsClient.Authorizer = authorizer
	}

	res, err := vdnsClient.Get(context.Background(), "aaaaa", "xy.zz", "lbt", dns.A)

	if err != nil {
		fmt.Print(err)
	}

	fmt.Printf("Creating A Rec\n")

	fmt.Print(*res.Name)
	fmt.Print(*res.Etag)

	for _, v := range *res.RecordSetProperties.ARecords {
		fmt.Print(*v.Ipv4Address)
	}

	rs := dns.RecordSet{
		Name: to.StringPtr("lbt"),
		RecordSetProperties: &dns.RecordSetProperties{
			TTL: to.Int64Ptr(60),
			ARecords: &[]dns.ARecord{
				{
					Ipv4Address: to.StringPtr("<IP_ADDRESS>"),
				},
			},
		},
	}

	rrs, err := vdnsClient.CreateOrUpdate(context.Background(),
		"LALELU",
		"xx.zz", "lbt", dns.A, rs, "", "")

	if err != nil {
		fmt.Println(err)
	}

	fmt.Print(*rrs.Name)
	//fmt.Print(*res.RecordSetProperties.ARecords[0].Ipv4Address)

	for _, v := range *rrs.RecordSetProperties.ARecords {
		fmt.Print(*v.Ipv4Address)
	}
}

Update: It works with ~/go/bin/govendor fetch<EMAIL_ADDRESS>That drove me nuts the last few hours :smirk: but it's ok. Hopefully this helps someone. I didn't test with v14.*

Hi @m4r10k this seems to be the same issue as #1161 ( there it was a CNAME and for you is an A record ). we are looking to release next week a fix for v14

@vladbarosan Thanks!

Fixed in https://github.com/Azure/azure-sdk-for-go/releases/tag/v15.0.0


try out https://recordlinkage.readthedocs.io

maybe this helps finding potential duplicates

Closed with https://github.com/arthur-schnitzler/pmb-service/commit/b855f88c9d7709d0b82da8e06b2a961bd5df24c2


Socket error on long running mining process

When I left my miner going for an hour or so it stopped with this error:

I think fixing this will help the E2E as well


40 - Add mdx template to use in storybook

What this PR does / why we need it:
This PR adds a template in .mdx format for creating the documents for the elements on the Design System in Storybook. This template is intended to be used with the design system elements, not necessary for the rest of the components of the SPA.
Also the template is applied to the existing Button and DropdownButton components
Which issue(s) this PR closes:

Closes #40

Special notes for your reviewer:
I tried to theme storybook with Dataverse branding but seems to be an opened issue  with Storybook 7. The theming gives an error and doesn't show .mdx files of the storybook, guess we'll need to try again in the future.
A part from that I just create the .mdx template and I applied it to the existing Design System stories
Suggestions on how to test this:
npm run storybook
Go to http://localhost:6006
The template is the DocsTemplate file on top and in the UI section you can see the rest of the Design System elements
Does this PR introduce a user interface change? If mockups are available, please link/include them here:
None
Is there a release notes update needed for this change?:
No
Additional documentation:

@pdurbin that's really interesting. I wasn't thinking of an automation, just setting an standard to manually write the stories. I'll check if I can convert this template to an automatic documentation template because it's worth trying. Thanks!

@pdurbin @ekraffmiller
I changed the mdx template by a mix between MDX template + auto docs so the documentation is automatically generated with Jsdoc comments in the .stories. The advantage is that you don't need to do the copy paste approach for the docs template and that you can customize the template without having to change all the docs pages.
However, I discovered that Storybook autodocs is very limiting, you can only add stories related data, but you can't have independent blocks such as Usage Guidelines or SASS variables. So I had to add this data as a Jsdoc comment in the stories. I see this is why storybooks with huge customisation such as the one from Vibe doesn't use the auto docs and instead they create separated .mdx files. There were some requests in storybook repo to allow custom blocks in the docs but it doesn't seem to be their priority
I should probably have done the changes in a different branch in case we wanted to continue with the no-automated docs, but I forgot my bad. In any case if we prefer the previous approach it should be easy to do a roll back
This is an example of the jsdoc comment for the usage guidelines and sass variables. What do you think?


Ceylon backend error with type families

Following code yields a ceylon backend error "cannot reference this before supertype constructor has been called" on the line starting with "class BasicGraph<T>".
This is when using Ceylon IDE 1.2.0.v20151214-1608-Final.
class FamilyGraph() {
shared abstract class Graph< ActualNode, ActualEdge>()
        given ActualNode satisfies Node
        given ActualEdge satisfies Edge
{
    shared formal class Edge(ActualNode node1, ActualNode node2) of ActualEdge {
        shared default Boolean touches(ActualNode node) {
            return node == node1 || node == node2;
        }
    }

    shared formal class Node() of ActualNode {
        shared default Boolean touches(ActualEdge edge) {
            return edge.touches(this of ActualNode);
        }
    }
}

class BasicGraph<T>() extends Graph<Node, Edge>()
{
    shared actual class Edge(Node node1, Node node2)
        extends super.Edge(node1, node2)
    {}

    shared actual class Node()
        extends super.Node()
    {}
}

This is a JVM bug (not JS as labeled).
The illegal this reference is in the super call of the constructor for BasicGraph, when attempting to pass type descriptors for the Node and Edge which need BasicGraph.T.
The expressions for the type descriptors for Node and Edge include .simple.BasicGraph.this.$reified$T. It appears a fix would be to use $reified$T (the parameter to BasicGraph's constructor) instead of the field.

Fixed.


[release/dev17.10] Fix hang on solution close

Fixes: https://devdiv.visualstudio.com/DevDiv/_workitems/edit/1980614/
There are scenarios on 17.10p2 where my recent changes to make FallbackProjectManager use the dispatcher for project snapshot manager changes can cause a dead lock. The problem occurs when dynamic file info is updated on the dispatcher thread. Roslyn will then call GetDynamicFileInfoAsync(...) on the dispatcher thread and block on the result. GetDynamicFileInfoAsync(...) calls into FallbackProjectManager.DynamicFileAddedAsync(...), which attempts to make changes to the project snapshot manager using the dispatcher. However, because the dispatcher thread is blocked, it can never make progress to newly queued task and hangs.
This is a small change to FallbackProjectManager to apply the project snapshot manager changes directly if it's running on the dispatcher thread. Otherwise, it runs the change on the dispatcher.

Would like to see this on the dispatcher itself. Alternatively, could we use some form of JTF for this?

Yup, it'll be on dispatcher in main. I just didn't want to make a more impactful change on the release branch.


Nautilus unable to open GVFS paths

Describe the bug
In Nautilus I'm unable to browse special paths like mtp, smb, sftp etc. None of these protocols seems to be available.
According to the documentation, I just have to add
services.gvfs.enable = true;

But this doesn't seem to work. I'm using Sway as a window manager, started directly without a display manager.
To Reproduce
Steps to reproduce the behavior:

Install nautilus and enable gvfs
Run nautilus, click on Other locations and try to open for example ssh://<IP_ADDRESS>
Unable to open, no protocols are available

Expected behavior
Nautilus should be able to open gvfs volumes.
Additional context
My complete NixOS system configuration https://git.project-insanity.org/onny/nixos-lappy
Notify maintainers
@worldofpeace @lethalman @jtojnar @hedning
Metadata
these paths will be fetched (0.05 MiB download, 0.28 MiB unpacked):
  /nix/store/hzrq5ccamfkwdkl9gqqsh3ryprzvs044-bash-interactive-4.4-p23-dev
copying path '/nix/store/hzrq5ccamfkwdkl9gqqsh3ryprzvs044-bash-interactive-4.4-p23-dev' from 'https://cache.nixos.org'...
 - system: `"x86_64-linux"`
 - host os: `Linux 5.6.15, NixOS, 20.03.2059.05a32d8e771 (Markhor)`
 - multi-user?: `yes`
 - sandbox: `yes`
 - version: `nix-env (Nix) 2.3.5`
 - channels(root): `"nixos-20.03.2059.05a32d8e771"`
 - channels(onny): `"nixos-20.03.1422.1e90c46c2d9"`
 - nixpkgs: `/nix/var/nix/profiles/per-user/root/channels/nixos`

Maintainer information:
# a list of nixpkgs attributes affected by the problem
attribute:
# a list of nixos modules affected by the problem
module:

Still no protocols available :(

@hedning @jtojnar @worldofpeace @dasj19

Is this 20.03 or unstable? I use unstable and I just made use of smb:// yesterday... all the other protocols were present also.

Is this 20.03 or unstable? I use unstable and I just made use of smb:// yesterday... all the other protocols were present also.

Thanks for the response. Here's the version information
onny@tuxzentrale ~> nix-channel --list
nixos https://nixos.org/channels/nixos-20.03

onny@tuxzentrale ~> nautilus --version

** (org.gnome.Nautilus:24448): WARNING **: 12:55:14.895: Error on getting connection: Failed to load SPARQL backend: GDBus.Error:org.freedesktop.DBus.Error.ServiceUnknown: The name org.freedesktop.Tracker1 was not provided by any .service files

(org.gnome.Nautilus:24448): dbind-WARNING **: 12:55:14.930: AT-SPI: Error retrieving accessibility bus address: org.freedesktop.DBus.Error.ServiceUnknown: The name org.a11y.Bus was not provided by any .service files
GNOME nautilus 3.34.2
onny@tuxzentrale ~>

Thanks for providing additional info. I personally run on unstable and I am new in the gnome team.
But first things first.

Prefix this PR with [20.03]
There is a new release of nautilus on gnome 3.34 branch: https://download.gnome.org/sources/nautilus/3.34/
Do you know how to make a package update?

Okay thanks! Not sure how to update, should I try the unstable channel?
Some more information about the GIO_EXTRA_MODULES variable:
<code>
onny@tuxzentrale ~> echo $GIO_EXTRA_MODULES
/nix/store/xy4bmni2icmrcjdrxjyxvv5msl7djpzv-dconf-0.34.0-lib/lib/gio/modules:/nix/store/xy4bmni2icmrcjdrxjyxvv5msl7djpzv-dconf-0.34.0-lib/lib/gio/modules

onny@tuxzentrale ~> ls -lahgs /nix/store/xy4bmni2icmrcjdrxjyxvv5msl7djpzv-dconf-0.34.0-lib/lib/gio/modules
total 84K
   0 dr-xr-xr-x 1 root  68 Jan  1  1970 ./
   0 dr-xr-xr-x 1 root  14 Jan  1  1970 ../
4.0K -r--r--r-- 1 root  39 Jan  1  1970 giomodule.cache
 80K -r-xr-xr-x 1 root 80K Jan  1  1970 libdconfsettings.so*

No need to try unstable yet... I'll jump on 20.03 branch and make an update for you.

So I opened a PR for you. https://github.com/NixOS/nixpkgs/pull/93056
Can you help with testing?
Clone this repository in a folder of your choice. Then Run the automatic reviews:
git@github.com:NixOS/nixpkgs.git
git checkout 20.03
nix-shell -p nixpkgs-review --run "nixpkgs-review pr 93056"

And see if it builds. Thanks

Wow nice, this looks much more better now :)

[nix-shell:~/.cache/nixpkgs-review/pr-93056-1]$ pwd
/home/onny/.cache/nixpkgs-review/pr-93056-1

[nix-shell:~/.cache/nixpkgs-review/pr-93056-1]$ nautilus --version
GNOME nautilus 3.34.3

Hope this get merged quite soon :)

As discussion moved here: https://github.com/NixOS/nixpkgs/pull/93056
The gnome guys have a huge gnome-34 update waiting around the corner so that will make my pull request obsolete. (Because they are updating nautilus as well)

I would not expect Nautilus update to fix this, see the changes for that release:

Major changes in 3.34.3:

Revert icon emblem fixes in order to prevent performance issues (António Fernandes)
Fix crashes often happening when searching (Ondrej Holy)
Fix crashes after conflict dialog response (Ondrej Holy)

The reason it works is likely that gvfs module is added to GIO_EXTRA_MODULES by the shell but not by the wrapper. We need to add it to the wrapper.

Just adding gvfs to nautilus’s buildInputs should fix it.

I would not expect Nautilus update to fix this, see the changes for that release:

Major changes in 3.34.3:

Revert icon emblem fixes in order to prevent performance issues (António Fernandes)
Fix crashes often happening when searching (Ondrej Holy)
Fix crashes after conflict dialog response (Ondrej Holy)

The reason it works is likely that gvfs module is added to GIO_EXTRA_MODULES by the shell but not by the wrapper. We need to add it to the wrapper.

I can confirm this that when I use the contents of the GIO_EXTRA_MODULES variable used by the shell, Nautilus seems to work well even with the older version:
onny@tuxzentrale ~> nautilus --version

(org.gnome.Nautilus:13120): dbind-WARNING **: 20:20:15.138: AT-SPI: Error retrieving accessibility bus address: org.freedesktop.DBus.Error.ServiceUnknown: The name org.a11y.Bus was not provided by any .service files
GNOME nautilus 3.34.2

onny@tuxzentrale ~> env GIO_EXTRA_MODULES="/nix/store/7fnxbqf0mwj64549h4z2d9zbxsmb3ip6-gvfs-1.42.2/lib/gio/modules:/nix/store/xy4bmni2icmrcjdrxjyxvv5msl7djpzv-dconf-0.34.0-lib/lib/gio/modules" nautilus

:+1:
So hopefully gvfs gio modules would be added to GIO_EXTRA_MODULES as soon gvfs is part of Nautilus buildInputs :)

As discussion moved here: #93056
The gnome guys have a huge gnome-34 update waiting around the corner so that will make my pull request obsolete. (Because they are updating nautilus as well)
This PR will take over: #85974

@das-g Yeah, we really should finish that gnome-34 update for 20.03. I believe that PR is entirely obsolete now because it wasn't merged. The main issue is it needed some build Q.A, and the fact that we don't have any automatic testing to just run the main applications makes it rather difficult. Perhaps we can setup a jobset gnome-20.03 so we can test updates for each release clearly.

@das-g Yeah, we really should finish that gnome-34 update for 20.03.

Did you mean to mention @dasj19 rather than me, @worldofpeace?

@das-g Yeah, we really should finish that gnome-34 update for 20.03.

Did you mean to mention @dasj19 rather than me, @worldofpeace?

I did, sorry for the mention. Your @'s are very close, especially when it comes to autosuggestion :grinning:

Successfully mounted a davs:// share from nautilus on 20.03 with https://github.com/NixOS/nixpkgs/pull/93056 merged, so this can be closed.

Issue is still present for me. I'm using nixos-unstable with nautilus 3.36.3 and all protocols are missing :(

@onny can you try again by running $(nix-build nixos/tests/gnome3.nix -A driver)/bin/nixos-run-vms from a checkout of latest master?
I tried with both master and the release-20.03 branch. Opened Nautilus, went to "Other Locations".
The question mark shows davs:// URLs (and others), and I could successfully connect and list files from there.

This issue has been mentioned on NixOS Discourse. There might be relevant details there:
https://discourse.nixos.org/t/set-your-environment-variables-kids/10018/1

I'm having the same problem with 3.36.3 on NixOS 20.09.

@con-f-use: Weird. It works for me on NixOS 20.09. Either we need to dig into config specifics, or there is some state somewhere that breaks it. (FYI, I think this issue was fixed for me on nixos-20.03 just by upgrading, and just now I upgraded to nixos-20.09 and it still works. I didn't reset or wipe any state that I remember.)

I noticed, that I also can't change preferences in nautilus: zipped vide (because github).
Might be related to me just using nautilus without gnome as a DE and/or this:
$ gsettings list-schemas
No schemas installed

There might be something missing, that's actually a dependency of nautilus.

This issue has been mentioned on NixOS Discourse. There might be relevant details there:
https://discourse.nixos.org/t/set-your-environment-variables-kids/10018/6


dependencies: new external dep policy.

This patch converts
https://docs.google.com/document/d/1HbREo7pv7rgeIIjQn6mNpySzQE5rx2Yv9dXm5NqR2N8/edit#
to Markdown and provides a PR-based review of the policy, following
discussion in the doc and various offline threads.
Fixes #10471
Signed-off-by: Harvey Tuch<EMAIL_ADDRESS>

CC @envoyproxy/maintainers @envoyproxy/security-team @envoyproxy/dependency-shepherds

Looks great. Thanks


Add -s flags to projects/CMake/CMakeLists.txt for newer versions of raylib

I have found that the current Cmake template no longer works with the current version of raylib. After some debugging I discovered that some extra linker options where required. The "-s USE_GLFW=3" flag was moved from the command line arguments into Cmakelists.txt so that all the flags are in the same place.

Thanks!


Plugin resources assets not loaded in Craft Cloud environment

Bug Description
Hi,
I'm not sure if this is an issue that should be logged here or with Craft Cloud.
It seems the plugin asset resources (CSS and JS) are not loaded when our CP is deployed to Craft Cloud environments

The plugin works as expected in the local DDEV env.
We have logged a similar report with Wrav oEmbed

System:
Craft Pro <IP_ADDRESS>
Plugins
Amazon S3	2.2.1
Asset Usage	4.0.0
CKEditor	4.1.0
Embedded Assets	5.1.1
Expanded Singles	3.0.0
Feed Me	6.2.1
Field Manager	4.0.2
Formie	3.0.0
Hyper	2.0.3
Imager X	5.0.1
Imager X Craft Cloud Transformer	1.0.0-beta.1
Many to Many	4.0.0
oEmbed	3.0.9
Retcon	3.2.0
SEO	5.1.1
Sprig	3.2.1
Vite	5.0.0
Steps to reproduce

Set up a Craft 5 site with the craft-embed-assets plugin
Deploy to a Craft Cloud environment
Try to embed video

Expected behaviour
Plugin resources (CSS/JS) should be loaded
Embedded Assets version
5.1.1
Craft CMS version
<IP_ADDRESS>

@ttempleton Please reach out if you need any help. Here or @timkelty on Discord.

FWIW, perhaps not the same under the hood, but a similar issue has been resolved here: https://github.com/wrav/oembed/issues/158#issuecomment-2283324980
If it can be of any help 🤞

Following @svale comment. If you need context on why my fixes work, you can hit me on Discord @reganlawton

Thanks everyone. I've just enquired regarding Craft Cloud access, and will update here with any updates/questions.

@ttempleton The quickest change to get things working is to change any getPublishedUrl tags from this:
	{% set previewCss =<EMAIL_ADDRESS>true) %}

to this:
	{% set previewCss = view.getAssetManager().getPublishedUrl('@spicyweb/embeddedassets/assets/preview/dist/', true, 'styles/preview.css') %}

Eg, https://github.com/verbb/formie/pull/1859/files
That said, in most cases, the proper way to do this is to simply call registerAssetBundle from the controller and not try and render the script/css tags yourself.

Thanks for that @timkelty!
@svale that is now working in Embedded Assets 4.1.2 and 5.1.2.

Thanks @timkelty - much appreciated :)


fix: voice ws connection

This PR fixes error while establishing vws (it can be easily reproduced in examples/voice_send.cr)
Log with error:
2021-01-04T10:57:50.694115Z   INFO - discord.ws: Connecting to russia3452.discord.media:443/?v=4:443
Hostname lookup for russia3452.discord.media:443 failed: No address found (Socket::Addrinfo::Error)
  from ../../../../usr/share/crystal/src/socket/addrinfo.cr:125:12 in 'initialize'
  from ../../../../usr/share/crystal/src/socket/tcp_socket.cr:27:3 in 'initialize'
  from ../../../../usr/share/crystal/src/socket/tcp_socket.cr:27:3 in 'new'
  from ../../../../usr/share/crystal/src/http/web_socket/protocol.cr:273:5 in 'new'
  from ../../../../usr/share/crystal/src/http/web_socket.cr:48:5 in 'new:host:path:port:tls'
  from src/discordcr/websocket.cr:64:20 in 'initialize:host:path:port:tls'
  from src/discordcr/websocket.cr:61:5 in 'new:host:path:port:tls'
  from src/discordcr/voice.cr:55:20 in 'initialize'
  from src/discordcr/voice.cr:46:5 in 'new'
  from examples/voice_send.cr:133:25 in '->'
  from ../../../../usr/share/crystal/src/primitives.cr:255:3 in 'handle_dispatch'
  from src/discordcr/client.cr:235:13 in '->'
  from ../../../../usr/share/crystal/src/primitives.cr:255:3 in 'run'
  from ../../../../usr/share/crystal/src/fiber.cr:92:34 in '->'
  from ???

Previously we were just getting rid of :80 in endpoint and forcing port 443. Now code failes since Discord sends endpoint which looks something like this: russia3452.discord.media:443

Regarding addition of separate initialize method:
At some point I thought about creating something like lavalink while reusing already existing code. This would require initialize method which would accept raw data. This addition is pretty much optional and currently have no application in lib, yeeeeah .-.

Thanks!

Thanks!


[QUERY]  An HTTP header that's mandatory for this request is not specified with DefaultAzureCredential()

Library name and version
Azure.Storage.Files.Shares 12.14.0
Query/Question
Hi,
I want to use VSCredentials with ShareServiceClient.  but unfortunately, I get a MissingRequiredHeader exception.
here is my code:
shareServiceClient = new ShareServiceClient(new Uri("URL"),
    new DefaultAzureCredential(new DefaultAzureCredentialOptions
    {
        ExcludeVisualStudioCredential = false,
    }));

var shareClient = shareServiceClient.GetShareClient("fileshare");
var directoryClient = shareClient.GetRootDirectoryClient();

var exist = directoryClient.Exists();

When I set false  and call Exist() then I got An HTTP header that's mandatory for this request is not specified. exception.

An HTTP header that's mandatory for this request is not specified.
RequestId:5dcd1d18-b01a-0016-597c-8954d8000000
Time:2023-05-18T11:31:06.6647323Z
Status: 400 (An HTTP header that's mandatory for this request is not specified.)
ErrorCode: MissingRequiredHeader
Additional Information:
HeaderName: x-ms-file-request-intent
Content:
MissingRequiredHeaderAn HTTP header that's mandatory for this request is not specified.
RequestId:5dcd1d18-b01a-0016-597c-8954d8000000
Time:2023-05-18T11:31:06.6647323Zx-ms-file-request-intent
Headers:
Server: Windows-Azure-File/1.0 Microsoft-HTTPAPI/2.0
x-ms-request-id: 5dcd1d18-b01a-0016-597c-8954d8000000
x-ms-client-request-id: 81b4873b-6414-48fc-8d66-f9b71518b751
x-ms-version: 2022-11-02
x-ms-error-code: MissingRequiredHeader
Date: Thu, 18 May 2023 11:31:05 GMT
Content-Length: 305
Content-Type: application/xml

Environment
Local

Looks like you need the x-ms-file-request-intent which would be the ShareClientOptions.ShareTokenIntent that needs to be passed to the ShareServiceClient upon initializing the client.
Here's a code snippet:
shareServiceClient = new ShareServiceClient(new Uri("URL"),
    new DefaultAzureCredential(new DefaultAzureCredentialOptions
    {
        ExcludeVisualStudioCredential = false,
    },
    new ShareClientOptions()
            {
                ShareTokenIntent = ShareTokenIntent.Backup
            }
}));

// You could also pass a different value here as a string
shareServiceClient = new ShareServiceClient(new Uri("URL"),
    new DefaultAzureCredential(new DefaultAzureCredentialOptions
    {
        ExcludeVisualStudioCredential = false,
    },
    new ShareClientOptions()
            {
                ShareTokenIntent = new ShareTokenIntent("string value")
            }
}));

There's definitely some kind of error improvement that could be done here since even I don't find that exception being thrown by the service being very helpful. Or maybe there could be an improvement where when passing the TokenCredential, we also require the ShareTokenIntent as well.

Hm scratch the request to require the ShareTokenIntent when providing the TokenCredential since this header isn't required when to make File Service level requests or Share level requests. Only on the directory and file level it's required for OAuth.
Maybe there's still an exception improvement we can make here.

@amnguye  thank you for your response. The error is gone but now I get a different error,

403 This request is not authorized to perform this operation using this permission. (01.8s)

Is that an access problem? I have access to Fileshare. I can see/add files with Azure Storage Explorer. Or is that related TokenCredential? Can I make a directory and file-level operations with TokenCredential?

How is it possible that a service that is recommended by Azure for backend applications requires such complex interaction? Saving a file to a blob is a breeze, saving it to a file share is a nightmare? I have the exact same path as the original poster of this issue and this I only found after hours of searching for the various error messages I received. My az role allows full interaction with the file share and why do I need to specify an intent of "backup" to save an image to a file share????? That is completely ridiculous.

And after adding the permissions, the next error, sigh. Life as a developer I guess.

In the end, it works, permissions for containers are different from permissions for file shares, so you need to add both if you use both. Also, to be able to upload an image, you first need to create it and specify the size, which in my case is imageFile.Length
shareFileClient.Create(imageFile.Length);
shareFileClient.Upload(imageFile.OpenReadStream());


Deploy clinvar from master

We are blocked on deploying clinvar because of an incompatibility with the setup-chart-releaser action and a deprecated GitHub action operation. Rather than rely on tags, we should just deploy clinvar from master.

Turns out this breaks our check for reprocessing as coded here. Will back off and look for a better solution.

Turns out this breaks our check for reprocessing as coded here. Will back off and look for a better solution.


[WebUI] Add InputBarComponent; Fix a few issues

See screenshot of the newly-added InputBarComponent, where the 2nd (favorite) button is not yet functional.

Fixes #184: Remove timestamp from ConversationTurnComponent by default
Fixes #188: Make input elements in SpellComponent not focusable in order to prevent double processing of keypresses
Hide MetricsComponent under URL parameter showMetrics

@antonkast-google please review. Thanks.


Friendly Names

When i try to log deconz devices with influxdb my database creates a lot of tables wich is fine, but the MAC? id´s as Names isnt that nice when trying to Visualize the Data
Is there a way to change this ?

Nope, sorry.


Reskin |  DAO Hierarchy level indication

Description:

Implemented the new Figma design to clearly indicate the currently viewed DAO.

Notes:

Code Cleanup:

The NodeInfoCard contains a significant amount of commented-out code related to the old formatting, which can likely be removed for clarity.

Component Update:

The DAO Info Card on the DAO Dashboard and Hierarchy pages, which previously used the same components, are now quite different in the new design (e.g., no gear icon, reduced icon size). We should decouple these components and create a separate component for the Hierarchy page rather than modifying the existing one.

Additional Information:

This branch is based on my GraphQL bug fix branch to allow for proper testing and visibility.

Closes #1720

@Da-Colon updated the Hierarchy handoff to include a prototype to show clicking on the full card should switch organizations.
*Also includes hover and active states for the hierarchy cards.
@Da-Colon I added the three dots icon-button to these designs. I can't recall if we removed them intentionally or they just didn't make it to the reskin design. @tomstuart123 can you weigh in here?

@Da-Colon updated the Hierarchy handoff to include a prototype to show clicking on the full card should switch organizations.
*Also includes hover and active states for the hierarchy cards.
@Da-Colon I added the three dots icon-button to these designs. I can't recall if we removed them intentionally or they just didn't make it to the reskin design. @tomstuart123 can you weigh in here?

I'm going to take this comment and make a new Issue. Between Adam's PR #1766 and the work I saw him doing earlier today. There will be alot of code changes coming for the DAOInfoCard which I'll need to touch to adjust the settings icon and the hover/active states.
We can talk on Monday, but I think it might be better to decouple the use of this component between two pages and have separate components. This will make this alot easier to follow code-wise I believe.
But I believe this PR covers the single issue indication of the Current DAO.

Extra request - how hard would it be to only include the border once the DAO has loaded?
Reason - see below. The border jumps around for a bit as the DAO in the hierarchy load animation forces it to reverberate

link to try it - https://deploy-preview-1767.app.dev.fractalframework.xyz/hierarchy?dao=sep:0x065D37327801F5a0c01AD7CfB388288eb2378fFf

Good catch @DarksightKellar

@tomstuart123 I was able to make it happen

@Da-Colon - that looks fire, Thanks so much
@xraystyle1980 from my understanding this is linked to @Da-Colon 's comment above. As this component and DAO home have the same PR, the tiny Favourite's icon is shared between them. This should get resolved by an existing PR on the tiny 'Favourites' on dao home.
Is that correct devs?

@Da-Colon - that looks fire, Thanks so much
@xraystyle1980 from my understanding this is linked to @Da-Colon 's comment above. As this component and DAO home have the same PR, the tiny Favourite's icon is shared between them. This should get resolved by an existing PR on the tiny 'Favourites' on dao home.
Is that correct devs?

@Da-Colon - that looks fire, Thanks so much
@xraystyle1980 from my understanding this is linked to @Da-Colon 's comment above. As this component and DAO home have the same PR, the tiny Favourite's icon is shared between them. This should get resolved by an existing PR on the tiny 'Favourites' on dao home.
Is that correct devs?

Yep thats correct. @xraystyle1980 To another point. I think the two components have been separated already and only have shared components (such as the FavoriteIcon component. Which I think is why the full click isn't working. I'll fix the whole linking in the follow PR for issue #1773

Lol sorry to be that guy, but there's still a gap when you look closely 😅
I think I've had this problem before on a component that was too small to notice, where even matching radii didn't seem to work visually.
EDIT: Hmm, maybe reducing the radius on the card itself so the border occludes the curve (only on active state) might do the trick? I have a feeling it'll lead to unwanted jank tho

ah blah, good eye. yeah I need to just move this all down into the DAONodeInfoCard, which would be the plan. anything else I'd do here would just be hacky. Can we get this merged in as is and I work on cleaning this up in the next PR?


Formatter: Indent of newline after statement should be based on last statement, not last line

TypeScript Version:  nightly (2.6.0-dev.20171007)
This appears to be a problem in VSCode but not in Visual Studio.
Code
Math.max(
    1,
    2,
    3);

Expected behavior:
Pressing 'enter' should take me back to the indentation of Math.max, which is the start of the previous statement.
Actual behavior:
Takes me to the indentation of 3, which is the start of the previous line.

This seems to be specific to VSCode scenario. I do not see the same behavior in VS.


Funnel to open first position

A guided wizard which guides the user from funding the wallet top opening the first position

I stumbled across this flutter plugin https://pub.dev/packages/tutorial_coach_mark which could be a nice way of explaining the first trade flow for a user.


Enforce protocol version check at predefined block height

There are two defects introduced as part of the review and one more serious defect which went unnoticed.
I misunderstood @noescape00 in the check for null in AttachCore; that was a very good catch; that is another defect.
I'm going to revert the logic to the original one and apply the fixes.

This PR has passed testing and can be merged

author needs to go and sort out the tests

@ArcSin2000X there where some unaddressed comments why so fast to merge?
And a disagreement by @noescape00 what's the rush to push this?


Init container not working when using node groupes on 2 different AZ

Hello,
I've managed to make pods with Multus work with the Init Container and make many things with them on ONE AZ
Now i'm testing pods with Multus on TWO different AZ.
After many tries i discovered that using the template given by the blog post on cloudformation to create nodegroups, only the first one created work with Init Container, the second nodegroup created on another AZ has init Container fail to connect to the endpoint.
in my case i work on eu-west-1, the VPC is on <IP_ADDRESS>/16 as on the blog post https://aws.amazon.com/blogs/containers/amazon-eks-now-supports-multus-cni/
When i create my first nodegroup with the cloudformattion template either on AZ eu-west-1a or AZ eu-west-1b it work.
the AZ has no consequences and their is no bug.
after creating a second nodegroup on a different AZ, then init container stop working.
it's not my multus CRD at fault because i can make pods on any az as long as their's only one nodegroup.

reproduce the bug :
create cluster => create nodegroupe 1 => create pods => create nodegroupe 2 on another AZ => create pods on AZ 2

Pods CRD
i use nodeSelector to be sure than my pods are created on the nods with the right network.
cat <<EOF | kubectl apply -f -
apiVersion: apps/v1
kind: Deployment
metadata:
name: alpine-deployment-1
labels:
app: alpine
spec:
replicas: 3
strategy:
type: RollingUpdate
selector:
matchLabels:
app: alpine
template:
metadata:
labels:
app: alpine
annotations:
k8s.v1.cni.cncf.io/networks: ipvlan-multus-1, ipvlan-multus-2
spec:
initContainers:
- name: aws-ip-mgmt
image: xxxxx.ecr.aws/xxxxxx/aws-ip-manager-pb:latest
imagePullPolicy: IfNotPresent
args: [/bin/sh, -c, '/app/script.sh initContainers']
containers:
- name: alpine
command: ["sh", "-c", "trap : TERM INT; sleep infinity & wait"]
image: public.ecr.aws/amazonlinux/amazonlinux:latest
securityContext:
privileged: true
capabilities:
add: ["NET_ADMIN", "SYS_TIME"]
nodeSelector:
disktype: ssd
EOF

cat <<EOF | kubectl apply -f -
apiVersion: apps/v1
kind: Deployment
metadata:
name: alpine-deployment-2
labels:
app: alpine
spec:
replicas: 2
strategy:
type: RollingUpdate
selector:
matchLabels:
app: alpine
template:
metadata:
labels:
app: alpine
annotations:
k8s.v1.cni.cncf.io/networks: ipvlan-multus-2
spec:
initContainers:
- name: aws-ip-mgmt
image: xxxxx.ecr.aws/xxxxxx/aws-ip-manager-pb:latest
imagePullPolicy: IfNotPresent
args: [/bin/sh, -c, '/app/script.sh initContainers']
containers:
- name: alpine
command: ["sh", "-c", "trap : TERM INT; sleep infinity & wait"]
image: public.ecr.aws/amazonlinux/amazonlinux:latest
securityContext:
privileged: true
capabilities:
add: ["NET_ADMIN", "SYS_TIME"]
nodeSelector:
disktype: ssd
EOF

cat <<EOF | kubectl apply -f -
apiVersion: apps/v1
kind: Deployment
metadata:
name: alpine-deployment-3
labels:
app: alpine
spec:
replicas: 1
strategy:
type: RollingUpdate
selector:
matchLabels:
app: alpine
template:
metadata:
labels:
app: alpine
annotations:
k8s.v1.cni.cncf.io/networks: ipvlan-multus-3
spec:
initContainers:
- name: aws-ip-mgmt
image: xxxx.ecr.aws/xxxxx/aws-ip-manager-pb:latest
imagePullPolicy: IfNotPresent
args: [/bin/sh, -c, '/app/script.sh initContainers']
containers:
- name: alpine
command: ["sh", "-c", "trap : TERM INT; sleep infinity & wait"]
image: public.ecr.aws/amazonlinux/amazonlinux:latest
securityContext:
privileged: true
capabilities:
add: ["NET_ADMIN", "SYS_TIME"]
nodeSelector:
disktype: hdd
EOF

cat <<EOF | kubectl apply -f -
apiVersion: apps/v1
kind: Deployment
metadata:
name: alpine-deployment-4
labels:
app: alpine
spec:
replicas: 2
strategy:
type: RollingUpdate
selector:
matchLabels:
app: alpine
template:
metadata:
labels:
app: alpine
annotations:
k8s.v1.cni.cncf.io/networks: ipvlan-multus-4
spec:
initContainers:
- name: aws-ip-mgmt
image: xxxx.ecr.aws/xxxxxx/aws-ip-manager-pb:latest
imagePullPolicy: IfNotPresent
args: [/bin/sh, -c, '/app/script.sh initContainers']
containers:
- name: alpine
command: ["sh", "-c", "trap : TERM INT; sleep infinity & wait"]
image: public.ecr.aws/amazonlinux/amazonlinux:latest
securityContext:
privileged: true
capabilities:
add: ["NET_ADMIN", "SYS_TIME"]
nodeSelector:
disktype: hdd
EOF

Multus CRD
cat <<EOF | kubectl apply -f -
apiVersion: "k8s.cni.cncf.io/v1"
kind: NetworkAttachmentDefinition
metadata:
name: ipvlan-multus-1
spec:
config: '{
"cniVersion": "0.3.0",
"type": "ipvlan",
"master": "eth1",
"mode": "l2",
"ipam": {
"type": "whereabouts",
"datastore": "kubernetes",
"kubernetes": { "kubeconfig": "/etc/cni/net.d/whereabouts.d/whereabouts.kubeconfig" },
"range": "<IP_ADDRESS>-<IP_ADDRESS>/24",
"log_file" : "/tmp/whereabouts.log",
"log_level" : "debug",
"gateway": "<IP_ADDRESS>"
}
}'
EOF

cat <<EOF | kubectl apply -f -
apiVersion: "k8s.cni.cncf.io/v1"
kind: NetworkAttachmentDefinition
metadata:
name: ipvlan-multus-2
spec:
config: '{
"cniVersion": "0.3.0",
"type": "ipvlan",
"master": "eth2",
"mode": "l2",
"ipam": {
"type": "whereabouts",
"datastore": "kubernetes",
"kubernetes": { "kubeconfig": "/etc/cni/net.d/whereabouts.d/whereabouts.kubeconfig" },
"range": "<IP_ADDRESS>-<IP_ADDRESS>/24",
"log_file" : "/tmp/whereabouts.log",
"log_level" : "debug",
"gateway": "<IP_ADDRESS>"
}
}'
EOF

cat <<EOF | kubectl apply -f -
apiVersion: "k8s.cni.cncf.io/v1"
kind: NetworkAttachmentDefinition
metadata:
name: ipvlan-multus-3
spec:
config: '{
"cniVersion": "0.3.0",
"type": "ipvlan",
"master": "eth1",
"mode": "l2",
"ipam": {
"type": "whereabouts",
"datastore": "kubernetes",
"kubernetes": { "kubeconfig": "/etc/cni/net.d/whereabouts.d/whereabouts.kubeconfig" },
"range": "<IP_ADDRESS>-<IP_ADDRESS>/24",
"log_file" : "/tmp/whereabouts.log",
"log_level" : "debug",
"gateway": "<IP_ADDRESS>"
}
}'
EOF

cat <<EOF | kubectl apply -f -
apiVersion: "k8s.cni.cncf.io/v1"
kind: NetworkAttachmentDefinition
metadata:
name: ipvlan-multus-4
spec:
config: '{
"cniVersion": "0.3.0",
"type": "ipvlan",
"master": "eth2",
"mode": "l2",
"ipam": {
"type": "whereabouts",
"datastore": "kubernetes",
"kubernetes": { "kubeconfig": "/etc/cni/net.d/whereabouts.d/whereabouts.kubeconfig" },
"range": "<IP_ADDRESS>-<IP_ADDRESS>/24",
"log_file" : "/tmp/whereabouts.log",
"log_level" : "debug",
"gateway": "<IP_ADDRESS>"
}
}'
EOF

init container initial reaction :

init container on a pod on another AZ :

@Lautreck I will check and try to reproduce. from this log, it seems the VPC CNI is not able to reach the ec2 endpoint. Could you please check

if you have vpc endpoints in that particular AZ and dns is enabled for that endpoint.
if you dont have the vpc endpoints, then could you check, if from the worker node in that AZ you are able to dig on the above shown endpoint URL?
Multus attachment for that pod (<IP_ADDRESS>/24) belongs to same AZ.

@Lautreck any feedback? let me know if you still have the issue?

hello, the issue is still here,
i didn't have the time to do what you proposed yet.
just for point 3.
<IP_ADDRESS> ; <IP_ADDRESS> ; <IP_ADDRESS> ; <IP_ADDRESS> AZ eu-west-1a
<IP_ADDRESS> ; <IP_ADDRESS> ; <IP_ADDRESS> ; <IP_ADDRESS> AZ eu-west-1b
so my multus attachement on the <IP_ADDRESS> is on az b
It's 2 different pods.

hello @raghs-aws

i don't have any AZ with a vpc endpoint. The template given by  https://aws.amazon.com/blogs/containers/amazon-eks-now-supports-multus-cni/ doesn't create any endpoint or dns.
here the result from the dig on a pod that is on eu-west-1a

; <<>> DiG 9.11.4-P2-RedHat-9.11.4-26.P2.amzn2.5.2 <<>> ec2.eu-west-1.amazonaws.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 46227
;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;ec2.eu-west-1.amazonaws.com.   IN      A
;; ANSWER SECTION:
ec2.eu-west-1.amazonaws.com. 11 IN      CNAME   eu-west-1.ec2.amazonaws.com.
eu-west-1.ec2.amazonaws.com. 11 IN      A       <IP_ADDRESS>
;; Query time: 1 msec
;; SERVER: <IP_ADDRESS>#53(<IP_ADDRESS>)
;; WHEN: Fri Nov 04 12:46:27 UTC 2022
;; MSG SIZE  rcvd: 167

Thanks, i can see DNS is resolving for both AZs. So basically when you create 1 nodegroup at a time in 1a or 1b, it's working fine (init container comes up fine), however if you create 2 nodegroups together (1a and 1b), the init container work only in 1 of the AZs (1a ) and not (1b). I will try to reproduce it.
another question, you ran the dig, from the EC2 worker nodes where this pod failed (worker node in 1b)?

another question, you ran the dig, from the EC2 worker nodes where this pod failed (worker node in 1b)?
yes exactly.

juste a reminder that doing my first nodegroupe on az2 for example work perfectly. it is not a issue that concern az(1b) specificaly.
it's just that starting my workflow from az1a and then az1b is the usual.

@Lautreck I could reproduce your problem and noticed this issue, however its not a problem of code or steps.  below are the 2 issues I had and you can check if you have same issue or the resolution help you. I think tthe issues is since we areadding the 2nd nodegroup in different AZ coredns

Initially I used the same deploymentset name for both AZ deployments , so saw this issue. however I dont thinkyou hd this problem, as your examples have all unique names for the deploymentsets. however check it once.

I noticed that coredns was running on only these az-1 workers and my az2 multus pods got same issue as you noticed
coredns-56b458df85-ctc69                        1/1     Running   0          4m6s   <IP_ADDRESS>    ip-10-10-12-40.us-east-2.compute.internal
coredns-56b458df85-nngv2                        1/1     Running   0          10m    <IP_ADDRESS>   ip-10-10-12-76.us-east-2.compute.internal

Then i restarted the coredns (i think you can scale as well), which caused 1 of the coredns created 1 pod on the 2nd az worker node
coredns-56b458df85-cqkjg                        1/1     Running   0          98s     <IP_ADDRESS>      ip-10-0-1-132.us-east-2.compute.internal
coredns-56b458df85-nngv2                        1/1     Running   0          16m     <IP_ADDRESS>   ip-10-10-12-76.us-east-2.compute.internal
after this i restarted the multus pods in az-2 and they came up just fine.  I believe you are also facing the same issues. basically at the launch coredns is running in just single az (az1) and when we added the az2, coredns is not aware of it and its not resolving the DNS queries . Once we restaretd, it starts working fine.
Please check and let me know if this helps.

any feedback @Lautreck ?

Hello @raghs-aws
I tried your method and it indeed worked.
but it's not exactly optimal in a automatised setting to have to manualy restart the coredns.
Will their be a fix of this issue? or is their a workaround so we don't have to restart the coredns?

@Lautreck , you could scale as well the coredns , so it could have its presence on the newly launched another AZ workloads.Not sure if we would have created both Nodegroups together then we might not have seen it. But let me check and follow up on this. Anyway if you are ok, then I would close this issue on this thread/solution as issue was with coredns resolution.

Hello,
thanks for the advices.
you can close the ticket, just where can i follow the results of your follow up?

Thanks @Lautreck , appreciate you working with us. I will close the ticket. I would recommend you open a ticket for your case. I would open one as well. I would see if I can share the details here afterwards.


Add Finnish language support to luxwslang package

@tphakala, thank you for your contribution. I combined the two commits and fixed the broken test complaining about incorrectly sorted languages.


Helm not updating Kubernetes objects properly

Many users are still reporting issues with manifests being updated with a new value, but then those changes do not get applied to the actual Kubernetes objects. A common theme seems to be when you change a value from A to B and then B to A, things do not update correctly. However, there seem to be varied circumstances for when this happens and it has been hard to duplicate consistently for the core maintainers
This issue is meant to consolidate is #1844 and #3933.

As a note, I have taken this on and am trying to debug it based on all the examples provided in other issues

If anyone has a chart they can share that reliably has this issue, please do

https://github.com/mattermost/mattermost-helm/tree/master/charts/mattermost-team-edition
Making a change to the configJSON section of values.yaml (Which generates a configmap), does not apply new values without deleting the configmap prior to running helm upgrade

Awesome. Thank you @erismaster I'll give it a whirl

@erismaster I can't seem to reproduce with that chart. I have tried modifying both the chart values.yaml and passed an extra values file. I also have used those files to switch back and forth between values. Each time, it updates the Secret object without a problem. In my case, I was changing the email settings with
configJSON:
  EmailSettings:
    FeedbackEmail<EMAIL_ADDRESS>    FeedbackName: Foobar
    FeedbackOrganization: Foobar

Is there something else I should be modifying to make it work?

@thomastaylor312 I tried to reproduce myself again and am not able to repro anymore. Perhaps the bug was in the helm chart itself and not with helm.
The chart was at this tag  when I was experiencing the issue last.

@erismaster Hmmm...doing the same thing as before and it is still working ok. Can you still reproduce the issue with that chart version? Also, what version of Helm and k8s are you using?

@thomastaylor312 When I reported the bug in the previous issue it was against v1.14.1 (this cluster is on prem deployed with kubespray). Helm at that time was
helm version Client: &version.Version{SemVer:"v2.13.1", GitCommit:"618447cbf203d147601b4b9bd7f8c37a5d39fbb4", GitTreeState:"clean"} Server: &version.Version{SemVer:"v2.13.1", GitCommit:"618447cbf203d147601b4b9bd7f8c37a5d39fbb4", GitTreeState:"clean"}``
Todays test was minikube v1.14.2, Helm
Client: &version.Version{SemVer:"v2.14.1", GitCommit:"5270352a09c7e8b6e8c9593002a73535276507c0", GitTreeState:"clean"} Server: &version.Version{SemVer:"v2.14.1", GitCommit:"5270352a09c7e8b6e8c9593002a73535276507c0", GitTreeState:"clean"}

@thomastaylor312 I can confirm that on the existing cluster the issue is no longer present. I was able to modified a value and have it successfully update the secret.
Helm has been upgraded from v2.13.1 -> v2.14.0
From what I can deduce it would seem the Helm update from v2.13 to 2.14 (either server or client), has resolved this issue.

@erismaster Thanks for digging into it! Glad it is working for you, I'll keep trying to dig around to see if I can duplicate it

@thomastaylor312 not quite sure if this is related, but I couldn't find clear documentation on the topic/expected behavior:

I have used kubectl edit to change a volume mount and add a node selector to a Deployment deployed with Helm.
I have then run helm upgrade with my original chart. I was expecting my manual changes to be reverted, but they did not. I have timestamp: "{{ date "20060102150405" .Release.Time }}" in my annotations, and I can see the annotation has been updated at least.

Could this be related to what you are discussing here?

@thomastaylor312 Some feedback that might be relevant:

When Helm does an upgrade, it uses the Kubernetes Patch API. However, not all Kubernetes objects are handled by patch, and in such a scenario it will think that no change has occurred and will not apply the update. This is the reason why updates seem to occur in a non consistent fashion. Refer to https://github.com/helm/helm/issues/5473#issuecomment-480276011 for an example of a pod issue.
Helm does not support 3-way merge and therefore if changes are made directly to the cluster, they will not be picked up on an upgrade.  Issue #3805 open for 3-way merge.  Some discussion thread on this in https://github.com/helm/helm/issues/5430

@peay Yep, that comment is correct. We are working on a new merge strategy for Helm 3 stuff
@hickeyma re: the patch API, my thinking is something along those lines as well. Most people were reporting problems with Deployment and ConfigMap objects though, which are patch-able. Let me take a look at that example and give it a whirl

@thomastaylor312 Sure, just wanted to add about cases which are not patchable. This adds to the mis-understanding.
Issue #1811 might also be worth a look. If applicable, maybe add details to this and close out that issue?

+1 same issue with my chart's configmap

@pakhomov-passteam do you have a chart I can use to duplicate? I've been trying for weeks and cannot duplicate the issue

Just to add, I'm currently running into this issue where one of my SecretClaims (and subsequent container environment variables) is not reflected in the deployed yaml. --debug and helm template show the correct output, but the env var is left off. I can't delete this deployment, unfortunately.
The SecretClaim does exist in k get secret -n my-ns

@haywoood What are your Helm and Kubernetes versions?

@thomastaylor312
Helm: 2.8.2
Kubernetes:
  client: 1.14.2
  server: 1.11.10-gke.5

The secret in question lives in a list of secret definitions in values.yaml, which are then iterated over and placed in the manifest. I tried hardcoding this secret into my template, but no dice. It's hard to pin down what exactly is different about this secret, as it's apart of a larger list of secrets that exist no problem.

@haywoood Hmmm...that is an older version of Helm and Kubernetes. It seems like most people aren't seeing the issue with the latest version of Helm and k8s. Makes it kinda hard to see what caused it

I am seeing the same issue - kubernetes (v1.11.7), helm (v2.12.2)
We have found that when we are doing an upgrade on a failed release if environment variables exist with the same value  as the successfully deployed release then they are not being passed into the container. For example: This a test example
Revision 1: Helm get values (successfully deployed release)
ENVIRONMENT: *****
LIST: *****
BUCKET: *****
NAME: *****
URL: *****
ENV: *****
Revision 2: Helm get values
no config variables (causes the deployment to fail) as expected
Revision 3 Helm get values (failed release)
ENVIRONMENT: *****
LIST: *****
BUCKET: *****
NAME: *****
URL: *****
ENV: *****
Revision 3 Kubernetes Deployment
- env:
- name: LIST
value: *****
- name: BUCKET
value: *****
- name: NAME
value: *****
- name: URL
value: *****
- name: ENV
value: *****
as you can see, ENVIRONMENT not being passed in to kubernetes deployment which causes it to fail

I have replicated the above on kubernetes kubernetes (v1.11.7), helm (v2.14.2)

@MWilkin12 Helm currently uses Kubernetes 1.15. Would you be able to upgrade to version near to this?

Unfortunately not, we are using KOPS and the latest version we can go to v1.12.x

Same error here:
Error: configmaps "app.job-config.beta-app" already exists
Helm version: v2.14.1
Kube version:
Client: v1.14.0
Server: v1.13.7-gke.8
My ConfigMap:
apiVersion: v1
kind: ConfigMap
metadata:
  name: app.job-config.beta-app
  labels:
    app: app
    chart: app-0.1.1
    release: beta
    heritage: Tiller
  annotations:
    "helm.sh/hook": "pre-install,pre-upgrade"
    "helm.sh/hook-weight": "-10"
    "helm.sh/hook-delete-policy": "hook-succeeded"
data:

@diegosoek I am not sure if that is the same issue. The behavior we've seen is that the release "updates" but the values in an object are not actually updated

I can confirm we saw this with:
Client: &version.Version{SemVer:"v2.13.1", GitCommit:"618447cbf203d147601b4b9bd7f8c37a5d39fbb4", GitTreeState:"clean"}
Server: &version.Version{SemVer:"v2.13.1", GitCommit:"618447cbf203d147601b4b9bd7f8c37a5d39fbb4", GitTreeState:"clean"}

We changed the docker image from for example:
service:a
then:
service:b
and then back to:
service:a
It never went back to service:a and stayed at service:b, even tho if I do a helm get release-name I get a chart that has service:a in it.  the deployment is still showing service:b

We also cannot go to 1.14 yet since we're on AWS EKS which doesn't yet support 1.14.

I followed up with the k8s slack and was told that we can run helm 2.14.x on our 1.13 cluster.  I upgraded helm and I was able to repro it.
I went from a => b => a and the image never changed from b => a, even tho helm get says b.

It very well could be a k8s issue as well @tecnobrat. Thanks for the repro steps and I'll give it a try

I am hitting this issue as well with one of our complex internal charts. I am unable to reproduce the issue with a simple chart. I will keep trying to reproduce the issue, but I guess it is caused by some specific combination of resources.
running v1.11.5 k8s and v3.0.0-alpha.2 helm
Server Version: version.Info{Major:"1", Minor:"11", GitVersion:"v1.11.5", GitCommit:"753b2dbc622f5cc417845f0ff8a77f539a4213ea", GitTreeState:"clean", BuildDate:"2018-11-26T14:31:35Z", GoVersion:"go1.10.3", Compiler:"gc", Platform:"linux/amd64"} version.BuildInfo{Version:"v3.0.0-alpha.2", GitCommit:"97e7461e41455e58d89b4d7d192fed5352001d44", GitTreeState:"clean", GoVersion:"go1.12.7"}

@gnalsa Please let me know if you do find something! The new three way merge should definitely prevent this kind of stuff from happening

@thomastaylor312 I'm not quite sure if it may help for someone
I have the same issue on
(env) ➜ git:(develop) ✗ helm version
Client: &version.Version{SemVer:"v2.14.3", GitCommit:"0e7f3b6637f7af8fcfddb3d2941fcc7cbebb0085", GitTreeState:"clean"}
Server: &version.Version{SemVer:"v2.14.3", GitCommit:"0e7f3b6637f7af8fcfddb3d2941fcc7cbebb0085", GitTreeState:"clean"}
(env) ➜  git:(develop) ✗ kubectl version
Client Version: version.Info{Major:"1", Minor:"14", GitVersion:"v1.14.3", GitCommit:"5e53fd6bc17c0dec8434817e69b04a25d8ae0ff0", GitTreeState:"clean", BuildDate:"2019-06-06T01:44:30Z", GoVersion:"go1.12.5", Compiler:"gc", Platform:"darwin/amd64"}
Server Version: version.Info{Major:"1", Minor:"12+", GitVersion:"v1.12.10-eks-2e569f", GitCommit:"2e569fd887357952e506846ed47fc30cc385409a", GitTreeState:"clean", BuildDate:"2019-07-25T23:13:33Z", GoVersion:"go1.10.8", Compiler:"gc", Platform:"linux/amd64"}

Running helm upgrade did not update my configmap so i tried a work around with adding a label with timestamp
  labels:
    timestamp: "{{ .Release.Time.Seconds }}"

and it works for me.

The timestamp workaround did not work for me.
Unless I delete the configmap and apply it again, helm upgrade does nothing.
helm version
Client: &version.Version{SemVer:"v2.14.3", GitCommit:"0e7f3b6637f7af8fcfddb3d2941fcc7cbebb0085", GitTreeState:"clean"}
Server: &version.Version{SemVer:"v2.14.1", GitCommit:"5270352a09c7e8b6e8c9593002a73535276507c0", GitTreeState:"clean"}

kubectl version
Client Version: version.Info{Major:"1", Minor:"14", GitVersion:"v1.14.3", GitCommit:"5e53fd6bc17c0dec8434817e69b04a25d8ae0ff0", GitTreeState:"clean", BuildDate:"2019-06-06T01:44:30Z", GoVersion:"go1.12.5", Compiler:"gc", Platform:"windows/amd64"}
Server Version: version.Info{Major:"1", Minor:"13", GitVersion:"v1.13.7", GitCommit:"4683545293d792934a7a7e12f2cc47d20b2dd01b", GitTreeState:"clean", BuildDate:"2019-06-06T01:39:30Z", GoVersion:"go1.11.5", Compiler:"gc", Platform:"linux/amd64"}

For us the key seems to be editing the config map (outside of helm).  I understand that helm won't do a 3 way merge (yet), but I would expect it to overwrite any manual changes with the config map it generates and that's not what we see.

I don't understand how this is a 3-way merge for us (it does not seem to be the same issue). We created a config map via helm, we update it via helm but the update fails. There are no processes or devs that touch that config map. And I agree with @sfitts, the expectation is that helm will not do merges but ensure that what we pass in as the newest value gets applied.

FYI Helm performs a 3-way merge as of Helm 3.0.0-beta.1, @sfitts.

Had similar issue.
Helm version: version.BuildInfo{Version:"v3.0.2", GitCommit:"19e47ee3283ae98139d98460de796c1be1e3975f", GitTreeState:"clean", GoVersion:"go1.13.5"}
Server Version: version.Info{Major:"1", Minor:"12+", GitVersion:"v1.12.10-eks-aae39f", GitCommit:"aae39f4697508697bf16c0de4a5687d464f4da81", GitTreeState:"clean", BuildDate:"2019-12-23T08:19:12Z", GoVersion:"go1.12.9", Compiler:"gc", Platform:"linux/amd64"}
Added below annotation in the deployment of a helm chart. After helm upgrade, release version increases by 1, however the pod stays the same as old one without new annotations.
`+  annotations:

prometheus.io/scrape: "true"
prometheus.io/path: /metrics
prometheus.io/port: "8080"
`

Had similar issue.
Helm version: version.BuildInfo{Version:"v3.0.2", GitCommit:"19e47ee3283ae98139d98460de796c1be1e3975f", GitTreeState:"clean", GoVersion:"go1.13.5"}
Server Version: version.Info{Major:"1", Minor:"12+", GitVersion:"v1.12.10-eks-aae39f", GitCommit:"aae39f4697508697bf16c0de4a5687d464f4da81", GitTreeState:"clean", BuildDate:"2019-12-23T08:19:12Z", GoVersion:"go1.12.9", Compiler:"gc", Platform:"linux/amd64"}
Added below annotation in the deployment of a helm chart. After helm upgrade, release version increases by 1, however the pod stays the same as old one without new annotations.
+  annotations:
+    prometheus.io/scrape: "true"
+    prometheus.io/path: /metrics
+    prometheus.io/port: "8080"

False report. Looks like annotations are added in deployment instead of pod, however I was checking it in pod. The deployment was actually correct.
I will still keep it here, in case someone else might make similar mistake.

We're still facing this issue though, intermittently.
Version details: helm v2.15.2 and K8s 1.15.
Only solution right now seems to be uninstalling the chart and reinstalling it

Having an issue where a deployment shows as being updated correctly with a helm upgrade, but the pods are not updated because the ReplicaSet is not updated correctly by the deployment. Then the deployment refreshes and has its old values in place. Super weird, and I'm still digging around to determine what's causing this, but figured I'd mention here as this was the most relevant issue I could find on the topic.

I'm having a similar issue, I have a normal chart, I update appVersion and the tag and the pod is not recreated. I'm using pullPolicy: Always. The deployment is up-to-date.

I see behaviour where my configmap gets deleted everytime when I run helm upgrade command and then gets created again. Is this expected behaviour? This way, my upgrade completely depends upon configmap creation as the new pods would refer it and if configmap creation step fails, my pods would never start.
This is the hooks I have attached to my configmap:
annotations:     "helm.sh/hook": pre-install,pre-upgrade     "helm.sh/hook-weight": "-1"     "helm.sh/hook-delete-policy": before-hook-creation
This is my chart structure :
mychart/ ├── charts |        ├── subcharts.... ├── Chart.yaml ├── templates │   ├── configmap.yaml │   └── pod.yaml └── values.yaml

"helm.sh/hook-delete-policy": before-hook-creation

Yes. That hook deletes and re-creates the object if it exists.

Even if I don't apply "helm.sh/hook-delete-policy": before-hook-creation label to my configmap resource, the helm upgrade command still deletes the existing map and recreates it. Is there a way, I can avoid deleting the existing configmap and only update it?

? is this issue fixed ?

While I don't think this is a solution for everyone experiencing this problem. For me, the symptoms described in this issue were caused by user error. Specifically a poorly maintained .helmignore file.
I use vim which creates files that end in ~ as a backup of what the editor is working on. Helm will quite happily render these files, which creates a duplicate of whatever the original file renders, but at the previous state of the file.
For my chart I am working on notice the listing of files rendered:
[rajha@voyager charts]$ helm template -f asterisk-answers.yaml asterisk/ | grep Source
# Source: asterisk/templates/serviceaccount.yaml
# Source: asterisk/templates/tls-secret.yaml
# Source: asterisk/templates/configmap.yaml
# Source: asterisk/templates/configmap.yaml~
# Source: asterisk/templates/service-sip.yaml
# Source: asterisk/templates/service-web.yaml
# Source: asterisk/templates/services-rtp.yaml
# Source: asterisk/templates/deployment.yaml
# Source: asterisk/templates/ingress.yaml
# Source: asterisk/templates/tests/test-connection.yaml

What ends up in Kubernetes is the contents of configmap.yaml~ even though what I just edited and want is configmap.yaml.
Placing the proper pattern in the .helmignore file for my chart causes helm to ignore these backup files and this makes the issue disappear.

Could we reopen this issue ? This still appears to be a problem in 3.6.

Still happens in 3.6 indeed:
Upgrade the deployment manually (or make helm adopt an existing resource created with kubectl), with and env variable.
run helm upgrade with a deployment.yaml without the given env variable.
expected: variable to be removed
actually: variable is still there

I consistently ran into this issue with helm 3.6.3 and helmfile sync v0.139.9. We had a configmap that wasn't updating no matter what I tried. We were finally able to work around the issue by getting rid of the pre-install annotation on our configmap - turns out it wasn't needed anyways because helm applies configmaps early on in the deployment process (see link). Or at least I think that's what fixed it - we made a few other changes too.
@adamreese can this be reopened please? I could also make a new issue if you'd like.

Confirmed with helm 3.7.1

This is still an issue, please can we re-open?

This is still an issue with helm v3.7.2

Hi I am facing this issue as well with helm v3.7.2
For me it happens when changing values in an umbrella helm chart.  Do we need to create a new issue for that?

We've added podAnnotation to helm chart: security.alpha.kubernetes.io/unsafe-sysctls.
We've rotated all pods to see annotation. It worked.
We've deleted it and rotated all pods again.
New pods still have annotation.

It seems to me that for most commenters, the issue seems to be apparent mostly, if not only, with configmaps. This is my case as well.

@mattfarina @bacongobbler guys, sorry to @ you, but can we please reopen the issue? After 3 years ConfigMaps still don't get updated.

same issue with replicaset - adjusting the count of replicas in values doesn't redeploy the chart. Feels like it doesn't detect the change. It works fine on first deployment.

Configmaps still don't get updated. I'm not sure how this hasn't been solved yet, but I'd appreciate if it was reopened.

Seeing this error on helm 3.9.0
also related to configmaps
Helm version
 version.BuildInfo{Version:"v3.9.0", GitCommit:"7ceeda6c585217a19a1131663d8cd1f7d641b2a7", GitTreeState:"clean", GoVersion:"go1.17.5"}
k8s verseion
Client Version: version.Info{Major:"1", Minor:"23", GitVersion:"v1.23.1", GitCommit:"86ec240af8cbd1b60bcc4c03c20da9b98005b92e", GitTreeState:"clean", BuildDate:"2021-12-16T11:41:01Z", GoVersion:"go1.17.5", Compiler:"gc", Platform:"linux/amd64"}
Server Version: version.Info{Major:"1", Minor:"20", GitVersion:"v1.20.14", GitCommit:"57a3aa3f13699cf3db9c52d228c18db94fa81876", GitTreeState:"clean", BuildDate:"2021-12-15T14:47:10Z", GoVersion:"go1.15.15", Compiler:"gc", Platform:"linux/amd64"}

Hey @thomastaylor312 any chance you can reopen this issue?
Still happening on Helm 3.9.0
https://github.com/fluxcd/helm-controller/blob/a2147639031eb1362360b52c6f596c066270ecc4/go.sum#L1232

Well issue is still happening when updating configmaps. Surprised this hasn't been solved or at least reopened yet....
Helm version: 3.9.4
k8s version:
Client Version: version.Info{Major:"1", Minor:"21", GitVersion:"v1.21.0", GitCommit:"cb303e613a121a29364f75cc67d3d580833a7479", GitTreeState:"clean", BuildDate:"2021-04-08T21:16:14Z", GoVersion:"go1.16.3", Compiler:"gc", Platform:"darwin/amd64"}
Server Version: version.Info{Major:"1", Minor:"24", GitVersion:"v1.24.3", GitCommit:"aef86a93758dc3cb2c658dd9657ab4ad4afc21cb", GitTreeState:"clean", BuildDate:"2022-07-13T14:23:26Z", GoVersion:"go1.18.3", Compiler:"gc", Platform:"linux/amd64"}

Sorry I didn't get what is the update of such issue, any news? It is still happening.
Just for my understanding:
In case some values are manually added in the configmap (new values) via kubectl edit cm
Could happen that helm upgrade verifies the configmap without replacing that since it matches the previous values ones with the new  ones present in the configmap itself excluding the ones added manually?

this is still happening.
is there any update or new ticket to track this?

Hi, if this issue is still with us then why is this ticket closed (maybe I missed an update)?

This appears to still be an issue.  Config Maps are not updated.  Kind of defeats the purpose of helm....

We are currently seeing this issue on helm for a configmap  should this ticket be reopened ?

Struggling with same issue

I encouter this problem not for configmap but volumes.
helm template --debug show expected values but it is not when use helm upgrade --install

Well, this issue seems to install happen in 3.16.4, over 3 years from the initial report.

For those that land here looking for a solution: use the --force flag. It will force a total replacement instead of relying on the 3-way-merge that can't handle all scenarios of ConfigMap update.


Move zeroing layers to inside an operator

Currently, Joey zeroes layer Functions in Python. This PR moves this operation (along with dividing the gradients by a batch size in a backward pass) to inside a forward/backward pass operator.

Can we merge this @maksgraczyk ?

Yes, absolutely. I left this PR open for you to check if it's useful enough to be merged.


close() closes the entire game instead of just the script.

Describe your bug here.
Me and the person in #8603 have had this problem where typing close() will crash the game and I don't think that's how it works.
Command Prompt/Terminal logs (if existing)
No response
Are you modding a build from source or with Lua?
Lua
What is your build target?
Windows
Did you edit anything in this build? If so, mention or summarize your changes.
Nothing changed.

doesnt happen for me.

does for me
It might be a memory issue

As per close's definition here, it should only close the script. The script is pushed to a list which is handled here. This simply removes it from the list of scripts to use and stops the execution of the script. If the game is closing, it is a result of some error in the script or game, whether it be a memory issue or something else.

As per close's definition here, it should only close the script. The script is pushed to a list which is handled here. This simply removes it from the list of scripts to use and stops the execution of the script. If the game is closing, it is a result of some error in the script or game, whether it be a memory issue or something else.
Since you closed this issue, I assume you confirmed it to be a memory problem?

I'm not the only one to experience this issue which is why I reported it...
It only happens on stage scripts however...


Substack Requiring Captcha at Login

Description
When using the premium scraper in headless mode, I received the below error:
Exception: Warning: Login unsuccessful. Please check your email and password, or your account status.
Use the non-premium scraper for the non-paid posts.

After investigating this error, I noticed that Substack was throwing a captcha within an error-container.
Screenshot

Fix
Issue can be resolved by adding a valid user agent to EdgeOptions() in PremiumSubstackScraper. The below works on my end:
options.add_argument(
    "--user-agent=Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.135 Safari/537.36 Edge/12.246"
)

Thanks Sam!
Added passing a user agent as an option which should make this easer. I can't simulate the captcha error so can't raise an exception especially for it, but have added a note to the general login failure exception. Thanks for sorting out


Connect get ups button

add upscfind code (rather than relying on pynetdicom app and command line interface)

The .ui and ui_*.py files are generated code (so... not critical to look at too carefully unless interested in the scrollable canvas and using the flow layout).  There is a flaw in the current layout / implementation that when widening the window the QTreeWidget does not widen as well.


volume-expander-operator new version 0.1.0

New Submissions

[ ] Has you operator nested directory structure?
[ ] Have you selected the Project Community Operator Submissions in your PR on the right-hand menu bar?
[ ] Are you familiar with our contribution guidelines?
[ ] Have you packaged and deployed your Operator for Operator Framework?

[ ] Have you tested your Operator in all supported installation modes?
[ ] Is your submission signed?

Updates to existing Operators

[x] Is your new CSV pointing to the previous version with the replaces property?
[x] Is your new CSV referenced in the appropriate channel defined in the package.yaml ?
[ ] Have you tested an update to your Operator when deployed via OLM?
[x] Is your submission signed?

Your submission should not

[x] Modify more than one operator
[x] Modify an Operator you don't own
[x] Rename an operator - please remove and add with a different name instead
[x] Submit operators to both upstream-community-operators and community-operators at once
[x] Modify any files outside the above mentioned folders
[x] Contain more than one commit. Please squash your commits.

Operator Description must contain (in order)

[x] Description about the managed Application and where to find more information
[x] Features and capabilities of your Operator and how to use it
[x] Any manual steps about potential pre-requisites for using your Operator

Operator Metadata should contain

[x] Human readable name and 1-liner description about your Operator
[x] Valid category name1
[x] One of the pre-defined capability levels2
[x] Links to the maintainer, source code and documentation
[x] Example templates for all Custom Resource Definitions intended to be used
[x] A quadratic logo

Remember that you can preview your CSV here.
--
1 If you feel your Operator does not fit any of the pre-defined categories, file a PR against this repo and explain your need
2 For more information see here

@J0zi @mvalahtv please let this override the previous release.

/ok-to-test

/lgtm

@raffaelespazzoli i will overwrite it, when openshift test will pass

@mvalahtv this is the reason why the tests are failing:
  - All operator versions are already in catalog !!!
  - 'Note: This might also happen when user is changing already published version.'
  - '      In this case one can request for operator to be rewriten by asking this in PR.'

doesn't it mean that the test is failing because a version already exists?

@mvalahtv this is the reason why the tests are failing:
  - All operator versions are already in catalog !!!
  - 'Note: This might also happen when user is changing already published version.'
  - '      In this case one can request for operator to be rewriten by asking this in PR.'

doesn't it mean that the test is failing because a version already exists?

Yes. This is just warning for contributor that version will be overwritten. Since you agreed i am merging it.


Enhancement: Require error level 6

This PR

[x] requires error level 6 for vimeo/psalm
[x] fixes issues reported via static code analysis
[x] regenerates the baseline

Follows #1897.

Codecov Report

Merging #1965 into next will increase coverage by 0.10%.
The diff coverage is n/a.

@@             Coverage Diff              @@
##               next    #1965      +/-   ##
============================================
+ Coverage     70.88%   70.98%   +0.10%
  Complexity     1600     1600
============================================
  Files           287      287
  Lines          3864     3864
============================================
+ Hits           2739     2743       +4
+ Misses         1125     1121       -4

Impacted Files
Coverage Δ
Complexity Δ

src/Faker/Provider/he_IL/Address.php
0.00% <0.00%> (-100.00%)
1.00% <0.00%> (ø%)

src/Faker/Provider/id_ID/Company.php
50.00% <0.00%> (-50.00%)
2.00% <0.00%> (ø%)

src/Faker/Provider/ko_KR/Company.php
50.00% <0.00%> (-50.00%)
2.00% <0.00%> (ø%)

src/Faker/Provider/en_SG/Address.php
66.66% <0.00%> (-33.34%)
6.00% <0.00%> (ø%)

src/Faker/Provider/en_IN/Address.php
50.00% <0.00%> (-25.00%)
8.00% <0.00%> (ø%)

src/Faker/Provider/sk_SK/Person.php
66.66% <0.00%> (-22.23%)
9.00% <0.00%> (ø%)

src/Faker/Provider/vi_VN/Person.php
40.00% <0.00%> (-20.00%)
5.00% <0.00%> (ø%)

src/Faker/Provider/ko_KR/Address.php
80.00% <0.00%> (-20.00%)
5.00% <0.00%> (ø%)

src/Faker/Provider/ms_MY/Person.php
60.37% <0.00%> (-15.10%)
24.00% <0.00%> (ø%)

src/Faker/Provider/fa_IR/Address.php
86.66% <0.00%> (-13.34%)
7.00% <0.00%> (ø%)

... and 30 more

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 967a6c8...1c9d85b. Read the comment docs.

tests fail

@fzaninotto
Adjusted!

Thank you, @fzaninotto!


Update eo_guide.md

https://csc-guide-preview.rahtiapp.fi/origin/kylli_eo/support/tutorials/gis/eo_guide/

Updated and answered comments. @ktiits : Let me know when you are done with resolving, then we can merge and continue with leftovers on the other PR towards the main branch.

One still open conversation, after that one is resolved, this can be merged into swi_eo and last fixes can be done there then before publishing it to main.


fix(vite.config.ts): add base option

set the base option to /excalidraw-claymate/ on vite.config.ts (check this)

Thanks for the investigation.
Vercel deploy is also production, so this doesn't work.
Tried d46821354288895c36d40ba2f312cd0a2f84e6ff and it seems working.
Thanks again!


fix #2316

Codecov Report

Merging #2351 into dev will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##              dev    #2351   +/-   ##
=======================================
  Coverage   93.79%   93.79%
=======================================
  Files         163      163
  Lines       18589    18589
=======================================
  Hits        17435    17435
  Misses       1154     1154

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 097e1bc...be5f7e2. Read the comment docs.


K Tutorial typos/clarifications/issues

I'm going through the new K tutorial and will use this issue to document findings per @ehildenb 's recommendation.
lesson 2

[x] missing word: "... as banana.color in the same directory ..."
[x] I found the tutorial smoother after automating passing code to krun without an intermediate file. I'd suggest, immediately before the section header "Productions, Constructors, and Functions," adding "We could also run this program with krun -cPGM='colorOf(Banana())'."

lesson 3

[x] missing period after "semantics treats it specially"

[ ] lesson-03-d.k cannot kompile with the --gen-bison-parser flag. Attempting it produces:

[Warning] Inner Parser: Importing a module that is tagged as not being LR(1)
when using Bison's LR(1) parser generator: [SET, LIST]
[Error] Internal: bison returned nonzero exit code: 139

@dwightguth says:
"I tested that it works to have a definition that didn't import BOOL , so I assumed that it should work to generate a Bison grammar for such a definition, but actually, it turns out that MAP gets imported implicitly because of the implicit initial configuration in the DEFAULT-CONFIGURATION module"
lesson 4
lesson 5

[x] "Some examples modules include..."

lesson 6

[x] misspelled "functions" after module C

lesson 7

[x] clarify praticality of side conditions:

When working with simple K definitions, a reader will wonder why
rule isPositive(I) => true requires I >Int 0
rule isPositive(_) => false [owise]

wouldn't be written as
rule isPositive(I) => I >Int 0

In fact, it could be. To better motivate side conditions I think it would be helpful if the first couple of example rules were not predicates, e.g building towards an example like this:
syntax Grade ::= A() | B() | F() // harsh school
               | gradeFrom(Int) [function]

rule gradeFrom(I) => A() requires I >Int 90
rule gradeFrom(I) => B() requires I >Int 80
rule gradeFrom(_) => F() [owise]

[x] Additionally, it may help to clarify why side conditions on predicates can be better than inlining the condition. However, since this is the 1-basic section, maybe that should be left for later altogether.

ehildenb:
"If you have a rule which looks like this:
rule SOME_PREDICATE(X, Y, Z) => SOME_REALLY_LARGE_TERM(X, Y, Z)

Then the haskell backend will apply the rule when SOME_PREDICATE is around, which may make your term unnecesarily large (and thus slower to reason about).
But if instead you have:
rule SOME_PREDICATE(X,Y,Z) => true requires SOME_REALLY_LARGE_TERM(X, Y, Z)
rule SOME_PREDICATE(X,Y,Z) => false [owise]

Then unless the Haskell backend can show explicitly that SOME_REALLY_LARGE_TERM(X, Y, Z) is either uniformly true or uniformly false, it will leave it unsimplified.
Then you can write lemmas directly about SOME_PREDICATE as needed."

[x] No link to lesson 8

lesson 8

I'll edit this issue as I continue working through the tutorial.

Overall I thought this was a great tutorial, coming from someone who was superficially exposed to K a few years ago. A few suggestions:
lesson 05

In Basic module syntax: the syntax for attributes for rules and modules is given, but without any explanation about what those attributes might be used for. I'd have appreciated a real example or two rather than just module LESSON-05-B [attr1, attr2, attr3(value)] to define syntax.
In Putting it all together > Exercise: I am told to "modify the name of the COLOROF module", but I was confused at first whether the "module name" was the name of the file, the name after the module keyword, or both. I figured it out eventually, but could have been clearer.


Font

I am having a problem font rendering in Windows works , but Linux does not work.

Hi,
Have you a screen shot?
What font did you use?


Refresh the roadmap

We've got a lot done — write down the gaps between now and the v0.1, refresh the longer-term roadmap where necessary

I think these are the things we need to do to get to v0.1: https://github.com/max-sixty/prql/milestone/1. I described v0.1 as

Publish a version of PRQL that works on simple queries, which people can experiment with. It's expected to have lots of bugs and occasional panics, and be wholely unready for regular work.

I'm sure I've missed some — feel free to raise if you notice something that's not there.

Closed by https://github.com/max-sixty/prql/pull/198