Rest API to manage Docker containers

Description
As Homarr is already able to deal wit container management (start/stop), it would be nice to have a little API available (without auth at first) to start/stop containers via homarr with this API.
It could be something lik the following:
GET ip_homarr:port/api/container/{container_name}/start (or stop)
or POST ip_homarr:port/api/container/{container_name} with body as { action: start (or stop) }
My need is that I use Home Assistant and I already have a rest command to start and stop container that uses another docker container that exposes an API to manage containers (called "ha-dockermon" https://github.com/philhawthorne/ha-dockermon).
But as i use as well Homarr and it is able to connect to docker api, it should be better to have only one tool to do that.
Priority
Low (Nice-to-have)

Hi,
thanks for your request.
Homarr is not an interface between apps and API consumers.
Therefore, our current API (which you can use right now) may be challenging to use.
We release versions without documenting changes to the API, which makes using them even harder.
Since this is not fully out of scope, I'll leave this issue open.
Just be aware, that this is and will not be our priority, and I recommend you to choose a more reliable API instead.
You could also try https://home-assistant-guide.com/guide/control-docker-containers-from-home-assistant-using-monitor-docker/ . Note: I have not tested nor confirmed this application - use at your own risk.
@ajnart and @Meierschlumpf , what is your take on this?

Maybe that one can help you: https://github.com/Meierschlumpf/docker-api/tree/main

Thanks for your links.
Docker Monitor won't be suitable because the docker i want to manage is not on the same HomeAssistant host.
I will take a look at your repo, otherwise i will stay with ha-dockermon, no matter.

@Skuair you should be able to use our current API for this actually, but you’d need to pass in the correct cookies for it to work. Please check out the code for the Docker module to understand how it works. If I remember correctly we make a post request with the action inside of the body of that request.
You could just homarr/api/modules/docker/{id} or something similar. It is not password protected unless you have your instance password protected.

Head over to https://hoppscotch.io/ and import this
{
	"v": 1,
	"name": "Homarr",
	"folders": [],
	"requests": [
		{
			"v": "1",
			"endpoint": "http://localhost:3001/api/docker/containers",
			"name": "Get all containers",
			"params": [],
			"headers": [],
			"method": "GET",
			"auth": {
				"authType": "none",
				"authActive": true
			},
			"preRequestScript": "",
			"testScript": "",
			"body": {
				"contentType": null,
				"body": null
			}
		},
		{
			"v": "1",
			"endpoint": "http://localhost:3001/api/docker/container/{{container-id}}",
			"name": "Start a specific container with its ID",
			"params": [
				{
					"key": "action",
					"value": "start",
					"active": true
				}
			],
			"headers": [],
			"method": "GET",
			"auth": {
				"authType": "none",
				"authActive": true
			},
			"preRequestScript": "",
			"testScript": "",
			"body": {
				"contentType": null,
				"body": null
			}
		}
	]
}

Then you can make your requests there. I've just tested it and it works. Can you confirm it ?

Via hoppscoth, it does not work because my homarr instance is not https so blocked by browser.
Anyway, i tested directly the GET url in the browser (private mode, so no cookies) and it works.
{"statusCode":200,"message":"Container c48bc1a42d631244eb03e843bb66a2f113ba8a58fc375414e29e2fb3f47947ec started"}
So it should be good, but the only point that bothers me is that we must use the container ID. In my home assistant instance, my calls urls are static (this is the REST command feature in Home assistant that let you define an action associated with a URL) so i suppose every time i recreate the container its ID will change, so not usable right now, if i cannot use container name in place of ID.

Via hoppscoth, it does not work because my homarr instance is not https so blocked by browser.
Anyway, i tested directly the GET url in the browser (private mode, so no cookies) and it works.
{"statusCode":200,"message":"Container c48bc1a42d631244eb03e843bb66a2f113ba8a58fc375414e29e2fb3f47947ec started"}
So it should be good, but the only point that bothers me is that we must use the container ID. In my home assistant instance, my calls urls are static (this is the REST command feature in Home assistant that let you define an action associated with a URL) so i suppose every time i recreate the container its ID will change, so not usable right now, if i cannot use container name in place of ID.

I see. Not sure why we chose the container ID as I just remembered that docker doesn't allow colliding names. I don't think we'll change that in the future as the rest API is considered legacy now that we use tRPC to make requests.
Have you looked into using portainer api for your script ?
We were originally planning to do a portainer integration but it turns out that docker socket is much available to most users.

I don't use Portainet yet, maybe one day, but currently the docker UI in DSM is sufficient for me.
Anyway, I suppose you can close this feature request, I will take a look at portainer's api or will stay with my current method with ha-dockermon.
No problem.
Thanks to have considered this topic.

Note of the day: calling the container route with the container name instead of ID works in fact! (i did not tested that yesterday)
So your API is already doing what i want. Anyway, as you said if the api is legacy, no matter, but just to know that ID or name works currenlty.

Yes, the API is legacy and will break in the next release. However, if demand is here, we might add some API endpoints for managing Homarr's apps and widgets.
This has really low priority and we have tons and tons of feature requests, that will be prioritised.
I hope you understand.
Check out our roadmap on https://homarr.dev/about if you're curious why the API will break and what other changes will come.

Yes no problem!
Good job.


Support for using project local drush with aliases and DrupalVM

Issue Type

Support Request

Your Environment
Vagrant 1.8.6
VirtualBox 5.1.10r112026
ansible <IP_ADDRESS>
  config file = /etc/ansible/ansible.cfg
  configured module search path = Default w/o overrides

Your OS

macOS (10.12.1)

Full console output
user:web user$ ../vendor/bin/drush @base.local status --debug
Using the Drush script found at /Users/user/Dev/localdev/projects/Base/vendor/drush/drush/drush.launcher using proc_open
Cache HIT cid: 8.1.5-commandfiles-0-2e422accb0e389d2a753f5385875669f [0.02 sec, 3.37 MB]                                                                           [debug]
Loaded alias @base.local from file /Users/user/Dev/localdev/projects/Base/web/../drush/base.aliases.drushrc.php [0.18 sec, 9.66 MB]                               [notice]
Begin redispatch via drush_invoke_process(). [0.19 sec, 9.67 MB]                                                                                [notice]
Backend invoke: ssh -i /Users/user/.vagrant.d/insecure_private_key<EMAIL_ADDRESS>'env DRUSH_PHP=/usr/bin/php COLUMNS=170 drush  --debug                 [command]
--root=var/www/drupalvm/web --uri=www.base.dev --verbose  core-status 2>&1' 2>&1 [0.19 sec, 9.69 MB]
Calling proc_open(ssh -i /Users/user/.vagrant.d/insecure_private_key<EMAIL_ADDRESS>'env DRUSH_PHP=/usr/bin/php COLUMNS=170 drush  --debug --root=var/www/drupalvm/web --uri=www.base.dev --verbose  core-status 2>&1' 2>&1);
env: ‘drush’: No such file or directory
End redispatch via drush_invoke_process(). [0.45 sec, 9.68 MB]                                                                                [notice]

Summary
With DrupalVM 4.0 its possible to not install drush globally but project local with composer. I tried to setup a local alias to use the project local drush to talk to the project local drush on vagrant side but can't get it working.
Here's my drush aliases:
$home = drush_server_home();
$remotePath = 'var/www/drupalvm';

$aliases['local'] = [
    'root' => $remotePath . '/web',
    'uri' => 'www.base.dev',
    'remote-host' => 'www.base.dev',
    'env' => 'local',
    'remote-user' => 'vagrant',
    'ssh-options' => "-i $home/.vagrant.d/insecure_private_key",
    'path_aliases' => [
        '%drush' => $remotePath . '/vendor/bin/drush',
        '%drush-script' => $remotePath . '/vendor/drush/drush/drush.php',
        '%dump-dir' => '/tmp',
        '%files' => $remotePath . '/web/sites/default/files/',
    ],
    'php' => '/usr/bin/php',
];

The call would be the following:
user:web user$ ../vendor/bin/drush @base.local status --debug

The output is this like posted above:
env: ‘drush’: No such file or directory

What am i doing wrong?
Thanks in advance.

The aliases are built correctly out of the box:
drupal-vm cindy@cindy master: drush @drupalvm-project.dev status
 Drupal version                  :  8.2.4
 Site URI                        :  drupalvm-project.dev
 Database driver                 :  mysql
 Database hostname               :  localhost
 Database port                   :
 Database username               :  drupal
 Database name                   :  drupal
 Database                        :  Connected
 Drupal bootstrap                :  Successful
 Drupal user                     :
 Default theme                   :  bartik
 Administration theme            :  seven
 PHP executable                  :  /usr/bin/php
 PHP configuration               :  /etc/php/7.0/cli/php.ini
 PHP OS                          :  Linux
 Drush script                    :  /var/www/drupalvm/drupal/vendor/drush/drush/drush.php
 Drush version                   :  8.1.8
 Drush temp directory            :  /tmp
 Drush configuration             :
 Drush alias files               :  /home/vagrant/.drush/drupalvm_project.aliases.drushrc.php
 Install profile                 :  standard
 Drupal root                     :  /var/www/drupalvm/drupal/web
 Drupal Settings File            :  sites/default/settings.php
 Site path                       :  sites/default
 File directory path             :  sites/default/files
 Temporary file directory path   :  /tmp
 Sync config path                :  sites/default/files/config_SrLeE21nvGb5uEnHttPvpAVh9VQ0Aaz-TH7X9EYGG9f_N5fY62gpXiSP13SrSsmbPM-kwkUsMg/sync

drupal-vm cindy@cindy master: cat ~/.drush/drupalvm_project.aliases.drushrc.php
<?php

/**
 * Drupal VM drush aliases.
 *
 * @see example.aliases.drushrc.php.
 */

$aliases['drupalvm-project.dev'] = array(
  'uri' => 'drupalvm-project.dev',
  'root' => '/var/www/drupalvm/drupal/web',
  'remote-host' => 'drupalvm-project.dev',
  'remote-user' => 'vagrant',
  'ssh-options' => '-o PasswordAuthentication=no -i ' . drush_server_home() . '/.vagrant.d/insecure_private_key',
  'path-aliases' => array(
    '%drush-script' => '/var/www/drupalvm/drupal/vendor/drush/drush/drush',
  ),
);

$aliases['www.drupalvm-project.dev'] = array(
  'uri' => 'www.drupalvm-project.dev',
  'root' => '/var/www/drupalvm/drupal/web',
  'remote-host' => 'www.drupalvm-project.dev',
  'remote-user' => 'vagrant',
  'ssh-options' => '-o PasswordAuthentication=no -i ' . drush_server_home() . '/.vagrant.d/insecure_private_key',
  'path-aliases' => array(
    '%drush-script' => '/var/www/drupalvm/drupal/vendor/drush/drush/drush',
  ),
);

I can't recall why exactly I used vendor/drush/drush/drush rather than vendor/bin/drush, I remember I tried it and it didn't work. Maybe I had the same issue as you.

@yobottehg - Did @oxyc's notes help at all?

Also, I don't think you need %dump-dir anymore https://github.com/drush-ops/drush/issues/2125

Yes, thanks.
It was just a typo...


helm install fails when empty file or folder of same name as chart present in working dir

Output of helm version:
version.BuildInfo{
Version:"v3.14.4", GitCommit:"81c902a123462fd4052bc5e9aa9c513c4c8fc142",
GitTreeState:"clean", GoVersion:"go1.22.2" }

Output of kubectl version:
Client Version: v1.29.2
Kustomize Version: v5.0.4-0.20230601165947-6ce0bf390ce3
Server Version: v1.29.2

Cloud Provider/Platform (AKS, GKE, Minikube etc.): kind v0.22.0 go1.21.7 darwin/arm64
Summary
Helm fails to install a chart when repository is specified on the command line with --repo and a file or directory of the same name as the chart is present in the local working directory.
Steps to reproduce

Create a local file (or directory) of the same name as the chart: touch hello (or mkdir hello)
Run helm install passing the repository via --repo so that chart name does include have the [repo-name]/ prefix
Observe error. There will be different errors depending on whether a local file or a directory matches the chart name.

➜  helm-locate-chart touch hello
➜  helm-locate-chart ll
total 0
-rw-r--r--  1 alex  staff     0B May  6 22:42 hello

➜  helm-locate-chart helm install --repo https://cloudecho.github.io/charts/ hello hello
Error: INSTALLATION FAILED: file '/Users/alex/helm-locate-chart/hello' does not appear to be a gzipped archive; got 'application/octet-stream'

OR
➜  helm-locate-chart mkdir hello
➜  helm-locate-chart ll
total 0
drwxr-xr-x  2 alex  staff    64B May  7 13:33 hello
➜  helm-locate-chart helm install --repo https://cloudecho.github.io/charts/ hello hello
Error: INSTALLATION FAILED: Chart.yaml file is missing

Root cause analysis
The issue can be traced back to a check for the presence of a local filesystem entry of the same name as the chart (through os.Stat()) as a first step in locating the chart to be installed, in func (c *ChartPathOptions) LocateChart(...):
	if _, err := os.Stat(name); err == nil {
		abs, err := filepath.Abs(name)
		if err != nil {
			return abs, err
		}
		if c.Verify {
			if _, err := downloader.VerifyChart(abs, c.Keyring); err != nil {
				return "", err
			}
		}
		return abs, nil
	}

In the most common use-case, the user will invoke the install command with the chart name including the repository prefix, separated by a slash:
helm install hello cloudecho/hello

which just happens to not be a valid name for a local filesystem entry, and thus avoids causing a false positive in os.Stat(). However, no explicit validation exists to confirm the presence of a local chart.
When the CLI command includes the repository URL via the --repo argument, the chart name no longer includes the repo prefix and slash that was preventing it from matching a local FS entry. The conditions are thus created for the above mentioned installation error to take place.
Possible solutions
This code was originally intended to detect the presence of a local copy of the chart to be installed. However, the os.Stat() check is too generic and will yield false positive matches even when a simple empty file or directory of the given name is present, which is obviously not the intended behaviour.
This has been reported in various forms in the past which sparked conversations on wether a local chart should even be picked up when the command line explicitly requests one from a remote repository. It was pointed out that the current behaviour (of prioritising the local copy) needs to be preserved until the next major version of Helm.
However, here I am reporting an extreme manifestation of this issue which actually leads to install failure and should therefore be addressed as a bug within the confines of backward compatibility with the original intent.
A simple solution that would preserve the status quo while eliminating the error edge case would be to replace the os.Stat() with a more exhaustive check that determines with increased certainty if the local FS entry is indeed a valid chart, be it a directory or archive.
PR #13009 implements this proposal.

Marking this as a feature, as the behavior was designed this way (not saying it is the best way).

replace the os.Stat() with a more exhaustive check that determines with increased certainty if the local FS entry is indeed a valid chart, be it a directory or archive.

I think perhaps the behavior can be improved (as a non-breaking change). But not to the extent that a FS entry must be "valid" for it to be considered. e.g. If I downloaded a corrupt archive, I would expect attempting to install of that corrupt archive from the FS to fail. Not e.g. ignore and proceed to lookup a repository because the chart (archive) is not valid. So any introduced checks would need to be very specific and intuitive (for all scenarios: otherwise the next user hits a different use case which is confusing for them).
And overall, while the behavior could be improved. It would need to be demonstrated it is worth it. To a certain extent, the "fail fast" behavior, and simple implementation of os.Stat(name) has benefits. But if there is a nice UX win out there, that would be nice.


Implement Enumerator::Lazy#chunk_while

I guess I forgot one of these methods here :^)

