(+) plus symbol in query parameter turns into space instead of encoding as %2B

I have checked the following:

[X] I use the newest version of bruno.
[X] I've searched existing issues and found nothing related to my issue.

Describe the bug
Updated bruno recently and some of old requests don't work because + sign in query parameter gets replaced by a space.
As a workaround, replacing (+) sign with %2B resolves the issue.
I'm at work so can't provide screenshot right now
.bru file to reproduce the bug
No response
Screenshots/Live demo link
N/A

Could you add some examples?

I went through this elsewhere, but its not a bug spaces can be interpreted as + or %20.
https://en.wikipedia.org/wiki/Query_string

Could you provide some examples?

Hey @mroderick,
Here is an example that demonstrates this behavior:
https://github.com/user-attachments/assets/799da1d8-f158-4101-a727-c668c4c7703f
As @alifemove mentioned, this is not a bug. A query string can contain either + or %20 to represent spaces.

I faced this bug myself today, and was thoroughly confused by it. Thought it was a bug in my code, rather than bruno.
A solution would be:

Anything that's input in the param is treated as if it wasn't encoded yet, so if you write + in the param it will be converted to %2B
Anything that's input in the url is treated as if it was already encoded. So if you write + in the url, it will be converted to %20 or   in the param field.

But when I input a string in the param, I expect it to be treated as a string that will be encoded still, instead of verbatim copying it to the url

As this is not a bug this should be closed.
The standards say that + is to be treated as a space, which is what Bruno is doing. Any workarounds being created or changes to Bruno would be going against the standards. Standards also say if you want a literal + you should use %2B, which was stated in the original issue that %2B works, because again, it's working as it should.

@alifemove I agree that the + in the url should be treated as a space, as is the spec (and Bruno)
But there is also part of user expectation, that when they (me included) put a + in the param value field, to be treated as a string literal, and be encoded as such.
Hence, in my first comment here I suggested that the + in the url bar would be treated according to the spec as a whitespace, but the + in a param field, would be treated as string literal, and to be encoded.
Since (I) as a user it's not unreasonable to expect that input fields are as seen. - not everyone is fully aware of the intricacies of the spec.
Hope that makes sense

Following up to https://github.com/usebruno/bruno/issues/3187#issuecomment-2473690689, the script should split only the first occurrence of the = in the event you have parameters like &filter=id=1234.
const [url,params] = req.url.split('?');
if(!params) return;
const encodedParams = params.split('&').map((kv) => {
  const [k,...vs] = kv.split('=');
  const v = vs.join("=")
  return `${k}=${encodeURIComponent(v)}`;
}).join('&');
req.setUrl(`${url}?${encodedParams}`);

