Stabs integrating RED metrics, though limited by internal apis

There's some feedback from #22 that needs to be incorporated.
As edits from maintainers are allowed, I'd appreciate working directly on this vs routing through me during small timezone windows :)
Of course if there are any brave-specific questions you can ask, and you can also close out this PR if it isn't that helpful or it is obviated by other work.

This is now handled in https://github.com/wavefrontHQ/wavefront-spring-boot/commit/b757bb202cd6afc140c705dd360565e38bba599b
Closing this PR.


mDNS Repeater plugin: Enable blocklist parameter in the gui to allow blocking subnets.

This pull request should mitigate the problem described in this forum post:
https://forum.opnsense.org/index.php?topic=44083.0
It will allow the user to add a subnet to be blocked by the mDNS Repeater. The parameter is already available in the program itself.
This is my very first commit to this repository. Comments are very much welcome. FYI I have also mailed Franz Fabian, maintainer of the mDNS Repeater plugin for OPNsense.

https://github.com/geekman/mdns-repeater/releases/tag/1.11
It says here that it supports 16 addresses in a blocklist. Why is it limited to 1 in the PR?

 I honestly thought it was a lot easier than expected. I have now created a virtual dev environment on my promox. I have installed the modified plugin and it appears now to be working. I did however also realize that changes needs to be made to mens-repeater port. It needs to support black list on the command line as well. I have med the changes, and will create a PR for the ports repository anytime soon. This PR is dependent on acceptance on the ports pull request.

Yeah some things that seem easy can become quite complicated, we're all learning every day. :)
What do you mean you have to do a PR in ports? The ports are mostly synchronized from upstream. Can you explain what exactly you need that is not working right now?

The command line for the mens-repeater need to support blacklists. This is the PR:
Support blacklist on the commandline #208

You're right. Since the code is pulled from https://github.com/kennylevinsen/mdns-repeater/ I will make the pull request here instead. I have deleted my pull request to the ports repository. Oh-my...

Its okay, one step at a time. If you have questions don't be afraid to ask.

It actually turns out that this particular change is not possible to make upstream. Hence the PR for the opnsense ports collection is uphold.

The .in file comes from a different upstream, the FreeBSD ports. They only have a copy on github, the real place to patch that file is in their bugzilla.
Before going that long hard route, I would try if you can script your way around in the jinja template to construct all parameters you need into the existing variable. (if possible)

PR closed in ports collection. Jinja script mods to support blacklist using existing env variable.

@Kodehyrden While testing I found some weird things so I made a cleanup of the plugin code and included your change into it. I hope thats okay.

Absolutely - that's perfectly fine. I look forward to seeing your the changes. Should revoke/delete this PR?
Thanks a lot and have a great weekend.

Keep it open for now, we close it when either one gets merged. Thank you for working on this :)

Thank you for all the help and good advice. :-)

Other one got merged. Thanks~


Code review/Refactor and Some suggestions

Motivation
To understand the overall logic of the project, I'm taking a look at every line of the pallets code and have some suggestions for refactoring the code like better function names and removing redundant lines.
I'm going to write all of them here and have a discussion with the main developers.

FILE: pallets/roles/src/functions.rs
METHOD: check_role_approval_list
I think these two lines are redundant.
pub fn check_role_approval_list(account: AccountIdOf<T>) -> DispatchResult {
  // ...
  ensure!(!HouseSellerLog::<T>::contains_key(&account), Error::<T>::OneRoleAllowed);
  ensure!(!ServicerLog::<T>::contains_key(&account), Error::<T>::OneRoleAllowed);
  // ...
}

account is ensured to have no roles given at the time of being passed to the check_role_approval_list method.

I see some uses of such code blocks.
let waitlist = Self::get_pending_approvals();
let sellers = waitlist.0;
let servicers = waitlist.1;

Why don't we get benefits of tuple destructuring in Rust?
The above code block can be replace by the following.
let (sellers, servicers) = Self::get_pending_approvals();

And in the following block
for sell in sellers.iter() {
	if sell.account_id == who.clone() {
		exist = true;
		let mut sell0 = sell.clone();
		sell0.activated = true;
		sell0.verifier = sender.clone();
		HouseSellerLog::<T>::insert(&who, sell0);
		let index = sellers.iter().position(|x| *x == *sell).unwrap();
		RoleApprovalList::<T>::mutate(|val| {
			val.0.remove(index);
		});
		AccountsRolesLog::<T>::insert(&who, Accounts::SELLER);
		let now = <frame_system::Pallet<T>>::block_number();
		Self::deposit_event(Event::SellerCreated(now, who.clone()));
	}
}

I think we can get rid of the following line by using iter().enumerate() instead of iter()
let index = sellers.iter().position(|x| *x == *sell).unwrap();
And as soon as we find a request in the waiting list, we can end the loop.
for (index, sell) in sellers.iter().enumerate() {
	if sell.account_id == who.clone() {
		exist = true;
		let mut sell0 = sell.clone();
		sell0.activated = true;
		sell0.verifier = sender.clone();
		HouseSellerLog::<T>::insert(&who, sell0);
		RoleApprovalList::<T>::mutate(|val| {
			val.0.remove(index);
		});
		AccountsRolesLog::<T>::insert(&who, Accounts::SELLER);
		// The following line is redundant.
		// let index = sellers.iter().position(|x| *x == *sell).unwrap();
		let now = <frame_system::Pallet<T>>::block_number();
		Self::deposit_event(Event::SellerCreated(now, who.clone()));
		// terminate the loop
		break;
	}
}

FILE: pallets/roles/src/lib.rs
METHOD: set_manager
Don't we need to ensure that the new manager is not the same as the original manager?
let sender = ensure_signed(origin.clone())?;
let new0 = T::Lookup::lookup(new.clone())?;
let new_origin = T::Origin::from(RawOrigin::Signed(new0.clone()));
ensure!(sender == SUDO::Pallet::<T>::key().unwrap(), "only the current sudo key can sudo");
// ADD THIS LINE
ensure!(sender != new0, "The same manager is given.");

https://github.com/Fair-Squares/fair-squares/pull/152

All of the example storage values & dispatchable functions should be removed once the project development is over.
e.g.
FILE:  pallet/bidding/src/lib.rs:69
#[pallet::storage]
#[pallet::getter(fn something)]
pub type Something<T> = StorageValue<_, u32>;

https://github.com/Fair-Squares/fair-squares/pull/170


⚠ Bofrost.es has degraded performance

In dcde7ef, Bofrost.es (https://www.bofrost.es) experienced degraded performance:

HTTP code: 200
Response time: 1574 ms

Resolved: Bofrost.es performance has improved in 7ca97ba after 7 minutes.


Not able to get expiry date using powershell script

$date = get-date
it return the current date of system not the expiry date in the Find out the expiration dates of the SharePoint Add-ins installed to the Office 365 tenancy section

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

ID: 3d9d8235-c495-a7a3-a4a6-0d073db41d1d
Version Independent ID: bdd22da6-06c6-569d-fccf-fd55baa3cef8
Content: Replace an expiring client secret in a SharePoint Add-in
Content Source: docs/sp-add-ins/replace-an-expiring-client-secret-in-a-sharepoint-add-in.md
Product: sharepoint
GitHub Login: @spdevdocs
Microsoft Alias: spdevdocs

I use the following to get the start date and end (expiration) date of the app secrets. The code above should be corrected.
$applist = Get-MsolServicePrincipal -all  |Where-Object -FilterScript { ($.DisplayName -notlike "Microsoft") -and ($.DisplayName -notlike "autohost*") -and  ($_.ServicePrincipalNames -notlike "localhost") }
foreach ($appentry in $applist) {
$principalId = $appentry.AppPrincipalId
$principalName = $appentry.DisplayName
Get-MsolServicePrincipalCredential -AppPrincipalId $principalId -ReturnKeyValues $false | ? { $_.Type -eq "Password" } | % { "$principalName;$principalId;" + $_.KeyId.ToString() +";" + $_.StartDate.ToString() + ";" + $_.EndDate.ToString() } | out-file -FilePath c:\temp\appsec.txt -append

}

Hi @rajendrasingh2121 , Could you please provide a sample scenario? How did you occur this issue?

I ran below command in
$applist = Get-MsolServicePrincipal -all  |Where-Object -FilterScript { ($.DisplayName -notlike "Microsoft") -and ($.DisplayName -notlike "autohost*") -and  ($_.ServicePrincipalNames -notlike "localhost") }
foreach ($appentry in $applist)
{
$principalId = $appentry.AppPrincipalId
$principalName = $appentry.DisplayName
Get-MsolServicePrincipalCredential -AppPrincipalId $principalId -ReturnKeyValues $false | Where-Object { ($.Type -ne "Other") -and ($.Type -ne "Asymmetric") }
$date = get-date
Write-Host "$principalName;$principalId;$appentry.KeyId;$appentry.type;$date;$appentry.Usage"
}  > c:\temp\appsec.txt
here you can see  $date = get-date will always return the same date.
https://docs.microsoft.com/en-us/sharepoint/dev/sp-add-ins/replace-an-expiring-client-secret-in-a-sharepoint-add-in#find-out-the-expiration-dates-of-the-sharepoint-add-ins-installed-to-the-office-365-tenancy
So it would be great if anyone can update the powershell command

Documentation updated based on PR from @paulewert in #2826. Thanks, everyone for your contribution.


Feature: allow for preservation of view in background

When navigating between routes, app-router destroys the active view via removeRouteContent (line308). While this is good for memory management, the user experience suffers as routes need to be rebuilt each time.
It would be great to have the capability to preserve views in the background to enable a snappier UI.
This could be accomplished through an attribute on app-router or app-route.

I started working on a branch to add this feature. Figuring out how to handle hiding and showing views along with all of the other valid flows in activateRoute() is making my brain melt.
https://github.com/erikringsmuth/app-router/compare/hide-show-views

Closing as this is likely not something that will happen.


Xbox controller / teleop_twist_joy

Hi Alex, and thanks for a very nice platform to build of, would it be any chance you could add Joy / teleop_twist_joy to you repository so i can use a Xbox controller ? i dont have a ds4 and have been trying for to days to get the xbox controller to work, but i am stil very novice to ROS, would really appreciate it if you could help me out.
Currently robaka seems to connect to the hoverboard, but i have no functional way of moving the wheels
Btw, using a Nvidia AGX.
I am using the firmware you are linking to, setup for Uart2, after a few minutes i get a continues beeping that never stops until i power the hoverboard on and off, any idea what that beeping could mean ?

This is the striped down .launch i have been messing with:

not sure what to do in the twist_mux.yaml
topics:

name    : joypad
topic   : joy_vel
timeout : 0.1
priority: 10
name    : keyboard
topic   : keyboard_teleop/cmd_vel
timeout : 0.1
priority: 20
name    : navigation
topic   : cmd_vel
timeout : 0.1
priority: 5
name    : tag_follower
topic   : tag_follower/cmd_vel
timeout : 0.5
priority: 3
locks:
name    : e_stop
topic   : e_stop
timeout : 0.0
priority: 255

@Spawn32 are you prefer to use keyboard to remove control it?


Import time >1s when running with pandas

Describe the bug
See import time when installing openai[datalib] due to pandas load time.

To Reproduce
Install openai and compare import time with and without [datalib] extension installed (pandas).
Code snippets
In local 4s

import time
t1 = time.perf_counter()
from openai.datalib import pandas_helper
print(time.perf_counter() - t1, pandas_helper.pandas)

t1 = time.perf_counter()
try:
    pandas_helper.assert_has_pandas()
except pandas_helper.MissingDependencyError:
    pass
print(time.perf_counter() - t1, pandas_helper.pandas)

t1 = time.perf_counter()
try:
    pandas_helper.assert_has_pandas()
except pandas_helper.MissingDependencyError:
    pass
print(time.perf_counter() - t1, pandas_helper.pandas)

4.230538249947131 <module 'pandas' from '/Users/pedrovicente/.virtualenvs/openai-python-uihn/lib/python3.10/site-packages/pandas/__init__.py'>
6.669433787465096e-07 <module 'pandas' from '/Users/pedrovicente/.virtualenvs/openai-python-uihn/lib/python3.10/site-packages/pandas/__init__.py'>
2.919696271419525e-07 <module 'pandas' from '/Users/pedrovicente/.virtualenvs/openai-python-uihn/lib/python3.10/site-packages/pandas/__init__.py'>

OS
Linux
Python version
python 3.10
Library version
openai-python v0.27.2

@hallacy Could you kindly ack this and check PR please?

This has been fixed in our upcoming v1 beta!
We now lazy import pandas and numpy so if you have them installed, they will only actually be imported when accessed.


Remove description tag from internal API types

@bgrant0607

Thanks. LGTM.
I've grown tired of telling people to do this. Everyone just copy-pastes types between files. My preferred solution is deleting pkg/api/types.go. :-)


Adding persist to make it use dask

I'm going to merge this since it's passing. Sound good @jbednar?


Add test for login screen

@Hasnayeen Will take up this issue

@Hasnayeen Not able to login

for testing use this base url https://goodworkfor.life/ and email<EMAIL_ADDRESS>password guestpass . base url should be revert back to original before commiting


option to limit number of pages, youtube.

I download videos from PBS newshour (youtube.com/user/PBSNewsHour/videos )with the option to only grab ones that are up to 5 days old, but the script has to run through over 100 pages and 10,000 videos to match the date. Is it possible to add a new option to also limits the number of initial pages that are downloaded? Thanks :)

