VSTS IsHostedAgent detection is flawed

When running CakeBuild in VSTS and rely on Context.TFBuild().IsRunningOnVSTS. However we have 2 hosted build agents and second build agent is called "Hosted Agent 2". And build is always failing on the second agent.
Here code insists that agent name is exactly "Hosted Agent".
Also We are setting up private build agent and this code does not agree with private build agents. It is still VSTS build, only not run in hosted agent.
I propose to change the check for the agent name to .StartsWith("Hosted Agent") and remove check for IsHostedAgent from IsRunningOnVSTS option.
@agc93 what do you think? (as far as I remember you have done work on this)
I can do PR for this.

Looking on my VSTS, my other hosted agent is called "Hosted VS2017 2". So we can't rely on this value to be anything consistent.

Related to #1580.

Yep, I'll have a look at this (a few different parts of the logic need improvements)

Just ran into this issue - only need to know if its building on VSTS so now I'm doing
var isVSTS = buildSystem.TFBuild.IsRunningOnVSTS || buildSystem.TFBuild.IsRunningOnTFS;
instead of just IsRunningOnVSTS

We've just stumbled across this issue too since we've added a couple more hosted agents to our team. As a workaround we're just checking that we've got a hosted name:
var isRunningOnVSTS = !string.IsNullOrEmpty(EnvironmentVariable("AGENT_NAME"));

@agc93 / @pascalberger Has this been resolved by 8d3483b?


Update error handling in ZcashCompactBlock.swift

This ticket is about to use of ZcashError. How to do it is described in #361.

Closed with #982


Dependabot security issues

Addresses security issues raised by Dependabot.
The changes have been tested on the fac/freeagent-android workflows that use the sign-android-release step.

 Issues in android signing GH action


It is not mentioned that co(ntra)variance is not supported in value types.

https://stackoverflow.com/questions/12454794/why-covariance-and-contravariance-do-not-support-value-type

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