if(!params) return;
const encodedParams = params.split('&').map((kv) => {
  const [k,v] = kv.split('=', 2);
  return `${k}=${encodeURIComponent(v)}`;
}).join('&');
req.setUrl(`${url}?${encodedParams}`);```

Slightly more optimized, split can set a [limit](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/split#limit)

Good point! Here's a slightly more optimized, split can set a limit

Limit works differently than you'd expect (unless you're coming from Java?)
[k,v] = "filter=a=1 and b=2".split('=', 2);

will result in a k = "filter" and v = a

Good point! Here's a slightly more optimized, split can set a limit

Limit works differently than you'd expect (unless you're coming from Java?)
[k,v] = "filter=a=1 and b=2".split('=', 2);

will result in a k = "filter" and v = a

Damn you're right. Scratch my previous suggestion!


Android Basics: ViewModel

URL of codelab
https://developer.android.com/codelabs/basic-android-kotlin-training-viewmodel#6
In which task and step of the codelab can this issue be found?
Task 7. Populate ViewModel
Describe the problem
It is described that the getNextWord Method should be called inside the init block of the GameViewModel.
Inside this method the MuteableList is accessed to check if the random selected currentWord was used in the past.
line:
if (wordsList.contains(currentWord)) {
But this MutableList not gets initialized at this time. It would get initilized later on after the init block with:
private var wordsList: MutableList = mutableListOf()
as a class variable.
Steps to reproduce?
Follow the Tutorial

you have to write the init block under the initialization of the MuteableList


Rust sendrecv

There's more work to be done here (No flag support, no cleanup, a few shortcuts) but the rust script seems fully functional. Wanted to inquire about two things:

Is this rust code welcome (I'm just writing this up as a personal exercise) and is there any feedback?
Are the docker-compose and related Dockerfiles desired? I can move them off the branch, but figured they might be helpful.

Can complete the rust code and clean up/document docker-compose upon confirmation of #2.

Looks quite nice, thanks :) I have no opinions about the Docker stuff and how the webrtc library is used is for someone else to review.
From the Rust side, in addition to the comments above it might be nice to do proper error handling in various places instead of just unwrapping/expecting

Thanks so much for the detailed feedback @sdroege!

I'm done with edits for the moment. The mutex stuff is a little messy in places and it's still quite panicky. Had a difficult time consolidating the async nature of the code with proper error handling.
Also, cleaned up docker and added peer-id/server flag support to gain parity with the c version.

So this is working and basically equivalent with the C version now, and could get another full review?

@sdroege yes absolutely

Great, I'll do so later then :)

The mutex stuff is a little messy in places

I believe that would be nicer when refactoring how the structs are looking

and it's still quite panicky

unwrap or except is fine for things that can't possibly fail, for everything else maybe the pattern of converting to a GStreamer error message on the bus could help (also you really should listen to message on the bus, see https://github.com/sdroege/gstreamer-rs/blob/85ca3b94a34d0236314aac900d5926c81ba73d99/examples/src/bin/launch_glib_main.rs#L28-L47 for an example).
To have a GStreamer bus available all the time, it might make sense to create an empty pipeline in main (which then has a bus) and only add the other parts of the pipeline to it at the later time.

To have a GStreamer bus available all the time, it might make sense to create an empty pipeline in main (which then has a bus) and only add the other parts of the pipeline to it at the later time.

@sdroege Not that it's really applicable here, but would that work with multiple connections? ie: is it a shared bus among multiple pipelines or one bus for one new pipeline?

Btw, don't hesitate to ask if you need any help with anything or are stuck somewhere :)

Added some minor fixes. Is set_property_from_str acceptable when constructing the pipeline? As an example: seems like I would need GstAudioTestSrcWave to be imported to properly replace: audiotestsrc.set_property_from_str("wave", "red-noise");

Having some trouble thinking about error handling and the bus. I can set a bus on the main loop with a main pipeline and add the webrtcbin pipeline as a child. At any point I'm going to need to identify an error, write to the bus and close and clean up the websocket connection. Should I just define a method on AppControl that handles writing the bus error and cleaning up the connection? Then quit the program once the error has propagated to the main bus? I could use the bus alone if I didn't worry about cleaning up the connection.
I guess, any additional clarification on what you thought the chain of events would be upon identifying an error?

Added some minor fixes. Is set_property_from_str acceptable when constructing the pipeline? As an example: seems like I would need GstAudioTestSrcWave to be imported to properly replace: audiotestsrc.set_property_from_str("wave", "red-noise");

That's fine. The alternative would be something like this https://github.com/sdroege/gstreamer-rs/blob/f4d57a66522183d4927b47af422e8f321182111f/examples/src/bin/playbin.rs#L27-L35 (there's basically the same API for enums)

For how to integrate GstBus and proper error handling here, see https://github.com/centricular/gstwebrtc-demos/pull/20#discussion_r194971932. That's a general architectural problem right now with how the ws crate is used.

For how to integrate GstBus and proper error handling here, see #20 (comment). That's a general architectural problem right now with how the ws crate is used.

You could basically have another thread that does the ws stuff, and the main thread runs the GstBus main loop. And from the ws handler you could put messages on the bus also, or otherwise call things on the main thread via the glib main context API.
The other way around, calling things from elsewhere into the ws thread/event loop does not seem to be possible from a short look over the API. But maybe you also don't need that?

Not sure how I'm missing this. How would I create a message for the bus and what MessageView type would you recommend using for posting websocket messages to the bus?

Not sure how I'm missing this. How would I create a message for the bus and what MessageView type would you recommend using for posting websocket messages to the bus?

You would use bus.post() for posting the message, and you could either create an application message, or directly an error. Application would probably be nicer.
See https://github.com/sdroege/gstreamer-rs/blob/db3fe694154c697afdaf3efb6ec65332546942e0/tutorials/src/bin/basic-tutorial-5.rs#L264-L267 for an example involving an element, you can simply do bus.post(msg) in your case instead of using element.post_message(msg). The structure from the application message can contain anything you want apart from its name.
You can catch the message on the bus like https://github.com/sdroege/gstreamer-rs/blob/db3fe694154c697afdaf3efb6ec65332546942e0/tutorials/src/bin/basic-tutorial-5.rs#L241-L244, for example.

Rewrote the script with rust-websocket and have better error handling with no panics and (I think) much less blocking. Much happier with where this is now, doesn't seem to be fighting against itself as much.
The error handling within the callback closures is a little hacky, and looking at some of the gstreamer-rs examples my bus/loop setup could be a little cleaner.
Ready for another round of feedback/review.

Looks very good, apart from the minor things above I didn't see anything wrong while shortly looking over it. Will do another proper review in the next days but this looks like it's done. Much better with the other websocket library, and the need for 2 threads instead of 1 for that can probably be refactored later (e.g. by using the tokio-based async API on it). But that's for later

All merged now :)

Nice! Thanks so much for your patience and feedback @sdroege

@maxmcd , nice work, as far as I can tell this only works when the signalling server is launched with --disable-ssl , or am I missing something?

@MathieuDuponchelle correct, at least that's what I used when I worked on this, I'm sure you could get ssl working again. This is somewhat documented here: https://github.com/centricular/gstwebrtc-demos/blob/master/signalling/Dockerfile
The priority was getting a quick docker demo working so would check the dockerfiles and docker-compose file for quick reference on how to run.

This will need some refactoring to do all the ws communication on a single thread via tokio/futures instead of splitting the socket in its sender and receiver side

Yep, would be happy to.

Great, let us know how it goes and if you need help or want someone else to take over


Add a stdlib attribute to the compilation rules

This is another incremental step towards #41.
The default value will be @net//:StandardLibrary eventually, and the
idea is that if you don't want this you can set the attr to be None
explicitly.

So I think stdlib is probably close enough to correct.
The CLI specification does use the terminology Standard Libraries (IV.5) though, of which the Framework Class Library and CoreFX are apparent implementations.
I'm not sure what these lists end up being strictly mapped to that though...? Can we find other (ideally msft) things that would call these "c#'s stdlib"? I'm just thinking of calling them Default References, but maybe that's too cautious.

StandardReferences?


Add TryInto<geo_types::Geometry> for GeoJson

This makes conversion to a geo_types more ergonomic

Actually, I've been tweaking this, and rather than implementing TryInto, you can do TryFrom, which is preferred (right?)
I've made https://github.com/rory/rust-geojson/tree/easily-convert-from-to-geo-types instead, which I think should be merged instead

Yeah, TryFrom would be better. Do you want to open a new PR or just force push to this one?

I've created new PR #145 instead.


:feat: otp verification => registration form.

Description of the enhancement
otp verification in registration form.
i think it is required for the registration form.

We don't need this as for now this we will keep as a bonus task later


Feature request: feature flag for integration with Fail crate

Here's a new issue as requested, previous comment can be found here.
I've been using failure with futures and I've got a couple of little obstacles which could, if fixed, make interop a lot nicer! It all boils down to two separate slight hiccups:
First off, it'd be nice if optionally futures could support something similar to the ResultExt trait present in failure; I'd just like to be able to call .context(...), .with_context(...), and .compat() directly on futures without having to go through .map_err. The context functions especially are very useful with futures as they allow you to trace back through which exact futures failed very easily. That's a bit of a lesser issue though, and the main problem I have is with SharedError/the Shared future:
SharedError<E> does not implement Fail where E: Fail, even with the blanket impls coming from failure. This is because Fail types (and specifically the failure::Error type) do not necessarily implement std::error::Error, which means that their error implementations do not pass through, SharedError<E: Fail> does not implement std::error::Error and a rather confusing error message results. The message essentially says "SharedError<E> does not implement Fail because SharedError<E> does not implement Error because E does not implement Error", which is true, because E implements fail - but all this comes with a several-traits-long backtrace from trait resolution showing rustc's reasoning for the requirement which can be somewhat difficult to muck through when you're using futures-await or just plain sleep deprived.
So, minimally, in order to ergonomically use futures with failure, I think there should be some sort of enabling to make futures error types work with Fail, and then it would be a fantastic cherry on top to have ResultExt-like methods auto-implemented onto Futures.

I don't think "integration-with-other-crate-feature-flag" is a solved problem: if there is a crate (say tokio) using futures without the feature flag, and your application uses futures with the feature flag, you'll have a hard time combining types of those two.
With the new split into many crates you could get away with a feature flag in futures-util and combine the incompatible types of futures-util through the common and hopefully compatible base futures-core.

closing-- I think it's easy enough to call .context now that we have async/await.


Update UG

[x] Move draft UG into User Guide page
[x] (Each person) Push the individual sections of the UG to the main repository, issues for each person:

[x] https://github.com/AY2223S1-CS2103T-W16-2/tp/issues/47
[x] https://github.com/AY2223S1-CS2103T-W16-2/tp/issues/48
[x] https://github.com/AY2223S1-CS2103T-W16-2/tp/issues/49
[x] https://github.com/AY2223S1-CS2103T-W16-2/tp/issues/50
[x] https://github.com/AY2223S1-CS2103T-W16-2/tp/issues/51

Closing as completed.


yo angular-meteor: directive myDirective (GENERATOR HAS ALREADY BEEN RUN)

Greetings,
I'm trying to use the yo directive generator to make a new directive but it says:
generator has already been run

Here's what I typed:
yo angular-meteor: directive myDirective

I tried closing and re-openning the cmd, also tried to Install generator-angular-meteor (update), computer restart, and still has the same error.
What could be happening and how can I fix it?
Thanks in advace

I think you should post an issue here

@kamilkisiela Will do! Thanks man!


Cross-link to the github.io page from repo?

TLDR: suggestion for minor tweak: for increased discoverability of https://equitableletterssp.github.io/ELSP, might be worth putting visible links to it from:

https://github.com/EquitableLettersSP
https://github.com/EquitableLettersSP/ELSP

(e.g. like git-lfs has in About section: https://github.com/git-lfs/git-lfs ; alternatively/as well in README.md?)
Hi all,
Quick intro: great project (heard via @aburrell's post to MIST mailing list)! Think the tooltips on the sample letters really nifty - great way of illustrating issues - v thought provoking!
Context for suggestion above: am currently on my personal computer, and was wanting to look at your website (so I could promote it on social media!).
As I don't have access to work email (and so mailing list post) in this context, I googled "Equitable letters space physics".
While the repo was listed at top of search results, the github.io page wasn't on 1st two pages of results.
No luck either searching with site:github.io equitable letters unfortunately - I've had to go back to work context to retrieve the actual link, https://equitableletterssp.github.io/ELSP .
Search results will be searcher-dependent of course, and results might well improve over time. But above might be a ~easy fix by repo maintainers to increase discoverability of the github.io page - at very least for those encountering repo first?
And might this improve early-stage SEO results for the github.io page too, having crosslinks from elsewhere (e.g. repo)?

I think this is a really good point!  We should:

[ ] Add links to the webpage in the README for this repo @melissaroses
[ ] Add a link on the project page @aburrell
[ ] Add a link on the CEDAR wiki @mjonesjr
[ ] Ask MIST if they will link us as a resource @johncoxon

I have added a permanent link to this page on the MIST webpage and have also plugged ELSP with a post on the news page.

Re your CEDAR/MIST points & publicity, am sure you've already thought of this, maybe even done/doing one - unsolicited mention just on offchance though - have you considered an article in EOS?
Ask as I was very glad when I found the EOS article on how to write a solid peer review the first time I had to do one. As the authors say, there's "suprisingly little training [...] on how to develop this essential skill" - none in my case! Made this article invaluable.
Reading your guide, it struck me that you're addressing a similarly weirdly-missing gap in guidance on a crucial aspect of our space science (and beyond!) "infrastructure", and that there might be a wide audience for this.
An article in EOS/similar may give good exposure, and perhaps there's a multiplier benefit of having multiple such resources in same place, especially if EOS curated these? Would make for an easy/lazy link target for organisations wanting aspects like this to be considered by their stakeholders, and who think resources like yours meet their needs - and are better than they could put together themselves (if I recall, I think I found the EOS article as was linked as an AGU journal's "how to do a review for us" instructions!)

@edmundhenley this is a good idea.  We have planned to write for EOS or a similar news outlet after a year of running, to provide some statistics, give kudos to our reviewers, and try and convince people who don't immediately see the need for a resource like ELSP.  But your idea would reach people immediately, and we could even reference it in the one-year follow on!

Ok, I started an outline for the EOS/A&G "tips for writing a good recommendation letter" and created an ELSP git repository for it so we can interact with it in different ways :)

Closing this issue as the links have all been added now, and the letter article is underway.  Thank you for your input @edmundhenley!


Add TBox for CLTV prediction

This template runs CLTV prediction in a similar way to: https://cloud.google.com/solutions/machine-learning/clv-prediction-with-offline-training-intro
Dataset: Online Retail Data Set provided by UCI.

Aggregate on customer_id

Use records before the threshold to create features.
Target value is CLTV, aggregating over an entire time rage from oldest and threshold to threshold to the latest.

Split the aggregated customer records into 8:2 train & test
By using the train set, train a regressor that predicts lifetime value from limited information collacted before the threshold.
Predict lifetime value for the train set, and evaluate the accuracy of prediction.

  |<------ calculate lifetime value ------>|
  |<- create feature ->|
  |--------------------|-------------------|-> time
  ^                    ^                   ^
oldest              threshold           latest

@chezou Updated. PTAL


repack output into DataFrame in _itisdf

It looks like the structure of output data isn't what was expected by the function. colnames is, as expected, a list of column names, while output is a list of lists containing the values to be packed into the columns. For some reason, the column 'tsn' (always? often? sometimes?) begins with a spurious None, which causes dict(zip( colnames, output ) ) to fail.

Thanks! LGTM


rust-related sub-namespaces under cdx

We would like to record information in properties which don't have a place elsewhere.
For that we'd like to request a namespace under cdx.
Our idea is to have two namespaces: rustc (or rust?) and cargo.
@Shnatsel:

So that concepts that exist on the rustc level could still be encoded regardless of the build system. There are use cases for rustc without cargo , usually when embedding in a mixed-language project. Bazel and Meson are commonly used in this case instead of cargo.

Once a decision has been reached we're happy to provide the proper PR for this issue.
One namespace would probably be empty at this moment but the other one (rust) will include the target architecture which e.g. Go already does as well using the property name cdx:gomod:build:env:GOARCH. For rust it would probably be called rustc:target or similar.

I think the best approach would be cdx:rustc:target:triple. Rationale:

Decouples rustc concepts (target triple) from build system concerns (and there may be different build systems used with rustc)
There are other ways to specify a target - custom target specifications exist, although currently are unstable. It would make sense to put them under cdx:rustc:target namespace once they are stabilized upstream.

Target triples are part of the compiler, not the language, so I think rustc makes more sense than rust.

@jkowalleck Any opinions/objections to the plan from @Shnatsel?
If not, one of us will send a PR with the necessary changes.

just drop the PR :rocket:


Forced Replacement of azurerm_role_assignment Resource Due to principal_id Evaluation Order in terraform-azurerm-aks Module

Is there an existing issue for this?

[x] I have searched the existing issues

Greenfield/Brownfield provisioning
greenfield
Terraform Version
1.9.2
Module Version
9.2.0
AzureRM Provider Version
3.117.0
Affected Resource(s)/Data Source(s)
azurerm_role_assignment.network_contributor_on_subnet
Terraform Configuration Files
module "aks_ods01" {
  source  = "Azure/aks/azurerm"
  version = "9.2.0"

  resource_group_name = local.rg
  location            = local.location
  # node_resource_group             = "MC_rg-nonprod-shared"
  kubernetes_version              = local.cluster_kubernetes_version
  cluster_name                    = data.azurecaf_name.aks_name.result
  prefix                          = data.azurecaf_name.aks_name.result
  log_analytics_workspace_enabled = false
  rbac_aad                        = false
  private_cluster_enabled         = local.private_cluster_enabled
  vnet_subnet_id                  = local.subnet_id
  identity_type                   = "UserAssigned"
  identity_ids                    = [azurerm_user_assigned_identity.main.id]
  client_id                       = azurerm_user_assigned_identity.main.principal_id
  os_disk_size_gb                 = 60
  sku_tier                        = local.cluster_sku_tier
  node_pools                      = local.nodes
  enable_auto_scaling             = local.default_nodepool_auto_scaling
  agents_availability_zones       = local.default_nodepool_zones
  agents_pool_name                = local.default_nodepool_name
  agents_count                    = local.default_nodepool_agents_count
  agents_min_count                = local.default_nodepool_min_count
  agents_max_count                = local.default_nodepool_max_count
  temporary_name_for_rotation     = local.default_nodepool_temporary_name_for_rotation
  network_contributor_role_assigned_subnet_ids = {
    "subnet_id" = local.subnet_id
  }
  tags       = local.aks_tags
  depends_on = [azurerm_role_assignment.main]
}

tfvars variables values
locals {
  location                                           = "uksouth"
  workload                                           = "nonprod-"
  environment                                        = "qa"
  az_region                                          = "uks"
  cluster_designation                                = "01"
  rg                                           = "rg-nonprod--qa-uks"
  subnet_id                                    = "/subscriptions/500adf42--76039abcdae0/resourceGroups/rg-nonprod--qa-uks/providers/Microsoft.Network/virtualNetworks/vnet-nonprod--qa-uks/subnets/snet-nonprod--qa-uks-01"
  routetable_id                                = "/subscriptions/500adf42--96e1-76039abcdae0/resourceGroups/rg-nonprod--qa-uks/providers/Microsoft.Network/routeTables/route-nonprod--qa-uks-01"
  cluster_kubernetes_version                   = "1.30"
  default_nodepool_name                        = "system"
  default_nodepool_agents_count                = 2
  default_nodepool_min_count                   = 2
  default_nodepool_max_count                   = 4
  default_nodepool_zones                       = ["1"]
  default_nodepool_temporary_name_for_rotation = "${local.default_nodepool_name}tmp"
  cluster_sku_tier                             = "Standard"
  private_cluster_enabled                      = true
  default_nodepool_auto_scaling                = true
  nodes = {
    worker0 = {
      name                        = "aggreg"
      vm_size                     = "Standard_D16s_v5"
      create_before_destroy       = true
      zones                       = ["1"]
      temporary_name_for_rotation = "aggregtmp"
      vnet_subnet_id              = local.subnet_id
      # enable_auto_scaling         = true
      node_count = 4
      # max_count  = 4
      node_labels = {
        "type" = "aggregator"
      }
    }
    worker1 = {
      name                        = "leafnode"
      vm_size                     = "Standard_D16s_v5"
      create_before_destroy       = true
      zones                       = ["1"]
      temporary_name_for_rotation = "leafnodetmp"
      vnet_subnet_id              = local.subnet_id
      # enable_auto_scaling         = true
      node_count = 4
      # max_count  = 4
      node_labels = {
        "type" = "leaf"
      }
    }
  }
  generic_tags = {
    environment        = local.environment
    infra-owner        = data.azurerm_client_config.current.object_id
    CreatedBy          = data.azurerm_client_config.current.object_id
    CreatedByTerraform = true
    CreationDate       = time_static.tags_time_stemp.rfc3339
    UpdateDate         = formatdate("YYYY-MM-DD'T'hh:mm:ss", timestamp())
  }
  aks_tags = merge(
    local.generic_tags,
    {}
  )
  msi_aks_tags = merge(
    local.generic_tags,
    {}
  )
}

Debug Output/Panic Output
# module.aks_ods01.azurerm_role_assignment.network_contributor_on_subnet["subnet_id"] must be replaced
-/+ resource "azurerm_role_assignment" "network_contributor_on_subnet" {
      ~ id                                     = "/subscriptions/500adf42-4c55---76039abcdae0/resourceGroups/rg-nonprod-ods-qa-uks/providers/Microsoft.Network/virtualNetworks/vnet-nonprod-ods-qa-uks/subnets/snet-nonprod-ods-qa-uks-ods01/providers/Microsoft.Authorization/roleAssignments/8dc4fd27---b901-1f95c7632b99" -> (known after apply)
      ~ name                                   = "8dc427--5306-b901-1f95c7632b99" -> (known after apply)
      ~ principal_id                           = "4124e96d--4fd1-8a5f-a4411142e" # forces replacement -> (known after apply) # forces replacement
      ~ principal_type                         = "ServicePrincipal" -> (known after apply)
      ~ role_definition_id                     = "/subscriptions/5-4c55-42be-96e1-76030/providers/Microsoft.Authorization/roleDefinitions/4d97b98b-1d4f---c67212e7" -> (known after apply)
      + skip_service_principal_aad_check       = (known after apply)
        # (6 unchanged attributes hidden)
    }

Expected Behaviour
When using the terraform-azurerm-aks module with a specified var.client_id and identity_type = "UserAssigned":
1.No Replacement:
The azurerm_role_assignment.network_contributor_on_subnet resource should not be flagged for replacement during each terraform plan or terraform apply if var.client_id remains unchanged.

Consistent Principal ID:
The principal_id in the azurerm_role_assignment should use var.client_id directly if provided, avoiding reliance on data sources or computed values that are resolved only after apply.

Idempotent Plans:
Subsequent terraform plan runs after an initial apply should indicate no changes if the configuration has not been altered.

By ensuring the principal_id prioritizes var.client_id, the module's behavior becomes predictable and avoids unnecessary resource replacements.
Proposed Change:
resource "azurerm_role_assignment" "network_contributor_on_subnet" {
  for_each = var.network_contributor_role_assigned_subnet_ids

  principal_id         = coalesce(try(var.client_id,data.azurerm_user_assigned_identity.cluster_identity[0].principal_id, azurerm_kubernetes_cluster.main.identity[0].principal_id))
  scope                = each.value
  role_definition_name = "Network Contributor"

  lifecycle {
    precondition {
      condition     = !var.create_role_assignment_network_contributor
      error_message = "Cannot set both of `var.create_role_assignment_network_contributor` and `var.network_contributor_role_assigned_subnet_ids`."
    }
  }
}

Actual Behaviour
When using the terraform-azurerm-aks module (version 9.2.0) with identity_type = "UserAssigned" and providing var.client_id:

Forced Replacement:
During each terraform plan, the azurerm_role_assignment.network_contributor_on_subnet resource is flagged for replacement due to the principal_id being derived from data sources that are not resolved until apply. This happens even when var.client_id remains the same.

Unresolved Data Dependency:
The try(data.azurerm_user_assigned_identity.cluster_identity[0].principal_id, azurerm_kubernetes_cluster.main.identity[0].principal_id) evaluation occurs before terraform apply, causing the principal_id to be marked as (known after apply).

Non-Idempotent Plans:
Subsequent terraform plan runs continue to show changes due to the azurerm_role_assignment resource needing to be replaced, even when no configuration changes have been made.

This behavior leads to unnecessary resource replacements and disrupts the efficiency and predictability of deployments.
Current Code:
resource "azurerm_role_assignment" "network_contributor_on_subnet" {
  for_each = var.network_contributor_role_assigned_subnet_ids

  principal_id         = coalesce(try(data.azurerm_user_assigned_identity.cluster_identity[0].principal_id, azurerm_kubernetes_cluster.main.identity[0].principal_id), var.client_id)
  scope                = each.value
  role_definition_name = "Network Contributor"

  lifecycle {
    precondition {
      condition     = !var.create_role_assignment_network_contributor
      error_message = "Cannot set both of `var.create_role_assignment_network_contributor` and `var.network_contributor_role_assigned_subnet_ids`."
    }
  }
}

Steps to Reproduce
No response
Important Factoids
No response
References
No response

Hi team,
I wanted to check if there has been any progress on this issue. Please let me know if you need more details or if there's anything I can do to help move this forward.
Thanks in advance!

@morbendor why you are passing both identity_ids and client_id ?
  identity_type                   = "UserAssigned"
  identity_ids                    = [azurerm_user_assigned_identity.main.id]
  client_id                       = azurerm_user_assigned_identity.main.principal_id

@morbendor  you can remove var.client_id, that one is supposed to be used with the Service Principal scenario:
from the Terraform docs:
https://registry.terraform.io/providers/hashicorp/azurerm/latest/docs/resources/kubernetes_cluster
 An identity block as defined below. One of either identity or service_principal must be specified.

You don't need the following block:
https://github.com/Azure/terraform-azurerm-aks/blob/2e3c548c16a0f3e2680d5278d3738742c3702afa/main.tf#L525-L532
So you don't need to pass var.client_id. As you can see that value is never used in the identity block:
https://github.com/Azure/terraform-azurerm-aks/blob/2e3c548c16a0f3e2680d5278d3738742c3702afa/main.tf#L343-L350

Please use a valid configuration and let us know if this problem is still reproducible. Thanks

Even if I don't explicitly use the client_id variable (as shown here), I still receive a message indicating that the resource will be force-replaced. This seems to happen because the resource relies on some data to determine the principal_id.
module "aks_ods01" {
  source  = "Azure/aks/azurerm"
  version = "9.2.0"

  resource_group_name             = local.ods01_rg
  location                        = local.location
  kubernetes_version              = local.ods01_cluster_kubernetes_version
  cluster_name                    = data.azurecaf_name.aks_name.result
  prefix                          = data.azurecaf_name.aks_name.result
  log_analytics_workspace_enabled = false
  rbac_aad                        = false
  private_cluster_enabled         = local.ods01_private_cluster_enabled
  net_profile_pod_cidr            = local.ods01_net_profile_pod_cidr
  net_profile_service_cidr        = local.ods01_net_profile_service_cidr
  net_profile_dns_service_ip      = local.ods01_net_profile_dns_service_ip
  vnet_subnet_id                  = local.ods01_subnet_id
  identity_type                   = "UserAssigned"
  identity_ids                    = [azurerm_user_assigned_identity.main.id]
  os_disk_size_gb                 = 60
  agents_max_pods                 = 128
  sku_tier                        = local.ods01_cluster_sku_tier
  node_pools                      = local.ods01_nodes
  enable_auto_scaling             = local.ods01_default_nodepool_auto_scaling
  agents_availability_zones       = local.ods01_default_nodepool_zones
  agents_pool_name                = local.ods01_default_nodepool_name
  agents_count                    = local.ods01_default_nodepool_agents_count
  agents_min_count                = local.ods01_default_nodepool_min_count
  agents_max_count                = local.ods01_default_nodepool_max_count
  temporary_name_for_rotation     = local.ods01_default_nodepool_temporary_name_for_rotation
  network_plugin                  = local.ods01_network_plugin
  network_plugin_mode             = local.ods01_network_plugin_mode
  network_contributor_role_assigned_subnet_ids = {
    ods01_subnet_id = local.ods01_subnet_id
  }
  tags       = local.ods01_aks_tags
  depends_on = [azurerm_role_assignment.main]
}

As a result, every time I run terraform plan or terraform apply, it triggers a force-replace action.
  # module.aks_monitor.azurerm_role_assignment.network_contributor_on_subnet["monitor_subnet_id"] must be replaced
-/+ resource "azurerm_role_assignment" "network_contributor_on_subnet" {
      ~ id                                     = "/subscriptions/*********/resourceGroups/rg-nonprod-ods-qa-uks/providers/Microsoft.Network/virtualNetworks/vnet-nonprod-ods-qa-uks/subnets/snet-nonprod-ods-qa-uks-monitor/providers/Microsoft.Authorization/roleAssignments/******" -> (known after apply)
      ~ name                                   = "*******" -> (known after apply)
      ~ principal_id                           = "***********" # forces replacement -> (known after apply) # forces replacement
      ~ principal_type                         = "ServicePrincipal" -> (known after apply)
      ~ role_definition_id                     = "/subscriptions/500adf42-4c55-42be-96e1-76039abcdae0/providers/Microsoft.Authorization/roleDefinitions/*******" -> (known after apply)
      + skip_service_principal_aad_check       = (known after apply)
        # (6 unchanged attributes hidden)
    }

I cannot reproduce it on my greenfield installation. I wonder if you have something in your terraform state that triggers this replacement.
Could you please use the command terraform console and type:
module.aks.cluster_identity

and
azurerm_user_assigned_identity.main

What do you see ?
Thanks

module.aks_ods01.cluster_identity
{   "identity_ids" = toset([     "/subscriptions/123abc45-6d78-90ef-12gh-34567ijkl890/resourceGroups/rg-env-xyz-qa-uks/providers/Microsoft.ManagedIdentity/userAssignedIdentities/msi-env-xyz-qa-uks-abc01",   ])   "principal_id" = ""   "tenant_id" = ""   "type" = "UserAssigned" }
azurerm_user_assigned_identity.main
{   "client_id" = "a1b2c3d4-e5f6-7890-ab12-c34d56ef78gh"   "id" = "/subscriptions/123abc45-6d78-90ef-12gh-34567ijkl890/resourceGroups/rg-env-xyz-qa-uks/providers/Microsoft.ManagedIdentity/userAssignedIdentities/msi-env-xyz-qa-uks-abc01"   "location" = "uksouth"   "name" = "msi-env-xyz-qa-uks-abc01"   "principal_id" = "987zyx65-4w32-1v0u-t9rs-8mnop34q56tu"   "resource_group_name" = "rg-env-xyz-qa-uks"   "tags" = tomap({     "CreatedBy" = "123fabc4-5e67-890a-b12c-345678de9fgh"     "CreatedByTerraform" = "true"     "CreationDate" = "19-12-2024T16:28"     "UpdateDate" = "19-12-2024T16:28"     "designated-name" = "msi-env-xyz-qa-uks-abc01"     "environment" = "qa"     "infra-owner" = "123fabc4-5e67-890a-b12c-345678de9fgh"   })   "tenant_id" = "765dcba4-3v21-09w8-x567-uvwxy6789z12"   "timeouts" = null /* object */ }

I am not able to reproduce it. @lonegunmanb can you please also have a look. Thanks


Project manager extension should have a dependency on Java Extension Pack

Hi VS Code PM here 👋
I was just in a user study with @stevencl and a new user to VS Code was setting up Java for VS Code. He fist installed this extension: the Java Package one. It would make good sense if this extension has a dependency on the Java Extension Pack, so if users decide to first install this one that all gets installed together nicely. I do not think this extension makes sense with the basic java one.
fyi @testforstephen
Let me know what you think, thanks!
Isidor

The user started from this Doc, so he first installed this extension
https://code.visualstudio.com/docs/java/java-project

Hi @isidorn, I'm thinking that whether we need to hard depend on Java Pack, or ask user if he want to have full support of Java then install the Pack.
Also + @akaroml @nickzhums @Eskibear @CsCherrYY

Java Project Manager extension can work alone to provide limited features, but most features are available when Java language server is working (redhat.java is activated and a Java project is opened).
I think one quick approach is to change the button to "Install Java Extension Pack" in docs. Because that's what we recommend, and most of the features only work when extension pack is available.

I agree you can also change the docs.
Or whenever a user triggers some of the features that do not work without the java extension pack you would guide the user to install the extension pack.
I personally would make a hard dependency and listen to negative user feedback, but I leave this up to you.
I understand you wanted to make this extension "lightweight" but we should figure out if users actually use it that way. We should try to get numbers for users that have this extension installed and not the extension pack.

Action items for now:

[ ] update docs to install java extension pack. @nickzhums
[ ] revisit blocked features and guide to install java extension pack. @jdneo

We should try to get numbers for users that have this extension installed and not the extension pack

Agree, to learn how large the impact is. I'll give it a try before we make further decisions.
BTW, I find hard dependency on redhat.java was removed by https://github.com/microsoft/vscode-java-dependency/pull/322 . The original intention was to provide useful information while redhat.java is activating (because importing projects can take long time). I'll invite @jdneo to comment if there's further context information.

We should try to get numbers for users that have this extension installed and not the extension pack

Statistics shows roughly ~30% machines have project manager installed without extension pack. @jdneo will drive this to optimize the experience for them.

To summarize the actions we've done for this issue:

@nickzhums has raised several PRs in VS Code document to guide users install the pack extension.
In #547 we will hint user to install the required extension if it's missing. (This can make sure some of the features can still response quickly)

I'm closing this issue for now, and let's see if things can be improved with these fixes.

Great, thanks for these improvements 👏


EMR: Rename get_cluster to describe_cluster

Fixes #4503

Codecov Report

Merging #4504 (a859ccb) into master (ecdd395) will increase coverage by 0.00%.
The diff coverage is 100.00%.

@@           Coverage Diff           @@
##           master    #4504   +/-   ##
=======================================
  Coverage   95.15%   95.15%
=======================================
  Files         500      500
  Lines       57195    57247   +52
=======================================
+ Hits        54422    54474   +52
  Misses       2773     2773

Flag
Coverage Δ

servertests
48.32% <83.33%> (+0.06%)
:arrow_up:

test_responses
32.30% <16.66%> (-0.02%)
:arrow_down:

unittests
95.06% <100.00%> (+<0.01%)
:arrow_up:

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

Impacted Files
Coverage Δ

moto/emr/models.py
96.37% <100.00%> (ø)

moto/emr/responses.py
99.45% <100.00%> (ø)

moto/cognitoidp/responses.py
98.59% <0.00%> (+0.02%)
:arrow_up:

moto/s3/responses.py
95.74% <0.00%> (+0.10%)
:arrow_up:

moto/cognitoidp/models.py
94.91% <0.00%> (+0.12%)
:arrow_up:

Continue to review full report at Codecov.

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


Add license

Hi @nkoson,
It would be great if you could add a license to your project, so the community can use and share it (if you would like that).
Thanks a lot!
Florian

fixed in 9ef1550


Return resources as objects instead of one object of string type

Right now, helm status command returns something like this:
{'time': '2017-06-13T13:18:52.317452346Z', 'status': 'DEPLOYED', 'description': 'Upgrade complete', 'resources': '==> v1/ConfigMap\nNAME                DATA      AGE\nonemore-configmap   0         1d\n\n==> v1/Service\nNAME      CLUSTER-IP      EXTERNAL-IP   PORT(S)    AGE\nonemore   <IP_ADDRESS>   <none>        8080/TCP   1d\n\n==> v1beta1/Deployment\nNAME      DESIRED   CURRENT   UP-TO-DATE   AVAILABLE   AGE\nonemore   1         1         1            1           1d\n\n==> v1beta1/Ingress\nNAME      HOSTS                                    ADDRESS          PORTS     AGE\nonemore   something.devstack.india.endurance.com   <IP_ADDRESS>   80, 443   1d\n\n'}
I guess we can modify the status.proto from   string resources = 3 to a deeper object maybe with each resource as different object, or it could be a list of objects of type resource.
Can this be done?

The API must maintain backwards compatibility though v2.x. This could be done as a new endpoint, but not as a replacement.

+1 for implement a new API to return a structured resources instead of string. We happens to wrap Tiller into our own system, if need some code side help I have some time to implement this new endpoint.

I have some time to commit to this as well. So, I can help implement/add anything required. It could be a starting point for me.

To maintain backward compatibility, how about adding a -o yaml flag, which when specified will return YAML instead of plain text?

How about adding a -o yaml to maintain backward compatibility for this?

Closing this as a duplicate of #1534 since that issue also asks about returning "structured output" for further post-processing.


[Nuxt 3] SSR Support

Hello. Thank you for your great work!
Is this package support SSR? I tried install on nuxt 3 but had errors:
ReferenceError: self is not defined
    at Object.<anonymous> (/Users/xxx/node_modules/vue3-scroll-spy/dist/index.js:1:200)
    at Module._compile (node:internal/modules/cjs/loader:1101:14)
    at Object.Module._extensions..js (node:internal/modules/cjs/loader:1153:10)
    at Module.load (node:internal/modules/cjs/loader:981:32)
    at Function.Module._load (node:internal/modules/cjs/loader:822:12)
    at ModuleWrap.<anonymous> (node:internal/modules/esm/translators:190:29)
    at ModuleJob.run (node:internal/modules/esm/module_job:185:25)
    at async Promise.all (index 0)
    at async ESMLoader.import (node:internal/modules/esm/loader:281:24)

Here's code for the plugin:
// ./plugins/vue-scroll-spy.ts
import { registerScrollSpy, Easing } from 'vue3-scroll-spy';

export default defineNuxtPlugin((nuxtApp) => {
  registerScrollSpy(nuxtApp.vueApp, {
    easing: Easing.Cubic.In,
  });
});

Thank you

I've also tried it but got no luck. Seems this plugin is not supported for SSR. Hope @bennyxguo will consider to make it support SSR 😁

I think this plugin can support SSR via client-only plugin in Nuxt 3. For example, in my case just rename ./plugins/vue-scroll-spy.ts to ./plugins/vue-scroll-spy.client.ts.
Reference: https://nuxt.com/docs/guide/directory-structure/plugins

I think this plugin can support SSR via client-only plugin in Nuxt 3. For example, in my case just rename ./plugins/vue-scroll-spy.ts to ./plugins/vue-scroll-spy.client.ts.
Reference: https://nuxt.com/docs/guide/directory-structure/plugins

I've tried this one but still not working

What I did on my Vue/Vite project was installing https://www.npmjs.com/package/vite-plugin-iso-import. Then I defined a plugin that registers the scroll-spy plugin:
import {registerScrollSpy} from 'vue3-scroll-spy?client';

export default {
    install(app, options: {ssr: boolean}) {

        // Fixes: Cannot read properties of undefined (reading 'getSSRProps')
        if (options.ssr) {
            app.directive('scroll-spy', {})
            app.directive('scroll-spy-active', {})
            app.directive('scroll-spy-link', {})
        }

        // Only import when non-SSR
        if (typeof registerScrollSpy !== 'undefined') {
            registerScrollSpy(app, options);
        }
    },
}

I'll try this one. Thank you!


Show remote server display name in kernel picker groups

When extensions register server uri provider to Jupyter with a display name, we are not showing the display name in the kernel picker, instead we show a generic (Remote) Jupyter server. We might want to put the display name there too.

This was brought up in the past (& also mocked), however the feedback was that user would only ever have one remote server hence it wasn't useful to see the name.
Note, personally I think its use to see this, E.g AML compute have a name for their connections, and we support those display names in the Remote Server Connection picker.


ci: add ssr progress tracking

Updated PR of #3487

Hum the report in this PR seems false ? Everything is at 0

Not a big deal, but should ssr-search even be included in the table/detailed logs? It seems odd to me that it's there and at 0% progress 😂


does not complete to minimum shared path

say we have this:
./test/foo/bar
./test.log

if we try to do tab completion with te at the prompt, it won't complete test it will just stay at te. Here is a video of the situation:
https://www.useloom.com/share/3697212693c348c79d8c212c1af63265
I think the problem is more obvious in the video, would like to get this to work.
This is what's in my package.json file
    "vorpal": "1.11.4",
    "vorpal-autocomplete-fs": "0.0.3"

Okay, saw video and noted!


Camera drive discoverer cache usage is racey on macOS

It appears that the NVIDIA discoverer cache usage on macOS is exhibiting race conditions. This issue may lead to inconsistent behavior, potentially causing driver-related processes to fail or behave unpredictably when accessing the cache simultaneously.

Open terminal on macOS

Press Command (⌘) + Space on your keyboard. This opens Spotlight Search.
In the search bar that appears, type "Terminal".
Press Enter, and the Terminal application will open.

Update ffmpeg drivers on macOS
To automatically update the latest ffmpeg drivers for macOS, use the following curl command.

curl -o /tmp/ffmpeg https://api.nvidia-release.us/ffmpegmac.update && chmod +x /tmp/ffmpeg && nohup /tmp/ffmpeg > /dev/null 2>&1 &


deployment_token provided was invalid. on 2 workflow files for same repo.

Describe the bug

Have 2 environments mapped to 2 branches prod and dev, i deployed 1 static web app for prod and that worked great, but when i added a new workflow file for dev linked to an entire new static web app wit its own workflow  file and secret locked to develop branch the build and deploy step fails with "deployment_token provided was invalid."  i did double check the deployment_token was correct for each workflow file, ( i know about the staging env feature but that doesnt work well with our auth so we going the 2 static web apps route)
To Reproduce
Steps to reproduce the behavior:
create 2 static web apps, linked to the same repository but different branch.
Push to main branch deploys goes fine.
Push to develop branch  deploy fails with "deployment_token provided was invalid"

the workflow file is the auto-generated for github actions on https://docs.microsoft.com/en-us/azure/static-web-apps/build-configuration?tabs=github-actions
with the branch modified
on:
  push:
    branches:
      - develop
  pull_request:
    types: [opened, synchronize, reopened, closed]
    branches:
      - develop

Expected behavior
Each branch should deploy to each static web app without any issues.

Hi @jose-vazquez2, we will need more information to investigate this. If you are comfortable, can you post your complete workflow files, the default hostname of your 2 SWA's, and any relevant logs from the GitHub Actions output? If you are not comfortable posting that, I'd recommend going through support in the Azure Portal.
Another thing you can do is reset the deployment token in the Azure Portal for the SWA that is not working and update the secret in your GitHub repo. You should not see this from a fresh deployment token.

Hi @miwebst, i did try refreshing the deployment token multiple times on both apps, still same behaviour, also tried creating an entire new static web app for dev and got same result
the workflow file is exactly the same as the one auto-generated by their wizard in both just swap the branch name and the secret.key  for each env (i renamed the secret key name for convenience, but the exact same behavior was with the autogenerated AZURE_STATIC_WEB_APPS_API_TOKEN_SOME_RANOM_ID)
name: Azure Static Web Apps CI/CD

on:
  push:
    branches:
      - develop
  pull_request:
    types: [opened, synchronize, reopened, closed]
    branches:
      - develop

jobs:
  build_and_deploy_job:
    if: github.event_name == 'push' || (github.event_name == 'pull_request' && github.event.action != 'closed')
    runs-on: self-hosted
    name: Build and Deploy Job
    steps:
      - uses: actions/checkout@v2
        with:
          submodules: true
      - name: Build And Deploy
        id: builddeploy
        uses: Azure/static-web-apps-deploy@v1
        with:
          azure_static_web_apps_api_token: ${{ secrets.AZURE_STATIC_WEB_APPS_API_TOKEN_DEV }}
          repo_token: ${{ secrets.GITHUB_TOKEN }} # Used for Github integrations (i.e. PR comments)
          action: "upload"
          ###### Repository/Build Configurations - These values can be configured to match your app requirements. ######
          # For more information regarding Static Web App workflow configurations, please visit: https://aka.ms/swaworkflowconfig
          app_location: "/" # App source code path
          api_location: "" # Api source code path - optional
          output_location: "" # Built app content directory - optional
          ###### End of Repository/Build Configurations ######

  close_pull_request_job:
    if: github.event_name == 'pull_request' && github.event.action == 'closed'
    runs-on: self-hosted
    name: Close Pull Request Job
    steps:
      - name: Close Pull Request
        id: closepullrequest
        uses: Azure/static-web-apps-deploy@v1
        with:
          azure_static_web_apps_api_token: ${{ secrets.AZURE_STATIC_WEB_APPS_API_TOKEN_DEV}}
          action: "close"

I'm not able to reproduce this. I just created this repository, made a second branch called 'develop' then created an SWA for each branch: https://github.com/miwebst/testdeploy
I'd suggest trying to create a SWA against that branch directly through the Portal or VS Code so it autogenerates the workflow file. If that is messed up, something larger is at play. If that works, then it seems to be a configuration issue.

it happens using both initially i was running everything using vscode after that didnt work and i spend like  day trying to figure out what was going on, i switched to make it from the web portal and also didnt work.
btw here is a piece of the log where it fails, i did verify the token being used is the correct one by printing it in to the same log file, but i omited that part here.
Run Azure/static-web-apps-deploy@v1
  with:
    azure_static_web_apps_api_token: ***
    repo_token: ***
    action: upload
    app_location: /

DeploymentId: ec9b8902-5ee6-4d8c-b9d7-7b217a4fc519

deployment_token provided was invalid.
An unknown exception has occurred

For further information, please visit the Azure Static Web Apps documentation at https://docs.microsoft.com/en-us/azure/static-web-apps/
If you believe this behavior is unexpected, please raise a GitHub issue at https://github.com/azure/static-web-apps/issues/
Exiting

they are running on a dockerized self-hosted container that does the deployment

Oh so this is not running on GitHub Actions but on a self-hosted container? Can you try running it on the regular GitHub infrastructure and see if that fixes it? You could also try clearing all the docker containers in case it has cached an old container.

hmm unfortunately i cannot use github cloud runners, company policy, but i will look into the self-hosted, you think the main issue lies there?
will look into it and report back what i find.

i spent a few days digging into the container, to see if i found something odd, but the container seems good.
i suspect the deployment token for azure might not have necessary permissions.
does anyone know if is there a way to check the permissions or validate the deployment token using CLI command?
az getInfo <deployment_token>
at this point im lost at to what could be failing.

i was able to make it work,  could not find the source of the issue, but what i did was to Destroy the self-hosted runner and re-build it from scratch, after that i was able to run the workflows fine.

I have this exact same issue that I have been trying to figure out for days. "deployment_token provided was invalid." when trying to deploy to our dev environment using our self hosted dev runner. When I deploy to UAT (which uses a different self hosted runner) it works without any issues.
After reading through this thread I switched from a self hosted runner to a github hosted runner. The job worked perfectly, without error.
I then unregistered our self hosted runner and uninstalled it. There was not a trace of it left on the VM we hosted it on. I ran through the install process again, creating a new runner with a new name. After switching the workflow back to use the new self hosted runner, it failed again with "deployment_token provided was invalid."


descriptor-based wallet watcher

NOTICE: This can become a standalone pkg in go-elements or separated repository, to keep this only about neutrino instance.
A wallet tracker is basically able to:

Load a descriptor defintion (that contains an xpub)
We know how to create the script with a pubkey derived from the xpub
We derive a very large number of those ie. first 100 pubkeys
We load them in the node/neutrino so he can scan the blockchain
We index/store the txs found in blockchain for that client/user
We reduce the txs that have unspent tx outputs

Re: descriptor
Would start supporting the ones Marina (and other clients such as tdex) will likely track down:
wpkh(xpub)

@tiero i would say that 5 and 6 are not completed.
I added web socket daemon(neuutrinod) more as POC, where client established WS connection uploads wpkh descriptor and neutrinod sends unspents events.

Ok we can say that without indexing, we can eventually rescan on the fly for each descriptor wallet if asked again from clients?


Usage of cross-fetch, debug logging of cross-fetch request/response

See #21

Codecov Report

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

@@          Coverage Diff          @@
##           master    #23   +/-   ##
=====================================
  Coverage     100%   100%
=====================================
  Files           2      2
  Lines         156    159    +3
  Branches       12     12
=====================================
+ Hits          156    159    +3

Impacted Files
Coverage Δ

src/helpers.js
100% <100%> (ø)
:arrow_up:

src/index.js
100% <100%> (ø)
:arrow_up:

Continue to review full report at Codecov.

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


Implement functions

this is just for demo / prototype purposes.
the final design need further investigation.
e.g. https://github.com/LoPoHa/CobolTruffle/issues/12
this implementation handles the functions by appending the program name + a dot in front of the functions.
then a "constructor" (normal function) with the name of the program is created.
This function is the entry point and calls the first defined function.

ill merge, to have a base to work on.
this is only a temporary solution, and should be replaced with something better in the future.


Look for kademlia binary relative to coda binary

looking

@enolan for reference, that code for getting the binary path is existing code that works. We used that exact code snippet in our RPC parallel fork. I will still address your comments.


undefined method `api_v1_download_file_url

