Svd

Description
Compute the SVD for a matrix m
Use the QR decomposition to compute eingen values and vectors
Use the solve function to compute v as the result of (us)X = m
Use a fix number of iterations that can be improved

FEATURE: Singular-value decomposition (SVD) https://github.com/tensorflow/tfjs/issues/110

For repository owners only:
Please remember to apply all applicable tags to your pull request.
Tags: FEATURE, BREAKING, BUG, PERF, DEV, DOC, SECURITY
For more info see: https://github.com/tensorflow/tfjs/blob/master/DEVELOPMENT.md

This change is

Hi @kedevked,
It's awesome that You've started the implementation of some of the most crucial Linear Algebra operations. I'm afraid, however, that the Implementation of the QR Algorithm has to become a lot more complicated before it becomes fast enough and converges reliably. Some observations:

The Schur Decomposition of a real-valued matrix is usually not real-valued. There is a more lenient version of the Schur Decompostion: The Real Schur Decomposition, which only guarantess a block-triangular matrix and is real-valued for every real-valued input.

The unshifted QR-Algorithm likely never converges to the Real Schur decomposition

The QR Decomposition takes O(n³), so the QR Algorithm - as implemented - will take O(n4). This can be improved upon by performing a Hessenberg Decomposition first, as a Hessenberg matrix can be QR-Decomposed in O(n²).

It is usually recommended to balance the matrix before the Schur Decomposition. Aside from a few exeptions, it is supposed to improve the numeric stability.

There is only one viable Schur Decomposition Algorithm for the non-symmetric Eigenvalue Problem that I could find: The Doubly-Shifted Francis QR Algorithm. There are two JavaScript implementations of the Francis Algorithm that i know of: Numeric.js and NDJS. The latter contains some literature references that I found very helpful while implementing it. Maybe they will help You as well.
Alternatively, I can offer to try and incorporate  my implementation from NDJS into TFJS.

Hi @DirkToewe ,
tfjs already supports QR decomposition using householder transformation. I used that QR decomposition and implemented the algorithm described here: http://www.math.tamu.edu/~dallen/linear_algebra/chpt6.pdf . I don't really think that in top of that we need the schur decomposition before computing the svd.
Maybe @caisq could give some pointers in the direction to go.

The PR is about creating a new operator tf.svd that will return the SVD decomposition of a given matrix. Therefore, I am not exporting eigen values and vectors only for testing.
The third point holds if I were to implement the QR decomposition. That's not the case.

@kedevked hey, thanks for SVD implementation! I see there is a TSLint error and I made a PR to your fork that fixes it. I wish to use this API soon in my project!

That's great @JasonShin. Hopefully @caisq could review it or give us glimpse about how to proceed to make it part of the API

Sorry to bring this up again but I am still wondering about a few points:

I am not sure that the QR iteration - even for symmetric positive semidefinite matrices - is guaranteed to converge to a diagonal matrix without a shift.
Currently the QR iteration in eingen_() uses a fixed number of 5 steps. The Francis QR Algorithm on average takes O(n) steps (literature says ~2n, for random matrices it was up to 3n in my experiments). That should also be the order of steps necessary for symmetric positive semidefinite matrices. Without a shift I expect this number to be even larger.
For checking convergence, You could check the off-diagonal norm every n steps.
Calling dispose() manually makes backpropagation over the SVD impossible. Maybe there is a way to check wether or not backpropagation is desired?
(Minor point) Computing the SV by computing the EV of ATA or AAT computes the squares of the SV, which would create a minor risk of underflow (Math.fround(1e-23**2) == 0). SVD is often used to determine the rank or to compute rank-deficient linear least square problem. In both cases underflow matters.
(Moot point) The QR Decomposition is already not the fastest in TFJS. Building a ~2n operation on top of it would mean ~5 minutes for a [100,100] matrix and ~1.2 hours for a [200,200] matrix according to my estimations.

The PR is about creating a new operator tf.svd that will return the SVD decomposition of a given matrix.  I support this

