feat(tabs): mat-tab-nav-bar should support routerLinkActive

Feature Description
At present, mat-tab-nav-bar expects active state to be maintained via a boolean expression as mentioned here: https://material.angular.io/components/tabs/overview#tabs-and-navigation. Instead of setting [active]="booleanExpression", can we leverage the routerLinkActive directive or have a simpler way to maintain the active state?
Use Case
Since this component is primarily used for navigation, I think simplifying the active state management would be a good addition to the component.

For us it was not. When you are not using an *ngFor (we are not) it gets quite ugly. We use this custom MatTabLinkActive directive. It's basically a hack as it bypasses TypeScript, however in Angular 13 we will change it for a simple directive that not extends the RouterLinkActive but injects it, beacuse RouterLinkActive will have an isActiveChange event.


Add gnupg and apt to depends

The postinst template uses tools from those packages.
Normally they are installed in most systems. However, this is not guaranteed. Lets make it guaranteed.

Hi @fsateler, I'm your friendly neighborhood Microsoft Pull Request Bot (You can call me MSBOT). Thanks for your contribution!

This seems like a small (but important) contribution, so no Contribution License Agreement is required at this point. Real humans will now evaluate your PR.

TTYL, MSBOT;

Is gnupg required? You mention you only need this when apt-key is used in https://github.com/Microsoft/vscode/issues/2973#issuecomment-264167120?
Also will this work in both 32-bit and 64-bit versions across most distributions? They're not called out in Chromium's deps despite using a similar system to us.

Is gnupg required? You mention you only need this when apt-key is used in #2973 (comment)?

Well, the postinst template is using a tool from gnupg, instead of having apt-key use gpg you are using it yourself. I do not consider using gpg a problem for vs code, but declaring a dependency is good. Otherwise in the (admittedly rare) case a user doesn't have gpg installed the installation will not install the key, and upgrades then will not happen (because the repository is not signed by a trusted key).
If you really want to avoid using gpg, the armored block is just a base64 encoded block, so the gpg call can be changed to:
echo "<snipping actual key>" | awk '/^$/{ x = 1; } /^[^=-]/{ if (x) { print $0; } ; }' | base64 -d > microsoft.gpg

Or even:
echo "<only the key block without headers>" | base64 -d > microsoft.gpg

base64 is part of the Essential set so you can rely on it existing.

Also will this work in both 32-bit and 64-bit versions across most distributions?

Yes. Both packages are available under the same name in both architectures, and across debian and ubuntu systems. I'd be surprised if there were any derived distros that deviated from the apt or gnupg names.

They're not called out in Chromium's deps despite using a similar system to us.

As I mentioned in the commit message, not having gpg installed is rare, but not impossible.

Sounds good, I'll merge this in for March as the February release is just wrapping up.

Thanks @fsateler!


Api docs appear to be down.

The main page  is up but all of the module links eg video appear to be dead.
This may be related to: https://github.com/rust-lang/rust/issues/34025
A possible work around would be generating the docs with rust 1.8.0 if this is the case.

Seconded, they're 404ing. Is there any other way to view the documentation? I'm new to Rust so it would be much appreciated

If you clone the repository you can CD to it and run cargo doc --open.
You'll need rust 1.8 or maybe a recent nightly though due to the bug
mentioned above.
On Jun 11, 2016 3:20 PM, "Stephan Lensky"<EMAIL_ADDRESS>wrote:
Seconded, they're 404ing. Is there any other way to view the documentation?
I'm new to Rust so it would be much appreciated
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/kali/opencv-rust/issues/22#issuecomment-225388586, or mute
the thread
https://github.com/notifications/unsubscribe/AA4Bq9SJnNaDtKB6nreqGwR-mkxSwPqhks5qKwqEgaJpZM4Isvdv
.

i'm trying a travis build with 1.8 to get the doc. It's building right now.

and it worked !
Leaving the issue open for when we will be able to switch the doc building back to stable.

Docs are now available at https://docs.rs/opencv/

Docs are down again: docs.rs failed to build opencv-0.15.1

Yep, I’m looking into it, thanks.

Fixed now


docs/readme:update travis CI url

Thanks for the pull request, and welcome! The MaidSafe team is excited to review your changes, and you should hear from @maqi (or someone else) soon.
If any changes to this PR are deemed necessary, please add them as extra commits. This ensures that the reviewer can see what has changed since they last reviewed the code. The way GitHub handles out-of-date commits, this should also make it reasonably obvious what issues have or haven't been addressed. Large or tricky changes may require several passes of review and changes.
Please see CONTRIBUTOR.md for more information.


Address sanitizer triggered in integration test

I'm just leaving this here:
https://github.com/mavlink/MAVSDK/pull/1146/checks?check_run_id=882470187

I believe this has been fixed in the meantime.


set up Code Coverage report

Using codeCov.io

This issue has been completed and linked to a pull request.


e2e test for search result

add a test to specifically validate whether the search results list renders with an expected search result.

Pull requests:

https://github.com/Senzing/entity-search-web-app/pull/45


Revert "Pass data stream to actions"

Revert it because of the DCO failure due to wrong github alias. will recreate it.
Reverts opensearch-project/index-management-dashboards-plugin#718

Codecov Report

Merging #724 (41520d3) into main (e658c76) will decrease coverage by 0.01%.
The diff coverage is n/a.

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
@@            Coverage Diff             @@
##             main     #724      +/-   ##
==========================================
- Coverage   58.87%   58.87%   -0.01%
==========================================
  Files         318      318
  Lines       10576    10575       -1
  Branches     1902     1901       -1
==========================================
- Hits         6227     6226       -1
- Misses       3832     3833       +1
+ Partials      517      516       -1

see 3 files with indirect coverage changes

Seems the DCO failure doesn't affect main branch, only affect backport. close revert PR


How to use it?

downloaded and installed in Atom.
In a new json file, selected the whole flat codes, and hit Package > Pretty JSON > Prettify, but nothing changed...
What's the right method?

Same here, it works if the file is saved with .json extension, I couldn't make it work with a just blank sheet (not saved file)

@i0sdev Just find out a way, select all the text and hit Ctrl+Shift+P then type "pretty" and choose Pretty Json: Prettify and it works