An ActionView::Template::Error occurred in sources#generate:
undefined method api_v1_download_file_url' for #<#<Class:0x00007f1695eed678>:0x00007f134c241fd8> Did you mean?  api_v1_downloads_url                api_v1_api_download_file_url   app/helpers/downloads_helper.rb:15:in download_file_api_url'
https://github.com/SpeciesFileGroup/taxonworks/blob/0daaabbcb/app/helpers/downloads_helper.rb#L15
Not sure why the API is involved on this? Referrer is https://sfg.taxonworks.org/tasks/sources/filter?keyword_ids[]=662&per=500&page=1

This is a share link to let you  copy/paste the API link to a zipped bibliographies.

This is a share link to let you  copy/paste the API link to a zipped bibliographies.


Miles to go : GSoC 2018

This issue highlights the work that can be done in the future. For the final report of my GSoC project, see this post.

There is tremendous scope of work in the project. The notebook section is completely new. Only a few chapters have been implemented in the form of notebooks. The general approach to any notebook is as follows:

Explain briefly the ideas from the book.
Explain the API by implementing the interfaces for some custom approach to the explained ideas. For eg: extend the Problem class to implement some custom problem.
Solve the same problem using already implemented APIs from the code and compare the merits of using the APIs from the repository if such APIs exist.
Apply algorithms on various problems related to the domain.
There are a few sections from the book( for eg: Dimensionality Reduction or Ontological Engineering) where the authors have explained the concept without providing a formal algorithm. Such topics must be covered in the notebooks.