ID: 6e72dc0c-5129-34c5-7ddb-49b1e38c0990
Version Independent ID: 9bd5372c-c461-dbcd-1acc-6e03451b49c7
Content: Covariance and Contravariance (C#)
Content Source: docs/csharp/programming-guide/concepts/covariance-contravariance/index.md
Product: dotnet-csharp
Technology: csharp-advanced-concepts
GitHub Login: @BillWagner
Microsoft Alias: wiwagn

Thanks for writing this and providing the link @teo-tsirpanis
I've added this to our  backlog, and added the "up for grabs" label because this is a good issue for interested community members to consider.


Minor text fixes on the "About" page

The following texts have been fixed on the "About Bootloaders" page:
bootloadres -> bootloaders
found abused -> found to be abused
cyber attacks -> cyberattacks

Thank you for this! Appreciate it!


Extremely Long World Load Times

This isn't really a bug per say, and I wasn't sure if it's something that should be submitted here or at Biome Bundle's issue tracker.
When loading a world with Biome Bundle, it takes an extremely long time for OTG to setup.
Here's the relevant logs from the Minecraft console:

[16:47:40] [Server thread/INFO] [FML]: Holder lookups applied
[16:47:41] [Server thread/INFO] [OTG]: Creating world "Biome Bundle"
[16:47:41] [Server thread/INFO] [OTG]: Loading configs for world "Biome Bundle"..
[16:50:30] [Server thread/INFO] [OTG]: 2138 world custom objects loaded.
[16:51:02] [Server thread/INFO] [OTG]: 452 biomes Loaded
[16:51:02] [Server thread/INFO] [FML]: Loading dimension 0 (Biome Bundle)

Over three minutes! And this happens every time I launch the game and load the world!
I don't know if this sort of thing could be cached, or maybe if it could be moved to the Minecraft initialization instead, but if this could somehow be sped up I would greatly appreciate it.

Heya, this is a known issue with complex worlds like Biome Bundle that use lots of custom objects. I'll pass on your feedback to the Biome Bundle creators. You can also open an issue on their github if you like, it's at https://github.com/BiomeBundle.
Once I get done with 1.11.2 I'll see if I can take a look at optimising BO2/BO3 loading and making it faster, for the time being though it's up to worldpack creators to make sure their worlds don't take too long to load.


Link broken in note section

In the note section the link is broken:

It is possible to detect whether the device is in portrait or landscape orientation in shared code, as demonstrated in [Device Orientation]/guides/xamarin-forms/user-interface/layouts/device-orientation/#changes-in-orientation). The method described in this article uses native features to get more information about orientation, including whether the device is upside down.

I believe this should link to:
https://docs.microsoft.com/en-us/xamarin/xamarin-forms/user-interface/layouts/device-orientation?tabs=vswin#reacting-to-changes-in-orientation
Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 54b9e0c6-7539-cbe0-81a3-0342f1fe9907
Version Independent ID: 742a82e9-8cdc-4df7-5f41-5c37d1311556
Content: Checking Device Orientation - Xamarin
Content Source: docs/xamarin-forms/app-fundamentals/dependency-service/device-orientation.md
Product: xamarin
GitHub Login: @davidbritch
Microsoft Alias: dabritch

Hi @wegascee
Thanks for reporting this. I've fixed it in a PR that should go live within a few days.


images: fix crash when decoding with djpeg fails

The test image crashed on my perkeep instance with
Jul 09 12:14:01 ubuntu perkeepd[74240]: 2022/07/09 12:14:01 Retrying with jpeg.Decode, because djpeg failed with: exit status 2: Invalid SOS parameters for sequential JPEG
Jul 09 12:14:02 ubuntu perkeepd[74240]: 2022/07/09 12:14:02 http: panic serving <IP_ADDRESS>:44074: runtime error: invalid memory address or nil pointer dereference
Jul 09 12:14:02 ubuntu perkeepd[74240]: goroutine 7711129 [running]:
Jul 09 12:14:02 ubuntu perkeepd[74240]: net/http.(*conn).serve.func1(0x4020f57e00)
Jul 09 12:14:02 ubuntu perkeepd[74240]:         /home/micha/.local/go/src/net/http/server.go:1802 +0xe4
Jul 09 12:14:02 ubuntu perkeepd[74240]: panic({0xea4340, 0x203d300})
Jul 09 12:14:02 ubuntu perkeepd[74240]:         /home/micha/.local/go/src/runtime/panic.go:1052 +0x2b4
Jul 09 12:14:02 ubuntu perkeepd[74240]: perkeep.org/internal/images.rescale({0x0, 0x0}, 0x620, 0x3e8)
Jul 09 12:14:02 ubuntu perkeepd[74240]:         /home/micha/git/perkeep.org/internal/images/images.go:311 +0x20
Jul 09 12:14:02 ubuntu perkeepd[74240]: perkeep.org/internal/images.decode({0x1648da0, 0x402cee99e0}, 0x4018765360, 0x0)
Jul 09 12:14:02 ubuntu perkeepd[74240]:         /home/micha/git/perkeep.org/internal/images/images.go:505 +0x748
Jul 09 12:14:02 ubuntu perkeepd[74240]: perkeep.org/internal/images.Decode({0x1648da0, 0x402cee98c0}, 0x4018765360)
Jul 09 12:14:02 ubuntu perkeepd[74240]:         /home/micha/git/perkeep.org/internal/images/images.go:596 +0x2ac
Jul 09 12:14:02 ubuntu perkeepd[74240]: perkeep.org/pkg/server.(*ImageHandler).scaleImage(0x4018765758, {0x166c110, 0x4019518a80}, {{0x167a6d8, 0x401fd97a40}})
Jul 09 12:14:02 ubuntu perkeepd[74240]:         /home/micha/git/perkeep.org/pkg/server/image.go:297 +0x2e4
Jul 09 12:14:02 ubuntu perkeepd[74240]: perkeep.org/pkg/server.(*ImageHandler).ServeHTTP.func1()
Jul 09 12:14:02 ubuntu perkeepd[74240]:         /home/micha/git/perkeep.org/pkg/server/image.go:383 +0x48

because error during fallback decoding was not handled properly.
Furthermore status code 2 for djpeg just means warning, the output is still usable  ( at least in my experiments it produced good results )

without the patch:

with the patch:


remove argparse as a dependency

Argparse is in the standard library from 2.6, so no need in install_requires if we already require python >=2.7. It's a totally useless dependency.

Indeed. Thank you for your PR!


Issue1039 full qqq error edits jairo

Here some edits to PR 1045. I have defined the MM windows based on the number of epochs expected in each day rather than on the nightsi object. In that way we do not depend of the nights to define the MM days that, by definition, are separated at dayborder. This maybe does not have any influence in most scenarios, but still it could be relevant to really have all days (valid and not valid) in the fullday report (QC folder).
Also, I suspect that if a given night is not detected or in the very rare (but still possible) scenario that a participant do not sleep during a full MM window, this way of defining the days makes more sense (I don't have the data to test this though).

Checklist before merging:

[x] Existing tests still work (check by running the test suite, e.g. from RStudio).
[ ] Added tests (if you added functionality) or fixed existing test (if you fixed a bug).
[x] Updated or expanded the documentation.
[x] Updated release notes in inst/NEWS.Rd with a user-readable summary. Please, include references to relevant issues or PR discussions.
[ ] Added your name to the contributors lists in the DESCRIPTION file, if you think you made a significant contribution.

I don't have the data to test this though

The data I used was the UKBiobank test cwa file as referenced in issue that the PR is based on: #1039

@jhmigueles can you confirm that this work on the UK Biobank test file from #1039?


You are getting too many stars

Wtf

Bruh idk either man

yeah sorry i rigged it

https://github.com/octeep/wireproxy/pull/13

They are bots.🫡

They are bots.🫡

so this means ban from github soon 🥲


Add less restrictive methods for Array1

Array1 of ndarray currently suffers from ndarray's generic interfaces to its provided data structures.
One example are the as_slice and as_slice_mut methods that return an Option of a slice instead of directly returning a slice to the underlying data because in higher dimensional array this could be an invalid operation.
However, for Array1 it never is and so users of this library could profit from a specialized implementation of some methods on Array1 that make use of its special invariants.

Yes. I'm sure we talked about this before.
Your concern about the usability of the slicing methods should be taken at face value, it is annoying and the combination of owned storage and 1-D should mean we are contiguous. At least for uniquely owned (Array).
The first step would be, unfortunately, to ensure this actually holds. So we make the goal that uniquely owned 1D arrays are contiguous.
It does not hold at the moment, the way to create non contiguous Array1 are using either from_shape_vec and / or islice.
It's simplest to explain with islice: if one islice(s![..; 2]), then the array is no longer contiguous. I can't guarantee we can actually get to the goal here.

Thank you very much for your comment!
It truely is unfortunate that Array1 invariants aren't as I thought.
I also do not have a clear memory that we have already talked about this in detail - sorry.
But it isn't such an important feature - just another enhancement. ;)

I agree that a simpler interface for contiguous 1-dimensional arrays would be nice..
Is there a better library that focuses on linear algebra with 1 and 2-dimensional dense arrays?

@robsmith11 Check out rulinalg and nalgebra


Add a lazy version of get() function (evaluate {default} lazily)

get() is used also for initializing global variable when the variable does not exist.
let g:myplugin_globalvar = get(g:, 'myplugin_globalvar', 42)

But when I want to initialize the default value, the arguments for get() is evaluated before the initialization.
" s:build_lazy() is evaluated even if g:myplugin_globalvar DOES EXIST.
let g:myplugin_globalvar = get(g:, 'myplugin_globalvar', s:build_lazy())

So I would like to propose get_lazy() which evaluates the 3rd argument lazily.
" s:build_lazy() is evaluated only when g:myplugin_globalvar does not exist.
let g:myplugin_globalvar = get_lazy(g:, 'myplugin_globalvar', {-> s:build_lazy()})

Ref
https://github.com/vim/vim/pull/4695#issuecomment-513139727

Hmm, some people told me that get_lazy() sounds a bit strange,
But I feel same myself... (but I can't find the good function name for it)
get_lazy() is get() lazily, but the main purpose of get_lazy() is to evaluate the argument lazily.
build() or init() is better? 🤔

build() or init() is better? 🤔

sorry it is too generic name.
get_lazy() is a bit strange but almost represents what it does 🤔

Codecov Report

Merging #4696 into master will increase coverage by 0.01%.
The diff coverage is 66.66%.

@@            Coverage Diff             @@
##           master    #4696      +/-   ##
==========================================
+ Coverage   81.35%   81.36%   +0.01%
==========================================
  Files         114      114
  Lines      145212   145218       +6
==========================================
+ Hits       118130   118150      +20
+ Misses      27082    27068      -14

Impacted Files
Coverage Δ

src/evalfunc.c
89.28% <66.66%> (-0.05%)
:arrow_down:

src/gui_beval.c
62.5% <0%> (-0.87%)
:arrow_down:

src/profiler.c
92.69% <0%> (-0.57%)
:arrow_down:

src/gui_gtk_x11.c
57.86% <0%> (-0.1%)
:arrow_down:

src/window.c
87.33% <0%> (-0.04%)
:arrow_down:

src/os_unix.c
63.35% <0%> (+0.04%)
:arrow_up:

src/term.c
79.16% <0%> (+0.05%)
:arrow_up:

src/ex_cmds.c
82.33% <0%> (+0.24%)
:arrow_up:

src/ui.c
69.66% <0%> (+0.97%)
:arrow_up:

Continue to review full report at Codecov.

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

Added ref link: https://github.com/vim/vim/pull/4695#issuecomment-513139727

How about get_eval() ?

get_eval() sounds good 👍
How about this? >Bram, ALL

get() is used also for initializing global variable when the variable does not exist.
let g:myplugin_globalvar = get(g:, 'myplugin_globalvar', 42)

But when I want to initialize the default value, the arguments for get() is evaluated before the initialization.
" s:build_lazy() is evaluated even if g:myplugin_globalvar DOES EXIST.
let g:myplugin_globalvar = get(g:, 'myplugin_globalvar', s:build_lazy())

So I would like to propose get_lazy() which evaluates the 3rd argument lazily.
" s:build_lazy() is evaluated only when g:myplugin_globalvar does not exist.
let g:myplugin_globalvar = get_lazy(g:, 'myplugin_globalvar', {-> s:build_lazy()})

Do we really need a new function for this?  We could just make get() do
this way.  I would be surprised scripts depend on evaluating a value
that isn't used.
--
"I know that there are people who don't love their fellow man,
and I hate those people!" - Tom Lehrer
/// Bram Moolenaar --<EMAIL_ADDRESS>-- http://www.Moolenaar.net   \
///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \
\\  an exciting new programming language -- http://www.Zimbu.org        ///
\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

Do we really need a new function for this?  We could just make get() do
this way.  I would be surprised scripts depend on evaluating a value
that isn't used.

get()'s 3rd argument receives any type's value. it breaks backward compatibility.
get() is widely used for generic use. I think we cannot suppose it is not used.

Do we really need a new function for this?  We could just make get() do
this way.  I would be surprised scripts depend on evaluating a value
that isn't used.

get()'s 3rd argument receives any type's value. it breaks backward
compatibility.
get() is widely used for generic use. I think we cannot suppose it
is not used.

I thought it might be possible to postpone evaluating the argument until
it's needed.  Well, it is possible, but it is far from easy.  And if we
do this for internal functions, quickly the request comes to also
support it for user defined functions.
It's especially the error handling that becomes tricky.  And the
evaluation might throw an exception, which then needs to be handled.
get_lazy() does not sound so bad to me.
https://en.wikipedia.org/wiki/Lazy_evaluation
What was the objection for it?
--
Living on Earth includes an annual free trip around the Sun.
/// Bram Moolenaar --<EMAIL_ADDRESS>-- http://www.Moolenaar.net   \
///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \
\\  an exciting new programming language -- http://www.Zimbu.org        ///
\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

get_lazy() does not sound so bad to me.
https://en.wikipedia.org/wiki/Lazy_evaluation
What was the objection for it?

I heard that from @ichizok, if I got it right from what he said:
I named get_lazy() because it means get() for lazy,
but get_lazy() appears get lazy (make (arguments) lazy).
But the argument of get_lazy() is lambda/funcref (which is already postponed).
The main purpose of this function is to "evaluate" the lazy (postponed) argument.
so I feel get_eval() is reasonable.

get_lazy() does not sound so bad to me.
https://en.wikipedia.org/wiki/Lazy_evaluation
What was the objection for it?

I heard that from @ichizok, if I got it right from what he said:
I named get_lazy() because it means get() for lazy,
but get_lazy() appears get lazy (make (arguments) lazy).
But the argument of get_lazy() is lambda/funcref (which is already postponed).
The main purpose of this function is to "evaluate" the lazy
(postponed) argument.  so I feel get_eval() is reasonable.

For me the _eval part doesn't give a clue.  While lazy evaluation is a
common way to talk about evaluating something later.  So for me
get_lazy() has a nice hint.
I wonder if we can have a generic mechanism for lazy evaluation of
function arguments.  It can be very useful:
func log(level, text)
  if a:level > g:loglevel
    call ch_log(text)
  endif
endfunc

If the "text" argument is marked as lazy it would be evaluated only when
used, which is more efficient.  The complexity of this is that "text"
needs to be evaluated in the scope of the caller:
call log(INFO, "error in list: " .. string(thelist))

Passing a lambda works though and it's only a bit more text:
call log(INFO, {-> "error in list: " .. string(thelist)})

Perhaps we can recommend that in the help.
--
ARTHUR: If you do not open these doors, we will take this castle by force ...
[A bucket of slops land on ARTHUR.  He tries to retain his dignity.]
"Monty Python and the Holy Grail" PYTHON (MONTY) PICTURES LTD
/// Bram Moolenaar --<EMAIL_ADDRESS>-- http://www.Moolenaar.net   \
///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \
\\  an exciting new programming language -- http://www.Zimbu.org        ///
\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

I wonder if we can have a generic mechanism for lazy evaluation of
function arguments.  It can be very useful:

Hmm, I don't think so... I think wrapping lambda like what you specified is enough.
call log(INFO, {-> "error in list: " .. string(thelist)})

The mechanism is called "Call by name".
https://en.wikipedia.org/wiki/Evaluation_strategy#Call_by_name
But I think introducing call by name evaluation strategy to Vim script causes many confusions...
In non-strict (lazy) evaluation languages, call by name or call by need (memoized version of call by name, evaluated only once) may help the optimization of speed.
But introducing call by name evaluation strategy to strict (non-lazy) languages like Vim script makes readers (of the code) confused because it is hard to understand the order of evaluation of call by name, and especially when lazy and non-lazy codes are mixed.
Lambda with no arguments like what you specified is a common technique to postpone evaluation in strict evaluation languages.
Vim script does not need call by name evaluation and it causes many confusions I think.

For me the _eval part doesn't give a clue.  While lazy evaluation is a
common way to talk about evaluating something later.  So for me
get_lazy() has a nice hint.

Okay, I think get_lazy() is also good name 👍

I thought it might be possible to postpone evaluating the argument until it's needed. Well, it is possible, but it is far from easy.

That would indeed be nice.
As for the current approach: it works as get_lazy(d, 'foo', 'GetDefaut()'), correct?
I've thought it might make sense to support v:val and v:key there maybe, allowing for get_lazy(d, 'foo', 'get(v:val, v:key)'), e.g.:

get_lazy(d, 'missing', 'GetDefault(v:val, v:key)')

v:val would be the first argument to get(), and v:key the 2nd.
While I am not sure how useful this is in general, it would allow for more flexible patterns.

I thought it might be possible to postpone evaluating the argument until it's needed. Well, it is possible, but it is far from easy.

That would indeed be nice.
As for the current approach: it works as get_lazy(d, 'foo', 'GetDefaut()'), correct?

Without the (), the third argument is a function reference, and passing
the function name works.

I've thought it might make sense to support v:val and v:key there
maybe, allowing for get_lazy(d, 'foo', 'get(v:val, v:key)'), e.g.:

get_lazy(d, 'missing', 'GetDefault(v:val, v:key)')

v:val would be the first argument to get(), and v:key the 2nd.

Hmm, in theory yes, but is this a practical example?  The reason we want
lazy evaluation is that it might do something expensive.  We might want
to pass even more arguments then.  The key is only needed if the
function would set the missing value as a side effect.
I think what you actually want is an auto-initializer, which is defined
on the dictionary instead of on the getter.  But that can be done by
defining a function on the dictionary that caches the result.  Does not
really require a new mechanism.
In case you do want to pass them, using a Lambda is quite easy:
get_lazy(d, 'missing', {-> GetDefault(d, 'missing')})
func GetDefault(dict, key)
let val = HeavyComputation()
let a:dict[a:key] = val
return val
endfunc

While I am not sure how useful this is in general, it would allow for
more flexible patterns.

I'm trying to avoid adding features that "someone may want to use
someday".
--
"I've been teaching myself to play the piano for about 5 years and now write
most of my songs on it, mainly because I can never find any paper."
Jeff Lynne, ELO's greatest hits
/// Bram Moolenaar --<EMAIL_ADDRESS>-- http://www.Moolenaar.net   \
///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \
\\  an exciting new programming language -- http://www.Zimbu.org        ///
\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

I agree with @brammool .

OK, so please add a test.

@brammool
I added test cases, but found some bugs that get() and get_lazy() returns weird values for funcref (see FIXME comments).
" yes, it returned dict value
:echo type(get({-> 42}, 'dict')) == v:t_dict
" no output is produced?
:echo get({-> 42}, 'dict')
:echo string(get({-> 42}, 'dict'))

I'll fix this issue in another PR.

As for the current approach: it works as get_lazy(d, 'foo', 'GetDefaut()'), correct?

Without the (), the third argument is a function reference, and passing the function name works.

Do you mean get_lazy(d, 'foo', GetDefaut)?  That gives "undefined variable", e.g. with
let d = {}

fun! G(...)
  return a:000
endfun

echo get_lazy(d, 'foo', G)

v:val would be the first argument to get(), and v:key the 2nd.

Hmm, in theory yes, but is this a practical example?

Not sure myself, it was just an idea.

The reason we want lazy evaluation is that it might do something expensive.
We might want to pass even more arguments then.

Do you mean "We might not want to pass even more arguments then."?

The key is only needed if the function would set the missing value as a side effect.

Or when looking it up from somewhere else, or returning something based on its name.

In case you do want to pass them, using a Lambda is quite easy:
get_lazy(d, 'missing', {-> GetDefault(d, 'missing')})
func GetDefault(dict, key)

That however requires you to have a new lambda for every usage.
I've thought this might be useful for e.g. a generic helper function / expression, that could be re-used in different places (e.g. for looking up user settings).  Of course it could be wrapped (and likely is) in a function itself also.
I think I've thought about v:key / v:val in the first place, since it reminded me of map/filter in some way.

Added example and missing get_lazy({func}, {what}) to help.

Added example and missing get_lazy({func}, {what}) to help.

Fixed (see below).
@brammool if you could include the fix in this PR, I will push this commit too.
diff --git a/runtime/doc/eval.txt b/runtime/doc/eval.txt
index 215bace32..894d573fd 100644
--- a/runtime/doc/eval.txt
+++ b/runtime/doc/eval.txt
@@ -2394,10 +2394,10 @@ function({name} [, {arglist}] [, {dict}])
 garbagecollect([{atexit}])	none	free memory, breaking cyclic references
 get_lazy({list}, {idx} [, {deffunc}])	any	get item {idx} from {list} or result of {deffunc}
 get_lazy({dict}, {key} [, {deffunc}])	any	get item {key} from {dict} or result of {deffunc}
-get_lazy({func}, {what})		any	same as get({func}, {what})
+get_lazy({func}, {what} [, {deffunc}])		any	same as get({func}, {what})
 get({list}, {idx} [, {def}])	any	get item {idx} from {list} or {def}
 get({dict}, {key} [, {def}])	any	get item {key} from {dict} or {def}
-get({func}, {what})		any	get property of funcref/partial {func}
+get({func}, {what} [, {def})	any	get property of funcref/partial {func}
 getbufinfo([{expr}])		List	information about buffers
 getbufline({expr}, {lnum} [, {end}])
 				List	lines {lnum} to {end} of buffer {expr}
@@ -4727,7 +4727,7 @@ garbagecollect([{atexit}])				*garbagecollect()*
 get_lazy({list}, {idx} [, {defaultfunc}])
 get_lazy({blob}, {idx} [, {defaultfunc}])
 get_lazy({dict}, {key} [, {defaultfunc}])
-get_lazy({func}, {what})
+get_lazy({func}, {what} [, {defaultfunc}])
 		Same as |get()| but if {defaultfunc} was given and the item is not
 		available, call {defaultfunc} and return the result.
 >
@@ -4767,7 +4767,7 @@ get({dict}, {key} [, {default}])
 		Get item with key {key} from |Dictionary| {dict}.  When this
 		item is not available return {default}.  Return zero when
 		{default} is omitted.
-get({func}, {what})
+get({func}, {what} [, {default}])
 		Get an item with from Funcref {func}.  Possible values for
 		{what} are:
 			"name"	The function name
@@ -4775,6 +4775,9 @@ get({func}, {what})
 			"dict"	The dictionary
 			"args"	The list with arguments

+		Only when {what} == "dict" and item is not available, return
+		{default}. Return zero when {default} is omitted.
+
 							*getbufinfo()*
 getbufinfo([{expr}])
 getbufinfo([{dict}])
diff --git a/src/evalfunc.c b/src/evalfunc.c
index 899015843..4b252fe22 100644
--- a/src/evalfunc.c
+++ b/src/evalfunc.c
@@ -4237,6 +4237,7 @@ common_get(typval_T *argvars, typval_T *rettv, int is_lazy)
     dictitem_T	*di;
     dict_T	*d;
     typval_T	*tv = NULL;
+    int		what_dict = FALSE;

     if (argvars[0].v_type == VAR_BLOB)
     {
@@ -4310,7 +4311,11 @@ common_get(typval_T *argvars, typval_T *rettv, int is_lazy)
 		}
 	    }
 	    else if (STRCMP(what, "dict") == 0)
-		rettv_dict_set(rettv, pt->pt_dict);
+	    {
+		what_dict = TRUE;
+		if (pt->pt_dict != NULL)
+		    rettv_dict_set(tv, pt->pt_dict);
+	    }
 	    else if (STRCMP(what, "args") == 0)
 	    {
 		rettv->v_type = VAR_LIST;
@@ -4324,7 +4329,11 @@ common_get(typval_T *argvars, typval_T *rettv, int is_lazy)
 	    }
 	    else
 		semsg(_(e_invarg2), what);
-	    return;
+
+	    // When {what} == "dict", evaluate the third argument
+	    // if pt->pt_dict == NULL
+	    if (!what_dict)
+		return;
 	}
     }
     else
diff --git a/src/testdir/test_get_lazy.vim b/src/testdir/test_get_lazy.vim
index 51c192af8..881741d7f 100644
--- a/src/testdir/test_get_lazy.vim
+++ b/src/testdir/test_get_lazy.vim
@@ -31,44 +31,50 @@ func Test_get_lazy_blob()
   call assert_equal(999, result, 'result == 999')
 endfunc

-" get_lazy({lambda}, {what})
+" get_lazy({lambda}, {what} [, {defaultfunc}])
 func Test_get_lazy_lambda()
   let l:L = {-> 42}
   let l:Result = get_lazy(l:L, 'name')
   call assert_match('^<lambda>', l:Result, "l:Result =~ '^<lambda>'")
   let l:Result = get_lazy(l:L, 'func')
   call assert_equal(l:L, l:Result, "l:Result == l:L")
-  " FIXME: weird dict value was returned...
-  " let l:Result = get_lazy(l:L, 'dict', {-> {'lambda has': 'no dict'}})
-  " call assert_equal({}, l:Result, "l:Result == {'lambda has': 'no dict'}")
+  let l:Result = get_lazy(l:L, 'dict', {-> {'lambda has': 'no dict'}})
+  call assert_equal({'lambda has': 'no dict'}, l:Result,
+  \                 "l:Result == {'lambda has': 'no dict'}")
+  let l:Result = get_lazy(l:L, 'dict')
+  call assert_equal(0, l:Result, 'l:Result == 0')
   let l:Result = get_lazy(l:L, 'args')
   call assert_equal([], l:Result, "l:Result == []")
 endfunc

-" get_lazy({func}, {what})
+" get_lazy({func}, {what} [, {defaultfunc}])
 func Test_get_lazy_func()
   let l:F = function('tr')
   let l:Result = get_lazy(l:F, 'name')
   call assert_equal('tr', l:Result, "l:Result == 'tr'")
   let l:Result = get_lazy(l:F, 'func')
   call assert_equal(l:F, l:Result, "l:Result == l:F")
-  " FIXME: weird dict value was returned...
-  " let l:Result = get_lazy(l:F, 'dict', {-> {'func has': 'no dict'}})
-  " call assert_equal({}, l:Result, "l:Result == {'func has': 'no dict'}")
+  let l:Result = get_lazy(l:F, 'dict', {-> {'func has': 'no dict'}})
+  call assert_equal({'func has': 'no dict'}, l:Result,
+  \                 "l:Result == {'func has': 'no dict'}")
+  let l:Result = get_lazy(l:F, 'dict')
+  call assert_equal(0, l:Result, 'l:Result == 0')
   let l:Result = get_lazy(l:F, 'args')
   call assert_equal([], l:Result, "l:Result == []")
 endfunc

-" get_lazy({partial}, {what})
+" get_lazy({partial}, {what} [, {defaultfunc}])
 func Test_get_lazy_partial()
   let l:P = function('substitute', ['hello there', 'there'])
   let l:Result = get_lazy(l:P, 'name')
   call assert_equal('substitute', l:Result, "l:Result == 'substitute'")
   let l:Result = get_lazy(l:P, 'func')
   call assert_equal(function('substitute'), l:Result, "l:Result == function('substitute')")
-  " FIXME: weird dict value was returned...
-  " let l:Result = get_lazy(l:P, 'dict', {-> {'partial has': 'no dict'}})
-  " call assert_equal({}, l:Result, "l:Result == {'partial has': 'no dict'}")
+  let l:Result = get_lazy(l:P, 'dict', {-> {'partial has': 'no dict'}})
+  call assert_equal({'partial has': 'no dict'}, l:Result,
+  \                 "l:Result == {'partial has': 'no dict'}")
+  let l:Result = get_lazy(l:P, 'dict')
+  call assert_equal(0, l:Result, 'l:Result == 0')
   let l:Result = get_lazy(l:P, 'args')
   call assert_equal(['hello there', 'there'], l:Result, "l:Result == ['hello there', 'there']")
 endfunc

Or you can retrieve whole diff including the fix from below URL.
(because now I pushed the branch to get_lazy-and-fix-get-dict)
Diff: https://github.com/vim/vim/compare/master...tyru:get_lazy-and-fix-get-dict.diff
PR style: https://github.com/vim/vim/compare/master...tyru:get_lazy-and-fix-get-dict

@blueyed
I said "I agree with @brammool .", but it was too few words and I remember one question I felt from your example.
I assume your first proposal is to support v:key and v:val in get_lazy()'s third argument.
https://github.com/vim/vim/pull/4696#issuecomment-514527716
But what value of v:val?
Maybe v:key is 'foo' in the following example I think.
but there is no value for v:val.
let d = {}
" what values are returned?
echo get_lazy(d, 'foo', '[v:key, v:val]')

But what value of v:val?

v:val would be the dict there:
let d = {}
" what values are returned?
echo get_lazy(d, 'foo', '[v:key, v:val]')

=> ['foo', {}]

@blueyed
Sorry for that I have misread your comment.
I thought you were saying that you agree with adding call by name evaluation.
@brammool
If @blueyed's proposal is just only passing arguments, I agree with his proposal.
Because

it is consistent with existing filter()/map() functions
Using closure is good idea, but function('GetDefaut') is simpler than {-> GetDefault(d, 'missing')}
And maybe little bit faster because it does not create a lambda for stub

get_lazy() in Vim script
func! GetLazy(dict, key, funcref)
    return has_key(a:dict, a:key) ? get(a:dict, a:key) : call(a:funcref, [])
endfunc

@Houl
yeah, certainly it's easier to implement than C, but... often I want this in global variable initialization.
That's why I have added this generic function (and this PR does not make vim code bloated, just passing flag lazy or not).
However your example is only for dictionary value. it's needed to be more generic.
(I understand it works for almost case)
let s:NONE = []
function! s:get_lazy(container, key, ...)
    let l:Value = get(a:container, a:key, s:NONE)
    if l:Value isnot s:NONE
      return l:Value
    endif
    let l:F = get(a:000, 0, {-> 0})
    return type(l:F) is v:t_string ? s:call_string_expr(l:F, [a:container]) : l:F(a:key, a:container)
endfunction

" this is hack I wrote before in my library to evaluate v:key and v:val like built-in filter()/map().
" FIXME: in this case, v:val == a:container but v:key == 0 (expected: a:key).
function! s:call_string_expr(expr, args) abort
  return map([a:args[0]], a:expr)[0]
endfunction

@brammool also was wondering if this PR is necessary at first.
so I split #4733 bug fix to #4734 (maybe it's higher priority than this... ;)

@brammool

If @blueyed's proposal is just only passing arguments, I agree with his proposal.

If this changes is OK, I'll fix the code and tests.

@tyru
I guess container can be a Dict or a List and if a key or index is missing you not only want to compute a default value, but also add it to the container?  If container is a List, then key is probably of no use (because if there is a gap, you need to fill that gap with other items)?  But if container is a Dict then your s:F needs both container and key as arguments?  For some reason, you omit key from the call if s:F is a string expression.

Looking back at this now, I think we are adding something complicated to fix a simple problem.  It's more code, but doing what Houl mentioned is simpler.  And in most cases the default is just a value, in which case the overhead can be ignored.
So I tend to think we should not add get_lazy().

Okay.


Possible to use inside a lovelace card?

Is it possible to use this inside an entities card for example?
i.e. to set the background of the individual card and not the entire view?

Sorry, currently not supported. Could you explain your use case?

No worries. Thanks for the response.
I'm just experimenting, I suppose the use case is I'm trying to make my own media player card where mini-media-player can't quite do what I need.
I love the look of this but having it in a container card rather than full screen would be ideal.

Hmm, I don't think that would be possible without a big rewrite and that doesn't seem worth it, especially not for the purpose of creating a completely new card.
However, feel free to copy some code if it helps.
Specifically https://github.com/TheLastProject/lovelace-media-art-background/blob/b891e210c03f8e4222b22d460c7bf9795134a3f8/media-art-background.js#L19-L22 would be helpful for retrieving the effect you want. The background image you want to use will just be available as the 'entity_picture' attribute of the Home Assistant entity.

Thanks for the tip!


Upload to pypi daily

Issue #, if available:
Description of changes:
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

Job PR-413-1 is done.
Docs are uploaded to http://autogluon-staging.s3-website-us-west-2.amazonaws.com/PR-413/1/index.html

Job PR-413-2 is done.
Docs are uploaded to http://autogluon-staging.s3-website-us-west-2.amazonaws.com/PR-413/2/index.html


Discussion: pin_server vs pin_node or other key name in CR

We currently use the key pin_server across a few roles to identify the k8s node to which a pod or pods will be pinned with a nodeSelector in the template. I think the name of this key is a little confusing -- Since the value you pass to pin_server is a k8s node name to which you are pinning, on the surface I would argue that it should be called pin_node instead (which is what I used in the pgebench role).
However, in the uperf and iperf roles, there is also a pin_client key, so it is more clear that the key name is in the context of what you are pinning, not where you are pinning it.
The keys might be more clear in all conditions as something like pin_server_to_node and pin_client_to_node, but perhaps I'm overthinking it and we should just address this in documentation. To me, it is valuable to make the usage of the CR structure as self-explanatory as possible in order to enhance usability, which will better drive adoption and limit the pings we get to answer howto questions.

@dustinblack any further progress on this ? I think we can close this out because it's not an issue per se. @jtaleric @dry923 thoughts?

This is just a point on consistency across CRs, which IMO is important to reduce user confusion. Nothing's broken, clearly, but it's still an issue that maybe an intern could pick up.


[EN DateTimeV2] Fix for wrongly recognized DateTime entities with "." splitter (#908)

Fix for issues reported in #908.
We did not update the pattern "on 5.11" which is currently parsed as "May 11th" instead of "Nov 5th" (as requested in the issue).   It seems to be a breaking change because there are test cases that rely on the current implementation e.g.:
"Cortana, please set up a Skype call sometime on Friday 7.6 with Jim." -> "July 6th"
"This task should be done on 5.12" -> "May 12th"
Should we modify the current behaviour?
Test cases added to DateTimeModel.

@LionbridgeCSII Same here. Thanks.

@LionbridgeCSII Same here. Thanks.

resolved.

@LionbridgeCSII Sorry. Simple conflicts again.


bump more core extensions

more core extensions is now on 4.1.0 and I was wondering if we might be able to update.
no particular reason, just update for update's sake
here's what's included:
https://github.com/ManageIQ/more_core_extensions/compare/179bf40..e5b4501

Added Ruby 2.7 support [#79]
Added Process#pause, Process#resume, and Process#alive? [#73]

array added * #compact_map - Collect non-nil results from the block
array added #tabular_sort - Sorts an Array of Hashes by specific columns
hierarchy added #descendant_get - Returns the descendant with a given name
the two breaking changes:

BREAKING: Moved Object#descendant_get to Class#descendant_get [#75]
BREAKING: Removed deprecated Enumerable#stable_sort_by [#76]

a minor header output change was made that hasn't been released yet to make tableize more markdown compliant
see https://github.com/ManageIQ/linux_admin/pull/221

We ultimately want this for rest-client 2.1+. Please merge.

Ok, pushed v0.21.3 including this change


feat: add docker build for amd64 / arm64, e2e tests, publishing ghcr

What :computer:

Adds docker build / publish for amd64 / arm64. Example of successful build using fork
Adds new workflow to run e2e tests against docker image
Publishes to ghcr.io

Why :hand:

Wider support
Ensures docker image works as intended

Closes #479, Closes #480, Closes #481
Evidence :camera:
Include screenshots, screen recordings, or console output here demonstrating that your changes work as intended

@itegulov I want to test this again on a fork before merging.
@antonbaliasnikov has pointed out that with using the same tag it might just overwrite the last job that completes.


Bot invited into Group, but not transcribing

I registered a new bot, started docker with model, bot id etc.
The bot has permission to the group messages, so it should work?
Forwarding a voice message to the bot works fine.

resolved v0.3.0


[Bug]: Custom scopes in access token break userinfo_endpoint

Preflight Checklist

[X] I could not find a solution in the documentation, the existing issues or discussions
[X] I have joined the ZITADEL chat

Environment
Self-hosted
Version
2.30.0
Describe the problem caused by this bug
TLDR: When adding custom scopes to the access token (I use a JWT) with an action, the token is no longer accepted/viable for the userinfo oidc endpoint.
Hey there 👋
I have a custom action running which adds the users roles to the access token so that I can use them on my resource server to verify against. I now wanted to use this access token to get the userinfo from the oidc endpoint. This was not working. Fiddeling around I found out that if I remove the action extending the token, the access token works out as expected and returns my info. I do request the correct scopes ( openid email profile urn:zitadel:iam:org:id:REDACTED offline_access) which should allow me to request the userinfo.
Didn't find anything here on GH and just joined the DC (there doesn't seem to be anything on this as well)
To reproduce

Configure Zitadel to add custom scopes to the access token
Log in user and obtain access token (with oidc profile email scopes), user must have a role assigned in the project
Use access token to request userinfo_endpoint data (like described in the documentation)
Observe access token invalid answer for http request

Screenshots
No response
Expected behavior
Same behaviour as using an access token without custom added scopes. I would like to receive the users info according to the access tokens privileges.
Operating System
No response
Relevant Configuration
Action -> FlowType Complement Token -> Pre access token creation:
/**
 * Add each auhtorization role to the token scopes
 * as PROJECT_NAME:ROLE. Is required for the resource
 * server
 */
function addRolesToScope(ctx, api) {
    if (ctx.v1.user.grants == undefined || ctx.v1.user.grants.count == 0) {
        return;
    }
    let grants = [];
    ctx.v1.user.grants.grants.forEach(claim => {
        claim.roles.forEach(role => {
            grants.push(claim.projectName + ':' + role)
        })
    })
    api.v1.claims.setClaim('scope', grants)
}

Application token settings:
Auth Token Type: JWT
[x] Add user roles to the access token
[x] User roles inside ID Token
[x] User Info inside ID Token

Additional Context
Feel free to tell me if you need more info. I can provide that asap :)
Thanks!!

The first thing I can imagine going wrong is me using a the scope claim to add my scopes. Maybe that messes with the server so that it won't assign actual scopes needed for the request? I thought I was on the safe side using these scope claim as you are not using it anywhere in the JWT

Maybe this is realted to https://github.com/zitadel/zitadel/pull/6298?

Maybe this is related to #6298?

Are you on self hosted? In that case it could relate.
But when you are on our cloud we deployed after you opened the issue.

@hifabienne Yes i am self hosted.
I pulled the newest docker release yesterday (v2.31.4), refreshed my access token, but i still receive access token invalid

@livio-a Can you help here?

Maybe the token payload helps here as well
{
  "aud": [
    "REDACTED",
    "REDACTED",
    "REDACTED"
  ],
  "exp":<PHONE_NUMBER>,
  "iat":<PHONE_NUMBER>,
  "iss": "REDACTED",
  "jti": "225595938045952003",
  "nbf":<PHONE_NUMBER>,
  "scope": [
    "REDACTED_PROJECT_NAME:USER"
  ],
  "sub": "REDACTED",
  "urn:zitadel:iam:org:id": "REDACTED",
  "urn:zitadel:iam:org:project:REDACTED:roles": {
    "USER": {
      "REDACTED": "REDACTED"
    }
  },
  "urn:zitadel:iam:org:project:roles": {
    "USER": {
      "REDACTED_ID": "REDACTED_DOMAIN"
    }
  },
  "urn:zitadel:iam:user:resourceowner:id": "REDACTED",
  "urn:zitadel:iam:user:resourceowner:name": "REDACTED",
  "urn:zitadel:iam:user:resourceowner:primary_domain": "REDACTED"
}

I can reproduce the error, which really originates from using the scope claim. As initially defined by the Token Exchange (RFC8693: https://datatracker.ietf.org/doc/html/rfc8693#name-scope-scopes-claim):

The value of the scope claim is a JSON string containing a space-separated list of scopes associated with the token, in the format described in Section 3.3 of [RFC6749].

Therefore the verification of the access token will fail because of the format.
If possible I'd change the action to api.v1.claims.setClaim('scope', grants.join(" ")) or use a different claim.
Is this an option for you @SchillingSebastian ?

Yes this is works for me 👍
Thanks!


Fix scene parser reading non-built-in scripts for POT generation

Wait, wasn't this intentional? It seemed useful to me that selecting a .tscn for POT generation would automatically parse its dependencies for used strings.

It can cause unwanted strings to be parsed, which actually happens in my personal project. Making them need to be explicitly added seems like the better choice.

Thanks!


feat: updated Up and Down

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


perf: use const instead of enums to min bundle size

Typescript enums are transformed into JS functions when compiling. Those create an object that can't be tree-shaken given it may be accessed dynamically. So using consts to ensure only the used enum props end up in the bundle
Indeed, Typescript enums may not be tree shaken even as a whole: https://github.com/microsoft/TypeScript/issues/27604

Current dependencies on/for this PR:

main

PR #192   👈

This stack of pull requests is managed by Graphite.


Cannot Install Any Ubuntu Distribuition

Environment
Windows build number: 10.0.19041.264
Your Distribution version: 18.04 (But This Applies to every distribuition)
Whether the issue is on WSL 2 and/or WSL 1: Wsl 1.0
Steps to reproduce
Its an Wsl/Ubuntu Launch Issue
Expected behavior
I would expect Ubuntu To let me Use it like so i can setup the account and other stuff
Actual behavior
Ubuntu just crashes/gives an error after 2 or 3 minutes on launch:
Error:
WslRegisterDistribution failed with error: 0x80004005
Error: 0x80004005 Unspecified error

Ref #4003


fix(41268): Replace leading tabs in diagnostic code with spaces

When tabs are used for indentation in source files,
they should be replaced by spaces when printed in diagnostic messages.
Current code only replaced the first leading tab character.
This commit will now replace all leading tabs when printing source code
lines in diagnostic messages.

[x] There is an associated issue in the Backlog milestone (required)
[x] Code is up-to-date with the master branch
[x] You've successfully run gulp runtests locally
[ ] There are new or updated unit tests validating the change

If tests are needed, please guide me to some example test for diagnostics.
Fixes #41268

Are there still changes expected from me for this issue?

Are there still changes expected from me for this issue?

Looks like github's merge UI (on windows?) changed line endings or something. I'm going to check this out locally on a machine I trust to see if I can fix that before merging.

@sheetalkamat good point -- what kind of test is appropriate here?

https://github.com/microsoft/TypeScript/tree/master/src/testRunner/unittests/tsc is where we run tests like tsc and should show the issue and fix

It's been a year, so I'm going to close this to reduce the number of old open PRs. @thdk Let me know if you want to keep working on this.


Pseudo label selection

Based on the code provided in https://github.com/Ziyan-Huang/FLARE22/blob/main/select.ipynb, it appears that three rounds of pseudo-labels are generated. However, the instructions imply that only the first round (involving the model trained with labeled data) and the second round (involving the model trained with the first round of pseudo-labels and labeled data) produce pseudo-label results. Therefore, the process for conducting the third round of iterative training remains unclear. Could you please clarify how to proceed with the third round of training in this iterative process?

Hello, we have repeated the procedure described in Section 1.6 of the readme twice, leading to a total of three iterations of pseudo-labels. This is the reason we refer to the process as iterative. We hope this clarification is helpful.

Thank you for your patient reply.


Can I somehow set to ignore control when I change ColorScheme?

I have <WindowsFormsHost><wf:DataGridView. Adonis dark theme pretty badly changes font here:

Light color scheme

Dark color scheme

Can I somehow disable colorScheme changing only for DataGridView? Or maybe manually set ColorScheme parameters for DataGridView?

You could create a style for your DataGrid and set foreground or background colors as you like.
Alternatively, if you don't want to have Adonis UI's default style for DataGrids in general, you need to replace the following line in your App.xaml:
<ResourceDictionary Source="pack://application:,,,/AdonisUI.ClassicTheme;component/Resources.xaml"/>

... with your own resource dictionary. Just copy Adonis UI's resource file and remove all styles you don't like.
This has the disadvantage that future updates are not applied automatically to your file, of course.


The library doesn't work after upgrading to 0.8.10

Hi,
I was recently working with the library, but I noticed that version 0.8.10 is not working and returns errors in some cases.
To reproduce the bug you have to install version 0.8.10.
npm install<EMAIL_ADDRESS>clone the repository and bundle the example, it will return an empty array [] instead of [{"foo":"hello","bar":"world"}],
Also wanted to point out that, in the case of *.db files (mine was generated by a sql-alchemy schema) I got an error that stated that the database disk image is malformed as can be seen from the photo below:

Note: I got not no errors with my sql-alchemy schema generated database when I tested with 0.8.9 and it worked fine, and I also tested the attached example with 0.8.9 and it returned that data, not an empty array.
It seems like version 0.8.10 is still a work in progress, but it can be installed from npm registry.
Regards,

Thanks, for letting me know. This was indeed a regression (for some use cases) I introduced when i fixed #13. Should be fixed in 0.8.11


Testing buganizer

b/265805708

Did this actually stop the flood now ? It looks like the bug didn't get updated


Implement SQL Server support

This one is tricky because tests can only be run on a Windows machine for now. Add a travis ci entry as soon as Microsoft releases the Linux version.

Apart from group_concat everything that theoretically can be supported is done for now.
https://github.com/Blazebit/blaze-persistence/commit/90d5a47b191714bf6a991bc89a9c15325d2b982e


Two indexers in write mode compete to add next block, loser locks up and cannot recover

Subject of the issue
When two indexers in write mode compete to add the next block, the loser will occasionally enter an infinite loop of failures.
The solution is to only run one at a time -- but our deployments are done via cloud run and there is some overlap during deployments. If the newcomer enters this failed state, progress halts because cloud run will kill the old outdated process.
2022-09-11 14:33:25.000 EDT
{"level":"info", "msg":"adding block 23992647"}
2022-09-11 14:33:25.000 EDT
{"error":"Process() handler err: AddBlock() err: TxWithRetry() err: attemptTx() err: AddBlock() adding block round 23992647 but next round to account is 23992648", "level":"error", "msg":"block 23992647 import failed"}
2022-09-11 14:33:26.000 EDT
{"level":"info", "msg":"adding block 23992647"}
2022-09-11 14:33:26.000 EDT
{"error":"Process() handler err: AddBlock() err: TxWithRetry() err: attemptTx() err: AddBlock() adding block round 23992647 but next round to account is 23992648", "level":"error", "msg":"block 23992647 import failed"}
2022-09-11 14:33:27.000 EDT
{"level":"info", "msg":"adding block 23992647"}
2022-09-11 14:33:27.000 EDT
{"error":"Process() handler err: AddBlock() err: TxWithRetry() err: attemptTx() err: AddBlock() adding block round 23992647 but next round to account is 23992648", "level":"error", "msg":"block 23992647 import failed"}
2022-09-11 14:33:29.000 EDT
{"level":"info", "msg":"adding block 23992647"}
2022-09-11 14:33:29.000 EDT
{"error":"Process() handler err: AddBlock() err: TxWithRetry() err: attemptTx() err: AddBlock() adding block round 23992647 but next round to account is 23992648", "level":"error", "msg":"block 23992647 import failed"}
2022-09-11 14:33:30.000 EDT
{"level":"info", "msg":"adding block 23992647"}

Your environment
Running on cloud run.
Algod indexer version: 2.14.0
Dockerfile
entrypoint.sh
Steps to reproduce

Start two indexers with same configuration in write mode
Wait.

Expected behaviour
One instance will successfully commit current round. One will fail to commit current round. Both will be capable of committing the next block. Neither will get stuck trying to commit the originally contested block.
Actual behaviour
One indexer will successfully commit the current round. One will fail and enter a loop trying to commit the round it lost.
Possibly related: https://github.com/algorand/indexer/issues/336, https://github.com/algorand/indexer/issues/1173

when running multiple instances of the indexer, you should have 1 in writer mode and all the others should be in read-only mode.


Updating Connection Owner

I created a flow and added co-owners to the flow. I'm currently the connection owner. I thought co-owners will be able to switch connector owner. However when they go to the Manage Connections page from the Connection in use, they cannot see my connection in the list but a message saying "You haven't created any connections yet".
Is the connection owner only one able to switch update the account?

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

ID: a50a5424-6bb4-c34c-bb82-991a5dd3e0df
Version Independent ID: ea8ac9ee-e014-ad33-59f5-5d15f8a38ad8
Content: Learn how to add other owners to a flow and create team flows - Microsoft Flow
Content Source: flow-docs/create-team-flows.md
Service: flow
GitHub Login: @MSFTMan
Microsoft Alias: deonhe

+1

@radioblazer Can you please look at this to determine whether a docs update is needed. If this is not a docs issue we can close this issue.
Customer support is here: https://us.flow.microsoft.com/en-us/support/
Power Automate community forums are here: https://powerusers.microsoft.com/t5/Microsoft-Power-Automate/ct-p/MPACommunity

@gohkohwee - Thanks for your feedback. We are closing this issue because we are either unable to find relevant information or reproduce this. If you're still experiencing the issue described here, please reopen or create a new issue.


test: add missing test cases for envoyproxy validate methods

What type of PR is this?

add missing unit test cases
What this PR does / why we need it:
some unit test cases are missing according to https://app.codecov.io/gh/envoyproxy/gateway/blob/main/api%2Fv1alpha1%2Fvalidation%2Fenvoyproxy_validate.go
Which issue(s) this PR fixes:

Fixes #

/retest

/retest

/retest

@shawnh2 we've moved to CEL based validations, the newer tests live in https://github.com/envoyproxy/gateway/blob/main/test/cel-validation/envoyproxy_test.go, can we move the new test cases there instead and also make sure a CEL validation exists for it
cc @zirain

add missing CEL validation and test for ProxyTelemetry, PTAL @arkodg @zirain


Duplicated errors when using a Literal choice

Bug
Please complete:

OS: macOS Mojave 10.14.6 (18G87)
Python version import sys; print(sys.version): 3.7.4 (default, Jul  9 2019, 18:13:23) [Clang 10.0.1 (clang-1<IP_ADDRESS>)]
Pydantic version import pydantic; print(pydantic.VERSION): 0.32.2

I tried looking for an existing issue, found this, but didn't seem appropriate.
In #651, examples on how to use the Literal option were introduced, including this example showing a single validation error, and the acceptable choices.
Running this file today produces two errors, instead of one, and doesn't populate the permitted value correctly.
$ python docs/examples/literal1.py
2 validation errors for Pie
flavor
  unexpected value; permitted: 'apple' (type=value_error.const; given=cherry; permitted=('apple',))
flavor
  unexpected value; permitted: 'pumpkin' (type=value_error.const; given=cherry; permitted=('pumpkin',))

Thanks for making an issue, I’ll take a look.

I found the source of the issue (Literal is converted to a union of literals of individual values; this was done to fix the generated schema). I'll see if I can't throw together an easy fix.

Fixed in #770, I'll deploy the patch in a few days to wait and see if anything else comes up.


fixed typo

Duplicate of #12

Thanks, landed in https://github.com/oauthjs/express-oauth-server/commit/2274bf1d2b1f5af1914e567502b523525a68ddb1.


ion-input with type "number" conflicts with maxlength attribute

Short description of the problem:
ion-input with type "number" conflicts with maxlength attribute, so that the number of characters we input can be more than maxlength. Change type to "tel", everything will be ok.
Steps to reproduce:

Add ion-input with type 'number' and set maxlength="10"
Enter more than 10 numbers

<ion-item>
  <ion-label>phone</ion-label>
  <ion-input type="number" maxlength="10" clearInput [(ngModel)]="userPhone"></ion-input>
</ion-item>

Other information:
Checked on Chrome browsers and on Android 6.0.
Which Ionic Version?
2.0.0-beta.9
Run ionic info from terminal/cmd prompt: (paste output below)
Cordova CLI: 6.2.0
Ionic Framework Version: 2.0.0-beta.9
Ionic CLI Version: 2.0.0-beta.32
Ionic App Lib Version: 2.0.0-beta.18
OS: Mac OS X El Capitan
Node Version: v5.11.1

Hello, thanks for opening an issue with us! The maxlength attribute is not supported by the number type input. If you would like more info on why and some workarounds feel free to check out this Stack Overflow post.

my solution is put input type as a "tel", Because  maxlength work with input type as a text & telephone number in ionic 2.
<ion-item>   <ion-label>phone</ion-label>   <ion-input type="tel" maxlength="10" clearInput [(ngModel)]="userPhone"></ion-input> </ion-item>

@dilhan119 , please, what is the type 'tel'? is it a type you created? If so, how can I create it? I put type tel here and is the same as text I guess...

@GabrielDvt it's one of the new input types introduced in HTML5. It is similar to other newly introduced types such as number, email, etc. that you might have used.
<input type="tel" placeholder="Your phone number">

This is an HTML5 built-in type and you don't need anything extra to make use of it.

@dilhan119 but if we use tel in the place of number, even letters are getting accepted. how to get rid of that ?


Feature request: default to Y for PlugClean

It's a small thing, and it may be only personal to me, but I thought I would say it out loud and see what happens. :smile:
When I invoke PlugClean, the dialog defaults to N, not Y. I have never invoked PlugClean by accident, or without wanting to remove a certain plugin, so I think it might make more sense if it defaulted to Y.
Thank you for all your work on this, and on :Goyo... they're terrific.

Hi, have you tried PlugClean!?
https://github.com/junegunn/vim-plug#commands

Aha! Excellent – thank you.


Add zookeeper component

Enables applications to automatically use zookeeper in order to for example do locking or member discovery.

Hey @dryewo, is this still in scope? If so, let's add a "Help Wanted" label. If not, let's close.


[backport] Make install_tests runnable without depending on current path

Backport of #4969

[automatic post] Jenkins, test this please.

Jenkins CI test (for commit 86a5cf9810f4b502e1c88fdbb57a43c1e02f6fa8, target branch v9) succeeded!


build(helm): add customLabels and customAnnotations params

closes #386

This PR will probably have conflicts with #384 due to changes inside servicemonitor.yaml ;
we have to decide whether to leave servicemonitors' own values or not.
@prometherion WDYT?

You're right, @ptx96: we have to have separate values for the ServiceMonitor since the Prometheus Operator would require some matching labels, and applying these to non-ServiceMonitor resources would be silly.
@MaxFedotov may I ask you this change?

You're right, @ptx96: we have to have separate values for the ServiceMonitor since the Prometheus Operator would require some matching labels, and applying these to non-ServiceMonitor resources would be silly.
@MaxFedotov may I ask you this change?

Sorry, don't understand what I had to do :( rebase on #384?

My bad @MaxFedotov :)
Once #384 is merged, rebase over master, a git conflict should arise and must be fixed.

@prometherion  rebased on master


Single Command Install for SODA with default configs.

Issue/Feature Description:
Simplify SODA installation with Single Command to install SODA with default config params.
Why this issue to fixed / feature is needed(give scenarios or use cases):
To simplify SODA installation and improve usability.
How to reproduce, in case of a bug:
Other Notes /  Environment Information: (Please give the env information, log link or any useful information for this issue)

Thanks @rajat-soda Added to #408


Added Code and Text for Changing Default Schema

Added sample code and text guidance to allow changing of default schema for Migrations and Configuration and Persistent Grant Contexts
What issue does this PR address?
#2322
Does this PR introduce a breaking change?
No
Please check if the PR fulfills these requirements

[ ] The commit follows our guidelines
[ ] Unit Tests for the changes have been added (for bug fixes / features)

Other information:

Thanks for this @ceemafour. I'd almost prefer this to be covered in our EF docs instead: http://docs.identityserver.io/en/latest/reference/ef.html
Would you be willing to add a section in there instead?


Make resource.sources inherits from package.sources

fixes https://github.com/frictionlessdata/specs/issues/541

Rationale
Please refer to the issue above

Thanks! ACCEPTED by WG (6/9)


Create User guide for P2P Energy trading demo using Beckn gemini

Description
Develop a comprehensive user guide for the P2P Energy Trading Demo using Beckn Gemini. The guide should cover the flow for both consumers and prosumers (prosumers), detailing how they interact within the system. Additionally, the user guide should explain the GUI application used for purchasing energy in a peer-to-peer (P2P) network.
Goals

[ ] Create a detailed user guide that outlines the consumer flow for purchasing energy in the P2P network.
[ ] Include a section that explains the prosumers flow, showing how prosumers can sell energy in the P2P ecosystem.
[ ] Provide an overview of the GUI App, explaining how users can interact with the interface to purchase or sell energy.
[ ] Ensure the guide is user-friendly and easily understandable for both consumers and prosumers.

Expected Outcome

A complete user guide for the P2P Energy Trading Demo, covering both consumer and prosumer flows, and the usage of the GUI app.
A clear, step-by-step guide that assists users in purchasing and selling energy within the P2P network.

Acceptance Criteria

[ ] The user guide clearly explains the consumer flow, including all steps for purchasing energy.
[ ] The user guide thoroughly describes the prosumer  flow, detailing how prosumers can offer energy for sale.
[ ] The user guide includes a section on using the GUI App for trading energy, with screenshots or diagrams if necessary.
[ ] The guide is easy to follow and understand by both consumers and prosumers.

Mockups / Wireframes
NA
Product Name
Beckn-Gemini
Domain
TBD
Tech Skills Needed

Documentation
UI/UX Understanding
P2P Energy Trading Knowledge
Beckn Protocol Understanding

Complexity
Low
Category
Documentation
Sub Category
User Guide
Project View
Beckn-Gemini P2P Energy Trading
Project Name
Beckn-Gemini

User guide is created and updated on confluence.
Link - https://fide-official.atlassian.net/wiki/spaces/EC/pages/640122884/User+Guide+-+p2p+energy+trading+demo
cc: @PritiEM @emmayank


Slice Bounds out of Range error going from version 0.0.9 to 0.0.10

When using this image, I can into the following error when my patch version was bumping beyond a single digit value (0.0.9 to 0.0.10).
Old version: 0.0.9
New version: 0.0.10
panic: runtime error: slice bounds out of range

goroutine 1 [running]:
main.bump(0xc42006e2c0, 0x0, 0x0)
        /go/src/github.com/treeder/dockers/bump/bump.go:92 +0xa3d
github.com/treeder/dockers/bump/vendor/github.com/urfave/cli.HandleAction(0x5539c0, 0x58cec0, 0xc42006e2c0, 0x0, 0x0)
        /go/src/github.com/treeder/dockers/bump/vendor/github.com/urfave/cli/app.go:490 +0xd2
github.com/treeder/dockers/bump/vendor/github.com/urfave/cli.(*App).Run(0xc4200584e0, 0xc42000a060, 0x2, 0x2, 0x0, 0x0)
        /go/src/github.com/treeder/dockers/bump/vendor/github.com/urfave/cli/app.go:264 +0x635
main.main()
        /go/src/github.com/treeder/dockers/bump/bump.go:35 +0x30c

It appears this issue is caused by the growing character count since manually modifying the referenced VERSION file to 0.0.10 and letting the bump run works perfectly for transitioning from 0.0.10 to 0.0.11.

Can you be sure you're using >= treeder/bump:1.2.3 ?  https://hub.docker.com/r/treeder/bump/tags/
I believe this was fixed recently so pleasetry it with that 1.2.3 tag and let me know if it works.


[WIP] Pod evaluator for KRM functions

The first 3 commits are from https://github.com/GoogleContainerTools/kpt/pull/2934.
The last commit is for the pod evaluator.
This PR is a draft PR currently and it is created to get early feedback.
Code will be polished and tests will be added before merging.

lgtm - a few suggestions, but I like it!

Adding unit tests are WIP.
But pod evaluator doesn't work in local deployment, since it's not a real cluster (there are no scheduler to assign pod to node and etc). @martinmaly @justinsb What should we do in local development? Thoughts?

I saw CI error context deadline exceeded in e2e tests. But they are passing when I test it against my GKE cluster.
@martinmaly Where do we set deadline in context? I can try to give it longer time to see if it will pass.

we don't set deadline intentionally anywhere so we operate with defaults. Do you happen to know which API time outs? happy to meet & debug.

=== RUN   TestE2E/PorchSuite/TestGitRepository
    suite.go:181: failed to create resource /, Kind= porch-test-1648848557379656/git:test-bucket:v1: Timeout: request did not complete within requested timeout - context deadline exceeded

        --- FAIL: TestE2E/PorchSuite/TestGitRepository (34.03s)

I suspect our API has default timeout of 30 seconds. The kubeval image is 93.5MB which is much bigger than go-based functions. But it's should not take 30+ seconds.
I will keep digging
Do you have any opinion about https://github.com/GoogleContainerTools/kpt/pull/2943#issuecomment-1086331052?

Yes, let's disable k8s runner in local environment. Tests should respond appropriately and exercise functions that require the general purpose executor when they run against a real cluster.
Another option is to enable kind for local tests also. So far it hasn't been a priority but may be worthwhile.

@martinmaly PTAL


Add CERN file

Although CERN does not provide a full 1 year course on phython programming, we work the entire year around with graduade students, using python but not only. This happens more intensly during the summer semester 1. Althgough in smaller number, students partecipating in the Doctoral, Thechnical or OpenLab programmes also will benefit from using your tools 2.
Cheers
<EMAIL_ADDRESS>

@leoredi I am sorry, but CERN is mostly research organization, not a university. While it is absolutely clear that CERN is very important for the science on Earth, we all have to follow this repository rules. Could you please send an email to<EMAIL_ADDRESS>and they will find an appropriate form of free licensing for the students at CERN. There are more suitable options, rather than adding CERN domain to this repository. Thank you for the understanding!


Fixed CI

See https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/

Thanks!


New command: retrieve URL or ID given alias

:wave: Hi there!
I'm really enjoying using now. One thing I've been thinking about is how to recreate the deployment workflow I've been accustomed to. A tl;dr is two commands:

deploy an app to an environment, such as "staging"
move one environment to another, such as "staging" to "production"

The first command can be achieved using something like this:
now --public | xargs -I {} now alias {} staging.my-app.com

However, I don't think that it is possible to write the second command right now. I would need something like:
now resolve-alias staging.my-app.com
which would output either the .now.sh URL of the deployment (or its ID). Does something like that exist? If not, would you be open to adding it?
I would use this command for a few other things, too, like scaling back the previous "production" deploy to 0 instances.
Thanks!

Update: It looks like now alias staging.my-app.com my-app.com works to create the "tl;dr" command that I wrote above, but there are other ways I could use getting the ID from an alias; e.g. scaling

If you run now alias ls | grep staging.my-app.com you will find the alias and next to it the URL of the deployment behind that alias!


[BUG] AugMix

Hi Ross,
Thank you for including AugMix in your wonderful library!
It looks like the augmentation severity parameter is currently fixed at the maximum allowed severity (unless explicitly enabled with magnitude_std):
https://github.com/rwightman/pytorch-image-models/blob/4203efa36d0258315f51ad8f945849586b058408/timm/data/auto_augment.py#L337-L345
However, AugMix actually samples different severities uniformly at random in the range [0, magnitude] for each application of each op:
https://github.com/google-research/augmix/blob/master/augmentations.py#L70
Sorry this wasn't more clear in our implementation and paper!
Norman

@normster thanks for pointing that out, I'll take a closer look soon

Should
ops = augmix_ops(magnitude=magnitude, hparams=hparams)

located here just be
ops = augmix_ops(magnitude=magnitude*np.random.uniform(), hparams=hparams)

?


Button.js breadboard setup

Hi, first of all great tutorial about the blinking light with JavaScript.
I was wondering if you could also post a picture of the setup for the button.js script that is included in this repo.  Please?

Hi,
Please have a look at the video: https://m.youtube.com/watch?v=3nI4iNmBKWo
In the description of the video you will find the same link to an article with details about the wiring:  http://www.instructables.com/id/JavaScript-for-IoT-Controlling-a-Button-on-Raspber
Best regards, Leon

Hi Timothy,
I hope you have managed to get the button working following the link that I provided. I will close the issue.
Best regards, Leon

Hi Leon,
Thanks for you reply.  I'm not sure why I couldn't find that extra tutorial with a search.  Anyhow, using your diagram works fine.  I'm not experienced at hardware, and I can't get any other pins to work except configPin = 7.  Not sure why.  As a next step I wanted to turn on the blinking light using the button, but trying to use another pin for the button does not seem to work.  I have to learn more about the GPIO pins I suppose!
Regards,
Tim.

Hi Timothy,
I am glad that you have managed to get it working using the diagram. If you want to skip the wiring I can recommend you my open source hardware project for Raspberry Pi HAT called RabbitMax Flex.  Right now there is a crowdfunding campaign in IndieGoGo for it here: https://www.indiegogo.com/projects/rabbitmax-flex-raspberry-pi-hat-for-iot/x/10833949
The project features examples in Python and C which can be adapted for node.js.
Best regards, Leon


fixed the bolding of some tokens

fixed the bolding of some tokens in the document.

@kelleyvice-msft - PR is ready for final review. Thank you.


'make build' does not skip unchanged modules

It must be a recent change, seen with master on Windows.

Confirmed on ubuntu 16. Must be the new changes to setup.py in commit 1931d18 .

This is due to whoever changed the pyx location from graphics to include, didn't changed the dependencies solver in setup.py to look into the new directory.


[Req] Show Rancher CLI Version on Versions Modal

I'd like to be able to view the Rancher CLI Version in the Versions Modal. Maybe in 1.4?

Useful
Info

Versions
Rancher v1.3.0 Cattle: v0.175.2 UI: v1.3.5

The CLI is not part of rancher, how would the GUI know which version you have locally, if any?
Or do you mean that it should show the latest version available only?

Looks like this was added in v1.4.1. 👍

@SamMousa It's the version that corresponds with the version of Rancher you're looking at.  Not the version you do have, the version you should have.


Readme addition

In the read me after the gradle has been assembled it says "grab the aar file." I was thinking the read me could be more explicit about what actually goes into my app. I have grabbed the aar file and put it in my apps lib folder.

+1 for this! Had to search around to figure this out.


Figma community 1.0.5

Document of all changes done to our UI kit in Figma
### Changelog
- [ ] https://github.com/digdir/designsystemet/issues/1541
- [ ] https://github.com/digdir/designsystemet/issues/1565
- [x] Swapped 10px padding for spacing-2 token inside elements on combobox
- [ ] https://github.com/digdir/designsystemet/issues/1533
- [ ] https://github.com/digdir/designsystemet/issues/1588
- [x] Fixed border-radius on combobox focus indicator
- [x] Reset all changes to "Label with description" on TextField Small, because the label where set to 21px height instead of 20px.
- [x] Reset all changes to "Label with description" on TextField Medium, because the label where set to 24px height instead of 23px.
- [x] Radio Large: Change gap between box and text from 9px to 12px (only large)
- [x] Checkbox Large: Change gap between box and text from 9px to 12px (only large)
- [x] Switch Large: Change gap between box and text from 9px to 12px (only large)
- [x] Button group medium: Change gap from 12px to 16px
- [x] Button group large: Change gap from 12px to 20px
- [x] Added better example for Accordion with full border radius
- [x] Fixed wrong opacity on disabled search
- [ ] https://github.com/digdir/designsystemet/issues/1385
- [x] Chip is improved with better icon sizing, spacing and colors.
- [x] Changed gap between small radio, checkbox to 12px (the group component)
- [x] Changed gap between medium radio, checkbox to 16px (the group component)
- [x] Changed gap between large radio, checkbox to 20px (the group component)
- [x] Updated all links to storybook documentation and component guidelines
- [x] Fix sizing issue with Pagination
- [x] Fix spacing issue with Popover/Helptext
- [ ] https://github.com/digdir/designsystemet/issues/1772
- [x] Created Focus indicator base component (For the new focus style)
- [x] Remove focus variants
- [ ] https://github.com/digdir/designsystemet/issues/1769
- [ ] https://github.com/digdir/designsystemet/issues/1444
- [ ] https://github.com/digdir/designsystemet/issues/1585

This version was published to community 23.04.24.


chore: Add gtest support for c binding

Summary of this PR:

Support gtest for c binding unit test

Thank you for submitting the PR. However, I would like to clarify that the C binding is still in its early stages and does not have any meaningful APIs to test yet. Therefore, I regret to inform you that contributions related to testing or workflow of the C binding will be rejected.


Polyfills for IE 8+ & Some mobile browsers

It is very difficult as you think?

Could you use this polyfill?: https://github.com/inexorabletash/polyfill/blob/master/es5.js
Some reliable estimates show that around 4% of the Internet is still using IE8.  Sad but true.

I don't think that will work. The code just seems to try  __defineSetter__ and __defineGetter__, neither of which exist in IE, and it also tries IE8's native defineProperty which only works on DOM nodes while we need it to work on ordinary JS objects. I don't have a way of testing it, however.

Yeah, I think you're right.  It does say, "Partial support for most common case - getters, setters, and values."


Fix cgm with share2 via nightscout with tokenbased authentication with oref 0.7.x (regression)

As far as I can tell the PR https://github.com/openaps/oref0/pull/1248 introduced a regression for users with Dexcom G6 with share2 and Nightscout that use token based authentication for authenticating their rig to Nightscout.
Example logfile:
Starting oref0-ns-loop at Mon Dec 30 11:39:02 CET 2019:
Connected to <IP_ADDRESS>, testing for xDrip API availability
Load from local xDrip timed out, likely not connected to xDrip hotspot
SyntaxError: Unexpected end of JSON input
    at JSON.parse (<anonymous>)
    at /root/src/oref0/bin/oref0-get-ns-entries.js:136:30
    at FSReqWrap.readFileAfterClose [as oncomplete] (fs.js:511:3)
Loading CGM data from Nightscout failed null
Connected to <IP_ADDRESS>, testing for xDrip API availability
Load from local xDrip timed out, likely not connected to xDrip hotspot
SyntaxError: Unexpected end of JSON input
    at JSON.parse (<anonymous>)
    at /root/src/oref0/bin/oref0-get-ns-entries.js:136:30
    at FSReqWrap.readFileAfterClose [as oncomplete] (fs.js:511:3)
Loading CGM data from Nightscout failed null
No recent valid BG found. Most recent:
(NOT VALID JSON: empty)
(NOT VALID JSON: empty)
Latest NS temptargets: (NOT VALID JSON: empty)
Merging local temptargets: (NOT VALID JSON: empty)
Temptargets merged: (NOT VALID JSON: empty)
meal.json.new not found
ns_meal_carbs failed
{"batteryVoltage":3804,"battery":62}
IOB not found

TODO: untested (too late now)

I will test both situations later and report back.

Tested with normal admin API_SECRET and token based API_SECRET and both work as expected.
@scottleibrand Can you merge this to dev?


Fix some animation state corruptions on activate and reset on save

Follow up #84815
Follow up #85794

I have commented there on the following:

BTW, there is a bug with reset on save for arrays, but it exists before this PR, so I will look into it separately.

The main cause of this was that the inactive or duplicated AnimationMixer would do the processing for reset_on_save many times. So this PR adds 2 checks:

An inactive AnimationMixer should not affect the scene.
AnimationTree that is assigned to a Player that may perform a reset on save will not perform a reset on save.

The conversion of the track cache to blendwise for backup is not necessary in practice, but added for safety.

Also, the dummy player is made inactive when it is generated; The dummy player is added to the scene when an AnimationTree is selected, but if it is activated by default, an invisible dummy player would play the animation when an inactive AnimationTree is selected. Fixed.
Moreover, regarding @YuriSizov concern in https://github.com/godotengine/godot/pull/85794#discussion_r1420665375, I have found that the problem occurs at the moment of activating, so I have reverted it so that it is not handled twice. I confirmed that https://github.com/godotengine/godot/issues/85640 works well, so regression will not occur.

Thanks!


[Block] Blog Years

At the moment we have the links for years manually populated in the word document.
Since there might be multiple variations of the sidebar, it would be good to have a block which dynamically renders these links based on data from the index.
Check in Sharepoint the readme sheet for /blogs/query-index.xls to get the API link for retrieving the published pages for years and the result of the API call. (check the blog-list block which dynamically renders the list of blogs as an example)
NOTE: we don't have yet created all the pages for years, so the block will not render initially the same number of links. Don't modify the xls manually, instead you can create a new year page, following the pattern of the existing one, preview + publish it and see how it is automatically added to the index and rendered by your block.

The list should contain only the last 4 years.


Cython errors when installing

Cloning the git repository and installing libstempo with pip install . is giving me a bunch of Cython errors like
Error compiling Cython file:
------------------------------------------------------------
...
cdef class tempopulsar:
    """tempopulsar(parfile, timfile=None, warnings=False, fixprefiterrors=True,
                   dofit=False, maxobs=None, units=False, ephem=None, t2cmethod=None,
                   toas=None, toaerrs=None, observatory=None, obsfreq=1400)"""

    cpdef public object parfile
          ^
------------------------------------------------------------

libstempo/libstempo.pyx:627:10: Variables cannot be declared with 'cpdef'. Use 'cdef' instead.

This appears to be due to a change in Cython 3.0, released today(!). See here.
For now, changing "Cython>=0.22" to "Cython>=0.22,<3.0" in pyproject.toml seems to work. But a better long-term solution might be to change some cpdef statements to cdef.

@rossjjennings I guess thus can be closed now that #54 has been merged.

@mattpitkin Sounds good to me.


Fix inRange for full circle arc

Fix #9815

Filename
Size
Change

dist/chart.esm.js
72.6 kB
+12 B (0%)

dist/chart.js
91.9 kB
+19 B (0%)

dist/chart.min.js
65.3 kB
+11 B (0%)

dist/chunks/helpers.segment.js
20.5 kB
+17 B (0%)

dist/helpers.esm.js
1.19 kB
+2 B (0%)


Add ability to exclude routes

Let's say I have some super secret endpoints (/admin/whatever), I'd like to be able to exclude them from the routes that are exposed via the generated JSON.
Maybe this can be achieved by adding a middleware, like how aaronlord/laroute does it.
As an extension of this, it'd be neat if I could use route groups to only expose certain routes to a "named" group, so I could use @routes('admin') in my blade file(s) to only expose routes in the admin group.

I've been doing some thinking along these lines as well.

I dislike the way laroute does this since I have to go through and blacklist any routes I don't want to be visible, and if I forget to blacklist a route...
I would much rather have to whitelist the specific routes (or a route group). I also like your idea of using the directive to only expose routes, but I wonder if it would be possible to make it so they have to fit a specific pattern (admin.* or api.v1.*)?

i think i can make a PR for this as i was just thinking of the same thing

@mikemand I was initially planning to export by default and require a blacklist. Can you think of any situations where accidentally exposing a route would cause a serious issue? I don't see it as a security issue so far, but happy to be proven wrong.
I think I'm okay with using a whitelist, but I'd prefer to use groups. Let me do a little thinking on this before you start working on a PR @ctf0, I may want to do something with macroing Router or something. If you have any specific plans for implementation let me know :)