QR decomposition, QR iteration and (Francis implictly shifted) QR method, are three distinct algorithms in my understanding (see: Linear Algebra Handbook, chap. 42 "Symmetric Matrix Eigenvalue Techniques"). If I understand @kedevked's code correctly, the QR iteration is used to solve the symmetric positive semidefinite eigenvalue problem AAT to then solve the SV problem of A with it. Only one of my points was addressed to the QR decomposition (the one about performance). The other points are all directed at the implementation of svd_() and eingen_() in the PR.
Here are the lines of code that make me believe, QR iteration is used:
// ...
function svd_(m: Tensor2D): {u: Tensor, s: Tensor, v: Tensor} {
  const mT = m.dot(transpose(m));
  const u = eingen(mT).vectors;
// ...

// ...
function eingen_(m: Tensor): {values: Tensor1D, vectors: Tensor} {
  let z;
  for (let i = 0; i < 5; i++) {
    const [x, y] = linalg.qr(m);
    m = y.dot(x);
    z = z ? z.dot(x) : x;
    y.dispose();
  }
// ...

eingen_ looks like QR iteration without shift.
A few more points that came to my attention looking at the PR for the fourth time:

eingen(mT) is called twice in svd_().
In an SVD U and V are both orthonormal. So solve_() is not necessary since U-1=UT
m.dot(transpose(m)) could be replaced by tf.matMul(m,m, false, true)

As always, I may very well be mistaken in all of this.
P.S.: To my knowledge, nobody is opposed to having SVD in TFJS afaik, certainly not me. I was hoping that my first comment made that clear.

I will take the time to go through the algorithms for implementation suggested so as to come with a sound implementation. Thanks !

For symmetric eigenvalue problems (like the SVD) there is also another, simpler algorithm: The (classic) Jacobi eigenvalue algorithm. It also takes O(n⁴) operations and in my opinion it is much simpler to understand and implement than Francis QR or Golub-Reinsch. There's also O(n³) implementations of the Jacobi SVD but they are really complicated.

I have a question, for node.
For Python version, svd is already there;
https://www.tensorflow.org/api_docs/python/tf/linalg/svd
and I guess these Python apis are based on C binaries.
tfjs for node is also based on the same C binary, I've heard. So I think it should be trivial to implement all of the apis that are already implemented in Python version, for tfjs for node.
I understand all of the apis of  tfjs on browser is pure js and it seems a long way development to cover basic apis.
So, here's my question.
Is there any development policies that apis for both browser and node are synchlonized? If so, even there are exsiting binaries to bind from node, we must wait every api for browser pure js implementation.
 Thanks.


Return function types, weird behaviour.

TypeScript Version:  2.2
Code snippet example
Code
// Here is my problem
type ReturnType = { a: string }
type Fn = () => ReturnType

// OK - This breaks and that what we wants.
const fn: Fn = () => ({
    a: 0,
})

// Not ok - It doesn't and I don't know why.
const fn: Fn = () => ({
    a: '',
    b: '' // This should breaks my ReturnType interface doesn't have
})

TypeScript uses structural typing (see https://www.typescriptlang.org/docs/handbook/type-compatibility.html for more information). That's why
{a: '', b: ''}

in your example is assignable to ReturnType type.

What does it mean? Sorry, I'm a TS beginner and I feel I'm missing something here...

@ikokostya I'm having the same issue, do you know if there is a way to force TS to not use this structural typing?

@ahanriat As I known there is now way. There is only suggestion https://github.com/Microsoft/TypeScript/issues/202

@ikokostya Okay after reading through I managed to make something more permissive, but I'm still stuck.
Am I blocked because of TS design's ?
type ReturnType = { a: string }
type Nominal<T> = {
    [K in keyof T]: T[K]
};

const fn: Fn<Nominal<ReturnType>> = () => ({
    a: false,
    b: '',
})

Okay actually I mixed it up with down casting.
This solved it
class ReturnType { a: string }

type Nominal<T> = {
    [K in keyof T]: T[K]
};
type Fn<T> = () => Nominal<T>

const fn: Fn<ReturnType> = (): ReturnType => ({
    a: '',
    b: '',
})


Improved network error handling

This is the last network layer refactor PR. I mainly worked on improving error handling using wrappers and exceptions. There is much unfinished work but I should have gotten to most things above protocol handler.
Protocol Handler and traffic cop are both so complicated we probably need a summer rewriting them (if we ever want to)

Changes Unknown when pulling 8aafb63d260c812eaa603956e426dfac969cdf5b on tli2:tianyuli-network-error-handling into ** on cmu-db:network-refactor**.

Changes Unknown when pulling 8aafb63d260c812eaa603956e426dfac969cdf5b on tli2:tianyuli-network-error-handling into ** on cmu-db:network-refactor**.

This might be lame, but in error_util.h, wouldn't it be better to write LogErrno() like the following?
for (int i=0; i < ERRNOS.size(); i++){  //ERRNOS contains EINTR, EAGAIN, EBADF, ...
    if (errno = ERRNOS[i]){
        LOG_TRACE("Error Writing: %s", #ERRNOS[i]);
        break;
    }
}

if (i < ERRNOS.size())
    LOG_TRACE("Error Writing: UNKNOWN");

This matters little because:

this is hidden in a function anyways
this is inherited code from before

I agree that if I were to do it I would do something differently, like keeping a static std::map<int, std::string> from errno to their names. However, a loop does not seem like a good idea since it is first of all slower and second of all non-idiomatic.

Changes Unknown when pulling ecb4fb06cd6b23d161ce4bd33914ea744785afab on tli2:tianyuli-network-error-handling into ** on cmu-db:network-refactor**.

@dengyuchenkit One question, does the postgres parser handle exceptions well and send through the network thread?

@vittvolt The network layer will catch the exception thrown by the parser and send back the error message. The parser detects different exceptions now but I am not sure what do you mean by parser handle exception well? Are you talking about particular exceptions that should be detected by parser? If it's only about network thread catching exception, then it's yes.

@dengyuchenkit Thanks for the clarification. The problem I found was that exceptions thrown in postgresparser cause peloton the terminate, though the exception info is printed.
Not sure if it is related to this PR.

@vittvolt >< I think this PR is more about refactoring. Can you please share the queries you run? Will check that...

@vittvolt Sorry, some corrections. This PR is removing EXIT. And I'm not sure about the terminate you mention. Could you share the queries?

@vittvolt We should catch those and send them back to the client.
@dengyuchenkit This PR is separate from your work on passing exceptions from the worker threads to the networking thread, right?

@apavlo Yes, it's separate.

Changes Unknown when pulling a2db60c75217bb360648e2e55893821502e6913b on tli2:tianyuli-network-error-handling into ** on cmu-db:network-refactor**.


Change library name

We need to change the library name because a rebranding of the product associated to the library.

ERROR: Library name MentorBit-Library not found in the Library Manager index. Library names are not allowed to change
       after being added to the index.

This error from the linter is expected and will be resolved by the registered name update provided by https://github.com/arduino/library-registry/pull/4753


Need access to this repo's contentful account

Hi @whitep4nth3r
Thanks for creating this repo, I need a little help, Need access to space of contentful of this project
my email is<EMAIL_ADDRESS>Thanks,
Kaleem

Do the credentials provided in this file not work? https://github.com/whitep4nth3r/nextjs-contentful-blog-starter/blob/main/.env.local.example

Full instructions are in the README: https://github.com/whitep4nth3r/nextjs-contentful-blog-starter#readme

Thanks @whitep4nth3r Got it


Ran the application.

I set up the application, but it’s not working. I pressed the A and R buttons, but it’s not generating any output. It’s just saying ‘transcribing audio.’ I tried running YouTube to generate voice and get output using this application.

problem is that it works with Mac but on windows it returns error PS C:\Users\alber\code\hack-interview> python .\main.py
2024-09-26 17:53:58.920 | DEBUG    | main:main:15 - Application started.
2024-09-26 17:55:18.450 | DEBUG    | src.audio:record:35 - Recording...
2024-09-26 17:55:28.857 | DEBUG    | src.gpt_query:transcribe_audio:30 - Transcribing audio from: record.wav...
Exception in thread Thread-3 (_long_func_thread):
Traceback (most recent call last):
File "C:\Python312\Lib\threading.py", line 1073, in _bootstrap_inner
self.run()
File "C:\Python312\Lib\threading.py", line 1010, in run
self._target(*self._args, **self._kwargs)
File "C:\Python312\Lib\site-packages\PySimpleGUI\PySimpleGUI.py", line 11813, in _long_func_thread
return_value = original_func()
^^^^^^^^^^^^^^^
File "C:\Users\alber\code\hack-interview\src\gpt_query.py", line 32, in transcribe_audio
with open(path_to_file, "rb") as audio_file:
^^^^^^^^^^^^^^^^^^^^^^^^
FileNotFoundError: [Errno 2] No such file or directory: 'record.wav'


Will rasa_nlu match the exact phrase if the number of training example per intent is 1?

Rasa_nlu version: 0.9
Backend : mitie_sklearn
OS: ubuntu
      Is it possible for rasa_nlu to match the exact phrase that was given in the training data if the number of training sample for each intent is one?
      I tried this but sometimes it is not matching with the right intent. Is there any way where i can modify the code to achieve this?

No, the trained models in Rasa NLU use machine learning. So there is no direct lookup of examples nor keyword matching.


How do claims map to AAD user attributes?

This article could be improved by providing these mappings. For example, is "unique_name" mapped to UPN? for guests, is that an unmangled UPN?

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

ID: a0cace34-34bf-32f7-c857-e4d71d535a77
Version Independent ID: cdbbc4ae-5894-da21-42d7-928b3674bbd1
Content: Microsoft identity platform ID token reference
Content Source: articles/active-directory/develop/id-tokens.md
Service: active-directory
Sub-service: develop
GitHub Login: @rwike77
Microsoft Alias: ryanwi

@jaffadog Thanks for your feedback! We will investigate and update as appropriate.

@hpsin, can you comment on this?  Thanks.

For managed (home tenant scenario) users, it's the email address, specifically the one they typed in to sign in (this varies however, depending on where they entered their address).  For guest users it can be a phone number (mangled with the #) or their email address in another IDP (e.g. live.com#yyy@hotmail.com).
Which mappings in particular, beyond unique_name, did you have in mind?

@hpsin I'm interested in upn, mail, and unique_name. What I am hoping for is parity with SAML claims management and mapping - where there is almost complete transparency in how things map to the AAD user object attributes. I'm comfortable setting up SSO integrations in SAML, and in our enterprise we actually use extensionattributes (i.e. the 1-15 ones) as our preferred user identity claim - as we have complete control over those - and use them to work around the MSA vs peer AAD guest upn inconsistency, for example. I've been unable to use those here in JWT claims - so I'm having to develop a very fine understanding over how the out of the box claims map in various situations.

#reassign:@hpsin  @hpsin, can you take a look at this one?  Thanks.

@jaffadog @hpsin Moving this stale issue (☢ 490 days) to Azure DevOps work item backlog for review in recurring sprint triage. We'll move on it as appropriate and resolve when possible.

ID
Title
Iteration Path
Assigned To

1308759
[ISSUE][41386] How do claims map to AAD user attributes?
Technical Content\Backlog
Hirsch Singhal

#please-close


[client]: when you use the amm and have multiple realms, it doesn't select the realm you are on. it selects only the last one

fixed by #1400


When finding partial methods, pick the one with body

At the moment, when we have the following code:
public partial class MyClass
{
     public MyClass()
    {
          Method();
     }

      partial void Method()
      {
         Console.WriteLine("foo");
      }
}

  public partial class MyClass
  {
      partial void Method();
  }

using ctrl+T in VS Code, and typing Method() will always send the user to the one without body
using "go to definition" in VS Code over the method invocation, will also always send the user to the one without body

This PR ensures that we send the caret to the version with body instead.

thanks 👍


Generating projects on NetBeans 8.2 is slow

hi，I am very confused,Generating a project is very slow when i use  jdk8 、netbean8.2 and jeddict 2.5  . I would like to  know whether it is my computer problem, if not, can tell me about the reasons?

Can you please share the modeler file. Are you using workspace functionality ?

This ticket has been closed due to insufficient detail.


Train 78

https://github.com/dcos/dcos/pull/687
https://github.com/dcos/dcos/pull/731
https://github.com/dcos/dcos/pull/734
https://github.com/dcos/dcos/pull/736
https://github.com/dcos/dcos/pull/741
https://github.com/dcos/dcos/pull/751

@spahl @lingmann Ready to set sail


Error in source: should contain "API for Gremlin account" instead

Hello,
please note that step 4. under chapter "Create an API for Gremlin account" has not been edited properly: "Use az cosmosdb create to create a new API for NoSQL account with default settings."
It should read "Use az cosmosdb create to create a new API for Gremlin account with default settings." in this case.
Kind regards,
Anne H., QC

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

ID: ae64443b-43d7-6683-d5b4-29f6af518656
Version Independent ID: 8dcb6a2f-97b2-2e86-90c7-01167aa85194
Content: Quickstart: Gremlin library for .NET - Azure Cosmos DB for Apache Gremlin
Content Source: articles/cosmos-db/gremlin/quickstart-dotnet.md
Service: cosmos-db
Sub-service: apache-gremlin
GitHub Login: @manishmsfte
Microsoft Alias: mansha

Hi @QueryCoordinator ,
Thanks for sharing this feedback. We will look into this and update as appropriate.
Hi @manishmsfte,
Could you please look into this, thanks.

@QueryCoordinator, thanks for this note. The correct should be merged soon and this issue will auto-close. It will be live shortly after.


What is clf2?

One of the lines of code states:    global clf2, inputs_dc, prediction_dc
But it is only used in that one location. It's not clear as to what clf2 is, or how / when it is used.

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

ID: e9f9f665-d8f6-5cf5-bdb8-01112cffd69b
Version Independent ID: 25000f70-6f17-5d8e-3603-db051cd266a2
Content: Azure Machine Learning Model Management Web Service Deployment | Microsoft Docs
Content Source: articles/machine-learning/preview/model-management-service-deploy.md
Service: machine-learning
GitHub Login: @raymondl
Microsoft Alias: raymondl, aashishb

@DaveVoyles
Thanks for the feedback! We are currently investigating and will update you shortly.

Issue Summary
Step 1 of the tutorial creates a variable of clf but then in step 3, clf2 shows up and it is not clear what it is being used for.
https://docs.microsoft.com/en-us/azure/machine-learning/preview/model-management-service-deploy#3-create-a-scorepy-file
import pickle
from sklearn import datasets
iris = datasets.load_iris()
X, y = iris.data, iris.target
clf = linear_model.LogisticRegression()
clf.fit(X, y)
saved_model = pickle.dumps(clf)
https://docs.microsoft.com/en-us/azure/machine-learning/preview/model-management-service-deploy#run-function
def run(input_df):
global clf2, inputs_dc, prediction_dc
try:
prediction = model.predict(input_df)
inputs_dc.collect(input_df)
prediction_dc.collect(prediction)
return prediction
except Exception as e:
return (str(e))

Please assign to @aashishb who is taking over this article, thank you!

Please reaasign to @raymondlaghaeian. He's back on the project. Raymond, can you clarify and update please if needed?

@raymondlaghaeian - can you please review this issue?

The documentation above is lacking a few lines of code.
If you look at
https://github.com/Azure/Machine-Learning-Operationalization/blob/master/samples/python/code/iris/iris_train.py
you can see first a 'clf1' is built, which is the model (so it is 'clf' in the example above).
Next, the model gets pickled to a local file named 'model.pkl'
And finally this local file gets loaded into 'clf2'.
That is where the clf2 is coming from.  It is in fact the same as clf1, but loaded from the pickled file.

Ah OK, now I understand, thank you!
Would it be alright if I added that note in the docs for clarification?

@DaveVoyles - Yes, please.

This was resolved and the article was later deprecated. #please-close.


Parsing of compound command-line tokens into arguments is surprising

The primary purpose of this issue to highlight how the existing behavior may be surprising to newcomers (and even for seasoned users hard to remember and therefore predict in specific situations).

Given that the behavior has been around since the beginning, changing it is probably not an option, but documenting how the behavior may be surprising is worth doing; while some aspects of the behavior can be inferred from about_Parsing, the overall implications aren't clear.

@SteveL-MSFT: This issue subsumes #3217, which therefore no longer needs the Documentation Needed label.

While this may ultimately become a documentation-repo issue, I would first like to solicit some feedback as to what code changes, if any, should be considered, after all (there are edge cases), and as to whether my summary is accurate.

While there may be good technical reasons for these behaviors, the problem is that they may be unexpected, especially given the deviation from how cmd.exe and bash handle these scenarios.

All surprising behaviors can be avoided with proper quoting - which is also worth pointing out in the docs -  but the need to quote negates one of the convenient aspects of argument syntax. If at the end of the day you cannot remember whether a particular token requires quoting, your choices are to resort to trial and error, or to quote everything, which is cumbersome.

Note: By compound command-line token I mean a logically single token composed of the following syntax constructs by direct concatenation:

barewords (unquoted strings without special meaning; e.g., foo)
quoted strings (e.g.; 'bar', "baz")
variable references ($foo) and subexpressions ($(...))

Examples:

bar${foo} and ${foo}bar and $($foo)bar
foo"bar" and "bar"foo

The surprising aspects are:
Asymmetry: Whether a quoted string or subexpression comes first matters:
Placing the quoted string or subexpression first results in 2 arguments:
PS> Write-Output 'hi'there
hi
there

> Write-Output $($env:HOME)/Documents
/Users/jdoe
/Documents

Otherwise, a single argument is passed, as expected:
PS> Write-Output hi'there'
hithere

PS> Write-Output Documents:$($env:HOME)  # Note: just $env:HOME without $() is not affected.
Documents:/Users/jdoe

. following a leading quoted string is interpreted as [string] property access
PS> Write-Output 'hi'.there
   # NO output, because an attempt is made to access property .there on the string instance

. as the initial char. followed by a quoted string results in 2 arguments
PS> Write-Output .'hi'
.
hi

- as the initial char. in something that turns out not to be a parameter name  results in 2 arguments with the presence of : or .
See also: #6292 and #6360.
PS> Write-Output -foo:bar
-foo:
bar

PS> Write-Output -ip=<IP_ADDRESS>
-ip=10
.0.0.1

- as the initial char. causes embedded variable references not to be expanded
See also: #4624.
PS> Write-Output a$HOME
a/home/jdoe  # e.g.; $HOME was expanded, as expected

PS> Write-Output -a$HOME
-a$HOME  # !! $HOME was NOT expanded

Note that the problem only surfaces if the there's at least 1 literal char. following the - before the variable reference; for instance, in -$HOME the variable is expanded.
Environment data
Written as of:
PowerShell Core v6.0.2

@mklement0 wrt your comment,

deviation from how cmd.exe and bash handle these scenarios.

Just so you'll have the context, traditional shells like bash are 'expand and parse shells'. They work as follows:

a line of text is read
quote removal is done, variables are expanded inline
The expanded line is then parsed and executed.
It is important to note step 2 - the values of variables are expanded in place as strings. This could not work for PowerShell with live object. Even if we went with some form of deserialized object in the string, the performance impact would be unacceptable.

PowerShell language processing is much more akin to python or ruby:

a line of text is read
the text is tokenized and parsed (there are deals between the tokenized and the parser so I made it one step.)
AST/code are generated and executed.

The expand-and-parse approach results in a particular set of characteristics. The parse-then-execute approach results in a different set of characteristics. PowerShell will never behave exactly like bash, It's fundamentally different. Our hope with PowerShell, was to have an equivalently flexible interactive experience while retaining the ability to script with true objects.

Whether a quoted string or subexpression comes first matters:

In both cases, you simply have a delimited token. '...' or $(...). After the trailing delimiter, scanning for the next token begins. Spaces are not needed to separated the tokens. The only thing that matter is that a complete token has been read.

following a leading quoted string is interpreted as [string] property access

Not exactly. If a '.' appears after a completed argument (string literal, variable, etc) then it will be treated as a member accessor expression, with the constraint that there can be no space before the '.' and the preceding token.
PS[1] (130) > write-output @{a=1;b=2}.count # Literal hashtable
2
PS[1] (131) > write-output "abc".length  # Literal string
3
PS[1] (132) > write-output (get-date).dayofweek # Cmdlet call
Thursday

as the initial char. in something that turns out not to be a parameter name results in 2 arguments with the presence of ':'

No. The type of a token is determined at parse time and only at parse time. How a parameter token (-param:) gets treated eventually depends on the type of command that is being bound. With [cmdletbinding()], if there isn't a format parameter corresponding to the actual parameter, you get an error. With simple functions, if there is a formal parameter with a matching name, then it gets bound otherwise it gets added to $args. If it's a native command, it gets passed as a string since that's all that can be passed to a native command. There is a fiddle that tries to stitch the two tokens "-parm:" and "value" back into a single string for literal arguments and there are requests to extend this fiddle. I'm beginning to think that would be a bad idea since the current hack seems to be causing people to make untrue assumptions. The more special cases there are the harder it is to explain.

@BrucePay:
First things first:
I appreciate the detailed response and illuminating peek behind the curtain.
Any changes to the existing behavior are probably too risky, but I want us to have clarity what a better approach might look like if and when the time comes where a change is feasible.
In the meantime, the list I've compiled is hopefully useful to document for others coming from a Bash / cmd background how the actual behavior may differ from their expectations.

PowerShell will never behave exactly like bash, It's fundamentally different.
the values of variables are expanded in place as strings. This could not work for PowerShell with live object.

Absolutely, in general, but in the case at hand - the compound tokens I describe - we are also dealing with strings - at least that's the only sensible interpretation.
One way to simplify the behavior is to consistently treat the components of a compound token as separate arguments, which is a simple rule that would be easy to remember.
All you would then have to tell Bash / cmd users is: in order to join distinct syntax constructs to form a single (string) argument, always use string interpolation explicitly, i.e., enclose the entire token in "...".

In both cases, you simply have a delimited token. '...' or $(...). After the trailing delimiter, scanning for the next token begins. Spaces are not needed to separated the tokens.

Except that in the case of hi"there" - as opposed to "hi"there - spaces are needed, given that it is interpreted as a single argument.

If a '.' appears after a completed argument (string literal, variable, etc) then it will be treated as a member accessor expression, with the constraint that there can be no space before the '.' and the preceding token.

While that makes perfect sense for an expression with a leading $ (e.g., $(Get-Date).Ticks), I question the value of doing it for string literals (e.g., 'foo'.bar).
Granted, you could do something like 'foo'.ToUpper(), but the likelihood that the user intent is to treat the . as a literal and conceive of the token as a multi-quoting-style string is much greater.
(Again, if 'foo' and .bar, due to being syntactically distinct elements, consistently became distinct arguments, that problem wouldn't arise.)

There is a fiddle that tries to stitch the two tokens "-parm:" and "value" back into a single string for literal arguments and there are requests to extend this fiddle. I'm beginning to think that would be a bad idea since the current hack seems to be causing people to make untrue assumptions. The more special cases there are the harder it is to explain.

I whole-heartedly agree with the sentiment about special cases.
Applying the hack consistently whenever something turns out not to be a named parameter reduces the number of special cases.
The alternative is to disallow the use of such pseudo-parameters (except when calling external programs) and fail in their presence, informing users they need to use quoting.
By contrast, the current behavior of simply splitting the token into two arguments is useless.

@mklement0: if this is purely a doc bug now, would you mind closing this issue so we can track everything in PowerShell/PowerShell-Docs#3038 ? Thanks!

Sounds good, @joeyaiello.

@mklement0
I think I can explain all your "surprising aspects". (using @BrucePay's answer for some information) Note: the explanations are somewhat comprehensive so that this comment can be a stand alone description of the actual behaviour, not just a reply/analysis of your issue.
Asymmetry: Whether a quoted string or subexpression comes first matters:
Actually, the problem here is one of definition. The idea that command arguments are always separated by (un-escaped) white-space (as in bash) and the bits between the spaces are the individual "arguments" no longer applies when the command line is parsed according to a (complex) grammar where white-space is just one of several token separators/terminators. If a quoted string or subexpression is the first thing seen (in a space delimited "argument") then it is not the first part of the argument, it is an entire argument (after evaluation in expression mode). What follows is another argument (evaluated in expression or argument mode as appropriate). If the beginning of the "argument" (first token) does not invoke expression mode evaluation (e.g. the quoted string or subexpression is not "first") then the "argument" is parsed in argument mode. Even then, the "argument" might be terminated by something other than finding space (e.g. a grouping ( ) ). There is no "asymmetry" because in one case you have two syntactically separate arguments and in the other case you have one argument with parts that just look like the first case re-arranged (two apples vs one orange or maybe an apple and a kumquat vs an orange).
. following a leading quoted string is interpreted as [string] property access
This is actually a derivative of the previous one. The leading quoted string switches evaluation to expression mode. So when dealing with a string literal, which makes more sense, treating 'foo'.bar as a member access or as an automatic concatenation?
I would suggest that the answer depends upon which is the easiest to do in some other way (and then choose the meaning to be the other one).
If the user's intent was to create a concatenation of 2 literal strings, well that's trivial - 'foo.bar'
What about a non-literal? 'foo'.$x Again, that's easy - "foo.$x"
In each case it was even the same number of characters, just re-arranged slightly (and change ' into ").
Now, what if we really wanted to do a member access on a literal string, how else could we do that? It's not that difficult - $('foo').bar or $('foo').$x- but it is more complicated. So let's choose member access since it sometimes makes things just that little bit easier without increasing the difficulty the rest of the time.
Further, as @BrucePay noted, the sequences $( ), " " and ' ' are all "delimited tokens". Initially I considered adding { } (script block) as it is a "delimited" token but its behaviour differs in the next section (argument not beginning with delimited token).
If an argument begins with a delimited token then it ends with the token unless immediately followed by a member access or indexer expression (.something with no spaces allowed or [ numeric expression ]) in which case it is (always) a member access / indexed token, which ends at the end of the member access / indexer expression unless immediately followed ... (and so on, recursively). Thus, the behaviour is consistent for all forms. Making (expandable or verbatim) string tokens act differently would create divergent behaviour (aka special case).
. as the initial char. followed by a quoted string results in 2 arguments
This one took a bit of research (and some guess work due, I suspect, to inadequate documentation). In fact, the "problem" is bigger than stated. A single . immediately followed by an expression of any kind results in separate arguments. Of course, this would be expected for grouping ( ) and script blocks { } but also applies to subexpressions $( ), strings (both types) and variable access (with or without member access). Why? Because (I think) a single . is being parsed as a call operator. Yes, I know it is referred to as the "dot sourcing operator" but this only applies when invoking powershell script files. . works exactly like & when the target is something other than a powershell script file. It just needs to be separated from its argument (to prevent it being treated as part of a file path). If its argument is a token of itself (such as a string or variable reference) then no space is necessary. Obviously, using . as a call operator is only meaningful if it is the first token in the command but apparently the token parser doesn't care where it is, just whether it satisfies the grammar for being treated as a separate token, i.e. NOT prepended to a bare word.
- as the initial char. in something that turns out not to be a parameter name results in 2 arguments with the presence of : or .
- as the initial char. causes embedded variable references not to be expanded
I suspect these two are different facets of the same "problem". By beginning an argument with -, I suspect that powershell prepares to form a named parameter argument and that's how it's parsed. If the "argument" matches a certain pattern (see below) then it is considered to be a parameter name (and possible value). The following regular expression defines what is considered to be a named parameter argument (for ASCII only, Unicode more complicated):
while ( $argstr = read-host ) {
  if ( $argstr -match '(-[_A-Za-z?][^"&''(,.:;[{|}]*(?::|(?=[ &(),.[{|}])))?(.*)' ) {
    "Named parameter: {0}`nRemainder: {1}" -f $matches[1..2]
  }
}

Interestingly, among the characters that terminate a parameter name, : is parsed into the parameter name while the rest start the next token. Even if powershell discovers that there is no parameter of that name, it still passes the separated name/value arguments (presumably so the invoked cmdlet/function can figure out what it wants to do), only restoring the original argument text if invoking a native command. Note: the same thing happens if a cmdlet/function is supplied with a splatting hash table with unexpected parameter names. The extra names and values appear in $args as -paramname: followed by the value in the next element.
Once powershell is expecting that an argument includes a parameter name specification, why would it apply variable expansion? This is another case of "which is easier to do another way". If you want programmatic control over which parameters get supplied, a splatting hash table is a better way (at least for invoking cmdlets/functions). If you allowed variable substitutions in parameter names then how do you specify a named parameter argument with a $ in its name (totally legal)
function contrived(${heybig$pender}) { echo ${heybig$pender} }

contrived -heybig$pender:$false

You could require the $ to be escaped but then it doesn't look like the same parameter name. I also point out (tongue firmly in cheek :smirk:) that programmatically adjusting parameter names is text manipulation not object manipulation (like splatting). Very 1990's and not powershelly at all but possibly necessary when invoking native commands because splatting is rather cmdlet/function centric (for native commands, just use expandable strings for the parameter names/values). An interesting, and perhaps even more "surprising", aspect of the "is it a parameter name" check is that, even if the pattern match fails, there is no backtracking. A variable substitution will be ignored up to the point where the pattern match fails but will occur if it appears after the point of failure
Write-Host -param$HOME'quoted'$HOME.length
-param$HOMEquotedC:\users\user.length

so it would seem that there are actually 3 modes when parsing a command line, expression mode, argument mode AND parameter name literal mode. The initial - selects parameter name literal mode and then the invalid parameter name character (' in the example) switches back to argument mode from that point.
And, of course, essentially none of the above is detailed in the documentation. Actually, what I found most lacking in the documentation (until I start researching this comment) was the explanation of the behaviour when the beginning of the argument is NOT an expression / parameter name literal mode invoking token, i.e. a bare word or direct variable access (no member access / indexer). In this case, it seems, the resulting argument is the concatenation of the value of every subsequent delimited token (not script blocks), direct variable access token (ignoring potential member access / indexer expressions) or bare word token (the value being the characters comprising it, between the end of the previous token and the beginning of the next token type) until a token other than one of these is found. Also, if the "value" of a subexpression is an array or maybe anything that implements [IList] (but not [IEnumerable] since hash tables aren't enumerated) then it is enumerated and all the elements converted to strings and joined by space. All this is to be gleaned from several unexplained examples. (Even this description is likely wrong or incomplete.)
Comments regarding opinions:

PowerShell will never behave exactly like bash, it's fundamentally different.
(In bash) The values of variables are expanded in place as strings. This could not work for PowerShell with live object(s).

Absolutely, in general, but in the case at hand - the compound tokens I describe - we are also dealing with strings - at least that's the only sensible interpretation.

The bit that was not stated by @BrucePay in the above changes this a bit

The values of variables (which are all strings) are expanded in place as strings.

So yes, the compound tokens are strings BUT they are generated from the values of objects with many properties of varying types that need to be selected (individually or in groups) and converted to strings. Clearly a much more complicated grammar and evaluation process is required. Just assuming that the default interpretation of a (string like) construct is intended to be a (literal) string doesn't allow much versatility and could introduce complexity and confusion if that interpretation differed from the same construct's meaning elsewhere.

Granted, you could do something like 'foo'.ToUpper(), but the likelihood that the user intent is to treat the . as a literal and conceive of the token as a multi-quoting-style string is much greater.

I myself wouldn't think of it that way because just about everywhere else in powershell, that is syntactically similar, it would be a member access operator. Syntactically similar means a string with nothing stuck on the front of it. I suspect that just about everybody would look at
(nothing here touching the string) 'foo'.ToUpper()

and think, "Yep, member access", not "Um, member access unless maybe it is a command argument" (the second one being a fairly typical response to a "special case"). Just because a semantic grammar allows largely useless constructs doesn't mean those constructs should be repurposed to provide something more meaningful, particularly if there already exist equally effective ways to achieve the desired result. The useless constructs will simply not be used. Is this a waste? Think about this. A regular expression defines a set of strings that match the expression. How many of us actually generate every string from that expression (assuming it is a finite set)? We just use the expression to achieve a certain result. So it is here. The powershell grammar allows things like 'foo'.ToUpper() but that doesn't mean anybody has to use it. It's not a waste because the existence of the grammar (and thus 'foo'.ToUpper()) allows us to achieve our goal. The trick (as it relates to this thread) is to understand how the grammar works so that the difference between things like 'foo'.bar and bar.'foo' in a command argument is well known. To this end, the fewer "unless maybe"s, the better.
Also, you probably wouldn't do 'foo'.ToUpper() very often but you might like the ability to do
'Some really very long string that contains a whole lot of characters and might even extend over several lines'.ToCharArray()

Sure, you could do $([char[]]'Some really ... several lines'), which is similar, so how about
'55'.PadLeft(20,'#')

You'd have to enter (exactly) 18 #s. Tedious, much! What if the string were actually compound with unknown length
"$intpart.${fracpart}e$exppart".PadLeft(20,'~')

Granted, these are somewhat esoteric examples and the last one isn't a "constant" string but then how often would you want to auto concatenate 2 known strings. From the last example, would you want to split the behaviour up, not between strings ' '/" " and non-strings $( ) but between verbatim strings and the other (potentially non-constant) expandable strings and subexpressions?

(Again, if 'foo' and .bar, due to being syntactically distinct elements, consistently became distinct arguments, that problem wouldn't arise.)

So what about the syntactically distinct parts of

$Host.Name
$(Get-Date).Ticks
@(1, 2).Count
(Get-Date).Ticks

Is 'foo' just an object with properties like the example objects, or is it special?
(Just a note: your initial examples contain foo"bar" and bar"foo" which are syntactically identical. Did you mean "bar"foo?)

@UberKluger:
The point of creating this issue was to point out that the existing behavior - even though it can be explained - is:

counterintuitive
governed by too many, inconsistent rules.

And, yes, in the initial post I meant to contrast foo"bar" and "bar"foo (now fixed), and their different behavior is a prime example of these issues.
Given that changing to a straightforward a compound-token-is-always-implicitly-an-expandable-string approach is not an option due to backward-compatibility concerns, the next best thing is to document these rules (when I initially created the issue, I was wondering whether at least some inconsistencies could be remedied as bucket 3 changes).
I've personally stopped contributing to this and the documentation repo, so I am unsubscribing from this thread, but if you feel you have an explanation of the current behavior that should be part of the documentation (or can at least serve as the basis for writing help content), I encourage you to create an issue in the documentation repo.


We welcome your contributions.

I made mostly cosmetic changes, but also wanted to raise the possibility of soliciting contributions from others. That part is separated in its own commit and we can discuss how we see external engineers contributing to our process. Thoughts?

Perfect 👍
We could consider adding a "Question for Artsy Engineering" issue template, and soliciting for  questions as issues too

Thanks @orta, so merge?

Sure 👍


[Bug] Unable to enter game with latest meta core

Verify Steps

[X] Tracker 我已经在 Issue Tracker 中找过我要提出的问题
[X] Latest 我已经使用最新 Dev 版本测试过，问题依旧存在
[X] Core 这是 OpenClash 存在的问题，并非我所使用的 Clash 或 Meta 等内核的特定问题
[X] Meaningful 我提交的不是无意义的 催促更新或修复 请求

OpenClash Version
v0.45.80-beta
Bug on Environment
Official OpenWrt
Bug on Platform
Linux-arm64
To Reproduce

update to latest alpha meta core alpha-g106a5877
multiple time try update and revert back to version alpha-g67605b22

Describe the Bug
unable to enter the game after updating meta core to version alpha-g106a5877, it was fine before this version. already try multiple time update and revert back to previous version with same result (only happened with latest version). Same config when trying nothing changed.
OpenClash Log
there is no error or warning on logs.
OpenClash Config
No response
Expected Behavior
fix
Screenshots
No response

after got the time to find, it seem the problem is when using rules:
rules:

NETWORK,UDP,DIRECT

cant enter the game when using that rules but it fine on meta core version alpha-g67605b22 and before that

fixed with latest meta core alpha-gd00d83ab
thanks


Suggesting foreach code-snippet for iterable variables in same file

Description:
It would be better for if we can suggest foreach iterator for the iterables such as lines in the same file.
class Foo {
  public function print() {
    string[] lines = self.getPrintText();
    <cursor>
  }
}

Then we can suggest generate a specially crafted foreach like below(without using var);
foreach string line in lines {
      <cursor>
}

Further we can also suggest an indexed loop:
foreach int i in 0..< lines.length() {
    string line = lines[i];
    <cursor>
}

Affected Versions:
2.0.0-SLP3-SNAPSHOT

We have added these completions support at lines.<cursor>. Therefore closing this.


Prometheus issue: Context Deadline Exceeded

⚠ Please verify that this question has NOT been raised before.

[X] I checked and didn't find similar issue

🛡 Security Policy

[X] I agree to have read this project Security Policy

📝 Describe your problem
Hello,
I am trying to enabled prometheus endpoint; however, no matter what configuration options I try one of two error messages.
I am not sure what am i doing wrong here.
global:
  scrape_interval: 1m
  query_log_file: /prometheus/query.log

scrape_configs:
  - job_name: 'prometheus'
    scrape_interval: 1m
    static_configs:
      - targets: ['localhost:9090']

  - job_name: 'node'
    static_configs:
      - targets: ['node-exporter:9100']

  - job_name: 'uptime'
    scrape_interval: 30s
    scheme: http
    metrics_path: '/metrics'
    static_configs:
      - targets: ['xxx.xxx.xxx.xxx:3002']
    basic_auth: # Only needed if authentication is enabled (default)
      username: <xxx>
      password: <xxx>

📝 Error Message(s) or Log
Get "http://xxx.xxx.xxx.xxx:3002/metrics": context deadline exceeded
🐻 Uptime-Kuma Version
1.23.13
💻 Operating System and Arch
Ubuntu 20.04
🌐 Browser
Chrome
🖥 Deployment Environment

what is the second error message you talked about?
is port 3002 the correct port in your network environment and reachable from Prometheus?
are your certs working? (See https://stackoverflow.com/questions/49817558/context-deadline-exceeded-prometheus for many other causes)
have you ever enabled an API key? (They switch the Auth fom user/PW to only allow API keys)

what is the second error message you talked about?
is port 3002 the correct port in your network environment and reachable from Prometheus?
are your certs working? (See https://stackoverflow.com/questions/49817558/context-deadline-exceeded-prometheus for many other causes)
have you ever enabled an API key? (They switch the Auth fom user/PW to only allow API keys)

Thank a lot, increasing the times: scrape_interval and scrape timeout are fixed.

Okay. Let's gather a bit more information if we should include his in the docs:

how many montors do you have?
how long does the /metric page take to load?
what monitors do you have?
anything else that is noteworthy (CPU limiting, ..)

Okay. Let's gather a bit more information if we should include his in the docs:

how many montors do you have?
how long does the /metric page take to load?
what monitors do you have?
anything else that is noteworthy (CPU limiting, ..)

I have 8 VPNs and 9 servers monitored through ping, it takes around 2 minutes to respond kuma to prometheus. I mounted on an i3 pc with 8 GB of ram

That does not quite sound like the latency I would expect.
How fast is your disk in comparison to your retention?
Are you maybe running with lots of retention on a SD-Card, EMMC or HDD?
If it is an i3 is not quite relevant, we will only ever use 1 core as we run JS.
What is, is if there are noisy neighours which are stealing that CPU or are using IO-Time during the timeframe when we process the metrics-request.


Use core.symlinks to attempt symlink testing on Windows

This is not a code change since this bootstrapper is managed manually (for now).
The build is currently broken because (my hypothesis) the symlink changes introduced in 029676f131e776a2f580d38cd6ccf94a815067c8 were expected to work on Windows. We need to enable core.symlinks to correctly checkout the symlinks on the Windows platform (here's a StackOverflow, here be dragons). This does expect that Windows checkouts are run as Administrator, unless developer mode is already activated on Windows Server Core AMIs (probably not?)

Once I configured it with --system so the Buildkite user account runs with it, it started working (the bootstrapper must run on a different user account). Our test agent stack for Windows already had WindowsAdministrator configured to true.


[regression] TextFormField has a white (invisible) text color on latest master

Found a regression in the text form field's default text color, on latest master the default text color is white (aka invisible) while on latest stable it is black. Found while creating https://github.com/flutter/flutter/issues/73309.
Steps to reproduce

Run the code bellow

import 'package:flutter/material.dart';

void main() => runApp(
    MaterialApp(
      title: 'Flutter Demo',
      home: Scaffold(
        body: Center(
          child: TextFormField(
            initialValue: "Hello",
          ),
        ),
      ),
    ),
  );

Expected Results: a text field with black text color
Actual Results: a text field with a invisible text (the text is there but has a white color)
Note: if you type any text in the field the color of the text will turn black.

master channel
stable channel

Critical
This issue seems to be happening with all theme properties and is affecting all widgets that uses display any text in the app. Seems to be an inheritance theme issue which was introduced by https://github.com/flutter/flutter/pull/69050 that may be causing this.
flutter doctor -v
/Users/pedromassango/dev/SDKs/flutter_master/bin/flutter doctor --verbose
[✓] Flutter (Channel master, 1.26.0-2.0.pre.177, on Mac OS X 10.15.7 19H2 darwin-x64, locale en)
    • Flutter version 1.26.0-2.0.pre.177 at /Users/pedromassango/dev/SDKs/flutter_master
    • Framework revision 7c26c8fbb1 (4 hours ago), 2021-01-05 01:19:03 -0500
    • Engine revision b9dc0cf1d8
    • Dart version 2.12.0 (build 2.12.0-179.0.dev)

[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.2)
    • Android SDK at /Users/pedromassango/Library/Android/sdk
    • Platform android-30, build-tools 30.0.2
    • Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6915495)
    • All Android licenses accepted.

[!] Xcode - develop for iOS and macOS (Xcode 12.1)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 12.1, Build version 12A7403
    ! CocoaPods 1.9.3 out of date (1.10.0 is recommended).
        CocoaPods is used to retrieve the iOS and macOS platform side's plugin code that responds to your plugin usage on the Dart side.
        Without CocoaPods, plugins will not work on iOS or macOS.
        For more info, see https://flutter.dev/platform-plugins
      To upgrade see https://guides.cocoapods.org/using/getting-started.html#installation for instructions.

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 4.1)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6915495)

[✓] IntelliJ IDEA Community Edition (version 2020.3.1)
    • IntelliJ at /Applications/IntelliJ IDEA CE.app
    • Flutter plugin version 52.1.5
    • Dart plugin version 203.6912

[✓] VS Code (version 1.51.1)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.16.0

[✓] Connected device (4 available)
    • Redmi 5 Plus (mobile)      • 0258ff700005  • android-arm64  • Android 8.1.0 (API 27)
    • sdk gphone x86 64 (mobile) • emulator-5554 • android-x64    • Android 11 (API 30) (emulator)
    • macOS (desktop)            • macos         • darwin-x64     • Mac OS X 10.15.7 19H2 darwin-x64
    • Chrome (web)               • chrome        • web-javascript • Google Chrome 87.0.4280.88

! Doctor found issues in 1 category.
Process finished with exit code 0

Another code sample that showcase the bug in other widgets. Running the code bellow (don't hot-reload/restart) all texts will be invisible, if you type anything in the text fields they all will appear.
import 'package:flutter/material.dart';

void main() => runApp(MyApp());

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
        debugShowCheckedModeBanner: false,
        title: 'Testing',
        home: Scaffold(
          body: Padding(
            padding: const EdgeInsets.all(32),
            child: Column(
              children: [
                Text('Helllo'),
                RaisedButton(child: Text('Button'), onPressed: () {},),
                FlatButton(child: Text('Button'), onPressed: () {},),
                TextField(controller: TextEditingController(text: 'Text Field'),),
                TextFormField(initialValue: 'Text Form Field',)
              ],
            ),
          ),
        ),
    );
  }
}

Another code sample that showcase the bug in other widgets. Running the code bellow (don't hot-reload/restart) all texts will be invisible, if you type anything in the text fields they all will appear.
import 'package:flutter/material.dart';

void main() => runApp(MyApp());

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
        debugShowCheckedModeBanner: false,
        title: 'Testing',
        home: Scaffold(
          body: Padding(
            padding: const EdgeInsets.all(32),
            child: Column(
              children: [
                Text('Helllo'),
                RaisedButton(child: Text('Button'), onPressed: () {},),
                FlatButton(child: Text('Button'), onPressed: () {},),
                TextField(controller: TextEditingController(text: 'Text Field'),),
                TextFormField(initialValue: 'Text Form Field',)
              ],
            ),
          ),
        ),
    );
  }
}

Verified and issue replicable on latest master. The text is being rendered in white font color initially when app launches which makes it looks like it isn't there, but then shows up in black color font after tapping on corresponding widget (ex : TextField, Button).
https://user-images.githubusercontent.com/67046386/103650140-942aa700-4f85-11eb-9209-57dd7eb0523e.mov

master flutter doctor -v

[✓] Flutter (Channel master, 1.26.0-2.0.pre.179, on Mac OS X 10.15.4 19E2269
    darwin-x64, locale en-IN)
    • Flutter version 1.26.0-2.0.pre.179 at
      /Users/dhs/documents/Fluttersdk/flutter
    • Framework revision a293c82251 (4 hours ago), 2021-01-05 04:04:03 -0500
    • Engine revision b7352132cd
    • Dart version 2.12.0 (build 2.12.0-179.0.dev)

[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.0)
    • Android SDK at /Users/dhs/Library/Android/sdk
    • Platform android-30, build-tools 30.0.0
    • Java binary at: /Applications/Android
      Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build
      1.8.0_242-release-1644-b3-6915495)
    • All Android licenses accepted.

[!] Xcode - develop for iOS and macOS (Xcode 12.0.1)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 12.0.1, Build version 12A7300
    ! CocoaPods 1.9.3 out of date (1.10.0 is recommended).
        CocoaPods is used to retrieve the iOS and macOS platform side's plugin
        code that responds to your plugin usage on the Dart side.
        Without CocoaPods, plugins will not work on iOS or macOS.
        For more info, see https://flutter.dev/platform-plugins
      To upgrade see
      https://guides.cocoapods.org/using/getting-started.html#installation for
      instructions.

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 4.1)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build
      1.8.0_242-release-1644-b3-6915495)

[✓] VS Code (version 1.52.1)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.16.0

[✓] Connected device (3 available)
    • sdk gphone x86 64 arm64 (mobile) • emulator-5556 • android-x64    •
      Android 11 (API 30) (emulator)
    • macOS (desktop)                  • macos         • darwin-x64     • Mac OS
      X 10.15.4 19E2269 darwin-x64
    • Chrome (web)                     • chrome        • web-javascript • Google
      Chrome 87.0.4280.88

! Doctor found issues in 1 category.

The same behavior works as expected on latest dev and beta.

dev and beta flutter doctor -v
[✓] Flutter (Channel dev, 1.26.0-1.0.pre, on Mac OS X 10.15.4 19E2269
    darwin-x64, locale en-IN)
    • Flutter version 1.26.0-1.0.pre at /Users/dhs/documents/Fluttersdk/flutter
    • Framework revision 63062a6443 (3 weeks ago), 2020-12-13 23:19:13 +0800
    • Engine revision 4797b06652
    • Dart version 2.12.0 (build 2.12.0-141.0.dev)

[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.0)
    • Android SDK at /Users/dhs/Library/Android/sdk
    • Platform android-30, build-tools 30.0.0
    • Java binary at: /Applications/Android
      Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build
      1.8.0_242-release-1644-b3-6915495)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 12.0.1)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 12.0.1, Build version 12A7300
    • CocoaPods version 1.9.3

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 4.1)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build
      1.8.0_242-release-1644-b3-6915495)