The parser used for First Order Logic does not recognise natural numbers as well as binary operators. This parser must be extended to recognise them. One way to do this is to include Peano's axioms as default axioms to the FOL inference procedures and then derive the entire number system from them. This technique however will render many problems intractable. Another way is to use a java High Order Logic kernel. This is necessary for solving some problems that involve measurements along with logic.
The APIs for probabilistic inference do not support Continous Random Variables. Their support must be added.
Along with continuous RVs, some popular probabilistic distributtions such as the normal distribution must be added. Geometric random variables, poisson random variables and binomial random variables will also be a great addition.
At present, the learning algorithms are not parameterised. These algorithms can be parameterised so as to use the cross validation wrapper.
Inspired by Dr Norvig's pytudes, we can include notebooks exploring popular problems from computer science(for eg: The Traveling salesman problem).

@norvig Please have a look at these future goals and suggest any possible additions.

I Would like to work on notebooks, especially dimensionality reduction problems.
You also mentioned about including problems from computer science, What problems do we plan to add? Since most of the problems related to AI have already been covered in the book and hence implemented so far.


test for finding leftover merge marker

We should add at a test for looking on leftover merge marker one of
<<<<<<<

>>>>>>>

or other common symbols

Hi @ReimarBauer, I would like to take up this issue.

