No longer working on macOS

Meant to raise an issue about this a while ago, but I've been making do (although barely 🙈). I have tried building from source, from brew, building the previous version and both the latest version of Kakoune and the previous one.
Current setup
kak -version
Kakoune v2019.01.20

kak-lsp --version
kak-lsp 6.0.1

kak-lsp.toml
verbosity = 2

[server]
# exit session if no requests were received during given period in seconds
# works only in unix sockets mode (-s/--session)
# set to 0 to disable
timeout = 1800 # seconds = 30 minutes

[language.elixir]
filetypes = ["elixir"]
roots = [".git", "mix.exs"]
command = "elixir-ls"

[language.php]
filetypes = ["php"]
roots = ["composer.json",".git"]
command = "php-ls"

[language.python]
filetypes = ["python"]
roots = ["requirements.txt", "setup.py", ".git", ".hg"]
command = "pyls"

[language.ruby]
filetypes = ["ruby"]
roots = ["Gemfile"]
command = "solargraph"
args = ["stdio"]

# -- UNUSED ---

[language.rust]
filetypes = ["rust"]
roots = ["Cargo.toml"]
command = "rls"

[language.javascript]
filetypes = ["javascript"]
roots = ["package.json"]
command = "flow"
args = ["lsp"]

[language.json]
filetypes = ["json"]
roots = ["package.json"]
command = "json-languageserver"
args = ["--stdio"]

[language.css]
filetypes = ["css"]
roots = ["package.json"]
command = "css-languageserver"
args = ["--stdio"]

[language.html]
filetypes = ["html"]
roots = ["package.json"]
command = "html-languageserver"
args = ["--stdio"]

[language.ocaml]
filetypes = ["ocaml"]
roots = ["Makefile", "opam", "*.opam"]
command = "ocaml-language-server"
args = ["--stdio"]

[language.reason]
filetypes = ["reason"]
roots = ["package.json", "Makefile", ".git", ".hg"]
command = "ocaml-language-server"
args = ["--stdio"]

[language.c_cpp]
filetypes = ["c", "cpp"]
roots = ["compile_commands.json", ".cquery"]
command = "cquery"
args = ["--init={\"cacheDirectory\":\"/tmp/cquery\"}"]

[language.haskell]
filetypes = ["haskell"]
roots = ["Setup.hs", "stack.yaml", "*.cabal"]
command = "hie"
args = ["--lsp"]

[language.go]
filetypes = ["go"]
roots = ["Gopkg.toml", "go.mod", ".git", ".hg"]
command = "go-langserver"
args = ["-mode", "stdio", "-gocodecompletion"]

[language.bash]
filetypes = ["sh"]
roots = [".git", ".hg"]
command = "bash-language-server"
args = ["start"]

[language.dart]
filetypes = ["dart"]
roots = ["pubspec.yaml", ".git"]
command = "dart_language_server"

[language.d]
filetypes = ["d", "di"]
roots = [".git", "dub.sdl", "dub.json"]
command = "dls"

Testing
Using tmux, In one pane:
kak -vvv -s -foo

In another:
kak -s foo

test.py
#!/usr/bin/env python3
class Waffle():
    def __init__(self):
        print("Tasty")

w = Waffle()
#      ^--- cursor