Good catch!


Respond.js issues in IE: w.body is null or not an object error

I'm having trouble getting respond.min.js to work in IE. I'm getting an error that says:
Message: 'w.body' is null or not an object
Line: 6
Char: 1951
Code: 0
Here's the setup:
<!DOCTYPE HTML>

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<?php echo "<title>".(isset($title)?$title:"TheDefaultTitle")."</title>\n"; ?>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="author" content="" >
<link rel="icon" href="/_images/favicon.ico"/>

<link rel="stylesheet" href="http://f.fontdeck.com/abc123<?php echo $_SERVER['SERVER_NAME']; ?>/16000.css" type="text/css" />

<link rel="stylesheet" href="/css/styles.css" type="text/css" />

<body class="<?php echo "$bodyclass"?>">

Then, I have the following php at the top of every page, so that I can dynamically assign a body class and page title:
<?php
$title = "titleofthepage";
$bodyclass = "home";
require('includes/header.php');
?>

Everything's working beautifully in every other browser I've tested (Firefox - both modern versions and 3.6, Chrome, and Safari, on both macs and PCs). Modernizr kicks in, media queries are working great, etc. However, in IE, (I've been mostly testing 8) I get the error that I listed above, and the media queries are not applied. It loads the base/mobile styles. But, when I start to RESIZE the window, the media queries do seem to kick in. (There are of course a whole bunch of other issues I'll have to troubleshoot in the css, but one thing at a time.)
One thing that I worry might be affecting things. On the homepage, I have a nice responsive image slider. I did not want to simply hide the
 that contains the slides - because the browser would still be loading large images regardless of whether they were supposed to be visible in the mobile version or not. I didn't want the html containing this section to load at all - therefore optimizing the load time for our mobile users. So, I used the following javascript to detect window size, and insert some html if it was larger than the prescribed width. Here's that code:

I tried removing this code completely, to see if it was the culprit of breaking respond.js. It doesn't appear to be, as the same thing happens in IE whether this is present or not - plus, it's happening not only on the home page, but on interior pages as well, which do not have the flex slider.
I've also tried switching up the order in which files are being loaded in the  as well as using "if ie" conditionals to load the stylesheet either before respond.js or after it, depending on the browser. When I load the stylesheet AFTER respond.js, the error goes away, but the respond script doesn't work at all - either on page load or when I resize the window.
I've tried removing every <link> and
      <![endif]-->

I had to use:

      ... the rest of my body content ...

@jasonruz thanks dude.. it's work for me at ie7


remove PodFile.lock

So that when running pod install we always download the latest pods

I am not sure if it is recommended to .gitignore Podfile.lock. Each user will be using different versions of the same library and it may bring different errors for different users. @mludowise-stripe what is the recommended approach?

I am not sure if it is recommended to .gitignore Podfile.lock. Each user will be using different versions of the same library and it may bring different errors for different users. @mludowise-stripe what is the recommended approach?

yeah Mel suggested this. The previous Podlock file uses 22.1.0, which breaks the build. removing this would ensure we always get the latest one(currently 22.6.0)

I am not sure if it is recommended to .gitignore Podfile.lock. Each user will be using different versions of the same library and it may bring different errors for different users. @mludowise-stripe what is the recommended approach?

A production project should include a Podfile.lock file, but the purpose of the Example app in this repo is to demo the SDK so removing it ensures that pod install will always pull the latest. But an unintended consequence could be that we're no longer locking the other pods (e.g. Flipper, React-Core, etc).
An alternative approach is to instead update the README's instructions for running the example app to include instructions to update.
* Install pods for iOS
   * `cd ios && pod install`

to
* Install pods for iOS and update StripeIdentity
   * `cd ios && pod install && pod update StripeIdentity`

Should we instead always manually update the lock file when there's a new StripeIdentity release? it seems the difference between .lock and .podspec here won't help much if we always need the latest identity release

We could manually update the lock files and also follow @mludowise-stripe recommendation (update README) in case we forget to update the file after an update

SG! updated


add HOME env

This PR attempts to fix SIGTRAP failures errors.
Thanks to @martyspain for the research.
See https://github.com/cypress-io/cypress-docker-images/issues/847#issuecomment-1476554389
Fixes #26

Test passing since #31 was merged. 🤷

That's brilliant, thanks for sticking with this for so long! Could you create a new release for these changes?

1.2.0 released. Hope it works for you too!


API to call out shell scripts & functions from within Golang

Summary
Write an API to enable calling out shell scripts or functions from within hack or test Golang code.
Why?
We would like to write more code in Golang, that now written in shell scripts. That involves environment orchestration, test frameworks, build tools and hacks. To make that happen we need a bridge solution which let us call out working shell scripts, and not force us to rewrite everything at once.
Such proposals were previously discussed on Productivity WG https://github.com/knative/test-infra/issues/2418
There are, also other use cases that can benefit from this. Like, new upgrade test framework in which we would like to install either latest stable release or current git HEAD version. Those are now written as Bash shell functions. Such shell call outs can be seen implemented in knative/eventing#4519 test/upgrade/installation/git_head.go L25-L37 Implementing that in knative/pkg is better idea then doing that for eventing, serving, contrib... etc.
How?
We should write an API that will enable us to simple call out shell scripts or just ad-hoc shell functions. It should have a logic to easily let users call out shell files relative to a given Golang source file, so they can invoke project or vendored scripts.
Invoking that script should result in STDOUT and STDERR streamed to Golang process os.Stdout and os.Stderr.
It would be nice to prefix those streams with some labels to make that output more readable.

/assign

To make that happen we need a bridge solution which let us call out working shell scripts, and not force us to rewrite everything at once.

A bridge too far. I think this approach is messy and it would be easier to piecemeal some shell logic into small go executables.

Did you seen knative/eventing#4519. To implement that new framework I need to invoke:
install_head
install_channel_crds
install_mt_broker
install_sugar

to install eventing HEAD version and:
install_latest_release

to install latest released version.
Or rewrite all that code.
I believe rewriting that code should be a gradual process, instead of big bang. That rewrite shouldn't be required to merge knative/eventing#4519.

That's a top down approach - I'm suggesting going bottom up

I do not think we should call shell scripts from go.


POST method in server.js

Hello All,
I am entirely new to Node.js in COAP. I need to accomplish a simple task using server.js. I will send some data using POST from a client and the server should be able to store it in a variable.
Can somebody please suggest me what modifications i should make in server.js

You should use concat-stream.
req.pipe(concat(function(yourdata) {
  console.log(yourdata)
}))

Hello @mcollina I did it by using global variable. Your suggestion also helped me thanks for the answer


export metrics to Prometheus

this PR adds Prometheus metrics which provides additional metrics for Fly metrics.
The goal is to have more graphs and information on usage of the API
fix #84

We lose the log of when all information has been synced as far as i can tell on this early morning code review?

Fly keeps those logs AFAIK, and this PR doesn't change anything about how it's stored but rather it provides additional metrics to Fly

We lose the log of when all information has been synced as far as i can tell on this early morning code review?

