Using Identity with JWT Authentication

I have an API that is using a ASP.NET Core Identity and JWT tokens.  The application is only using the Identity system to manager users (adding, removing and updating passwords & profile data), not to do any kind authentication (that is handled externally).  I am now trying to port this application from ASP.NET Core 1.x to 2.0 and running into problems.  Prior to 2.0 I could call services.AddIdentity(/* options */) to add all of the required services and not call app.UseIdentity() so that the cookie middleware was not added.
This solution was referenced in an issue awhile ago:  https://github.com/aspnet/Security/issues/804
In 2.0 calling services.AddIdentity always adds cookie authentication which then takes over the authentication pipeline and will redirect unauthenticated requests to the login page instead of returning a 401.   Even trying to override the cookie authentication by using the following after AddIdentity is called does not work:
        services.AddAuthentication(JwtBearerDefaults.AuthenticationScheme)
            .AddJwtBearer(JwtBearerDefaults.AuthenticationScheme, options =>
            {
                options.Audience = "my_aud";
                options.Authority = "my_authority";
            });

Is there anyway to add the Identity management services to the DI container without dragging along the cookie middleware?

Yeah, try AddIdentityCore() https://github.com/aspnet/Identity/blob/dev/src/Microsoft.Extensions.Identity.Core/IdentityServiceCollectionExtensions.cs#L22

I am also having this issue and the AddIdentityCore() didn't work for me.
Any other way to make this work?

Well, actually I only need the dependencies from Identity framework. Looking the source code I added the services manually:
        private void ConfigureIdentity(IServiceCollection services)
        {
            // Hosting doesn't add IHttpContextAccessor by default
            services.TryAddSingleton<IHttpContextAccessor, HttpContextAccessor>();
            // Identity services
            services.TryAddScoped<IUserValidator<ApplicationUser>, UserValidator<ApplicationUser>>();
            services.TryAddScoped<IPasswordValidator<ApplicationUser>, PasswordValidator<ApplicationUser>>();
            services.TryAddScoped<IPasswordHasher<ApplicationUser>, PasswordHasher<ApplicationUser>>();
            services.TryAddScoped<ILookupNormalizer, UpperInvariantLookupNormalizer>();
            services.TryAddScoped<IRoleValidator<IdentityRole>, RoleValidator<IdentityRole>>();
            // No interface for the error describer so we can add errors without rev'ing the interface
            services.TryAddScoped<IdentityErrorDescriber>();
            services.TryAddScoped<ISecurityStampValidator, SecurityStampValidator<ApplicationUser>>();
            services.TryAddScoped<IUserClaimsPrincipalFactory<ApplicationUser>, UserClaimsPrincipalFactory<ApplicationUser, IdentityRole>>();
            services.TryAddScoped<UserManager<ApplicationUser>, UserManager<ApplicationUser>>();
            services.TryAddScoped<SignInManager<ApplicationUser>, SignInManager<ApplicationUser>>();
            services.TryAddScoped<RoleManager<IdentityRole>, RoleManager<IdentityRole>>();
        }

Use the following configuration for Asp.net core 2.0
set the DefaultAuthenticateScheme  and DefaultChallengeScheme  in AddAuthentication method.

 IConfigurationSection jwtAppSettingOptions = Configuration.GetSection(nameof(JwtIssuerOptions));
            TokenValidationParameters tokenValidationParameters = new TokenValidationParameters
            {
                ValidateIssuer = true,
                ValidIssuer = "issuer",

                ValidateAudience = true,
                ValidAudience = "audience",

                ValidateIssuerSigningKey = true,
                IssuerSigningKey = _signingKey,

                RequireExpirationTime = false,
                ValidateLifetime = false,
                ClockSkew = TimeSpan.Zero
            };
services.AddAuthentication(options =>
            {
                options.DefaultAuthenticateScheme = JwtBearerDefaults.AuthenticationScheme;
                options.DefaultChallengeScheme = JwtBearerDefaults.AuthenticationScheme;
            }) .AddJwtBearer(options => {
             options.TokenValidationParameters = tokenValidationParameters
        });

Thanks @HaoK  & @sriram5052 , I think AddIdentityCore does solve my issue, my only lingering concern is discover-ability of this API.  I haven't see it documented anywhere and its implemented in a completely different assembly from the rest of the identity related configuration stuff so it is difficult to find.

Yup its a future building block at this point, but it is the more granular way to add identity that you are looking for

When I'm using services.AddIdentityCore<ApplicationUser>(setupAction: null) I get the following exception:
The number of generic arguments provided doesn't equal the arity of the generic type definition. Parameter name: instantiation
I think this is because IdentityBuilder needs the TRole type but the extension AddIdentityCore doesn't allow to specify it
What am I missing?
PS. I know this issue is closed, should I open a new one?
Thank you

@isaacOjeda I ran into the same problem and resolved it by just instantiating a new IdentityBuilder that specifies the roles type:
IdentityBuilder builder = services.AddIdentityCore<User>(/* options */);
builder = new IdentityBuilder(builder.UserType, typeof(IdentityRole), builder.Services);
return builder.AddEntityFrameworkStores<ApplicationDbContext>()
    .AddDefaultTokenProviders();

Hi, I know this is closed but I'm getting this error:
InvalidOperationException: No IAuthenticationSignInHandler is configured to handle sign in for the scheme: Identity.Application
Microsoft.AspNetCore.Authentication.AuthenticationService+<SignInAsync>d__13.MoveNext()
System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
Microsoft.AspNetCore.Identity.SignInManager+<SignInAsync>d__30.MoveNext()
System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
Microsoft.AspNetCore.Identity.SignInManager+<SignInOrTwoFactorAsync>d__52.MoveNext()
System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
System.Runtime.CompilerServices.TaskAwaiter.GetResult()
Microsoft.AspNetCore.Identity.SignInManager+<PasswordSignInAsync>d__33.MoveNext()
System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
System.Runtime.CompilerServices.TaskAwaiter.GetResult()
Microsoft.AspNetCore.Identity.SignInManager+<PasswordSignInAsync>d__34.MoveNext()
System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
System.Runtime.CompilerServices.TaskAwaiter.GetResult()

I had exactly this problem - trying to use Identity to just manage users, passwords etc.  and JWT for Auth.  I'm writing a pure Web API with no front end code so I didn't want the cookie auth stuff.
What I've found works from a functional perspective is to revert to using
services.AddIdentity<IdentityUser, IdentityRole>()
                .AddEntityFrameworkStores<MyContext>();

But you must ensure this is added before the jwt auth stuff:
  services.AddAuthentication(options =>
            {
                options.DefaultAuthenticateScheme = JwtBearerDefaults.AuthenticationScheme;
                options.DefaultChallengeScheme = JwtBearerDefaults.AuthenticationScheme;
            })
                .AddJwtBearer(options =>
                    {
                        options.TokenValidationParameters =
                            new TokenValidationParameters
                            {
                                ValidateIssuer = true,
                                ValidateAudience = true,
                                ValidateLifetime = true,
                                ValidateIssuerSigningKey = true,

                                ValidIssuer = "...",
                                ValidAudience = "...",
                                IssuerSigningKey = "...."
                            };
                    });

if the identity stuff is added afterwards, it still breaks the authorization, but this way around appears to work.  It still creates a cookie, but from what I can tell (from admittedly fairly limited testing) it is not using this for authentication, only the bearer token.  YMMV but I've wasted a huge amount of time already on this so I'll settle for that for the moment.
Given the trumping about how amazingly modular and granular .Net Core is, I'm rather surprised that trying to get just the user storage, hashing, password complexity etc. stuff without also adding token authorisation is so hard.  AddIdentityCore<> looks perfect for doing this, but just doesn't seem to do enough for my needs at least.

AHA!  Actually, by following the linked issue above:
https://github.com/aspnet/Identity/issues/1423
I've been able to get it to work fine, and STOP SENDING THE DARN COOKIE...
 :)

I've tried to move from services.AddIdentity<User, Role> to services.AddIdentityCore<User>, because the first one didn't allow me to use JWT.

The first weird thing to struggle with was passing the Role POCO to the Core method, it looks a bit tricky:

IdentityBuilder builder = services.AddIdentityCore<IdentityUser>(options => {});
builder = new IdentityBuilder(builder.UserType, typeof(IdentityRole), builder.Services);
builder.AddRoleManager<RoleManager<IdentityRole>>();
builder.AddSignInManager<SignInManager<IdentityUser>>();
builder.AddEntityFrameworkStores<DBContext>();
builder.AddDefaultTokenProviders();

The second problem appeared in runtime, the methods SignInManager.PasswordSignInAsync and SignInManager.SignInAsync were producing errors

No IAuthenticationSignInHandler is configured to handle sign in for the scheme: Identity.Application

So, I changed them to the SignInManager.CheckPasswordSignInAsync - and it worked like a charm. In my case, it was the right decision because my WebApi needs simply to check the password and send the token back.

@allownulls - yes.  I had all the same issues.  I did in fact ask this on SO (and ended up answering it myself)
https://stackoverflow.com/questions/46323844/net-core-2-0-web-api-using-jwt-adding-identity-breaks-the-jwt-authentication


Scaled dot product attention backward does not work with MacOS

snippet:
  let keys = tokeys(c).reshaped(.NHWC(b, t, h, k)).identity()
  var queries = (  toqueries(x)).reshaped(.NHWC(b, hw, h, k)).identity().identity()
  var values = tovalues(c).reshaped(.NHWC(b, t, h, k))

  let scaledDotProductAttention = ScaledDotProductAttention(
    scale: 1.0 / Float(k).squareRoot(), multiHeadOutputProjectionFused: true)
  var out = scaledDotProductAttention(queries, keys, values).reshaped([b, hw, h * k])