[✓] VS Code (version 1.52.1)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.16.0

[✓] Connected device (3 available)
    • sdk gphone x86 64 arm64 (mobile) • emulator-5556 • android-x64    •
      Android 11 (API 30) (emulator)
    • macOS (desktop)                  • macos         • darwin-x64     • Mac OS
      X 10.15.4 19E2269 darwin-x64
    • Chrome (web)                     • chrome        • web-javascript • Google
      Chrome 87.0.4280.88

• No issues found!

[✓] Flutter (Channel beta, 1.25.0-8.1.pre, on Mac OS X 10.15.4 19E2269
    darwin-x64, locale en-IN)
    • Flutter version 1.25.0-8.1.pre at /Users/dhs/documents/Fluttersdk/flutter
    • Framework revision 8f89f6505b (3 weeks ago), 2020-12-15 15:07:52 -0800
    • Engine revision 92ae191c17
    • Dart version 2.12.0 (build 2.12.0-133.2.beta)

[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.0)
    • Android SDK at /Users/dhs/Library/Android/sdk
    • Platform android-30, build-tools 30.0.0
    • Java binary at: /Applications/Android
      Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build
      1.8.0_242-release-1644-b3-6915495)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 12.0.1)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 12.0.1, Build version 12A7300
    • CocoaPods version 1.9.3

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 4.1)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build
      1.8.0_242-release-1644-b3-6915495)