@DanielCoulbourne actually the PR is already made 😆 .
regarding the route group, i dont think laravel exposes this info through the router->getRoutes() however here is a way around if u r interested https://github.com/ctf0/pretty-routes/blob/master/views/routes.blade.php#L41-L51

@ctf0 I made a few comments on the PR. In general I'd like to keep to one major change per PR. I would have loved to merge parts of it but not the whole thing. More info in my review of #17
Thanks for being willing to write the code! Let's work together to get it merged 😄

@DanielCoulbourne I cannot really think of anything, security-wise. Any serious API should have ways to prevent DoS attacks and the like, but this doesn't just expose API routes; it exposes all of them.
I couldn't imagine ever needing to expose the password reset routes and any administrative support routes probably shouldn't be exposed either. This is more personal preference, though, I guess.

@mikemand and @ctf0
Okay I have a compromise for you guys. I don't like publishing a config file by default, but I don't mind having an optional config file.
What if we publish all routes by default, then add support for optional config('ziggy.whitelist') and config('ziggy.blacklist') settings.
That way average users who don't care won't have to worry about black/white-listing routes, but if someone wants to do that, they have the option of just creating a config/ziggy.php file and adding one of those settings?
I'm thinking the setting could be an array of regular expressions, i.e. -
$whitelist = [
    /^auth./,
    /bank.vault/
];