Fly keeps those logs AFAIK, and this PR doesn't change anything about how it's stored but rather it provides additional metrics to Fly

Alrighty then 😁


UI Improvements

Overall or little tweaks in the UI

Hii @DanonymousCoder.I would like to work on this issue.Can u please assign this issue to me

Hello, I would like to work on this issue. Am I allowed to use frameworks?

Yes sure, you can go ahead! @PAVAN507-STAR


Test "trivial_shell_nix" is flaky

This failed on master: https://travis-ci.org/target/lorri/jobs/604982303#L1682
---- tests::trivial_shell_nix stdout ----

thread 'tests::trivial_shell_nix' panicked at 'stdout:

stderr:error: file 'nixpkgs' was not found in the Nix search path (add it using $NIX_PATH or -I), at (string):2:17

', src/main.rs:100:9

note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.

stack backtrace:

   0: std::sys::unix::backtrace::tracing::imp::unwind_backtrace

             at src/libstd/sys/unix/backtrace/tracing/gcc_s.rs:39

   1: std::sys_common::backtrace::_print

             at src/libstd/sys_common/backtrace.rs:71

   2: std::panicking::default_hook::{{closure}}

             at src/libstd/sys_common/backtrace.rs:59

             at src/libstd/panicking.rs:197

   3: std::panicking::default_hook

             at src/libstd/panicking.rs:208

   4: std::panicking::rust_panic_with_hook

             at src/libstd/panicking.rs:474

   5: std::panicking::continue_panic_fmt

             at src/libstd/panicking.rs:381

   6: std::panicking::begin_panic_fmt

             at src/libstd/panicking.rs:336

   7: lorri::tests::trivial_shell_nix

             at src/main.rs:100

   8: lorri::tests::trivial_shell_nix::{{closure}}

             at src/main.rs:96

   9: core::ops::function::FnOnce::call_once

             at /rustc/3c235d5600393dfe6c36eeed34042efad8d4f26e/src/libcore/ops/function.rs:231

  10: <alloc::boxed::Box<F> as core::ops::function::FnOnce<A>>::call_once

             at /rustc/3c235d5600393dfe6c36eeed34042efad8d4f26e/src/liballoc/boxed.rs:702

  11: __rust_maybe_catch_panic

             at src/libpanic_unwind/lib.rs:87

  12: test::run_test::run_test_inner::{{closure}}

             at /rustc/3c235d5600393dfe6c36eeed34042efad8d4f26e/src/libstd/panicking.rs:272

             at /rustc/3c235d5600393dfe6c36eeed34042efad8d4f26e/src/libstd/panic.rs:388

             at src/libtest/lib.rs:1468

It looks like nix-instantiate fails with the error message

file 'nixpkgs' was not found in the Nix search path (add it using $NIX_PATH or -I)

I don't understand how, given that the test already passes -I:
    #[test]
    fn trivial_shell_nix() -> std::io::Result<()> {
        let out = std::process::Command::new("nix-instantiate")
            // we can’t assume to have a <nixpkgs>, so use bogus-nixpkgs
            .args(&["-I", "nixpkgs=./nix/bogus-nixpkgs/"])
            .args(&["--expr", TRIVIAL_SHELL_SRC])
            .output()?;
        assert!(
            out.status.success(),
            "stdout:\n{}\nstderr:{}\n",
            std::str::from_utf8(&out.stdout).unwrap(),
            std::str::from_utf8(&out.stderr).unwrap()
        );
        Ok(())
    }

Sanity check shows that calling Command::args multiple times is not the issue here since they just get appended: https://doc.rust-lang.org/src/std/process.rs.html#535-542

@curiousleo did the merged PR fix this issue?

@curiousleo did the merged PR fix this issue?

No, #250 just added some checks, it did not aim to fix the issue.


setChoiceByValue not work with Integer values

When using Choices with fetch. The results has IDs on value field. When trying to set selected field with setChoiceByValue, no option is selected.
I think it may be connected with variable type. Choice options are filed with objects where property value is integer when the number is put. But function setChoiceByValue expect value to be string, and cannot match elements.

Could you provide an example highlighting the issue please?

Ok. I found the solution by unitizing the types of values to string.
But on your place I would consider to change default comparer to normal match not exact, it should help in cases like mine. I put the old code here:
let fetch_t = element.getAttribute('data-fetch');
let select = element.getAttribute('data-select'); //here the select is string
let choise = new Choices(element);
if(fetch_t !== null){
    let data = {
        action: 'nt_get_taxonomies',
        type: ''
    };
    if(fetch_t === 'location'){
        data.type = 'location'
    } else if(fetch_t === 'activity'){
        data.type = 'activity'
    }
    let formBody = Object.keys(data).map(key => {return key + '=' + data[key]}).join('&');
    choise.ajax(callback => {
        fetch('/wp-admin/admin-ajax.php', {
            method: 'POST',
            cache: 'no-cache',
            credentials: 'same-origin',
            headers: {
                'Content-Type': 'application/x-www-form-urlencoded'
            },
            redirect: 'follow',
            body: formBody
        }).then(response => {
            response.json().then(data => {
                callback(data.taxonomies, 'term_id', 'name'); //here  term_id in response is Integer
                choise.setChoiceByValue(select);
            })
        })
    })
}


Explicitly default libvirt values which may differ between different qemu versions

Is this a BUG REPORT or FEATURE REQUEST?:
There are cases where libvirt autodetects some default values, like scsi model based on qemu capabilities reported. This can lead to unwanted side-effects if people use different qemu binaries.
Let's determine where libvirt does that and default them in kubevirt to known values.
We came across this difference with #4408 where it turns out the the new qemu version reports lsilogic as the default scsi model whereas before we got virtio-scsi, leading to unwanted side-effects on guests.

Uncomment only one, leave it on its own line:
/kind bug

/kind enhancement
What happened:
What you expected to happen:
How to reproduce it (as minimally and precisely as possible):
Anything else we need to know?:
Environment:

KubeVirt version (use virtctl version):
Kubernetes version (use kubectl version):
VM or VMI specifications:
Cloud provider or hardware configuration:
OS (e.g. from /etc/os-release):
Kernel (e.g. uname -a):
Install tools:
Others:

/assign @andreabolognani
thanks for the help on this.

/remove-lifecycle stale
/lifecycle-frozen

/remove-lifecycle stale
/lifecycle-frozen

/lifecycle frozen

/lifecycle frozen


[Suggestion] Config file for modifying transfer speed

Omnihopper is absolutely something that should be something in the base game, so I want to thank you for creating such a useful mod! But one thing I feel is missing and would great to have is a dedicated config file that allows the end user to modify the transfer cooldown (in ticks) for each different hopper added by the mod, or at least the main omnihopper, as well as input/output count every time the cooldown resets. I would even suggest making a compat between OmniHopper and Easy Hopper which adds this capability to vanilla hoppers.

This is currently beyond the scope of this mod. If Easy Hopper wants to make compat from their side though, I'd be happy to facilitate it.


Run update-packages --force-upgrade

https://github.com/flutter/flutter/pull/107873 will update flutter_template_images, run update-packages --force-upgrade first so they can rebase on top with no failing tests.
Pre-launch Checklist