error when MFA is enabled :
loc("mps_matmul_1"("(mpsFileLoc): ../Files/MPSGraphUtilities.mm":39:0)): error: incompatible dimensions
loc("mps_matmul_1"("(mpsFileLoc): ..Files/MPSGraphUtilities.mm":39:0)): error: invalid shape

error when mfa is disabled
Assertion failed: (isStaticMPSType(type)), function setStaticJITypeForValue, file MPSRuntime_Project.h, line 501.

fwd works fine but in backward i get error

hmmm. We use this in Draw Things (and we use public version of s4nnc, obviously)'s LoRA training code.
One thing I would call out though, because doing LoRA requires us to have the Dense layer separately, so we only enable multiHeadOutputProjectionFused: true in inference side, for training side, this is false. That is probably why you get this error.
Let me know if that is the case so I can close this.

That works, thanks


Add Conv2DBNActiv

Merge after #265.

How about forking from master?  This PR is not related to #265.

Since the addition in this PR conflicts with what is added with Conv2DActiv, I made a branch from #265.
But, it is certainly possible to resolve the conflict after merging either one of them.
Should I fork from the master when a conflict is small?

I will reopen this once #265 is merged.
Since, there are many overlaps between Conv2DActiv and Conv2DBNActiv, it seems better to finalize Conv2DActiv first before proceeding with Conv2DBNActiv.


Roll engine 4ee648914f91..03f8ba51e3d4 (13 commits)