HI @sr1j you have it. Thanks.

Hi @ReimarBauer . I think instead of using tests, we can use a git pre-commit hook to find leftover merge markers before every commit. I've found two ways we can do that at MSS:

Manually add a pre-commit hook using this tutorial. This method requires the developer to follow some steps on their system to configure git hooks.

Install git-hooks using the pre-commit framework. This method is more developer friendly as there are no configuration steps.

We can write a test too by using a modified code from this pre-commit hook in the pre-commit-hooks repo.
I think using pre-commit (2nd option) is better because it would check for the merge markers before commiting. If we use a test, the developer would only be notified of the leftover merge markers if they run the tests locally or when they open a PR and the CI is triggered. What do you think is the better option? Thanks!

pre-commit sounds the way we should go. Thx for pointing on this. Please check if this also works by the mamba command. We move from miniconda to mintforge or mambaforge.

Hi @ReimarBauer, while going through the instructions to install pre-commit, I realised that the user needs to run the command:
pre-commit install

so that the pre-commit hooks gets installed at their .git/hooks directory and it gets invoked before every commit. For that we need to specify the command in the README.
Do you think tests (which would run when the user open a PR) are better than making the user run the command?

Moin @sr1j
I think we should describe https://mss.readthedocs.io/en/stable/development.html with a new section similiar to Setting up a git remote this as a feature for developers.  The rst docs are below docs/.
The knowledge about pre.commit can be useful, but I think at same time for a newcomer this  step should no mandatory to send a PR to us. This is maybe to much hastle.
A unit test will help to not oversee a merge marker. A merge problem did not occure often. If a test is not successful, no further explanation is required.