This way it would be relatively simple to target entire route namespaces, or "any delete endpoint" or whatever.
How does that sit with y'all?

That sounds great to me. 👍

Sweet! I'll try to get it implemented this weekend, unless someone beats me to the PR 🥇 😄

It might be cool to be able to add multiple groups of regexes as well.  For example, maybe your app has 3 different user roles:

Admins (has access to all routes)
Authors (has access to author and guest routes only)
Guests (has access to guest routes only)

Furthermore, imagine you have 3 master layout files for each role (one for admin dashboard, one for author dashboard, and another for all guest pages).  It would be cool to be able to specify regex groups for all three master layouts:
'groups' => [
    'admin' => [
        /.*/,
    ],
    'author' => [
        ^(?!admin\.).*,
    ],
    'guest' => [
        ^(?!admin\.)(?!author\.).*
    ]
]

Then @routes would return all routes, and @routes('author') would return the author regexed group of routes for the author dashboard, etc.  Thoughts?

@JesseLeite a simpler approach would be adding a filter on the route groups like laroute, and a middleware to check the filter and generate the js routes accordingly.

@ctf0 ah interesting.  I like that implementation as well!
I have to say though, I work on one application where we have hundreds of routes.  A regex in a config might be a lot simpler for us, though obviously not as granular as laroute's implementation.  Curious where Ziggy will go with this :)