tried cmd+shift+p, a list popped out and hit any of Pretty Json, but not work, nothing changed :(
mac yosemite, atom

This plugin does not work on OSX EL Capitan following the provided instructions.

Doesn't work on OS X 10.11 in my experience either.

The README is Officially the worst documentation i have come across. finally figuring it out and it doesn't even work


RESTful url support

It seems to be that I might not be the only one that uses RESTful API for handling the changes emitted by x-editable. A few tweaks are necessary, but it would be perhaps beneficial to make this into a single config option:
$.fn.editable.defaults.restful = true;
Which would:

use this url for ajax: <url-option>/<pk>
use PATCH as the default HTTP verb
format params as: <name>=<value>
default to ajax contentType='application/json; charset=utf-8' and dataType='json'

Hi Peter, would you be willing to share how did you get this to format the parameters for json?
Also bump on this request.

https://github.com/vitalets/x-editable/issues/106#issuecomment-36163780

This work around turns this into the parameters from
{name: "Key", value: "Value", pk: 1}

to
{Key: "Value"}

Change the parameters as:
    params: function(params) {
    var rest_params = {}
    rest_params[params['name']] = params['value'];
    return JSON.stringify(rest_params);
  },


added confirm password #347

added confirm password functionality

@ankita685
please mention the assigned issue number

@ankita685 please mention the assigned issue number

#347

hwy please merge my pr under gssoc 2024

@ankita685
once checkout guidelines

@ankita685 you can once checkout guidelines

hey its neeb more than 5 daya now can you merge my pr

@ankita685
if the assignee of the issue #347 doesn't reply within two to three days, this pr will be merged.


Set up demo

We need to have a demo out there on the internet.

I believe this is done.
https://yahoo.github.io/navi/


Only me or gesture pinch zoom on tochpad is not working ?

Description
I don't know if the pinch zoom feature is there or not but it doesn't work on my laptop.

It only works in applications that support it (browsers, image viewers, etc). Whole-screen zooming isn't controlled with the touchpad, but with misc:cursor_zoom_factor.

even my chrome cannot use pinch zoom gesture :( . yeahh i has tried misc:cursor_zoom_factor and its only zoom my window. but thankyou @fufexan


What version of ImGui.NET would I use that would work on NET.Framework 4.0?

ImGui.NET targets .NET Standard 2.0, so .NET Framework 4.6.1 is the lowest version that supports it. You'd have to do a custom build to support anything lower than that. I'd recommend updating, or ideally even switching over to .NET Core.


Use a chain config for testing package chain setup

Summary
Add a new ChainConfig struct to create custom testing chains
Problem Definition
The testing pkg originally was intended for internal usage, but quickly external developers forked ibc-go to access the testing pkg. It was then redesigned and extended to allow app developer to make use of the package. They can do this by overiding the DefaultTestingAppInit variable in the testing package. The intention was that this would only need to be overriden once.
With more complex workflows, we see app developers wanting to run the testing pkg against two chains configured with different app.go's. See #3286
Proposal
Create a ChainConfig struct:
type ChainConfig struct {
    chainID  string
    appSetup func() (TestingApp, map[string]json.RawMessage)
}

This can then be used in NewCoordinator and eventually passed down into SetupWithGenesisValSet. This avoids using a global and allows for a cleaner API as the NewCoordinator call may look like this:
ibctesting.NewCoordinator(t, []ibctesting.ChainConfig{gaiaChainConfig, osmosisChainConfig})

For Admin Use

[ ] Not duplicate issue
[ ] Appropriate labels applied
[ ] Appropriate contributors tagged/assigned

May or may not be useful if we remove the coordinator, we can revisit after the majority of the testing pkg improvements are in place


itch.io: import icons from store page favicons

Many itch games have custom favicons on their store page, would it be possible to import them as icons in Playnite?

I already looked into it, it's not worth doing because fav icons are very low resolution usually.

sorry to hear that, I like to have custom icons in the details view, having an endless wall of pink itch logos isn't very appealing, and they wouldn't need to be particularly hires, but thanks anyway for the excellent piece of software!

You can give SteamGridDB plugin a try, they provide icons, although probably not for most smaller games that are only on itch.
As far as the size, from what I remember those fav icons were usually 32x32 and lower, which turns into colored blog when resized depending on a theme your are using. But that might be actually preferable to the default itch icon as you mentioned.
I'll leave this open in case anybody would want to implement this, but I can't see doing it myself in near future.

yes, I already use the SteamGridDB plugin, but as you noticed most games on itch.io are small productions that have no entries elsewhere. I use the default theme with the details view and icons are most useful for the list on the left side, where they are small, so even being 32x32 they don't get so blurry, and anyway blurry as they may be, they still provide some at-a-glance diversification between the various items of the list. thanks for keeping this open!

I think the 'icon support' added last patch should be optional, as the result is usually bad, thus should be a user choice.
I have Playnite fetching icons from the official store first, as for all other integrations that return an icon the result is good, and those official store icons will never mismatch to the wrong game. Now I have to specifically disable this (or change the provider order) just for itch.io, which is not ideal.

Most games on itch.io don't specify custom favicons, so the favicons are automatically generated from the cover, cropped and scaled and nearly always producing a bad result.  If there was a way to detect if the favicon was manually specified or automatically generated, then ideally the plugin would only return the manually specified ones, but if there is no way to determine this then I think there should be an option to not return an icon at all and let the next provider try.
For stats to justify this, my itch.io library is 97 items, of which only 9 did not get icons from other providers, and of those only 2 had a manually specified favicon from the official store.  Fetching icons only from the official store, only 22/97 are manually specified by the developer, or about 23%, where the remaining 77% look like crap.  Moreover, other providers offer better quality icons when a match can be found, which is most of the time for my library at least.

Incidentally, a much better source of icons for itch.io games is from the installed exe itself, though fetching the icon from the play action doesn't work currently, and even then there is no way to do this automatically for a whole list of titles.  I was thinking about writing an 'installed exe icon provider' at one point, for the metadata import system, but never had the time.

Hi, since I was the one who asked, I'd like of course to thank the author! Actually I already fixed everything by hand using a plugin with which I manually created the icons one by one using the cover images and cropping and resizing them as needed. But of course I would've liked this to be automated, and I'm glad it is now.
As for the icons not looking good, to me as I said it's a matter of having at least some quick visual indicator to distinguish between the games, rather than a column of default store icons. If it looks good, all the better, if not, it's ok to me.
Of course I understand Acru's POV and I hope that a switch to turn the feature off can be easily implemented too!

I did set the icons manually because there was no other way at the time and it seemed the author wasn't interested in trying the favicon route, otherwise I would've gladly saved the effort. 😅
I have about 7/800 games in my itch.io library and it took quite a lot to fix all of their icons, "luckily" I'm a bit on the OCD side so such things kinda relax me, but installing each one of them and extracting the .ico would've really been too cumbersome.
I hope the author will add a switch to disable the automation, so it'll fit your preferences too!

Done in 0ea976179b7099ae17d6cc617988cc22c3d4da75


Update (overwrite) action causes node failure in parallel

I'm working with a rather large data set where I have to test equality and update it. I do this in a parallel process. However, anytime it happens upon a record that already exists, it crashes the node (and ends the process)
Here's some repro code for you:
doc = data.frame(id = 1:100, text = rep("Hello!", 100))

update_fun = function(doc) {
  res = elastic("ip", "some", "thing")
  res %index% doc
}
# populate
l = foreach(i = 1:100, .packages = "elasticsearchr") %dopar% {
  update_fun(doc[i,])
}

# attempt update
l = foreach(i = 1:100, .packages = "elasticsearchr") %dopar% {
  update_fun(doc[i,])
}

The ELK server is pretty hefty (4cpu/8gb) and the docs are pretty small so I kind of expect a few hundred ops / sec should be breezy.
Any thoughts on what could be going on?

could be related to connections (unclosed)

I just noticed that even when a cluster is active, you can crash the sockets simply by calling %index% on already existing ids but not even working from within the context of the cluster.

Do you experience the same issue when using Elasticsearch's native REST API to update a document?


Windowed mode doesn't have window decorations on GNOME Wayland

SDL2.0.22 and later have SDL_HINT_VIDEO_WAYLAND_PREFER_LIBDECOR so this is probably the way.

It can look like that:

I've thought a bit about it, and to be honest, I don't see a fundamental problem in this situation. I mean, what do you need the window for, a close button? Do we really need a close button? Alt-F4 works, the "quit game" button works. Not sure we need more.

in KDE, you can close it from the bottom app list.
in GNOME, you can close it from the overview.
in Sway, you never have a close button anyway. I think other window manager would either rely on key binds to manipulate windows or draw their own decorations anyway.

The only problem might be that people aren't too used to it.

@slipher yes
@necessarily-equal the window decoration may be useful to move the window (on the screen, across screens).

SDL 2.0.22 brings this feature, and we have by default a working window decoration.

It works well with /r_noBorder too, so there isn't anything to do here, except to use a recent SDL.


remove pytest-black plug as its no longer maintained to keep CI green

remove pytest-black plug as its no longer maintained, and casuing error with our CI for python version 3.8 and above, #87

looks like i cannot merge from the UI as its pending for the build 3.7 and build 3.8, I think I might merge from command line

@bauerji Hi Jiri it looks like this PR is blocked because of the build 3.7 and build 3.8. Also seems like I cannot push to master because of some kind of branch protection. if you have some time, can you please review this and get it merged so CI is fixed. Thanks Thomas


Allow overriding of ArgoCD installPlanApproval

Sometimes it is useful to be able to set the upgrade approval to Manual
on the operator subscription.
What is this PR About?
Allow setting installPlanApproval in the helm values, defaulting to Automatic. This will let users specify Manual if required.
How do we test this?
Deploy the operator with installPlanApproval: manual and verify "Approval" is set to "Manual" in the Openshift console.
cc: @redhat-cop/day-in-the-life

hey @frankzhao , thanks for the PR! Can you bump the chart version in Chart.yaml please?🕺🏻

Thanks for the review! Bumped to 1.1.6.


BigQuery: listJobs is throwing IAE

Thanks for stopping by to let us know something could be better!
PLEASE READ: If you have a support contract with Google, please create an issue in the support console instead of filing on GitHub. This will ensure a timely response.
Please run down the following list and make sure you've tried the usual "quick fixes":

Search the issues already opened: https://github.com/googleapis/google-cloud-java/issues
Check for answers on StackOverflow: http://stackoverflow.com/questions/tagged/google-cloud-platform

If you are still having issues, please be sure to include as much information as possible:
Environment details

Specify the API at the beginning of the title (for example, "BigQuery: ...")
OS type and version: Ubuntu 19.04
Java version: openjdk version "1.8.0_222"
google-cloud-java version(s): com.google.cloud:google-cloud-bigquery:1.96.0

Steps to reproduce
Happens about 100 times while listing 65,000 jobs on a project.
Code example
bq.listJobs(...);
for (Job job : page.getValues()) { // Throws.
}

Stack trace
java.lang.IllegalArgumentException: Provided dataset is null or empty
        at com.google.common.base.Preconditions.checkArgument(Preconditions.java:142)
        at com.google.cloud.bigquery.TableId.<init>(TableId.java:67)
        at com.google.cloud.bigquery.TableId.fromPb(TableId.java:109)
        at com.google.cloud.bigquery.QueryJobConfiguration$Builder.<init>(QueryJobConfiguration.java:178)
        at com.google.cloud.bigquery.QueryJobConfiguration$Builder.<init>(QueryJobConfiguration.java:89)
        at com.google.cloud.bigquery.QueryJobConfiguration.fromPb(QueryJobConfiguration.java:903)
        at com.google.cloud.bigquery.JobConfiguration.fromPb(JobConfiguration.java:128)
        at com.google.cloud.bigquery.JobInfo$BuilderImpl.<init>(JobInfo.java:158)
        at com.google.cloud.bigquery.Job.fromPb(Job.java:485)
        at com.google.cloud.bigquery.BigQueryImpl$32.apply(BigQueryImpl.java:1127)
        at com.google.cloud.bigquery.BigQueryImpl$32.apply(BigQueryImpl.java:1124)
        at com.google.common.collect.Iterators$6.transform(Iterators.java:786)
        at com.google.common.collect.TransformedIterator.next(TransformedIterator.java:47)

External references such as API reference guides used

?

Any additional information below
Making sure to follow these steps will guarantee the quickest resolution possible.
Thanks!

@shevek i tried with below example. i am not able to reproduce that error which you are getting.
can you please share your sample code or  let me know if i am missing something ?
public void createQueryJob() {
    String datasetId = "test_list_dataset";
    String tableId = "test_list_table_a";
    String query =
        "SELECT StringField, BooleanField FROM " + TableId.of(datasetId, tableId).getTable();
    QueryJobConfiguration config =
        QueryJobConfiguration.newBuilder(query).setDefaultDataset(datasetId).build();
    Job job = bigQuery.create(JobInfo.of(JobId.of(), config));
    System.out.println(job.getStatus().getError());
  }

  public void listJob() {
    Page<Job> jobs = bigQuery.listJobs();
    for (Job job : jobs.getValues()) {
      System.out.println(job.getJobId());
    }
  }

Output:
JobId{project=xyz-devs, job=e5b3896b-413b-4bfc-912e-1fd88044d401, location=US}
JobId{project=xyz-devs, job=18862a4f-0ee8-4eb2-9313-ac586495ce74, location=US}
JobId{project=xyz-devs, job=1412dcc0-57e7-4648-ac2a-58e5e11ec722, location=US}
JobId{project=xyz-devs, job=3454dea4-bdae-4066-9f6f-d8e629bf281c, location=US}
JobId{project=xyz-devs, job=46a7a8a2-66e5-4c1c-a7af-e093084f9f5c, location=US}
JobId{project=xyz-devs, job=970e32c3-e745-457a-9afb-12d7d6ef4d63, location=US}

Our code is the same. We just ran much larger volume, possibly over a larger period of time, and possibly over a number of backend revisions. Is there any way to have a job without a default dataset? We're listing jobs submitted through the GUI and potentially by other means including unit tests, I don't know how the jobs were submitted, and the ones that throw exceptions I (obviously) can't inspect to figure that out.

@shevek without a default dataset, it will throw an error from backend.
i.e.
Caused by: com.google.api.client.googleapis.json.GoogleJsonResponseException: 400 Bad Request
{
  "code" : 400,
  "errors" : [ {
    "domain" : "global",
    "message" : "Table name \"test_list_table_a\" missing dataset while no default dataset is set in the request.",
    "reason" : "invalid"
  } ],
  "message" : "Table name \"test_list_table_a\" missing dataset while no default dataset is set in the request.",
  "status" : "INVALID_ARGUMENT"
}

@pmakani Does this imply that it's impossible to listJobs on a job which was submitted without a default dataset?


#543 Check each user profile against AD/AAD to determine which are active, output to csv

not sure why it can't be merged automatically, weird

Hey @kasperbolarsen I fixed the merge, I may have made some after merge tweaks in main that is not in your fork. Sometimes I miss things. Great new sample, should be live shortly 🎉✨

Thanks Paul 😊


I've noticed that when the qty actions becomes greater than 8 the order of the actions gets all jumbled up for no apparent reason.

I've noticed that when the qty actions becomes greater than 8 the order of the actions gets all jumbled up for no apparent reason.
@JChapman202 do you have any idea what might be causing this?

P.S Thanks for the great tool & if you have no idea no worries I'll just have to do some more digging.


[Copilot] buffer not 'buflisted' in vimagit buffer

Description
I use jreybert/vimagit. I can't manage to start and attach the copilot to magit buffer.
here is my copilot config
return {
	"zbirenbaum/copilot.lua",
	config = function()
		require("copilot").setup {
			suggestion = {
				auto_trigger = true,
				keymap = {
					accept = "<C-b>",
				},
			},
			filetypes = {
				["*"] = true,
			},
		}
	end
}

here is all of my nvim config
steps to reproduce
method 1

invoke vimagit by nvim -c MagitOnly
no copilot, checking the status gives the following

:Copilot

[Copilot] Not Started

:Copilot attach

[Copilot] buffer not 'buflisted'
[Copilot] to force attach, run ':Copilot! attach'

force attaching  the copilot brings it online and it works.
method 2

inside an existing neovim buffer that has Copilot online, open a new vimagit buffer with :Magit
copilot not attached, checking the status

:Copilot

[Copilot] Online
[Copilot] Disabled (buffer not 'buflisted')

Question
My real question is how to connect the copilot to a buffer that is not bufflisted. (I mean automatically)
do I need to make an autocmd?
I'm aware the correct set of action would be to do :set buflisted then :Copilot attach. but I'm
curious for a method to just attach the Copilot to any buffer.

any solutions?

Is there a way to run copilot also on buffers not buflisted?

Is there a way to run copilot also on buffers not buflisted?

As a workaround I do :Copilot! attach do force attach!


[BUG] TPROXY fails to add iptables rules if probe use a named port

Kube-OVN Version
v1.12.19
Kubernetes Version
v.1.9.6
Operation-system/Kernel Version
"Ubuntu 22.04.4 LTS"
5.15.0-116-generic
Description
The TPROXY feature is failing if a probe is using a named port instead of a port number
Steps To Reproduce

Deploy an application with a liveness probe with the following syntax:

livenessProbe:
  httpGet:
    port: http-healthz
    path: /livez
    scheme: HTTP
  initialDelaySeconds: 10
  periodSeconds: 10
  timeoutSeconds: 15
  successThreshold: 1
  failureThreshold: 8

This example is taken from cert-manager
Current Behavior
The probe fails and the tproxy logs reports the following error:
 exit status 2: iptables v1.8.7 (nf_tables): invalid port/service `http-healthz' specified

Expected Behavior
Probes should works. TPROXY should not use the port name but should try to infer the port number from the ports definition. Furthermore TPROXY just stop working and no further proxies are applied in the node.
Current workaround
Edit the deployment and use the port number

Also, I don't know if related, I see a lot of errors:
kube-system/kube-ovn-cni-hh5fb[cni-server]: E0723 12:23:43.303677 2724900 tproxy_tcp_linux.go:219] connection refused
kube-system/kube-ovn-cni-hh5fb[cni-server]: E0723 12:23:43.318113 2724900 tproxy_tcp_linux.go:219] connection refused
kube-system/kube-ovn-cni-hh5fb[cni-server]: E0723 12:23:44.413434 2724900 tproxy_tcp_linux.go:219] connection refused
kube-system/kube-ovn-cni-hh5fb[cni-server]: E0723 12:23:44.427963 2724900 tproxy_tcp_linux.go:219] connection refused
kube-system/kube-ovn-cni-hh5fb[cni-server]: E0723 12:23:44.442445 2724900 tproxy_tcp_linux.go:219] connection refused
kube-system/kube-ovn-cni-hh5fb[cni-server]: E0723 12:23:45.541091 2724900 tproxy_tcp_linux.go:219] connection refused
kube-system/kube-ovn-cni-hh5fb[cni-server]: E0723 12:23:45.556966 2724900 tproxy_tcp_linux.go:219] connection refused
kube-system/kube-ovn-cni-hh5fb[cni-server]: E0723 12:23:45.572167 2724900 tproxy_tcp_linux.go:219] connection refused
kube-system/kube-ovn-cni-hh5fb[cni-server]: E0723 12:23:46.685740 2724900 tproxy_tcp_linux.go:219] connection refused
kube-system/kube-ovn-cni-hh5fb[cni-server]: E0723 12:23:46.700273 2724900 tproxy_tcp_linux.go:219] connection refused
kube-system/kube-ovn-cni-hh5fb[cni-server]: E0723 12:23:47.814334 2724900 tproxy_tcp_linux.go:219] connection refused
kube-system/kube-ovn-cni-hh5fb[cni-server]: E0723 12:23:47.829467 2724900 tproxy_tcp_linux.go:219] connection refuse

Maybe a more verbose logs should ease the troubleshoot?

@changluyi can you take a look at this?

Will be fixed in master and v1.12.23.


[Improvement][Master] this expression which always evaluates "true"

*For better global communication, please give priority to using English description, thx! *
Please review https://dolphinscheduler.apache.org/en-us/community/development/issue.html when describe an issue.
Describe the question
this expression which always evaluates "true"
What are the current deficiencies and the benefits of improvement
this expression which always evaluates "true" ，removeTaskLogFile  method of org.apache.dolphinscheduler.service.process
Which version of DolphinScheduler:
-[1.3.5]
Describe alternatives you've considered
public void removeTaskLogFile(Integer processInstanceId) {
    LogClientService logClient = null;

    try {
        logClient = new LogClientService();
        List<TaskInstance> taskInstanceList = findValidTaskListByProcessId(processInstanceId);

        if (CollectionUtils.isEmpty(taskInstanceList)) {
            return;
        }

        for (TaskInstance taskInstance : taskInstanceList) {
            String taskLogPath = taskInstance.getLogPath();
            if (StringUtils.isEmpty(taskInstance.getHost())) {
                continue;
            }
            int port = Constants.RPC_PORT;
            String ip = "";
            try {
                ip = Host.of(taskInstance.getHost()).getIp();
            } catch (Exception e) {
                // compatible old version
                ip = taskInstance.getHost();
            }

            // remove task log from loggerserver
            logClient.removeTaskLog(ip, port, taskLogPath);
        }
    } finally {

            logClient.close();

    }
}

I'm sorry that I didn't understand what you wanted to express. Could you please explain it in detail?

I'm sorry that I didn't understand what you wanted to express. Could you please explain it in detail?

     if (logClient != null) {
            logClient.close();
        }

This judgment always comes back true, it is unnecessary

@lyyprean
I suggest to change it like this
LogClientService logClient = null;

        List<TaskInstance> taskInstanceList = findValidTaskListByProcessId(processInstanceId);

        if (CollectionUtils.isEmpty(taskInstanceList)) {
            return;
        }

  try {
     logClient = new LogClientService();
        for (TaskInstance taskInstance : taskInstanceList) {
            String taskLogPath = taskInstance.getLogPath();
            if (StringUtils.isEmpty(taskInstance.getHost())) {
                continue;
            }
            int port = Constants.RPC_PORT;
            String ip = "";
            try {
                ip = Host.of(taskInstance.getHost()).getIp();
            } catch (Exception e) {
                // compatible old version
                ip = taskInstance.getHost();
            }

            // remove task log from loggerserver
            logClient.removeTaskLog(ip, port, taskLogPath);
        }
    } finally {

           if (logClient != null) {
            logClient.close();
        }

    }
}

@lyyprean Welcome to submit a PR for code optimization.

@lyyprean Welcome to submit a PR for code optimization.

I have submitted it, thank you

@lyyprean Welcome to submit a PR for code optimization.


Humble debian package doesn't contain binaries

System Info

OS

Ubuntu 22.04

ROS version and installation type

humble binary

RTI Connext DDS version and installation type

6.0.1 debian packages

RMW version or commit hash

0.11.1-1jammy.20220520.011125

Bug Description
Installing ros-humble-rmw-connextdds does not install the librmw_connextdds.so library.
Expected Behavior
On galactic I can do the following:
docker run -e RTI_NC_LICENSE_ACCEPTED=yes ros:galactic bash -c "apt-get update && apt-get install -y ros-galactic-rmw-connextdds && find /opt/ros/galactic/lib -name 'librmw_connextdds*'"

and see
/opt/ros/galactic/lib/librmw_connextdds_common_pro.so
/opt/ros/galactic/lib/librmw_connextdds.so

How to Reproduce
But on humble the equivalent command
docker run -e RTI_NC_LICENSE_ACCEPTED=yes ros:humble bash -c "apt-get update && apt-get install -y ros-humble-rmw-connextdds && find /opt/ros/humble/lib -name 'librmw_connextdds*'"

yields an empty result.
Workarounds
I could build from source, but I would like not to.
Additional context
I wondered if it was a package install/configuration issue. But I manually downloaded ros-humble-rmw-connextdds and ros-humble-rmw-connextdds-common manually and inspected them, and neither contains any binaries.

I just verified that the Debian package now correctly contains the libraries, so I'm closing this issue.
To reproduce:
docker run -ti --rm osrf/ros:humble-desktop
apt-get update
apt-get install -y ros-humble-rmw-connextdds
source /opt/ros/humble/setup.bash
RMW_IMPLEMENTATION=rmw_connextdds ros2 run demo_nodes_cpp talker


The real issue only happened with select lists with many options like 400.
On a productive Angular Page, it took more than 20 seconds to select an element.
Fixed now.

In my opinion it is ready and can be merged and maybe also released as BugFix


Reserving error code for future use.

@suwc @curtisman please review error code id reservation.

:shipit:

@dotnet-bot test OSX osx_osx_debug_static please


Missing steps from Monitor lab

Module: 00
Lab/Demo: 11
Exercise: 03
Task: 01
Step: 05
Description of issue
The lab is missing the steps to select the VM and then click apply

The step referenced in the issue is neither required nor visible in the Azure dashboard, possibly due to ongoing A/B testing by the Azure team, which may have led to changes in some functions.


[Feature Request] Advanced settings documentation

Could you add in your in-app documentation, the advanced settings documentation for each report type?
For example, in the table report, I was not sure how to use the Relative Column Sizes.
Thank you!
Cobra

hi @Cobra5197 ,
Thanks for reminding us of this one. We've now got documentation available for this on the project wiki:
https://github.com/nielsdejong/neodash/wiki/Reports
Hope that is what you needed,
Niels

Hi @nielsdejong,
Yeah, it's perfect!
Thank you,
Cobra


Remove chain overlay on every token icon in iconassets

After this issue:

[ ] #3542

iconassets-master.zip

Have pushed to https://github.com/AlphaWallet/iconassets/tree/with-chain-overlay-removed so I might just update the code to

@colourfreak I'm updating the code to handle this but just noticed that they all seem to be 80x80px, would be better if they are 120x120 (the current version with the chain overlays are 120x120). But we can try these out first. Code isn't affected by this. If you want to update this, would you drop me a zip file here again?

@colourfreak I'm updating the code to handle this but just noticed that they all seem to be 80x80px, would be better if they are 120x120 (the current version with the chain overlays are 120x120). But we can try these out first. Code isn't affected by this. If you want to update this, would you drop me a zip file here again?

This is very bad. I need to save them again and rename them all from original names to logo.png (folder by folder)
Very time-consuming, so please double-check if there is anything else you might miss.

If you can give them file names that matches the contract names, I can rename them for you too.
These are 128x128:
0x000004F5A30d9394316782AC3EE971546bcAa682/logo.png
0x00000D5B7AaBD11768CC14f8474e5B34f8D39F2B/logo.png
0x000080C09264F55160b719d6700424b877C8d977/logo.png
0x0000AD880efD1690EFd57Da2929bEA1d6eF221Ec/logo.png
0x117CC8a04eF99FB1cC566919502D7a79dE578EF9/logo.png
0xc987b821048EdcB9f5aa126125b95E44e2532A6A/logo.png
These are 47x47:
0x0000853AbE6Fa93f276b62F6984B75Ff2f9dC30E/logo.png
0xa567f5A165545Fa2639bBdA79991F105EADF8522/logo.png
These are 226x226:
0x6c4a441C099171B2279745fce535B89508D12A7a/logo.png
These are 200x200:
0x7714f320Adca62B149df2579361AfEC729c5FE6A/logo.png
These are 50x50:
0x8A953CfE442c5E8855cc6c61b1293FA648BAE472/logo.png
These are 119x119:
0xc56d17dD519e5eB43a19C9759b5D5372115220BD/logo.png

A couple of them are still not 120x120.
These are 128x128:
0x000004F5A30d9394316782AC3EE971546bcAa682/logo.png
0x00000D5B7AaBD11768CC14f8474e5B34f8D39F2B/logo.png
0x000080C09264F55160b719d6700424b877C8d977/logo.png
0x0000AD880efD1690EFd57Da2929bEA1d6eF221Ec/logo.png
0x117CC8a04eF99FB1cC566919502D7a79dE578EF9/logo.png
0xc987b821048EdcB9f5aa126125b95E44e2532A6A/logo.png
These are 47x47:
0x0000853AbE6Fa93f276b62F6984B75Ff2f9dC30E/logo.png
0xa567f5A165545Fa2639bBdA79991F105EADF8522/logo.png
These are 226x226:
0x6c4a441C099171B2279745fce535B89508D12A7a/logo.png
These are 200x200:
0x7714f320Adca62B149df2579361AfEC729c5FE6A/logo.png
These are 50x50:
0x8A953CfE442c5E8855cc6c61b1293FA648BAE472/logo.png
These are 119x119:
0xc56d17dD519e5eB43a19C9759b5D5372115220BD/logo.png

A couple of them are still not 120x120.
These are 128x128:
0x000004F5A30d9394316782AC3EE971546bcAa682/logo.png 0x00000D5B7AaBD11768CC14f8474e5B34f8D39F2B/logo.png 0x000080C09264F55160b719d6700424b877C8d977/logo.png 0x0000AD880efD1690EFd57Da2929bEA1d6eF221Ec/logo.png 0x117CC8a04eF99FB1cC566919502D7a79dE578EF9/logo.png 0xc987b821048EdcB9f5aa126125b95E44e2532A6A/logo.png
These are 47x47:
0x0000853AbE6Fa93f276b62F6984B75Ff2f9dC30E/logo.png 0xa567f5A165545Fa2639bBdA79991F105EADF8522/logo.png
These are 226x226:
0x6c4a441C099171B2279745fce535B89508D12A7a/logo.png
These are 200x200:
0x7714f320Adca62B149df2579361AfEC729c5FE6A/logo.png
These are 50x50:
0x8A953CfE442c5E8855cc6c61b1293FA648BAE472/logo.png
These are 119x119:
0xc56d17dD519e5eB43a19C9759b5D5372115220BD/logo.png

I don't know about them. They were uploaded by James. Do you want me to research for better quality and size?

A couple of them are still not 120x120.
These are 128x128:
0x000004F5A30d9394316782AC3EE971546bcAa682/logo.png 0x00000D5B7AaBD11768CC14f8474e5B34f8D39F2B/logo.png 0x000080C09264F55160b719d6700424b877C8d977/logo.png 0x0000AD880efD1690EFd57Da2929bEA1d6eF221Ec/logo.png 0x117CC8a04eF99FB1cC566919502D7a79dE578EF9/logo.png 0xc987b821048EdcB9f5aa126125b95E44e2532A6A/logo.png
These are 47x47:
0x0000853AbE6Fa93f276b62F6984B75Ff2f9dC30E/logo.png 0xa567f5A165545Fa2639bBdA79991F105EADF8522/logo.png
These are 226x226:
0x6c4a441C099171B2279745fce535B89508D12A7a/logo.png
These are 200x200:
0x7714f320Adca62B149df2579361AfEC729c5FE6A/logo.png
These are 50x50:
0x8A953CfE442c5E8855cc6c61b1293FA648BAE472/logo.png
These are 119x119:
0xc56d17dD519e5eB43a19C9759b5D5372115220BD/logo.png

I don't know about them. They were uploaded by James. Do you want me to research for better quality and size?

Oh. Never mind then. Thanks.

Oh. Never mind then. Thanks.


Use provided systemctl is-active command in status_wireguard

Notice: I'm just a passer-by that noticed some areas that could be improved -- I only ran the single-line modification I made independently from the script, i.e. in my shell -- I don't have the necessary software to run the whole script.

Please test this PR before you accept it.

status_wireguard() previously asked systemctl for the $SERVICE_NAME variable status, and used a silent grep to find out whether or not the service was active.
This commit relies on systemctl only, whilst preserving the behavior of silencing output from stderr, and stdout, by redirecting both streams to /dev/null.

Good to hear, it's been a pleasure!


Ip address addition

closing this request as IP address have been integrated in https://github.com/daxa-ai/pebblo/pull/466


[Question] How can we supply an alternative reporter?

Hey Alex,
We don't use prometheus, but have a custom metrics aggregator. I already have a reporter library that will connect to that aggregator and push metrics to it. I have two possible integration paths:

Reuse the PromEx plugs with our custom reporter. That way, we get the metrics emitting, get to use our own reporter, but also lose the dashboards.
Let PromEx do everything with the ability to supply a custom reporter.

I've read through the docs and have been looking through the code a bit to gather insights to these two integration paths. Would you happen to have some docs that explain either of these paths in more detail? Or do you have insights into which path you think would be best for our use case?
Thanks for the help and the library!

This is an interesting question, and something that I battled with when I started writing PromEx.
Currently there is no way to swap reporters. Prometheus is the only option supported by PromEx. The reason for this being that the dashboards that are included with PromEx and uploaded to Grafana are coupled to the metrics that are generated from the plugins. I craft each of the PromQL queries for each of the dashboard panels to fit the metrics that I collect in the plugins.
It would be possible to support say InfluxQL for each panel, but then the logic for rendering each dashboard grows significantly given that I would then need to write a PromQL query and an InfluxQL query for each panel and templatize them. If you then add any additional query languages that increases the level of effort. This route would be a lot of work, and would add a lot of complexity to the project unfortunately so I don't think I will go this route.
There are a couple of options here that I can think of though that may be of use to you. For one, a lot of other monitoring solution support reading from prometheus sources and inserting them into their own timeseries databases (one of the reasons why I adopted Prometheus specifically). For example, InfluxDB supports remote read&write from Prom DBs (https://www.influxdata.com/blog/influxdb-now-supports-prometheus-remote-read-write-natively/). So in theory you could have your metrics solution do something similar.
Another option would be for me to add something to PromEx to "export" all of the metrics definitions that I provide in an agnostic way so that you can do what you want with them outside of a PromEx context. The issues there would be that some of the plugins (for example the BEAM plugin) set up their own cron jobs to poll things like memory usage, atom counts, ets tables, etc. So something would need to execute those cron functions else those telemetry metrics handlers would never be triggered.
All this to say that there is nothing currently in PromEx to support what you are asking for (unfortunately). But it is an area that I am thinking about and hopefully will have some ideas down the road :).
If you want to hop on a Zoom call or something in the near future to dig deeper into this, I would be very interested!

Thanks for the context, Alex. We're able to punt on this need in the short term, so in the future, I'll hack my way around to see how to reuse some of the plugins independently. The easiest/ideal path integration for us would be to reuse your plugins and bypass both prometheus and the grafana dashboard population. I understand that's violating some key design decisions.
Thanks again for the context and I hope we'll circle back again soon.

Sounds good! Sorry I couldn't have a better answer for you...but I will keep this in mind because it has come up a few times now.


Unable to run python

Hi i am on Win7. The python is in PATH and i start from console.

Running as atom . I presume?

Closing due to age/no response/lack of information


upgrading the installing guided to a set easy setup on the readme.md

i want update the installation guide with step to eg
installing using virtual environments virtual and anacondas
this issues should be assigned to me and label hacktober let me wok on it

Nice

Still waiting for it to be assigned before I start working on it @geekan

Since no further responses are needed, we will close it. Please reopen it if necessary.


paragraph and subparagraph formatting

Added paragraph and subparagraph formatting style according to the official D&D books.

I see lots of examples of Paragraph, but do you have an example from one of the core 3 books for subparagraph?

I added supbaparagraph option mostly for consistency. Though it looks like core books don't use it, it might be as well be defined if somebody want to use it.

Here are the "standard" definitions for paragraph and subparagraph from the titlesec docs:
\titleformat{\paragraph}[runin]          {\normalfont\normalsize\bfseries}{\theparagraph}{1em}{}
\titleformat{\subparagraph}[runin]    {\normalfont\normalsize\bfseries}{\thesubparagraph}{1em}{}

\titlespacing*{\paragraph}                     {0pt}{3.25ex plus 1ex minus .2ex}{1em}
\titlespacing*{\subparagraph}    {\parindent}{3.25ex plus 1ex minus .2ex}{1em}

Here is your proposed change, rearranged to compare with the defaults.
\titleformat{\paragraph}[runin]         {\normalfont\bfseries\slshape\normalsize}{\theparagraph}{0em}{}[.]
\titleformat{\subparagraph}[runin]   {\normalfont\itshape\normalsize}{\thesubparagraph}{0em}{}[.]

\titlespacing{\paragraph}         {\parindent}{\parskip}{\wordsep}
\titlespacing{\subparagraph}   {\parindent}{\parskip}{\wordsep}

The only difference between the default classes is that subparagraph has the \parindent for the left spacing vs 0pt for paragraph. Looking at this, it looks like the core books use subparagraph instead of paragraph. The only part that is missing is \slshape from both. You have this in paragraph, and I would suggest switching subparagraph from \itshape to \slshape as well
For the title spacing, I would propose keeping the left side of the title the same as the default, 0pt for paragraph and \parskip for subparagraph. This will have the smallest change on existing code. Anyone who wants to move to the style closer to the core 3 books can change their paragraphs to subparagraphs, and those who expect paragraph to have no indent do not suddenly have their document typeset differently. On the right, \wordsep looks pretty close to perfect
For the top spacing, \parskip looks just slightly too big, but the solution is slightly more complex. Looking at the books, there does not seem to be any change in line spacing from one paragraph to the next. This would suggest using 0pt instead of \parskip, but that creates an issue of the bolded text getting a bit cramped. That points to another issue in the package as a whole. It looks like the line spacing might be slightly too close together compared to the books. I think the solution there is to adjust \linespread.
https://en.wikibooks.org/wiki/LaTeX/Text_Formatting#Line_Spacing
As a tangentially related issue, it might be worth putting a \quad after \theparagraph \thesubparagraph so it can handle the 1 person out there who wants numbers before their paragraph titles.
What do you think?

See updated commit.


Mat-tree with icons

feature request
Example mat-tree with icons.
Could you please provide an example of mat-tree with icons, and a datasource coming from a service? An example on Stackblitz would be great.

Please keep GitHub issues for bug reports / feature requests. Better avenues for troubleshooting / questions are stack overflow, gitter, mailing list, etc.


Bug Report

Community Note

Please vote on this issue by adding a 👍 reaction to the original issue to help the community and maintainers prioritize this request
Please do not leave "+1" or "me too" comments, they generate extra noise for issue followers and do not help prioritize the request
If you are interested in working on this issue or have submitted a pull request, please leave a comment

Versions
Accelerator version 1.01
Description
The first issue is proberly not a bug but a problem in the Westeurope datacenters.
Error is:
"##[error]The job running on agent agent-nalz-mgmt-002 ran longer than the maximum time of 60 minutes. For more information, see https://go.microsoft.com/fwlink/?linkid=2077134
module.virtual_network_gateway["primary"].azurerm_virtual_network_gateway.vgw: Still creating... [13m40s elapsed]
module.virtual_network_gateway["primary"].azurerm_virtual_network_gateway.vgw: Still creating... [13m50s elapsed]
module.virtual_network_gateway["primary"].azurerm_virtual_network_gateway.vgw: Still creating... [14m0s elapsed]
module.virtual_network_gateway["primary"].azurerm_virtual_network_gateway.vgw: Still creating... [14m10s elapsed]
module.virtual_network_gateway["primary"].azurerm_virtual_network_gateway.vgw: Still creating... [14m20s elapsed]
##[error]The operation was canceled.
"
Full Raw log is available if needed.
But the Canceling of the opperation set a second problem.
If i try to resart the pipline i get:
"╷
│ Error: Error acquiring the state lock
│
│ Error message: state blob is already locked
│ Lock Info:
│   ID:        d70b5e83-95e0-2833-b299-6828cfba554e
│   Path:      mgmt-tfstate/terraform.tfstate
│   Operation: OperationTypeApply
│   Who:       root@SandboxHost-638429073181065576
│   Version:   1.7.2
│   Created:   2024-02-07 13:03:33.604928853 +0000 UTC
│   Info:
│
│
│ Terraform acquires a state lock to protect the state from being written
│ by multiple users at the same time. Please resolve the issue above and try
│ again. For most commands, you can disable locking with the "-lock=false"
│ flag, but this is not recommended.
╵
##[error]Script failed with exit code: 1
"
So after the timeout on the first run the blob is in lock state.

Start the pipeline

This Issue is in our backlog to solve the second point: https://github.com/Azure/alz-terraform-accelerator/issues/51

Closing as a duplicate for now in deference of #51

Sorry Jared didn't so the issue in the backlog my fault.
But what about the timeout is there something that can be changed ?
And what is the workaround to remove the lock ?

Sorry Jared didn't so the issue in the backlog my fault.
But what about the timeout is there something that can be changed ? And what is the workaround to remove the lock ?

For this timeout this limit can be increased by setting up billing and buying a concurrent run: https://learn.microsoft.com/en-gb/azure/devops/pipelines/process/phases?view=azure-devops&tabs=yaml#timeouts
To unlock the state file, you need to got to the blob in the storage account the remove the lease.


Skeleton doesn't hide after API Call (Coroutine)

I have an issue with this library:
I call an external API via Coroutines and fetch the data. When I receive the data I want to hide the skeletons but it doesn't work. My code below:
CoroutineScope(Dispatchers.IO).launch {
                                              val response =
                                                  service.fetchResults(finalUrl)
                                              withContext(Dispatchers.Main) {
                                                  try {
                                                      if (response.isSuccessful) {
                                                          textViewTitle.hideSkeleton()

                                                      }
                                                 } catch (e: HttpException) {
                                                      Log.d("TAG", "error ")
                                                  } catch (e: Throwable) {
                                                      Log.d("TAG", "error" + e)
                                                  }
                                                  }

                                              }
                                          }

Any ideas?

Hi @billypap1 👋 ,
I've tried hiding the skeleton from a coroutine and everything has worked well!.
private fun getJourneyDetail() {
    CoroutineScope(Dispatchers.IO).launch {
        delay(4000)
        withContext(Dispatchers.Main) {
            onSuccess()
        }
    }
    //handler.postDelayed({ onSuccess() }, DEFAULT_DELAY)
}

private fun onSuccess() {
    bodyBinding.clBody.visible()
    headerBinding.clHeader.hideSkeleton()
    showInformation(args.journey)
}

Can you provide more information about your code? please.
Make sure your response is successful and has no errors, btw.

Hello @ericktijerou , to reproduce better the error:

Create a textview (exampleIDtextview),
perform a CoroutineScope call
append the result in this textview  (exampleIDtextview.text = "test")
hide the skeleton (exampleIDtextview.hideSkeleton())

The issue is happening when I add the result on textview and then hide the skeleton. If the element is static i don't have any issue.

@ericktijerou Any info?


Avoid N+1 queries by including snapshots

Avoid N+1 queries by including snapshots. v_total_snapshots needs the snapshots to be loaded

@miq-bot assign @kbrock

@kbrock so this originates in templates list, when I select 1 templates and choose provision VM.
With 70k templates this was doing 70k SQL queries, so it took like 8 minutes to load the VM provision workflow page.
But for 70k images, each :include takes about  6s to load, which results in like 30s and then create_hash_struct_from_vm_or_template take 1ms, so 70s for 70k templates.
So this still takes about 1.5 minute to load.

So it's pretty bad we need to load 70k AR object + N*70k included objects. Just to verify if 1 template is allowed. :-) So a bigger rewrite will be needed in this area I suppose. :-)

A few thoughts from chat with ladas:
may be able to use select() to reduce a few of the N+1 queries. e.g.:
Vm.select(:name, :v_total_snapshots).each { |v| puts "#{v.name}: #{v.v_total_snapshots}" }.size

allowed_templates.include?() seems to be loading many templates. would be nice to just load one.
The method create_hash_struct_from_vm_or_template sure does a lot. would be nice to move the select into there. It also is looking up blue_folder - which currently is quite slow.

The problem is we don't have a good way of adding v_total_snapshots to the SELECT clause.
Think refactoring may allow us to get the includes closer to where it is used, and then we should be able to add to the SELECT

this PR fixes just the n+1, rest is covered in https://github.com/ManageIQ/manageiq/issues/14050


Feature request: extend scope of "python.tensorBoard.logDirectory" and/or support variable substitution

TLDR: "python.tensorBoard.logDirectory" is user-level only and does not seem to support variable substitution which, especially in combination, makes it very hard to use productively.
I would love to add my thoughts to https://github.com/microsoft/vscode-python/discussions/16073 or https://github.com/microsoft/vscode-python/issues/17222, but I missed them over the fall and now they are both closed.
My main argument is that not only should "python.tensorBoard.logDirectory" be a workspace setting, but also that it makes little sense as a user setting at all - should it remain a user setting, I would be surprised if many people successfully used it who are using more than one workspace. This is because the TensorBoard log dir is set

either relatively, so it depends on the current working directory,
or absolutely, so it has be fully defined set in the workspace code.

The problem with 1. is obvious - even the same code, run in two different workspaces, will produce two different directories. This could be taken care of by variable substition, such as "python.tensorBoard.logDirectory": "${workspaceFolder}/results/tensorboard", but I seem to be unable to pull this off:

It seems like "Visual Studio Code supports variable substitution in ... some select settings" does not include this setting.
The problem with 2 is that, if your workspace code (the writer) uses a fixed TensorBoard logdir location, you have no way of ensuring (in the workspace) that the effective VS Code setting (the reader) is in sync with that. I am not sure defining a workspace-level launch configuration (for the writer) pulling in a user-level logdir location setting is very popular..

@joyceerhl would you happen to remember if there was a reason why "python.tensorBoard.logDirectory" is user level instead of workspace?

@bersbersbers linked the issue and discussion where we mentioned waiting for feedback before making it a workspace setting because we'd need to account for the multi-root workspace case.

Variable substitution should be easy to fix. This code here:
https://github.dev/microsoft/vscode-python/blob/e157943a1dc7edfff238e1acdf7e57e3dd6558fc/src/client/tensorBoard/tensorBoardSession.ts#L342
Just needs to use the config service instead of getting the value directly.

I also need these features: https://github.com/microsoft/vscode-jupyter/issues/9677
This is my attempt, including variable and relative path resolution: https://github.com/PillarsZhang/vscode-python/commit/182af46a33ecc5cc5453d8dcc5f0d62bc52899ac
I also hope to set logdir separately for each workspace, which is more flexible.

@DonJayamanne is there any roadblocks to implementing this feature? Especially the PR from @PillarsZhang https://github.com/PillarsZhang/vscode-python/commit/182af46a33ecc5cc5453d8dcc5f0d62bc52899ac

The fork from @PillarsZhang wouldn't merge easily, so I implemented the same fix on a new fork and created pull request 20103 .
Sorry about the spam here; my experience is limited to Git

are there some verification steps that we can follow to make sure that this is resolved?


Getting started tutorial: no method write() in PSR-7's ResponseInterface

In the getting started tutorial, this sample code is shown:
$app->get('/', function ($request, $response, $next) {
    $response->write('Hello, world!');
    return $response;
});

I don't think that's valid as the Psr\Http\Message\ResponseInterface has no write() method.
It should be changed to $response->getBody()->write('Hello, world!');
(If the PSR-7 http implementations are Slim's request and response, this can work, as they added this non-PSR-7's method into their Response implementation, but it doesn't seem correct to me as the router's callback expects a response of the type Psr\Http\Message\ResponseInterface, thus we are violating the contract)

The actual response is Zend\Stratigility\Http\Response which implements the Psr\Http\Message\ResponseInterface and the Zend\Stratigility\Http\ResponseInterface. The last one implements the write() method.
Looking at the Slim docs and code, I think SLim works the same. Only the actual response is a Slim/Http/Response.
I'm guessing the reason to choose the Psr\Http\Message\ResponseInterface is to keep it compatible with other middleware. If you force the Zend\Stratigility\Http\ResponseInterface you would loose that. The write() method is a nice extra with some extra benefits since it check if it is allowed to write.
I guess you could change the docs so the contract is not violated and mention you can use Zend\Stratigility\Http\ResponseInterface methods as well.

I was supposing that Zend Diactoros' interfaces were used, for which the response interface does not include that extra write() method. I didn't know Zend Stratigility's interfaces are actually being used.
In any case that should be updated as it breaks the contract and is a bad practice, also it breaks the whole idea to have framework-agnostic middlewares through PSR-7's http abstraction.

@mdecaffmeyer is correct; the examples should be showing PSR-7 usage, not Stratigility-specific stuff. We can accommodate any PSR-7-based middleware.


Folder duplication in tree view when saving file with hotkeys ctrl+s

Editing a *.coffee file

Ctrl - S to save modifications

Some folder duplicate in the tree view.

Expected behavior:  Save the active file
Actual behavior: Save the active file and duplicate folders in tree view
atom-version: 1.5.4  (but i've seen this behavior on earlier releases)
I reproduce it also in latest beta version, in both cases with atom --safe the problem persisted
apm --version

I'm running on ubuntu 14.04

If you need any additional info I'll be glad on attaching it.
thanks,

I' ve found what causes the duplication. But don't know how to fix it.  Duplication occurs when the inject function of Gulp is triggered.   Any help?
gulp.task('injects', function () {
  var bfiles = []
  bowerFiles().forEach(function(file){
    bfiles.push('dist/vendor/' + file.match(/\/([\w,\-,\_]+\.(min.)?(?:js|css|jquery.js))/)[1])
  });
  var target = gulp.src('app/index.jade'),
    sources = gulp.src(['./dist/**/*.js','!./dist/vendor/*.js','!./dist/node_modules/**/*.js','./dist/styles/**/*.css'], {read: false});
  return target.pipe(inject(sources, {ignorePath: 'dist'}))
    .pipe(inject(gulp.src(bfiles, {read: false}), {name: 'bower', ignorePath: 'dist'}))
    .pipe(gulp.dest('app/'));
});

@ponyesteves This only happens when you have the "Collapse Directories" option enabled and the issue is being tracked at atom/tree-view#705, so please subscribe there for updates.

Thank  @50Wliu for you're reply!
It's already fixed  but not merged yet!
I'll suscribe to atom/tree-view#705


Are rust functions still allowed?

Is this even possible to do Rust functions?
The blog says to do functions:create --language=rust but this fails.

closed:
Needed to add
[context.dev]
environment = { NETLIFY_EXPERIMENTAL_BUILD_RUST_SOURCE = "true" }

to netlify.toml and select the serverless functions option to get a rust example


Add missing dockerfile instructions

Add all the new Dockerfile instructions to the dockerfile language definition.
Updated the example to include the new instructions, and flags on instructions.

Thanks a lot for the update!


Pull request to trigger Action that calls Vester to visually test the branch attempting to merge

It's expected to warn that the changes of this branch alter the visuals of the resulting application, therefore vester_visual_testing's visuals will be altered in case of a merge with visually_altering_changes.

As expected Vester warns that this branch's changes alter the visuals of the resulting application, in this example case the underline of Hyperlinks is missing when hovered. Resulting images taken from Vester API page


As service provider I need to specify multiple locations for md:SingleLogoutService and md:AssertionConsumerService elements in SAML2

Problem/motivation
We have multilingual (negotiated by URL prefixes in Drupal 8 CMS) site with URLs:

www.example.com
www.example.com/fi
www.example.com/sv
www.example.com/mypage
www.example.com/fi/mypage
www.example.com/sv/mypage

We use samlauth module that basically glues this PHP library to the CMS.
Ideally we would not specify each language as separate SPs for the IdP. Ideally we would specify the endpoints of each language.
After reading through documentation for metadata document I found out that you may specify multiple elements for <md:SingleLogoutService> and <md:AssertionConsumerService> (that contains Location attribute).
These elements allows us to specify multiple endpoints for single SP and therefore allowing us to specify endpoints for each enabled language in Drupal.
Proposed solution
Generate <md:AssertionConsumerService> and <md:SingleLogoutService> elements to the metadata while looping each given URL.
So far, testing has proven that it works smoothly with Shibboleth IdP.
Drupal issue pending for this issue
After there is a way for specifying this, we can move on with the issue in the module: https://www.drupal.org/node/2848809

Of course another solution would be override the parts of generation in the Drupal implementation.


21W.732-5 fails to publish

Steps to Reproduce

visit https://ocw-studio.odl.mit.edu/sites/21w-732-5-introduction-to-technical-communication-explorations-in-scientific-and-technical-writing-fall-2006/
publish the course to staging

Expected Behavior
it publishes
Actual Behavior
it fails to publish
Stacktrace
https://cicd.odl.mit.edu/teams/ocw/pipelines/draft/jobs/build-ocw-site/builds/3?vars.site="21w-732-5-introduction-to-technical-communication-explorations-in-scientific-and-technical-writing-fall-2006"

So I looked into this, and this particular course seems to have had a bad import back in Jan. 28, 2021 and for some reason it was not updated by subsequent imports.  The short_id property was not an actual short ID, but something we did early on which is simply truncate the slug to 100 characters.  I manually corrected this particular course, and it will publish now.  I did some further investigation into other courses that may have bad data hanging around.  One thing I noticed about this course was that it had no menu or metadata imported, so I ran a query for the total amount of Website objects in production vs the total about WebsiteContent objects that are of the types sitemetadata and navmenu:
In [2]: from websites.models import *

In [3]: course_starter = WebsiteStarter.objects.get(name="ocw-course")

In [4]: Website.objects.filter(starter=course_starter).count()
Out[4]: 2673

In [5]: WebsiteContent.objects.filter(type="sitemetadata").count()
Out[5]: 2651

In [6]: WebsiteContent.objects.filter(type="navmenu").count()
Out[6]: 2649

What this shows us is that there are 22 course sites without sitemetadata content, and 24 sites without a navmenu:
Sites without sitemetadata:
In [11]: for site in Website.objects.filter(starter=course_starter):
    ...:     count = WebsiteContent.objects.filter(type="sitemetadata", website=site).count()
    ...:     if count == 0:
    ...:         print(site.name)
    ...:
8-701-introduction-to-nuclear-and-particle-physics-spring-2004
6-803-the-human-intelligence-enterprise-spring-2006
21h-244-imperial-and-revolutionary-russia-culture-and-politics-1700-1917-fall-2012
6-172-performance-engineering-of-software-systems-fall-2010
21w-780-communicating-in-technical-organizations-fall-2001
6-094-introduction-to-matlab-january-iap-2010
5-73-introductory-quantum-mechanics-i-fall-2002
18-s34-problem-solving-seminar-fall-2007
6-803-the-human-intelligence-enterprise-spring-2002
17-561-european-politics-fall-2011
17-565-israel-history-politics-culture-and-identity-spring-2011
21a-265-food-and-culture-spring-2011
1-258j-public-transportation-systems-spring-2010
18-312-algebraic-combinatorics-spring-2009
14-381-statistical-method-in-economics-fall-2013
18-435j-quantum-computation-fall-2018
21a-01-how-culture-works-fall-2012
22-01-introduction-to-nuclear-engineering-and-ionizing-radiation-fall-2015
24-118-paradox-infinity-spring-2013
7-016-introductory-biology-fall-2014
5-310-laboratory-chemistry-fall-2017
6-436j-fundamentals-of-probability-fall-2008

Sites without navmenu:
In [12]: for site in Website.objects.filter(starter=course_starter):
    ...:     count = WebsiteContent.objects.filter(type="navmenu", website=site).count()
    ...:     if count == 0:
    ...:         print(site.name)
    ...:
8-701-introduction-to-nuclear-and-particle-physics-spring-2004
6-803-the-human-intelligence-enterprise-spring-2006
introduction-to-nuclear-engineering-and-ionizing-radiation
21h-244-imperial-and-revolutionary-russia-culture-and-politics-1700-1917-fall-2012
18s097-introduction-to-metric-spaces-iap-2021
6-172-performance-engineering-of-software-systems-fall-2010
21w-780-communicating-in-technical-organizations-fall-2001
6-094-introduction-to-matlab-january-iap-2010
5-73-introductory-quantum-mechanics-i-fall-2002
18-s34-problem-solving-seminar-fall-2007
6-803-the-human-intelligence-enterprise-spring-2002
17-561-european-politics-fall-2011
17-565-israel-history-politics-culture-and-identity-spring-2011
21a-265-food-and-culture-spring-2011
1-258j-public-transportation-systems-spring-2010
18-312-algebraic-combinatorics-spring-2009
14-381-statistical-method-in-economics-fall-2013
18-435j-quantum-computation-fall-2018
21a-01-how-culture-works-fall-2012
22-01-introduction-to-nuclear-engineering-and-ionizing-radiation-fall-2015
24-118-paradox-infinity-spring-2013
7-016-introductory-biology-fall-2014
5-310-laboratory-chemistry-fall-2017
6-436j-fundamentals-of-probability-fall-2008

Printing the short_id property of the courses in the above list reveals:
In [13]: for site in Website.objects.filter(starter=course_starter):
    ...:     count = WebsiteContent.objects.filter(type="navmenu", website=site).count()
    ...:     if count == 0:
    ...:         print(site.short_id)
    ...:
8-701-introduction-to-nuclear-and-particle-physics-spring-2004
6-803-the-human-intelligence-enterprise-spring-2006
22.01-fall-2021
21h-244-imperial-and-revolutionary-russia-culture-and-politics-1700-1917-fall-2012
18.s097-iap-2021
6-172-performance-engineering-of-software-systems-fall-2010
21w-780-communicating-in-technical-organizations-fall-2001
6-094-introduction-to-matlab-january-iap-2010
5-73-introductory-quantum-mechanics-i-fall-2002
18-s34-problem-solving-seminar-fall-2007
6-803-the-human-intelligence-enterprise-spring-2002
17-561-european-politics-fall-2011
17-565-israel-history-politics-culture-and-identity-spring-2011
21a-265-food-and-culture-spring-2011
1-258j-public-transportation-systems-spring-2010
18-312-algebraic-combinatorics-spring-2009
14-381-statistical-method-in-economics-fall-2013
18-435j-quantum-computation-fall-2018
21a-01-how-culture-works-fall-2012
22-01-introduction-to-nuclear-engineering-and-ionizing-radiation-fall-2015
24-118-paradox-infinity-spring-2013
7-016-introductory-biology-fall-2014
5-310-laboratory-chemistry-fall-2017
6-436j-fundamentals-of-probability-fall-2008

2 of these courses seem to have a correct short_id property, which is the difference between the amount of courses missing sitemetadata and navmenu's.  So, it seems like missing sitemetadata is a good way to see courses that have an old, bad import.

Let me take a look at this list. It's possible that some of these courses weren't intended to be published, or were published under another name/url.
I'll start by looking at the old site as a reference.

Since this is just one of two courses in this state that need to be published, can it be edited manually to fix it up? Or can we write a migration?

@pdpinch Since this has been manually fixed, and the course is now published, shall we close this issue?

Yes


Add ability to Reset Search Component from actions outside the component

Need ability to reset control. When text is currently entered into the search bar, the 'x' appears in the right of the control allowing you to clear the contents of the search text. Need the ability to reset the control from elsewhere in the application as well. Seem like adding a Reset property to the component should be sufficient.

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

ID: 1592fbf9-54a6-505a-4839-b4b1136c8e9a
Version Independent ID: 1592fbf9-54a6-505a-4839-b4b1136c8e9a
Content: SearchBox control reference - Power Platform
Content Source: power-platform/guidance/creator-kit/searchbox.md
Service: power-platform
Sub-service: guidance
GitHub Login: @denise-msft
Microsoft Alias: demora

Thanks for your comment, @cyoung07. This issue has been assigned to the doc author for review.


Simple question about your implementation

I have a simple question. In mesh_net.py Line289,290, you set img_H and img_W as :

img_H = int(2**np.floor(np.log2(np.sqrt(num_faces) * opts.tex_size)))
img_W = 2 * img_H

Could you explain the reason?

This was just a heuristic to ensure that the number of pixels in the UV texture image are of a similar order as number of texture samples across all faces. The code represents each face with 'opts.tex_size * opts.tex_size' samples, so an image with height/width of 'np.sqrt(num_faces) * opts.tex_size' would have similar number of pixels. The additional code enforces that the sizes are a power of 2, so it is easily predictable via an up-convolutional CNN.


Build error on Ubuntu 14.04

Build fails with master on Ubuntu trusty docker image.
git clone https://github.com/grpc/grpc
Cloning into 'grpc'...
cd grpc
git submodule update --init
Submodule 'third_party/abseil-cpp' (https://github.com/abseil/abseil-cpp) registered for path 'third_party/abseil-cpp'
Submodule 'third_party/benchmark' (https://github.com/google/benchmark) registered for path 'third_party/benchmark'
Submodule 'third_party/bloaty' (https://github.com/google/bloaty.git) registered for path 'third_party/bloaty'
Submodule 'third_party/boringssl' (https://github.com/google/boringssl.git) registered for path 'third_party/boringssl'
Submodule 'third_party/boringssl-with-bazel' (https://github.com/google/boringssl.git) registered for path 'third_party/boringssl-with-bazel'
Submodule 'third_party/cares/cares' (https://github.com/c-ares/c-ares.git) registered for path 'third_party/cares/cares'
Submodule 'third_party/gflags' (https://github.com/gflags/gflags.git) registered for path 'third_party/gflags'
Submodule 'third_party/googletest' (https://github.com/google/googletest.git) registered for path 'third_party/googletest'
Submodule 'third_party/protobuf' (https://github.com/google/protobuf.git) registered for path 'third_party/protobuf'
Submodule 'third_party/zlib' (https://github.com/madler/zlib) registered for path 'third_party/zlib'
Cloning into 'third_party/abseil-cpp'...
Submodule path 'third_party/abseil-cpp': checked out 'cc4bed2d74f7c8717e31f9579214ab52a9c9c610'
Cloning into 'third_party/benchmark'...
Submodule path 'third_party/benchmark': checked out '5b7683f49e1e9223cf9927b24f6fd3d6bd82e3f8'
Cloning into 'third_party/bloaty'...
Submodule path 'third_party/bloaty': checked out '73594cde8c9a52a102c4341c244c833aa61b9c06'
Cloning into 'third_party/boringssl'...
Submodule path 'third_party/boringssl': checked out '4d7ba4e4e57195fcebdabe01489534b446ad02cb'
Cloning into 'third_party/boringssl-with-bazel'...
Submodule path 'third_party/boringssl-with-bazel': checked out '886e7d75368e3f4fab3f4d0d3584e4abfc557755'
Cloning into 'third_party/cares/cares'...
Submodule path 'third_party/cares/cares': checked out '3be1924221e1326df520f8498d704a5c4c8d0cce'
Cloning into 'third_party/gflags'...
Submodule path 'third_party/gflags': checked out '30dbc81fb5ffdc98ea9b14b1918bfe4e8779b26e'
Cloning into 'third_party/googletest'...
Submodule path 'third_party/googletest': checked out 'ec44c6c1675c25b9827aacd08c02433cccde7780'
Cloning into 'third_party/protobuf'...
Submodule path 'third_party/protobuf': checked out '2761122b810fe8861004ae785cc3ab39f384d342'
Cloning into 'third_party/zlib'...
Submodule path 'third_party/zlib': checked out 'cacf7f1d4e3d44d871b605da3b647f07d718623f'
make

...

[HOSTCXX] Compiling src/compiler/php_generator.cc
src/compiler/php_generator.cc:26:40: error: 'google::protobuf::compiler::php::GeneratedClassName' has not been declared
 using google::protobuf::compiler::php::GeneratedClassName;
                                        ^
src/compiler/php_generator.cc: In function 'void grpc_php_generator::{anonymous}::PrintMethod(const MethodDescriptor*, grpc::protobuf::io::Printer*)':
src/compiler/php_generator.cc:74:58: error: 'GeneratedClassName' was not declared in this scope
       MessageIdentifierName(GeneratedClassName(input_type), input_type->file());
                                                          ^
make: *** [/grpc/objs/opt/src/compiler/php_generator.o] Error 1

Looks like the default docker image has protoc 3.0.0 pre-installed and make is skipping building the newer protoc.

GeneratedClassName is introduced after protobuf 3.5.0.
If you are installing gRPC by built from the source, you can install the compatible protoc under third_party/ .

@ZhouyihaiDing, if possible, please update the build instructions or add additional notes to the main build instructions page https://github.com/grpc/grpc/blob/master/INSTALL.md . A user who previously built gRPC from source and then upgrades to 1.10 or master will run into this error.


Fixes usage arg order

Hey Ryan,
There is def an error in that example but it's actually that the DATASET param should be the PROJECTID not the order, in this case "shakespeare" is the dataset.  You want to modify to fit that?


Refactor all tests for strided dpnp arrays in kernel with different layouts

Strided array correctly works with the current code.
This PR performs unit test for all situations (differing dimensions, shape, strides, view-of-views etc.)
This PR performs unit test for both C and F contiguous arrays.
This is relevant to the experimental kernel, will not work with the old kernel code.

This PR finally resolves #572 and supercedes #1268 and #1271

[x] Have you provided a meaningful PR description?
[x] Have you added a test, reproducer or referred to an issue with a reproducer?
[x] Have you tested your changes locally for CPU and GPU devices?
[x] Have you made sure that new changes do not introduce compiler warnings?
[ ] If this PR is a work in progress, are you filing the PR as a draft?

The logic in _dpexrt_python.c::DPEXRT_sycl_usm_ndarray_from_python does indeed correctly compute strides for F and C order. It is because of a quirk in the dpctl implementation of stride computation. dpctl C-API returns no stride information when the fastest changing dimension has a unit stride, i.e., C order layout. In other cases that includes strided views and F order, the actual stride value is returned. Our stride conversion logic, from dpctl's element count to Numba/NumPy's byte count, in  _dpexrt_python.c::DPEXRT_sycl_usm_ndarray_from_python works for this reason. When a stride vector is received from dpctl we correctly convert them to number of bytes and for the default C order case strides are calculated as number of bytes.
Since, experimental.kernel now uses Numba's unbox/box routines the default array indexing for __getitem__ and __setitem__ calls on dpnp.ndarray or dpctl.usm_ndarray works out of the box.
An example to visually verify the new behavior:
import numba_dpex as dpex
import dpnp

import numpy

@dpex.dpjit
def foo(a, b):
    print(a.strides)
    print(b.strides)
    return a, b

a = numpy.ones(24, order="F").reshape(4,6, order="F")
da = dpnp.ones(24, order="F").reshape(4,6, order="F")

x = numpy.reshape(numpy.arange(5*6*7*8), (5,6,7,8)).transpose(2,3,1,0)
dx = dpnp.reshape(dpnp.arange(5*6*7*8), (5,6,7,8)).transpose(2,3,1,0)

print(a.strides)
print(da.strides)

print(x.strides)
print(dx.strides)

x, dx = foo(x, dx)
a, da = foo(a, da)

print(a.strides)
print(da.strides)

print(x.strides)
print(dx.strides)

I have updated the misleading FIXME in _dpexrt_python.c` in https://github.com/IntelPython/numba-dpex/pull/1286


Fix html report exporter row tag

Some <tr> are missing if there is more than one toolchain in an html report. It is handled by most of the browsers and the render is ok but it causes errors when you want to parse the file with python for example.

Thanks ;)


Export WrappedValidator

Better for this not to be hidden so we can actually have different toTestValidator versions (for plutarch)

Do you mean to export only the type or with the constructor?  In the second case, the whole meaning of the existence of this type is lost.


Rework borders

There are quite a few borders that could use cleanup or elimination, specifically around the currently-highlighted line. The dividing lines are probably also way too high contrast, so they should be softened or eliminated where possible.

Mostly resolved with the addition of uifg color


Adapt code to remove and ignore warnings

Adapt some parts of the code to remove warnings and ignore Django 2.0 and external dependencies warnings also.
We do not control external dependencies warnings and we can't upgrade them. We rely on them to update their code before we migrate to Django 2.0. Before migrating to Django 2.0 we will need to remove this ignore filters and run all the tests to check what dependencies are still not compatible. In the meantime, we remove all this garbage from the summary output.

All tests passed, but codecov fail for some reason. I don't care too much though, because I didn't add new code or modify logic.


Support passing prog_name

This fixes #118.

It seems that you ran isort (likely with a different configuration) over the whole tests directory, changing some files that weren't related to this PR. Only prog_name.py needed to have typer imported after subprocess, the rest can (should, I guess) be reverted.

Great! Thank you @teymour-aldridge ! :rocket:
Thanks for the help @tarcisioe ! :bow:
I just updated the tests a bit to use the same structure as the other tests and to run using coverage instead of python, that way the coverage can be updated.
Thanks for your contribution! :rocket: :tada: :cake:

You're most welcome!
Thanks for that.


city: use predefined city names (#153)

city: use predefined city names

Adjust city name fallback

I factored out the part of the suggestion code that actually chooses a name so that I could write a test case that does not depend on the lbx file existing.


Rewrite data path generation

Use require.main.filename as basis, with a central gluon_data (?) directory with subdirs for Chromium/Firefox (not per browser, just per type?),

Done in 1d54e4f0652461bed99f77f6668ecb7907230029.


Add support for Joi .label(name)

Add support for Joi .label(name) in custom error messages.
For example: Please enter {{label}} would result in Please enter your full name for the following schema:
name: Joi.string().label('your full name')

Closing for now. May reopen later after reviewing latest Joi version.


UI issues in Pane

HI
I am facing a number of UI issues in using the pane.
See video:
https://github.com/Tommertom/svelte-ionic-app/blob/master/doc/TQDW3977.MP4?raw=true
There are at least three things happening:

the pane content scrolls while dragging up, initially and then not anymore. This happens on iOS, but not chrome browser on Win10
when changing the menu item (changing the parent content), the pane remains but becomes empty
not shown in video: Uncaught (in promise) TypeError: Cannot read property 'style' of undefined in line this.contentEl.style.overflowY = 'hidden'; of function move-to-break. This happens after closing the pane which was emptied (see bullet 2).

Project: https://ionicsvelte.firebaseapp.com
Project Code: https://github.com/Tommertom/svelte-ionic-app
Pane code: https://github.com/Tommertom/svelte-ionic-app/blob/master/src/pages/ionic/Pane.svelte

@Tommertom
Big thanks for your efforts!

Fixed this and other UI and touch events issues. Update package.
Svelte wipe the DOM of child pages, when you go to other page. So .cupertino-content element destroyed. But pane not rendered with svelte engine, and persist in DOM.

if you wish to place Cupertino Pane in all pages, you might place it out Svelte engine.
bottom lines of App.svelte
...

Drag me up Test!

Another option is place Pane for demonstration only in one page.
Place element inside of ion-content:
...

Drag me up Test!

</ion-content>

One more option - render pane content with js:
onMount(() => {
    // Create alement
    let newElement = document.createElement('div');
    newElement.innerHTML = `

Drag me up!

`;
    document.getElementsByTagName('ion-app')[0].appendChild(newElement);

    // Init pane
    var myPane = new CupertinoPane(
      ".cupertino-pane", // Pane container selector
      {
        onDrag: () => console.log("Drag event")
      }
    );
    myPane.present();
  });

Another option - confirm with Svelte community how to create resist for changes to specific DOM elements.
Hope it helps!

Hi @roman-rr
THank you very much for the solution and detailed analysis. Will give it a try.
I am not looking to put the pane in App.svelte - although that could just be the solution if needed. I just notice the behaviour which you explained by the way svelte works.
I'd rather put the pane in ion-content per page, so the whole pane gets destroyed, but then a padding occurs on the pane (if I add padding to ion-content).
WE'll be in touch

@Tommertom
Please update npm package to 1.0.71 (did fixed left margin).
Let's make it better with scroll-y="false":
<ion-content padding scroll-y="false">
...

You can also improve demonstration offsets with breaks:
onMount(() => {
    var myPane = new CupertinoPane(
      ".cupertino-pane", // Pane container selector
      {
        onDrag: () => console.log("Drag event"),
        breaks: {
          top: { enabled: true, offset: -10},
          middle: { enabled: true, offset: 180},
          bottom: { enabled: true, offset: 140},
        }
      }
    );
    myPane.present();
  });

Ok. Deployed as such (without the scroll-y) and seems indeed much better.
Slowly we are getting there!

Personally I rather not have the dependency on scroll-y:false. I put it back as on iPhone 7S, the UI is not ok. The scrolling seems to bubble down from the pane to ion-content. Something you want to consider to resolve?

@Tommertom
It is something how ionic gesture recognize any touch events to entry ion-content elements.
This is might be solutions:

Disable scroll for ion-content
Disable scroll for ion-content only when you drag pane


[MINOR] updated dbml-local version to 0.3.0-spark2.3

Tested manually

Merging since I tested manually


[Bug]: Not able to run multiple aws accounts check

Steps to Reproduce
Set additional AWS account IDs to scan
ADDITIONAL_ACCOUNT_IDS=("23423429764" "23423423919")
Loop through the additional account IDs
for ACCOUNT_ID in "${ADDITIONAL_ACCOUNT_IDS[@]}"; do
Run prowler aws command for each account ID and generate CSV report
prowler aws ${ACCOUNT_ID} -M csv > prowler_report_${ACCOUNT_ID}.csv
Expected behavior
Should check for all Aws accounts and send a csv report
Actual Result with Screenshots or Logs
usage: prowler [-h] [-v] {aws,azure,gcp} ...
prowler: error: unrecognized arguments: -a<PHONE_NUMBER>9
How did you install Prowler?
Cloning the repository from github.com (git clone)
Environment Resource
EC2 instance Linux 2
OS used
Amazon Linux 2
Prowler version
3
Pip version
1
Context
Am not able to check multiple AWS account checks like previous Prowler. There are the commands i tried .

ADDITIONAL_ACCOUNT_IDS=("23423429764" "23423423919")
for ACCOUNT_ID in "${ADDITIONAL_ACCOUNT_IDS[@]}"; do
prowler aws ${ACCOUNT_ID} -M csv > prowler_report_${ACCOUNT_ID}.csv

ADDITIONAL_ACCOUNT_IDS=("23423429764" "23423423919")
for ACCOUNT_ID in "${ADDITIONAL_ACCOUNT_IDS[@]}"; do
prowler aws ${ACCOUNT_ID} -M csv > prowler_report_${ACCOUNT_ID}.csv

ADDITIONAL_ACCOUNT_IDS=("23423429764" "23423423919")
for ACCOUNT_ID in "${ADDITIONAL_ACCOUNT_IDS[@]}"; do
prowler aws -a ${ACCOUNT_ID} -M csv > prowler_report_${ACCOUNT_ID}.csv
ERROR - usage: prowler [-h] [-v] {aws,azure,gcp} ...
prowler: error: unrecognized arguments: -a<PHONE_NUMBER>4

Can someone help me the exact command how to run the checks for Multiple AWS accounts

AM using Python3.9 and Installed Latest Prowler
If i use single command Prowler AWS - it is working fine but if i want to check multiple accounts it is not working

Hi @KD17k, the command that you should use in Prowler 3 is the following:
prowler aws -R <role_arn>
In this version, you have to pass the ARN of the Role you want to assume in each account.


KAFKA-3494: add metric id to client mbeans

KafkaConsumer and KafkaProducer mbeans currently only have a client-id granularity. Client-id represents a logical name for an application.
Given that quotas encourage reuse of client-ids, it's not unexpected to have multiple clients share the same client-id within the same jvm. When a later client gets instantiated with the same client-id as an earlier client in the same jvm, JmxReporter unregisters the original client's mbeans that collide with the new client's mbeans.
This commit makes client mbeans have a metric-id granularity to prevent mbean collision and the original client mbean unregistration.

This probably needs a KIP. Can you create a new KIP for it?

@becketqin not sure if this requires a KIP but maybe... anyway, the current behavior is a total bug. i.e., metrics being overwritten completely. cc few others for opinions @ijuma @junrao @gwenshap Also, this is somewhat related to KIP-55 but that is orthogonal since the fundamental issue of mbean collisions remains.
Anyway, for this patch I have some minor comments:

Needs a rebase
The metric-id doc needs significantly more detail. i.e., that explains its effect when left blank, and when there are collisions.
We may want to mangle with sequence numbers even with a metric-id present (if there are collisions in metric-id). i.e., a user creates two clients in the same VM with the same metric-id.
Some users (such as LinkedIn) extract metrics by trapping mbean registrations using mbean queries. I would like to avoid breaking that - i.e., we should verify that adding a new key-value pair honors existing queries. If not, we may want to attempt preserving the old behavior by only mangling the names of the second registration onwards.
Synchronizing on the class object: we don't have any static synchronized methods but if we did they would contend with the lock. Can we just have a dedicated static lock for this? Or use a concurrent map?

I just updated the PR with a rebase. I'll work on the other comments @jjkoshy suggested after getting feedback from others.


Check for expired resume token errors after polling a LRO more gracefully

Problem
When I poll for a long running operation with an expired (older than ~20 minutes) resume token like so
poller, err := privateEndpointsClient.BeginCreateOrUpdate(ctx, "", "", armnetwork.PrivateEndpoint{}, &armnetwork.PrivateEndpointsClientBeginCreateOrUpdateOptions{
  ResumeToken: resumeToken // this resume token got created more than 20 minutes ago
})

The SDK will return an error https://github.com/Azure/azure-sdk-for-go/blob/b386adc15c2e60e3812956f68d244b608330c479/sdk/azcore/internal/pollers/op/op.go#L98 but swallows the HTTP response https://github.com/Azure/azure-sdk-for-go/blob/b386adc15c2e60e3812956f68d244b608330c479/sdk/azcore/internal/pollers/op/op.go#L105
The only option I have in order to handle expired token errors is to check for the actual error string like so
if _, err := poller.Poll(ctx); err != nil {
  if err.Error() == "the response did not contain a status" { // azure-sdk swallows http response during polling. thus, need to handle invalid token error case based on error string
    // some recovering logic
  }
}

Executing the recovering logic now based on this error handling is super brittle since I am relying on a string value which can change quiet easily.
Feature Request
I wish for a way to inspect the HTTP response myself when the polling fails. Something like this could do the job where the response of the poller https://github.com/Azure/azure-sdk-for-go/blob/b386adc15c2e60e3812956f68d244b608330c479/sdk/azcore/runtime/poller.go#L186 is exposed:
if _, err := poller.Poll(ctx); err != nil {
  if poller.Resp.StatusCode == http.StatusNotFound { // Azure API returns 404 in case I poll for a LRO with an expired resume token
    ...
  }
}

More specific errors than errors.New("...") might also be an option.

Agreed this needs improvement.  While we sort this out, you should be able to use<EMAIL_ADDRESS>to get the raw HTTP response (not very elegant for this case but should get you unblocked).

The fix will be in<EMAIL_ADDRESS>which should be out in early November.


Initial commit

I need to resume this work eventually, it's been a while since last time I touched anything related to this.


Handling intermittent data retrieval errors (retries)

Now and then it seems a download fails - not because it doesn't exist, just one of those internet things.  Even with excellent AWS data to AWS s3.

This is the usual error:
CPLE_OpenFailedError: '/vsicurl/https://sentinel-cogs.s3.us-west-2.amazonaws.com/sentinel-s2-l2a-cogs/22/M/EV/2020/7/S2A_22MEV_20200704_0_L2A/B02.tif' not recognized as a supported file format.
So something where it can retry when it is not a 404?

Agreed, adding some retry logic could be appropriate, both to dataset opens and reads. Though it might be hard to identify which errors are appropriate to retry. "not recognized as a supported file format" sure doesn't sound like something that you should retry.
We'd need to look through the vsicurl -> GDAL -> rasterio logic a bit to understand how HTTP error codes map onto the Python error that's ultimately raised.

Yes, I have seen that 'not recognised as a file format' multiple times for data that is absolutely there. e.g. try it again the next time, perfectly fine.
I downloaded that whole file by hand and viewed it no problem, just to double check - so it would seem to be some sort of didn't read/network issue meaning it fails to get the identification correctly - your point on the GDAL rasterio errors.

Doing some more testing...same behaviour, 404 when my internet problem... vsis error when element84 missing data

@TomAugspurger pointed out in https://github.com/microsoft/PlanetaryComputer/issues/11#issuecomment-995380986 that we could use GDAL_HTTP_MAX_RETRY and GDAL_HTTP_RETRY_DELAY, which would be very easy to add to the default GDAL options: https://github.com/gjoseph92/stackstac/blob/d3a78c490860c85319a91bdf3712e58986593def/stackstac/rio_reader.py#L36-L42

@gjoseph92 unfortunately GDAL_HTTP_MAX_RETRY helps only for retrying HTTP errors 429, 502, 503 or 504. As also said in other comments, I also think it would be nice to retrying support user-specific errors

@gjoseph92 I am trying to solve this with the approach mentioned above. For this I tried to separate the dataset reader creation in a different function so that users can overwrite it with a retry. My changes in stackstac can be found here.
Later I tried to overwrite the method like:
import stackstac
from rasterio import RasterioIOError
from time import sleep

class AutoParallelRioReaderWithRetry(stackstac.rio_reader.AutoParallelRioReader):
    def _get_ds(self) -> stackstac.rio_reader.SelfCleaningDatasetReader:
        """
        Retry
        """
        retries = 10
        retries_delay = 10

        for _ in range(retries):
            try:
                return stackstac.rio_reader.SelfCleaningDatasetReader(self.url, sharing=False)
            except RasterioIOError as ex:
                exception = ex
                dns_problem_condition = ("Could not resolve host" in str(ex))
                read_problem_condition = ("not recognized as a supported dataset name" in str(ex))
                if dns_problem_condition or read_problem_condition:
                    print("retrying")
                    sleep(retries_delay)
                    continue
                print(f"Failed to open {self.url} with exception {ex}")
                raise ex
        raise Exception(f"Failed to open {self.url} after {retries} retries with error {exception}")

However I notice that the same readers are failing again and again within the same compute run although they succeed in different runs. I even had cases when compute run without any problem. Is there any place that the result of SelfCleaningDatasetReader is getting cached?


version conflict in example

Thank you for the report @karliell , we have pushed a 2.0.0 release of Sonnet now so you can just do !pip install dm-sonnet.
There is also a new 1.1.0 release of graph-nets which has been picked up by colab which is compatible with TF2 and Sonnet 2 (example here).
I think thigs are working correctly now, please re-open if not!


Docs Publishing Strategy

Should Envoy Gateway's documentation be separate from Envoy's official docs or integrate with https://github.com/envoyproxy/envoy-website

I'll take this on, although it seems not possible to assign me right now. 😂

@mattklein123 @phlax @lizan I'm unable to assign @kflynn to the issue. Can someone advise?

I added explicit read access for the assignable team. I think that fixed it. Assigned.

Thanks @mattklein123! #203 is a bare-bones first cut here.

xref

updating contrib guide: https://github.com/envoyproxy/gateway/issues/295
quickstart guide: https://github.com/envoyproxy/gateway/issues/275

i would say lets link it in initially - not sure exactly how/where - but i think that will be easiest

@danehans @kflynn are we keeping this issue open to track eventually linking https://gateway.envoyproxy.io/v0.2.0/ to https://www.envoyproxy.io/docs ?

Let's keep our current strategy of using GH Pages to publish EG docs. If anyone disagrees, feel free to reopen.


[KYUUBI #4696] Upgrade scalafmt from 3.7.1 to 3.7.3

Why are the changes needed?

Close #4696
How was this patch tested?

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

[ ] Add screenshots for manual tests if appropriate

[ ] Run test locally before make a pull request

Codecov Report

Merging #4705 (7f8d7bd) into master (1603342) will decrease coverage by 0.03%.
The diff coverage is n/a.

:exclamation: Current head 7f8d7bd differs from pull request most recent head 434f94d. Consider uploading reports for the commit 434f94d to get more accurate results

@@             Coverage Diff              @@
##             master    #4705      +/-   ##
============================================
- Coverage     58.03%   58.00%   -0.03%
  Complexity       13       13
============================================
  Files           580      580
  Lines         32220    32220
  Branches       4302     4302
============================================
- Hits          18698    18690       -8
- Misses        11730    11732       +2
- Partials       1792     1798       +6

see 4 files with indirect coverage changes
:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more

Thanks, merged to master


update UglifyJS settings

Not tested. Have problems with webassembly install process on OSX but this config perfectly worked in my projects

Going to try it out!


Tenant selection in menu

Hello,
Does this kibana parameter works  for ODFE <IP_ADDRESS> "opendistro_security.multitenancy.enable_filter" please ?
I've tried but it 's not working for me :-(
Thanks for your help

Paramenter is working as expected, I hope you got this sorted on yoru end! If not, please re-open and provide additional repro steps to troubleshoot further. Thanks!