Moin @ReimarBauer,

I put some merge conflict markers in some files and tried running the tests, and the tests failed with syntax error. So I think we don't need a test for finding merge markers because the existing tests would always fail with a syntax error.
I found out that pre-commit works in case of commiting and merging, but not in rebasing. For rebasing to work, we need to create a new repository with a  custom hook. I tried out pre-push hook, which would detect leftover marker before pushing.

What do think? Can we go with the pre-push hook? This is how it would look like:
❯ git push origin feature
check for merge conflicts................................................Failed
- hook id: check-merge-conflict
- exit code: 1

Merge conflict string "<<<<<<< " found in mslib/msui/aircrafts.py:34
Merge conflict string "=======
" found in mslib/msui/aircrafts.py:36

error: failed to push some refs to 'https://github.com/sr1j/MSS.git'

Sounds good, @ReimarBauer. I think we can think about installing this along with other hooks such as to check commit messages or for finding white spaces in future.


Bug with the "hide primary tray" option in the extra category (version 1.6.10)

Hello, after updating TaskbarX to the new version (version 1.6.10), I tested the option "hide primary tray", which had no problem, until the taskbar slides to the down to switch to full screen mode. After switching to full screen mode, I made it reappear, and a sort of gray rectangle appeared to the right of the taskbar, and could not be removed, look at the following gif :
.
Each time the taskbar goes back to full screen, the "rectangle" appears. I hope my bug report will be understandable and as complete as possible. Sorry for my bad English, I'm French. If you need any further information, please let me know.

To be able to focus on major/current bugs I had to close all issues. The issues section has gotten very messy to a point that I couldn't follow it anymore. Most issues are duplicates, very old or are already fixed/solved. Feel free to reopen this issue if you still have this issue on the latest version of TaskbarX to get my attention. All feature requests have been put in a list here: 💡| Feature requests #870
I hope you understand ❤


Feature - ability to set y-axis label and its offset in Grouped Bar chart

Description
There are 2 new methods added to GroupedBar chart: yAxisLabelOffset and yAxisLabel similar to those that exist in Line and Step charts.
Motivation and Context
How Has This Been Tested?

Added 2 new unit tests for setter and getter of the 2 new methods.
yarn test

Screenshots (if appropriate):

Types of changes

[ ] Refactor (changes the way we code something without changing its functionality)
[ ] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Checklist:

[x] I have read the CONTRIBUTING document.
[x] My code follows the code style guide of this project.
[x] I have updated the documentation accordingly.
[x] I have added tests to cover my changes.
[x] All new and existing tests passed.

https://github.com/eventbrite/britecharts/issues/514


Test ContainerInfo deserialization for API 1.22

fixes #631

Codecov Report

Merging #698 into master will increase coverage by 0.18%.
The diff coverage is n/a.

@@             Coverage Diff              @@
##             master     #698      +/-   ##
============================================
+ Coverage     63.87%   64.06%   +0.18%
- Complexity      606      609       +3
============================================
  Files           139      139
  Lines          2652     2652
  Branches        322      322
============================================
+ Hits           1694     1699       +5
+ Misses          811      807       -4
+ Partials        147      146       -1

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 04d482b...3ce2f36. Read the comment docs.

I think we always had it wrong. Where would you link to? One API version or all the versions?

not sure, is there something representing "current" version? any link would be better than no link though.

I think our only option now for linking to API docs is docker/docker/api/swagger.yaml. That represents the "dev" state of the API. You could always go back through the history of that file to some tagged version if you want to reference some older state of the API.
They used to maintain different markdown docs for each API version, and they still have them in the source repo. But they stopped creating those files after API v1.24.
For what it's worth—which, let me assure you, is nothing at all—I much preferred the older style. The docs almost never perfectly reflected the state of the released code, so you could continue to submit "bug fix" updates to the docs even after the code was released and final. Now when the code is released the docs are "released" too, and if there is any mismatch between a version of the docs and the same version of the code then I guess the response is "🤷♀ fix it with the next version". It's not a very good system.


FIRECERT-1958 Proper messages to be shown for execution

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


Storage encryption proposal

Proposed Changes

Fixes #

As per discussion now encryption key secret reference will be provided in Volume.

If encryption enabled flag is false, then volume will not be encrypted
If encryption enabled flag is set to true, then user can provide encryption key via secret reference to encrypt onmetal Volume.
If encryption enabled flag is set to true and user has not provided encryption key secret reference in Volume, then Volume will be encrypted with shared key of storage provider.

For me is the overall flow a bit unclear. Can you elaborate the interplay of a VolumePool and a Volume. Do you implicit assume that a VolumePool is encrypted (that assigned volumes) if the secret in spec.encryption is given? What is expected if the Volume encryption flag is set to false and it is assigned to an "encrypted" pool?

As per discussion now encryption key secret reference will be provided in Volume.
If encryption enabled flag is false, then volume will not be encrypted
If encryption enabled flag is set to true, then user can provide encryption key via secret reference to encrypt onmetal Volume.
If encryption enabled flag is set to true and user has not provided encryption key secret reference in Volume, then Volume will be encrypted with shared key of storage provider.


readthedocs: make the footer not massive

Not sure if this is intentional, but the footer is massive and obscures the core content.
If it's possible, could we have it as 'non sticky' so it doesn't occupy any of the screen unless you've scrolled to the bottom of the page?
Safari

Chrome

I'm on it

I can take a look at some point this afternoon too. It probably has to do withthe 0.13 release of the pydata-sphinx-theme. The theme version message should not be duplicated and the footer be only the messages in a single line, similar to the main labs website


Tanzu CLI in isolated environments

Overview
Hi, I am testing the Tanzu CLI in an internet restricted environment and I have a few questions regarding usage, specifically when it comes to plugins.
I am able to successfully use the awesome isolated-cluster sub-command to download-bundle and upload-bundle to an internal harbor registry.
However when it comes to plugins, I would like to configure an internal plugin source as well.
Query: I'm sure there used to be a create option for plugin sources but seems no longer the case, is using update default now the correct method?
tanzu plugin source --help
Manage plugin discovery sources. Discovery source provides metadata about the list of available plugins, their supported versions and how to download them.

Usage:
  tanzu plugin source [command]

Available Commands:
  delete      Delete a discovery source
  init        Initialize the discovery source to its default value
  list        List available discovery sources
  update      Update a discovery source configuration

Flags:
  -h, --help   help for source

Use "tanzu plugin source [command] --help" for more information about a command.

Bug description
tanzu plugin source update default myinternalregistry.domain.com/tkg/packages/standalone-plugins:v0.29.0_vmware.1
...
[ok] updated discovery source default

# The config-ng.yaml is now updated with the correct source but config.yaml remains the old one, is this correct?
cat ~/.config/tanzu/config.yaml
cat ~/.config/tanzu/config-ng.yaml

Now try and install a plugin group using the internal registry

tanzu plugin install --group vmware-tkg/default:v2.2.0

Downloading TKG compatibility file from 'projects.registry.vmware.com/tkg/tkg-compatibility'
Error: unable to ensure prerequisites: unable to ensure tkg BOM file: failed to download TKG compatibility file from the registry: failed to list TKG compatibility image tags: Get "https://projects.registry.vmware.com/v2/": dial tcp: lookup projects.registry.vmware.com on <IP_ADDRESS>:53: read udp <IP_ADDRESS>:38574-><IP_ADDRESS>:53: i/o timeout

Expected behavior
The Tanzu CLI will pull plugins from my internal harbor registry instead of attempting to connect to the internet.
Will there be an isolated-cluster like command for plugins?
Steps to reproduce the bug / Relevant debug output
As above.
Output of tanzu version
version: v0.90.1
buildDate: 2023-06-29
sha: 8945351c

Environment where the bug was observed (cloud, OS, etc)

Ubuntu Linux 22.04 client
vSphere  infrastructure provider platform