https://github.com/flutter/engine/compare/4ee648914f91...03f8ba51e3d4
git log 4ee648914f91..03f8ba51e3d4 --date=short --no-merges --format='%%ad %%ae %%s'
2018-08-19<EMAIL_ADDRESS>Roll src/third_party/skia 5cc10c8cd6db..ae7229480cbe (1 commits) (flutter/engine#6046)
2018-08-18<EMAIL_ADDRESS>Roll src/third_party/skia c24e0c1e41ab..5cc10c8cd6db (3 commits) (flutter/engine#6045)
2018-08-17<EMAIL_ADDRESS>Roll src/third_party/skia ff6a73cc08af..c24e0c1e41ab (2 commits) (flutter/engine#6044)
2018-08-17<EMAIL_ADDRESS>Add views added to the WindowManager into the presentation view tree. (flutter/engine#6043)
2018-08-17<EMAIL_ADDRESS>Roll src/third_party/skia c623af2e1044..ff6a73cc08af (5 commits) (flutter/engine#6042)
2018-08-17<EMAIL_ADDRESS>Roll src/third_party/skia 12d13ae7f4e6..c623af2e1044 (8 commits) (flutter/engine#6040)
2018-08-17<EMAIL_ADDRESS>Roll src/third_party/skia da135c397356..12d13ae7f4e6 (7 commits) (flutter/engine#6039)
2018-08-17<EMAIL_ADDRESS>Roll src/third_party/skia bc414ed5dec5..da135c397356 (1 commits) (flutter/engine#6038)
2018-08-16<EMAIL_ADDRESS>Roll src/third_party/skia e21f0ec04e98..bc414ed5dec5 (2 commits) (flutter/engine#6037)
2018-08-16<EMAIL_ADDRESS>Fix potential null pointer dereference in FlutterDartProject (flutter/engine#6035)
2018-08-16<EMAIL_ADDRESS>Roll src/third_party/skia 8d77d1d85e2f..e21f0ec04e98 (5 commits) (flutter/engine#6036)
2018-08-16<EMAIL_ADDRESS>Roll src/third_party/skia cbb7d572aaa1..8d77d1d85e2f (12 commits) (flutter/engine#6034)
2018-08-16<EMAIL_ADDRESS>Roll src/third_party/skia cbd83bbd77d1..cbb7d572aaa1 (5 commits) (flutter/engine#6033)
The AutoRoll server is located here: https://flutter-engine-flutter-roll.skia.org
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md
If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.

@rmistry @liyuqian : New roll has been created by https://flutter-engine-flutter-roll.skia.org


[MWPW-158004] Fix callout & grey line alignment issues in product merch cards

I divided the body-xs slot to put the callout content between the body-xs and footer. The change was done only for the product card. The alignment strategy is the same as for mini-compare charts, where we set a minimum height for each slot.
Resolves: MWPW-158004
Test URLs:

Before: https://main--milo--adobecom.hlx.page/drafts/rahulgup/acrobat-business-product?martech=off
After: https://MWPW-158004--milo--rahulgupta999.hlx.page/drafts/rahulgup/acrobat-business-product?martech=off

I don't see a difference between before and after pages. Is that expected?

I don't see a difference between before and after pages. Is that expected?

Done. Moved the test URL to Milo

@rahulgupta999  Verified and regression covered. Observed few more issues in the latest cards tracking here since they are already exists in main: https://jira.corp.adobe.com/browse/MWPW-159140 otherwise marking "Verified"
If you are fixing https://jira.corp.adobe.com/browse/MWPW-159140 with this PR, will keep it open for you, if you are planning to fix in new PR , this PR can be labelled as Ready for stage - will allow you to review first
Also @npeltier 's approval is pending here....
cc @npeltier  @afmicka


Toggle the arrow in the dropdown when selecting a submode

This fixes a bug with the arrow in the submode switcher that gets stuck on selection while it should change its direction.
Before (observe the arrow on the right):
https://github.com/cardstack/boxel/assets/273660/db228ade-2171-4309-bf25-36725bad0510
After:
https://github.com/cardstack/boxel/assets/273660/398a135d-bdb2-43dc-8ee4-36510d3bf837

(I just merged upstream to see if that clears the matrix test errors)

I'll look deeper into the failing matrix test in just a moment--the failing test a really simple test that actually doesn't have anything to do with matrix server--it's just some glimmer component state that we are testing

Thanks @habdelra!

I'll merge this since it's unrelated to matrix tests. I suppose that influences all opened PRs currently.


Delete Gruntfile.js

This file is not used by our current build system, and provides no advantage over running the shell script directly.

CLA is valid!

CLA is valid!


The latest version of Ink! had removed new() constructor in Selector

let selector = ink_lang_ir::Selector::new(&callable_ident);
|                                               ^^^ function or associated item not found in Selector

fix by #65


miner tag

Add tag for miners to display them in pool miner-list

This feature is implemented by https://github.com/XDagger/xdag/pull/205


Definition of Done

The Target of this Topic is to Esteblisch Definition of Done (DoD) checklist for a user story.
We decided to create the DoD in our Project and we are going to prepare a short list of areas, that we should control, to deliver the highest possible quality software.
To think ist also about the checklists DoD for Sprint, which help us in verification of our work on two stages of the software development process. DoD for Sprint is not part of this Topic.

[x] Write document for checklist of DoD
[x] Upload to repository -> rejected. DoD will be mentioned in each story

The definition of done is a list of criteria that has to be met before any work can be considered as done. Failure to meet any one of these conditions means the work is not complete.
A task/story/bugs/pull request will not be considered to be complete until all these items can be checked off.

[ ] Task has its own GitHub issue/story (something it is solving)
[ ] Estimate of expected time required to complete task was agreed with all present and recorded before starting the task
[ ] Story is tested against acceptance criteria
[ ] Story ok-ed by Product Owner
[ ] Refactoring completed
[ ] Peer Code Review performed
[ ] Any configuration or build changes documented
[ ] Documentation updated

Extension of the DOD:

[ ] any Database changes are documented in Database

Update also confluence page https://wiki.akros.ch/pages/viewpage.action?pageId=116819943


docs: add notes in readme.md

for:

[x] canvasid which was not documented
[x] usecredentials #88 #80 #60
[x] base64 or Uint8Array pdf format #77 #37 #62

thanks @simobasso :tada:


iflow-bluebird: Promise.promisify - Property not found

This isn't easy to type - but something like this is close. Notice the TODO, there appears to be a Flow bug:
type PromisifyOptions = {|
  multiArgs?: boolean,
  context: any
|};
// Big Flow WTF here - will silently just not typecheck if you include these
// TODO make an issue
// static promisify<T>(func: (callback: (err:any, result: T) => void) => void, receiver?: PromisifyOptions): () => BluebirdPromise<T>;
// static promisify<T, A1>(func: (arg1: A1, callback: (err: any, result: T) => void) => void, receiver?: PromisifyOptions): (arg1: A1) => BluebirdPromise<T>;
// static promisify<T, A1, A2>(func: (arg1: A1, arg2: A2, callback: (err: any, result: T) => void) => void, receiver?: PromisifyOptions): (arg1: A1, arg2: A2) => BluebirdPromise<T>;
// static promisify<T, A1, A2, A3>(func: (arg1: A1, arg2: A2, arg3: A3, callback: (err: any, result: T) => void) => void, receiver?: PromisifyOptions): (arg1: A1, arg2: A2, arg3: A3) => BluebirdPromise<T>;
// static promisify<T, A1, A2, A3, A4>(func: (arg1: A1, arg2: A2, arg3: A3, arg4: A4, callback: (err: any, result: T) => void) => void, receiver?: PromisifyOptions): (arg1: A1, arg2: A2, arg3: A3, arg4: A4) => BluebirdPromise<T>;
// static promisify<T, A1, A2, A3, A4, A5>(func: (arg1: A1, arg2: A2, arg3: A3, arg4: A4, arg5: A5, callback: (err: any, result: T) => void) => void, receiver?: PromisifyOptions): (arg1: A1, arg2: A2, arg3: A3, arg4: A4, arg5: A5) => BluebirdPromise<T>;
static promisify(nodeFunction: Function, receiver?: PromisifyOptions): Function;

@STRML, how I can extend my own declarations without forking iflow-bluebird

You'd have to just copy/paste the definition into your own interfaces folder.

@STRML, ok I fork it and add promisify definition. Thanks.

@STRML, maybe you add at least promisify stub in project. This better, than nothing..

Not my project - you're free to open a PR...

Vladislav Botvin<EMAIL_ADDRESS>September 26, 2016 at 10:00 AM
@STRML https://github.com/STRML, maybe you add at least promisify
stub in project. This better, than nothing..
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/marudor/flowInterfaces/issues/61#issuecomment-249595921,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ABJFPz2fTGXk0dmchvhpoiuoTKkc_Nvmks5qt94YgaJpZM4KGh9F.
Vladislav Botvin<EMAIL_ADDRESS>September 26, 2016 at 8:35 AM
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/marudor/flowInterfaces/issues/61, or mute the
thread
https://github.com/notifications/unsubscribe-auth/ABJFPyZ3Fryewy6HIZtQRb8jzCdgvo5Jks5qt8oEgaJpZM4KGh9F.


Feature/convert enum to path

This converts the source control and registry fields in the database to be the corresponding path.
The customdockerregistrypath column is dropped for tools too, as we can store the path within the registry field.

Coverage decreased (-0.03%) to 70.525% when pulling a62d9eac87ec9f812ab2233fc020b516578f10de on feature/convert_enum_to_path into 60e318e36da910ef630b146d02f83d8e2173e5f3 on develop.

Coverage decreased (-0.03%) to 70.525% when pulling a62d9eac87ec9f812ab2233fc020b516578f10de on feature/convert_enum_to_path into 60e318e36da910ef630b146d02f83d8e2173e5f3 on develop.


StartStopPreview feature not found

error following instructions:
$ az feature register --namespace "Microsoft.ContainerService" --name "StartStopPreview"
Once the feature 'StartStopPreview' is registered, invoking 'az provider register -n Microsoft.ContainerService' is required to get the change propagated
The feature 'StartStopPreview' could not be found.
so couldn't enable

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

ID: f07b13b8-6b8b-57f9-7fb3-361329af08be
Version Independent ID: d3c6ae95-654f-be23-5dcd-3c3146d5cf63
Content: Start and Stop an Azure Kubernetes Service (AKS) - Azure Kubernetes Service
Content Source: articles/aks/start-stop-cluster.md
Service: container-service
GitHub Login: @palma21
Microsoft Alias: mlearned

@brucelowekamp Can you please confirm if you are running it on Virtual Machine Scale Sets backed clusters  since this feature is only supported for Virtual Machine Scale Sets backed clusters and also currently available on public clusters and not private one.
You can refer to this thread as well which gives insights on the issue and might be helpful to you.
Hope it helps!!!
Thanks

Same issue here on all our clusters. No way to wake up our cluster on France Central ...

@brucelowekamp  : Did-you find a work around to wake-up your clusters ?

It seems that the feature moved from preview to GA. So the registration step is not necessary anymore.
You just have to

Install aks preview
# Install the aks-preview extension az extension add --name aks-preview
Start/stop the cluster
az aks stop --name myAKSCluster --resource-group myResourceGroup or az aks start --name myAKSCluster --resource-group myResourceGroup

@psmanhas it seems like @anonocap has the right answer.  It's somehow in this weird state where you need aks-preview installed but the StartStopPreview option is no longer needed (and so no longer present).  So I think the docs just need to be updated.  Even though I got the error about StartStopPreview not found, when I actually tried az aks stop it worked for me (and I was able to successfully restart this morning).
Bruce

@anonocap Thank you for sharing out the details!!! @brucelowekamp I will share the feedback with our backend team to make the required changes in documentation.
We will now close this issue. If there are further questions regarding this, please tag me in a comment. I will reopen it and we will continue the discussion.
Thanks


Add basic Valkyria Chronicles support

I mostly just followed the instructions in the README.
While the DLCs have Steam IDs (314780, 314781, 314782 and 314783), I can't find any easy way of determining which folder corresponds to which DLC so MO2 currently doesn't list them in the mod list like it does for Skyrim. It'd be nice to get that working.
I didn't bother trying to parse anything from the save data - playdata###.dat starts with a mostly-ASCII string containing the date the save was made, the name of the chapter you're currently on, whether the save was made in book mode or campaign mode, and the time spent playing (three digits of hour, two digits of minute, padded with 0x81). For example:
Play Data
27/12/2021 00:39

Prologue: Gallia, to Arms!
Book Mode
0hrs.0min.12sec.

This would make a nice addition.

I did some more digging and I've figured out which folders correspond to which DLC.

DLC0001 and DLC0002 are ... not DLC. Possibly they were patches after release on the PS3 which got bundled into the PC version.
DLC1001 is Hard EX Mode.
DLC1002 is Enter the Edy Detachment.
DLC1011, DLC1012, DLC1013, DLC1014 and DLC1016 are Behind Her Blue Flame.
DLC1021 is Challenge of the Edy Detachment.

I also found the save file images in %GAME_DATA%/system/contents_info - matching those up with the data at the beginning of a save file shouldn't be too difficult so providing a nice interface for listing save files should be possible.


Adjust UDC deposit dialog for mainnet

User Story
As Chris I want to acquire and deposit mainnet utility tokens in the UDC screen. Split from issue #587
Acceptance criteria

Dialog should display standard input field for amount
Deposit button should be disabled if the user has not purchased any utility tokens
Dialog should provide a link to Uniswap with a predefined utility token amount of 10
Dialog should display utility token amount that a user has purchased
Dialog should let the user select how many utility tokens to deposit and enable the deposit button

Tasks

[ ] Prepare mockup that everyone is aligned on and then vote on this again
[ ] In-iteration design
[ ] Make sure component is separated from the testnet one

After @taleldayekh's comment, I would add here

The dialog should show a warning if the amount of available tokens is lower than the entered amount (see eg. transfer amount input field)

@christianbrb the title seems wrong. The deposit should work fine in mainnet if you have RDN on your account. This is about improving and enhancing the existing dialog.

@kelsos I have updated the title.
Let's talk in detail within the planning :)

@raiden-network/light-client

Overall I like the basic design. Simple and straight forward.
So here are a few nitpicks:

The available balance could be better visible, as it is now "hidden" within the text.
On the first screen it is not too obvious that the user lacks in a positive balance to deposit.
What does this component take as default suggestion value? (looks you take it all)

Thank you @weilbith
We can make the balance more prominent. Regarding the default suggestion, I would say we go with the entire purchased amount after a purchase has just been made, else just 0.

Deposit RDN -> Deposit to UDC


Defined Desired Capacity is 1 but Created AutoScaling Group Desired Capacity is 2

I have issues
Defined Desired Capacity is 1 but Created AutoScaling Group Desired Capacity is 2
I'm submitting a...

bug report
[ ] feature request
[ ] support request - read the FAQ first!
[ ] kudos, thank you, warm fuzzy

What is the current behavior?
I am creating EKS Cluster with spot instances and defining the desired capacity to 1. But the resource has the desired capacity is 2 and two ec2 instances are running.
If this is a bug, how to reproduce? Please include a code sample if relevant.
https://github.com/terraform-aws-modules/terraform-aws-eks/blob/master/examples/spot_instances/main.tf#L81
Changed the desired capacity to 1 in the above line.
What's the expected behavior?
Desired capacity should be 1.

Desired capacity cannot be modified by Terraform after creation of the resources. This is a "feature" of how Terraform works as we've set a lifecycle rule to not break the Cluster Autoscaler. Lifecycle rules can only be hardcoded currently.
You will need to directly modify existing ASGs via the AWS console or CLI tool.

I creating a new resource after deleting the old one. Still getting the same.

I just modified examples/spot_instances_main.tf to set asg_desired_capacity = 1 and ran a plan on an empty state:
  # module.eks.aws_autoscaling_group.workers_launch_template[0] will be created
  + resource "aws_autoscaling_group" "workers_launch_template" {
      + arn                       = (known after apply)
      + availability_zones        = (known after apply)
      + default_cooldown          = (known after apply)
      + desired_capacity          = 1

How are you deleting the resource? You may have to remove it from the terraform state file and not just AWS for the change to be picked up: terraform state rm module.eks.aws_autoscaling_group.workers_launch_template[0]

I deleted terraform state as well, but same error. I run from a different folder and It worked. Seems some terraform cache gotcha.


translate: scope/move

Close #66

mut.md
partial_move.md

applied all suggestions, cảm ơn anh @HongThaiPham


cannot import name 'AsyncWebhookAdapter' from 'discord'

Can you tell me more? With so little information I can't do anything...


Add the methods add and multiply to Point

Nice! Could you change the base to the develop branch? In that branch I'm working on the next release (currently called 4.2.0-SNAPSHOT). Also, it would be nice if you could add some (simple!) tests to the methods you provided in the PointTest class.

(Because of not being able to change the base branch, this PR is closed in favor of #34 )


Reuse state channels store on dashboard

Context information
Steps to reproduce
Dashboard table of state channels is using separated store than the state channels table
What is expected?
Reusing the same store as for names
What is actually happening?

I don't think it's a good idea. I didn't think through all the aspects. Closing this.


Multiple label style

Hi,
Is there a way to multiple style label in treemap? I need multiple line label with multiple styles. I discovered when I delimer the label text with  \n it separates the string into the seperated 'text' object in svg, is there whey how to style that text objects one by one?
For example label:
ABC (size:200)
DEF (size:100)
GFIJ (size:50)
https://imgur.com/a/Lc3EMv3
Thank you
Daniel

This may be possible, but I would definitely classify it as experimental:
The label method of shapes can accept an Array of values, and then each font property will also be evaluated on expecting an Array. For example (and I haven't tested this):
.shapeConfig({
  label: function() { return ["ABC", "DEF", "GHIJ"]; },
  labelConfig: {
    fontSize: function() { return [200, 100, 50]; }
  }
})

Take a look at how the internal Treemap logic handles the main label and the share percentage label: https://github.com/d3plus/d3plus-hierarchy/blob/master/src/Treemap.js#L95-L119


🐛 [firebase_auth] Firebase Phone Auth SMS verification Code not received

Bug report
Describe the bug
My app is using Phone Verification and I use Firebase Auth services in order to complete that process. My app is live more than 4 months and phone verification was working completely good until today. The client side is not receiving any SMS verification code and does not log any error or does not catch any exception. This is my implementation code in Flutter:
Steps to reproduce
Steps to reproduce the behavior:

enter your phone number
call phoneVerify function after user press done
no code received and also no error appears in logs

Expected behavior
Code should be successfully received to user's phone.
Sample project
I can provide sample code:
Click To Expand Code
 Future<void> _phoneVerify() async {
    print("phone number $_phoneNumber");
    try {
      await _auth.verifyPhoneNumber(
        phoneNumber: _phoneNumber,
        verificationCompleted: (PhoneAuthCredential credential) async {
        },
        verificationFailed: (FirebaseAuthException e) {
          print(e.toString());
          EasyLoading.showError(e.toString());
        },
        codeSent: (String verificationId, int resendToken) async {
          // Create a PhoneAuthCredential with the code
          _phoneVerificationPopUp(
              verificationID: verificationId, resendToken: resendToken);
        },
        codeAutoRetrievalTimeout: (String verificationId) {},
        timeout: Duration(seconds: 120),
      );
    } catch (e) {
      EasyLoading.dismiss();
      setState(() {
        _smsCode = '';
      });
      _controller.clear();
      Navigator.pop(context);
      if (e.code == 'invalid-verification-code') {
        EasyLoading.showError('Invalid Verification Code');
      } else {
        EasyLoading.showError(e.code);
      }
    }
  }

Additional context
That verification process was working fine until today. The phone numbers are located in Turkey, starts with +90.

Flutter doctor
Run flutter doctor and paste the output below:
Click To Expand
[✓] Flutter (Channel stable, 2.2.2, on macOS 11.5.2 20G95 darwin-x64, locale en-GB)
[!] Android toolchain - develop for Android devices (Android SDK version 30.0.3)
    ✗ Android license status unknown.
      Run `flutter doctor --android-licenses` to accept the SDK licenses.
      See https://flutter.dev/docs/get-started/install/macos#android-setup for more details.
[✓] Xcode - develop for iOS and macOS
[✓] Chrome - develop for the web
[✓] Android Studio (version 4.2)
[✓] VS Code (version 1.59.1)
[✓] Connected device (2 available)

! Doctor found issues in 1 category.

Flutter dependencies
Run flutter pub deps -- --style=compact and paste the output below:
Click To Expand
Dart SDK 2.13.3
Flutter SDK 2.2.2
terapistin_app 1.0.18+62

dependencies:
- add_2_calendar 2.1.0 [flutter]
- agora_rtc_engine 4.0.2 [flutter flutter_web_plugins json_annotation]
- alphabet_scroll_view 0.3.1 [flutter collection]
- angles 2.1.0 [meta]
- animated_bottom_navigation_bar 0.3.2 [flutter]
- animations 2.0.0 [flutter]
- auto_size_text_pk 3.0.0 [flutter]
- cached_network_image 3.0.0 [flutter flutter_cache_manager octo_image]
- cloud_firestore 1.0.7 [cloud_firestore_platform_interface cloud_firestore_web firebase_core firebase_core_platform_interface flutter meta]
- crypto 3.0.1 [collection typed_data]
- cupertino_icons 1.0.3
- device_info 2.0.2 [flutter device_info_platform_interface]
- dropdown_below 0.0.9 [flutter]
- favorite_button 0.0.4 [flutter]
- file_picker 3.0.3 [flutter flutter_web_plugins flutter_plugin_android_lifecycle plugin_platform_interface]
- firebase_analytics 8.2.0 [firebase_analytics_platform_interface firebase_analytics_web firebase_core flutter meta]
- firebase_auth 1.4.1 [firebase_auth_platform_interface firebase_auth_web firebase_core firebase_core_platform_interface flutter meta]
- firebase_core 1.4.0 [firebase_core_platform_interface firebase_core_web flutter meta]
- firebase_database 7.1.2 [firebase_core flutter]
- firebase_in_app_messaging 0.5.0+5 [firebase_core flutter meta]
- firebase_messaging 10.0.3 [firebase_core firebase_core_platform_interface firebase_messaging_platform_interface firebase_messaging_web flutter meta]
- firebase_storage 8.1.3 [firebase_core firebase_core_platform_interface firebase_storage_platform_interface firebase_storage_web flutter]
- flashy_tab_bar 0.0.3 [flutter]
- flip_card 0.5.0 [flutter]
- flutter 0.0.0 [characters collection meta typed_data vector_math sky_engine]
- flutter_calendar_carousel 2.0.1 [intl flutter]
- flutter_chips_input 1.10.0 [flutter]
- flutter_countdown_timer 4.1.0 [flutter]
- flutter_cupertino_date_picker_fork 1.0.3 [flutter]
- flutter_easyloading 3.0.0 [flutter flutter_spinkit]
- flutter_html 0.11.1 [html flutter]
- flutter_icons 1.1.0 [flutter]
- flutter_local_notifications 8.1.1 [flutter flutter_local_notifications_platform_interface platform timezone]
- flutter_quill 1.6.0 [flutter collection flutter_colorpicker flutter_keyboard_visibility image_picker photo_view quiver string_validator tuple url_launcher pedantic characters]
- flutter_rating_bar 4.0.0 [flutter]
- flutter_signin_button 2.0.0 [flutter font_awesome_flutter]
- flutter_spinkit 5.0.0 [flutter]
- flutter_svg 0.20.0-nullsafety.3 [flutter meta path_drawing vector_math xml]
- font_awesome_flutter 9.1.0 [flutter]
- getwidget 2.0.3 [flutter]
- google_fonts 2.1.0 [flutter http path_provider crypto]
- google_sign_in 5.0.4 [google_sign_in_platform_interface google_sign_in_web flutter meta]
- hive 2.0.4 [meta crypto]
- hive_flutter 1.1.0 [flutter hive path_provider path]
- http 0.13.3 [async http_parser meta path pedantic]
- image_picker 0.7.5+4 [flutter flutter_plugin_android_lifecycle image_picker_platform_interface image_picker_for_web]
- intl_phone_field 2.0.0 [flutter]
- kommunicate_flutter 1.1.9 [flutter]
- path_provider 2.0.2 [flutter path_provider_platform_interface path_provider_macos path_provider_linux path_provider_windows]
- pdf 3.4.2 [archive barcode crypto image meta path_parsing vector_math xml]
- permission_handler 6.1.3 [flutter meta permission_handler_platform_interface]
- pin_code_text_field 1.8.0 [flutter]
- provider 4.3.3 [collection flutter nested]
- readmore 2.1.0 [flutter]
- shared_preferences 2.0.6 [meta flutter shared_preferences_platform_interface shared_preferences_linux shared_preferences_macos shared_preferences_web shared_preferences_windows]
- sign_in_with_apple 3.0.0 [flutter meta]
- textfield_search 0.8.0 [flutter]
- timezone 0.7.0 [path]
- twilio_flutter 0.0.9 [flutter http meta]
- url_launcher 6.0.8 [flutter meta url_launcher_linux url_launcher_macos url_launcher_platform_interface url_launcher_web url_launcher_windows]
- video_player 2.1.6 [flutter flutter_test meta video_player_platform_interface video_player_web]
- wakelock 0.5.2 [flutter meta wakelock_macos wakelock_platform_interface wakelock_web wakelock_windows]
- webview_flutter 2.0.9 [flutter]
- youtube_player_flutter 8.0.0 [flutter flutter_inappwebview]

dev dependencies:
- flutter_test 0.0.0 [flutter test_api path fake_async clock stack_trace vector_math async boolean_selector characters charcode collection matcher meta source_span stream_channel string_scanner term_glyph typed_data]

transitive dependencies:
- archive 3.1.2 [crypto path]
- async 2.6.1 [meta collection]
- barcode 2.1.0 [meta qr]
- boolean_selector 2.1.0 [source_span string_scanner]
- characters 1.1.0
- charcode 1.2.0
- clock 1.1.0
- cloud_firestore_platform_interface 4.0.3 [collection firebase_core flutter meta plugin_platform_interface]
- cloud_firestore_web 1.0.7 [cloud_firestore_platform_interface firebase_core firebase_core_web flutter flutter_web_plugins js]
- collection 1.15.0
- csslib 0.16.2 [source_span]
- device_info_platform_interface 2.0.1 [flutter meta plugin_platform_interface]
- fake_async 1.2.0 [clock collection]
- ffi 1.1.2
- file 6.1.2 [meta path]
- firebase 9.0.1 [http http_parser js]
- firebase_analytics_platform_interface 2.0.1 [flutter meta]
- firebase_analytics_web 0.3.0+1 [firebase firebase_analytics_platform_interface flutter flutter_web_plugins meta]
- firebase_auth_platform_interface 4.3.1 [firebase_core flutter meta plugin_platform_interface]
- firebase_auth_web 1.3.1 [firebase_auth_platform_interface firebase_core firebase_core_web flutter flutter_web_plugins http_parser intl js meta]
- firebase_core_platform_interface 4.0.1 [collection flutter meta plugin_platform_interface]
- firebase_core_web 1.1.0 [firebase_core_platform_interface flutter flutter_web_plugins js meta]
- firebase_messaging_platform_interface 3.0.2 [firebase_core flutter meta plugin_platform_interface]
- firebase_messaging_web 2.0.2 [firebase_core firebase_core_web firebase_messaging_platform_interface flutter flutter_web_plugins js meta]
- firebase_storage_platform_interface 2.1.2 [collection firebase_core flutter meta plugin_platform_interface]
- firebase_storage_web 1.1.2 [async firebase_core firebase_core_web firebase_storage_platform_interface flutter flutter_web_plugins http js meta]
- flutter_blurhash 0.6.0 [flutter meta pedantic]
- flutter_cache_manager 3.1.2 [clock collection file flutter http path path_provider pedantic rxdart sqflite uuid]
- flutter_colorpicker 0.4.0 [flutter]
- flutter_inappwebview 5.3.2 [flutter]
- flutter_keyboard_visibility 5.0.2 [meta flutter_keyboard_visibility_platform_interface flutter_keyboard_visibility_web flutter]
- flutter_keyboard_visibility_platform_interface 2.0.0 [flutter meta plugin_platform_interface]
- flutter_keyboard_visibility_web 2.0.0 [flutter_keyboard_visibility_platform_interface flutter_web_plugins flutter]
- flutter_local_notifications_platform_interface 4.0.1 [flutter plugin_platform_interface]
- flutter_plugin_android_lifecycle 2.0.2 [flutter]
- flutter_web_plugins 0.0.0 [flutter js characters collection meta typed_data vector_math]
- google_sign_in_platform_interface 2.0.1 [flutter meta quiver]
- google_sign_in_web 0.10.0 [google_sign_in_platform_interface flutter flutter_web_plugins meta js]
- html 0.14.0+4 [csslib source_span]
- http_parser 4.0.0 [charcode collection source_span string_scanner typed_data]
- image 3.0.2 [archive meta xml]
- image_picker_for_web 2.0.0 [image_picker_platform_interface meta flutter flutter_web_plugins]
- image_picker_platform_interface 2.1.0 [flutter meta http plugin_platform_interface]
- intl 0.17.0 [clock path]
- js 0.6.3
- json_annotation 4.0.1
- matcher 0.12.10 [stack_trace]
- meta 1.3.0
- nested 1.0.0 [flutter]
- octo_image 1.0.0+1 [flutter flutter_blurhash]
- path 1.8.0
- path_drawing 0.5.1 [vector_math meta path_parsing flutter]
- path_parsing 0.2.1 [vector_math meta]
- path_provider_linux 2.0.0 [path xdg_directories path_provider_platform_interface flutter]
- path_provider_macos 2.0.0 [flutter]
- path_provider_platform_interface 2.0.1 [flutter meta platform plugin_platform_interface]
- path_provider_windows 2.0.1 [path_provider_platform_interface meta path flutter ffi win32]
- pedantic 1.11.1
- permission_handler_platform_interface 3.6.0 [flutter meta plugin_platform_interface]
- petitparser 4.1.0 [meta]
- photo_view 0.11.1 [flutter]
- platform 3.0.0
- plugin_platform_interface 2.0.0 [meta]
- process 4.2.1 [file path platform]
- qr 2.1.0 [meta]
- quiver 3.0.1 [matcher]
- rxdart 0.27.1
- shared_preferences_linux 2.0.0 [flutter file meta path path_provider_linux shared_preferences_platform_interface]
- shared_preferences_macos 2.0.0 [shared_preferences_platform_interface flutter]
- shared_preferences_platform_interface 2.0.0 [flutter]
- shared_preferences_web 2.0.0 [shared_preferences_platform_interface flutter flutter_web_plugins meta]
- shared_preferences_windows 2.0.0 [shared_preferences_platform_interface flutter file meta path path_provider_platform_interface path_provider_windows]
- sky_engine 0.0.99
- source_span 1.8.1 [collection path term_glyph]
- sqflite 2.0.0+3 [flutter sqflite_common path]
- sqflite_common 2.0.0+2 [synchronized path meta]
- stack_trace 1.10.0 [path]
- stream_channel 2.1.0 [async]
- string_scanner 1.1.0 [charcode source_span]
- string_validator 0.3.0
- synchronized 3.0.0
- term_glyph 1.2.0
- test_api 0.3.0 [async boolean_selector collection meta path source_span stack_trace stream_channel string_scanner term_glyph matcher]
- tuple 2.0.0 [quiver]
- typed_data 1.3.0 [collection]
- url_launcher_linux 2.0.0 [flutter]
- url_launcher_macos 2.0.0 [flutter]
- url_launcher_platform_interface 2.0.3 [flutter plugin_platform_interface]
- url_launcher_web 2.0.1 [flutter flutter_web_plugins meta url_launcher_platform_interface]
- url_launcher_windows 2.0.0 [flutter]
- uuid 3.0.4 [crypto]
- vector_math 2.1.0
- video_player_platform_interface 4.1.0 [flutter meta flutter_test]
- video_player_web 2.0.1 [flutter flutter_web_plugins meta video_player_platform_interface]
- wakelock_macos 0.1.0+1 [flutter flutter_web_plugins wakelock_platform_interface]
- wakelock_platform_interface 0.2.1+1 [flutter meta]
- wakelock_web 0.2.0+1 [flutter flutter_web_plugins js wakelock_platform_interface]
- wakelock_windows 0.1.0 [flutter wakelock_platform_interface win32]
- win32 2.2.4 [ffi]
- xdg_directories 0.2.0 [meta path process]
- xml 5.1.2 [collection meta petitparser]

Hi @ZahidTekbas
This sounds like a duplicate of https://github.com/FirebaseExtended/flutterfire/issues/4916
It sounds like this happened spontaneously instead of due to a version change? Could you try looking through the discussion on the mentioned issue and seeing if anything helps? You can comment any unmentioned relevant information on it as well.
Closing this as a duplicate.
Thank you


React 18 Automatic Batching SUPPORT?

What is the new or updated feature that you are suggesting?
React 18 introduced batching[fine tuned] with additional features, which helps our react app in lot performance improvement, I would like to suggest redux team to add handle those changes in redux for fullest comparability with react 18 in upcoming release  If possible how, when will be the release
Why should this feature be included?
Lot more performance improvement
What docs changes are needed to explain this?
https://react-redux.js.org/using-react-redux/connect-mapstate

There should be nothing on our end to be done - if React automatic batching is active for you, it should do that with Redux updates as well.

Yeah, this is inherent in React 18 (and we also already used batching internally anyway with earlier React versions).


Interactive documentation or blog post with interactive code snippets

Would you be interested by having an interactive documentation for javascript-algorithms?
You could use my klipse plugin

Thanks, we will consider this!

@mgechev I forgot to mention that I'm the author of the klipse plugin. So don't hesitate to let me know if you need help.

I think you did mention it. Thanks for offering your help! I may write a series of blog posts at some point.


Potentially outdated instructions in "Explore content filters..." exercise

Module: Responsible generative AI
Lab/Demo: Exercise - Explore content filters in Azure AI Studio
Task: Explore content filters
Step: 1 - In the Build page, select Content filters in the left navigation bar
Description of issue
Instructions refer to non-existent UI element.
Repro steps:

Open https://microsoftlearning.github.io/mslearn-ai-studio/Instructions/06-Explore-content-filters.html
Follow steps till section "Explore content filters"
The section tells student to "In the Build page, select Content filters in the left navigation bar, then select + Create content filter."
As far as I can tell, such UI does not exist there and was moved into Components (left menu section) -> Content filters

No "Build" page/section/button here:

After model deployment, user ends up on this page, where they should click "Content filters" and then "+ Create content filter" (there is no "Build" page or other UI:

Thanks for pointing out the UI changes! The instructions are now updated.


[Viewer] WebXR support

Is native WebXR support for the viewer on the roadmap?
By default it uses WebVR, which no longer works on the latest browsers.
You can use WebXR via the Babylon WebVR using the useXr option, like so:
<babylon model="..." vr.vr-options.use-xr="true">

Hey please use the forum for questions ;)

forum.babylonjs.com


Channels are not playing. Confirm same issue on laptop. Env:Ubuntu 20.04

Your Environment

JIO TV
2.0.0
Kodi 19.3, 19.5
Android, Linux(Ubuntu)
India

Describe the bug
Issue similar to multiple existing issues , channels not playing.
Debug log
23-01-04 00:39:55.576 T:94207   ERROR : CCurlFile::FillBuffer - Failed: HTTP returned error 405
2023-01-04 00:39:55.576 T:94207   ERROR : CCurlFile::Open failed with code 405 for https://sldhnecdnems05.cdnsrv.jio.com/jiotv.live.cdn.jio.com/Jonack/Jonack_800.m3u8:
2023-01-04 00:39:55.577 T:94207   ERROR : AddOnLog: inputstream.adaptive: Download failed: https://sldhnecdnems05.cdnsrv.jio.com/jiotv.live.cdn.jio.com/Jonack/Jonack_800.m3u8
Above are some examples of errors from the logs. It seems to me either the cdn's have changed or the authentication has been layered. Attacing full log for reference.
kodi.log

Do you know how to change cdn ?

Do you know how to change cdn ?

What is cdn??

issue is not with cdn 405 is method not allowed... i testes all  urls they working fine

Check this one: https://github.com/Geletinousamigo/plugin.video.jiotv

Channels are working with https://github.com/Geletinousamigo/plugin.video.jiotv

Channels are working with https://github.com/Geletinousamigo/plugin.video.jiotv

Can you share the addon zip file for this one?

Channels are working with  https://github.com/Geletinousamigo/plugin.video.jiotv

Can you share the addon zip file for this one?
plugin.video.jiotv-1.0.1.zip

yes channel is working now... i was this close to get this :D


Update Composer dependencies (2024-05-04-00-10)

Visual regression test passed!
View the visual regression test report


Create infisical-secrets-check.yml

Resolves #ISSUE_NUMBER

Before the change?

After the change?

Pull request checklist

[ ] Tests for the changes have been added (for bug fixes/features)
[ ] Docs have been reviewed and added/updated if needed (for bug fixes/features)

Does this introduce a breaking change?

[ ] Yes
[ ] No

@gstraccini review


 Straightforward implementation using the new v6 API. Building net/http function only would be possibly but likely look almost identical to the existing API which is more robust going forward IMHO. Also because TransIP offers different authentication methods (PrivateKey and Token) it would also be quite some extra work, while this implementation is rather lightweight.
I'm no expert Go coder, so appreciate all the feedback @mholt

I'm happy to create a caddy-dns package too. I do have two concerns:

I have no experience writing test, so some pointers would be appreciated (I couldn't find test with the other provider thus far)
I tried testing for myself, but I have some questions regarding the expect inputs for libdns, see https://github.com/libdns/libdns/issues/7

I have no experience writing test, so some pointers would be appreciated (I couldn't find test with the other provider thus far)

Yeah, it's more like wishful thinking, since it primarily involves manipulating a remote resource, so mocks would be needed. For now, to just "ship it", at least try it out and make sure all the methods work for you.

Shipped! https://github.com/libdns/transip

Awesome!

@mdbraber Just a low-priority reminder to fill out https://github.com/caddy-dns/transip when you get a chance -- should be mostly copy+paste from any other similar package. :+1:

@mholt yes, it's definitely on my list and will get to it asap!


Lazily initialize default embedding function

Description of changes
Previously, the default embedding function was initialized immediately upon creating a collection without an explicit embedding function.
This PR modifies the behavior to avoid initializing the default embedding function until it is actually needed. The user-facing semantics are the same: they will still get a warning when creating a Collection without an embedding function, and they will still get SentenceTransformers by default. The only change is when the model is downloaded (when they add their first embedding vs when initializing the collection.)
Rationale:
Initializing an embedding function is a heavyweight activity: it requires downloading the Sentence Transformer model from HuggingFace.
But, in the case where a user intends to supply their own embedding vectors (such as we do in our tests), this effort is wasted and we end up initializing a model needlessly. And, because this is a heavyweight external network call, it can fail; this change makes our tests more reliable.
Test plan
Existing unit and integration tests continue to pass. New unit test added that mocks SentenceTransformers construction and verifies that it occurs when expected.
Documentation Changes
None required, user-facing behavior is the same.

Closing. The team decided that extra latency on first query was not an acceptable UI, and for the short term HuggingFace seems to be working again.


Tab completion not filling in correct for Get-Date

Intellisense is populating Hour which isn't a valid property when it should be Hours
TFS:12692415
Steps to reproduce
get-date | Format-Table H<tab>

Expected behavior
get-date | Format-Table Hours

Actual behavior
get-date | Format-Table Hour

Environment data

> $PSVersionTable

[System.DateTime] does have an .Hour property and does not have an .Hours property.
> (Get-Date).Hour
16

> (Get-Date).Hours # no output

@mklement0 Hours must be only in the formatting.  Thanks!

It may be interesting to have intellisense aware of formatting particularly when using format-* cmdlets


0.4.1 threadsafe

Dispatching is not threadsafe. We had request bodies overwriting each other with a high number of simultaneous requests. This pull requests fixes all cases we've found until now.

Coverage increased (+0.0%) to 95.85% when pulling 450d14b4eb7b6afaeb6f2d073711080b5ab13d9e on silveregg:0.4.1-threadsafe into 55f36a3a43e9a097c59d9247b4e5ebeb232925f9 on spulec:master.

Happy to merge this, but I should note that HTTPretty is not thread-safe in general. See https://github.com/gabrielfalcao/HTTPretty/issues/209


The producer thread throw StackOverFlowException when CommitTransaction, if the Transaction Coordinator is down

Description
I have 3 Kafka brokers and I have the producer to send messages in a transaction.
I will take one broker down while producing messages to simulate a error.
Then I found if I take down the specific broker 0 (guess it's the Transaction Coordinator for my transactional.id) the producer.CommitTransaction will always crash the thread by StackOverFlowException.
Since my producer has a fixed transactional.id, it will only get back to work if I take broker 0 online again. This sounds a bit restrictive in a Kafka Cluster environment. Is there a way to have the Transaction Coordinator failover to another broker?
How to reproduce

Run following code, pass in at least two brokers.
Take down the 'Transaction Coordinator' before producer.CommitTransaction(), in my case, it's broker 0 running on port 9091.

	class Class1
	{
		private IProducer<string, string> producer;

		private string topic;
		private TimeSpan timeout = new TimeSpan(0, 0, 30);

		public Class1(string broker, string topic)
		{
			this.topic = topic;
			var config = GetProducerConfig(broker);

			CreateAvroProducer(config);
		}

		private Dictionary<string, string> GetProducerConfig(string broker)
		{
			var config = new Dictionary<string, string>();
			config.Add("bootstrap.servers", broker);
			config.Add("acks", "all");
			config.Add("message.timeout.ms", "10000");
			config.Add("retries", "2");
			config["transactional.id"] = "test-kafka-transaction";
			config["enable.idempotence"] = true.ToString();
			return config;
		}

		private void CreateAvroProducer(Dictionary<string, string> config)
		{
			producer = new ProducerBuilder<string, string>(config).Build();
			producer.InitTransactions(timeout);
			Console.WriteLine("Producer initialized.");
		}

		public void ProduceMessages()
		{
			try
			{
				producer.BeginTransaction();
				TestProduce();
				// Set break point here and take down the 'transaction coordinator'
				producer.CommitTransaction(timeout);
				Console.WriteLine("Producer transaction committed.");
			}
			catch (Exception ex)
			{
				Console.WriteLine("Unexpected exception: " + ex.Message);
			}
		}

		private void TestProduce()
		{
			for (int i = 1; i <= 10; i++)
			{
				var task = producer.ProduceAsync(topic, new Message<string, string>() { Key = $"{i}", Value = $"message {i}" });
				task.ContinueWith(tsk => {
					if (task.IsFaulted)
					{
						Console.WriteLine($"Error producing message: {task.Exception.Message}");
					}
					else
					{
						Console.WriteLine($"Message produced to offset : {task.Result.TopicPartitionOffset}");
					}
				});
			}
		}
	}

The program hung for a few seconds and crash. Got output on the console as below.

Producer initialized.
%6|1591860143.667|FAIL|rdkafka#producer-1| [thrd:TxnCoordinator]: TxnCoordinator: Disconnected (after 18209ms in state UP)
%3|1591860143.667|ERROR|rdkafka#producer-1| [thrd:TxnCoordinator]: TxnCoordinator: Disconnected (after 18209ms in state UP)
%6|1591860143.669|FAIL|rdkafka#producer-1| [thrd:XX.XX.XX.XX:9091/0]: XX.XX.XX.XX:9091/0: Disconnected (after 15851ms in state UP)
%3|1591860143.669|ERROR|rdkafka#producer-1| [thrd:XX.XX.XX.XX:9091/0]: XX.XX.XX.XX:9091/0: Disconnected (after 15851ms in state UP)
Message produced to offset : test2 [[0]] @21
Message produced to offset : test2 [[0]] @23
Message produced to offset : test2 [[0]] @22
Message produced to offset : test2 [[0]] @24
Message produced to offset : test2 [[0]] @26
Message produced to offset : test2 [[0]] @28
Message produced to offset : test2 [[0]] @25
Message produced to offset : test2 [[0]] @27
Message produced to offset : test2 [[0]] @29
Message produced to offset : test2 [[0]] @30
%3|1591860147.671|FAIL|rdkafka#producer-1| [thrd:TxnCoordinator]: TxnCoordinator: Connect to ipv4#XX.XX.XX.XX:9091 failed: No connection could be made because the target machine actively refused it... (after 4004ms in state CONNECT)
%3|1591860147.671|ERROR|rdkafka#producer-1| [thrd:TxnCoordinator]: TxnCoordinator: Connect to ipv4#XX.XX.XX.XX:9091 failed: No connection could be made because the target machine actively refused it... (after 4004ms in state CONNECT)
%3|1591860148.673|FAIL|rdkafka#producer-1| [thrd:XX.XX.XX.XX:9091/0]: XX.XX.XX.XX:9091/0: Connect to ipv4#XX.XX.XX.XX:9091 failed: No connection could be made because the target machine actively refused it... (after 4005ms in state CONNECT)
%3|1591860148.673|ERROR|rdkafka#producer-1| [thrd:XX.XX.XX.XX:9091/0]: XX.XX.XX.XX:9091/0: Connect to ipv4#XX.XX.XX.XX:9091 failed: No connection could be made because the target machine actively refused it... (after 4005ms in state CONNECT)
%3|1591860176.042|TXNERR|rdkafka#producer-1| [thrd:main]: Current transaction failed: Transactional operation timed out (_TIMED_OUT)
%4|1591860207.686|REQTMOUT|rdkafka#producer-1| [thrd:TxnCoordinator]: TxnCoordinator: Timed out 0 in-flight, 0 retry-queued, 1 out-queue, 0 partially-sent requests
Process is terminated due to StackOverflowException.

Checklist
Please provide the following information:

[x] A complete (i.e. we can run it), minimal program demonstrating the problem. No need to supply a project file.
[x] Confluent.Kafka nuget version. 1.4.0, 1.4.3
[ ] Apache Kafka version.
[ ] Client configuration.
[ ] Operating system.
[ ] Provide logs (with "debug" : "..." as necessary in configuration).
[ ] Provide broker log excerpts.
[ ] Critical issue.

i believe this is resolved by #1312

@mhowlett , thanks for the quick response! I've had a try and now I can get an Exception after time out and fail elegantly. Will this be included in the 1.4.4 release? And is there a schedule for it?
Also on the other hand, I still can't get the producer to work until the 'key' broker is up and back online again. Shall I just keep trying to reconnect from the producer application? Or is there something more efficient to try? Appreciated for any suggestions.

"soon", waiting on librdkafka 1.4.4 which has some minor fixes (which have already been implemented). At one point it was going to be Friday. Would guess later this week.

"soon", waiting on librdkafka 1.4.4 which has some minor fixes (which have already been implemented). At one point it was going to be Friday. Would guess later this week.

@mhowlett I've noticed that 1.4.4 is available. After upgrading to 1.4.4, the issue is gone. Thanks!
Just another question regarding the high availability. If another broker is down, the producer can still send message. But if this 'Transaction Coordinator' is down, the producer is not able to send any message. Do you have any suggestion for this?

I understand that the transactional coordinator should fail over on its own. It's broker-side issue if it isn't failing over (the transaction coordinator is decided by the cluster). Since the original issue is now fixed closing this issue. There have been a lot of changes to the tx. producer code, too. Please reopen if it persists.


BAU (Dependabot): Express 4.20.0 changes

Dependabot created a PR which caused some issues as our codebase wasn't compatible with the new Express release.  After some investigation it seems that broke on startup wasn't actually doing anything useful before.  I've removed the code, the existing tests all pass and I've retested manually too.
The removed code was a 2017 feature detecting .disabled users and shutting them out but it shut them out by redirecting to another page.  Manual and automated testing showed that users in this state get a 401 response rather than this redirect.  The code that gives the 401 was added in 2020.
The removed code in this PR was (to the best of my knowledge) not used but not causing a problem until the new Express release where it started causing a problem.
A couple of extra findings about the two implementations:

The 2017 implementation would have stopped users from seeing any page in the app including the privacy policy which seems like a bad idea.
The 2020 implementation allows users to navigate pages which don't depend on login status but the user can't access the sign in page and they have no sign out option - that means they're stuck in limbo unless they delete their cookies.  The fact they can delete their cookies to get out of this limbo disproportionately affects real users who have maybe logged into an old account which was disabled while anyone trying to cause problems will just remove their cookies and carry on.  I think we should add a sign out button to this page.

Closed and moved the work back to the original dependabot PR. https://github.com/alphagov/pay-selfservice/pull/4273


[SIP] Configuration can use the common yaml format, using py code is not everyone can move py, configuration can be modular, one part of what is what the other part is what

Configuration can use the common yaml format, using py code is not everyone can move py, configuration can be modular, one part of what is what the other part is what
This configuration is not readable at all

This doesn't seem to be using the SIP concept/template at all, so I'm going to close it for that reason alone. You're welcome to fill out the template for real if you want to make a fleshed out proposal and carry it through the consensus process.
I'd say in general, though, that it's unlikely to get consensus to make such a change. Superset is a python application, and using a python file for config means that you can use python code/logic and data structures, which we currently do in several places.
Much (but not all) of the config could be moved to other formats (JSON/YAML/etc) but I'm not sure the use case. The tradeoffs/alternatives/use cases should all be part of the proposal if you want to open one.


Please push tags

The tags pushed to GitHub seem outdated, breaking the watch mechanism in Debian to keep the package updated.
Please push the tags for all versions.

caniuse-lite does automatically by GitHub Actions https://github.com/browserslist/caniuse-lite/blob/main/.github/workflows/check.yml
I am OK with adding git tags, but you need to change script in PR.


Preview Feature | Update SSH key on an existing AKS cluster (preview) | Not working

This is autogenerated. Please review and update as needed.
Describe the bug
Following the steps outlined in the Microsoft Learning Docs for updating the SSH keys on VMSS (AKS) is erroring out (see below):
https://learn.microsoft.com/en-us/azure/aks/node-access#update-ssh-key-on-an-existing-aks-cluster-preview
Command Name
az aks update Extension Name: aks-preview. Version: 0.5.115.
Errors:
The command failed with an unexpected error. Here is the traceback:
'NoneType' object has no attribute 'ssh'
Traceback (most recent call last):
  File "/opt/az/lib/python3.10/site-packages/knack/cli.py", line 233, in invoke
    cmd_result = self.invocation.execute(args)
  File "/opt/az/lib/python3.10/site-packages/azure/cli/core/commands/__init__.py", line 663, in execute
    raise ex
  File "/opt/az/lib/python3.10/site-packages/azure/cli/core/commands/__init__.py", line 726, in _run_jobs_serially
    results.append(self._run_job(expanded_arg, cmd_copy))
  File "/opt/az/lib/python3.10/site-packages/azure/cli/core/commands/__init__.py", line 697, in _run_job
    result = cmd_copy(params)
  File "/opt/az/lib/python3.10/site-packages/azure/cli/core/commands/__init__.py", line 333, in __call__
    return self.handler(*args, **kwargs)
  File "/opt/az/lib/python3.10/site-packages/azure/cli/core/commands/command_operation.py", line 121, in handler
    return op(**command_args)
  File "/home/namepii/.azure/cliextensions/aks-preview/azext_aks_preview/custom.py", line 832, in aks_update
    mc = aks_update_decorator.update_mc_profile_preview()
  File "/home/namepii/.azure/cliextensions/aks-preview/azext_aks_preview/managed_cluster_decorator.py", line 3227, in update_mc_profile_preview
    mc = self.update_linux_profile(mc)
  File "/home/namepii/.azure/cliextensions/aks-preview/azext_aks_preview/managed_cluster_decorator.py", line 3179, in update_linux_profile
    mc.linux_profile.ssh = self.models.ContainerServiceSshConfiguration(
AttributeError: 'NoneType' object has no attribute 'ssh'

To Reproduce:
Steps to reproduce the behavior. Note that argument values have been redacted, as they may contain sensitive information.

Put any pre-requisite steps here...
az aks update -g {} -n {} --ssh-key-value {}

Expected Behavior
https://learn.microsoft.com/en-us/azure/aks/node-access#update-ssh-key-on-an-existing-aks-cluster-preview
Environment Summary
Linux-<IP_ADDRESS>-microsoft-standard-WSL2-x86_64-with-glibc2.31, Ubuntu 20.04.5 LTS
Python 3.10.8
Installer: DEB

azure-cli 2.42.0

Extensions:
aks-preview 0.5.115

Dependencies:
msal 1.20.0
azure-mgmt-resource 21.1.0b1

Additional Context

route to CXP team

@NitroAMD Apologies for the late reply. Thanks for reaching out to us and reporting this issue. https://github.com/Azure/azure-cli-extensions/pull/5562 PR was filed to fix this issue. This PR is now merged. Fix will be released as a part of this milestone https://github.com/Azure/azure-cli-extensions/milestone/73


Fixed CLI shebang

coverage: 94.174%. remained the same when pulling bc04739e31c78f97abeec50c70be02c6d7cedc6c on cody-esbuild-shebang into 9b7bf74168d71eddd3e93a14cbf146b3258f9abe on main.


expr: update onig crate to 6.3

No API changes seem to affect expr from onig v5/v6.
Are there any benchmarks for expr that might detect a performance regression?

You an just merge all the commits and force push back to the originating branch to clean it up.


Uncaught error is not being thrown in certain situation

RxJS version:
versions after 5.1.0 (including)
Code to reproduce:
Rx.Observable.of(null)
  .delay(1)
  .flatMap(v => (new Rx.BehaviorSubject(null)).map(() => v))
  .map(() => {
    throw new Error('tasty error');
  })
  .startWith('error should go next')
  .subscribe(
    v => console.log(v)
  );

you can also run this code in JSBin
Expected behavior:
Uncaught Error: tasty error should be thrown
Actual behavior:
Error was swallowed
Additional information:

This was introduced in v.5.1.0 (previous works fine for me)
If you try to remove delay or flatMap + BehaviourSubject error is thrown

this is dupe of https://github.com/ReactiveX/rxjs/issues/2565, there seems some odds around subject.


As a user, I want to search for contacts by any criteria

... so that I can quickly find the person I'm looking for.

Close issue as this has been done.


Triage and fix some eslint rules

Follow-up to #54693.
This PR triages the rules that should "obviously" be disabled or fixed.
This caught a case where I had not noticed a stray debugger line in a PR.

After #55137, I've also added no-extra-boolean-cast, which similarly is too strict to work.


Automated Package Upgrade

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Editor UX

Made various improvements across editor areas:

Added story deletion button (Closes #16);
Split editor into 3 sections (Info, Narrative, Actors) accessible via the bottom bar.
Reimplement actor editing in a dialog.
Added actor & node creation to picker sheets for better UX flow.
Refactor numerous widgets & import new utility dialogs.
Made startNodeId nullable, in which case the first node acts as such. Also moved the corresponding toggle into NodeEditor.

I know that state management could be done better. In particular, I've tried using Provider package. My idea is to provide StoryEditorState editor with context implicitly rather than manually passing it as an explicit argument into every widget. But the provided value was get lost between dialog and sheet transitions, and I've fallen back to the current solution. Still, the current way is not that bad. We'll come back to this point later.

My next area of work will be NodeEditor, so don't mind it being inconsistent and messy for now.

The comment is outdated: successfully migrated all of the editor state management into using Provider.


[msal-browser] Typescript Sample

Adds a typescript sample for @azure/msal-browser.

Coverage remained the same at 80.998% when pulling 71936c1a1dc2511a5b132b206ae3de28dbf6960f on ts-sample-2.0 into 2b8feec394049a5c7820d71b12bb4db82e61cada on dev.


DELTASPIKE-850 Add Weld 3 profile

After all, all that's needed to make Weld 3 work is to remove explicit weld-core dependency. All the necessary dependencies for any given release (1.x, 2.x, 3.x) are pulled in through weld-core-bom depchain in Weld profile's dependencyManagement.

Should not be merged just yet, most likely this will be soon fixed in Weld.

PR merged


Solve a problem: postcss-px-to-viewport: postcss.plugin was deprecated.

I don't like the error message, so I tried to resolve this error, but I found some properties are not available. I don't have time to change.

good job.


Is it safe to use Application::_router::stack to get the list of registered routes?

My previous issue was removed, I suppose by mistake, so here it is again:
Is it safe to use Application::_router::stack to get the list of registered routes?

_router begins with a _ which usually means that it is private
_router type is any in TypeScript definition which may mean that it is subject to change

If it is not safe, what is the official way to retrieve the list of registered routes?
By the way, an excerpt of you own code of conduct:

Demonstrating empathy and kindness toward other people

Your issue wasn't removed, it was just moved over to the discussion board: https://github.com/expressjs/express/discussions/4987

Thank you. It makes sense that it is in the discussion board. I wasn't aware of the existence of this board. I'll ask questions there next time.

No problem. Perhaps in the future you should not assume malice.


acme: ability to specify custom whitelist policy

Currently if you have a config like;

domain := "*.example.com"
o := config.LetsEncryptOpts(domain, ...)
_ = server.Run(mux, o)

Any random bot that makes a request to any subdomain will lead to a certificate for that subdomain been created.
From small time experience, within no time; you end up with hundreds of subdomains just because bots are requesting for them.
Maybe we should expand the server configs; https://github.com/komuw/ong/blob/7a7804416d8fcea006bdd65350c8353e3e9bfe4d/config/config.go#L735-L736 so that it takes in an option like;
// HostPolicy specifies which host names the Manager is allowed to respond to.
// It returns a non-nil error if the host should be rejected.
// The returned error is accessible via tls.Conn.Handshake and its callers.
// See Manager's HostPolicy field and GetCertificate method docs for more details.
type HostPolicy func(ctx context.Context, host string) error

Also see; https://github.com/golang/crypto/blob/dbb6ec16ecef7a66638d8514be54b13660551b0a/acme/autocert/autocert.go#L68-L88 which allows you to provide a list of domains and subdomains that you allow certificates for.

We could retain the argument called domain but only use it in middlewares. Then create a new argument called tlsHosts for use in the server.


Parse timestamps from API

Coverage increased (+0.1%) to 88.298% when pulling 06af896504c5cd7c777c0fc65d4d0dbb6120700b on SirCmpwn:master into 7232cbf410567cf363a81a017d67685c435ba614 on avinassh:master.

Don't know how I missed this PR. Merging now. Apologizes for the delay.
Thank you!


Seperate fields and fieldValues for instances and non-instances respectively.

This will allow instantiated types to maintain field metadata as well as non-instantiated types to have raw data.

no


docs(skipUntil): add description and example with an interval waiting for click

Description:
The example contains two base observables. An interval and a click listener. The resulting observable is the interval but skipping all the values, until the click event is fired.
Related issue (if exists):
#4631

Pull Request Test Coverage Report for Build 8331

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

Totals

Change from base Build 8320:
0.0%

Covered Lines:
5789

Relevant Lines:
5976

💛  - Coveralls


Separate integer and decimal token types

The match_number function is fully aware that it saw a ., e, or E and is capable of emitting something more refined than a token_kind::number (token_kind::integer and token_kind::decimal). This will save parse_number from doing the double scan with characters.find_first_of(".eE"), which might help parsing performance.

Completed by efc80dc.


Add api-inference docs

Closes https://github.com/huggingface/hub-docs/issues/520

Closing this issue for now. The detailed parameters page (probably the most important page of the doc) gets auto generated from api-inference. Specifically, all the code snippets (see attached screenshot) are part of python test files, which gets used in generating the doc. Therefore, it is not possible to open-source docs only without open-sourcing the test files.

cc: @michaelbenayoun


spec: order of evaluation of variables in return statement is not determined

Please answer these questions before submitting your issue. Thanks!
What version of Go are you using (go version)?
go version
go version go1.10.2 darwin/amd64
What did you do?
package main

import "fmt"

func main() {
	m, i, j := testChange()
	fmt.Println("retun ", m, i, j)
}

func testChange() (int, interface{}, int) {
	m := 0
	i := 0

	f := func() int {
		m = 2
		i = 2
		return 99
	}

	return m, i, f()
}

What did you expect to see?
retun  2 2 99
What did you see instead?
retun  2 0 99

This seems to be working as specified.

How is this working as specified? This shows a discrepancy in the behavior of assigning to a variable depending on whether it's an interface or not. Not trying to be accusatory; just curious what part of the spec covers this.

There is no guaranteed order, see https://golang.org/ref/spec#Order_of_evaluation

That seems to specify evaluating of a single expression. The order of evaluation of the expressions in the list of expressions of an return statement seems to be unspecified, so the evaluating m, i, f() in order i, f(), m would warrant the OP observed result.
I will now stop myself from polluting this issue. I'm no more sure about anything involved in it.

With Go 1.3 and later I get 2 0 99.  With gccgo I get 0 0 99.  With Go 1.0 to 1.3 I get 2 2 99.
I think this boils down to when we evaluate variables listed in the return statement.  Do we load m and i before or after the call to f?  I don't think the language spec currently specifies that.  In other words, I think this is another example of https://github.com/golang/go/issues/23188#issuecomment-361626352 .
I don't think the detail of the fact that this is an interface value affects this.  It happens to change what the compiler does, but I don't think any specific ordering is required anyhow.

Test Code:  https://play.golang.org/p/xnHqSQyrp_J
package main

import "fmt"

func main() {
	m, i, j := testChange00()
	fmt.Println("retun ", m.(int), i.(int), j.(int)) // 0 0 99
	fmt.Println("retun ", m, i, j)                   // 0 0 99

	a, b, c := testChange11()
	fmt.Println("retun ", a, b, c) // 2 2 99
}

// return type: int int int  				Result: 2 2 99
// return type: int int interface{} 			Result: 2 2 99
// return type: int interface{}, interface{} 		Result: 2 0 99
// return type: int interface{}, int 			Result: 2 0 99
// return type: interface{} interface{} interface{} 	Result: 0 0 99
// return type: interface{} interface{} int 		Result: 0 0 99
// return type: interface{} int int 			Result: 0 2 99
// return type: interface{} int interface{}		Result: 0 2 99
func testChange00() (interface{}, interface{}, interface{}) {
	m := 0
	i := 0

	f := func() int {
		m = 2
		i = 2
		return 99
	}

	return m, i, f()
}

func testChange11() (int, int, int) {
	m := 0
	i := 0

	f := func() int {
		m = 2
		i = 2
		return 99
	}

	return m, i, f()
}

@KISSMonX that is the reason why I wonder, I think the interface dose affect the result.

Yeah, indeed affected, but return type should not affect the order of evaluation.
Waiting for official reply. 😃

With the current spec, the order of evaluation is unpredictable.  There is no one correct answer, there are several correct answers.  Correct Go implementations can produce different results for this program.  As I said above, different compilers behave differently today.  It may happen that with the current Go 1.10 compiler the order is affected by whether you use an interface type, but future Go releases may well produce different results that are still completely valid.

I'm closing this issue. The Go spec intentionally defines only a partial ordering on expression evaluation within a statement, and the behaviors demonstrated are all consistent with that (albeit admittedly surprising). So there's no action for us to take here.
I think we're open to defining a total ordering (e.g., like Java does and reportedly like C++ is considering), but that needs to take the form of a language spec proposal.

See also #27804.