[✓] VS Code (version 1.52.1)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.16.0

[✓] Connected device (2 available)
    • sdk gphone x86 64 arm64 (mobile) • emulator-5556 • android-x64    •
      Android 11 (API 30) (emulator)
    • Chrome (web)                     • chrome        • web-javascript • Google
      Chrome 87.0.4280.88

• No issues found!

Verified and issue replicable on latest master. The text is being rendered in white font color initially when app launches which makes it looks like it isn't there, but then shows up in black color font after tapping on corresponding widget (ex : TextField, Button).
https://user-images.githubusercontent.com/67046386/103650140-942aa700-4f85-11eb-9209-57dd7eb0523e.mov

master flutter doctor -v

[✓] Flutter (Channel master, 1.26.0-2.0.pre.179, on Mac OS X 10.15.4 19E2269
    darwin-x64, locale en-IN)
    • Flutter version 1.26.0-2.0.pre.179 at
      /Users/dhs/documents/Fluttersdk/flutter
    • Framework revision a293c82251 (4 hours ago), 2021-01-05 04:04:03 -0500
    • Engine revision b7352132cd
    • Dart version 2.12.0 (build 2.12.0-179.0.dev)

[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.0)
    • Android SDK at /Users/dhs/Library/Android/sdk
    • Platform android-30, build-tools 30.0.0
    • Java binary at: /Applications/Android
      Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build
      1.8.0_242-release-1644-b3-6915495)
    • All Android licenses accepted.