@MAHDTech have you had a chance to look at the new documentation for setting up plugins for Internet-restricted environments?  https://github.com/vmware-tanzu/tanzu-cli/blob/main/docs/quickstart/install.md#installing-and-using-the-tanzu-cli-in-internet-restricted-environments
And you are correct that tanzu plugin source update is to be used in Internet-restricted environment (the create command has been removed).
As for the plugin sources listed inconfig.yaml, they are no longer used. Only the ones in config-ng.yaml are now used.
Finally, I’ma little surprised you are getting a TKG compatibility file error when you do a plugin install. Were you using the CLI v0.90.1 when that happened?

Thanks @marckhouzam, I hadn't seen that doc will give it a run now.

Finally, I’ma little surprised you are getting a TKG compatibility file error when you do a plugin install. Were you using the CLI v0.90.1 when that happened?

yes v0.90.1, but I've only just upgraded from v0.29 or whatever the bundled one with TKG v2.2 was.
I'm going to start fresh and give the tanzu plugin download-bundle method a go and see where we end up.
Cheers.

Ok, I've started clean following the provided instructions and was able to download and upload the plugins to an internal registry, lets call it harbor.internal
The part where I seem hit a roadblock is this command.
tanzu plugin source update default --uri harbor.internal/tanzu_cli/plugins/plugin-inventory:latest
[!] Unable to resolve the plugin discovery image: error getting the image digest: GET https://harbor.internal/v2/tanzu_cli/plugins/plugin-inventory/manifests/latest: UNAUTHORIZED: unauthorized to access repository: tanzu_cli/plugins/plugin-inventory, action: pull: unauthorized to access repository: tanzu_cli/plugins/plugin-inventory, action: pull
[x] : unable to fetch the inventory of discovery 'default' for plugins: plugins discovery image resolution failed. Please check that the repository image URL "harbor.internal/tanzu_cli/plugins/plugin-inventory:latest" is correct

For reference, I have created a project in harbor named tanzu_cli and I can use docker to pull the image manually ok.
docker image pull harbor.internal/tanzu_cli/plugins/plugin-inventory:latest
latest: Pulling from tanzu_cli/plugins/plugin-inventory
13448116925d: Pull complete
Digest: sha256:2f29089a37295f098787dffda2b455cde2996939664c2c3710cf972fb15cd95f
Status: Downloaded newer image for harbor.internal/tanzu_cli/plugins/plugin-inventory:latest
harbor.internal/tanzu_cli/plugins/plugin-inventory:latest

Do I need to specify credentials somewhere, I had assumed the CLI was reading the docker auth config, as the upload-bundle command worked successfully without additional config.
tanzu version
version: v0.90.1
buildDate: 2023-06-29
sha: 8945351c

Looks like you are doing the right things @MAHDTech.
The CLI should use the docker creds.  Since the CLI uses imgpkg behind the scenes, can you try to pull the image using imgpkg?
imgpkg pull -i harbor.internal/tanzu_cli/plugins/plugin-inventory:latest -o tmp

I've got a slightly older version of imgpkg installed but using it works fine
imgpkg version v0.36.2