In case y'all weren't thinking this, I'd consider using Laravel's regex matcher that allows for shortcuts like "api.*"" -- the thing that is sourced by "Str::is"

Definitely looking forward to this, as I'm only looking to expose my API endpoints in JavaScript.
Just a suggestion instead of a config file, there's also the option of actually calling upon a Ziggy class and a static function in our AppServiceProvider? As an example:
public function register()
{
    Ziggy::only('api.*');
}

Thanks for the input all. At this point I am implementing the optional config version of this feature with the option to support Laravel's nice string wildcards.
Once this is implemented we can talk about extending the functionality with these other ideas. Just so you have a sense of my general vibe towards each:

Groups: I'd probably merge this if someone built it
Middleware based whitelisting and blacklisting: I don't love it. I think I would be a lot more friendly toward a Router.php macro as an option for whitelisting in the routes file.
Custom registration: I don't really know about this. Makes me a little nervous. I'd like to hear about how you would implement it.


Does not adjust size correctly when value is set with Emojis.

If the value that is being set into the TextInput has Emojis, they're cut off and the box still has a scroll. Pleas take into consideration the size difference between normal text and Emojis, I've noticed that by rule of thumb FontSize+8 seems to do the trick, but I haven't messed with any large font-sizes with Emojis, 16 being the maximum and 12 being the minimum.
If the input is filled with Emojis it doesn't resize at all.