[!] Xcode - develop for iOS and macOS (Xcode 12.0.1)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 12.0.1, Build version 12A7300
    ! CocoaPods 1.9.3 out of date (1.10.0 is recommended).
        CocoaPods is used to retrieve the iOS and macOS platform side's plugin
        code that responds to your plugin usage on the Dart side.
        Without CocoaPods, plugins will not work on iOS or macOS.
        For more info, see https://flutter.dev/platform-plugins
      To upgrade see
      https://guides.cocoapods.org/using/getting-started.html#installation for
      instructions.

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 4.1)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build
      1.8.0_242-release-1644-b3-6915495)

[✓] VS Code (version 1.52.1)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.16.0

[✓] Connected device (3 available)
    • sdk gphone x86 64 arm64 (mobile) • emulator-5556 • android-x64    •
      Android 11 (API 30) (emulator)
    • macOS (desktop)                  • macos         • darwin-x64     • Mac OS
      X 10.15.4 19E2269 darwin-x64
    • Chrome (web)                     • chrome        • web-javascript • Google
      Chrome 87.0.4280.88

! Doctor found issues in 1 category.

The same behavior works as expected on latest dev and beta.

dev and beta flutter doctor -v
[✓] Flutter (Channel dev, 1.26.0-1.0.pre, on Mac OS X 10.15.4 19E2269
    darwin-x64, locale en-IN)
    • Flutter version 1.26.0-1.0.pre at /Users/dhs/documents/Fluttersdk/flutter
    • Framework revision 63062a6443 (3 weeks ago), 2020-12-13 23:19:13 +0800
    • Engine revision 4797b06652
    • Dart version 2.12.0 (build 2.12.0-141.0.dev)