You can limit according to playlist items's indexes.
--playlist-start NUMBER          Playlist video to start at (default is 1)
--playlist-end NUMBER            Playlist video to end at (default is last)
--playlist-items ITEM_SPEC       Playlist video items to download. Specify
                                 indices of the videos in the playlist
                                 separated by commas like: "--playlist-items
                                 1,2,5,8" if you want to download videos
                                 indexed 1, 2, 5, 8 in the playlist. You can
                                 specify range: "--playlist-items
                                 1-3,7,10-13", it will download the videos
                                 at index 1, 2, 3, 7, 10, 11, 12 and 13.

That certainty speeds things up, thanks kindly :) I hadn't realized it was a playlist :D


win: Use an external snpritnf hook

For VS2013 and below, it will compile and additional file src/win/snprintf.c, which contains the fallback implementation. The function is included with extern in other files while required.

In uv.gyp, snprintf.c is included in sources conditionally; only for VS2013 and below.

Note that I have also guarded it with condition inside the snprintf.c file, so if any consumer/downstream is not using libuv/uv.gyp but their own build system (say CMake), this will still prevent them redefining snprintf for VS2015 even if they add /src/win/snprintf.c in to-be-compiled sources unconditionally.

Discussion: https://github.com/libuv/libuv/pull/487#issuecomment-141643603.
/cc: @saghul, @equalsraf

LGTM. Tested on Windows 7 and XP with VS 2015 and 2008 respectively.
@piscisaureus WDYT?

Thanks for the review @bnoordhuis and @saghul. I have made those changes and repushed: 2f6b1dd.

LGTM

Thanks Peter, landed in a59085e.

Apologies for the comment on a long-closed PR (we just rebased our fork after a long delay), but this causes issues if a C++ project happens to include uv.h without guarding by extern "C" on VS 2013 (and probably earlier). Since in C++ mode snprintf is defined, this extern won't be declared and we get a linker error. We had been getting away without being too careful about whether all uv.h includes were inside extern "C" before this change.

@tkelman, you don't need to include header. All you need is to add src/win/snprintf.c to the set of your compilable sources.
Note, although compiling snprintf.c everywhere has no side effects, but if you want concerns totally separated, you can conditionally include it for VS2013 and below compilers in your build system script (gyp example: https://github.com/libuv/libuv/blob/43be2a1/uv.gyp#L108-L111, cmake example: https://github.com/libgd/libgd/blob/8f69034/src/CMakeLists.txt#L69-L73).

Yeah I may have misdiagnosed that. I'm using the somewhat strange choice of autotools with msvc (this can be made to work, but it's not pretty) at the moment, so it's easier to just hack around with the preprocessor by setting CFLAGS=-Dsnprintf=_snprintf for now.


Feature/expander

This has the initial PR for the expander control.
Proposal: Adding a Expander Control to the set of WinUI controls. #3279
Description
Features of this initial iteration:

Narrator accessible with expand/collapse automation announcements when using keyboard, touch or pen input.
Up/Down expansion. We left out the right and left expansions because there is no LayoutTransformControl(#3493) in WinUI.
Supports controls like buttons and toggle buttons in both the unexpanded and expanded content.

*Design work is still pending (chevron assets, animations, etc)
Motivation and Context

How Has This Been Tested?


Add work and about section to my branch.

hi @norbiboy1 kindly add a descriptive pull request message 👍🏿


Could not resolve "qs"

STEPS TO REPRODUCE

I installed the library
simple usage import and const provider = strapiRestProvider('http://localhost:1337')
I ran vite
error

  VITE v4.2.1  ready in 831 ms

  ➜  Local:   http://localhost:5173/
  ➜  Network: use --host to expose
  ➜  press h to show help
✘ [ERROR] Could not resolve "qs"

    node_modules/ra-strapi-v4-rest/lib/index.js:20:37:
      20 │ const qs_1 = __importDefault(require("qs"));
         ╵                                      ~~~~

  You can mark the path "qs" as external to exclude it from the bundle, which will remove this
  error. You can also surround this "require" call with a try/catch block to handle this failure at
  run-time instead of bundle-time.

I fixed it by installing "qs"
doesn't this mean that you should move it from devdeps to deps in package.json?

Hello @mo2menelzeiny !
As you say, it is a "prod" dependency. Thank you for taking the time to report it!


Only expose micronaut-json-core as an impl dependency

had to add a new dependency to micronaut inject for the AbstractPropertySourceLoader implementation.
Fixes #65

thanks


[kmstool-enclave-cli] Add GenerateRandom command and smoke test scripts

Issue #, if available:
#131
Description of changes:

Add genrandom command into kmstool-enclave-cli
Improve README of kmstool-enclave-cli
Add scripts for smoke test on kmstool-enclave-cli

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

@petreeftime for your review, thanks


Automatic $? variable (success indicator) is reset to $true when a command is enclosed in parentheses - make $? only reflect command status, not expression status

Not sure if this behavior is by design; if so, it would help to understand the rationale.
Steps to reproduce
Get-Item -EA SilentlyContinue NoSuchItem; $?  # Failure is reflected in $? being $False
(Get-Item -EA SilentlyContinue NoSuchItem); $? #  Using (...) resets $? to $True

Expected behavior
False
False

Actual behavior
False
True

Environment data
PowerShell Core v6.0.0-alpha (v6.0.0-alpha.17) on Darwin Kernel Version 16.4.0: Thu Dec 22 22:53:21 PST 2016; root:xnu-3789.41.3~3/RELEASE_X86_64

I'm seeing the same behavior. I'm not sure what the rationale for this is though, or if it's a bug. It seems like this is a bug to me, but open to ideas.

If I recall parentheses create a scope, if so this is by design.

$? tell us a status of last command.
$? is $true tell us that "The last command was successful".
In your sample the command is Expression and the expression was executed successfully.

@iSazonov:
I see. So you're saying that (...) is an expression in its own right? If so, does it ever reflect $False? In other words: is its $? status useful in any way?
Why does the following, which also uses (), yield $False, preserving the status of the enclosed the command?
> (5 + 'not a number'); $?
False

The first sample is "command in expresson" and your sample is "command is an expression"
(Invoke-Expression -Command '(5/0); $?' -EA SilentlyContinue); $?

@iSazonov  That's helpful, thanks.
The documentation talks about the "last operation", without defining what operation means in this context.
In practice, as you've demonstrated, that means it's about the last command OR expression.
By command I mean specifically mean something parsed in argument mode (a single function/cmdlet call/external utility call), as opposed to an expression. I'm not sure if there's an established umbrella term for both (perhaps the aforementioned operation? or statement?), but calling the umbrella term "command" too is obviously not a good choice.
Note that even if we assume that "operation" means command or expression, the claim that $? reflects the last operation isn't always true:
Exceptions:
> Get-Item /, NoSuchItem 2>$null | Get-Date; $?
Wednesday, March 15, 2017 5:19:57 PM
False

Even though Get-Date succeeded, $? still reflects the (partial) failure of Get-Item.
Another exception appears to be when the last expression is executed inside a conditional:
do { Get-Item NoSuchItem 2>$null } until ($true); $?
False

Even though true is the last expression evaluated - and was clearly evaluated successfully - $? still reflects the failure of Get-Item.
There is a case where the command's $? status is preserved, at least a command in the syntactical sense: if a command by the specified name cannot be found:
(noSuchCmd); $?
False

Despite embedding in an expression, the inability to find the command is reflected in $? - contrast this with (Get-Item -EA SilentlyContinue NoSuchItem).
Yes, there is a difference between PowerShell not finding the command and an invoked command reporting a non-terminating error, but is it worth treating these two cases differently in terms of their $? behavior?
Conclusions:

Currently, making a command part of an expression invariably loses its $? status - except if the command name isn't recognized at all.

You could make the case that errors in expressions should always result in terminating errors that should be handled with try / catch, with $? only reporting command errors, irrespective of whether a command is part of an expression or not.
Does it really make sense to treat 1 / 0 as a non-terminating error, for instance?

I believe "Last operation" is exclusively "Command". It is include "Command" in pipeline. No Expression.
do { Get-Item NoSuchItem 2>$null } until (Get-Date); $?
true

One exclusion is for Condition:

// If we're generating code for a condition and the condition contains some command invocation,
// we want to be sure that $? is set to true even if the condition fails, e.g.:
//     if (get-command foo -ea SilentlyContinue) { foo }
//     $?  # never $false here
// Many conditions don't invoke commands though, and in trivial empty loops, setting $? = $true
// does have a measurable impact, so only set $? = $true if the condition might change $? to $false.
// We do this after evaluating the condition so that you could do something like:
//    if ((dir file1,file2 -ea SilentlyContinue) -and $?) { <# files both exist, otherwise $? would be $false if 0 or 1 files existed #> }

@iSazonov

I believe "Last operation" is exclusively "Command".

I wish that were true; it was my initial expectation, reflected in the first post.
However, as you pointed out, if the entire "operation" is an expression (unrelated to a conditional), $? reflects the expression's success, not that of the embedded command:
(Get-Item -EA SilentlyContinue NoSuchItem); $? yields True, with the expression's success eclipsing Get-Item's failure.
Excluding commands in conditionals makes sense, but note that failing expressions are still reflected in $?:
> do { $null } while (1/0); $?
...
False

This is a contrived example, but it leads me back to my point that perhaps expressions themselves should never set $?, only commands (outside conditionals).
And even if we assume that the current behavior is by design,

the rules, as in other cases, are hard to remember.

the rules aren't adequately explained in Get-Help about_Automatic_Variables.

Seems like we may just need better documentation

@mklement0

However, as you pointed out, if the entire "operation" is an expression
No. You means my:
In your sample the command is Expression  ()  and the expression was executed successfully.

You should understand this as:

The command consists of one expression

And yes, we need update docs.

@SteveL-MSFT, @iSazonov: I'm glad that we agree that the docs need updating.
For the sake of updating the docs, let's see if we agree what the current behavior is:

The command consists of one expression

Again, using the term "command" in this abstract way is inviting confusion, given the fundamental distinction between a command proper (something parsed in argument mode) and an expression (something parsed in expression mode).
When I use the terms "command" an "expression" below, I'm referring to their specific definitions, and by "operation" I mean the abstraction over the two, excluding multi-command pipelines.
I'm not covering the case where terminating errors are treated as non-terminating ones.
Also note that the behavior described was arrived at by trial and error not source-code analysis.
Current behavior:

If a command is executed by itself, Boolean variable $? reflects whether it ran successfully; success / failure is determined by (a) if a cmdlet/script/function generated at least one non-terminating error, or (b) in the case of calling an external utility, if its exit code is zero (zero indicating success).

Inside a conditional, command success is by design not reflected in $? (but a failing expression is - see below).

If a command is embedded in an expression - whether via (), $(), or @() - its $? status is lost, because the success of the expression itself is reflected in $?

Reasons why expressions  may fail include: invalid operands (1 / 0), invalid operators 'foo' -replace 'bar', 'baz', 'ohno', and .NET method calls ([int]::Parse('foo'))

In a pipeline composed of at least 2 commands, $? reflects whether any of the commands involved reported at least non-terminating error, not the last one in the pipeline.

All of the above is overruled in the following cases: $? is always $False if the operation involves (a) a nonexistent command or (b) a cmdlet/script/function invoked with an invalid parameter name or (c) a failed expression - in the case of commands, that applies whether or not an expression is involved, and whether or not the command is called in a conditional.
In fact, the entire operation is not even run (to completion) in this case, and in the case of a multi-command pipeline, the entire pipeline isn't run.

If the rules governing the current behavior are somewhat confusing, that's precisely my point:

Expression status overruling command status makes the command status unavailable and complicates things needlessly.

Treating failed expressions somewhat like nonterminating errors is problematic in general.
Arguably, a failed expression should always be a terminating error that needs to be handled with try / catch.
Note that failed expressions already are somewhat of a "hybrid" in that while they do not cause termination, you can use try / catch to catch them - something you cannot do with non-terminating command errors.

I'm happy to create a new issue focused on just that.

CC @BrucePay

@mklement0 Forget "expression". The key here is:

$?  returns a Command status not Expression.

@iSazonov:
If we leave the terminology discussion (see below) and to what extent the current docs reflect the intent of the by-design behavior aside, I've tried to point out problematic aspects of the current behavior, and I'd love to hear your thoughts on that:

Aside from the terms that I used, is there something incorrect about how I've described the current behavior?

Is it clear what I've described as problematic about the current behavior (terminology, history, docs aside)?

It seems that there's still confusion over terminology.
Let's first agree that the following two "commands" are different; in fact, their different behavior with respect to $? was the very reason for starting this thread:
(a) Get-Item NoSuchItem - what I've called "command"
(b) (Get-Item NoSuchItem) - what I've called "expression", though, perhaps more accurately, a "value expression", according to Get-Help about_Parsing
From what I understand you've chosen to use "command" as the umbrella term for both forms, something that is:

not reflected in the Get-Help about_Automatic_Variables help topic, which, as discussed, uses the somewhat nebulous term "operation".

at odds with how the term "command" is used in Get-Help about_Command_Syntax, which uses "command" to mean (a) only.

I believe you skip the trick: there are commands consisting of one expression:

Get-Item NoSuchItem  - Command
( Get-Item NoSuchItem  ) - looks as Expression
( Get-Item NoSuchItem  ); - in this context it is Command
if ( Get-Item NoSuchItem  ) {} - in this context it is Expression consisting of one Command

So your "current behavior" description should consider it to be extremely accurate.
I also believe that we cannot create correct documentation without formal description language. So we get the exact terms. I believe you are somewhere nearby.
We already have Issue #2254 "Add PowerShell language specification document". Welcome! 😄

@iSazonov:
Thanks for the link.
My final thought re terminology (and I'm happy to leave it at that) is that it's confusing to use the same name ("command") for both something specific ((a) above) and an abstraction from it that encompasses other specific things ((a) and (b) above) - perhaps "statement" is the best abstract term, given that it's already being used in many conceptual topics.
To use a natural language analogy: The same problem has given native English speakers the perennial debate over whether a thumb is a finger, because "finger" can be both something specific (a digit of the hand other than a thumb) and something more abstract (any digit of the hand, including the thumb).

PowerShell parser use "statement" 😄 (You can see this in PowerShell notation.)

Two comments:
(1) $? applies to expressions as well as commands:
Attempted to divide by zero.
At line:1 char:1
+ 1/0; $?
+ ~~~
    + CategoryInfo          : NotSpecified: (:) [], RuntimeException
    + FullyQualifiedErrorId : RuntimeException

False
PS[1] (43) > 1/1; $?
1
True

(2) The best way to think about commands in parenthesis is as follows:
(get-item blargh) ; $?
is "equivalent" to:
write-output (get-item blargh) ; $?
In other words, a command in parenthesis is evaluated, the result is returned and then a second command is used to output those results. Even if the command in parens fails with an error, the parent command succeeds setting $? to true.

Hmm. I see the rationale there in part, @BrucePay... but this behaviour is always going to be confusing and counterintuitive to users.
Chiefly because in a lot of ways, the following are otherwise perfectly equivalent:
Get-Item blargh
(Get-Item blargh)

Both of them are written to the pipeline in the same way in almost all circumstances. The only case (I can think of) where it differs is if they are part of a pipeline:
(Get-Item blargh) | Select Name, Length
Get-Item blargh | Select Name, Length

And even then, the behavioural change is often not particularly noticeable (though handy to know at times).
That this creates a difference in $? is probably the only really noticeable difference. And given that when using (Command) syntax there is only ever one possible result, I don't think it's a useful difference in any way?
Given also that the current behaviour will complicate working with @rjmholt's chaining operators (#9849) needlessly, I can't help but think it may be time that the behaviour of $? in this case is changed.

Fixed in https://github.com/PowerShell/PowerShell/pull/11040


Close resolver groups when closing clients/channel factories

This fixes #632 by closing address resolver groups when closing ApnsChannelFactory instances (which are in turn closed when we close an ApnsClient instance).
@palex-fpt look good to you?

I have several Apple signing keys and use pool (based on org.apache.commons.pool2.KeyedPooledObjectFactory) of ApnsClient instances with shared EventLoopGroup. That instances are created/disposed based on application load. It looks like a bit overhead to create separate DnsNameResolver with its own name cache for each ApnsClient instance (hey, it resolves only 'api.push.apple.com').
It would be nice to have ability to pass single AddressResolverGroup to ApnsClientBuilder. but current solution is better than nothing.

It would be nice to have ability to pass single AddressResolverGroup to ApnsClientBuilder.

It crossed my mind, but I don't think we'll do it for a few reasons:

The overhead cost, as I understand it, is low. It's true that we're creating one cache per ApnsClient, but I think the overhead there is fairly modest. This stands in contrast to event loop groups, for example, where an inability to reuse event loop groups would mean that we'd need to create at least a new thread (and with it a large stack) for every client.
The complexity is fairly high. We'd be creating opportunities for users to set an AddressResolverGroup that doesn't make sense given their proxy configuration (for example) and generally creating surface area for things to go wrong.
I think we have a better way to address the root cause, which it to let clients handle multiple sets of credentials (see #540). Once that's in place, I think most (all?) use cases for creating multiple clients will go away entirely.

Thanks kindly for the feedback! As you say, let's move forward with what's here now. If we need to adjust things in the future, we will, but I think the best move is to rely on multi-credential clients to eliminate the problem for us.


feat(translator): add regex origins for CORS

What this PR does / why we need it:
I've added new field to CORS struct to get ability set flexible regexes to CORSes, because current situation allow only prefix wildcard. So in case of:
      - "tld\\.domain(?:\\..*)?"
      - ".*:\\/\\/localhost(?:\\:\\d+)?"
      - "http:\\/\\/((25[0-5]|(2[0-4]|1\\d|[1-9]|)\\d)\\.?\\b){4}:30\\d\\d"
      - null

like mobile app origins or when there is no origing (null) it is impossible to set CORS.
Second point why I did new field is to have back compatibility with existent configuration.

like mobile app origins or when there is no origing (null) it is impossible to set CORS.

@Demacr Thanks for the PR. Could you please elaborate on this?  It would help if you can give a real example where wildcard match doesn't solve but regex does. Thanks.

@zhaohuabing I've mentioned rules, which cannot be matched by prefixed wildcard, in the PR message:

1st is our origin from mobile applications, it should have suffixed wildcard
2nd & 3rd could pass Origin struct validator
4th null origin uses our custom Figma's plugin, which call our API with such origin.

Finally, looks like it's possible to add just suffixed wildcard and to add posibility make schemaless origin.

@zhaohuabing I've mentioned rules, which cannot be matched by prefixed wildcard, in the PR message:

1st is our origin from mobile applications, it should have suffixed wildcard
2nd could be replaced by Origin struct validated regex
3rd one is really rare, but impossible to change by regex which can pass Origin struct validator
4th null origin uses our custom Figma's plugin, which call our API with such origin.

Finally, looks like it's possible to add just suffixed wildcard and to add posibility make schemaless origin. Excepting IPs.

Thanks, I think this request is fair enough. LGTM, and defer to other @envoyproxy/gateway-maintainers for any suggestions on the API change.

hey @Demacr still plan on working on this one ?


Allow DHCP configuration of OpenThread in Zephyr

Certain Thread implementations (notably ARMs) require a DHCPv6 implementation.
This PR allows the usage of the relevant OpenThread configuration parameters in Zephyr.

Looks good. You need to fix the commit title and add commit body, otherwise, the CI won't let it in.

Working on it. Might take until tomorrow.


promote boolean to constant

We do this for number and date, so we should for boolean, too. Previously #346.

Agree that it's better than to filter them out.
But it's a little bit surprising at least in the following case:

Plot.dot(data, {x…, fill: true})

Reading this code, you might imagine that fill: true means you want the dots to be filled, and fill: false that you prefer the default stroked shapes. Conversely for bars, you might thin that fill: false would reverse the default.
Instead what this does is give them a category which makes them filled blue — in both cases: true and false appear filled blue, at least if there's nothing else that drives more colors.

Plot.dot(data, {x…, fill: true})

It’s equivalent to this, though, right?
Plot.dot(data, {x…, fill: () => true})

And when that’s defined by data…
Plot.dot(data, {x…, fill: d => d.valid})

You almost certainly do want the categorical color encoding. So, I think this makes sense for consistency.
An alternative would be, like we do for the identity color scale, if all the associated defined values are booleans, we could map that to “currentColor” and “none” or some such. But then the false values would typically not be visible at all, unless you also had a stroke. Do you prefer that?

It's logical in all the cases to have fill: true create filled dots. The fact that they appear to be blue is secondary (and could be fixed by defaulting the ordinal scale to ["currentColor"] when the domain is [true]). The surprising bit is that fill: false makes them blue too.
What if, when the domain is comprised only of booleans+undefined, we would map true to "currentColor" and false to maybe a middle grey #888—and undefined to invalid? Then I think it would do the expected thing (at least "expected in my mind", I reckon that there are several ways to think about this).

I did roughly that in #693, but mapping false to “none”. Wouldn’t saying fill: false and getting a (non-none) fill be confusing?

Another possibility is that we could special-case the default scheme if the associated domain is entirely booleans. So, it’d still be an ordinal scale, but you’d set dark/light gray instead of tableau10. I’ll give that a shot…

This last option (special case a boolean-only ordinal scale to two greys) has my vote.


ConvertStringSidToSid should probably return something disposable

According to the documentation of ConvertStringSidToSid (e.g. https://learn.microsoft.com/en-us/windows/win32/api/sddl/nf-sddl-convertstringsidtosida) the returned Sid should be freed via LocalFree. This leads me to believe that it would be best for the returned value to be disposable so users cannot forget that. Do you agree?
Thanks in advance!

It's a nice idea, but we can't return a disposable here because we have to return a BOOL to match the win32 method.
While we might be able to change the PSID out parameter to a SafeHandle-derived type, PSID itself isn't a handle, and isn't guaranteed to always need to be freed by the caller when used in a win32 API (AFAIK), as it seems perfectly reasonable to pass around PSID in other contexts, that may or may not need to be freed with LocalFree or another function.
So I'm afraid this is another case of CsWin32 being primarily for generating interop APIs -- not to make memory management easier. CsWin32 is no substitute for reading the API docs and following them.

It's generating FreeSidSafeHandle instead of LocalFreeSafeHandle. Could this be fixed?

Yes, a future metadata update will just produce PSID* instead of SafeHandles, leaving cleanup up to you.


missing file

Instrument.FrameworkTemplate\delete_Instrument.FrameworkTemplate.AppLauncher.vi

I think this is fixed. It was being called in the Documentation.vi


Enabling blend split on a DirectionalLight with shadows enabled, breaks the light

**Ubuntu 17.04 - Godot version: Master 5567e898d **
Issue description:
Enabling Blend Split on a directional light, breaks the light.
Output says:

ERROR: _display_error_with_code: SceneShaderGLES3: Fragment Program Compilation Failed:
0(1124) : error C1115: unable to find compatible overloaded function "mix(float, float)"
At: drivers/gles3/shader_gles3.cpp:167.
ERROR: get_current_version: SceneShaderGLES3: Fragment Program Compilation Failed:
0(1124) : error C1115: unable to find compatible overloaded function "mix(float, float)"
At: drivers/gles3/shader_gles3.cpp:455.
ERROR: get_current_version: Method/Function Failed, returning: __null
At: drivers/gles3/shader_gles3.cpp:463.

The fragment program line with the error (1124) says:

shadow=mix(shadow, sample_shadow(directional_shadow,directional_shadow_pixel_size,pssm_coord2.xy,pssm_coord2.z,light_clamp));

Steps to reproduce:
Enable Shadows and Blend Split on a DirectionalLight.
This works on a late january build (I don't know if the effect is the correct one but it don't break the light).

Booooo, I expected more for the issue 9000...

Ouch!, sorry, I use to ruin the fun :sweat_smile:

Blend splits seems to be working fine now.


Add a node for selecting specific shells from preprocessed dwis

Background
The SS3T workflow needs to have only b=0s and one shell of b>0s sent to it. Similarly, the BabyAFQ pipeline requires selecting only a few shells for msmt.
Recon Spec
This PR adds a select_gradients action that lets users pick which shells to send to a downstream node. The parameters are

A list of shells to select. These can be specific numeric b-values or the strings "highest" for highest b-value shell or "lowest" for lowest b>0 shell. If no b=0 shell is selected then one is added in the workflow.
A parameter for how different the b-values can be from the b-values selected in (1). There are usually some differences in the acquired b-value and the requested b-value. This parameter is similar to the --b0-threshold parameter from qsiprep.
If the user wants to do a sanity check on their input data, they can also specify the expected_n_input_shells to make sure that this many shells (including the b=0s as a shell) are detected in the input data.

An example in a recon spec for HBCD might look like:
-   action: select_gradients
    input: qsirecon
    name: select_single_shell
    parameters:
        requested_shells:
            - 0
            - highest
        bval_distance_cutoff: 100
        expected_n_input_shells: 5

Implementation
The trickiest part about this is making it general enough that it can be included in a built-in recon workflow and work with the many different shell schemes out there. The value 0 can be hard-coded because has a specific meaning/use in DWI. Because of the minor variations in b-values we also don't always know immediately what the intended shell b-values are. So the steps for selecting shells are

Figure out how many shells there are using the bval_distance_cutoff and agglomerative clustering with complete linkage
Select the median b-value per cluster as the intended b-value
loop over the requested bvals and find which shells they correspond to

Tests and reports
The implementation in this PR creates a Pandas DataFrame with each b-value in the input data and which shell it corresponds to. I think saving this data frame to a tsv would be a sufficient sanity check for users. We had talked about plots with histograms of b-values per assigned shell, but these end up not looking very good/informative when plotted.

Codecov Report
Attention: Patch coverage is 77.61194% with 30 lines in your changes missing coverage. Please review.

Project coverage is 48.54%. Comparing base (619341b) to head (5a8c85c).
Report is 1 commits behind head on main.

Files with missing lines
Patch %
Lines

qsirecon/interfaces/gradients.py
76.42%
18 Missing and 11 partials :warning:

qsirecon/workflows/recon/utils.py
87.50%
1 Missing :warning:

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #194      +/-   ##
==========================================
+ Coverage   47.90%   48.54%   +0.64%
==========================================
  Files          56       56
  Lines        7198     7304     +106
  Branches      978      998      +20
==========================================
+ Hits         3448     3546      +98
+ Misses       3544     3541       -3
- Partials      206      217      +11

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


Convert PyPI publishing to OIDC.

I've already configured the publisher for Pex on PyPI as described here:
https://docs.pypi.org/trusted-publishers/adding-a-publisher/
This change addresses the GitHub side of things as described here:
https://docs.pypi.org/trusted-publishers/using-a-publisher/
I'll delete the PYPI_USERNAME and PYPI_PASSWORD secrets after a
successful release using this new system.
Prep work for #2121

The CI break is unrelated bitrot off for fix in #2128. I'll rebase this branch once that is in.

I'll delete the PYPI_USERNAME and PYPI_PASSWORD secrets after a
successful release using this new system.

Deleted.


Fix benchmarks by replacing rust-cpython with pyo3

The benchmarks seem to have been broken since Python 3.10 deprecated the API
they were using to parse and execute CPython baselines. Since then
rust-cpython has been deprecated in favor of pyo3.

Replace cpython and python3-sys dependencies with pyo3.
Add html_report feature to criterion, it will be required in a
future release.
Remove anyhow. It was unused and cargo cleaned it up automatically.
Use compile and exec from within the CPython context to
compile and execute benchmarks. There's probably more overhead to that than
the internal API had, but that overhead should be consistent per
benchmark.

If anyone cares about hyperoptimizing benchmarks then they can optimize
the harness as well.
Fixes #3498

Use compile and exec from within the CPython context to
compile and execute benchmarks.  There's probably more overhead to that than the internal API had, but that overhead should be consistent per benchmark.

I have a minor question: How do we know that this won't inadvertently give RustPython an advantage? As far as I know, the API we used (from before CPython 3.10) ensured that compilation was kept separate from execution.

Also, if I recall correctly, the RustPython benchmarks will eat up a lot of memory because RustPython presently has no garbage collection more advanced than simple reference-counting and needs circular references in order to set up simple things like object and type.

When I originally tried to run the benchmarks they just failed to build because of features deprecated in Python 3.10, so my understanding was that they just haven't worked since the project moved past that point. My objective with this PR was to get something working so that I could benchmark some changes I was making.
From my cursory investigation, I couldn't find that pyo3 exposed a similar API to what was there previously. I think the difference between calling the CPython exec and hooking into whatever function it uses internally is small enough for now. If maintaining parity is important I can dig deeper.
I'm bummed about garbage collection too, but I don't see that it should block improving the benchmarking code.

The reason I warned about GC is so that you're not surprised if the benchmarks crash due to your system not having enough RAM. (From what I recall, RustPython chews through about 16 GB of RAM.)

Thanks for the warning! That is probably why I crashed my computer a few times testing this PR lol


[v4.0.1] Placeholder attribute doesn't appear to work

The following select:
<select name="country" id="country" placeholder="Select Country.." data-required="1" class="select2 w300" data-field="country" tabindex="-1" aria-hidden="true">
<option value=""></option>
<option value="Canada">Canada</option>
<option value="United States">United States</option>
<option value="Afghanistan">Afghanistan</option>
</select>

<script type="text/javascript">
$('#country').select2();
</script>

Does not produce a select2 w/ a place holder which is how the documentation and previous versions worked. Also, there's a "blank" element right below the search. Using:
<select name="country" id="country" data-placeholder="Select Country.." data-required="1" class="select2 w300" data-field="country" tabindex="-1" aria-hidden="true">
<option value=""></option>
<option value="Canada">Canada</option>
<option value="United States">United States</option>
<option value="Afghanistan">Afghanistan</option>
</select>

<script type="text/javascript">
$('#country').select2();
</script>

Does produce a select2 w/ a place holder and no blank element.

placeholder is not a valid attribute for a <select> element. So Select2 requires that you use data-placeholder instead.
It is a valid attribute for <input />, which is why older versions of Select2 supported it. Now that we are requiring a <select> for pretty much everything, it's not supported.
This is a duplicate of https://github.com/select2/select2/issues/3555.


fix RC link for 2022 binaries

Oops! They did change the links up after all, sorry about that!
It does look like the .box isn't downloading though (launch day saturation?) so it might be worth keeping the current CTP links in place until the files are actually downloadable - right now requests just hang.

sounds good, i'll re-release! thank you


refactor: replace discord-api-types/v6 with discord-api-types/v8

We're currently importing from discord-api-types/v6, however these show up as deprecated. They should be replaced with their v8 equivalents.

Blocked until discord.js v13.x

Fixed long ago.


adding the plugin executes 10 of the 13 tasks when doing a gradle build

I've added the following to my build.gradle file:
plugins {
    id "edu.sc.seis.macAppBundle" version "2.1.4"
}

macAppBundle {
    mainClassName = "..."
    icon          = "myApp.icns"
    volumeName    = "myApp"
    dmgName       = "myApp"
    javaProperties.put("apple.laf.useScreenMenuBar", "true")
    // Uncomment the next line to bundle the JRE with the Mac OS X application
    //bundleJRE     = true
}

When I run a gradlew build, all tasks from your bundle are run, except codeSign, createAppZip, runSetFile.
I never specified it anywhere that any of the tasks are run. The problem is that on Windows a gradlew build tries to run createDmg and fails (naturally).
Why are any MacAppBundle tasks run when doing a gradlew build?
Is there a way that none of the MacAppBundle tasks are run for a gradlew build?

The tasks are run because "assemble" depends on them, basically if you add the macAppBundle plugin,you are saying that a app is an output of the build and so it is generated. I believe this is the expected behavior, for example if you use the war plugin, the war file will be generated on gradle build. If you don't want everything generated, you can always just call gradle jar to only build the jar file.
But the windows issue should be fixed in 2.1.5. Now assemble depends on createDmg on mac, but on createAppZip on windows and linux.

Hmm, so build includes assemble and assemble includes the 10 tasks. Ok, I'll try 2.1.5. Thanks.


Failure on TASK [fubarhouse.golang : Go-Lang | Moving to installation directory]

This role has worked for me in the past but I am now encountering the following error on the "Moving to installation directory" task. I redacted the information about the box it is running on.
fatal: [FQDN_REDACTED -> IP_REDACTED]: FAILED! => {"changed": false, "cmd": "/usr/bin/rsync --delay-updates -F --compress --delete-after --archive --rsh 'ssh  -S none -o StrictHostKeyChecking=no' --rsync-path=\"sudo rsync\" --out-format='<<CHANGED>>%i %n%L' \"/tmp/go/\" \"IP_REDACTED:/root/go\"", "failed": true, "msg": "Warning: Permanently added 'IP_REDACTED' (ECDSA) to the list of known hosts.\r\nPermission denied (publickey).\r\nrsync: connection unexpectedly closed (0 bytes received so far) [sender]\nrsync error: unexplained error (code 255) at io.c(226) [sender=3.1.0]\n", "rc": 255}

@markdorison first of all thanks for submitting a ticket!
Second, as you're getting the following: Permission denied (publickey), could you please check the ssh-agent to ensure keys have been added?
You can use the following
echo $SSH_AGENT_PID
eval $(ssh-add)
ssh-add
ssh-add -l

This will rule out any obvious errors. I am intending on going back through this role again for a new release - much like what I've just completed for my curl role.

@fubarhouse: Thanks!
(I work with @markdorison and it was me who ran into this issue). The machine the Ansible playbook was running from does have a passphrase-protected ssh-key to the remote machine, but we know it was ssh-added because the playbook was able to connect to the remote machine at all (and successfully complete all tasks up to the golang role).
But reading through the code, it looks like it's the ansible_ssh_user is undefined that's even forcing the role's use of synchronize instead of shell, and this playbook is usually run without -u, and I don't think we'd found the fubarhouse_user variable.
I'll run the playbook again at a quiet time with a value for user or fubarhouse_user to see if that's the issue & report back.

@ctorgalson that actually describes something I can diagnose much better, so I'll look into this for you and respond.
Under no circumstance should fubarhouse_user not be assigned a value, but at least now I know there is a case where it may not be.
Are you able to provide any given reason the following two tasks would be skipped?
- name: "Go-Lang | Define user variable for ssh use"
  set_fact:
    fubarhouse_user: "{{ ansible_ssh_user }}"
  when: ansible_ssh_user is defined and fubarhouse_user is not defined

- name: "Go-Lang | Define user variable for non-ssh use"
  set_fact:
    fubarhouse_user: "{{ ansible_user_id }}"
  when: ansible_ssh_user is not defined and fubarhouse_user is not defined

@fubarhouse Thanks. I think I can explain what's failing and one way to fix it, though I can't say if it's a correct solution.
Background

We use this role to install Go (naturally!)
Any of several users can run the relevant playbook.
All these users are sudoers.
The users all use public-keys to authenticate as separate users.
Running ansible -i hosts.yml -m setup hostname shows me that:

neither ansible_ssh_user nor ansible_user (since this is Ansible <IP_ADDRESS>)  are defined, and
Ansible has correctly set ansible_user_id to ctorgalson.

Analysis

Since ansible_ssh_user is undefined, the role sets fubarhouse_user to the value of ansible_user_id.

Since ansible_ssh_user is undefined, the role will attempt to use the synchronize task

The synchronize task uses the value of fubarhouse_user for become_user.  This is the direct cause of the error we see (but possibly not the actual problem):
"cmd": "/usr/bin/rsync --delay-updates -F --compress --delete-after --archive --rsh 'ssh  -S none -o StrictHostKeyChecking=no' --rsync-path=\"sudo rsync\" --out-format='<<CHANGED>>%i %n%L' \"/tmp/go/\" \"xxx.xxx.xxx.xxx:/root/go\"",

Even though ctorgalson is in the sudoers list, that user should become root in order to move   files into root's home directory (i.e. it should run rsync with sudo rsync ... and not sudo -u ctorgalson rsync ...); this suggests that the actual problem is something else...

The rsync command shown in the error above attempts to copy files to xxx.xxx.xxx.xxx:/root/go. This shows that the {{ GOROOT }} fact is set to /root/go even though the code appears to try to set it to the fubarhouse_user's home directory.

I think (4) is the core issue for us, though I'm not sure what an appropriate solution might be--installing in individual users' home directories is not a viable solution for us :)

PS: according to Ansible's documentation, the Synchronize module "...is run and originates on the local host where Ansible is being run". Which sounds like the generated rsync command above might always fail (since the get_url task downloads to the remote host, but the Ansible-generated rsync command's source is /tmp/go and not e.g. xxx.xxx.xxx.xxx:/tmp/go).

@ctorgalson I've actually been doing a bit of work on similar things, but I've rolled some more changes to the dev branch in and kicked off some tests, here's a summary.

changed the source distro (build from source) for git
completely removed become and become_user, as no sudo access is actually required. It's something I should be doing more of in my other roles.
much to my disinterest, I've completely removed the syncronize task and favoured the shell cp... task. The sync module is inconsistent, but it's all Ansible offers for that purpose...
an assortment of unrelated changes to ensure this role works on 20 different linux platforms.

You can test this out on the dev-2.5.x branch, but I'll get a release out in the next day for you. I would be appreciative if you could tell me if the above changes solve your problem!
Link to tests:

https://travis-ci.org/fubarhouse/ansible-role-golang/builds/269163876

2.5.0 is officially released, available via the galaxy.
As previously stated, I'd like to know if the changes have resolved your problems.

@fubarhouse I updated the role to 2.5.0.  Investigating further.

@markdorison,
I have just identified the problem, so I'll get a fix under way asap.

https://groups.google.com/forum/#!topic/golang-nuts/wAYxijyyL5U


Try to determine the size of the eh_frame section

We can do slightly better by limiting it to only the segment that contains the start of eh_frame, but that requires parsing eh_frame_hdr first.
cc @roblabla for the baremetal change.

looks good to me!


Could not find project language_det_eval

Traceback (most recent call last):
  File "tools/test_net_omnilabel.py", line 637, in <module>
    main()
  File "tools/test_net_omnilabel.py", line 339, in main
    for run in runs:
  File "/root/miniconda3/envs/new/lib/python3.7/site-packages/wandb/apis/public.py", line 1261, in __next__
    if not self._load_page():
  File "/root/miniconda3/envs/new/lib/python3.7/site-packages/wandb/apis/public.py", line 1248, in _load_page
    self.objects.extend(self.convert_objects())
  File "/root/miniconda3/envs/new/lib/python3.7/site-packages/wandb/apis/public.py", line 1815, in convert_objects
    raise ValueError("Could not find project %s" % self.project)
ValueError: Could not find project language_det_eval
ERROR:torch.distributed.elastic.multiprocessing.api:failed (exitcode: 1) local_rank: 0 (pid: 55673) of binary: /root/miniconda3/envs/new/bin/python
ERROR:torch.distributed.elastic.agent.server.local_elastic_agent:[default] Worker group failed
INFO:torch.distributed.elastic.agent.server.api:Local worker group finished (FAILED). Waiting 300 seconds for other agents to finish

got the following error when running desco_glip evaluation on omnilabel
python -m torch.distributed.launch --master_port 6006 --nproc_per_node=1 tools/test_net_omnilabel.py --config-file configs/pretrain_new/desco_glip.yaml --weight outputs/GLIP/desco_glip_tiny.pth --task_config configs/omnilabel/omnilabel_val_eval.yaml --chunk_size 20 OUTPUT_DIR outputs/eval_omnilabel TEST.IMS_PER_BATCH 1 DATASETS.TEST "('omnilabel_val_coco',)"
could you please help

Sorry this error was because I forgot to comment out the part where we sync the results to weight and biases (an experiment logging tool).
I have committed a change to fix the issue.


🐛 API Allows Multiple Votes on the Same Proposal Poll

Area
Proposal Pillar
Domain
dev-sanchogov.tools
Which wallet were you using?
No response
Context
Users can submit multiple votes on the same proposal poll through CURL, bypassing UI restrictions.
Steps to reproduce

Connect to the wallet.
Navigate to any proposal with a poll. (eg : https://dev-sanchonet.govtool.byron.network/proposal_discussion/2061)
Submit a vote on the poll.
Copy the network request for the vote as a CURL command.
Paste and execute the CURL command in the terminal.
Observe that the same proposal can be voted on multiple times using this method.

Actual behavior
The API accepts multiple votes on the same proposal when submitted through CURL, even though the UI prevents duplicate submissions.
https://www.loom.com/share/c05063dca7c1496f9a5905ea7dacc3c0?sid=ca3933e2-fc00-41d3-a61f-08d34f63f3c2
Expected behavior
The API should reject multiple votes on the same proposal when using the same authentication.

@nebojsajsimic  I was unable to test it. Did the backend go down? Also i am unable to verify my identity.

CC: @bosko-m
Based on the provided response, the issue now appears to be resolved.


Multiple issues loading audio track

The video- https://www.youtube.com/watch?v=iKgmSeHW1UI
When trying to load it by using the identifier "ytsearch: pitbull songs", it often can not find any track. However when it does find the track and you select the one called "The Best Songs of Pitbull 2018 full playlist", I get this error
com.sedmelluq.discord.lavaplayer.tools.FriendlyException: Unable to play this YouTube track.
	at com.sedmelluq.discord.lavaplayer.source.youtube.YoutubeAudioTrack.loadTrackFormats(YoutubeAudioTrack.java:136)
	at com.sedmelluq.discord.lavaplayer.source.youtube.YoutubeAudioTrack.loadBestFormatWithUrl(YoutubeAudioTrack.java:96)
	at com.sedmelluq.discord.lavaplayer.source.youtube.YoutubeAudioTrack.process(YoutubeAudioTrack.java:60)
	at com.sedmelluq.discord.lavaplayer.track.playback.LocalAudioTrackExecutor.execute(LocalAudioTrackExecutor.java:90)
	at com.sedmelluq.discord.lavaplayer.player.DefaultAudioPlayerManager.lambda$executeTrack$1(DefaultAudioPlayerManager.java:348)
	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
	at java.base/java.lang.Thread.run(Thread.java:830)
Caused by: java.lang.IllegalStateException: No adaptive formats, no dash, no stream map.

When I just directly pass in a url as the identifier I get this as an error,
Caused by: java.lang.NullPointerException
	at com.sedmelluq.discord.lavaplayer.source.youtube.YoutubeAudioSourceManager.loadTrackWithVideoId(YoutubeAudioSourceManager.java:210)

This is the handler I currently use to query and play
playerManager.loadItem(query, object : AudioLoadResultHandler {
    override fun loadFailed(exception: FriendlyException) { handle exception }

    override fun noMatches() { handle exception }

    override fun trackLoaded(track: AudioTrack) {
        if (audioQueue.peek() == null) player.playTrack(track)
        audioQueue.add(track)
        future.complete(track)
    }

    override fun playlistLoaded(playlist: AudioPlaylist) {
        val tracks = playlist.tracks
        if (playlist.isSearchResult) {
            simplified select logic to selectSearchResults
            selectSearchResults(tracks).thenAccept {
                val selectedTrack = tracks[it]
                if (audioQueue.peek() == null) player.playTrack(selectedTrack)
                    audioQueue.add(selectedTrack)
                    future.complete(selectedTrack)
                }.exceptionally { e ->
                    //handle none selected
                }
            }
        } else {
            if (audioQueue.peek() == null) player.playTrack(tracks.first())
            audioQueue.addAll(tracks)
            future.complete(playlist)
        }
    }
})

My PlayerLibrary version is 1.3.5.

You're way outdated as the current version is 1.3.50, try that version

damn, sorry bout that. didn't even think of double checking the version again as it seemed to be just that one link. thanks 😅


Add ScholarMarkdown ZIP file

This adds a template zip, as requested.

I don't quite understand. The example ZIP package for the ISWC Website is meant to be an example of how an HTML submission to ISWC may look like. According to the guidelines it should be a ZIP package that contains an index.html file and all the resources (like media, scripts) required to guarantee a correct visualization of the paper (even when offline). The ZIP package given in this PR does not seem to comply with these guidelines (for instance, I cannot find an index.html file). Ruben, am I missing something here?

There is a third option (which is the one that I would prefer ;)

Add a second ZIP file. This file contains the output and, thus, represents what the authors should submit. Then, clarify in the text the purpose of the two ZIP files.

Sounds good! I'll look into that later today.


feat: ✨ add a single-action mode for combat tracker

Summary
This mimics the slow-and-fast-actions settings option to provide a Dragonbane-friendly setup with a single action button.

Checklist

PR Type

[ ] This PR is a code change that implements a feature request.
[x] This PR adds a new feature that is not an open feature request.
[ ] This PR fixes an issue.
[ ] This PR is not a code change (e.g. documentation, README, ...)

Other

[ ] This PR is a breaking change (e.g. methods or parameters removed/renamed)
[x] If code changes were made then they have been tested.
[x] I have updated the documentation to reflect the changes.

It's possible that two separate checkboxes isn't the right way to represent these modes any longer. Maybe a select box called "Additional combat tracker buttons", with options "none", "single action" and "fast and slow actions" would be better. Let me know if that's what you'd prefer, and I'm happy to update the PR to do that.

There is another PR #38 that is connecting the Slow and Fast action to the tokens, but that is still open. Maybe it would worth to wait that one, as that can impact on the behaviour of this one. (Or maybe this is already using the methods that are changed by the other, but I just wanted to leave the heads-up)

Saw that #38 got merged, so I rebuilt this one, and it's ready for another look.


OTel AccessLogger: support log_written/dropped for OTel partial rejected log records

This PR makes the OTel access logger to support log_written/log_dropped tracking

failed gRPC requests
partial rejected log entries, which is supported by OTel protocol

Context:

After https://github.com/envoyproxy/envoy/pull/24268, OTel AccessLogger uses unary async client.
The current log_written/log_dropped tracked in GrpcAccessLogger doesn't make sense for unary gRPC client, which always increment log_written for each incoming log entry. It couldn't record the 2 cases mentioned above.

What this PR contains:

move grpc access loggers clients to a new file and make them DI for GrpcAccessLogger
for unary async case, move log_written/log_dropped from GrpcAccessLogger to OpenTelemetry::GrpcAccessLoggerImpl while no changes for streaming case.
make OpenTelemetry::GrpcAccessLoggerImpl inherits Grpc::AsyncRequestCallbacks so that it can record stats correctly in the callback

could you take a look at the format error please @TAOXUY
ERROR: ./source/extensions/access_loggers/common/grpc_access_logger.h:108: Don't use std::optional; use absl::optional instead

https://dev.azure.com/cncf/envoy/_build/results?buildId=170151&view=logs&j=c7de00aa-b0fb-52ba-707b-da6afd918eda&t=449299ab-9da3-5c6b-afe3-e0c5dbf1dfd1&l=58

could you take a look at the format error please @TAOXUY
ERROR: ./source/extensions/access_loggers/common/grpc_access_logger.h:108: Don't use std::optional; use absl::optional instead

https://dev.azure.com/cncf/envoy/_build/results?buildId=170151&view=logs&j=c7de00aa-b0fb-52ba-707b-da6afd918eda&t=449299ab-9da3-5c6b-afe3-e0c5dbf1dfd1&l=58

Done. Thank!

/wait-any

The change does not build: https://source.cloud.google.com/results/invocations/53d8338b-909c-4f57-b0d7-e4bfd267524c

/wait

Details

Fixed.


chore: run the framework with docker in the CI

:tada: This PR is included in version 2.25.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


omengib

omengib created by<EMAIL_ADDRESS>on 2017-05-04 11:01:09

<EMAIL_ADDRESS>replied, I believe this means "ripen, bloom". Â It is used in two examples currently in tekinged: Â "Ser a bo le belsechel omengib el rodech" translated as "When the season for fruit drew near". Â Also used in the song "Tal Becheleleu el Bung" -- Â "ng bai derengul a diak a rengul momengib era sakura", which I translate as "lucky is the one without feelings for the bloom of the flower"

<EMAIL_ADDRESS>replied, omengib..picking as of fruit & flower. " when the season for fruit is drew near. Â sel bol temel omengib el rodech"
Harvest time. Â mla kirel mengai.Â
Tia Becheleleu el Bung..white for purity. Â This song is about someone who doesn't give a damn for the girl, but just one to be the her first man. Â AkumdasuEmails/html
|
|  --- Write ABOVE THIS LINE to reply ---
Jim Geselbracht posted a new comment on omengib :
I believe this means "ripen, bloom". Â It is used in two examples currently in tekinged: Â "Ser a bo le belsechel omengib el rodech" translated as "When the season for fruit drew near". Â Also used in the song "Tal Becheleleu el Bung" -- Â "ng bai derengul a diak a rengul momengib era sakura", which I translate as "lucky is the one without feelings for the bloom of the flower" View this on DebugleStop receiving email notifications about this item.  |
|
 On Thursday, May 4, 2017 12:01 PM, Jim Geselbracht (Debugle<EMAIL_ADDRESS>wrote:

<EMAIL_ADDRESS>replied, http://tekinged.com/aw/m/mengib.htm
I think adding an o- prefix in front of verbs often makes an action noun. Aleks, confirm?  So omengib is like the act of plucking.

<EMAIL_ADDRESS>replied, Thanks Antonia. Â And I thought that song was just about a flower! :-) Â Thanks John for pointing out mengib. Â I should have looked for that. Â it should be written mo mengib in the case of the song. Â But the bible verses may support the form "omengib"
On Thursday, May 4, 2017 6:16 PM, John Bent (Debugle<EMAIL_ADDRESS>wrote:

Emails/html
|
|  --- Write ABOVE THIS LINE to reply ---
John Bent posted a new comment on omengib :
http://tekinged.com/aw/m/mengib.htmI think adding an o- prefix in front of verbs often makes an action noun. Aleks, confirm? So omengib is like the act of plucking. View this on DebugleStop receiving email notifications about this item.  |
|

<EMAIL_ADDRESS>replied, confirm the thought about action nouns.

<EMAIL_ADDRESS>replied, mengib, omengib  also means detach, detachment

<EMAIL_ADDRESS>replied, In the Bible I think it's talking about sowing & reaping. Â A person will reap whatever he sows.reward or punishment.
Emails/html
|
|  --- Write ABOVE THIS LINE to reply ---
Simeon Adelbai posted a new comment on omengib :
mengib, omengib also means detach, detachment View this on DebugleStop receiving email notifications about this item.  |
|
 On Sunday, May 7, 2017 1:14 AM, Simeon Adelbai (Debugle<EMAIL_ADDRESS>wrote:

<EMAIL_ADDRESS>replied, John, can you help me to make a correct eng for OMENGIB? then i will be ready to add it and to close this item.

AUTOPARSE
w omengib n.act. action of plucking (fruit, etc)

Thanks @smith-371 ! Three small things for next time:

You don't need to create a new issue; just add the comments here
Please also add the 'ready for import' label
Please just use plain formatting for the autoparse comment

Oh, the problem with your comment was you added '#' at the front of the lines. Please don't do that in the future. Just do them normal.

Awesome job adding the link line!

Cool. It worked.

Thanks @smith-371 ! Three small things for next time:

You don't need to create a new issue; just add the comments here
Please also add the 'ready for import' label
Please just use plain formatting for the autoparse comment

i couldn't find the lable 'ready for import', it was my first try with this option.

by the way, OMENGIB pretty can have the possessive forms, like other n.act.'s


High Alch prices/profit in GE

Is your feature request related to a problem? Please describe.
Not really.
Describe the solution you'd like
This would be an addon to the Grand Exchange plugin. Similar to the tooltip alch prices in the Item prices plug. - Include the High alch prices/profit in the "GE item information" section or near the "buy limit" when buying items.
Describe alternatives you've considered
Right now the only other way to get the info while ingame is to buy it and check with tooltips or to look it up manually outside of the game.
Additional context
Add any other context or screenshots about the feature request here.

There is just not enough space to put it in there as you can see. I think there are items in the ge with longer descriptions and your image that you provided doesnt take into account the margins.

Is there a chance this could get implemented? I was thinking of writing a plugin for this feature, but saw this PR  https://github.com/runelite/runelite/pull/14203 from last year. I could look into the merge conflicts if that helps things out.


Dependency Issue In Project Importing openbazaar-go

A project importing some of the openbazaar-go wallet packages is getting any issue trying to build dependencies via go mod and dep.
The issue:
build github.com/OpenBazaar/openbazaar-go: cannot load github.com/OpenBazaar/openbazaar-go/bitcoin/exchange: cannot find module providing package github.com/OpenBazaar/openbazaar-go/bitcoin/exchange

go version: go version go1.12.7 linux/amd64

Looks like I was able to solve this issue (i think) by upgrading dependencies. If the issue doesn't occur again shortly i'll close this

Solved with dependency updates


As a user, I want the vars & props for the Checkbox component documented on the site

Scenario: Vars Table

[ ] Create a new folder in /docs-src/src/pages/components called CheckboxTables
[ ] Create a new file in that folder called CheckboxVars.js
[ ] Table details:

[ ] Table Headers: Variable Name, Default Value, Description
[ ] On small screens, there should be a Table.HeadSmall that says Checkbox Vars
[ ] The Table Data should include [Column Header] before the table data so that the headers shows on small screens when the table stacks.
[ ] Make sure to check the settings file for any vars that were not listed at the top of the components stylesheet.

[ ] Import the CheckboxVars file into the main example page: /docs-src/src/pages/components/Checkbox.js
[ ] After the ExampleSection include
Variables:

[ ] Then call in the table: <CheckboxVars />

Scenario: Props Table

[ ] Create a new file in the CheckboxTables folder called CheckboxProps.js
[ ] Table details:

[ ] Table Headers: Name, Type, Default, Description
[ ] On small screens, there should be a Table.HeadSmall that says Checkbox Props
[ ] The Table Data should include [Column Header] before the table data so that the header shows on small screens when the table stacks. Example:

    Name: shrink

[ ] Include all possible props (make sure to also check the components file to make sure you didnt miss any props that were not listed on the site.

[ ] Import the CheckboxProps file into the main example page: /docs-src/src/pages/components/Checkbox.js
[ ] After the Variables section include
Properties:

[ ] Then call in the table: <CheckboxProps />

I've pushed up what I have for this ticket to my branch 266-checkbox-tables.
Props Table:
Ready for someone to take over:

[ ] Need to double check that I have included all the possible props.
[ ]  Need to double check that the type column has the correct types for each prop.
[ ] Check that descriptions are accurate + finish filling in the ones that are incomplete


Add 208 notebook

We should use the util functions Helena made on downloading files.
def download_file(
url: PathLike, filename: PathLike = None, directory: PathLike = None, show_progress: bool = True
):
"""
Download a file from a url and save it to the local filesystem. The file is saved to the
current directory by default, or to directory if specified. If a filename is not given,
the filename of the URL will be used.
:param url: URL that points to the file to download
:param filename: Name of the local file to save. Should point to the name of the file only,
                 not the full path. If None the filename from the url will be used
:param directory: Directory to save the file to. Will be created if it doesn't exist
                  If None the file will be saved to the current working directory
:param show_progress: If True, show an IPython ProgressBar.

Also, we shall print out the command and the model downloader is not showing any progress bar. I thought it was crashed and we shall have some ways to show progress there.
# Run commands, first download model than convert it to inferable
!! $download_command
print('Models downloded')

===

plt.imshow(convert_result_to_image(image, resized_image, boxes_with_annotations, conf_labels=True))
We may want to size it up so the result is easier to read. The text at the end is very hard to read.

plt.imshow(convert_result_to_image(image, resized_image, boxes_with_annotations, conf_labels=True))
We may want to size it up so the result is easier to read. The text at the end is very hard to read.

@Debskij - can you fix this in a new PR? ^^


Undefined variabls

Hello guys,
after the last update to magnum "master" I got compilation errors If I build examples.
Did something change for magnum linking? This came after last pull. There is a ton of undefined types. Or I did something wrong?
example of the error:
e:\git\magnum-examples\src\shadows\shadowsexample.cpp(290): error C2027: use of undefined type 'Magnum::Math::Color3<Magnum::Float>'
My build script (tested Windows build):
https://github.com/janbajana/script-helpers/blob/master/cmake-scripts/setup-magnum-examples-build.sh

Hi, sorry, this is because I pushed a header-hygiene commit to Magnum late last week (https://github.com/mosra/magnum/commit/a0f0015211920b32ff30c6f7e2e2ed77b04a155f) but didn't have time to update the depending projects for it yet. I'm on that today, will ping you once it's done :)

Super. Thank you for the quick update.

With 76d2afa2790daca0788c2b7f69e3d29699c6709f (and also mosra/magnum-integration@4431f9b93dd3ebdd0548b2beb5cc8ec0df863834 and mosra/magnum-bindings@106ca8f3142fe118903bf8c8fc48b7c96f6831b6), using master of everything should work again.
Just a note -- I'm doing a bunch of buildsystem-related changes to the repos in preparation for a stable release, so a few more similar issues might temporarily pop up over the next few days, until it settles down again -- such breakages are quite uncommon for this project.


Allow invalid UTF-8 sequence in string functions

Change upper, lower, and reverse to skip invalid UTF-8 sequences.
Change trim functions to stop at an invalid UTF-8 sequence.

Looks good, aside from reverse behavior


Feature Request: No U-Turn Sampler (NUTS) in tf.contrib.bayesflow

The NUTS sampler (http://www.jmlr.org/papers/volume15/hoffman14a/hoffman14a.pdf) would be a great addition to the HMC code already in tf.contrib.bayesflow.
A reference implementation is at: https://github.com/stan-dev/stan/blob/develop/src/stan/mcmc/hmc/nuts/base_nuts.hpp, and this has already been mentioned by @jvdillon and @dustinvtran in https://github.com/tensorflow/tensorflow/issues/4965. The HMC code has been brought over, but I don't see NUTS in there.
Is someone already working on this? Is there any way I could help?

Have I written custom code: No
OS Platform and Distribution: N/A
TensorFlow installed from: N/A
TensorFlow version: N/A
Bazel version: N/A
CUDA/cuDNN version: N/A
GPU model and memory: N/A
Exact command to reproduce: N/A

Thank you for your post. We noticed you have not filled out the following field in the issue template. Could you update them if they are relevant in your case, or leave them as N/A? Thanks.
Have I written custom code
OS Platform and Distribution
TensorFlow installed from
TensorFlow version
Bazel version
CUDA/cuDNN version
GPU model and memory
Exact command to reproduce

Hi,
Great question! We have some work progressing on this (and I hope we can give an update in the near future on this).
Might I ask you to close this issue, and file it again in https://github.com/tensorflow/probability? We've been focusing / moving our code and efforts in to this repo (as you might notice the HMC code has moved there), and it would be good to keep the issue tracking there (and also since this is an important feature request).
Thanks!
Srinivas

Awesome- thanks Srinivas! I opened the issue over at https://github.com/tensorflow/probability/issues/8, and will close this one out.


[uwp] crash XamlParseException: The text associated with this error code could not be found.

Basically, this happens to about 5% of my users, and I simply don't understand why. This happens EXACTLY at startup, roughly 5-20 seconds in.
App crash: Windows.UI.Xaml.Markup.XamlParseException: The text associated with this error code could not be found.

Cannot create instance of type 'select_media.compact.preview_video_media_ctrl' [Line: 0 Position: 0]
   at Windows.UI.Xaml.Application.LoadComponent(Object component, Uri resourceLocator, ComponentResourceLocation componentResourceLocation)
   at select_media.compact.compact_browse_media_ctrl..ctor()
   at edit_ui.main.main_ui_ctrl..ctor(startup_info create_info)
   at edit_ui.main.main_ui_window.Main_ui_window_OnLoaded(Object sender, RoutedEventArgs e)
   at System.Threading.WinRTSynchronizationContextBase.Invoker.InvokeCore()
   at Windows.ApplicationModel.Core.UnhandledError.Propagate()
   at Microsoft.AppCenter.Utils.ApplicationLifecycleHelper.<.ctor>b__17_1(Object sender, UnhandledErrorDetectedEventArgs eventArgs)
--- End of stack trace from previous location where exception was thrown ---
   at Microsoft.AppCenter.Utils.ApplicationLifecycleHelper.<.ctor>b__17_1(Object sender, UnhandledErrorDetectedEventArgs eventArgs)

This clearly works correctly on most machines, so I really don't know why this would happen. It might happen on slow machines, and/or related to something async. Anyone can shed any idea on this? Thanks!

@jtorjo unfortunately we are going to need more info to get to the bottom of this. Is there anyway that you can provide a repro for us to debug or maybe a crash dump?

@StephenLPeters Well, this is quite sad, because those customers have clearly uninstalled my app and are far gone now. Had it happened on my computer, I would have provided you with anything you want. But this is not the case.
I mean, if there's anything more I can do on my end, so that if this happens in the future, I can record more info, for sure I'll do it. Just please let me know how I can do that.

@jtorjo thanks for filing this issue. As Stephen mentioned, it is really hard for us to help here if there is no way for us to reproduce the bug or a crash dump to look into. If this happens in the future please let us know how it happens and we can investigate further.

 The error itself is beyond unhelpful. Here are my findings after months of dealing this with.
This seems to have something to do with a UI-control's constructor taking too much time to initialize:

I used to initialize a cache in one of my classes, and that could sometimes take >1s. Moving the code inside OnLoaded fixed the issue. I fixed it around 2 months ago, and this error dissappeared since then.

This one was much harder to tackle - this happened in my main control. I would create some custom controls in my constructor, before InitializeComponent, they were member variables of my .xaml.cs class, initialized like this: edit_properties_ctrl properties_ctrl_ = new edit_properties_ctrl();

Once again, I moved the code in OnLoaded, and so far I haven't had this happen again. This is a very recent change, just a few days ago. But since my fix, I haven't had this issue happen again. I'll monitor another 1-2 weeks.

Once again, I moved the code in OnLoaded, and so far I haven't had this happen again. This is a very recent change, just a few days ago. But since my fix, I haven't had this issue happen again. I'll monitor another 1-2 weeks.

It did not fix the issue. This still occurs.

@jtorjo, is there anything consistent with the machines that this fails on? And I'm a bit unsure what the current problem is, it sounds like one went away, but a different one crept up?

@jtorjo, is there anything consistent with the machines that this fails on? And I'm a bit unsure what the current problem is, it sounds like one went away, but a different one crept up?

@stevenbrix I wish there was :( The only thing I did find rather consistent is that it appears on machines with 4GB or 8GB of RAM.
Also, I create the control programmatically, not from XML. And the only thing that would be a bit out of the ordinary is that it contains a MediaPlayerElement, which I assume may take a bit longer to initialize.
That's all I can think of.
Note that this happens during startup, when showing the UI. I have a huge control (main_ui_ctrl), that is also loaded programmatically, and is stretched horizontally and vertically to take all space of Main_ui_window.
On main_ui_ctrl's Loaded event, I have another 8 controls I create programmatically. The control that fails is one of these controls, and basically stops my app in its tracks - I can't even start up.

@jtorjo, do you know if once a machine is in this state, does it always fail, or is it random?
@alwu-msft, does this look like the activation issue that carl russel is tracking?

@jtorjo, do you know if once a machine is in this state, does it always fail, or is it random?
@alwu-msft, does this look like the activation issue that carl russel is tracking?

@stevenbrix @alwu-msft I can say I'm pretty sure that once a machine is in this state, it will always fail. I've never seen a machine to fail a few times and then work
Having said that, my current hypothesis is that this may be related to Windows Media Player being in a corrupt state. I have searched the internet, and it can happen, and my take is that most people won't even notice it because most other media players will use custom libraries and thus work.
My assumption is that if Windows Media Player is somehow corrupt, MediaPlayerElement will throw some error and the error will be caught during XAML parsing, eaten, and another error gets thrown.

Is this a viable possibility?
Could this happen on some trimmed down versions of Windows? Is it possible that Windows doesn't come with Media Player components preinstalled (maybe some Windows server versions)?

@stevenbrix @alwu-msft I can say I'm pretty sure that once a machine is in this state, it will always fail. I've never seen a machine to fail a few times and then work
Having said that, my current hypothesis is that this may be related to Windows Media Player being in a corrupt state. I have searched the internet, and it can happen, and my take is that most people won't even notice it because most other media players will use custom libraries and thus work.
My assumption is that if Windows Media Player is somehow corrupt, MediaPlayerElement will throw some error and the error will be caught during XAML parsing, eaten, and another error gets thrown.

Is this a viable possibility?
Could this happen on some trimmed down versions of Windows? Is it possible that Windows doesn't come with Media Player components preinstalled (maybe some Windows server versions)?

@jtorjo

Yes, that is pretty likely. If you have a crash dump that you can share, we can check it for any inner exceptions that were masked.
My understanding is that the N editions don't include Windows Media Player (users need to download and install it separately) so you might be onto something. @Austin-Lamb do you know how MediaPlayerElement interacts with a Windows 10 N install that doesn't have the "media feature pack" installed?

@jtorjo

Yes, that is pretty likely. If you have a crash dump that you can share, we can check it for any inner exceptions that were masked.
My understanding is that the N editions don't include Windows Media Player (users need to download and install it separately) so you might be onto something. @Austin-Lamb do you know how MediaPlayerElement interacts with a Windows 10 N install that doesn't have the "media feature pack" installed?

@alwu-msft

I would happily provide one, but I don't really have any. No one is willing to give me one.
If you can provide me with a link to a windows 10 N ISO, I can try this myself on a virtual machine. Thanks!

@alwu-msft

I would happily provide one, but I don't really have any. No one is willing to give me one.
If you can provide me with a link to a windows 10 N ISO, I can try this myself on a virtual machine. Thanks!

Based on this list it looks like it's available as part of a Visual Studio Professional or Enterprise subscription. I don't know offhand of any non-subscription method of acquiring an ISO, but I'm also not an area expert.

Based on this list it looks like it's available as part of a Visual Studio Professional or Enterprise subscription. I don't know offhand of any non-subscription method of acquiring an ISO, but I'm also not an area expert.

Thanks! Unfortunately I do not have a subscription. I will have to find another way.

Thanks! Unfortunately I do not have a subscription. I will have to find another way.

Closing as there does not seem to be an actionable problem to fix.

Getting the same crash here.


CentOS Installation(Nginx) 安装依赖时失败

在虚拟机centos上，执行第3步的composer install --no-dev的时候，失败报错
Your requirements could not be resolved to an installable set of packages.
Problem 1
- adldap2/adldap2 v8.1.5 requires ext-ldap * -> the requested PHP extension ldap is missing from your system.
- adldap2/adldap2 v8.1.5 requires ext-ldap * -> the requested PHP extension ldap is missing from your system.
- Installation request for adldap2/adldap2 v8.1.5 -> satisfiable by adldap2/adldap2[v8.1.5].
To enable extensions, verify that they are enabled in your .ini files:
- /www/server/php/70/etc/php.ini
You can also run php --ini inside terminal to see which files are used by PHP in CLI mode.
换了我们的阿里云服务器（centos）也是这样
Problem 1
- Installation request for adldap2/adldap2 v8.1.5 -> satisfiable by adldap2/adldap2[v8.1.5].
- adldap2/adldap2 v8.1.5 requires ext-ldap * -> the requested PHP extension ldap is missing from your system.
Problem 2
- Installation request for mongodb/mongodb 1.0.2 -> satisfiable by mongodb/mongodb[1.0.2].
- mongodb/mongodb 1.0.2 requires ext-mongodb ^1.1.0 -> the requested PHP extension mongodb is missing from your system.
Problem 3
- mongodb/mongodb 1.0.2 requires ext-mongodb ^1.1.0 -> the requested PHP extension mongodb is missing from your system.
- jenssegers/mongodb v3.0.2 requires mongodb/mongodb ^1.0.0 -> satisfiable by mongodb/mongodb[1.0.2].
- Installation request for jenssegers/mongodb v3.0.2 -> satisfiable by jenssegers/mongodb[v3.0.2].
To enable extensions, verify that they are enabled in your .ini files:
- /www/server/php/71/etc/php.ini
You can also run php --ini inside terminal to see which files are used by PHP in CLI mode.
能帮忙分析下是什么原因吗？谢谢

应该 是 php-ldap没有安装成功，试着修改下这个组件的名字重新安装下。


LinkedHashMap uses isValidKey if no custom equal and hashCode provided

According LinkedHashMap constructor documentation (https://api.dartlang.org/stable/1.16.0/dart-collection/LinkedHashMap/LinkedHashMap.html)

If using methods like operator[], remove and containsKey together with a custom equality and hashcode, an extra isValidKey function can be supplied.

According the above if no custom equal and hashCode functions specified then isValidKey should be ignored. But it isn't so. Proof:
import "dart:collection";

bool isValidKey(var potentialKey) {
  print('isValidKey called');
  return (potentialKey is int) && potentialKey < 100;
}

main() {
  LinkedHashMap<int, num> map = new LinkedHashMap<int, num>(isValidKey: isValidKey);

  map[1] = 1.1;
  print(map[1]);
  print(map.containsKey(1));
  print(map.remove(1));

  map[101] = 101.1;
  print(map[101]);
  print(map.containsKey(101));
  print(map.remove(101));

  print(map);
}

In the programm above isValidKey allows keys < 100 only. The output is the foloowing:
isValidKey called
1.1
isValidKey called
true
isValidKey called
1.1
isValidKey called
null
isValidKey called
false
isValidKey called
null
{101: 101.1}

As you can see isValidKey is called even  no custom equal and hashCode functions specified

The similar issue for LinkedHashSet is #26499

The text should be improved. The isValidKey parameter is never ignored. It's intended for cases where you have custom equals or hashCode functions, but if isValidKey is provided, it's treated as if you did specify the default equals and hashCode functions.


chore: Adding capability to assign custom URI and port to Chroma( ) c…

Change: Adding capability to assign custom URI and port to Chroma( ) constructor.
Resolves #471
No additional dependencies required
@davidmigloz

https://github.com/davidmigloz/langchain_dart/issues/471#issuecomment-2196175796


Add parameters modification UI

What's in the PR ?

Retrieve parameters from node at launch

max_attempts
timeout
time_dilation_factor
voxel_size
collision_activation_distance

Parameters are set in real-time:

max_attempts
timeout
time_dilation_factor

Parameters are set after pressing the Confirm Button

voxel_size
collision_activation_distance

-> Since the implementation is made with SyncParametersClient, user must wait after curobo_gen_traj initialization before launching Rviz.
When parameters are set after pressing the Confirm, curobo_gen_traj reloads in a few seconds (and not the 15 seconds of usual warmup).
What's next ?

Disable the button when setting world parameters (voxel_size, collision_activation_distance)

Requires threading

Added labels to the UI for more clarity
Added a confirmation message under the Confirm Changes button that is shown for 5 seconds (the message is taken from the Trigger service message)


GdiBitmap.Clone should take into account copy-on-write when calculating memory usage

Should increase memory usage only on modification (+ GetGraphics and GetRawBitmap).

Note to self: there is no copy-on-write in C++ version of GdiPlus::Bitmap::Clone (i.e. it always copies), it's only available in C#.


Don't close connection when select on a non-exist table

If run select * from "xx"; (xx table is not exist), the ElectricSQL Sync Service will close the connection, while the official PG won't.

This will cause prisma migration fail on a new database.
Prisma will always run select ... from "_prisma_migrations" on migration. And _prisma_migrations table  doesn't exist in a new database.

@alco Yes, in the latest this is fixed. I think the issue can be closed.


Config to run travis on more ruby versions

@nelsonmhjr if the failure, and I'll pull this in too. Thx!

Sure, I will work on it.

There has been no action on this PR in over 2 years.