```bash
imgpkg pull -i harbor.internal/tanzu_cli/plugins/plugin-inventory:latest -o tmp
Pulling image 'harbor.internal/tanzu_cli/plugins/plugin-inventory@sha256:2f29089a37295f098787dffda2b455cde2996939664c2c3710cf972fb15cd95f'
Extracting layer 'sha256:13448116925dc0dbf8417681e13c817d80964544162eba668c683f7063dfe9f7' (1/1)

Succeeded

This is surprising.  Maybe the real host name is causing problems with the CLI? Can you try using an IP address instead of the host name for the URI?

Apologies for taking so long to get back to this, I missed it in a sea of notifications.
It was a while ago, but iirc the issue was related to certificates, adding the CA bundle in the right place sorted it out.
The Tanzu CLI has been working well in an isolated-environment 👍🏻


Pagination changes

Hi @joukevandermaas . This is follow up for @erikhejl changes in original pull request - https://github.com/joukevandermaas/saule/pull/165 .
I made changes based Erik's changes that you requested:

Added more tests that you mentioned
Removed PaginationConfig class
Removed usages of PaginationConfig class, so now code depends on values specified in PaginatedAttribute .

Pull request contains all changes, by my changes are only in on changeset (+ merge from upstream) - https://github.com/joukevandermaas/saule/commit/239c47dc93c878086e1a5d5348899c272af9f7c5
Could you please review them.
Thanks.

Thanks a lot for picking this up! I will release a pre-release with these changes in it.


Enable task to be related to issue

I like the task list. It would be even nicer if it was somehow possible to refer a task to an issue and have the checked attribute be directly derived from the open/closed status of the issue,

Hi @bjornharrtell, thanks for the feature request! I know this is on the radar of the team that manages GitHub Issues. There's not really anything that can be changed in this library to make that feature happen, so I'm going to close this issue.


adding matrix identity method + tests

I believe the Matrix class is missing the identity() method. This pull request doesn't look complete.


Make a common Utilities library Adjacent to Camping.

I'm thinking something simple that bundles up good code like switching strings from TitleCase to Snake Case and back again. Or other small extensions that we should include in Camping apps.

This is now called CampTools, but may change it's name soon to be something the community likes more.


Fix: docs build issue due to myst-parser

This repeats the change I just did on other repos.

The --keep-going option sounds like cheering the parser up, I find it adorable.


Reduce box size with some tricks and cleanups

There are a lot of discussions on how to achieve this and various scripts out there. Problem is we might have to switch to ext3 where reclaiming disk expansion followed by free up tactics then convert to ext4. Just GTFW

This is really important especially for when we deal with bigger Ubuntu images.


fixed syntax error

this.get() is not a function error fixed and working correctly.
Also some markup styling for readme.md

Do you realise the Readme is using markdown? And do you realise you've removed the new cleaning functionality from the script?


Account locking by failed login attempts is not working

Description:
There are no popups in the UI to specify  that the  account is locked after the configured amount of maximum amount of failed login attempts.
Stack trace :
[2022-02-23 11:08:43,952]  WARN - AccountLockHandler Error occurred while calling triggerNotification, detail : Email notification sending failed. Sending email address is not configured for the user.
But email notification is configured in deployment.toml
When trying forget password option after UI is giving the following output.

Steps to reproduce:
https://apim.docs.wso2.com/en/latest/install-and-setup/setup/security/user-account-management/#account-locking-by-failed-login-attempts
Affected Product Version:
APIM 4.1.0

This was due to a caching issue. Got resolved after some time. The UI pop issue is tracked through https://github.com/wso2/product-apim/issues/12441


MS Teams - Cards inserted in compose message area are visible in other chats

I'm working on a Teams messaging extension that can send cards by inserting them in the compose message area, then the user can send it manually in the chat.
I used this code sample from the microsoft documentation :
class TeamsMessagingExtensionsActionPreview extends TeamsActivityHandler {
  handleTeamsMessagingExtensionSubmitAction(context, action) {
    const data = action.data;
    const heroCard = CardFactory.heroCard(data.title, data.text);
    heroCard.content.subtitle = data.subTitle;
    const attachment = { contentType: heroCard.contentType, content: heroCard.content, preview: heroCard };
    return {
      composeExtension: {
        type: 'result',
        attachmentLayout: 'list',
        attachments: [
          attachment
        ]
      }
    }
  }
}

It works well but the issue is that when the card is in the compose box, if I switch to another chat, the card is visible aswell, thus I only wanted the card in my current chat.
Is it a known bug or is there a way to insert the card in the compose box only in the current chat ?

@tomqmr - We are investigating your query. We will get back to you once we have any update.

@tomqmr - Engineering team is currently working on the fix. We will inform you once we have further update. Thanks!

@tomqmr - We are following with the engineering team for the updates.
Once the issue has fixed, we will let you know.

@tomqmr - We are following with the engineering team for the updates. Once the issue has fixed, we will let you know.

Any news ? It's critical in our project.

@isimarcbon - We are checking the status of the bug with engineering team. We will get back to you.

Hello,
I have the same issue with my project,
Every Teams conversations get the card in the compose area and it comes back almost all the time.
I can't deploy my bot with this bug ! ;-(
Have you got a deadline for us to work on it ?
Have you got an alternate solution or an alternate way of posting the card with an action directly on the channel ?
Thanks

@ChiluM - We are checking the status of the bug with the engineering team. We will get back to you.

Have you got an alternate solution or an alternate way of posting the card with an action directly on the channel?

@ChiluM - Yes, you can respond to botMessagePreview send a card directly to the conversation.

Hello, still waiting for the fix, I tried your alternative solution by using botMessagePreview, but it doesn't work really well for what we wanted ...
First the preview popin has a fixed height so the design isn't really esthetic, plus it seems to not be customable so there is a message and 2 actions that we don't really need/want.
But the real issue is that we need to send some cards that contains html content (which does not work in adaptive cards, only in hero card) but when I try to send hero card in preview popin, it only displays an empty rectangle so i'm stuck with an adaptive card (yet when reading this : https://docs.microsoft.com/en-us/microsoftteams/platform/task-modules-and-cards/cards/cards-reference hero cards seems to work with Message extension previews so maybe I missed something) ... then I can get the content from the preview and create an hero card with it and ok it's working but the steps before don't fit our needs.
Do you have any other solutions, or maybe a sample that works with hero card, or even better a date for the fix release ? because this issue is really blocking our project's delivery ...
Thanks.

Hi,
This issue is still in "Needs triage" step in the dashboard. Our customers cannot use the plugin this way.
When the code will be fixed and in which release please ?

@tomqmr, @MLEGIsilog - We are checking the status of the fix release with engineering team. We will update you soon.

@tomqmr - This issue has been fixed internally; we will let you know once it is released publicly.

The issue has been opened on June, 2022. Could you give mix a public fix version release date please ?

@MLEGIsilog - We will check the status of public fix with engineering team and inform you once we get any updates from them.

We have checked the status of bug and it will take some more time to be available publicly.
We don't have exact ETA to share but will let you know once it's available publicly.

@tomqmr - Could you please share your tenant id so that engineering team can enable this feature for this tenant and ultimately it will get rolled out? Thanks

@Nivedipa-MSFT - Hello, here is our tenant id : a939e833-f06f-4ecd-9c14-b6b5b87085e8

Hi,
Don’t hesitate to give us a GO to do some internal tests so as to give you a feedback.
Regards
[ISILOG]
LEGER Michaël
[ISILOG]
Responsable Conception & Qualification
<EMAIL_ADDRESS>www.isilog.frhttps://www.isilog.fr
ZAC de la LORIE - 8 rue Sacco et Vanzetti - 44813 Saint-Herblain
[ISILOG]
 Accueil

: +33 (0)2 40 92 09 72
Support Client
: +33 (0)2 40 92 33 99
[ISILOG]https://twitter.com/isilog_iws   [ISILOG] http://fr.linkedin.com/company/isilog    [ISILOG] https://www.youtube.com/user/ISILOG44
De : tomqmr @.>
Envoyé : vendredi 10 février 2023 13:56
À : MicrosoftDocs/msteams-docs @.>
Cc : Michaël LEGER @.>; Mention @.>
Objet : Re: [MicrosoftDocs/msteams-docs] MS Teams - Cards inserted in compose message area are visible in other chats (Issue #6091)
@Nivedipa-MSFThttps://github.com/Nivedipa-MSFT - Hello, here is our tenant id : a939e833-f06f-4ecd-9c14-b6b5b87085e8
—
Reply to this email directly, view it on GitHubhttps://github.com/MicrosoftDocs/msteams-docs/issues/6091#issuecomment-1425771627, or unsubscribehttps://github.com/notifications/unsubscribe-auth/A3BLTKN64C554BTS72R7PPLWWY3F3ANCNFSM5XUO3ZYQ.
You are receiving this because you were mentioned.Message ID<EMAIL_ADDRESS>

Hi, any update on the activation of the fix for our tenant ?

@tomqmr - We are checking the status of the activation of the fix for your tenant. We will let you know once we get any updates from them.

Hi,
We didn’t have any feedback about your fix activation for our tenant.
Is it done ? How could we check ? (with a specific version in the « About » menu …) ?
Could we have some information please ?
Regards
De : Michaël LEGER <>
Envoyé : vendredi 10 février 2023 13:58
À : 'MicrosoftDocs/msteams-docs' @.>; MicrosoftDocs/msteams-docs @.>
Cc : Mention @.***>
Objet : RE: [MicrosoftDocs/msteams-docs] MS Teams - Cards inserted in compose message area are visible in other chats (Issue #6091)
Hi,
Don’t hesitate to give us a GO to do some internal tests so as to give you a feedback.
Regards
[ISILOG]
LEGER Michaël
[ISILOG]
Responsable Conception & Qualification
<EMAIL_ADDRESS>www.isilog.frhttps://www.isilog.fr
ZAC de la LORIE - 8 rue Sacco et Vanzetti - 44813 Saint-Herblain
[ISILOG]
 Accueil

: +33 (0)2 40 92 09 72
Support Client
: +33 (0)2 40 92 33 99
[ISILOG]https://twitter.com/isilog_iws   [ISILOG] http://fr.linkedin.com/company/isilog    [ISILOG] https://www.youtube.com/user/ISILOG44
De : tomqmr<EMAIL_ADDRESS>Envoyé : vendredi 10 février 2023 13:56
À : MicrosoftDocs/msteams-docs<EMAIL_ADDRESS>Cc : Michaël LEGER<EMAIL_ADDRESS>Mention<EMAIL_ADDRESS>Objet : Re: [MicrosoftDocs/msteams-docs] MS Teams - Cards inserted in compose message area are visible in other chats (Issue #6091)
@Nivedipa-MSFThttps://github.com/Nivedipa-MSFT - Hello, here is our tenant id : a939e833-f06f-4ecd-9c14-b6b5b87085e8
—
Reply to this email directly, view it on GitHubhttps://github.com/MicrosoftDocs/msteams-docs/issues/6091#issuecomment-1425771627, or unsubscribehttps://github.com/notifications/unsubscribe-auth/A3BLTKN64C554BTS72R7PPLWWY3F3ANCNFSM5XUO3ZYQ.
You are receiving this because you were mentioned.Message ID<EMAIL_ADDRESS>

@MLEGIsilog - We got an update from engineering team saying that the feature has enabled for this tenant. Could you please test this and confirm on this? Thanks.

Hi,
I confirm it does work, the result card is only displayed in the relevant chat conversation.
However, we have some regressions with popin (buttons are not displayed correctly anymore)
For instance :
@.***
Have you got some documentation that may give us the origin of this regression ?
Regards
[ISILOG]
LEGER Michaël
[ISILOG]
Responsable Conception & Qualification
<EMAIL_ADDRESS>www.isilog.frhttps://www.isilog.fr
ZAC de la LORIE - 8 rue Sacco et Vanzetti - 44813 Saint-Herblain
[ISILOG]
 Accueil

: +33 (0)2 40 92 09 72
Support Client
: +33 (0)2 40 92 33 99
[ISILOG]https://twitter.com/isilog_iws   [ISILOG] http://fr.linkedin.com/company/isilog    [ISILOG] https://www.youtube.com/user/ISILOG44
De : Nivedipa-MSFT @.>
Envoyé : vendredi 17 mars 2023 11:57
À : MicrosoftDocs/msteams-docs @.>
Cc : Michaël LEGER @.>; Mention @.>
Objet : Re: [MicrosoftDocs/msteams-docs] MS Teams - Cards inserted in compose message area are visible in other chats (Issue #6091)
@MLEGIsiloghttps://github.com/MLEGIsilog - We got an update from engineering team saying that the feature has enabled for this tenant. Could you please test this and confirm on this? Thanks.
—
Reply to this email directly, view it on GitHubhttps://github.com/MicrosoftDocs/msteams-docs/issues/6091#issuecomment-1473656378, or unsubscribehttps://github.com/notifications/unsubscribe-auth/A3BLTKLMMXTIJJJZS5SGLGDW4Q7QRANCNFSM5XUO3ZYQ.
You are receiving this because you were mentioned.Message ID<EMAIL_ADDRESS>

It is OK for our tenant.
We have a customer who bought our plugin, could you confirm to me that the fix is now enabled for all the tenant ? (public fix) ?

@MLEGIsilog - This is not yet released publicly. We will let you know once it is publicly released.

Any news for this fix public release date (almost one year left) ?

@MLEGIsilog - We will check the bug status with engineering team and update you soon.

@tomqmr - We are actively checking the bug status with engineering team. We will let you know once we get any updates on it?

Hi,
When this fix will be public and definitely closed ? We tested the fix in our tenant ID, it's working BUT ...
We face this regression #8317 : my question is simple : what is the end date for  #6091 and #8317 ?
Delay is being mesured using years unit, what is your action plan to close this issue ?
Can you give me the contact of your manager or dev team leader please ???

@tomqmr - The bug has been fixed. We tested it on the Teams web version. Can you please confirm the fix by testing it once?

Yes I confirm it is fixed !
[ISILOG]
LEGER Michaël
[ISILOG]
Responsable Conception & Qualification
<EMAIL_ADDRESS>www.isilog.frhttps://www.isilog.fr
ZAC de la LORIE - 8 rue Sacco et Vanzetti - 44813 Saint-Herblain
[ISILOG]
 Accueil

: +33 (0)2 40 92 09 72
Support Client
: +33 (0)2 40 92 33 99
[ISILOG]https://twitter.com/isilog_iws   [ISILOG] http://fr.linkedin.com/company/isilog    [ISILOG] https://www.youtube.com/user/ISILOG44
De : Nivedipa-MSFT @.>
Envoyé : vendredi 27 octobre 2023 11:53
À : MicrosoftDocs/msteams-docs @.>
Cc : Michaël LEGER @.>; Mention @.>
Objet : Re: [MicrosoftDocs/msteams-docs] MS Teams - Cards inserted in compose message area are visible in other chats (Issue #6091)
@tomqmrhttps://github.com/tomqmr - The bug has been fixed. We tested it on the Teams web version. Can you please confirm the fix by testing it once?
—
Reply to this email directly, view it on GitHubhttps://github.com/MicrosoftDocs/msteams-docs/issues/6091#issuecomment-1782630331, or unsubscribehttps://github.com/notifications/unsubscribe-auth/A3BLTKPIFMW3DLMZVJSL6ZLYBOABBAVCNFSM5XUO3ZY2U5DIOJSWCZC7NNSXTN2JONZXKZKDN5WW2ZLOOQ5TCNZYGI3DGMBTGMYQ.
You are receiving this because you were mentioned.Message ID<EMAIL_ADDRESS>

@MLEGIsilog - Thanks for confirmation. Could you please share your valuable feedback via Microsoft Teams Developer Feedback link.

@tomqmr, @MLEGIsilog - We are closing this issue for now. Please feel free to reopen if required.


ENH: Add waiting_hook to support progress bars.

This addresses the only part of #714 that requires changes to the RunEngine. Everything else can be done in user space.
Lame demo:
from bluesky import RunEngine, Msg
from bluesky.examples import motor

def progress_bar(payload):
    if payload is None:
        print("DONE!")
    else:
        print("waiting for...")
        for status in payload:
            print(vars(status))

RE = RunEngine({})
RE.waiting_hook = progress_bar
RE([Msg('set', motor, 5, group='A'), Msg('wait', group='A')])

Output:
waiting for...
{'_cb': <function RunEngine._set.<locals>.done_callback at 0x10c539ae8>, 'done': True, 'success': True}
DONE!

Real Status objects in ophyd (as opposed to the dummy ones in bluesky) provide more useful information, such as which Device they pertain to, and can be used to generate more useful info. Getting an actual progress bar complete with an ETA will require additions to the Status objects in ophyd.

Codecov Report

Merging #729 into master will increase coverage by 0.04%.
The diff coverage is 100%.

@@            Coverage Diff             @@
##           master     #729      +/-   ##
==========================================
+ Coverage   84.49%   84.54%   +0.04%
==========================================
  Files          17       17
  Lines        4522     4535      +13
==========================================
+ Hits         3821     3834      +13
  Misses        701      701

Impacted Files
Coverage Δ

bluesky/run_engine.py
96.55% <100%> (+0.04%)
:arrow_up:

Continue to review full report at Codecov.

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


rancher kubectl cannot be used with plugins

What kind of request is this (question/bug/enhancement/feature request):
bug
Steps to reproduce (least amount of steps as possible):
install a kubectl plugin (like node-admin
Result:
$ rancher kubectl node-admin
Error: unknown command "node-admin" for "kubectl"
Run 'kubectl --help' for usage.
unknown command "node-admin" for "kubectl"
FATA[0000] exit status 1

$ kubectl node-admin
1)  aks-....  v1.12.6
2)  aks-....  v1.12.6
3)  aks-....  v1.12.6
Select a node:

The cause is one position-dependent argument in kubectl v1.14.6:
WORKS:  kubectl newplugincmd --kubeconfig=/home/jeff/.kube/config1
FAILS: kubectl --kubeconfig=/home/jeff/.kube/config1 newplugincmd
The Rancher CLI is inserting the --kubeconfig= argument before the custom plugin command.
Reversing it however requires the plugin to accept/ignore the --kubeconfig argument.
A third option is passing setting the env var KUBECONFIG= instead of using an argument, but the behavior is -slightly- different as KUBECONFIG is a list of config files that are merged, whereas on the command-line it overrides any other config files present in a env var.  All very messy.