it has landed on core support to implement an autogrow textinput https://github.com/facebook/react-native/commit/481f560f64806ba3324cf722d6bf8c3f36ac74a5


Issue with dragtable pluggin.

I am developing a large dynamic table and your plugin is great for fixing rows and columns of any table. I really appreciate, but it's issuing with a plugin called dragtable. The issue is that when I drag a column from one place to another and then scroll down, it clones the previous header and when I again scroll to the top issue fixes up but on fixing the table header it's not working. Can you help me out this issue?
On page load table;

After moving some columns:

After scrolling:

Check out that after page scroll the header resets.
I think you have to clone the latest one top row but it's cloning the row which is loaded with the page-load event. I have opened your plugin to check out what's going on in there, but I was unable to change because I am not so expert in JS.
Regards:
UsmanJavedAttari

Hi @UsmanJavedAttari,
You can try to call update() after dragtable is dragged. (Update for Dynamic Content)
Hope this will solve your problem.
Regards
Nick Tsai


java.util.zip.ZipException: zip file is empty while using dependency jar as environment variables

I am deploying some application in cloudfoundry. I have some library jar and configuration files also inside the application. I want to setup those jar and config file as environment variable, so I did
cf set-env APP_NAME JAVA_OPTS "-Dconf=/location/library.jar" and also tried to setup environment variables using manifest.yml
After these changes, I have to restage the application and I am always getting
ERR java.util.zip.ZipException : zip file is empty.