Show capabilities - This works.
Jul 21 21:18:56.036 DEBG From editor:
session  = "foo"
client   = "client0"
buffile  = "/Users/james/Desktop/test.py"
filetype = "python"
version  = 1
method   = "textDocument/didChange"
[params]
draft    = """
class Waffle():
    def __init__(self):
        print(\"Waffle\")

c = Waffle()
"""
, module: kak_lsp::editor_transport:151
Jul 21 21:18:56.037 DEBG Routing editor request to Route { session: "foo", language: "python", root: "/Users/james/Desktop" }, module: kak_lsp::session:117
Jul 21 21:18:56.038 INFO Starting Language server `pyls `, module: kak_lsp::language_server_transport:19
Jul 21 21:18:56.040 DEBG To server: {"jsonrpc":"2.0","method":"initialize","params":{"capabilities":{"textDocument":{"colorProvider":null,"completion":{"compl
etionItem":{"documentationFormat":["plaintext"]}}},"workspace":{"workspaceEdit":{"documentChanges":true,"resourceOperations":["create","delete","rename"]}}},"
processId":23612,"rootUri":"file:///Users/james/Desktop","trace":"off"},"id":0}, module: kak_lsp::language_server_transport:149
Jul 21 21:18:56.075 DEBG From editor:
session  = "foo"
client   = "client0"
buffile  = "/Users/james/Desktop/test.py"
filetype = "python"
version  = 1
method   = "capabilities"
[params]
, module: kak_lsp::editor_transport:151
Jul 21 21:18:56.077 DEBG Routing editor request to Route { session: "foo", language: "python", root: "/Users/james/Desktop" }, module: kak_lsp::session:117
Jul 21 21:18:56.077 DEBG Language server is not initialized, parking request, module: kak_lsp::controller:67
Jul 21 21:18:56.081 DEBG To editor `foo`: eval -client client0 'lsp-show-error ''Language server is not initialized, parking request''', module: kak_lsp::edit
or_transport:81
Jul 21 21:18:56.817 DEBG From server: {"jsonrpc": "2.0", "id": 0, "result": {"capabilities": {"codeActionProvider": true, "codeLensProvider": {"resolveProvide
r": false}, "completionProvider": {"resolveProvider": false, "triggerCharacters": ["."]}, "documentFormattingProvider": true, "documentHighlightProvider": tru
e, "documentRangeFormattingProvider": true, "documentSymbolProvider": true, "definitionProvider": true, "executeCommandProvider": {"commands": []}, "hoverProv
ider": true, "referencesProvider": true, "renameProvider": true, "signatureHelpProvider": {"triggerCharacters": ["(", ","]}, "textDocumentSync": 2, "experimen
tal": {}}}}, module: kak_lsp::language_server_transport:129
Jul 21 21:18:56.817 DEBG To server: {"jsonrpc":"2.0","method":"initialized","params":{}}, module: kak_lsp::language_server_transport:149
Jul 21 21:18:56.817 DEBG To server: {"jsonrpc":"2.0","method":"textDocument/didOpen","params":{"textDocument":{"languageId":"python","text":"class Waffle():\n
    def __init__(self):\n        print(\"Waffle\")\n\nc = Waffle()\n","uri":"file:///Users/james/Desktop/test.py","version":1}}}, module: kak_lsp::language_se
rver_transport:149
Jul 21 21:18:56.819 DEBG To editor `foo`: eval -client client0 'info ''kak-lsp commands supported by python language server:

lsp-hover
lsp-completion (hooked on InsertIdle)
lsp-definition (mapped to `gd` by default)
lsp-references
lsp-formatting
lsp-rename
lsp-diagnostics''', module: kak_lsp::editor_transport:81
Jul 21 21:18:57.330 DEBG From server: {"jsonrpc": "2.0", "method": "textDocument/publishDiagnostics", "params": {"uri": "file:///Users/james/Desktop/test.py",
 "diagnostics": [{"source": "pycodestyle", "range": {"start": {"line": 4, "character": 0}, "end": {"line": 4, "character": 13}}, "message": "E305 expected 2 b
lank lines after class or function definition, found 1", "code": "E305", "severity": 2}]}}, module: kak_lsp::language_server_transport:129
Jul 21 21:18:57.331 DEBG To editor `foo`:
        eval -buffer '/Users/james/Desktop/test.py' 'set buffer lsp_diagnostic_error_count 0
         set buffer lsp_diagnostic_warning_count 1
         set buffer lsp_errors 1 5.1,5.13|DiagnosticWarning
         eval "set buffer lsp_error_lines 1 5|%opt[lsp_diagnostic_line_warning_sign] ''1| '' "', module: kak_lsp::editor_transport:81

lsp-hover
Jul 21 21:20:07.765 DEBG From editor:
session   = "foo"
client    = "client0"
buffile   = "/Users/james/Desktop/test.py"
filetype  = "python"
version   = 1
method    = "textDocument/hover"
[params.position]
line      = 5
column    = 5
, module: kak_lsp::editor_transport:151
Jul 21 21:20:07.765 DEBG Routing editor request to Route { session: "foo", language: "python", root: "/Users/james/Desktop" }, module: kak_lsp::session:117
Jul 21 21:20:07.765 ERRO Params should follow PositionParams structure, module: kak_lsp::language_features::hover:15

Go to definition
Jul 21 21:21:17.214 DEBG From editor:
session   = "foo"
client    = "client0"
buffile   = "/Users/james/Desktop/test.py"
filetype  = "python"
version   = 1
method    = "textDocument/definition"
[params.position]
line      = 5
column    = 5
, module: kak_lsp::editor_transport:151
Jul 21 21:21:17.214 DEBG Routing editor request to Route { session: "foo", language: "python", root: "/Users/james/Desktop" }, module: kak_lsp::session:117
thread '<unnamed>' panicked at 'called `Result::unwrap()` on an `Err` value: Error { inner: ErrorInner { kind: Custom, line: None, col: 0, message: "missing f
ield `character`", key: ["position"] } }', libcore/result.rs:1009:5
note: Run with `RUST_BACKTRACE=1` for a backtrace.
Jul 21 21:21:17.215 ERRO Params should follow PositionParams structure, module: kak_lsp::language_features::definition:13
Jul 21 21:21:17.215 DEBG Received signal to stop language server, closing pipe, module: kak_lsp::language_server_transport:160
Jul 21 21:21:17.216 ERRO Failed to join controller thread, module: kak_lsp::session:75
Jul 21 21:21:17.299 DEBG Language server closed pipe, stopping reading, module: kak_lsp::language_server_transport:107
Jul 21 21:21:17.299 DEBG Waiting for language server process end, module: kak_lsp::language_server_transport:57
Jul 21 21:21:17.299 DEBG Sending exit notification back to controller, module: kak_lsp::language_server_transport:67

Any ideas where to start? Anything I can do to provide more info/context?

It seems that the integration script (rc/lsp.kak) is loaded from a newer version of kak-lsp (6.2.0 and above) as it uses column for the position, and kak-lsp server itself is older (6.0.1 according to info you provided) which uses character.
I suspect that you have kak-lsp to be resolved to different binaries when called from the terminal and from the Kakoune.

Awesome. I nuked kak-lsp everywhere I could find it and recompiled, then remembered to re-clone the kak-lsp plugin (Totally forgot that part...).
Now I'm getting the following when I run lsp-hover
Jul 23 21:06:07.428 DEBG From editor:
session   = "foo"
client    = "client0"
buffile   = "/home/james/something.ex"
filetype  = "elixir"
version   = 1
method    = "textDocument/hover"
[params.position]
line      = 19
column    = 7
, module: kak_lsp::editor_transport:170
Jul 23 21:06:07.428 DEBG Language server is not configured for filetype `elixir`, module: kak_lsp::session:79

with the following in ~/.config/kak-lsp/kak-lsp.toml:
[language.elixir]
filetypes = ["elixir"]
roots = [".git", "mix.exs"]
command = "elixir-ls"

Master branch has a breaking change regarding config file location: https://github.com/ul/kak-lsp/blob/master/README.asciidoc#configuring-kak-lsp

Brilliant. Although, from the looks of the link (and the link to the Rust docs), the path should be correct, but I've manually specified with --config and it's working. Thanks for giving me this awesome tool back!

No worries, I glad to hear you like it =)
Re: config location, I think that on macOS it moved under $HOME/Library/Preferences (as opposed to previous $HOME/.config)


Fix mapping table emission for generic types

We were only putting methods on instantiated types/fields into the mapping table because when the code was written, shared generics were wonky. We actually only need to emit a single entry for each canonically equivalent method/field though because the type loader can take care of the rest.
This reduces size of the mapping table for fields and methods and helps #6987 to avoid having to instantiate things over Object.

@dotnet-bot test OSX10.12 Release


Initial tests for Modify interaction vertex creation

Is this good to be merged from your perspective @bjornharrtell?

Yes @elemoine this is in preparation for remaining work with #3461.

Just realized that I accidentally removed the existing constructor test that also tested some rbush internals when making these additional tests, sorry. Will readd in a new PR ASAP.

Amended my mistake with #3631.


Instructions don't work

The instructions in the readme and on https://prerender.io/documentation/test-it don't work like service.prerender.io
For example, the url http://localhost:3000/https://www.google.ca/?gfe_rd=cr&dcr=0&ei=bTUfWqbnHMXM8gfz57PoCw does not show the page correctly.
logs:
2017-11-29T22:34:47.556Z invalid URL: logos/doodles/2017/gertrude-jekylls-174th-birthday-6002071852548096-s.png
2017-11-29T22:34:47.558Z got 400 in 2ms for logos/doodles/2017/gertrude-jekylls-174th-birthday-6002071852548096-s.png
2017-11-29T22:34:47.559Z getting logos/doodles/2017/gertrude-jekylls-174th-birthday-6002071852548096-l.png
2017-11-29T22:34:47.559Z invalid URL: logos/doodles/2017/gertrude-jekylls-174th-birthday-6002071852548096-l.png
2017-11-29T22:34:47.560Z got 400 in 1ms for logos/doodles/2017/gertrude-jekylls-174th-birthday-6002071852548096-l.png
2017-11-29T22:34:47.662Z getting images/nav_logo242.png
2017-11-29T22:34:47.662Z invalid URL: images/nav_logo242.png
2017-11-29T22:34:47.663Z got 400 in 1ms for images/nav_logo242.png
2017-11-29T22:34:47.740Z getting images/branding/product/ico/googleg_lodp.ico
2017-11-29T22:34:47.740Z invalid URL: images/branding/product/ico/googleg_lodp.ico
2017-11-29T22:34:47.740Z got 400 in 0ms for images/branding/product/ico/googleg_lodp.ico

Can you explain a little more what you mean by the instructions not working like service.prerender.io?
The logs you pasted there are your browser trying to load the relative links on the page from the http://localhost:3000 domain but those relative URLs actually live on https://www.google.ca/. So that is the expected behavior because once you proxy your HTML through your middleware, all relative links will work correctly since the localhost:3000 will no longer be in the URL.

The logs you pasted there are your browser trying to load the relative links on the page from the http://localhost:3000 domain but those relative URLs actually live on https://www.google.ca/. So that is the expected behavior because once you proxy your HTML through your middleware, all relative links will work correctly since the localhost:3000 will no longer be in the URL.

OK, Sorry for the spam. I think I understand how prerender.io works now. Maybe google is serving different sites based on IP? My only followup would be to use http://localhost:3000/https://www.httpbin.com/   instead of http://localhost:3000/https://www.google.com/ google.com has a redirect which immediatly redirects off of localhost:3000 and once that page is behind localhost:3000 the page does not look right.

Can you explain a little more what you mean by the instructions not working like service.prerender.io?

I was seeing different results when I do http://localhost:3000/https://google.ca/... v.s. service.prerender.io/https://google.ca/... neither of witch looked like the actual site https://google.ca/....

Yeah Google checks your IP so in your case going to https://www.google.com is redirecting you to https://www.google.ca (assuming your in canada).
I think the different result you are seeing is Google showing an "old" Google page to our PhantomJS browser (currently the default browser used on service.prerender.io if you don't specify an API token) and the "new" Google page shown to a Chrome browser which is what our open source Prerender server uses by default.
So if we had your Prerender.io account switched to using Chrome and you specified your token, then the service.prerender.io link would use Chrome and it would look the same as you see locally.
It looks like everything is working as intended there, and once we switch all of our service.prerender.io users over to Chrome then you won't see any difference.


Trying to use Get-AzUserAssignedIdentity in module 0.7.3 and getting an error

Using Az.ManagedServiceIdentity version 0.7.2 is able to successfully get an existing UAMI. I've reproduced this in both cloud and local PS sessions with different users/subscriptions. I can't run this command against an entire subscription, nor a resource group, nor with both RG and Name of UAMI. As soon as I update the module to 0.7.3, I'm getting the following error:
Get-AzUserAssignedIdentity : Extended 'versions' can't be converted to a boolean
At line:1 char:9

$uami = Get-AzUserAssignedIdentity -ResourceGroupName $uamiRg -Name " ...

    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

CategoryInfo          : CloseError: (:) [Get-AzUserAssignedIdentity], CloudException
FullyQualifiedErrorId : http://Microsoft.Azure.Commands.ManagedServiceIdentity.UserAssignedIdentities.GetAzureRmUserAssignedIdentityCmdlet

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

ID: 72861cc1-7081-cf6e-b7f9-e700a16faa9a
Version Independent ID: c870872d-0559-6b77-280f-f478e8c84776
Content: Managed identities for Azure resources
Content Source: articles/active-directory/managed-identities-azure-resources/overview.md
Service: active-directory
Sub-service: msi
GitHub Login: @MarkusVi
Microsoft Alias: markvi

I'm currently using Get-AzResource to get the UAMI resource ID, then using that for Blueprint assignment for a work-around to using Get-AzUserAssignedIdentity.

@the-blesss Thank you for your query . We will investigate and update the thread further.

This is now working . You require to update the powershell and install the new Az module.
You will require to install the module Az.ManagedServiceIdentity for this.
PS C:\Users> Install-Module -Name Az.ManagedServiceIdentity -AllowClobber

Also you must already have Az module containing the Az.Accounts module on which the Az.ManagedServiceIdentity  module depends.
PS C:\Users> Get-AzUserAssignedIdentity

Id                : /subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx/resourcegroups/xmast/providers/Microsoft.ManagedIdentity/userAssignedIdentities/IMDStest
ResourceGroupName : xmast
Name              : IMDStest
Location          : eastus
TenantId          : xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx
PrincipalId       : xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx
ClientId          : xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx
ClientSecretUrl   : https://control-eastus.identity.azure.net/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx/resourcegroups/xmast/providers/Microsoft.ManagedIdentity/userAssignedIdentities/IMDStest/credentials?tid=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx&oid=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx&aid=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx
Type              : Microsoft.ManagedIdentity/userAssignedIdentities

PS C:\Users> Get-AzUserAssignedIdentity -ResourceGroupName xmast

Id                : /subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx/resourcegroups/xmast/providers/Microsoft.ManagedIdentity/userAssignedIdentities/IMDStest
ResourceGroupName : xmast
Name              : IMDStest
Location          : eastus
TenantId          : xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx
PrincipalId       : xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx
ClientId          : xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx
ClientSecretUrl   : https://control-eastus.identity.azure.net/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx/resourcegroups/xmast/providers/Microsoft.ManagedIdentity/userAssignedIdentities/IMDStest/credentials?tid=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx&oid=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx&aid=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx
Type              : Microsoft.ManagedIdentity/userAssignedIdentities

PS C:\Users> Get-AzUserAssignedIdentity -ResourceGroupName xmast -name IMDStest

Id                : /subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx/resourcegroups/xmast/providers/Microsoft.ManagedIdentity/userAssignedIdentities/IMDStest
ResourceGroupName : xmast
Name              : IMDStest
Location          : eastus
TenantId          : xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx
PrincipalId       : xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx
ClientId          : xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx
ClientSecretUrl   : https://control-eastus.identity.azure.net/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx/resourcegroups/xmast/providers/Microsoft.ManagedIdentity/userAssignedIdentities/IMDStest/credentials?tid=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx&oid=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx&aid=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx
Type              : Microsoft.ManagedIdentity/userAssignedIdentities

I would suggest you to uninstall the powershell modules and reinstall them again and that should work . We will now close this issue . Should you have any further queries on this , please let us know and we will be happy to help .
Thank you.


Does it work with Hitachi RAS-E13CAK

Tried different Hitachi setting but no response.
Thanks.

https://github.com/crankyoldgit/IRremoteESP8266/blob/master/SupportedProtocols.md

Thanks! Is there anyway to update the library easily? I bought a pre-built module and currently have no access to an FTDI adapter nor build environment.
Cheers.


[SPARK-13093][SQL] improve null check in nullSafeCodeGen for unary, binary and ternary expression

The current implementation is sub-optimal:

If an expression is always nullable, e.g. Unhex, we can still remove null check for children if they are not nullable.
If an expression has some non-nullable children, we can still remove null check for these children and keep null check for others.

This PR improves this by making the null check elimination more fine-grained.

cc @davies @nongli

Test build #50406 has started for PR 10987 at commit 5b1097f.

@cloud-fan I'm not sure how much benefits (performance or code size) we can get from this, this make the code hard to understand.

Can you include the before and after of the generated code that illustrates when this is good?

Unhex with a not nullable child:
before:
UTF8String value3 = i.getUTF8String(0);
boolean isNull0 = false;
byte[] value1 = null;
if (!false) {
  value1 = org.apache.spark.sql.catalyst.expressions.Hex.unhex(value3.getBytes());
  isNull0 = value1 == null;
}

after:
UTF8String value3 = i.getUTF8String(0);
boolean isNull0 = false;
byte[] value1 = null;
value1 = org.apache.spark.sql.catalyst.expressions.Hex.unhex(value3.getBytes());
isNull0 = value1 == null;

`Substring` with a nullable `pos`, other children are not nullable:
before:
```
/* input[0, string] */
UTF8String value3 = i.getUTF8String(0);
boolean isNull0 = true;
UTF8String value1 = null;
if (!false) {
  /* input[1, int] */
  boolean isNull4 = i.isNullAt(1);
  int value5 = isNull4 ? -1 : (i.getInt(1));
  if (!isNull4) {
    /* input[2, int] */
    int value7 = i.getInt(2);
    if (!false) {
      isNull0 = false;  // resultCode could change nullability
      value1 = value3.substringSQL(value5, value7);
    }
  }
}
```
after:
```
boolean isNull0 = true;
UTF8String value1 = null;
/* input[0, string] */
UTF8String value3 = i.getUTF8String(0);
/* input[1, int] */
boolean isNull4 = i.isNullAt(1);
int value5 = isNull4 ? -1 : (i.getInt(1));
if (!isNull4) {
  /* input[2, int] */
  int value7 = i.getInt(2);
  isNull0 = false; // resultCode could change nullability, so this should sit before it.
  value1 = value3.substringSQL(value5, value7);
}
```

I agree that this PR makes the code a little harder to read, but not that bad, the style of `ctx.genNullCheck` is kind of similar to if block :)

I think this is quite useful, but probably pretty major for performance too if we do it right. The main thing is we should make the code readable.

Could the compiler remove the branch?
  if (false) {
   xxx
  }

Test build #50406 has finished for PR 10987 at commit 5b1097f.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/50406/
Test PASSed.

Merged build finished. Test PASSed.

JIT can - after 10000 runs on each partition ...

Since Janino 2.0.9 (September 5, 2004), it has "Optimized compilation of constantly-false IF statements"

Does "constantly-false IF" also includes if (!false)...? Another question is, do we always get false as isNull for not nullable expression? I'm thinking about this comment: https://github.com/apache/spark/pull/10809#discussion_r50172943

@cloud-fan The answer is yes, here is how Janino compile the IfStatement:
            // Constant condition.
            this.fakeCompile(is.condition);
            BlockStatement seeingStatement, blindStatement;
            if (((Boolean) cv).booleanValue()) {
                seeingStatement = is.thenStatement;
                blindStatement  = es;
            } else {
                seeingStatement = es;
                blindStatement  = is.thenStatement;
            }

            // Compile the seeing statement.
            CodeContext.Inserter ins = this.codeContext.newInserter();
            boolean ssccn = this.compile(seeingStatement);
            if (ssccn) return true;

hmmm, so the benefit is quite small here, let me see if I can improve the code readability, or I agree this PR doesn't worth.

Test build #50467 has started for PR 10987 at commit 7efc502.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/50468/
Test FAILed.

Merged build finished. Test FAILed.

Test build #50469 has started for PR 10987 at commit 566006e.

Test build #50467 has finished for PR 10987 at commit 7efc502.

This patch fails Spark unit tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/50467/
Test FAILed.

Test build #50469 has finished for PR 10987 at commit 566006e.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/50469/
Test PASSed.

LGTM

Merging into master, thanks!


Multiverse-Core v4.0.1-SNAPSHOT-bUNKNOWN

Server thread/WARN [Multiverse-Core] "Multiverse-Core v4.0.1-SNAPSHOT-bUNKNOWN" has registered a listener for org.bukkit.event.entity.EntityCreatePortalEvent on method "public void com.onarandombox.MultiverseCore.listeners.MVPortalListener.entityPortalCreate(org.bukkit.event.entity.EntityCreatePortalEvent)", but the event is Deprecated. "Server performance will be affected"; please notify the authors [Rigby, fernferret, lithium3141, main--, dumptruckman].

Duplicate issue of #2000


docs(datetime): add sass variable descriptions

Short description of what this resolves:
Add sass variables docs for DateTime component
Changes proposed in this pull request:

Docs for the sass variables

Ionic Version: 2.x
Fixes: #8785

Thank you for the PR! merged!


Raise an error when use categorical_crossentropy for binary classification

System information.
TensorFlow version (you are using): nightly
Are you willing to contribute it (Yes/No) : Yes
Describe the feature and the current behavior/state.
When use categorical_crossentropy for binary classification,
it does not raise any error, but have all the losses equal to 0 during training.
It may confuse the user that the model has some problem, but actually it just because they accidentally used the wrong loss.
See this colab for more details.
So I propose to raise an error if the shape of y_true and y_pred are all (None, 1).
Unless this use case makes any sense.
Will this change the current api? How?
No.
Who will benefit from this feature?
ML Beginners or experienced engineer who accidentally used the wrong loss.
Contributing

Do you want to contribute a PR? (yes/no): yes
If yes, please read this page for instructions
Briefly describe your candidate solution(if contributing): judge y_true and y_pred shape and raise error if they are (None, 1).

@haifeng-jin
I am interested in working on this.
I was thinking maybe we could find the activation of the output layer of the model and if it were softmax then categorical_crossentropy  loss function is good enough, and binary_crossentropy would practically work all the time, although we can do the same for binary_crossentropy  and sigmoid  activation function.

Based on our discussion in the team, we agreed on raise a warning if the y_true and y_pred are single dimensional vectors.
We prefer no complicated solution to this problem.

@haifeng-jin
So is this issue still open for contribution? Can I work on it?

@old-school-kid Yes. Thank you!
Please create a pull request and mention me.
I will guide you through the rest of the process.


Not able to LIST service principal after creating it.

This is autogenerated. Please review and update as needed.
Describe the bug
Using az rest
When creating an application and then a service principal with the appId of the application, it gets created.
However I am not able to list the servicePrincipal anymore, if I GET the servicePrincipal using it's id, it gets displayed. but not able to see it in the list of all servicePrincipals.
Command Name
az rest
Creating the app and sp works just fine, the command outputs a successful creation and lists the app and sp.
az rest -m POST --uri "https://graph.microsoft.com/v1.0/applications" --body '{ "displayName": "michael-debug-test1" }'
az rest -m POST --uri "https://graph.microsoft.com/v1.0/servicePrincipals" --body '{ "appId": "<ap-id-of-michael-debug-test1>"}'

When listing the app, it outputs the correct details
az rest -m GET --uri https://graph.microsoft.com/v1.0/applications | jq -r 'del(.["<EMAIL_ADDRESS>|  .[][] | select(.displayName == "michael-debug-test1")'

When doing the same for the service principal, it outputs nothing.
az rest -m GET --uri https://graph.microsoft.com/v1.0/servicePrincipals | jq -r 'del(.["<EMAIL_ADDRESS>|  .[][] | select(.displayName == "michael-debug-test1")'

Even if i remove all the filters, and use a simple grep, i still get mothing
az rest -m GET --uri https://graph.microsoft.com/v1.0/servicePrincipals | grep michael

If I GET the service principal, with id from creation command, it will list the service principal correctly.
az rest -m GET --uri https://graph.microsoft.com/v1.0/servicePrincipals/<sp-id-from-creation-command>

Errors:
Does not list the service principal.

To Reproduce:
Steps to reproduce the behavior. Note that argument values have been redacted, as they may contain sensitive information.
az rest -m POST --uri "https://graph.microsoft.com/v1.0/applications" --body '{ "displayName": "michael-debug-test1" }'
az rest -m POST --uri "https://graph.microsoft.com/v1.0/servicePrincipals" --body '{ "appId": "<ap-id-of-michael-debug-test1>"}'
az rest -m GET --uri https://graph.microsoft.com/v1.0/applications | jq -r 'del(.["<EMAIL_ADDRESS>|  .[][] | select(.displayName == "michael-debug-test1")'
az rest -m GET --uri https://graph.microsoft.com/v1.0/servicePrincipals | jq -r 'del(.["<EMAIL_ADDRESS>|  .[][] | select(.displayName == "michael-debug-test1")'

Put any pre-requisite steps here...
az rest -m {} --uri {}

Expected Behavior
Environment Summary
Linux-5.15.12-arch1-1-x86_64-with-glibc2.33, Arch Linux
Python 3.10.1
Installer:

azure-cli 2.33.0

Extensions:
azure-devops 0.17.0
subscription 0.1.4
ad 0.1.0
aks-preview 0.4.57
log-analytics-solution 0.1.1
vm-repair 0.3.5
log-analytics 0.2.2

Dependencies:
msal 1.16.0
azure-mgmt-resource 20.0.0

Additional Context

@jiasli for awareness

okay, i think i know why:
az rest -m GET --uri https://graph.microsoft.com/v1.0/servicePrincipals | jq -r 'del(.["<EMAIL_ADDRESS>|  .[][].displayName' | wc -l

100

is possible that i've reached the limit page size?

The default and maximum page sizes are 100 and 999 service principal objects respectively.
https://docs.microsoft.com/en-us/graph/api/serviceprincipal-list?view=graph-rest-1.0&tabs=http

Still no luck. any odata query parameters not working... maybe i'm doing something wrong.

okay, figured it out.
az rest -m GET --uri "https://graph.microsoft.com/v1.0/servicePrincipals?" --url-parameters \$top=999 --query "value[?displayName=='michael-debug-test1']"

You can close this ticket.


Use ipify instead of IPInfo to determine the public IP

The amount of requests to the https://ipinfo.io is limited. To be able to update the public IP frequently, we should switch to https://ipify.org, because the request amount is not limited.

Implemented and merged


11.16 检查后加载时出现停止现象

11.16 检查后加载时出现停止现象
观战贝宝游戏三者加载中发生停止现象。 拜托您解决一下。 谢谢。

您好，我不会继续开发这个项目了，这已经导致我被封禁。

Hi. Sorry but I will not continue developping this project as it already let my account banned.

您好，我认为进攻防守推荐功能是ban的原因。 除了那个功能之外,有没有重新制作只保留了其他功能的简化版本的想法? 因为真的有用，所以一定要用。 拜托了。

雀魂官方告知过我，任何插件都会导致ban。他们应该也没办法检测插件的类型。请问您具体需要什么功能？

谢谢您的回应。
现有/子母基里标识/待机牌标识/控制台窗口需要全部标识。 不需要攻击防守显示功能和对方附表。

Thank you for your response.
The existing /Tzumogiri mark / Standby mark /Console window requires a full mark. Attack defense indication and opponent asterisk are not required.

https://github.com/purerosefallen/majsoul-helper
Try my fork, with that one fixed.

https://github.com/purerosefallen/majsoul-helper
Try my fork, with that one fixed.

Thanks a lot

https://github.com/purerosefallen/majsoul-helper 내 포크를 사용해 보세요.

Thank to your help, it can work well.   But, a feature was added to the console window, 自动摸打.  I don't need this. Can you get rid of it? This function appears to be at high risk of being banned.

https://github.com/purerosefallen/majsoul-helper 내 포크를 사용해 보세요.

Thank to your help, it can work well. But, a feature was added to the console window, 自动摸打. I don't need this. Can you get rid of it? This function appears to be at high risk of being banned.

Just turn that off, and everything would be fine. It's disabled by default.

想请问。只要是chrome extension 无论什么形式 都会被封禁吗？还是说在majsoul-plus浏览器里的插件可以幸免？

想请问。只要是chrome extension 无论什么形式 都会被封禁吗？还是说在majsoul-plus浏览器里的插件可以幸免？

封禁与否不是我能决定的。不过你提到的两种方式没有本质区别~


add basic information for employees about joining our Organizations

when assisting employees interested in joining our GitHub organizations, i notice they are rarely able to track down the information here on their own to find out what is required.
i thought it'd be helpful to be able to share the information directly in our contributing repository.

Thanks John @jgravois


[Info Tab] Font seems partially broken

Steps done:

Download latest version (Picturama.Setup.1.3.1)
Click on the gear icon
Browse for a folder and confirm, then scan for images
Click the info tab
Observe the font on the info tab

Expected result:
Font is displayed properly
Actual result:
Font seems to be broken partially

Which OS are you using?

Which OS are you using?

Windows 10 20H2


ecmwflibs prevents eccodes-python to use locally built libeccodes.so

If ecwmflibs is available in PYTHONPATH, eccodes-python will not use a locally built libeccodes.so but the one provided by ecmwlibs.
It will change the behavior of eccodes-python (see https://github.com/ecmwf/eccodes-python/issues/61), especially since the ecwmflibs eccodes library is built with ENABLE_MEMFS=1
This can be changed setting ECMWFLIBS_ECCODES to the locally built libeccodes.so but it is not very intuitive (and I think not documented ?).
May be ecmwflibs should first try to find eccodes and MagPlus locally (if they are provided by LD_LIBRARY_PATH), and only if they are not found use the ones provided by ecmwflibs ?
Best regards

If I install ecmwflibs, it is not "for the fun" or "looking for trouble" (I would prefer not to), it's because it's a required dependency of an other package we are using in the same environment (climetlab).
May be we will have our own version of ecmwflibs... not providing any library !
I understand the purpose of ecmwflibs. But having a python package (ecmwflibs), which is not a dependency of another one (eccodes-python) and that change, when installed, the behaviour of this package, is quite surprising for the user...

Perhaps ecmwflibs should not be a required dependency of any ECMWF python package. In this case, it would not be a problem to give priority to ecmwflibs. Packages such as eccodes-python or climetlab will try to use it, if they don't find it they would try to find the required libraries locally, and if they can't find them they would fail with a message such as "Library eccodes not found. Please install ecmwflibs or provide a path to library eccodes on your system".

May be with extra_requires :
climetlab ==> install  climetlab with default dependencies, without optional dependency ecmwflibs
climetlab[ecmwflibs] ==> install climetlab with default dependencies + optional dependency ecmwflibs

And sorry to bother ECMWF staff with all my comments.
May be you will find them useful, may be not.
If you don't change anything it's not a problem for me, I have a workaround.
Regards

No problem, it is nice to have feedback.
I think we should keep the simple pip install climetlab to install all what you need: the default installation should be able to open grib files a show some plots, therefore the dependency on ecmwflibs.
Currently, climetlab makes assumption about which compilation flags where use, and using a local install of eccodes (i.e. not ecmwflibs), it may work but it is not tested on github actions.
Nevertheless, I agree that the packages climetlab, ecmwflibs, eccodes-python should not break each other.

The commit  https://github.com/ecmwf/ecmwflibs/commit/f97bc933e4f952670d1db60ffbe6fb92b5f93234 solves the problem that "this is not intuitive". Adding warning and help when env variables are ignored.


Feature/flag mycw

This PR prepares my-cw branch to be merged with develop branch.
It adds a flag on the .env file to activate or deactivate My CW feature.
FEATURE_MY_CLIMATEWATCH=true
It is used both in the app-routes.js file and in the tools-nav component

Make sure to add it to the k8/ staging and production files as well.

@simaob is that needed? being only a front end flag sounds kinda weird to be in those config files.
In case FEATURE_MY_CLIMATEWATCH is added should I also add FEATURE_QUANTIFICATIONS flag?

Oh you're right. But you need it on both the Dockerfile and Jenkinsfile!

Ready to review


Bb restraining

Description
Provide a brief description of the PR's purpose here.
Todos
Notable points that this PR has either accomplished or will accomplish.

[ ] adds possibility for bb restraints.
[ ] fixes pbc problem

Questions

[ ] any speed ups possible?

Status

[ ] Ready to go

Codecov Report

Merging #6 (c4f486b) into main (ffb7cb1) will decrease coverage by 5.70%.
The diff coverage is 57.72%.


plugin system

[x] Load jars properly
[ ] Load stuff from the other jar
[ ] Register the stuff when bot is starting

#359


RAS-638 Investigate how "Ready for live" button works, when replacing sample file (track time)

What and why?
This PR adds the the endpoint that the sample service uses to notify when the sample is ready and loaded so that when a sample is loaded in response operations, and all other values are loaded, the Set Ready for live button appears.
How to test?

Deploy this PR to your environment
Deploy https://github.com/ONSdigital/rm-sample-service/pull/248 to your environment

Must be deployed last

Deploy https://github.com/ONSdigital/response-operations-ui/pull/888 to your environment
Set up a collection exercise in this order

Required event dates
A collection instrument
A sample file

Ensure the sample has loaded
There is no Refresh link at the top of the page
The Set ready for live button appears and the collection exercise

Jira
RAS-638

/deploy scorfs

/deploy harrisonj


[import/extensions][TypeScript] Suggestion: set rules for .ts, .tsx, .mts, .cts to 'never' in import/typescript config

I suggest adding this rule to the import/typescript config (<eslint-plugin-import>.configs.typescript.rules):
'import/extensions': [
  'error',
  ignorePackages,
  {
    ts: 'never',
    tsx: 'never',
    mts: 'never',
    cts: 'never',
  },
],

since explicit .ts+ extensions are not allowed in TypeScript (except as on option in the cases of noEmit or emitDeclarationOnly, which are not the dominant tsconfigs – I guess).
So eslint would be prevented from raising an error in the case of an import/extensions rule from another eslint config, which usually rules error with never only for .js+ extensions.
@ljharb FYI, don't hesitate to let know what you think.

That sounds reasonable to me, but we'd need to use overrides so it only applies in TS files, and not in JS files.

"overrides": [
    {
      "files": ["**/*.ts", ""**/*.tsx", "**/*.mts", "**/*.cts"],
      "rules": {
        "import/extensions": [
          "error",
          ignorePackages,
          {
            js: "ignorePackages",
            jsx: "ignorePackages",
            mis: "ignorePackages",
            cjs: "ignorePackages",
            ts: "never",
            tsx: "never",
            mts: "never",
            cts: "never",
          },
       ],
    ]
  }
}


Identify config.ru rackup file as ruby

can you provide a reference?  I'm having a bit of a difficult time finding what uses this

Hey @asottile here you go https://github.com/rack/rack#usage. I'm not super into the ruby web community but do work on a rack/rails app (I guess...?) a little bit for work. I'm not sure if it makes sense to limit to config.ru (GH search shows a few files that look like ruby that aren't explicitly named config.ru), GH's linguist just goes off of the extension .ru: https://github.com/github/linguist/blob/master/lib/linguist/languages.yml#L5968
Would it be better to to just go with the extension?

:tada:


Create layout for Login page

Please create the layout for Login page in Typescipt, try to keep the current designing. If you have any confusing please contact @minhnb or me.

This issue was moved to mgm-interns/teamradio2-frontend#30


List the token kinds in child documentation in SyntaxNodes

Motivation

Fixes #1987.
Provides improved documentation and lists possible token choices in node's children.

Changes

Changes Child.documentation to be a computed property that wraps documentation provided when declaring the child, with the list of possible token choices. This should be extensible in the future to add more documentation for other child kinds as well.
Provides additional func in GrammarGenerator to generate token choices in a list.
Includes the generated code in the same commit.

I've just pushed up a commit that addresses a couple of review items:

@kimdv, I dropped single quotes from token choices list.
@ahoppen, hopefully I've made the wording cleaner. I like it more this way.
I moved some of the string generation into GrammarGenerator for now.

TODOs:

I'm deliberately not doing further refactoring / extraction of generation code, or extra documentation on what should go into GrammarGenerator in the future — I would love to work more on related problems to learn and listen to users first. Are we okay with that for now?
I noticed that if the child already has documentation screen passed from the declaration, it might look awkward, like this:/// The `@` sign.
///
/// ### Tokens
///
/// For syntax trees generated by the parser, this is guaranteed to be `@`
public var atSign: TokenSyntax {

@ahoppen, are we okay with these, and will remove manual comment? We could make some logit that omits the generated comment but only if it's a single choice and if child.documentation is not empty, but that's hacky.
This needs a rebase now.

Looking to get your thumbs up on the above, but will do a rebase in a sec to make the PR cleaner.

I'm deliberately not doing further refactoring / extraction of generation code, or extra documentation on what should go into GrammarGenerator in the future — I would love to work more on related problems to learn and listen to users first. Are we okay with that for now?

Yes, let’s leave any further refactorings to follow-up PRs.

I noticed that if the child already has documentation screen passed from the declaration, it might look awkward, like this:
/// The `@` sign.
///
/// ### Tokens
///
/// For syntax trees generated by the parser, this is guaranteed to be `@`
public var atSign: TokenSyntax {

@ahoppen, are we okay with these, and will remove manual comment? We could make some logit that omits the generated comment but only if it's a single choice and if child.documentation is not empty, but that's hacky.

Yes, that’s OK

@ahoppen, thank you for showing up and reviewing on a Saturday! Cleaned up the nit, and cleaned up SwiftCollectionsFile to align. Then ran the generator to ensure the generated sources stay intact.

@swift-ci Please test

Looks like the code isn’t formatted correctly. Could you run format.py?

Done. I need to set this up on my precommit hook 👀

On Sep 17, 2023, at 11:43 AM, Alex Hoppen @.***> wrote:
Looks like the code isn’t formatted correctly. Could you run format.py?
—
Reply to this email directly, view it on GitHub https://github.com/apple/swift-syntax/pull/2168#issuecomment-1722539691, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAAKU4O3WLRHRQFDZB663N3X25AF7ANCNFSM6AAAAAA4P3JCMY.
You are receiving this because you authored the thread.

@swift-ci Please test

@swift-ci please test windows


datalib.py: Merge TimeSeries when more than one returned per key

During a rebalance of a consistent hash cluster, after a partition event
on a replication > 1 cluster, or in other cases we might receive
multiple TimeSeries data for a metric key.  Merge them together rather
that choosing the "most complete" one.
Making an option to enable/disable change in https://github.com/graphite-project/graphite-web/pull/1293

Tested that on simple 2 node cluster - works now:

Creating local.random.diceroll3 metric on server1 - with values 1..5:

dzhdanov@graph001:/$ for x in 1 2 3 4 5; do echo "local.random.diceroll3 ${x} `date +%s`" | nc -q0 <IP_ADDRESS> 2103; sleep 60; done
dzhdanov@graph001:/$ whisper-dump.py /opt/graphite/storage/whisper/local/random/diceroll3.wsp | grep -A 10 'Archive 0 data'
Archive 0 data:
0:<PHONE_NUMBER>,          1
1:<PHONE_NUMBER>,          2
2:<PHONE_NUMBER>,          3
3:<PHONE_NUMBER>,          4
4:<PHONE_NUMBER>,          5
5: 0,          0
6: 0,          0
7: 0,          0
8: 0,          0
9: 0,          0

After finishing that script run similar on node 2
2. Creating local.random.diceroll3 metric on server2 with values 6..10:
dzhdanov@graph002:~$ for x in 6 7 8 9 10; do echo "local.random.diceroll3 ${x} `date +%s`" | nc -q0 <IP_ADDRESS> 2103; sleep 60; done
dzhdanov@graph002:~$ whisper-dump.py /opt/graphite/storage/whisper/local/random/diceroll3.wsp | grep -A 10 'Archive 0 data'
Archive 0 data:
0:<PHONE_NUMBER>,          6
1:<PHONE_NUMBER>,          7
2:<PHONE_NUMBER>,          8
3:<PHONE_NUMBER>,          9
4:<PHONE_NUMBER>,         10
5: 0,          0
6: 0,          0
7: 0,          0
8: 0,          0
9: 0,          0

Applying patch with MERGE_TIMESERIES=True
Checking Graph in Grafana:

Switching to MERGE_TIMESERIES=False on both nodes:

Please check and review - @jjneely @bmhatfield @obfuscurity @brutasse @SEJeff ?

PS: will fix release notes if we'll merge this

I'm really excited to see this go in, but I have a couple issues.
One, I'd prefer to see @jjneely given credit for his original work. Can you submit a new PR with his original commits + your new setting? Second, I think the setting name should reflect that we're merging remote store results, perhaps REMOTE_STORE_MERGE_RESULTS (and group it in each settings file accordingly)?
P.S. @deniszh Thanks again for the visual proof of the tests, very cool. :sparkles:

Hi Jason,
Will change variable now, but it's not very clear what I need to do with @jjneely commits?
I had no intention to hijack his contribution just to make this PR introduced in 0.9.14 for broad audience but TBH I had no idea how I can extract his commits from his PR and put it to mine... :(

No worries, I didn't think you were trying to hijack anything. I'd just like to make sure everyone gets attribution where possible, especially for a nice change like this. :smile_cat:
This should get you a new working branch with his commits.  Then make your changes, commit, and git push origin jjneely_merge_timeseries to your fork. You should then be able to submit a new PR that includes @jjneely's original commits and your changes.

Ah, will try that now. Tried to do the same through patches, but 2nd patch failing for some reason...

Abandinig that in favour of https://github.com/graphite-project/graphite-web/pull/1352


Skip duplicate blocks in committer

#112  👈
main

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @iuwqyir and the rest of your teammates on  Graphite


Structuring of JSON validation failures in sendGameMessage response

Error could be formatted like in this example:
Example error stub.txt

Only validate againtst correct JSON by sending GameAction class name.


Fix LateInitialization in FeatureDataSource

Prior to this patch when FeatureDataSource would fail due to a client failure it would incorrectly result in a LateInitialization exception. This was because FeatureDataSource was written assuming the client was Future<> based but the client was actually Callback based. Having these two different async approaches is not beneficial and is what enables this LateInitialization issue to even be possible.
To resolve this issue I changed the abstract BaseClient interface to use the newer Future<> style async rather than the older style Callback approach.
I then proceeded to update the FeatureDataSource to properly use the new Future<> based client properly and also modified it to eliminate it's needless propagation of the onError callback. I then went through and made sure that all the uses of FeatureDataSource were properly updated. I then made sure to even wrap the usage of FeatureDataSource is in a swallowing try/catch to maintain the existing external behavior. We made decide to change this. But figured it best to not change external behavior of the API as that would be a breaking change.
In my opinion changing the behavior to NOT swallow errors would be a better long term approach IMHO. It would enable users to, for one, be aware of the errors that are happening. And two, be able to explicitly handle or ignore the errors. But, to expedite getting this change in I will leave this for a future patch where more time and discussion can be had around it. As it would be a breaking change.
[changelog]
fixed: LateInitialization exception on client failures in FeatureDataSource

Prior to this patch when FeatureDataSource would fail due to a client failure it would incorrectly result in a LateInitialization exception. This was because FeatureDataSource was written assuming the client was Future<> based but the client was actually Callback based. Having these two different async approaches is not beneficial and is what enables this LateInitialization issue to even be possible.
To resolve this issue I changed the abstract BaseClient interface to use the newer Future<> style async rather than the older style Callback approach.
I then proceeded to update the FeatureDataSource to properly use the new Future<> based client properly and also modified it to eliminate it's needless propagation of the onError callback. I then went through and made sure that all the uses of FeatureDataSource were properly updated. I then made sure to even wrap the usage of FeatureDataSource is in a swallowing try/catch to maintain the existing external behavior. We made decide to change this. But figured it best to not change external behavior of the API as that would be a breaking change.
In my opinion changing the behavior to NOT swallow errors would be a better long term approach IMHO. It would enable users to, for one, be aware of the errors that are happening. And two, be able to explicitly handle or ignore the errors. But, to expedite getting this change in I will leave this for a future patch where more time and discussion can be had around it. As it would be a breaking change.
[changelog] fixed: LateInitialization exception on client failures in FeatureDataSource

Thanks for this detailed explanation and relative suggestion for a fix, but in discussion on #42 all layers of the SDK use the call-back strategies which were not being used at the data layer by making it consistent and removing the unnecessary definition of intermediary variables we can achieve the same.
Yes, I am aligned with your view that in general SKDs should not swallow the error it should be propagated to the user and should handle initialization errors gracefully. It should provide errors that can help to troubleshoot and resolve any issues, so in this context, we have defined onInitializationFailure which will be called when there is an error in SDK initialization.
These changes are in pr #44, I would consider your review in this context.
Thanks.


Timeline  backtrace failure on OpenAtom traces

Original issue: https://charm.cs.illinois.edu/redmine/issues/457

Trace to sender, as invoked by the right click pulldown menu, fails to load for OpenAtom traces for nearly all entry methods.  Failure error message is "Message was sent from outside the current time range".  However, that is a clear misdiagnosis.  When you have loaded an entire time step and examine methods from phases late in the time step, there is no way for the sender to have come from outside the step.
See ~bohm/work/w256_4k.t4 for example traces.  It has a saved interval which matches a complete timestep.  You can load a few timelines (0-3) and try to backtrace any method.  The only back trace invocations which succeeded for me are for messages which where sender PE=receiver PE.

Original author: Yanhua Sun
Original date: 2014-03-31 22:11:27

Is this using uGNI  SMP?   I can see some tracing back working, some not work .  Most likely this is due to some problem of tracing on comm thread.  If there is no comm tracing, it will be likely to work

Original date: 2014-03-31 22:44:52

Yanhua Sun wrote:

Is this using uGNI  SMP?   I can see some tracing back working, some not work .  Most likely this is due to some problem of tracing on comm thread.  If there is no comm tracing, it will be likely to work

Yes, those are runs on BlueWaters uGNI smp with comm thread tracing enabled.  I'll try a version without commthread tracing.

Original author: Yanhua Sun
Original date: 2014-03-31 23:17:12

One thing I noticed is that  some entry methods are declared to be 'local'. This confuses Projections, since there  nested execution entries.

Original author: Yanhua Sun
Original date: 2014-04-01 03:57:51

I figured it out and submitted a fix in gerrit.  If you do not want to wait for the long process.
You can simple do this. in cklocation.C line 1774, change to
_TRACE_BEGIN_EXECUTE_DETAILED(env->getEvent(), ForChareMsg,epIdx,env->getSrcPe(), env->getTotalsize(), idx. getProjectionID(env->getArrayMgrIdx()));
the main change is getSrcPe().
Can you try this with your openAtom and see whether it fixes.  I tried simple programs and it worked

Original date: 2014-04-01 19:01:34

I tested it and it does seem to work for the entry methods with are not [local].  So I think that the original bug is fixed.
It is a bit awkward in practice.  Every worker thread traces back to the commthread and then you have to manually zoom in on the comm thread to find the corresponding sender event and initiate a backtrace from there to get to the external sender.  Not a bug exactly, but it violates the user's desire to really get to actual sender rather than the intermediary event on the commthread.  There may be some use cases where the user just wants the immediate precedecessor on the commthread, but I think most backtrace usage falls in the class of wanting it to automatically provide both the commthread hop and the external sender in one click.
On a related note, we use [local] to capture the situation when an event triggers a chain of categorically different computations.  The whole point of [local] is to make these visible to Projections, so if they cause some confusion to Projections, then [local] is a failed feature.  We were operating under the assumption that [local] events would be considered children of the enclosing parent event, and therefore a backtrace from a local should always go to the parent.  Some of that will be cleared up a conversion to SDAG, but I think we want [local] to have well defined behavior regardless.
I can submit these as separate issues to redmine if you like.

Original author: Yanhua Sun
Original date: 2014-04-01 20:35:29

Tracking one message back will go to its comm thread. However, if you select trace back in the menu, you can track back multiple messages.
With comm thread tracing, the original information of sender is lost, replaced by the intermediate sender.  If we want both, we need to modify log format, that will be more work.
Also if you want the real external sender, you can disable comm thread tracing.

Original date: 2014-04-01 20:42:43

When using comm thread tracing, you usually want to see both the intermediate comm thread event and the external node sender.  Why not have a projection trace back feature that would trace back through the comm thread to the originator?

Original date: 2014-04-01 20:43:08

Since it sounds like the comm thread event will trace back to the external send, it would seem natural to have traced-back events that come from a comm thread to automatically trace back a step further (or two steps, if the remote comm thread sent on a worker thread's behalf) to their external source when clicked.

Original author: Yanhua Sun
Original date: 2014-04-01 20:46:31

The function is there. Now by default it tracks back 10+ messages. We can have an option to let users decide how many further messages to track back. I will assign this to Junior students as an exercise for them, who work on Projections. It should be straightforward.

Original author: Yanhua Sun
Original date: 2014-04-02 16:46:19

I will close this thread and open an issue for inline (local) entry method tracing back.


Should I make HubConnection static I have multi screen app

I'm getting disconnected from server and this the error
Unhandled Exception: SocketException: OS Error: No route to host, errno = 113
Should I make the hub connection static to a make the connection stay alive or what to do in this case

This is not an issue within your code. That looks like your device can not reach the server.


Update Program.cs

srgtrhyth

This is comment after icon blinked

new xcomm

A new comment

demo jhjkshdckjashdc

this is new comment

new comment for azf

Changes looks fine.


Errors during compiling (iram1_0_seg)

Hi,
I downloaded the code, but during the compiling I get this error:
CC driver/spi.c
CC driver/new_uart.c
CC user/config_flash.c
CC user/ringbuf.c
CC user/rboot-ota.c
CC user/acl.c
CC user/user_main.c
CC user/rboot-api.c
CC user/sys_time.c
CC mqtt/mqtt.c
CC mqtt/mqtt_msg.c
CC mqtt/queue.c
CC mqtt/proto.c
CC mqtt/ringbuf_mqtt.c
CC mqtt/utils.c
CC easygpio/easygpio.c
AR build/app_app.a
/opt/esp-open-sdk/xtensa-lx106-elf/lib/gcc/xtensa-lx106-elf/4.8.5/../../../../xtensa-lx106-elf/bin/ld: build/app.out section .text' will not fit in region iram1_0_seg'
collect2: error: ld returned 1 exit status
make: *** [Makefile:133: firmware/0x02000.bin] Errore 1
It seems not enough ram/space: how can I solve this issue ? or may be better: which version of sdk should I use ? I'm using the 2.1.0-18 and I installed the esp-open-lwip-nat too.
I'm trying to recompile the fw in order to hide the passwords from the web page :)
Cheers,
Angelo

Did you enable more compile options? Try to disable those you probably don't need.
Did you enlarge the the webpage? Try to reduce that.

Thanks for the fastest answer, but I did nothing.
just git clone and make (after changing the BUILD_AREA inside the Makefile in order to point my environment): nothing more !

Did you use the recommended version of the open_sdk? Different versions have different amount of mem left.

no luck.
I reinstalled the 2.2 sdk following your suggestion, but always the same error:
/opt/esp-open-sdk/xtensa-lx106-elf/lib/gcc/xtensa-lx106-elf/4.8.5/../../../../xtensa-lx106-elf/bin/ld: build/app.out section .text' will not fit in region iram1_0_seg'
just to know, looking at build dir the file app_app.a is 785674 bytes.

Hmm,...
Try, just for testing, to disable some mem conuming feature, e,g,:
#define		MQTT_CLIENT 0
in user_config.h

as reported in the build instruction, I tested the "blink" example.. obviously !
I removed the mqtt, web config and WPA2_PEAP. The file in the build is about 699K, but always the error !
#define		WEB_CONFIG 0
#define		MQTT_CLIENT 0
#define		WPA2_PEAP 0
the esp is a 4Mb, do I have to inform/force the linker or not ?
Just to clarify, I'm using /opt/esp-open-sdk as directory for the esp-sdk and I'm using ~/Software/esp8266/project/esp_wifi_repeater as source dir.

This error happens, when there is not enough instruction RAM (think 48 KB or so) available to hold all the required code. It is not directly related to the flash size but to those functions in the code that are not marked as "ICACHE_FLASH_ATTR". Functions that are marked this way are only cached in iRAM and be be reloaded from flash as required. Typically IRQs are not ICACHE_FLASH_ATTR. Sometimes, when I added new functions and forgot the ICACHE_FLASH_ATTR keyword, I got this error.
But now I double checked my build environment and it seems to be fine for me - no such error with the current repo.

My fault !!
I'm using Sming to develop my projects and the removing from env (unset) SDK_BASE fixed the issue. It was really strange effectively: a full reinstall of software always with the same error.
Thanks for your support and patience !
Cheers,
Angelo


Deeply nested columns do not always fit in row

I noticed an issue with horizontal overflow when creating a third level row/column structure. I have only tested a few permutations, but there seems to be a consistent issue with a third level row/column combination using .col-11 and .col-1.
You can see an example of the issue in this fiddle.
You can see the correct behavior (with .col-10 and .col-2) in this fiddle.
Operating System: macOS High Sierra 10.13.3
Browser: FireFox 58.0.2

Didn't realize the preferred example sites were CodePen and JS Bin before I created the examples in JSFiddle. If it is a big issue, I can re-create them in one of the preferred site.

@dfalt, It's not the fact that the columns are nested which causes this "issue", it's because the default padding-left and padding-right of columns combined are wider than the desired width.
I see two options how you could solve this:

Add the p-0 class to .col-1 (example: https://codepen.io/MartijnCuppens/pen/MVwvoE, resize the screen below 360px to see the effect)
Work with no-gutters (https://getbootstrap.com/docs/4.0/layout/grid/#no-gutters). This removes the padding from all columns.

Yup, closing per last comment.

Ah, right... okay that makes sense. Thanks for the explanation.


feat(AutoControlledComponent): Default values

Fixes #764
I noticed a bug using AutoControlledComponent where initial state for non-AutoControlled props was getting clobbered in the componentWillMount of the ACC. This is because ACC uses this.state = ... instead of this.setState to set the state.
Example of the bug:
class MyComponent extends AutoControlledComponent {
  state = { someField: 'default' }

  render () =>

}

// Actual
shallow(<MyComponent />).state() === {}

// Expected
shallow(<MyComponent />).state() === { someField: 'default' }

In fixing that bug, I came across the #764 issue which I realized could be solved simultaneously. The initial state is set within the constructor which means it's available in the ACC's componentWillMount.  I updated the componentWillMount to use the initial state if the value of the prop was not defined via props.
For example:
class MyComponent extends AutoControlledComponent {
  state = { someField: 'default' }

  static autoControlledProps = ['someField']

  render () =>

}

shallow(<MyComponent />).state() === { someField: 'default' }
shallow(<MyComponent defaultSomeField='propDefault' />).state() === { someField: 'propDefault' }
shallow(<MyComponent someField='prop' />).state() === { someField: 'prop' }

This seems pretty intuitive to me. The props are being passed directly to state, so to specify a "global default" outside of props, you set the state yourself in the constructor (or use the es7 property initializer, which is basically just sugar on the same thing).

Edit As an aside, I've been using AutoControlledComponent as a base for some of my own components via:
import AutoControlledComponent from 'semantic-ui-react/dist/commonjs/lib/AutoControlledComponent'

I think it's a really cool abstraction and lets you write super flexible/reusable components that either do all the work or let the user do it.
@levithomason - Thoughts on open-sourcing it as a separate package? Its only dependency is lodash (which you could probably even drop) so would probably be pretty simple.

Current coverage is 95.80% (diff: 100%)

Merging #1066 into master will decrease coverage by 0.01%

@@             master      #1066   diff @@
==========================================
  Files           873        866     -7
  Lines          4813       4791    -22
  Methods           0          0
  Messages          0          0
  Branches          0          0
==========================================
- Hits           4612       4590    -22
  Misses          201        201
  Partials          0          0

Powered by Codecov. Last update ae21628...34ccfa4

I thin this sounds sane, using the initial state as the "default" AC prop values.  Another way of thinking about this is that it is the "default state", since, the props are copied to state immediately.
I'm gonna update this PR to undo the Accordion hacks as well just to ensure it is working correctly.

Left a comment but otherwise I think this is g2g 👍

I try to avoid extra nesting / branch logic when possible.  Perhaps went too far in that case, updated :)

Released in<EMAIL_ADDRESS>


[AutoDiff] Part 2: Add differentiable activity analysis and entry point of control flow canonicalization

Activity analysis helps AD figure out the result indices and parameter indices for a nested differentiation task. For example:
func bar(x: Float) {
  let (a, b, c) = foo(x, 0, 1)
  return b
}

#gradient(bar)

During automatic differentiation, we only need the partial derivative of dependent variable b with respect to independent variable x, that is, to reverse-differentiate foo from the second result with respect to the first parameter. Activity analysis is a simple data flow analysis that tells what variables (in the SIL case, SSA values) are "varied" with respect to independent variables, and what are "useful" for the output of a function.
The relevant literature is not using SSA form, so we twisted the definition a little bit.
Note: This is going to produce a bunch of unused warnings, but I'm merging other bits of #17901  asap.

@swift-ci please test tensorflow

@swift-ci please test tensorflow

@swift-ci please test tensorflow

@swift-ci please test tensorflow

@swift-ci please test tensorflow and merge

@swift-ci please test tensorflow

@swift-ci please test tensorflow


[WIP] Refactor ColumnPageWrapper

Be sure to do all of the following checklist to help us incorporate
your contribution quickly and easily:

[ ] Any interfaces changed?

[ ] Any backward compatibility impacted?

[ ] Document update required?

[ ] Testing done
Please provide details on
- Whether new unit test cases have been added or why no new tests are required?
- How it is tested? Please attach test report.
- Is it a performance related change? Please attach the performance test report.
- Any additional information to help reviewers in testing this change.

[ ] For large changes, please consider breaking it into sub-tasks under an umbrella JIRA.

Build Success with Spark 2.1.0, Please check CI http://<IP_ADDRESS>:8080/job/ApacheCarbonPRBuilder2.1/765/

Build Failed with Spark 2.2.1, Please check CI http://<IP_ADDRESS>:8080/job/ApacheCarbonPRBuilder1/963/

Build Failed  with Spark 2.3.1, Please check CI http://<IP_ADDRESS>:8080/job/carbondataprbuilder2.3/9031/

Build Success with Spark 2.1.0, Please check CI http://<IP_ADDRESS>:8080/job/ApacheCarbonPRBuilder2.1/768/

Build Success with Spark 2.1.0, Please check CI http://<IP_ADDRESS>:8080/job/ApacheCarbonPRBuilder2.1/770/

Build Success with Spark 2.2.1, Please check CI http://<IP_ADDRESS>:8080/job/ApacheCarbonPRBuilder1/967/

Build Success with Spark 2.3.1, Please check CI http://<IP_ADDRESS>:8080/job/carbondataprbuilder2.3/9035/

Build Success with Spark 2.1.0, Please check CI http://<IP_ADDRESS>:8080/job/ApacheCarbonPRBuilder2.1/784/

Build Success with Spark 2.3.1, Please check CI http://<IP_ADDRESS>:8080/job/carbondataprbuilder2.3/9049/

Build Success with Spark 2.2.1, Please check CI http://<IP_ADDRESS>:8080/job/ApacheCarbonPRBuilder1/981/

Build Success with Spark 2.1.0, Please check CI http://<IP_ADDRESS>:8080/job/ApacheCarbonPRBuilder2.1/829/

Build Success with Spark 2.3.1, Please check CI http://<IP_ADDRESS>:8080/job/carbondataprbuilder2.3/9094/

Build Success with Spark 2.2.1, Please check CI http://<IP_ADDRESS>:8080/job/ApacheCarbonPRBuilder1/1026/

LGTM


Stream observer

In regards to the new stream functionality in SwiftCLI 4.2.0, what's the best way to filter/forward a stream? For example taking what is written to stdout in swift build and then somehow filtering it and re-outputting it?
Would that be a subclass of WriteStream that overrides write and forwards it on to another stream, or some sort of observation mechanism on Pipe, or is there a better way?

Is this correct?
let taskOut = PipeStream()
let taskError = PipeStream()
let task = Task(executable: "/bin/bash", args: ["-c", command], currentDirectory: path.string, stdout: taskOut, stderr: taskError)
task.runAsync()
while let line = taskOut.readLine() {
    //filter somehow
    if let out = line.{filter}  {
        stderr <<< out
    }
}
while let line = taskError.readLine() {
    //filter somehow
    if let error = line.{filter}  {
        stderr <<< error
    }
}
let status = task.finish()

The best way is to do exactly that but dispatch it to an async queue:
DispatchQueue.global().async {
  while let line = taskOut.readLine() {
      //filter somehow
      if let out = line.{filter}  {
          stdout <<< out
      }
  }
}

I originally included a readabilityHandler on ReadableStream, but the issue with FileHandle.readabilityHandler is that you have no way of knowing when EOF is reached. By using DispatchQueue on the other hand, you can synchronize your stream transformations:
let allDone = DispatchSemaphore(value: -1)
DispatchQueue.global().async {
  while let line = taskOut.readLine() {
      //filter somehow
      if let out = line.{filter}  {
          stdout <<< out
      }
  }
  allDone.signal()
}
DispatchQueue.global().async {
  while let line = tasError.readLine() {
      //filter somehow
      if let error = line.{filter}  {
          stderr <<< error
      }
   }
    allDone.signal()
}
let status = task.finish()
allDone.wait()

I do wonder if stream transformations are common enough that a simpler way of doing this should be built into SwiftCLI -- I'm thinking maybe it should be

Something like:
extension ReadableStream {
      public func onText(_ handler: @escaping (String?) -> ()) {
        DispatchQueue.global().async { [weak self] in
            while let text = self?.read() {
                handler(text)
            }
            handler(nil)
        }
    }

    public func onLine(_ handler: @escaping (String?) -> ()) {
        DispatchQueue.global().async { [weak self] in
            while let line = self?.readLine() {
                handler(line)
            }
            handler(nil)
        }
    }
}

would allow use like:
let semaphore = DispatchSemaphore(value: -1)
out.onLine { (line) in
    if let line = line {
        stdout <<< tranform(line)
    }
    semaphore.signal()
}
err.onLine { (line) in
    if let line = line {
        stderr <<< tranform(line)
    }
    semaphore.signal()
}

Yes, having built in support would be nice. If it's possible to abstract it one level higher to remove the use of semaphores that would be great

This doesn't seem to work:
public class FilterStream: WritableStream {

    public let processObject: Any
    public let writeStream: WriteStream
    public var encoding: String.Encoding {
        get {
            return writeStream.encoding
        }
        set(newValue) {
            writeStream.encoding = newValue
        }
    }

    private var allDone: DispatchSemaphore?
    private var filter: (String) -> String?
    private var filteredSteam: WritableStream

    public init(filteredSteam: WritableStream, filter: @escaping (String) -> String?) {
        let pipe = Pipe()
        self.filteredSteam = filteredSteam
        self.filter = filter
        self.processObject = pipe
        self.writeStream = WriteStream(writeHandle: pipe.fileHandleForWriting)
    }

    public func startFiltering() {
        allDone = DispatchSemaphore(value: -1)
        DispatchQueue.global().async { [weak self] in
            while let line = readLine() {
                if let filtered = self?.filter(line)  {
                    self?.filteredSteam <<< filtered
                }
                self?.allDone?.signal()
            }
        }
    }

    public func stopFiltering() {
        allDone?.wait()
    }
}

I think the issue might just have been that your semaphore should have been initialized with a value = 0.
I'm thinking the best route might be to implement a more general line stream:
public class LineStream: WritableStream {

    public let processObject: Any
    public let writeStream: WriteStream
    public var encoding: String.Encoding {
        get {
            return writeStream.encoding
        }
        set(newValue) {
            writeStream.encoding = newValue
        }
    }

    private let semaphore = DispatchSemaphore(value: 0)

    public init(each: @escaping (String) -> ()) {
        let pipe = Pipe()
        self.processObject = pipe
        self.writeStream = WriteStream(writeHandle: pipe.fileHandleForWriting)

        let readStream = ReadStream(readHandle: pipe.fileHandleForReading)
        DispatchQueue.global().async { [weak self] in
            while let line = readStream.readLine() {
                each(line)
            }
            self?.semaphore.signal()
        }
    }

    public func wait() {
        semaphore.wait()
    }

}

which then could be used as a transform stream:
let stream = LineStream { (line) in
     stdout <<< transform(line)
}

See #49

4.3.0


Issue Closed

Issue Closed

I think UltimaLive needs to be enabled for this setting, but can the setting be set to work without UltimaLive. It does work when I do the map sizes in MapLoader but being able to put it in settings.json would eliminate the need to compile a different version.

Issue Closed


Remove hard-coded parts of auth flow

Created by: @dusan-kovacik-profiq Mar 03 2022 at 08:57 CET
Last updated: Mar 24 2022 at 14:28 CET
ClickUp ID: IK-2356
This is just a wrapper task for tasks which need to be done in order to get rid of hard-coded areas of code in UI SDK.

Commented by: @dusan-kovacik-profiq Mar 03 2022 at 10:08 CET
FIY @bayegan @marvinkite @PouyanHz @hanny21


Boss idea

how about a boss that Starts with an empty mana pool, shown below his health bar. As you deal damage to him, his manabar will fill up. When the bar is full, which could be at like 33% Hp, the boss enters a second stage, and he becomes way more powerful, he gains a strong attack slow and regen or something. The boss is countered by diffusal, which makes it so that the second stage triggers later, so you need to fight less

I would think, of a skill activation if you inflict enough dmg, so a full manabar may trigger a specific skill (dmg, cast range or type of skill maybe depend on the overall amount of dmg the Boss has taken)

Yeah, something in that genre

This seems like a basic phase design, except it can be countered by mana burn/break. Could you elaborate on what you see this boss doing, besides that? Some way it could be interesting while its mana is charging up, for example.

Maybe as his mana reached different levels, like 33%, he Starts putting down nether wards, at 66% maybe tombstones or something, and at 100% he van maybe Spawns axes that call you, but don't rly deal much dmg, just district you

*distract


Custom schema usage error

Describe the bug
Try use custom schema which was created from rpc call in dynamic mode
Get an error:
PostgrestException(message: The schema must be one of the following: public, storage, graphql, realtime,  code: PGRST106, details: Not Acceptable, hint: null)
I/flutter (11846): #0      PostgrestBuilder._parseResponse (package:postgrest/src/postgrest_builder.dart:283:7)
I/flutter (11846): #1      PostgrestBuilder._execute (package:postgrest/src/postgrest_builder.dart:164:14)
I/flutter (11846):
I/flutter (11846): #2      PostgrestBuilder.then (package:postgrest/src/postgrest_builder.dart:372:24)
I/flutter (11846):
To Reproduce

init supabase client
call rpc( which create custom schema with name (customSchema) + make all grants(USAGE, PRIVILEGES)
make call: await sbClient.schema(customSchema).from(....)
get error from supabase flutter

The schema has to be added to postgrest as well. Best to follow the documentation. Though, I think it's generally uncommon to create whole new schema from rpc.


H.264 hardware encoding in FFMPEG

Apparently h264 hw encoding is enabled in FFMPEG for rockchip products.
https://github.com/rockchip-linux/ffmpeg/commit/6c43f88bc5cdf666229c95ab60de1e7354cd7f52
Any idea on when this will make it's way into a build?

Can you update that Link?

Looks like they removed the repo.

@ayufan Is there a way to make HW accel work on this board? For me is very important since I need to setup a IP camera monitoring system to monitor 24hs the activity of my baby, which he is disabled.
This is the only hardware I have right now and since how expensive are here in my country (Argentina), I can't afford for another one.
Using without HW accel is not an option since uses a lot of CPU (I have 2 cameras) and has a lot of streaming delay, which is not good for constant monitoring.
Thanks in advance.


Unable to set LowLatency while this is documented.

In the documentation about setting the options for a port the LowLatency option is mentioned:
 * {Boolean} [setOptions.lowLatency=true] enables low latency mode (linux specific - admin rights may be required)
Unfortunately when looking in the typescript code (V10.4.0) there is no mention of the latency option:
declare namespace SerialPort {
    interface SetOptions {
        brk?: boolean;
        cts?: boolean;
        dsr?: boolean;
        dtr?: boolean;
        rts?: boolean;
    }
}

We are working on a Linux platform and would like to enable LowLatency from typescript. Looking at the bindings-cpp code this should be possible. So for our case updating the typescript code would be best but up until that point maybe update the docs?
Best regards,
Bart

@BartHertog I just ran into the same issue. It looks like there is a bindings-specific interface called LinuxSetOptions which extends SetOptions, but the issue is SerialPort.set() is expecting an argument of type SetOptions.
However, if you inspect the SerialPort object after opening the port, you'll see there is a port property which is of type LinuxPort and that has a set() method that accepts LinuxSetOptions.
So for example, change:
const port = new SerialPort(...);
port.set({lowLatency: true});

to
const port = new SerialPort(...);
port.port.set({lowLatency: true});

Hello @richdunajewski,
Thank you for this tip! I will look into this next week.
Best regards,
Bart

Hello @richdunajewski,
Currently we are using version 9.4.0. In this version it is not possible to do this. Are you using a newer version?
We have looked in to using SerialPort.Binding.set() however the SetOptions interface just does not define the lowlatency option.


chore(ui): Upgrade TypeScript 5.3.3 and related devDependencies in ui

Description
Quarterly update has no breaking changes for ui code.
https://devblogs.microsoft.com/typescript/announcing-typescript-5-3/

https://devblogs.microsoft.com/typescript/announcing-typescript-5-3/#interactive-inlay-hints-for-types

TypeScript’s inlay hints now support jumping to the definition of types!

https://devblogs.microsoft.com/typescript/announcing-typescript-5-3/#lib-d-ts-changes

Types generated for the DOM may have an impact on your codebase.

Problem
Upgrade TypeScript alone does not provide consistent lint and build.
For example, outdated babel plugins seem like a reason why ui had build errors for TypeScript 4.9 satisfies operator.
Analysis

babel-preset-react-app package has become unmaintained

It includes the following which are outdated:
"@babel/core" "^7.16.0"
"@babel/plugin-transform-flow-strip-types" "^7.16.0"
"@babel/plugin-transform-react-display-name" "^7.16.0"
"@babel/plugin-transform-runtime" "^7.16.4"
"@babel/preset-env" "^7.16.4"
"@babel/preset-react" "^7.16.0"
"@babel/preset-typescript" "^7.16.0"
"@babel/runtime" "^7.16.3"

It includes 1 proposal plugin which is outdated:
"@babel/plugin-proposal-decorators" "^7.16.4"

It includes 5 proposal plugins which have been superseded by transform plugins:
"@babel/plugin-proposal-class-properties" "^7.16.0"
"@babel/plugin-proposal-nullish-coalescing-operator" "^7.16.0"
"@babel/plugin-proposal-numeric-separator" "^7.16.0"
"@babel/plugin-proposal-optional-chaining" "^7.16.0"
"@babel/plugin-proposal-private-methods" "^7.16.0"

Solution
Update the following at least as often as TypeScript.

Upgrade babel preset-typescript and other packages for consistent build.

devDependencies in ui/apps/platform/package.json because babel-preset-react-app requires earlier minor versions.
Merge versions of babel dependencies for clarity and because it has a domino effect to remove unneeded older versions.

Upgrade typescript-eslint packages for consistent lint. Update as often as ESLint.

devDependencies in ui/apps/platform/package.json
resolutions in ui/package.json because eslint-config-react-app requires earlier major version.

Checklist

[x] Investigated and inspected CI test results
[x] ~Unit test and regression tests added~

Testing Performed

yarn lint in ui/apps/platform
yarn build in ui and then compute branch - master for the following

wc build/static/js/*.js
main.css: -421 = 3946858 - 3947279
total: -1190 = 10374125 - 10375315
ls -al build/static/js/*.js | wc -l
-1 = 89 - 90 files

yarn start in ui

Manual testing

Visit /main/dashboard

Regression testing

yarn cypress-open in ui/apps/platform

vulnmanagement/clusterVCves.test.js
vulnmanagement/clusters.test.js
vulnmanagement/deployments.test.js
vulnmanagement/imageComponents.test.js
vulnmanagement/imageCves.test.js
vulnmanagement/images.test.js
vulnmanagement/namespaces.test.js
vulnmanagement/nodeComponents.test.js
vulnmanagement/nodeCves.test.js
vulnmanagement/nodes.test.js

Unit testing

yarn test in ui/apps/platform and then press a

Dave, good eyes to see warning:
One of your dependencies, babel-preset-react-app, is importing the
“@babel/plugin-proposal-private-property-in-object” package without
declaring it in its dependencies. This is currently working because
“@babel/plugin-proposal-private-property-in-object” is already in your
node_modules folder for unrelated reasons, but it may break at any time.

babel-preset-react-app is part of the create-react-app project, which
is not maintianed anymore. It is thus unlikely that this bug will
ever be fixed. Add “@babel/plugin-proposal-private-property-in-object” to
your devDependencies to work around this error. This will make this message
go away.

From this commit:
https://github.com/babel/babel-plugin-proposal-private-property-in-object/commit/9c3af8dfdc01c0450fba6adf23bd9d1d4cf39927
This commit attempts to fix the problem:
https://github.com/facebook/create-react-app/commit/0f5e990b8a04f53861d64ff53751517bbf73d867#diff-34df9ab71f49e2da0a54c01b22e503d19c70987b66c806826d5ed1b7022f7314R31

In 11318 a change was made to babel-preset-react-app to require @babel/plugin-proposal-private-property-in-object, but no such dependency was added to package.json. This fixes that mistake by adding the dependency.

However no published version of babel-preset-react-app has this change.
Therefore, we follow the advice to add "@babel/plugin-proposal-private-property-in-object": "7.18.6" to ui/apps/platform/package.json file.


Update buyers-guide.html

'and compare' in this context was misleading. Reads like you might be comparing cloud services against specialist services.
'deliver' is a banned GDS word. Edited to reflect homepage description
added in subheadings to make the distinction between frameworks clearer

Can we use deliver in the context of receiving letters?

Looks good to me :+1:

Yes… and pizza.

On 23 Sep 2015, at 16:30, Kevin Keenoy<EMAIL_ADDRESS>wrote:
Can we use deliver in the context of receiving letters?
—
Reply to this email directly or view it on GitHub https://github.com/alphagov/digitalmarketplace-buyer-frontend/pull/168#issuecomment-142640063.


Ajax call is not hitting in my static method

That will not work because of cross-domain issues - look into CORS.

hi the above URL is a sample i have added my own static webservice URL


Rewrite table! as proc_macro

This commits rewrites diesel::table! as proc marco. The rewrite is done for the following reasons:

Allow to reuse the syn parser of table! for other functionality as well (That's the main reason, might be really useful for some ideas regarding to for example generating migrations by diffing schema.rs + the actual database in diesel-cli)
Simpler to read, as the old macro_rules! based implementation was quite hard to follow (That should make it easier to implement future changes to table! as well)
Better error reporting, as we now can control the exact spans of items.

@diesel-rs/reviewers This is ready for a final review

@diesel-rs/reviewers Please leave a comment here if you plan to review this PR. Otherwise I would like to move forward and merge it next week.


Add SSR support

Alaska Airlines Pull Request
Please include a summary of the change and which issue is fixed. Please also include relevant motivation and context. List any dependencies that are required for this change.
Resolves: #60
Summary:
Please summarize the scope of the changes you have submitted, what the intent of the work is and anything that describes the before/after state of the project.
Type of change:
Please delete options that are not relevant.

[ ] New capability
[x] Revision of an existing capability
[ ] Infrastructure change (automation, etc.)
[ ] Other (please elaborate)

Checklist:

[x] My update follows the CONTRIBUTING guidelines of this project
[x] I have performed a self-review of my own update

By submitting this Pull Request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
Pull Requests will be evaluated by their quality of update and whether it is consistent with the goals and values of this project. Any submission is to be considered a conversation between the submitter and the maintainers of this project and may require changes to your submission.
Thank you for your submission!
-- Auro Design System Team

No type=module in the package.json?

I fixed this myself

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Formalize Adapter constructor API

Summary of discussion with @genematx
We have a diverse variety of classmethod constructors for Adapters. These include from_uri, from_uris, from_single_file, from_array and so on. This is in addition to some adapters that have no classmethod constructors and merely use __init__.
These constructors are used in two distinct use cases. These are registered with two registries, respectively, that are each keyed on MIME type.

I have a file, with an identified MIME type, and I want to inspect the file to determine its structure (and metadata...) and index that in the catalog database.
I have information about a file from the catalog database, and I need to open the file and read out some data.

In the first case, we do not know the structure, and in the second case we always know the structure. This points toward having two classmethod constructors with standard names, one per use case. The __init__ can be reserved as an internal API, corresponding to its status as a single privileged entrypoint. (We listen to @dutc sometimes.)
Benefits:

The registries can point to classes like CSVAdapter, not a zoo of diverge classmethods like CSVAdapter.from_single_file.
We can remove the fuzzy conditional branch on if structure is None. We know in the calling code whether we have a structure or not.
For developers, it will more clear what needs to be implemented. At the moment, variety of contructors makes it hard to know what is required.

Downsides:

If we use the classes in the registries, then all Adapters must be classes; they cannot be simple functions. (If this is seen as an important, we can still implement the proposed change but just have the registries point the now-consistent method.)
Writing an Adapter requires implementing more code.

This is very cool. I have no issues requiring that Adapters be classes.

@danielballan Can structure and metadata be made properties of an Adapter class (instead of proper callable methods)?

I think they should remain methods. In fact, a year or so ago we changed metadata from a property to a method. Two reasons:

Support optional async and possibility that these methods may be doing I/O rather than returning cached state.
Leave room for additional optional methods, such as predicate-pushdown on filtered metadata.

Both arguments are stronger for metadata than structure but I am in favor of leaving both as methods to keep our options open.


Unknown function: fzf#wrap

I'm getting the following error message if I'm trying to open up the code actions:
Error executing vim.schedule lua callback: Vim:E117: Unknown function: fzf#wrap
stack traceback:
	[C]: in function 'fzf#wrap'
	...rnax/.local/share/nvim/lazy/fzf-lsp.nvim/lua/fzf_lsp.lua:338: in function 'fzf_wrap'
	...rnax/.local/share/nvim/lazy/fzf-lsp.nvim/lua/fzf_lsp.lua:415: in function 'select'
	/usr/share/nvim/runtime/lua/vim/lsp/buf.lua:702: in function 'on_code_action_results'
	/usr/share/nvim/runtime/lua/vim/lsp/buf.lua:720: in function 'callback'
	/usr/share/nvim/runtime/lua/vim/lsp.lua:1956: in function 'handler'
	/usr/share/nvim/runtime/lua/vim/lsp.lua:1388: in function ''
	vim/_editor.lua: in function <vim/_editor.lua:0>

May I ask if you need any more information?

Do you have the fzf.vim plugin installed?

No. Hm... I think I know what your intention is. Let me guess: fzf.vim provides the fzf#wrap function, right?

Yes, you're right

Thank you for the fast repsonse :)


Too slow when paste a long text

For example, there are tow pages, 1.html has colorpicker plugin and 2.html not
1.html
2.html
If paste a long text (more than 30000, for example, this file ), the 1.html will be "no response" in about 10 seconds. I use "Performance" tool in Chrome's devtools, it shows that most of the time is spent on "Layout"

If in a complex web page, the situation is more serious.
Here is Google's document
You can load my performance profile

(I did not delve into it, but maybe asynchronous initialization can solve the problem?)

hi @sylingd
Thanks for your report.
I will check it .

i fixed this issue.
please test it in v1.0.10

It works well, thank you


[needs tests] Support :tabonly. Code shamelessly copied from the close-other-tabs extension.

A bit trigger-happy on the "create PR" button, sorry.
Change proposed in this PR:

Add a "tabonly" command (alias "tabo") which closes all tabs but the current one, similar to VIM

Tests:

None, would appreciate guidance on how to write them. (I have tested this manually and it seems to work...)

Thanks, this is looking good! 😄
As for adding specs, you could take a look at the specs for 'tabnext' in spec/ex-commands-spec.coffee, they should be fairly similar to what we would need for this. The problem with adding tests right now is that since version 1.13, Atom won't load vim-mode when running specs because it uses a deprecated stylesheet, which means that the specs will always fail until we actually properly support vim-mode-plus.
So I guess I'm setting a bad precedent here, but I'll merge this without a test.


Generator throws exception

Brand new Rails <IP_ADDRESS> app with Ruby 3.2.1 running on Rocky Linux 9 in a Docker container.  Gems: Devise 4.9.0, Devise-Two-Factor 5.0.0, openssl 3.1.0.
After running the migration to create the users table from the initial Devise installation, running bin/rails generate devise_two_factor User results in an exception (see below).
Question 1: is there anything I can do to figure out if the problem has something to do with my setup?
Question 2: in the meantime can I skip the generator and just perform the configuration manually based on the README?
Thanks.
$ bin/rails g devise_two_factor User
/home/rocky/ruby-3.2.1/lib/ruby/3.2.0/openssl/pkcs5.rb:14:in `pbkdf2_hmac': no implicit conversion of nil into String (TypeError)
	from /home/rocky/ruby-3.2.1/lib/ruby/3.2.0/openssl/pkcs5.rb:14:in `pbkdf2_hmac'
	from /home/rocky/ruby-3.2.1/lib/ruby/gems/3.2.0/gems/activesupport-<IP_ADDRESS>/lib/active_support/key_generator.rb:40:in `generate_key'
	from /home/rocky/ruby-3.2.1/lib/ruby/gems/3.2.0/gems/activerecord-<IP_ADDRESS>/lib/active_record/encryption/key_generator.rb:33:in `derive_key_from'
	from /home/rocky/ruby-3.2.1/lib/ruby/gems/3.2.0/gems/activerecord-<IP_ADDRESS>/lib/active_record/encryption/key.rb:19:in `derive_from'
	from /home/rocky/ruby-3.2.1/lib/ruby/gems/3.2.0/gems/activerecord-<IP_ADDRESS>/lib/active_record/encryption/derived_secret_key_provider.rb:8:in `block in initialize'
	from /home/rocky/ruby-3.2.1/lib/ruby/gems/3.2.0/gems/activerecord-<IP_ADDRESS>/lib/active_record/encryption/derived_secret_key_provider.rb:8:in `collect'
	from /home/rocky/ruby-3.2.1/lib/ruby/gems/3.2.0/gems/activerecord-<IP_ADDRESS>/lib/active_record/encryption/derived_secret_key_provider.rb:8:in `initialize'
	from /home/rocky/ruby-3.2.1/lib/ruby/gems/3.2.0/gems/activerecord-<IP_ADDRESS>/lib/active_record/encryption/configurable.rb:25:in `new'
	from /home/rocky/ruby-3.2.1/lib/ruby/gems/3.2.0/gems/activerecord-<IP_ADDRESS>/lib/active_record/encryption/configurable.rb:25:in `configure'
	from /home/rocky/ruby-3.2.1/lib/ruby/gems/3.2.0/gems/activerecord-<IP_ADDRESS>/lib/active_record/railtie.rb:331:in `block in <class:Railtie>'
	from /home/rocky/ruby-3.2.1/lib/ruby/gems/3.2.0/gems/railties-<IP_ADDRESS>/lib/rails/initializable.rb:32:in `instance_exec'
	from /home/rocky/ruby-3.2.1/lib/ruby/gems/3.2.0/gems/railties-<IP_ADDRESS>/lib/rails/initializable.rb:32:in `run'
	from /home/rocky/ruby-3.2.1/lib/ruby/gems/3.2.0/gems/railties-<IP_ADDRESS>/lib/rails/initializable.rb:61:in `block in run_initializers'
	from /home/rocky/ruby-3.2.1/lib/ruby/3.2.0/tsort.rb:228:in `block in tsort_each'
	from /home/rocky/ruby-3.2.1/lib/ruby/3.2.0/tsort.rb:350:in `block (2 levels) in each_strongly_connected_component'
	from /home/rocky/ruby-3.2.1/lib/ruby/3.2.0/tsort.rb:431:in `each_strongly_connected_component_from'
	from /home/rocky/ruby-3.2.1/lib/ruby/3.2.0/tsort.rb:349:in `block in each_strongly_connected_component'
	from /home/rocky/ruby-3.2.1/lib/ruby/3.2.0/tsort.rb:347:in `each'
	from /home/rocky/ruby-3.2.1/lib/ruby/3.2.0/tsort.rb:347:in `call'
	from /home/rocky/ruby-3.2.1/lib/ruby/3.2.0/tsort.rb:347:in `each_strongly_connected_component'
	from /home/rocky/ruby-3.2.1/lib/ruby/3.2.0/tsort.rb:226:in `tsort_each'
	from /home/rocky/ruby-3.2.1/lib/ruby/3.2.0/tsort.rb:205:in `tsort_each'
	from /home/rocky/ruby-3.2.1/lib/ruby/gems/3.2.0/gems/railties-<IP_ADDRESS>/lib/rails/initializable.rb:60:in `run_initializers'
	from /home/rocky/ruby-3.2.1/lib/ruby/gems/3.2.0/gems/railties-<IP_ADDRESS>/lib/rails/application.rb:372:in `initialize!'
	from /home/rocky/rails/config/environment.rb:5:in `<main>'
	from <internal:/home/rocky/ruby-3.2.1/lib/ruby/site_ruby/3.2.0/rubygems/core_ext/kernel_require.rb>:37:in `require'
	from <internal:/home/rocky/ruby-3.2.1/lib/ruby/site_ruby/3.2.0/rubygems/core_ext/kernel_require.rb>:37:in `require'
	from /home/rocky/ruby-3.2.1/lib/ruby/gems/3.2.0/gems/bootsnap-1.16.0/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:32:in `require'
	from /home/rocky/ruby-3.2.1/lib/ruby/gems/3.2.0/gems/zeitwerk-2.6.7/lib/zeitwerk/kernel.rb:38:in `require'
	from /home/rocky/ruby-3.2.1/lib/ruby/gems/3.2.0/gems/railties-<IP_ADDRESS>/lib/rails/application.rb:348:in `require_environment!'
	from /home/rocky/ruby-3.2.1/lib/ruby/gems/3.2.0/gems/railties-<IP_ADDRESS>/lib/rails/command/actions.rb:28:in `require_environment!'
	from /home/rocky/ruby-3.2.1/lib/ruby/gems/3.2.0/gems/railties-<IP_ADDRESS>/lib/rails/command/actions.rb:15:in `require_application_and_environment!'
	from /home/rocky/ruby-3.2.1/lib/ruby/gems/3.2.0/gems/railties-<IP_ADDRESS>/lib/rails/commands/generate/generate_command.rb:21:in `perform'
	from /home/rocky/ruby-3.2.1/lib/ruby/gems/3.2.0/gems/thor-1.2.1/lib/thor/command.rb:27:in `run'
	from /home/rocky/ruby-3.2.1/lib/ruby/gems/3.2.0/gems/thor-1.2.1/lib/thor/invocation.rb:127:in `invoke_command'
	from /home/rocky/ruby-3.2.1/lib/ruby/gems/3.2.0/gems/thor-1.2.1/lib/thor.rb:392:in `dispatch'
	from /home/rocky/ruby-3.2.1/lib/ruby/gems/3.2.0/gems/railties-<IP_ADDRESS>/lib/rails/command/base.rb:87:in `perform'
	from /home/rocky/ruby-3.2.1/lib/ruby/gems/3.2.0/gems/railties-<IP_ADDRESS>/lib/rails/command.rb:48:in `invoke'
	from /home/rocky/ruby-3.2.1/lib/ruby/gems/3.2.0/gems/railties-<IP_ADDRESS>/lib/rails/commands.rb:18:in `<main>'
	from <internal:/home/rocky/ruby-3.2.1/lib/ruby/site_ruby/3.2.0/rubygems/core_ext/kernel_require.rb>:37:in `require'
	from <internal:/home/rocky/ruby-3.2.1/lib/ruby/site_ruby/3.2.0/rubygems/core_ext/kernel_require.rb>:37:in `require'
	from /home/rocky/ruby-3.2.1/lib/ruby/gems/3.2.0/gems/bootsnap-1.16.0/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:32:in `require'
	from bin/rails:4:in `<main>'

This seems to be a problem with my installation, not related to Devise-Two-Factor.  Closing.


teardown gcp us east4

chore: remove gcp asia-northeast1 from README
chore: teardown us-east4

@nidhidhamnani yeah, we did. I think what we need to do is get the translation updated in this readme. Let me check with some folks about that.

@nidhidhamnani yeah, we did. I think what we need to do is get the translation updated in this readme. Let me check with some folks about that.

Thank you :)


improvement: add ci test

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


Filter secrets from logs

A nice feature would be to provide a list of secrets that would be filtered for secure logging. For example auth tokens from headers or password parameters for signup / login calls. The ability to replace the secrets with ****** or ab*****hi would be great.

You can use the willLogTask closure in NetworkLogger to filter out the information you don't want to log.

have no idea how

You can either modify the request LoggedNetworkTask by removing sensitive data or return nil to completely disable logging.

i want to modify the request and hide sensitive data from logging, but have no idea how to implement it