[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.0)
    • Android SDK at /Users/dhs/Library/Android/sdk
    • Platform android-30, build-tools 30.0.0
    • Java binary at: /Applications/Android
      Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build
      1.8.0_242-release-1644-b3-6915495)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 12.0.1)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 12.0.1, Build version 12A7300
    • CocoaPods version 1.9.3

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 4.1)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build
      1.8.0_242-release-1644-b3-6915495)

[✓] VS Code (version 1.52.1)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.16.0

[✓] Connected device (3 available)
    • sdk gphone x86 64 arm64 (mobile) • emulator-5556 • android-x64    •
      Android 11 (API 30) (emulator)
    • macOS (desktop)                  • macos         • darwin-x64     • Mac OS
      X 10.15.4 19E2269 darwin-x64
    • Chrome (web)                     • chrome        • web-javascript • Google
      Chrome 87.0.4280.88

• No issues found!

[✓] Flutter (Channel beta, 1.25.0-8.1.pre, on Mac OS X 10.15.4 19E2269
    darwin-x64, locale en-IN)
    • Flutter version 1.25.0-8.1.pre at /Users/dhs/documents/Fluttersdk/flutter
    • Framework revision 8f89f6505b (3 weeks ago), 2020-12-15 15:07:52 -0800
    • Engine revision 92ae191c17
    • Dart version 2.12.0 (build 2.12.0-133.2.beta)

[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.0)
    • Android SDK at /Users/dhs/Library/Android/sdk
    • Platform android-30, build-tools 30.0.0
    • Java binary at: /Applications/Android
      Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build
      1.8.0_242-release-1644-b3-6915495)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 12.0.1)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 12.0.1, Build version 12A7300
    • CocoaPods version 1.9.3

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 4.1)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build
      1.8.0_242-release-1644-b3-6915495)

[✓] VS Code (version 1.52.1)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.16.0

[✓] Connected device (2 available)
    • sdk gphone x86 64 arm64 (mobile) • emulator-5556 • android-x64    •
      Android 11 (API 30) (emulator)
    • Chrome (web)                     • chrome        • web-javascript • Google
      Chrome 87.0.4280.88

• No issues found!

first introduced in a7030ad977d5ccd177e9f9bea6e34fa01321bd1c  /cc @chinmaygarde

first introduced in a7030ad977d5ccd177e9f9bea6e34fa01321bd1c  /cc @chinmaygarde

@pedromassango @darshankawar  it no longer seems reproducible for me on the latest master branch. Could you confirm it's been fixed?

@pedromassango @darshankawar  it no longer seems reproducible for me on the latest master branch. Could you confirm it's been fixed?

How did this not get caught by golden tests involving text?

How did this not get caught by golden tests involving text?

Marking this as P0 until we're sure it's resolved.

Marking this as P0 until we're sure it's resolved.

@LongCatIsLooong Yes, verified on latest master. I don't see the issue anymore.

flutter doctor -v
[✓] Flutter (Channel master, 1.26.0-2.0.pre.220, on Mac OS X 10.15.4 19E2269
    darwin-x64, locale en-IN)
    • Flutter version 1.26.0-2.0.pre.220 at
      /Users/dhs/documents/Fluttersdk/flutter
    • Framework revision 01babcac16 (85 minutes ago), 2021-01-06 22:34:03 -0500
    • Engine revision 1758eaa4ed
    • Dart version 2.12.0 (build 2.12.0-179.0.dev)

[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.0)
    • Android SDK at /Users/dhs/Library/Android/sdk
    • Platform android-30, build-tools 30.0.0
    • Java binary at: /Applications/Android
      Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build
      1.8.0_242-release-1644-b3-6915495)
    • All Android licenses accepted.

[!] Xcode - develop for iOS and macOS (Xcode 12.0.1)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 12.0.1, Build version 12A7300
    ! CocoaPods 1.9.3 out of date (1.10.0 is recommended).
        CocoaPods is used to retrieve the iOS and macOS platform side's plugin
        code that responds to your plugin usage on the Dart side.
        Without CocoaPods, plugins will not work on iOS or macOS.
        For more info, see https://flutter.dev/platform-plugins
      To upgrade see
      https://guides.cocoapods.org/using/getting-started.html#installation for
      instructions.

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 4.1)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build
      1.8.0_242-release-1644-b3-6915495)

[✓] VS Code (version 1.52.1)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.16.0

[✓] Connected device (3 available)
    • sdk gphone x86 64 arm64 (mobile) • emulator-5554 • android-x64    •
      Android 11 (API 30) (emulator)
    • macOS (desktop)                  • macos         • darwin-x64     • Mac OS
      X 10.15.4 19E2269 darwin-x64
    • Chrome (web)                     • chrome        • web-javascript • Google
      Chrome 87.0.4280.88

! Doctor found issues in 1 category.

@LongCatIsLooong Yes, verified on latest master. I don't see the issue anymore.

flutter doctor -v
[✓] Flutter (Channel master, 1.26.0-2.0.pre.220, on Mac OS X 10.15.4 19E2269
    darwin-x64, locale en-IN)
    • Flutter version 1.26.0-2.0.pre.220 at
      /Users/dhs/documents/Fluttersdk/flutter
    • Framework revision 01babcac16 (85 minutes ago), 2021-01-06 22:34:03 -0500
    • Engine revision 1758eaa4ed
    • Dart version 2.12.0 (build 2.12.0-179.0.dev)

[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.0)
    • Android SDK at /Users/dhs/Library/Android/sdk
    • Platform android-30, build-tools 30.0.0
    • Java binary at: /Applications/Android
      Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build
      1.8.0_242-release-1644-b3-6915495)
    • All Android licenses accepted.