[x] I read the Contributor Guide and followed the process outlined there for submitting PRs.
[x] I read the Tree Hygiene wiki page, which explains my responsibilities.
[x] I read and followed the Flutter Style Guide, including Features we expect every widget to implement.
[x] I signed the CLA.
[x] I listed at least one issue that this PR fixes in the description above.
[x] I updated/added relevant documentation (doc comments with ///).
[x] I added new tests to check the change I am making, or this PR is test-exempt.
[x] All existing and new tests are passing.

If you need help, consider asking for advice on the #hackers-new channel on Discord.

Filed https://github.com/flutter/flutter/issues/108184 to track super-parameters errors.

https://github.com/flutter/flutter/pull/108198 should fix the errors and also contains the result of a flutter update-packages --force-upgrade run.

#108198 should fix the errors and also contains the result of a flutter update-packages --force-upgrade run.

Thanks, closing in favor of that PR.


Error build gradle for Android Project

Android is not currently supported by google-cloud-java.

Ohhh! I see. thank you for your answer.

No problem. I'm going to close out this issue now. Thank you for your interest in google-cloud-java!


"[-] Unable to extract course idation .." error

[+] : Logged in successfully.
[-] Unable to extract course idation .."
That is what I get when I try to download this course:
https://www.udemy.com/complete-guide-to-tensorflow-for-deep-learning-with-python/
I tried other courses, as well as free one, but the result was the same.

@mandrivnyk133 will fix this ASAP

Thank you!

[-] Unable to extract course idation ..
Getting this error while trying to download course from udemy in ubuntu 14.04
Can Anyone help?


CB-5254: Add ability to reboot a single FreeIPA instance.

This patch adds the APIs and flows to support requesting
a reboot of a single instance of a FreeIPA cluster.
https://github.com/hortonworks/cloudbreak/commit/7bedab08331049d704829df0b1a6bfc9c9e6f5cf?diff=split#diff-bb2a2c4ffdd122b890ccd439056e72c4
https://github.com/hortonworks/cloudbreak/commit/7bedab08331049d704829df0b1a6bfc9c9e6f5cf?diff=split#diff-a17be58a8a607f24bfc72b427ea2b4ec

The original reason for reboot was prompted by two failures that were experienced by customers.  The first one turned out to be the gssproxy daemon was not running and simply needed to be restarted.  The second one was because the underlying AWS hardware was unavailable and no cloudwatch triggers had been created to do an automatic reboot.  While these were addressed separately with their own fixes, the desire for reboot was for future unknown circumstances.  It's current usage is somewhat of a last resort to be able to try and recover.  Since FreeIPA has a lot of moving parts and is not perfect, it's difficult to predict what may go wrong in which piece and the effort to go through everything to ensure it's perfect is much greater than the simple reboot response.  There is an effort to better monitor individual services and in the future have finer grained control over restarting items, but having reboot is more about expediency and giving customers an immediate option instead of having to experience a new problem and have no option.
Additionally, reboot as part of an HA solution (future planned work) is necessary to enable rolling upgrades.  The current start/stop function is not sufficient as it stops the entire stack as opposed to a single node, and start could needlessly incur additional costs for the customer.


Case Histories - SEG

In order to be in-line with the SEG policies, we need to make a few updates:

[ ] The full citation + DOI should be provided in the "Special Thanks," not just the title and a link. (e.g. This is missing in Wadi Sabha). For formatting, it can be put as a bullet-point and the text can be directly copied from the SEG listing

[ ] all links should be doi's rather than the SEG page. For example in the [Wadi Sabha "Special Thanks"], the SEG url is provided: https://library.seg.org/doi/abs/10.1190/tle35110977.1, but we should be instead providing the doi url: https://doi.org/10.1190/tle35110977.1 (found at the end of the citation)

[ ] We should also add a mention of the DISC, state that the material has been adapted from the original version, and state that the material is subject to SEG terms of use and conditions. Here is a suggestion for Wadhi Sabha that can be used as a template

Template
Special Thanks
Thanks to the Society of Exploration Geophysics for permission to reproduce figures and adapt text from:

Daniele Colombo , Gary McNeice , Diego Rovetta , Ernesto Sandoval-Curiel , Ersan Turkoglu , and Armando Sena (2016). ”High-resolution velocity modeling by seismic-airborne TEM joint inversion: A new perspective for near-surface characterization.” The Leading Edge, 35(11), 977–985.
https://doi.org/10.1190/tle35110977.1

The material presented here has been modified from the SEG-published version and is subject to the SEG terms of use and conditions. This case history was presented as a part of the SEG 2017 Distinguished Instructor Short Course.
Overview of the SEG site and what to use

This seems sufficient but so if Devin can accomplish this we may be finished.

I will try to follow this template to comply with SEG. However, some of the source material for the case histories was adapted from unpublished material provided to our group. This has led to obstacles where trying to find permissions and citations.


Plotting Slit Jaw and Spectrographs FOVs using WCS information

Hello,
I am attempting to plot the FOV of both the IRIS Slit Jaw and Slit on top of an AIA image using the WCS information.  Following a procedure very similar to @tiagopereira in his irispy tutorial from IRIS10 I was able to do so, but the slit positions do not seem even visually centered in the Slit Jaw FOV.
I since have attempted to plot the IRIS Slit on top of the Slit Jaw data and found a similar offset.  The next step in my trouble shooting will be try on a different observation, but in the short term I was hoping you all could spot an obvious mistake in my procedure, or point me toward a procedure that does something similar so I can check my work.
I will attach my code below.  Thanks for your help.
iris.py.zip

Update:
I tried this same routine on multiple different coarse rasters with different points and it worked perfectly. So there appears to be an issue with this particular observation.
I also found that if I add 2 pixels to each slit position in the pixel_to_world call it places the slit correctly for all four positions.  This may or may not have to do with the fact that CRPIX for slit position is 2.

Could it be that the calibration was not perfect for your dataset? Or maybe something is assuming a different CRPIX? What is the link to the dataset?

Hey @tiagopereira, here is the dataset I am using https://www.lmsal.com/hek/hcr?cmd=view-event&event-id=ivo%3A%2F%2Fsot.lmsal.com%2FVOEvent%23VOEvent_IRIS_20190930_171911_3604109624_2019-09-30T17%3A19%3A112019-09-30T17%3A19%3A11.xml
I wondered if it could be a calibration issue since other observations worked fine.  Are you, or is anyone else, aware of a step in the calibration that may lead to a disagreement between the Slit Jaw and Raster WCS info?
As far as a assuming a different CRPIX goes.  The only command I am using that references WCS information is si_iv.pixel_to_world .  I will dig into that method and see if I can't find where it may be reading in CRPIX incorrectly or assuming it is a different value.
Thanks for the help so far!

Hi @jacobdparker, did you ever solve this?
Recently other people have noticed this and I am trying to work out the issue.

No I have not solved this issue.

As discussed on Element, the issue turns out to be that irispy+sunraster do not read in the per-exposure WCS metadata from the extension in the IRIS FITS file, but instead only read in the (average) WCS metadata from the primary header.  When the per-exposure WCS metadata is used, the slit position matches the slit-jaw image as it should.

This has been addressed in a 0.2.0rc1 release of irispy-lmsal, I plan to improve it in a future release to be less slow.


Max nesting depth

After so many levels of nesting, things appear as if they are no longer being nested. In the attached screenshot you can see two elements in the console with the respective controllers. In the ngInspector, they are siblings, however you can see from the expanded DOM tree that BodyBlockElementEditCtrl is a child of BlockElementCtrl.

I don't know of a really great solution yet, but, for the sake of documentation, here is why I believe you're seeing the issue:
// Make the .ngi-depth-N classes
.loop(@i) when (@i <= 30) {
	.loop((@i + 1));
	.ngi-depth-@{i} {
		padding-left: 36px + (@i * 10px) !important;
		background-position: 16px + (@i * 10px) 7px, 0 0 !important;
		.ngi-caret {
			margin-left: @i * 10px;
		}
	}
}

It looks like the CSS is only designed to support a max-depth of 30 items.
We may have to use JS in the future to support n-depth. The alternative would be to change 30 in the less loop to an insanely large number, but that would beef up the size of the extension and it's stylesheet, which wouldn't be ideal.


fix: skip animation if fromPath equals toPath

Checklist

[ ] npm test passes
[ ] benchmarks are included
[ ] commit message follows commit guidelines
[ ] documents are updated

Description of change
#6179
Skip applying animation if fromPath equals toPath in oneToOne morphing effect.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>
Details

8 of 8 (100.0%)  changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.001%) to 86.373%

Totals

Change from base Build<PHONE_NUMBER>:
0.001%

Covered Lines:
10294

Relevant Lines:
11545

💛  - Coveralls


Create 0000-01-02-Aminadad27.md.