java.util.zip.ZipException: zip file is empty
at java.util.zip.ZipFile.open(Native Method)
at java.util.zip.ZipFile.(ZipFile.java:225)
at java.util.zip.ZipFile.(ZipFile.java:155)
at java.util.jar.JarFile.(JarFile.java:166)
at java.util.jar.JarFile.(JarFile.java:145)
at com.android.signapk.SignApk.main(SignApk.java:320)
i need help


WIP: Feature/code completion provider

Closes #5

Waiting on information on https://github.com/Microsoft/vscode/issues/11935
Otherwise, the feature will kill the whole typescript experience

Feature is implemented, but waiting on some info from vscode.
Merged since some refactorings are needed


Add titles for tutorial pages

Thanks for your contribution and we appreciate it a lot. The following instructions would make your pull request more healthy and more easily get feedback. If you do not understand some items, don't worry, just make the pull request and seek help from maintainers.
Motivation
Currently the pages listed below are titled as "<no title>."
https://mmdetection.readthedocs.io/en/latest/tutorials/index.html
https://mmdetection.readthedocs.io/zh_CN/latest/tutorials/index.html
Modification
This commit will give page titles to the pages listed above.
BC-breaking (Optional)
This modification will not break the backward-compatibility.
Use cases (Optional)
(pass)
Checklist