[!] Xcode - develop for iOS and macOS (Xcode 12.0.1)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 12.0.1, Build version 12A7300
    ! CocoaPods 1.9.3 out of date (1.10.0 is recommended).
        CocoaPods is used to retrieve the iOS and macOS platform side's plugin
        code that responds to your plugin usage on the Dart side.
        Without CocoaPods, plugins will not work on iOS or macOS.
        For more info, see https://flutter.dev/platform-plugins
      To upgrade see
      https://guides.cocoapods.org/using/getting-started.html#installation for
      instructions.

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 4.1)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build
      1.8.0_242-release-1644-b3-6915495)

[✓] VS Code (version 1.52.1)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.16.0

[✓] Connected device (3 available)
    • sdk gphone x86 64 arm64 (mobile) • emulator-5554 • android-x64    •
      Android 11 (API 30) (emulator)
    • macOS (desktop)                  • macos         • darwin-x64     • Mac OS
      X 10.15.4 19E2269 darwin-x64
    • Chrome (web)                     • chrome        • web-javascript • Google
      Chrome 87.0.4280.88

! Doctor found issues in 1 category.

Can someone figure out where this got fixed? We should update https://github.com/flutter/flutter/wiki/Bad-Builds and mark any builds affected by this as bad.

Can someone figure out where this got fixed? We should update https://github.com/flutter/flutter/wiki/Bad-Builds and mark any builds affected by this as bad.

https://github.com/flutter/flutter/pull/73380. None of the commits has been tagged it seems.

https://github.com/flutter/flutter/pull/73380. None of the commits has been tagged it seems.

Thanks.  @pcsosinski - is there some way we track these? I imagine google testing would catch this regression, but if not then we should still make sure this doesn't somehow make it to a tagged build.

Thanks.  @pcsosinski - is there some way we track these? I imagine google testing would catch this regression, but if not then we should still make sure this doesn't somehow make it to a tagged build.