I’m` proud of my work, finally got it

I’m really proud of what I have done so far and will keep going

<EMAIL_ADDRESS>

josue.aminadad@Aminadad27


Overly strict [compat]?

The [compat] table in Project.toml makes it incompatible with the most recent major version of ArrayInterface.  This, in turn, limits compatibility with new versions of other packages.
Pinning the [compat] to a single patch of a dependency seems overly strict.  Adding ArrayInterface v4.0.3 to the [compat] at least allows the newest version to install; after doing so, both Polyester and ArrayInterface pass their unit tests.
Is there a reason not to do this?

Pinning the [compat] to a single patch of a dependency seems overly strict.

Specifying
ArrayInterface = "3.1.32"

allows any ArrayInterface version such that v"3.1.32" <= VERSION < v"4".
So it's not allowing only one specific patch.
Anyway, these tests needed to be rerun:
https://github.com/JuliaSIMD/Polyester.jl/pull/62

Whoops!  I didn't realize that "^" is implicit there.  Thanks!
Also, sorry for the effective duplicate issue.  I checked the issues before posting, but not the PRs.  Glad to see you are a step ahead of me, though!

The reminder helped!


use std::thread::scope instead of scoped_threadpool

as it's easier to deal with TSAN false positives in the former API
as it surfaced in PR #280 the current supression rules don't handle newer versions of the
scoped_threadpool crate
trying to update the supression rules related to scoped_threadpool in PR #282 revealed that the
supression rules are masking (hiding) real data races:
https://github.com/japaric/heapless/pull/282#issuecomment-1113173358
std::thread::scope requires less supression rules and does not mask real data races -- for instance,
the data race in the linked issue comment is not masked when using std::thread::scope
tradeoffs:

pro: one less dev dependency but added a small build dependency
pro: supressions file is simpler
cons: std::thread::scope is only available on recent nightlies but the API is only used in tests so it doesn't affect the MSRV

r? @korken89


Wrong naming for PactMatchers REGEXes

In the file matchers.dart there is an inversion of UUID_REGEX and EMAIL_REGEX constants.
As EMAIL_REGEX contains the uuid regex, and UUID_REGEX contains the email regex.
But email() and uuid() use the correct regex.

Thank you for noticing! I was probably tired when committing that code. 😅
I will correct this shortly.


Create Tommy 24

I want a code for a war game like PUBG, and it has many weapons and characters, and it has mountains and snow maps, and two people can play it at the same time with each other or in a group using the hotspot.

Sounds promising

Bruh.

I love open source software


Taskcat crash when create nested Stack version:0.9.7

When I give one template to taskcat, it works well.
But if I test Nested stacks taskcat all-time shows error "TypeError string indices must be integers"

Has anyone encountered this problem?

@kokosandim are you able to provide some sample templates I could use to reproduce ?

@kokosandim will cut a release containing the fix for this shortly.

Ok, great! If I can help you, let me know

Thank you for your Great works!


Issue in compiling with xcode 8 - for legacy support - swift 2.3

Hi!
I am trying to use the library. I get error for below:
/APNGKit/Frame.swift:75:73: Nil is not compatible with expected argument type 'CGDataProviderReleaseDataCallback' (aka '@convention(c) (UnsafeMutablePointer<()>, UnsafePointer<()>, Int) -> ()')
Tried this for most versions of library - 0.1.0 to 0.1.4.
Please suggest way to deal with this. My project is in Swift 2.3, so need library compiled with 2.3 to be used.
Thanks!

Have you tried using version 0.2.2? It's in the readme that it supports 2.2 (not sure on 2.3)

yes, used the exact version via pods and also set Use Legacy Swift Language Version flag to YES.

:( Currently no Swift 2.3 support. I will try to add it later today.

I pushed the change into the swift2.3 branch. Now you can use this to integrate APNGKit to your Swift 2.3 project.
pod 'APNGKit', :git => 'https://github.com/onevcat/APNGKit.git', :branch => 'swift2.3'

喵神,我需要在swift2.3开发的私有库中依赖APNGKit，但像这样没有release的版本似乎是没办法用

s.dependency 'APNGKIt' :git => 'https://github.com/onevcat/APNGKit.git', :branch => 'swift2.3'
这种方式引入的，可否考虑下提交一个swift2.3的版本？麻烦啦

I added a tag 0.2.3 for it.

thanks

喵神请教下，我试了下

s.dependency 'APNGKIt' :git => 'https://github.com/onevcat/APNGKit.git', :tag  => '0.2.3'

发现还是不行的。我看cocoapods里有类似的issue，但并没有给出一个比较好的解决方法，推荐的还是用一个release的版本来添加依赖关系。请问我该如何利用tag，来实现在私有库中添加依赖关系呢？

喵神请教下，我试了下

s.dependency 'APNGKIt' :git => 'https://github.com/onevcat/APNGKit.git', :tag  => '0.2.3'

发现还是不行的。我看cocoapods里有类似的issue，但并没有给出一个比较好的解决方法，推荐的还是用一个release的版本来添加依赖关系。请问我该如何利用tag，来实现在私有库中添加依赖关系呢？

@d1248966459 I also published the 0.2.3 to CocoaPods, now you should be able to use it as a dependency. :)
https://github.com/CocoaPods/Specs/tree/master/Specs/0/6/4/APNGKit/0.2.3

非常感谢


Remove redundant import

Coverage remained the same at 82.884% when pulling f46b388bf38bd8debc6d34f17d8488623e157e12 on rust-av:remove-redundant-import into bfc0837ae55a14894fc2d0c7d1eaf90a493064ed on xiph:master.


Set the maximum log retention period beyond one month

Hi All,
I'm Ira, a member SAS Technical Support. A customer is asking whether it is possible to increase the maximum log retention period to beyond one month. If yes, how can it be done?
According to SAS PSD, "the customer will need log retention of more than 1 month because we are implementing complex processes under Viya 4 where 1700 users will be triggering logging jobs. The production start-up is done on a very tight schedule and we will need to follow the jobs launched in a precise manner and eventually go back to the logs history."
Thank you
Regards,
Ira

@irchum  We provide information about how to adjust the log retention period in the Log_Retention.md document in the logging sub-directory of our repo.
However, as mentioned in that document, we would strongly discourage customers from extending the log retention period to such a long period.  SAS Viya can generate a large number of log messages especially given the user population you mention.  Our monitoring solution is intended to help admins monitor on a day-to-day basis their health of their running SAS Viya system.  I'm not sure maintaining logs for 30 days really fits that use-case.   For example, our solution keeps all of the log messages collected during the entire retention period in memory at all times.  Doing that for 30 days would consume a huge amount of memory and most likely require additional OpenSearch nodes (over the 3 we deploy by default) to be deployed.
I am going to close this issue here and will follow-up with you via internal e-mail to discuss further.


fix(deps): update dependency cypress to ^13.3.1

This PR contains the following updates:

Package
Type
Update
Change
Pending

cypress
dependencies
patch
^13.3.0 -> ^13.3.1
13.3.2

Release Notes

cypress-io/cypress (cypress)
v13.3.1
Compare Source
Changelog: https://docs.cypress.io/guides/references/changelog#13-3-1

Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.

This PR has been generated by Renovate Bot.

We need also to update the cypress docker image, so I'll do it in another PR.

 You will get a PR once a newer version is released. To ignore this dependency forever, add it to the ignoreDeps array of your Renovate config.
If you accidentally closed this PR, or if you changed your mind: rename this PR to get a fresh replacement PR.


Fix missing fields listed only in the autocomplete

e.g. organism_id is only listed under autoCompleteQueryTerm.

Fixed in #12.


illegal memory access was encountered during first mAP calculations while training network

Training a new network.  Once it has reached iteration 1000, this is logged:
 (next mAP calculation at 1000 iterations)
 1000: 0.483266, 0.592546 avg loss, 0.002610 rate, 2.077195 seconds, 64000 images, 2.909745 hours left
4* * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* A fatal error has been detected.  Darknet will now exit.
* Error location: ./src/network_kernels.cu, network_predict_gpu(), line #744
* Error message:  current CUDA error: status=700, an illegal memory access was encountered
* * * * * * * * * * * * * * * * * * * * * * * * * * * * *
backtrace (11 entries):
1/11: /home/stephane/src/darknet/darknet(log_backtrace+0x38) [0x55ab1d538e18]
2/11: /home/stephane/src/darknet/darknet(darknet_fatal_error+0x178) [0x55ab1d539038]
3/11: /home/stephane/src/darknet/darknet(check_error+0x5c) [0x55ab1d53becc]
4/11: /home/stephane/src/darknet/darknet(check_error_extended+0x7c) [0x55ab1d53bf8c]
5/11: /home/stephane/src/darknet/darknet(network_predict_gpu+0x15f) [0x55ab1d63bb5f]
6/11: /home/stephane/src/darknet/darknet(validate_detector_map+0x9af) [0x55ab1d5cbdcf]
7/11: /home/stephane/src/darknet/darknet(train_detector+0x1698) [0x55ab1d5ceaf8]
8/11: /home/stephane/src/darknet/darknet(run_detector+0x897) [0x55ab1d5d2ad7]
9/11: /home/stephane/src/darknet/darknet(main+0x375) [0x55ab1d4ed685]
10/11: /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xf3) [0x7f424cd09083]
11/11: /home/stephane/src/darknet/darknet(_start+0x2e) [0x55ab1d4ef8fe]

This error does not happen when I turn off CUDNN in Darknet's Makefile:
CUDNN=0
CUDNN_HALF=0

Same thing happens to me. Using an RTX 3070 on Ubuntu 23.04 with Cuda 12.0 and cuDNN 8.9.1
 calculation mAP (mean average precision)...
 Detection layer: 30 - type = 28
 Detection layer: 37 - type = 28
4CUDA status error: file: ./src/network_kernels.cu: func: network_predict_gpu() line: 744
* * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* A fatal error has been detected.  Darknet will now exit.
* Errno 11: Resource temporarily unavailable
* Error location: ./src/network_kernels.cu, network_predict_gpu(), line #744
* Error message:  current CUDA error: status=700, an illegal memory access was encountered
* * * * * * * * * * * * * * * * * * * * * * * * * * * * *
backtrace (10 entries):
1/10: ./darknet(log_backtrace+0x38) [0x564261048698]
2/10: ./darknet(darknet_fatal_error+0x16f) [0x5642610488af]
3/10: ./darknet(check_error_extended+0xc5) [0x56426104c1a5]
4/10: ./darknet(network_predict_gpu+0x166) [0x564261166b16]
5/10: ./darknet(train_detector+0x1e61) [0x5642610dec51]
6/10: ./darknet(run_detector+0xa05) [0x5642610e85b5]
7/10: ./darknet(main+0x37a) [0x56426100669a]
8/10: /lib/x86_64-linux-gnu/libc.so.6(+0x23a90) [0x7f3832023a90]
9/10: /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0x89) [0x7f3832023b49]
10/10: ./darknet(_start+0x25) [0x564261008915]

I'm 100% certain that the fix described in https://github.com/AlexeyAB/darknet/issues/8669#issuecomment-1248904618 is the cause of this "illegal memory access was encountered".  The changes have been reverted.

I pulled the new changes. It didn't fix the error for me, but it changed the error message a little. Now some additional errors are printed along with the illegal memory access.
 (next mAP calculation at 2000 iterations)
 2000: 1.204594, 1.385511 avg loss, 0.000100 rate, 0.770990 seconds, 128000 images, 2.817951 hours left

 calculation mAP (mean average precision)...
 Detection layer: 30 - type = 28
 Detection layer: 37 - type = 28
4
CUDA status error: file: ./src/network_kernels.cu, network_predict_gpu(), line #744

* * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* A fatal error has been detected.  Darknet will now exit.
* Errno 11: Resource temporarily unavailable
* Error location: ./src/network_kernels.cu, network_predict_gpu(), line #744
* Error message:  current CUDA error: status=700, an illegal memory access was encountered
* * * * * * * * * * * * * * * * * * * * * * * * * * * * *
backtrace (12 entries):
1/12: ./darknet(log_backtrace+0x38) [0x5604a11c10b8]
2/12: ./darknet(darknet_fatal_error+0x15b) [0x5604a11c12bb]
3/12: ./darknet(check_error+0x5c) [0x5604a11c3ecc]
4/12: ./darknet(check_error_extended+0x83) [0x5604a11c3f93]
5/12: ./darknet(network_predict_gpu+0x166) [0x5604a12c15c6]
6/12: ./darknet(validate_detector_map+0x9af) [0x5604a1253b9f]
7/12: ./darknet(train_detector+0x14ca) [0x5604a12565da]
8/12: ./darknet(run_detector+0xa85) [0x5604a125a5d5]
9/12: ./darknet(main+0x406) [0x5604a117add6]
10/12: /lib/x86_64-linux-gnu/libc.so.6(+0x29d90) [0x7eff0ca29d90]
11/12: /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0x80) [0x7eff0ca29e40]
12/12: ./darknet(_start+0x25) [0x5604a117d075]

* * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* A fatal error has been detected.  Darknet will now exit.
* Error location: ./src/darknet.c, darknet_signal_handler(), line #439
* Error message:  signal handler invoked for signal #11 (Segmentation fault)
* * * * * * * * * * * * * * * * * * * * * * * * * * * * *
backtrace (14 entries):
1/14: ./darknet(log_backtrace+0x38) [0x5604a11c10b8]
2/14: ./darknet(darknet_fatal_error+0x15b) [0x5604a11c12bb]
3/14: /lib/x86_64-linux-gnu/libc.so.6(+0x42520) [0x7eff0ca42520]
4/14: /lib/x86_64-linux-gnu/libopencv_core.so.4.5d(_ZN2cv13parallel_for_ERKNS_5RangeERKNS_16ParallelLoopBodyEd+0x277) [0x7eff1c9bcbd7]
5/14: /lib/x86_64-linux-gnu/libopencv_imgproc.so.4.5d(+0x2e7442) [0x7eff1cee7442]
6/14: /lib/x86_64-linux-gnu/libopencv_imgproc.so.4.5d(_ZN2cv3hal11cvtBGRtoBGREPKhmPhmiiiiib+0x262) [0x7eff1ccce552]
7/14: /lib/x86_64-linux-gnu/libopencv_imgproc.so.4.5d(_ZN2cv8cvtColorERKNS_11_InputArrayERKNS_12_OutputArrayEii+0xa9b) [0x7eff1ccb6c1b]
8/14: ./darknet(load_image_mat_cv+0x7b2) [0x5604a1185ee2]
9/14: ./darknet(load_image_mat+0x5f) [0x5604a11860ef]
10/14: ./darknet(load_image_cv+0x34) [0x5604a11861a4]
11/14: ./darknet(load_image+0x32) [0x5604a12080a2]
12/14: ./darknet(load_thread+0x52d) [0x5604a122482d]
13/14: /lib/x86_64-linux-gnu/libc.so.6(+0x94b43) [0x7eff0ca94b43]
14/14: /lib/x86_64-linux-gnu/libc.so.6(+0x126a00) [0x7eff0cb26a00]

* * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* A fatal error has been detected.  Darknet will now exit.
* Errno 11: Resource temporarily unavailable
* Error location: ./src/darknet.c, darknet_signal_handler(), line #439
* Error message:  signal handler invoked for signal #11 (Segmentation fault)
* * * * * * * * * * * * * * * * * * * * * * * * * * * * *
backtrace (16 entries):
1/16: ./darknet(log_backtrace+0x38) [0x5604a11c10b8]
2/16: ./darknet(darknet_fatal_error+0x15b) [0x5604a11c12bb]
3/16: /lib/x86_64-linux-gnu/libc.so.6(+0x42520) [0x7eff0ca42520]
4/16: /lib/x86_64-linux-gnu/libc.so.6(+0x453fc) [0x7eff0ca453fc]
5/16: /lib/x86_64-linux-gnu/libc.so.6(on_exit+0) [0x7eff0ca45610]
6/16: ./darknet(darknet_fatal_error+0x165) [0x5604a11c12c5]
7/16: ./darknet(check_error+0x5c) [0x5604a11c3ecc]
8/16: ./darknet(check_error_extended+0x83) [0x5604a11c3f93]
9/16: ./darknet(network_predict_gpu+0x166) [0x5604a12c15c6]
10/16: ./darknet(validate_detector_map+0x9af) [0x5604a1253b9f]
11/16: ./darknet(train_detector+0x14ca) [0x5604a12565da]
12/16: ./darknet(run_detector+0xa85) [0x5604a125a5d5]
13/16: ./darknet(main+0x406) [0x5604a117add6]
14/16: /lib/x86_64-linux-gnu/libc.so.6(+0x29d90) [0x7eff0ca29d90]
15/16: /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0x80) [0x7eff0ca29e40]
16/16: ./darknet(_start+0x25) [0x5604a117d075]

I believe this is now fixed.  The illegal memory access was caused by the image memory getting freed incorrectly/prematurely when the image is resized.  https://github.com/hank-ai/darknet/commit/1ea2baf0795c22804e1ef69ddc1d7b1e73d80b0d


PEP fix styling around docstring

I found these styling errors around docstring in functions in various files that doesn't adhere to Python's PEP guidelines.
https://github.com/pybamm-team/PyBaMM/blob/9883106d84a8ad43b299ea4e0ce8ef58d395cb28/pybamm/citations.py#L29-L30
https://github.com/pybamm-team/PyBaMM/blob/9883106d84a8ad43b299ea4e0ce8ef58d395cb28/pybamm/settings.py#L32-L33
https://github.com/pybamm-team/PyBaMM/blob/9883106d84a8ad43b299ea4e0ce8ef58d395cb28/pybamm/util.py#L63-L64
Expected behavior
Find all those functions and replace " with 3 double quotes """ for consistency across the repository .
It can be marked as a good first issue

If anyone’s not working on it, I can get this done.

There are probably several other places where it's like this, I wasn't aware of the PEP guideline for this


feat: add the ability to show a release candidate as pre-release in the UI

Description

This PR will mark a release candidate/pre-release as pre-release for next version, with release date

Screeshots

Related issue(s)
https://github.com/asyncapi/website/issues/86

:thinking: Do we add the v back? It won't really affect the URL and such.

@aayushmau5 I'm honestly not sure, there are pros and cons for both. So maybe just leave it as it is, v is technical and without v is what user should anyway use in asyncapi: 2.0.0 field

@derberg Made some changes. Please review :)

Yeah, I think so. Everything done on the website side. Made some changes on the Actions. Just need to verify it, and we can merge it.


feat: Add CI and Semantic Release, template

:tada: This PR is included in version 1.1.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Fix double import and reintroduce lost change

This fixes a double import that was introduced in e90f0a8 and reintroduces a
change from 90a1ad5 that got lost.

damnit. Yeah, that's better. Thx.

free to merge.


updating metadata for Playbooks template update

Fixes #
Added post-deployment steps to metadata
release notes moved to appropriate folders
Proposed Changes

Hey @BenjiSec, We have resolved the issue for PR Validations failure and request you to please update your PR branch with the latest changes from Azure:master so that the PR Validations can be executed.... Thanks!!!


Invalid static type for type-cast-expression

Description:
The spec says
type-cast-expr := < type-cast-param > expression
type-cast-param := [annots] type-descriptor | annots

Let T be the static type described by type-descriptor, and let TE be the static type of expression. Then the static type of the type-cast-expr is the intersection of T and TE', where TE' is TE with its xml shapes and numeric shapes transformed to take account to the possibility of the implicit conversion and numeric conversion specified in the previous paragraph.
Steps to reproduce:
Thus, according to the spec, the following is valid.
boolean b = true;
boolean x = <json> b;

But in the implementation, T is considered to be the static type.
Affected Versions:
slp1

See https://github.com/ballerina-platform/ballerina-spec/issues/564

Will revisit once https://github.com/ballerina-platform/ballerina-lang/issues/24078 is fixed


remove version file from vcs

Let's follow this advice :stuck_out_tongue:
https://github.com/deathbeds/pidgy/blob/c12086cf9b8739e97d80c0e6fd4a370a0dd9844d/src/pidgy/_version.py#L3
The problem is that setuptools_scm will only use the tag as version if the git HEAD is exactly at the tag and the tree is not dirty, i.e. no local changes. The first is fine in this CI run, but the second is violated. By building again, we change the content of src/pidgy/_version.py and thus we have local changes.
There is a easy remedy: delete the file from tracking and ignore it in the future. Now, every time we reinstall this file changes, but this will not make the git tree dirty.

thanks for catching this mistake and informing me of the proper way to use this!


Release 1.0.0

Pull Request Test Coverage Report for Build test-124
Warning: This coverage report may be inaccurate.
This pull request's base commit is no longer the HEAD commit of its target branch. This means it includes changes from outside the original pull request, including, potentially, unrelated coverage changes.

For more information on this, see Tracking coverage changes with pull request builds.
To avoid this issue with future PRs, see these Recommended CI Configurations.
For a quick fix, rebase this PR at GitHub. Your next report should be accurate.

Details

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 24.061%

Totals

Change from base Build test-123:
0.0%

Covered Lines:
141

Relevant Lines:
586

💛  - Coveralls


Update installation.rst

David
Add some sudo and an example of the directory)
Roger

Applied in commit -> https://github.com/D4H-VA/smartva-dhis2/commit/3c5799bc45801dd9450edfdb40f9ca06a1d07596


[49_re_with_feedback] typos

Hi @jstac , this PR corrects the following typos in lecture re_with_feedback:

This requirees -->> This requires
eigenector -->> eigenvector
is given to us an an initial condition -->> is given to us an initial condition
intial -->> initial

Nice work, thanks @shlff

Nice work, thanks @shlff


Could we improve logs?

While I was following the book the biggest problem for me was how unreadable the logs appeared to be. Main problem is they're all on one line and there is no indentation so it's really hard to figure out what's going on at a glance.
I ended up doing fuckery of my own which resulted in something looking like this:

It's not perfect by any means, but it has colors and some newlines at least. Can tracing-bunyan (or whatever you're using - I forgot what it was) be extended to support pretty printing a log event and optionally add colors?

tracing-bunyan-formatter is optimised for production usage—you won't be eyeballing logs in a terminal; they'll be shipped to a system that gives you a query interface and a nice UI to sift through them (e.g. Elastic, Honeycomb, etc.).
You can use a different tracing subscriber for local development, but that's outside what tracing-bunyan-formatter cares about.


example used, if applied, breaks other resource deployments, such as SQL Database

the example used (storage account) for the policies has adverse impact, if deployed to a scope. storage accounts are also deployed implicitly with e.g. SQL Database. the two deny polices (#1 and #2) will be triggered regardless but for implicit deployments via the portal there is no way for a customer to satisfy the policies as the respective settings are not exposed.
it would be good to add info on how to overcome this in a real-life scenario and -short term- add a note to that respect as i already had a customer run into this causing grief and negative attitude against us.

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

ID: 2bd28f7b-1764-83c9-9d82-d65ba75bcb94
Version Independent ID: e91679fb-9d61-7f89-5cb6-238e2eb91757
Content: Private Link and DNS integration at scale - Cloud Adoption Framework
Content Source: docs/ready/azure-best-practices/private-link-and-dns-integration-at-scale.md
Service: cloud-adoption-framework
Sub-service: ready
GitHub Login: @JefferyMitchell
Microsoft Alias: brblanch

Thanks for reporting - this issue is under review. This is a Microsoft Internal DevOps Bug ID # 490168

Thank you for your feedback. We have created internal ticket 24390 to track and investigate this issue.

#please-close


Reset filter options state on logout

Overview
Resets the filter options state on logging out to fix a bug whereby the
facilities list link was being incorrectly set.
Connects #278
Testing Instructions

try to recreate the bug described in #278 and verify that it's fixed

Taking a look now.

Thanks for reviewing! I added similar clear functionality to the Facilities reducer and also to the UI Reducer just to ensure that data is cleared on log out, too.


missing information about "Create incidents" option

No information about "Create incidents" option of this connector, the one that is incorrectly in point 3 here
https://docs.microsoft.com/en-us/azure/sentinel/connect-azure-active-directory

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

ID: 1545d56e-b946-cdf3-8507-31798a67ca9d
Version Independent ID: 2bcb937a-a37d-562f-99b7-0747d6df210c
Content: Connect Cloud App Security data to Azure Sentinel
Content Source: articles/sentinel/connect-cloud-app-security.md
Service: azure-sentinel
Sub-service: azure-sentinel
GitHub Login: @rkarlin
Microsoft Alias: rkarlin

@mariuszo-at-microsoft-com
Thanks for your feedback! We will investigate and update as appropriate.

@mariuszo-at-microsoft-com I've assigned this to the author but feel free to make pull requests to any of these documents if you have better suggestions.
I don't have access to a Sentinel tenant yet so can't confirm.

Hi @mariuszo-at-microsoft-com - thanks for your extensive comments on docs.
I'm adding this into our backlog to verify afresh as this issue is over a year old.
I'm going to close it in the meantime, but feel free to add more comments if you have any additional feedback.
Thanks again for your contributions to Microsoft docs!
#please-close


Rename remove_chunk to remove_first_chunk

The current name can be confusing to people following the book as there is ambiguity in the possible implementation if they don't look at the comments provided in the hint stub.

Thanks!


Fix for AxisAlignedBoundingBox clone method

before the fix - if result was not defined returned constructed AxisAlignedBoundingBox without copying over center value.
The issue with this is that if the user, for their own purposes, constructed  a center value with an offset s.t. the minimum and maximum weren't the same distance away from the center parameter, the clone method would not consider this form of construction and just solve for the default center based on max and min values.
Additionally, since the minimum and maximum values are defined in relation to the center (ie as if the center was the origin for them) the clone's box's overall position doesnt match that of the box it's cloning.

@hanbollar, thanks for the pull request! Maintainers, we have a signed CLA from @hanbollar, so you can review this at any time.

I am a bot who helps you make Cesium awesome! Contributions to my configuration are welcome.
:earth_africa: :earth_americas: :earth_asia:

Good catch @hanbollar!
I think we prefer this fix though
if (!defined(result)) {
    return new AxisAlignedBoundingBox(box.minimum, box.maximum, box.center);
}

Also, please add a unit test

@hpinkos updated with your recommendations - lmk if there's anything else you think I should do before it can merge. Thanks!

Perfect, thanks @hanbollar!


[textanalytics] Add azure-ai-nspkg to artifacts in ci.yml

Given that the package isn't set to be universal, I have a feeling that the set of artifacts will have a py2 and py3 whl generated separately.

@scbedd thanks for pointing that out. I think I added the correct setup.cfg file to fix this, can you verify?

@kristapratico Absolutely, will wait for next set of checks

Well, it says 5 artifacts but only shows 4 published: link
Looks like the nspkg is no longer being generated with separate py2 and py3 whls.

Aligns with what we published for azure-keyvault-nspkg!
LGTM!

Thanks Scott. That makes a lot of sense :)


[UI] Version card on Dashboard page has dark font

Setup

Epinio version: v1.9.0-27-g636dbd70
Epinio UI version: ghcr.io/epinio/epinio-ui:latest-next
Browser type & version: Brave v1.57.57

Describe the bug
The color of the font in the version chip is dark. Not sure if perhaps related to https://github.com/epinio/ui/issues/316

In previous versions, the color was white in line with the rest of the buttons

To Reproduce
Deploy the latest Epinio using the latest UI image
Result
Font is dark
Expected Result
Font should be the same as in the rest of the action buttons with a blue contour (white in this case)
Screenshots

Additional context

Seems fixed:
Tested in Rancher with latest Epinio after patching latest UI image

Checked in v1.10.0-rc1 and ok:


Further QuTiP methods

I have added further QuTiP methods like rand_dm, rand_ket. Also, some other methods like isdm that checks whether a density matrix is a valid density matrix or not

Not sure what's going wrong. Tests pass locally on my machine but fail here
@nathanshammah @quantshah Any ideas why?


network: delete duplicated function getEnvoyLoopbackAddress

Signed-off-by: Radim Hrazdil<EMAIL_ADDRESS>What this PR does / why we need it:
Deletes duplicated function that sneaked in probably during rebase
Which issue(s) this PR fixes (optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close the issue(s) when PR gets merged):
Fixes #
Special notes for your reviewer:
Release note:
NONE

/approve


Windows doc gens show ^M chars

When generating docs on windows, newlines are rendered as '^M'.  Need to track down where this \r\n behavior is being introduced.

Was this ever resolved?

@HipsterZipster Nope, still an issue as of today

This seems to do with how newline characters in Windows are handled in VIM.
From DOS vs. Unix Line Endings:

DOS/Windows uses a Carriage Return + Line Feed (<CR><LR>)  (\r\n)
Unix/Linux just uses a Line Feed  (<LR>)  (\n)

From How Is Newline Handled in Python and Various Editors?:

When you use e ++ff=unix3 to force Vim to treat this file as a unix file. Vim will then treat the \n characters as newline, thus removing it from the buffer. But the \r characters in the file will now be treated as normal characters and will be shown as ^M

See Also

What is ^M and how do I get rid of it?
How do I hide the eol doc chars ^M in VIM
Vi on Linux: show ^M line endings for DOS-format files


Speed throttling while downloading

I guess this won't be solveable, but I'll post it anyways. The download always begins at a very high speed (~ 3 Mbit/s) before being throttled to ~45 Kbit/s.

This seems to be fixed on the newest release. I would vote to close.

Doesn't seem to be an issue anymore.


nodemon dependency in botbuilder-teams

nodemon is defined as a dependency. It should probably be a dev dependency.
https://github.com/OfficeDev/BotBuilder-MicrosoftTeams/blob/master/Node/package.json#L16

Good catch. Created a PR to move it: https://github.com/OfficeDev/BotBuilder-MicrosoftTeams/pull/99


Use localhost rather than <IP_ADDRESS> (fixes #38).

See #38 for more details.

Codecov Report

Merging #61 into master will decrease coverage by 0.37%.
The diff coverage is 100%.

@@            Coverage Diff             @@
##           master      #61      +/-   ##
==========================================
- Coverage   84.65%   84.28%   -0.38%
==========================================
  Files          18       18
  Lines         352      350       -2
  Branches       20       19       -1
==========================================
- Hits          298      295       -3
- Misses         38       41       +3
+ Partials       16       14       -2

Impacted Files
Coverage Δ

testcontainers/core/container.py
88.15% <100%> (+2.26%)
:arrow_up:

testcontainers/core/utils.py
52.38% <0%> (-14.29%)
:arrow_down:

Continue to review full report at Codecov.

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


Fix: include security note for JWT and password in history

Proposed changes
As noted in the linked GitHub issue, I've set up a modified version of https://github.com/nginxinc/docs-platform/issues/156#issuecomment-2221084455 in an "include," and added it to the relevant docs in this repository.
This change is functionally identical to https://github.com/nginxinc/docs/pull/990
JIRA ID:
GitHub Issue:
Partially closes https://github.com/nginxinc/docs-platform/issues/156
Closes #ISSUE
Checklist
Before creating a PR, run through this checklist and mark each as complete.

[ ] I have read the CONTRIBUTING doc
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] I have checked that all unit tests pass after adding my changes
[ ] I have updated necessary documentation
[ ] I have rebased my branch onto main
[ ] I will ensure my PR is targeting the main branch and pulling from my branch from my own fork

Release notes
If this PR introduces a change that affects users and needs to be mentioned in the release notes,
please add a brief note that summarizes the change.

I previewed the build locally and the updates look great. Thanks! :)

pre-commit.ci autofix


Update Android Studio to 4.2.2

[x] Have you signed the Contributor License Agreement?
[x] Have you checked that there aren't other open pull requests for the same manifest update/change?

[x] Does your manifest conform to the 1.0 schema?

Microsoft Reviewers: Open in CodeFlow

4.2 already exists but is not the same as 4.2.2

then you'll have to update the existing manifest; otherwise if people do winget upgrade Google.AndroidStudio they're going to end up in a upgrade loop which will waste bandwidth resources.

I see I updated the PR to change the installer for 4.2


Support setting max contacts in dartsim's ODE collision detector

🎉 New feature
Summary
Support setting max number of contacts between collision pairs.

Added a new MaxContacts feature.
Support for this is currently only implemented when the ode collision detector is used in dartsim (which is the default collision detector).

This is done by overriding the collide function in dartsim's OdeCollisionDetector class to post process the contact results. Not ideal as it involves copying contact data. It would be nice if dart provides some hooks / callback into their collision checking process e.g. here so we can avoid the copy.

Added test to make sure the max contact value does limit the no. of contacts.
See https://github.com/gazebosim/gz-sim/pull/2270 for testing with gz-sim.
Checklist

[x] Signed all commits for DCO
[ ] Added tests
[ ] Added example and/or tutorial
[ ] Updated documentation (as needed)
[ ] Updated migration guide (as needed)
[ ] Consider updating Python bindings (if the library has them)
[ ] codecheck passed (See contributing)
[ ] All tests passed (See test coverage)
[ ] While waiting for a review on your PR, please help review another open pull request to support the maintainers

Note to maintainers: Remember to use Squash-Merge and edit the commit message to match the pull request summary while retaining Signed-off-by messages.

I see the upstream Ode collision detector has the option to limit contacts https://github.com/dartsim/dart/blob/b7f5dd1cee755fe0e7a43c8c83794f22452501c1/dart/collision/ode/OdeCollisionDetector.cpp#L317. Is it not possible to use that?

I see the upstream Ode collision detector has the option to limit contacts https://github.com/dartsim/dart/blob/b7f5dd1cee755fe0e7a43c8c83794f22452501c1/dart/collision/ode/OdeCollisionDetector.cpp#L317. Is it not possible to use that?

That's the flag we're setting in EntityManagementFeatures.cc. I noticed that it limits the max number of contacts for all entities instead of max contacts per collision pair.

That's the flag we're setting in EntityManagementFeatures.cc. I noticed that it limits the max number of contacts for all entities instead of max contacts per collision pair.

Ah, I think I understand now. So, this PR makes it so that each collision pair will have the same number of max contacts. This as opposed to the total number of contacts in the world being limited to the max contact parameter. Is that right?
I think Gazebo-classic also had a way to set the max contact parameter for each <collision>. This is different from that right?

This as opposed to the total number of contacts in the world being limited to the max contact parameter. Is that right?

yes that's correct

I think Gazebo-classic also had a way to set the max contact parameter for each . This is different from that right?

yeah that's a related feature which gives users finer control of max contacts for a specific collision.

@azeey  to review.

This as opposed to the total number of contacts in the world being limited to the max contact parameter. Is that right?

yes that's correct

I think Gazebo-classic also had a way to set the max contact parameter for each . This is different from that right?

yeah that's a related feature which gives users finer control of max contacts for a specific collision.

I think we should be careful about naming the features and APIs to make it clear which interpretation of max contacts is being used. Here's some suggested feature names:

maximum total number of contacts allowed in a world: gz::physics::WorldMaxTotalContacts
default maximum number of contacts for a collision pair: gz::physics::CollisionPairMaxTotalContacts
maximum number of contacts for a specific collision, which overrides the CollisionPairMaxTotalContacts value, and requires some logic for merging the parameters for each collision shape in a pair if they both have it specified: gz::physics::CollisionMaxTotalContacts

I think we should be careful about naming the features and APIs to make it clear which interpretation of max contacts is being used. Here's some suggested feature names:

Great, thanks for the suggestions. For the feature in this PR, I renamed it from MaxContacts to gz::physics::CollisionPairMaxTotalContacts. 98b5e61

I think we should be careful about naming the features and APIs to make it clear which interpretation of max contacts is being used. Here's some suggested feature names:

Great, thanks for the suggestions. For the feature in this PR, I renamed it from MaxContacts to gz::physics::CollisionPairMaxTotalContacts. 98b5e61

thanks; I just wrote the first thing that came to mind; we can see if @azeey has any different naming suggestions. At risk of bike-shedding, I think I only meant to include Total in the WorldMaxTotalContacts feature name, so the feature in this PR could be shortened to CollisionPairMaxContacts, but I'll let @azeey make the call (and apologies for the churn)

At risk of bike-shedding, I think I only meant to include Total in the WorldMaxTotalContacts feature name, so the feature in this PR could be shortened to CollisionPairMaxContacts, but I'll let @azeey make the call (and apologies for the churn)

ok no problem. @azeey any thoughts on naming? I'll make the change if Addisu agrees.

CollisionPairMaxContacts sounds good to me. I think having "total" would add confusion since it might imply the total number of contacts in the world.

CollisionPairMaxContacts sounds good to me.

ok updated! b140329


【array_to_bitmap】function result error

Steps to reproduce the behavior (Required)

SELECT  '....'

select bitmap_to_array(array_to_bitmap([0,1,0]));

Expected behavior (Required)
[0,1,0]
Real behavior (Required)
mysql> select bitmap_to_array(array_to_bitmap([0,1,0]));
+---------------------------------------------+
| bitmap_to_array(array_to_bitmap([0, 1, 0])) |
+---------------------------------------------+
| [0,1]                                       |
+---------------------------------------------+
1 row in set (0.00 sec)

StarRocks version (Required)

You can get the StarRocks version by executing SQL select current_version()

+----------------------------+
| current_version()          |
+----------------------------+
| BRANCH-2.3-RELEASE 110cb4d |
+----------------------------+

which is right, not the bug.


[core] Migrate extend ButtonBaseProps typings

[x] I have followed (at least) the PR section of the contributing guide.

Closes #15791

Whilst doing this I saw that some class key typings don't use camel case e.g. Classkey vs ClassKey

Bit confused about the title. Where do we migrate the typings to? Looks more like we're making more button related components generic.

Migrating them to a different syntax,  if you have an alternative title feel free to change it :) Just didn't want to make it wordy.


Property named id not possible when using @Persisted property wrapper

When declaring a class with @Persisted properties, a property named _id cannot exist alongside a property named id.
Code Sample
class DemoClass: Object {
    @Persisted(primaryKey: true) var _id: ObjectId = ObjectId.generate() // Error:  Invalid redeclaration of synthesized property '_id'
    @Persisted var id: String = ""
}

This scenario works when using the old @objc dynamic var declaration of properties:
class DemoClass: Object {
    @objc dynamic var _id: ObjectId = ObjectId.generate()
    @objc dynamic var id: String = ""

    override static func primaryKey() -> String? {
        return "_id"
    }
}

Version of Realm and Tooling
Realm framework version: 10.11.0
Xcode version: 12.5.1
iOS/OSX version: 14.5
Dependency manager + version: Carthage 0.38.0

This is just how the swift property wrapper feature works, so there probably isn't anything we can do about it.

I have this same problem and I have a requirement to use a field named "id" in addition to "_id". Is there nothing that can be done with @Persisted to work around this, or are we stuck doing our model classes the "old way"?
And it's all or nothing, right? We can't mix @Persisted with objc dynamic var because once we use @Persisted once in a class, it will ignore the fields that use objc dynamic according to the docs:

If a class has at least one @Persisted property, all other properties will be ignored by Realm. This means that they will not be persisted and will not be usable in queries and other operations such as sorting and aggregates which require a managed property.

A dumb workaround would be to define the id property in a base class using the legacy syntax, and then inherit from that and define the rest of your properties in the subclass. You can't mix the two in a single class definition, but you can mix them within a class hierarchy.
Is your _id property just to conform with sync's requirement and something that you aren't actually using directly? Independently of this I've been thinking that we should just synthesize that property if you don't explicitly declare it when using sync and that would sorta sidestep this problem in some cases.

 I have ~20 model classes that all have an id property that I could use in a base class and extend that ~20 times into specific model classes with @persisted properties. That sounds pretty good to me for the time being.
Yes, the _id property is just to conform to the Atlas/Realm Sync requirements that use that name automatically...although the part of our system that populates Atlas with data outside of Realm is using this _id name as well as it inserts documents into collection (or perhaps that's Atlas itself?)

Ah, you'll need to put both _id and id in the base class so that the base class has a primary key. You also could explicitly specify objectTypes in your configuration to exclude the base class so that it doesn't need to be sync-compatible. A more "clever" way to do that while continuing to use automatic type discovery would be something like class BaseClass { override class func shouldIncludeInDefaultSchema() -> Bool { self != BaseClass.self } }.
That error message from sync should mean that the PK is optional on the server. It'd be nice if the error actually said which one was which, but I think the code doing the merging may not actually know that.

Thanks @tgoyne !
Here is what worked for me today: (RealmSwift SDK 10.12)
class IDObject: Object {
    @objc dynamic var id: Int = 0
    @objc dynamic var _id: ObjectId = ObjectId.generate()

    override class func primaryKey() -> String? {
        return "_id"
    }

    override class func shouldIncludeInDefaultSchema() -> Bool {
        self != IDObject.self
    }
}

class mymodel: IDObject, ObjectKeyIdentifiable {
    @Persisted var name: String?
}

I also needed to make both "_id" and "id" required properties on the Atlas Realm Schema end, so they would not be nullable.
Data syncs, so we're good to go for now with this implementation.

All my models have a primary key of @Persisted(primaryKey: true) var id: String, (i consume from JSONAPI) for the last few hours i've been trying to figure out why all of a sudden one of my models is generating a schema, just for this model, with an id of string but not marked as a primary key.
The only thing i did today was integrate/update a few swiftui components we have, and that included adding ObjectKeyIdentifiable
https://github.com/realm/realm-cocoa/blob/v10.5.1/RealmSwift/Combine.swift#L38
Obviously this var id: UInt64 { get } would fail to compile since i have a String id, but this extension https://github.com/realm/realm-cocoa/blob/v10.5.1/RealmSwift/Combine.swift#L47 is squashing the issue.
Still dont understand how schema is able able to get the string id in there, but that extension sure looks dangerous.

https://github.com/realm/realm-cocoa/blob/master/Realm/RLMObject_Private.h#L83
This is confusing, i don't understand the motivation. Is this MongoDB specifics leaking into the SDK or something?  My models already conform to Identifiable. Why does @ObservedRealmObject require ObjectKeyIdentifiable conformity? Shouldn't Identifiable be enough?

/// You can also manually conform to Identifiable if you wish, but note that
/// using the object's memory address does not work for managed objects.

This is confusing.  Are you just trying to say if your model doesn't have a primary key, you can't conform to Identifiable, and you obviously cant just randomly hash an instance of Object and expect it to be unique. Or is this something internal related to swiftui

ObservedRealmObject shouldn't require ObjectKeyIdentifiable and I think that's just an oversight. ObjectKeyIdentifiable is intended as just a convenience helper for making types without primary keys conform to Identifiable.

https://github.com/realm/realm-cocoa/pull/7391 relaxes the protocol requirement from ObjectKeyIdentifiable to Identifiable.


Disconnect between server and kernel when moving from local to remote

Note: this was using the interactive window
Step 1: Set to local server start up
Step 2: Start up Interactive Window connect to a kernel (I used 2.7 since that was only on this machine)
Step 3: Set remote server to my Mac machine
Step 4: Execute something in the input box of the interactive window
Result:

Jupyter server has updated from local to the address of my mac machine. But the kernel next to it is still my windows box local 2.7 kernel, and I'm still on my windows machine.

Unfortunately I still (inspite of the detailed steps) don't understand the issue, sorry.

@DonJayamanne . The text next to "Jupyter Server" was (before my change) being pulled from the Jupyter URI VS Code setting, not from the current connection. So if you started up a session and made a location connection, then changed the jupyter URI setting to a remote URI, then executed code that "Jupyter Server" text would update to the remote URI. However you are still in the local connection session. So the text was incorrect. I changed it to pull the text from the currently active connection instead of the setting. Does that explain it better?

Yup, in that case validated.

Thanks for the clarification.


[Horizontal List] Strange alignment in smaller screens

When displaying the horizontal list in a small screen, the wrapped items have this strange space in the left side instead of perfectly aligning like a grid.

This is happening because the horizontal list is using margin-left to separate the elements (and setting the margin of the first element to zero). I believe a better option is to use margin-right and set the margin of the last element to zero.

This still seems to be a problem.
This also happens in large screens when we have a large number of items, when they span on the next row then the issue is still visible

The original PR's #4701 and #4502 both forgot to take care of the divided horizontal variant.
We finally also took care of it :slightly_smiling_face: See https://github.com/fomantic/Fomantic-UI/pull/353


Blast Bug

We should blast the part that is given by hmmer and not the whole gene.
This should be fixed in two parts:
@bosterholz

[x] will update the hmmer part, so that start, stop or length is available overview.txt

@pbelmann

[ ]  will update the html and the higlight the sequence in the sequence viewer.

see 8f156f5


Closes #98. Executable stubs have better check before execution

Support for .sh executables no longer exists.  Executable files must have the
executable bit turned on.
Signed-off-by: Ruben Koster<EMAIL_ADDRESS>

@supertopher thanks!


RSS Hash value returned by the gvnic pmd dpdk driver is different and is not matching the one computed by Toeplitz.

We are using a C3 GCP instance having GVNIC with DPDK enabled.
We are using latest version of DPDK ( dpdk-24.03 ) to configure RSS key, we understand C3 GCP instance with gvnic supports Toeplitz rss algorithm ( Reference - https://github.com/google/compute-virtual-ethernet-dpdk/blob/main/gve_ethdev.c ), but we are hitting below issue.
Problem Statement - The RSS Hash value returned by the gvnic driver is different and is not matching the one computed by Toeplitz.
Using below script to compute rss hash value from Toeplitz.
(https://gist.github.com/joongh/16867705b03b49e393cbf91da3cb42a7)
Consider below data to compute RSS Hash value -
Source IP - <IP_ADDRESS>
Destination IP - <IP_ADDRESS>
Source Port - 49442
Destination Port - 55327
RSS Key  - {0x94e3e97e, 0x4abac401, 0x1e0edbf, 0xe059e1f4, 0xb6e27dff, 0xdf55c916, 0xe9e6e4db, 0x1f9fb82c, 0x1e0edbf, 0xe059e1f4}
Hash Value returned by Toeplitz - 0x8bbafd0f
Gvnic dpdk pmd driver which uses Toeplitz RSS hash algorithm too is expected to compute above RSS Hash value but we see the Hash value stored in dpdk mbuf to be 0xc6a15941 which is not right.
From the DPDK side we have ensured RSS offloading configuration is done appropriately, but still we are seeing above mismatch.
We request you to please help us understand why this mismatch is happening and is this expected behavior of gvnic on C3 instance.
@google-admin , @josh8551021 , @rushil-google @jeroendeb  Please provide your insights

This occurred due to an endian mismatch on the DQ queue format, and was fixed in https://github.com/google/compute-virtual-ethernet-dpdk/commit/df9c45c2591d7f596942dcb0610efb2965645124.


⚠ ClamAV has degraded performance

In 47be301, ClamAV (https://spamassassin.apache.org/) experienced degraded performance:

HTTP code: 200
Response time: 81 ms

Resolved: ClamAV performance has improved in 35b6d9d.


Improve controller authoring experience for AddMvcCore

See this comment thread: https://github.com/aspnet/Mvc/issues/3083#issuecomment-137599872
Right now it's confusing if you do AddMvcCore() and then try to use Controller. You'll get an exception about ITempData not being found in the service provider.

a2393f21be55c5c02ea67df55407aa7585121173


Attribution changes title position

Thanks for this extension!
I discovered, that the adding of an attribution (even without content) changes the placement of H1 headings (for H2 nothing changes), until now I could not find the reason. Do you know where to fix this?
E.g.
# Slide1

without attribution heading is in center

# Slide2

with attribution heading is top

::: {.attribution}
:::

It looks to me like RevealJS is allocating space for the attributiondiv on the slide, even though it will displayed off to the right.
Here is a workaround, though I can't vouch for how well it will generally work:
---
format: revealjs
revealjs-plugins:
  - attribution
include-in-header:
  text: |
    <style>
    section.title-slide {
    	top: 252px !important;
    }
    </style>

---

# Slide1

without attribution heading is in center

# Slide2

with attribution heading is top

::: {.attribution}
Hello World
:::


Kivy starts on library import not on App.run

Software Versions

Python: Python 3.9.7
OS: Ubuntu 20.04.2 LTS
Kivy: 2.0.0
Kivy installation method: pipenv

Describe the bug
Just by importing the Kivy library and not by running App.run a blank/black window is opened and immediately closed. Specifically it seems that the kivy.core.window.Window import causes this side-effect.
Expected behavior
I would expect that an import doesn't cause any side-effects i.e. a blank/black window to be opened, an import should only provide me the tools to implement an application. I would expect that a window would only appear when I run App.run.
To Reproduce
Simply by running the code snippet below I see a blank window flash for a moment.
Code and Logs and screenshots
snippet.py:
import kivy
from kivy.app import App
from kivy.uix.button import Button
from kivy.uix.gridlayout import GridLayout
from kivy.uix.label import Label
from kivy.core.window import Window
from kivy.properties import NumericProperty

The execution of that snippet results in Kivy to be instantiated and a blank window to appear.
$ python snippet.py
[INFO   ] [Logger      ] Record log in $REDACTED_HOME/.kivy/logs/kivy_22-01-08_42.txt
[INFO   ] [Kivy        ] v2.0.0
[INFO   ] [Kivy        ] Installed at "$REDACTED_HOME/.local/share/virtualenvs/client-MAI5BRQn/lib/python3.9/site-packages/kivy/__init__.py"
[INFO   ] [Python      ] v3.9.7 (default, Dec 27 2021, 14:55:58)
[GCC 9.3.0]
[INFO   ] [Python      ] Interpreter at "$REDACTED_HOME/.local/share/virtualenvs/client-MAI5BRQn/bin/python"
[INFO   ] [Factory     ] 186 symbols loaded
[INFO   ] [Image       ] Providers: img_tex, img_dds, img_sdl2 (img_pil, img_ffpyplayer ignored)
[INFO   ] [Text        ] Provider: sdl2
[INFO   ] [Window      ] Provider: sdl2
[INFO   ] [GL          ] Using the "OpenGL" graphics system
[INFO   ] [GL          ] Backend used <sdl2>
[INFO   ] [GL          ] OpenGL version <b'4.6 (Compatibility Profile) Mesa 20.2.6'>
[INFO   ] [GL          ] OpenGL vendor <b'X.Org'>
[INFO   ] [GL          ] OpenGL renderer <b'AMD RENOIR (DRM 3.40.0, 5.10.0-1038-oem, LLVM 11.0.0)'>
[INFO   ] [GL          ] OpenGL parsed version: 4, 6
[INFO   ] [GL          ] Shading version <b'4.60'>
[INFO   ] [GL          ] Texture max size <16384>
[INFO   ] [GL          ] Texture max units <32>
[INFO   ] [Window      ] auto add sdl2 input provider
[INFO   ] [Window      ] virtual keyboard not allowed, single mode, not docked

Note: I can of course make these imports dynamic, but that kind of seems like a hack, would be nice to have a more elegant solution.

This is expected to happen. The intention is not like OpenCV with its cv.imshow('Frame', frame).

@kuzeyron Ah, very well. I guess it's reasonable, especially knowing the main use-case of the framework - standalone apps. I just wanted to use it differently - not as a standalone app, but as an app I can spawn in a CLI tool when needed.
Anyway, for now switched to dynamically importing the kivy library (probably not the prettiest of solutions) and will consider using something more appropriate for my use case in the future. Cheers! :)