Pre-commit or other linting tools are used to fix the potential lint issues.
The modification is covered by complete unit tests. If not, please add more unit test to ensure the correctness.
If the modification has potential influence on downstream projects, this PR should be tested with downstream projects, like MMDet or MMCls.
The documentation has been modified accordingly, like docstring or example tutorials.

(pass)

Hi @nestiank ,
Thanks for your contribution.
The title of the tutorials is indeed added. However, I found that the outline in the right side is changed. Previously, it looks like below

and now it looks like:

Could you also update the rest file so that we can still see the outline of tutorials on the right side while the issue of title is fixed?

You can preview the doc here

I failed to fix that, thus closing this issue.


chore: remove mkAppN macro in omega

In light of the discussion in https://lean-fro.zulipchat.com/#narrow/stream/398861-general/topic/Idioms.20for.20matching.20.60Expr.60 even the mkApp6 macro probably causes code bloat? But it’s just too damn practical in this case…


Update to neomutt 2024-10-02

@avidseeker
Thanks :heart: for your updates to neomuttrc.vim.
Sorry I wasn't around to review them; I was on a 3 month hiking expedition!
I've merged your fixes and given the file a thorough review (and tidy).
The results are in the [neomutt] branch.
I'll give it a bit of a test over the next few days,
and if all goes well, below is what I'll to submit to vim.
If you have time to take a look, that'd be appreciated.
Thanks!

Update syntax/neomuttrc.vim to the latest version
Add syntax/neomuttlog.vim to handle NeoMutt log files

The first 3 commits perform some tidying up of neomuttrc.vim
They make no functional changes.

fe5bb737c neomutt: reorder some definitions
c9c180609 neomutt: tidy whitespace
1fd9fe3b8 neomutt: rename some symbols
015651956 neomutt: update to release 2024-10-02
ce9a3f93d neomutt: add neomuttlog syntax

Submitted to Vim, https://github.com/vim/vim/pull/15858

Dear Richard,
I hope you had a great hike.
Unfortunately, I didn't have the time, but thank you for the update, and thank you for your contributions in Neomutt. Glad my simple changes helped.
Best,
-- Avid Seeker


[错误] WORKFLOW图片序号错误

在关于描述 workflow 过程的图片中，创建 PR 的序号为 87，是否应该更改为 7.？？

@hanyouqing  Could you take a look at it?

@hanyouqing  Could you take a look at it?

@hanyouqing Could you take a look at it?

done: https://github.com/alc-beijing/translation/pull/46

@hanyouqing Could you take a look at it?

done: https://github.com/alc-beijing/translation/pull/46


Mouse Without Borders randomly kills host machine's internet connection

Microsoft PowerToys version
0.76.2
Installation method
PowerToys auto-update
Running as admin
No
Area(s) with issue?
Mouse Without Borders
Steps to reproduce
Mouse without borders works as expected but sporadically when switching between machines,  my internet connection is killed on the host machine.
When this happens the taskbar shows my computer has an IP but no internet connection, I am then unable to disable the ethernet adapter and the only fix is to force powerdown my computer. Restarting will get stuck on the spinning dots.
EDIT: After more testing, the issue does not happen when I disable Clipboard sharing. So it seems to be related to copying. It would happen often when I Ctrl + C 'ed text or files.

Other Software
No response

Running into this issue constantly today, disabling clipboard fixes it as mentioned in post. Noticeable lag on second machine with cursor and inputs just before happening. Kills the entire Internet on the host machine, PC wont restart must be force shutdown.


secretKey 默认值 如何修改自定义密码

Why you need it?
Is your feature request related to a problem? Please describe in details
How it could be?
A clear and concise description of what you want to happen. You can explain more about input of the feature, and output of it.
Other related information
Add any other context or screenshots about the feature request here.

Please describe your problem clearly

@huxiangquan Do you mean jwt's secretKey?


Error: Type 'FBoneReference' is not supported by blueprint.

Doesn't compiles. Fragment from Log :
Parsing headers for Test_IK_2Editor
  Running UnrealHeaderTool "/Volumes/Media/Test_IK_2/Intermediate/Build/Mac/Test_IK_2Editor/Development/Test_IK_2Editor.uhtmanifest" -LogCmds="loginit warning, logexit warning, logdatabase error" -Unattended -WarningsAsErrors -installed
/Volumes/Media/Test_IK_2/Plugins/rtik/Source/rtik/Public/IK/IK.h(188) : LogCompile: Error: Type 'FBoneReference' is not supported by blueprint. IKBone.BoneRef
/Volumes/Media/Test_IK_2/Plugins/rtik/Source/rtik/Public/IK/AnimNode_RangeLimitedFabrik.h(64) : LogCompile: Error: Type 'FBoneReference' is not supported by blueprint. AnimNode_RangeLimitedFabrik.EffectorTransformBone
Error: UnrealHeaderTool failed for target 'Test_IK_2Editor' (platform: Mac, module info: /Volumes/Media/Test_IK_2/Intermediate/Build/Mac/Test_IK_2Editor/Development/Test_IK_2Editor.uhtmanifest, exit code: OtherCompilationError (5)).
"/Volumes/Media/Test_IK_2/Test_IK_2.uproject" "/Volumes/Media/Test_IK_2/Intermediate/Build/Mac/Test_IK_2Editor/Development/Test_IK_2Editor.uhtmanifest" -LogCmds="loginit warning, logexit warning, logdatabase error" -Unattended -WarningsAsErr
ors -installed
CompilerResultsLog: Error: /Volumes/Media/Test_IK_2/Plugins/rtik/Source/rtik/Public/IK/IK.h(188)  : LogCompile: Error: Type 'FBoneReference' is not supported by blueprint. IKBone.BoneRef
CompilerResultsLog: Error: /Volumes/Media/Test_IK_2/Plugins/rtik/Source/rtik/Public/IK/AnimNode_RangeLimitedFabrik.h(64)  : LogCompile: Error: Type 'FBoneReference' is not supported by blueprint. AnimNode_RangeLimitedFabrik.EffectorTransformBone
CompilerResultsLog: Error: UnrealHeaderTool failed for target 'Test_IK_2Editor' (platform: Mac, module info: /Volumes/Media/Test_IK_2/Intermediate/Build/Mac/Test_IK_2Editor/Development/Test_IK_2Editor.uhtmanifest, exit code: OtherCompilationError (5)).

UE 4.18 Preview 2

I wasn't able to replicate this in 4.16, so this may be a 4.18 issue. I'll try upgrading the project and see what happens.

Thanks.
Btw, your code is very nice and ive tested on pc and mac but shows that 2 errors. So if you will fix 'FBoneReference' then i could be check your solver on mac/ios/android platforms with performance profiler.

Looks like Epic made a few changes which made my code incompatible. I went ahead and upgraded the project, it seems to work with 4.17 and 4.18 preview 2 now.
Let me know if this solves the issue. Thanks for the bug report and kind words!

No probs.
'FBoneReference' error is gone but has new.
I sent log to your mailbox. Description is there as well

Thanks for sending the log!
I wasn't able to replicate this issue in 4.17 - it's compiling with no errors or warnings on a fresh project.  Can you please try the following:

Clone the latest version of this repo. You should only need the Plugins/ directory.
Place the Plugins/ directory in your project base directory
Delete Intermediate/ and Binaries/ directories
'Generate Project Files' and rebuild

It looks like your building on a Mac, so if this doesn't work, it's likely a Mac issue. Unfortunately, I don't own a Mac, so far I've only tested on Windows 10!


Flashing the firmware with Win 10

How can I flash firmware on the devkit from Windows 10? Do i need to install any drivers? The board seems to be recognized (I'm trying to use the NodeMcu Flasher and it recognizes the device on the COM5 port). After hitting the Flash (F) button a blue led blink on the board, but the progress bar stays at 0%.
My board version is v1.0 (i guess, i bought it from china seller...)
Do i need to put the A0 to GND? or push the reset button?
Can someone describe me the whole procedure?
For some strange reason flashing does't work.

Did you figure it out ?

@sokeeffe10 Yeah i had a defective board.

Just what I didn't want to hear,  I may have the same,  thanks

@sokeeffe10 don't worry too much, at the end i've recovered that board. Sometimes, you just need to avoid the soldered header, and connect the wires directly to the esp-8266 chip soldered on the nodemcu board. In my case this seems to be the problem. You can check it out through a tester.