I'm also still a bit unsure about how this didn't get caught in golden tests in our own repo :(

I'm also still a bit unsure about how this didn't get caught in golden tests in our own repo :(

@dnfield do you have a range of hashes that are affected?

@dnfield do you have a range of hashes that are affected?

cc @kf6gpe

cc @kf6gpe


Operation is executed, but nothing happens

I was really happy when I saw this package, but it did not really work.
I needed to add a user related folder to all users so for this to happen after a deployment this package seems perfect, but... the operation was executed, but nothing was created.
Here is the operation:

<?php

use TimoKoerber\LaravelOneTimeOperations\OneTimeOperation;

return new class extends OneTimeOperation
{
    /**
     * Determine if the operation is being processed asyncronously.
     */
    protected bool $async = true;

    /**
     * The queue that the job will be dispatched to.
     */
    protected string $queue = 'default';

    /**
     * A tag name, that this operation can be filtered by.
     */
    protected ?string $tag = null;

    /**
     * Process the operation.
     */
    public function process(): void
    {
        $users = \App\Models\User::all();
        foreach ($users as $user) {
            $user->makeUserDirectories();
        }
    }
};

here is the makeUserDirectories method

public function makeUserDirectories(): void
{
    // More entries, but the one below is the new
    Storage::disk('xxx')->makeDirectory('/zzzz/yyyy/xxx');

}

Execution:
php artisan operations:process
INFO  Processing operations.
2023_05_20_082512_fix_user_dirs ................................................................................. 7ms DONE
INFO  Processing finished.

But the new directory was not created.
running the same code from a controller works

is you queue worker running?
Better set $async to false of you are not sure.


Initial support for OSCORE Context info on Leshan server web interface

The web interface of the Leshan server has been extended with some OSCORE-related fields. The idea is to continue extending this to enable specifying OSCORE Context information for clients via the web interface.

Generally I start by implemented core feature, then add/use it in demo.
Do you think this method is appropriate for integrating OSCORE in Leshan ?
I didn't look deeper about OSCORE integration in LWM2M specification so maybe this does not make so much sense, but if this is the case I would prefer we proceed like this.
What about you ?
(By the way I will not be available next 2,5 week, so don't worried if I didn't reply)

Generally I start by implemented core feature, then add/use it in demo.
Do you think this method is appropriate for integrating OSCORE in Leshan ?
I didn't look deeper about OSCORE integration in LWM2M specification so maybe this does not make so much sense, but if is does I would prefer we proceed like this.
What about you ?

I think that could be a feasible approach for this work also. I can work on creating somewhat bigger pull requests that add specific functionality and also a demonstration of that functionality being used elsewhere in the code.
For instance when it comes to this pull request it could be functionality to add OSCORE context information in the web interface of the Leshan server. Then also a demonstration of how that added context information will be parsed and finally used for communication between the client and server.

(By the way I will not be available next 2,5 weeks, so don't worry if I don't reply)

Thanks for the heads up.

I think this pull request could be closed and I will proceed with creating a different one according to our discussion.


MFA Adapter requirements - Federated Domain

Hi
Regarding the statement "Your on-premises environment is federated with Azure AD.", is it still necessary to be in a Federated Azure AD Domain to use the MFA Adapter?
The adapter authenticates using a certificate and once the relationship between useridentifier, upn in AD and accountname in AAD is done, you're good to go.
Thanks
Alessandro

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

ID: f333e8cb-c046-ee06-d33d-d7dc8e8af695
Version Independent ID: 10838695-f60e-42a7-b0e8-eed7820fd333
Content: Configure AD FS 2016 and Azure MFA
Content Source: WindowsServerDocs/identity/ad-fs/operations/configure-ad-fs-and-azure-mfa.md
Product: windows-server
Technology: ad-fs
GitHub Login: @billmath
Microsoft Alias: billmath

Hello @aferrillo,
Thanks for contacting Microsoft. We value your feedback.
As we understand it, you've described an issue with the Window Server product or service, rather than the documentation itself.
As you're probably aware, we offer many channels for engaging with us, whether you have a support question, product feedback, or other feedback.  GitHub Issues in the Windows Server repo are monitored for content issues we can address, such as broken links, grammar or wording, typos, updates, or incorrect code examples.
Don’t use GitHub Issues if you’re searching for:

Support cases or support tickets
Bug submittal or feature requests
Extended troubleshooting, technical support, or product support

Instead, use one or more of the following methods:

From Windows, use Windows Feedback Hub or press Windows + F. You can also provide feedback with Feedback.
Open a ticket with Microsoft Support.
Search or engage with Microsoft TechNet.
Search or engage with the Microsoft Developer Network.
Search or engage with the Microsoft Support Community.

Because this issue is a non-documentation issue, we’re closing this thread.
Thank you.
#please-close


Site detail page

Pre-Flight checklist

[ ] Testing

[ ] Code is tested
[ ] Changes have been manually tested

What are the relevant tickets?
Fixes #40
What's this PR do?
(Required)
How should this be manually tested?
(Required)

Codecov Report

Merging #71 (d49476f) into master (f3bc3eb) will increase coverage by 1.30%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##           master      #71      +/-   ##
==========================================
+ Coverage   80.23%   81.53%   +1.30%
==========================================
  Files          48       40       -8
  Lines        1118     1002     -116
  Branches      127      108      -19
==========================================
- Hits          897      817      -80
+ Misses        204      168      -36
  Partials       17       17

Impacted Files
Coverage Δ

main/urls.py
66.66% <100.00%> (ø)

main/views.py
100.00% <100.00%> (ø)

websites/views.py
100.00% <100.00%> (ø)

static/js/util/integration_test_helper.tsx

static/js/store/network_interface.ts

static/js/lib/redux_query.ts

static/js/hooks/tracker.ts

static/js/lib/api/util.ts

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 f3bc3eb...d49476f. Read the comment docs.


Owner

Code of Conduct

[X] I have read and agree to the GitHub Docs project's Code of Conduct

Pre-requisites

[X] My application to the GitHub Technology Partner Program is approved.

Tasks

[X] MUST follow our general contributing guidelines for voice and markup format.
[X] MUST emphasize how the third-party product works with GitHub.
[X] MUST be written in Markdown format, using one of the templates provided.
[X] MUST include the name and URL of the GitHub technology partner responsible for maintenance of the documentation being contributed. This should be added via the contributor.name and contributor.URL properties in the template's YAML frontmatter.
[X] MUST be proposed via a pull request to this repo following the GitHub Flow.
[X] MUST be located in the root of the content folder. Your filename MUST match the GitHub technology partner name, and use the .md file extension.

Pull Request

[X] MUST reference this issue, e.g. via closes [this issue number].
[X] MUST pass the automated CI checks.
[X] MUST include links to supporting material demonstrating the functionality being documented (this can be a link to a public GitHub repo, or a video / screencast walkthrough).

 I'm going to close it now, but feel free to open a new issue with a more descriptive title or ask any questions in discussions!
—
Reply to this email directly, view it on GitHub, or unsubscribe.
Triage notifications on the go with GitHub Mobile for iOS or Android.

—
Reply to this email directly, view it on GitHub, or unsubscribe.
Triage notifications on the go with GitHub Mobile for iOS or Android.

—
Reply to this email directly, view it on GitHub, or unsubscribe.
Triage notifications on the go with GitHub Mobile for iOS or Android.
You are receiving this because you are subscribed to this thread.Message ID: @.***>


Problem updating indicators

I am using -wbopendata- with the latest StataSE 16.1 (17 Sep 2020) and when I go to update it using -wbopendata, update check detail- I get what is attached in the txt file. I have already tried replacing the install of -wbopendata-, and -which wbopendata- gives me:
. which wbopendata
/Users/username/Library/Application Support/Stata/ado/plus/w/wbopendata.ado
*! v 16.3       8Jul2020               by Joao Pedro Azevedo

@tenaciouslyantediluvian, I don't see the text file. Are you still having this problem?


Audio takes long to load in mobile web browsers

Issue description
I have local .mp3 files that are loaded by an html file using amplitude.js. The website is fast and works great in chrome (from my laptop) but when the same website is loaded from a mobile browser (safari & chrome), it is pretty slow. The loading of the website if fast but the slowness happens between someone clicking on the audio play button and the actual audio playing.
Environment

Amplitude.js Version: 5.0.3

Mobile Browsers (chrome, safari)
It takes a solid 2-4 seconds for the audio to play whereas the same website on laptop there is no lag. Any help would be appreciated here.

Could this be related to #401 ?

@narayan8291: Please upgrade to the latest AmplitudeJS version and comment on this item if it does not fix it. Thanks!


Makefile: Add shellcheck target

Given that we have a non-trivial amount of bash scripts here - it would be good to add shellcheck, which will point out issues and how to fix these.
This can be run with make shellcheck and will give hints on fixing common Bash issues.
Next step: fix bash issues shellcheck discovers.
Signed-off-by: Delyan Raychev<EMAIL_ADDRESS>

/azp run pr-e2e-arc

Test failure:

[Fail] [Tier 2][Bucket 1] Test HTTP traffic from 1 pod client -> 1 pod server before and after osm-controller restart SimpleClientServer traffic test involving osm-controller restart: HTTP [It] Tests HTTP traffic for client pod -> server pod
/home/azureuser/agent/_work/23/s/osm/tests/e2e/e2e_controller_restart_test.go:106

/azp run pr-e2e-arc

We can merge this PR as the changes do not impact the flaky upstream e2e.
But we need to figure out why the upstream e2e is failing from the last failed run: https://dev.azure.com/AzureContainerUpstream/OpenServiceMesh/_build/results?buildId=18085&view=logs&j=9de9e2b7-8af7-5276-a88f-b4157127a375&t=6e4190ee-fa8b-5d21-648f-82f5576fef22
For instances, the testHTTPTrafficWithControllerRestart test is calling installOSM with defaultInstallOpts (not the ones from the osm-arc chart values.yaml) and I think it's trying to recreate the OsmNamespace: https://github.com/openservicemesh/osm/blob/v0.7.0/tests/framework/common.go#L464-L466
Ideally, the test should be able to restart the osm controller pods without having to reinstall osm. And it should respect the values passed in from the initial chart install.
Would love your thoughts here @draychev

@ritazh I think what you mentioned about the osm-controller restart test and the defaultInstallOpts should definitely be changed in upstream at some point, but I'm not sure if this is related to the intermittent e2e failures we are seeing right now. For instance, in this run: https://dev.azure.com/AzureContainerUpstream/OpenServiceMesh/_build/results?buildId=18133&view=logs&j=9de9e2b7-8af7-5276-a88f-b4157127a375&t=6e4190ee-fa8b-5d21-648f-82f5576fef22, it was the tcp_egress_test that failed, which doesn't involve any controller restart or reinstalling of OSM.


Implement row-major CUDA matrices

The relevant operations in CUBLAS (gesv, gemm, geam) feature a CUBLAS_T flag to work with transposed matrices. This should be enough to cover matrices in row order

This would also allow to support t() in the CUDA version


Consistency in the dataframe column names

We have a mix of column names with underscores for separators between words (e.g. base_repo_url) and other names that are simply joined into a long word (e.g. testfilecountlocal). We need to consistent.

Let's also see how we can revise the names so they communicate their purpose clearly e.g. base_repo_url_flag is unnecessarily vague, a more purposeful name might be: base_repo_url_extracted_successfully; and I suspect we might devise even clearer names.
As a historical note, Hungarian Notation was once used extensively and it uses a prefix of f to indicate the data type is a flag. Hungarian Notation is not recommended by many people these days; and especially not recommended in python.


Grid: Horizontal scrolling issue

Can't figure out how to create gutters between columns without causing horizontal scrolling.
I tested this simple structure:

  test

  test

That's pretty much the code from the documentation. What am I doing wrong?

Are you adding overflow:hidden to the div, or padding to the parent?

That was it! Overlooked that bit in the docs. Thanks @tinybutloud

I am getting this also but don't understand this response. Can you update this with an appropriate answer. Where do. I apply overflow hidden?


Expose the global direct memory counter.

Motivation:
This counter is very useful in order to monitor Netty without having every ByteBufAllocator in the JVM
Modification:
Expose the value of DIRECT_MEMORY_COUNTER as we are already doing for DIRECT_MEMORY_LIMIT.
We are returning -1 in case that DIRECT_MEMORY_COUNTER is not available.

@netty-bot test this please

@eolivelli can you please sign our ICLA and let me know one done ?
https://netty.io/s/icla

@eolivelli can you please sign our ICLA and let me know one done ?
https://netty.io/s/icla

@normanmaurer done

@normanmaurer I have to amend this commit because I used my work address, but I signed the iCLA with my personal address.

Commit Amended
This is good to go.
thanks

@eolivelli thanks!

@netty-bot test this please

@netty-bot test this please

@eolivelli thanks again!

@eolivelli any benefits of using this vs PooledByteBufAllocator.DEFAULT.metric().usedDirectMemory()?

@johnou the benefit is that it will account for all allocators (you may have multiple if multiple netty libs are used in your app).


Loader.request() pass down query params unexpectedly

When we call Loader.request(), we pass in the Sharepoint UR with the data store path. However, when the component get the request url from the Loader, it contains additional query params such as driveId which was not in the original request.
From the user perspective, we are only expecting to see componentId in the request when component request function is called. Or only the params we passed in when we called Loader.request()

Here is an example of input url:

And here is the value we get when component's request() is called:

So the nav parameter in the original link contains all the info like driveId, itemId etc.

Comment about errors and logging and this - Due to https://github.com/microsoft/FluidFramework/pull/6599. even when the URL has the query string when it shouldn't, we won't include it in the error response value.  This came up internally when we found a test environment on a super old runtime version and it was logging these query strings.

I don't know if this issue was ever resolved

Jason ran into this issue again today so I can confirm that this bug was never fixed @jatgarg

We ran into the issue again today while implementing request() in our root component, so I can confirm that this bug is still not fixed. @anthony-murphy FYI

I am going to open a corresponding ADo item and then schedule that for next sprint. Will post the link to ADo item here.

https://dev.azure.com/fluidframework/internal/_workitems/edit/3453


Create resourceful routes for generated actions

Expands on #404 to generate Resourceful routes for generated actions.
So
lotus generate action web books#new
will generate:
get '/books/new', to: 'books#new'
rather than
get '/books', to: 'books#new'
etc.
Based on the conventions.
Let me know if you want me to take a different approach. I could make the route resource :books, only: [:new] instead, though that'd get messy after a few generated actions for the same resource, since we just pre-pend to routes, we don't read it for current state.
Do I need to do anything with the named_route, for the URL helpers?

@cllns it looks good ;) I think the single route is a good approach instead use resource or resources because it can be more difficult to handle that.
To be conservative, I wouldn't add more, if the user wants to use a named_helper, it should add it.
cc @lotus/core-team

@cllns Thanks I've just merged this PR! :+1:


Culture resistence in JsonUtility

If the entity framework is used in some culture that use another kind of decimal separator the JsonUtility test fail
Forced invariant culture when doing serialization and add specific test forcing another culture

Fixes #5821
Please check if the PR fulfills these requirements

[x] The code builds and tests pass (verified by our automated build checks)
[x] Commit messages follow this format

    Summary of the changes
    - Detail 1
    - Detail 2

    Fixes #bugnumber

[x] Tests for the changes have been added (for bug fixes / features)
[x] Code meets the expectations our engineering guidelines. https://github.com/aspnet/Home/wiki/Engineering-guidelines.

Please review the guidelines for CONTRIBUTING.md for more details.

Hi @jenseralmeida, I'm your friendly neighborhood .NET Foundation Pull Request Bot (You can call me DNFBOT). Thanks for your contribution!

In order for us to evaluate and accept your PR, we ask that you sign a contribution license agreement. It's all electronic and will take just minutes. I promise there's no faxing. https://cla2.dotnetfoundation.org.

TTYL, DNFBOT;

@jenseralmeida, Thanks for signing the contribution license agreement so quickly! Actual humans will now validate the agreement and then evaluate the PR.
Thanks, DNFBOT;

:shipit: Thanks for the fix @jenseralmeida


Unable to override find vs. detect

In .hound.yml I have tried all of the following but get "Prefer detect over find." every time.
Style/CollectionMethods:
  PreferredMethods:
    detect: find

CollectionMethods:
  PreferredMethods:
    detect: find

Style/CollectionMethods:
  PreferredMethods:
    find: detect

What other details would be useful?

Thanks @gylaz, that makes perfect sense. However, with your solution I'm now getting the message "Prefer find over find." I feel this might be more of a RuboCop issue now, but it might be able to be fixed in Hound by removing the default or by adding some logic to suppress messages that want to replace something with itself.

@gylaz I would have reopened the issue, but I can't because I didn't close it.

Getting the same issue @gwagener mentioned.  "Prefer reduce over reduce"

Hi @backus, @gwagener and @gylaz
I got the same issue. After some trying I found that this works for me:
Style/CollectionMethods:
  PreferredMethods:
+   find:
    detect: find

Thanks for finding and reporting, @ascendbruce!


V2 WIP

Simplify, abstract, refocus.
The existing codebase has become too messy. Adding any new features like the proper ssh config handling requires inserting bits all over here and there and testability is weak.
Still very unfinished and does not compile.

Anything of value has been extracted into separate PRs and this can now be closed.


Update istio libs to latest 1.7

Istio 1.7 libs need to be updated to leverage the new status field in future work
1.7 is being used in istio-stable and istio-latest already and tests are green
unit tests still passing

Created with:
go get<EMAIL_ADDRESS>go get<EMAIL_ADDRESS>./hack/update-deps.sh --upgrade && ./hack/update-codegen.sh

/ok-to-test

/ok-to-test

/assign @JRBANCEL

/lgtm


Revert "Add Sport Events + rail ad to Production and Strategy section lists."

Reverts parameter1/bizbash-media-websites#125
https://trello.com/c/KGFm7iVs/150-possible-new-section-for-bizbashcom
"we had a change of plans internally can we pull down the sports content for now."

 Possible new section for BizBash.com


fix shallowCompare for arrays

If one of the top-level values in the returned object is an array, shallowCompare would always return false which would cause connect to spin in an infinite loop because deps were always different which means it would infinitely try to re-set the internal dependency value. By adding an explicit shallow comparison for arrays we can bypass this. Theoretically it could still be an issue if a dependency is rebuilding objects with new identities each deref and putting them into arrays, but that feels like behavior we should discourage since it'll break lots of other things like React's prop identity checking.
TODOs

[x] linter, checker, and test are passing
[x] any new public modules are exported from src/GeneralStore.js
[ ] version numbers are up to date in package.json
[ ] CHANGELOG.md is up to date

Sorry I missed this. LGTM though could add a test case for the first 2 checks (unequal lengths and empty arrays)

No worries, I accidentally assigned instead of requesting a review. I'll add those cases