Update es6-module-dynamic-import.json

chrome 63+ support import()

You'll wanna leave that "66" alone, it's the latest version, not "version in which support started"

so we can't have more precision on chrome mobile support?

Thanks! Not yet, but I'm working on something that'll allow it.


palemoon: 28.17.0 -> 29.0.0, switch to gtk3

Motivation for this change
https://www.palemoon.org/releasenotes.shtml
New release.

Fixed a memory safety issue related to XUL trees (CVE-2021-23962).
Implemented several defense-in-depth measures to improve stability and future security.
Unified XUL Platform Mozilla Security Patch Summary: 1 fixed, 6 DiD, 1 already implemented, 1 deferred to the next release, 24 not applicable.

Moved to a GTK3 build now that it's officially supported.

We now offer official GTK3 builds for Linux alongside the GTK2 builds.

Fixed wrong StartupWMClass setting in the (also currently) shipped desktop file causing a missing app icon under Pantheon. (don't know about other DE/WMs, just happened to try Pantheon once)
Things done

[x] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
Built on platform(s)

[x] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[x] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Ensured that relevant documentation is up to date
[x] Fits CONTRIBUTING.md.

Fixed a memory safety issue related to XUL trees (CVE-2021-23962).

Needs backporting

Needs backporting

Should I separate out the GTK2->GTK3 part into a new commit so 20.09 can stick with GTK2 or is that a non-issue?

Well, GTK3 is optional and is already present on Stable. We are just defaulting it to true; if anyone wants the old behaviour, it is just a matter of changing an option.
The only reason I can think it would be annoying is if some configuration was drastically changed from GTK2 to GTK3 - such as "file locations, fine-tuning options" etc.
Just backport everything.

@OPNA2608
#112030


Add Backward compatibility API to C++

Add API for user to enable server backward compatibility in C++ server builder.

Test failures:
Asan C - #10653
Basic Tests Linux - #10653
Basic Tests Mac - #11116
BasicTestsWindows - #11188 #9088
Msan C - #11162
Portability Tests Linux - #9726
Tsan C - #10894
gRPC_performance_pull_requests - #11117


scRNA-seq from FASTQ?

Hello,
This looks like a really promising package, I was wondering if it was possible to start from the FASTQs where we can define CB/UMI R1 structure for assays other than 10x and the R2 barcode structure (this looks already done based on adapter settings and such)?
Best,
Chang

Hi there,
Thank you for your interest!
Currently it is not possible to start directly from FASTQ files. The adapters are used to find reads that are very likely to be the containing the clone barcode. Essentially, if the adapters exist in the read, chances are the sequence that is flanked by the adapter is a clone barcode.
For non 10x assays, for now, we will need to align the reads to the genome first to get a BAM file with CB/UB tags (cell barcode and UMI). Something like STARsolo may be adequate (https://github.com/alexdobin/STAR/blob/master/docs/STARsolo.md).
We're still very much actively updating the package, and introducing a feature where we can specify the CB/UMI structure (and thus have the pipeline taking FASTQ files as input rather than having to run alignment first to get a BAM file) is certainly in our radar.


this library is useless as there is a typo in route.fulfill()

there is a typo in this library that breaks the core functionality of this library.
the library calls route.fullfill instead of route.fulfill according with playwright documentation

therefore with this tiny mistake, this library is useless.
faullty line:  https://github.com/JijaProGamer/Playwright-cache/blob/6110972f7516e9a98d82673c5b5cce4c1c24b35d/index.js#L68
 searchFunc(request.url()).then((Data) => {             if (Data) {                 route.fullfill(Data)                 resolve(true)             } else {                 resolve(false)             }

fix merged

Thank you 😃


add support for TLRU caching and other caching methods

Need to add more type of caching methods.  Currently only LRU is available

Hi @iamsinghrajat! What other caching methods do you have in mind?

Looking to add a simple time based caching. A cache that will invalidate itself after given time interval.


Added docs tooltip plugin

Requesting to PR this plugin into master, to provide official GM documentation snippets inside of function tooltips.
Some concerns, in no particular order, that may or may not even need to be addressed:

This feature relies on an internet connection to work, since it fetches an auto-generated JSON scrape of the official documentation, which can be found here. This file is kept up to date by me for the purpose of powering gm-bot. If the file can't be fetched, then it fails silently with no indication to the user. Might be worth making a mention of that somewhere?
This plugin uses the latest documentation available from YYG, but it does not detect if the user is using GMEdit to edit an older project. If the user is working on a GM 8.1 project for instance, there may be inconsistencies in the documentation provided, if newer versions of the function have been changed. Adding that detection could be worth it, or we can just trust the user to turn it off when its not needed.
A setInterval is used to keep a watch over tooltip activity to make the feature work. There is a (admittedly low) performance hit associated with having an interval running, so exposing some kind of plugin hook for tooltips could solve that. Not sure if that's worth it though. It's probably fine. As a "sub-concern" this also means that tooltips might flicker before being updated, but that's not really a big issue.

Perhaps you could also store the JSON file after fetching and using that if fetch fails so that the plugin displays the last known version of documentation?
You can detect that the current project is using a GM version that's sort of new by checking $gmedit["gml.Project"].current.version.config.hasScriptDotStatic.
GMS2.3+ version config (as opposed to 2.3-like modding APIs) very specifically can be told apart via $gmedit["gml.Project"].current.version.name == "v23".
Since there's no sandboxing, you could rewrite $gmedit["ace.AceTooltips"].prototype.update to do something immediately after the tooltip gets updated.

Good ideas!

Storing JSON data after fetching addressed in 9f483306ab4c2b4fc4d1817a9bf1ea97e61c5e93, data is currently saved in the preferences for the plugin but could be saved to a separate file altogether if you'd prefer to not pollute the preferences file with so much data.
GM version detection addressed in 435461e63e8f464a1ee52dae05be981ea49dbfaa, added as a toggleable preference so the user can enforce having the plugin only work in GMS2.3+ projects or not.
Ditching the interval addressed in<PHONE_NUMBER>04cbc4d14811045b0100585431cff1, ended up mutating ttip directly to catch any setText calls, which worked out great.


Tesla can hasten adoption of DOGE like this

Tesla buys $5 billion worth of DOGE at current price of $0.35
Tesla announces vehicles will be sold on the basis of 1 Dollar = 1 DOGE for a limited period of time
Thousands of people rush to buy DOGE at sub $1 price, in order to use the DOGE (which they bought at under $1 to buy Tesla on the basis of $1 = 1 DOGE.
Tesla Buyers will always buy DOGE if it falls to sub $1 pricing so that they can get a discount on the Tesla price.
Tesla uses the $5 Bill DOGE (now worth closer to $12bill), to subsidize any (unlikely)shortfall in DOGE to USD conversion value.
This pegs / stabilises the value of DOGE, increasing market cap and improving adoption and use case,  until the next ....

How does this benefit Tesla or their investors? What incentive do they have to do this?

Tesla's customers get a discount on the price of Tesla, if the price is lower, then more Tesla's are sold. More sales is good for shareholders. The initial $5billion dollars becomes worth closer to $12billion due to the announcement and the $7 billion surplus can be used to offset any shortfall on the sale of DOGE into $

Development of DOGE encompasses adoption of it?

if the price is lower, then more Tesla's are sold

Yes, and if you sold Teslas for only $1k each, you could sell tons more of them

More sales is good for shareholders

Assuming the sale value is greater than the production cost.
If they can sell all their DOGE (initial investment and amounts from vehicle sales) for $1 each, yes, they've made a profit. But that is assuming there is enough liquidity in the market willing to buy billions of dollars worth of DOGE at $1 each. It's a pretty crazy scheme that could easily just lose them billions of dollars for nothing.
Also, GitHub is entirely the wrong place for a discussion that has absolutely nothing to do with Dogecoin software development.

You're not following what I'm saying. Sell Tesla's for $39 000 or D39 000 customer can chose, but if they pay in DOGE then they have a chance of buying DOGE for less than $1, thereby getting a discount on DOGE. Tesla can sell the DOGE at $1 or less, if less they can supplement the shortfall with the massive gain / pump on the initial $5 billion which would amount to a surplus of $7 billion. It's a lot of room for a lot of discount for a lot of Tesla's while causing mass adoption. Tech issues are one thing mass adoption is more important.

People we're not Elon's boss, this is outside of our control.


GetInnerComponent() fails to get InnerComponentReference

Describe the bug
Outer components report having inner components with specified roles in their list of inner components, but fail to find the item when running view.GetInnerComponent(role)
To Reproduce

Create a root game object with a StatefulComponent
Create a child game object with a StatefulComponent.
Assign a role to the inner StatefulComponent
Attempt to access the child via code using parentStatefulComponent.GetInnerComponent(InnerComponentRole.TheRole)

Expected Behavior
The StatefulComponent should return the inner component with the associated role.
ScreenShots
The Unity project screenshot shows the project setup with two StatefulComponents (StatefulComponentRoot, InnerComponent) and the assigned InnerComponentRole of TestComponent. The console output shows:

the presence of InnerComponentRole.TestComponent
one item in the root's InnerComponents list
the role of that item which matches InnerComponentRole.TestComponent
the confirmed presence of that item via HasInnerComponent()
the null reference returned when getting the inner component using GetItem<InnerComponentReference>()
the error when GetInnerComponent() attempts to access the InnerComponent field on the null reference.

The VSCode screenshot shows the log statements that produce this output.

Versions
Unity Version 2022.3.6f1
StatefulUI Version 1.0.3

Hey Noah, thank you for your report! Fixed in 1.0.4


F401 - Recommend adding unused import bindings to __all__

Followup on #11168 and resolve #10391
User facing changes

F401 now recommends a fix to add unused import bindings to to __all__ if a single __all__ list or tuple is found in __init__.py.

If there are no __all__ found in the file, fall back to recommending redundant-aliases.
If there are multiple __all__ or only one but of the wrong type (non list or tuple) then diagnostics are generated without fixes.

fix_title is updated to reflect what the fix/recommendation is.

Subtlety: For a renamed import such as import foo as bees, we can generate a fix to add bees to __all__ but cannot generate a fix to produce a redundant import (because that would break uses of the binding bees).
Implementation changes

Add name field to ImportBinding to contain the name of the binding we want to add to __all__ (important for the import foo as bees case). It previously only contained the AnyImport which can give us information about the import but not the binding.

Add binding field to UnusedImport to contain the same. (Naming note: the field name field already existed on UnusedImport and contains the qualified name of the imported symbol/module)

Change fix_by_reexporting to branch on the size of dunder_all: Vec<&Expr>

For length 0 call the edit-producing function make_redundant_alias.
For length 1 call edit-producing function add_to_dunder_all.
Otherwise, produce no fix.

Implement the edit-producing function add_to_dunder_all and add unit tests.
Implement several fixture tests: empty __all__ = [], nonempty __all__ = ["foo"], mis-typed __all__ = None, plus-eq __all__ += ["foo"]
UnusedImportContext::Init variant now has two fields: whether the fix is in __init__.py and how many __all__ were found.

Other changes

Remove a spurious pattern match and instead use field lookups b/c the addition of a field would have required changing the unrelated pattern.
Tweak input type of make_redundant_alias

Oops, didn't add clippy to my pre-push hook. Added now.

I swear I have fixed my pre-push hook now.

I believe that i've resolved the outstanding requests. @AlexWaygood it might make sense to do a pass over the fixture tests now since there has been some churn, to see if you agree with how each case is resolved?

This is ready for review again.

(A few small comments but for clarity no need to wait on my approval to merge.)

I suspect the CodSpeed regression is a false positive.

Maybe it'll re-run after this last pull and resolve (if codespeed updates its comments).

Rebasing or merging in main often gets CodSpeed to change its mind

Ah, that's a good point. If we're comparing to main the performance could very well be different on an outdated branch.

Rebasing.

I've updated the PR description to reflect the diff after all review comments.
Not sure what to do next. CodeSpeed might be a false-positive, but that should have been mitigated by rebasing.

I think it's ok to merge personally.

I'm looking through the changes again just to see if anything sticks out.

The only thing that stands out is that we're allocating an additional string for UnusedImport and we increased the size of the struct.

We could consider using binding everywhere for the diagnostic instead of the qualified name, see if that helps? But I think it's fine to merge as-is.

Trying out Charlie's suggestion of using only one string in the violation struct. This caused /a lot/ of fixture changes to have cosmetic changes to help text and rule titles. If it doesn't correct the regression I'll revert.

Ok, that didn't work so I'm going to revert and then merge once tests pass.

Ok! I've tried (and reverted) both of the suggested performance improvements. Do we want to just merge this? I have no more commits to push.

Yeah, I'm fine with going ahead and merging.


Druid parse error on formatted time field with non-zero timezone

part of jvm.config:
-Duser.timezone=Asia/Shanghai

timestampSpec config :
"timestampSpec": {
    "format": "yyyy-MM-dd HH:mm:ss",
    "column": "logTime"
}

events example:
{"logTime":"2018-09-10 18:00:00","dim1":"d1","dim2":"d2","value":100}
{"logTime":"2018-09-10 18:00:00","dim1":"d1","dim2":"d2","value":90}

We set user.timezone=Asia/Shanghai, so the correct timestamp is<PHONE_NUMBER>000. But druid specifies the UTC timezone, and the TimestampParser recognizes  '2018-09-10 18:00:00'  as  '2018-09-10 18:00:00+00:00' , so it's parsed to<PHONE_NUMBER>000.
I will fixed it.

This behavior is intentional: see https://github.com/apache/incubator-druid/pull/6344#issuecomment-422906978 (& also a suggested alternate approach in that same comment).


TAI Network Interface Bit Error Rate attributes

This patch adds two attributes to the network interface object. The first is the current bit error rate, or BER. This is the most recently calculated BER and is calculated for errors that occur prior to any error correction, such as FEC. This is a floating point number.
The second attribute if the amount of time over which the BER data for the previous attribute was collected. This is a 32 bit unsigned value in units of microseconds. For example, if error data was collected over a period of 10 milliseconds, this attribute would contain 10000.
Addresses issue #8
Signed-off-by: Scott Emery<EMAIL_ADDRESS>

Thanks! rebased and pushed


[setup] Get OpenTitan Verilator simulation working on local machine

This task for is getting the OpenTitan Verilator simulation working on your local local machine.

done


seafile-client: 8.0.7 -> 9.0.2

Description of changes

A simple update, switched back to the tag due to builds succeeding.
Closes #213463
Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[x] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[x] Tested basic functionality of all binary files (usually in ./result/bin/)
23.05 Release Notes (or backporting 22.11 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[ ] Fits CONTRIBUTING.md.

Thanks for pointing that out!
I've locked the libsearpc package to a commit because the upstream (ab)uses the tags.
The seafile-shared was just an addition of the version, so I hope that one won't change.


Exception when trying to build a simple query

Hi, I'm following the docs in order to test the package and I've got that exception:
TypeError: Argument 1 passed to NilPortugues\Sql\QueryBuilder\Builder\GenericBuilder::write() must implement interface NilPortugues\Sql\QueryBuilder\Manipulation\QueryInterface, instance of NilPortugues\Sql\QueryBuilder\Manipulation\ColumnQuery given, called in /www/operand_api_vuejs/public/index.php on line 33 in /www/operand_api_vuejs/vendor/nilportugues/sql-query-builder/src/Builder/GenericBuilder.php on line 216

The same code as in the docs... here
<?php
use NilPortugues\Sql\QueryBuilder\Builder\GenericBuilder;

$builder = new GenericBuilder();

$query = $builder->select()
    ->setTable('user')
    ->setColumns(['user_id','name','email']);

echo $builder->write($query);

By the way, I'm using php 7.1.

that problem is affecting everybody.
i don't know why the maintainers seem to ignore such a severe bug, i couldn't build almost any of the queries i needed, and those were very basic ones -.-
anyway i'll post my workaround:

edit this file src/Manipulation/ColumnQuery.php
paste this function at the end:

    public function end()
    {
        return $this->select;
    }

change your query like this:
$query = $builder->select()  ->setTable('user')  ->setColumns(['user_id','name','email'])  ->end();

it should work now.

@sctt Great!
Thanks ever so much.

Maybe should be change like this:
public function setColumns(array $columns)
{
$this->columns = $columns;
    return $this->select;
}

but I found another bug : leftJoin not work.

Great this post was helpful @diogocavilha @sctt


feat: integrate interchain accounts

name: Pull Request
about: Submit a pull request
title: ''
labels: ''
assignees: '@boz @gosuri'

Description

Motivation and Context

[ ] I have raised an issue to propose this change (required)
[ ] My issue has received approval from the maintainers or lead with the design/approved label

How Has This Been Tested?

Types of changes

[ ] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Checklist:

[ ] My code follows the code style of this project.
[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.
[ ] I've read the CONTRIBUTION guide
[ ] I have signed-off my commits with git commit -s
[ ] I have added tests to cover my changes.
[ ] All new and existing tests passed.

Simulations are failing due to issue from ibc-go , ibc-go does n't implement the simulation interfaces
https://github.com/cosmos/ibc-go/issues/1352

Simulations are failing due to issue from ibc-go , ibc-go does n't implement the simulation interfaces cosmos/ibc-go#1352

@alessio and team provided us a fix for this, I will DM it to you.

@boz  I fix the simulation issue, please can you look into changes

@gsk967 we'll incorporate the change right after #1646

@troian now that #1646 is merged, can we move forward with this one?

@gosuri yeah, will merge it

@gsk967 mind rebasing pr

sure


Enable schemas

removes the feature flag for Schema, enabling Schema by default
ensures that when Schema is present, are used; otherwise defaults to previous behavior (i.e. Data Values declaring variables)
updates most examples to prefer @data/values-schema over @data/values.

Noting some successful exploratory testing done with this build:

configured CF for K8s with no modification to the library.
configured CF for K8s converting only the root library to use schema.
configured CF for K8s converting only the capi library (and not the root library) to use schema.


⚠ Digital Ocean - https://status.digitalocean.com/ has degraded performance

In 787a6c1, Digital Ocean - https://status.digitalocean.com/ (https://status.digitalocean.com/api/v2/status.json) experienced degraded performance:

HTTP code: 200
Response time: 221 ms

Resolved: Digital Ocean - https://status.digitalocean.com/ performance has improved in 1403f03.


Pro Micro boards cannot update firmware in parallel

Pro Micro has a special way for updating the firmware. There is a reset procedure, and a second serial port is created. MobiFlight monitors the serial ports, and then detects the new one, which it takes for uploading the firmware.
This approach cannot work in parallel.
Steps To Reproduce
Steps to reproduce the behavior:

connect two Pro Micro boards
upgrade the firmware to a new version
start MobiFlight
let it auto-update the boards during startup

Expected behavior
boards update fine
Actual behavior
update fails.
Additional context
There also seem to be a problem after flashing the firmware with the reconnect to the Pro Micro. It often requires a restart of MobiFlight to properly connect to the board after uploading the firmware.

If we start flashing nanos in series we should do the same for Picos, they also have the "toggle COM to get a new port" style upload.

Pro Micro never flashes correctly for me, not in parallel, not if only one is connected.


[release-4.11] OCPBUGS-21292: CVE-2023-44487: bump golang.org/x/net to v0.17.0

cc @openshift/storage

/retest

/label backport-risk-assessed

CI result looks good.
Verified with golang.org/x/net v0.17.0 in go.mod file
/label cherry-pick-approved
/label qe-approved

/lgtm

/jira refresh

/jira refresh


Support FTP resources; fix url-or-path regex

fixes https://github.com/frictionlessdata/specs/issues/934
fixes https://github.com/frictionlessdata/specs/issues/664

Thanks a lot @MattBlissett!

Thanks!

I'll keep it for voting as it not only fixes the bug but also adds a new feature -- FTP support

👍🏼 assuming the regex has been tested.

Thanks!
ACCEPTED by WG


(View) Source editor has now autocomplete

Double click on a view in database navigator, go to source.Type something: auto-complete is on.
This is a new feature, which (please guys) is activated by default, changing a "default" behiavour, and that has causes already some troubles.
This might apply to other objects.
Please do not enable new features by dafault guys :-)

We usually don't. But this was done by another feature request.


VSCode extension : support electron-vite

electron-vite use a special electron.vite.config.ts file, it is not currently detected by unoCSS extension.
https://evite.netlify.app/guide/project-structure.html

you can use a separate unocss.config.ts/uno.config.ts

https://github.com/unocss/unocss/pull/1751#issuecomment-1279907398


Enable watch mode when using --server

Watch mode works over --forward, just needed to be enabled.

Ah, my mistake. The logging runs on the server side, not the client side.
Please ignore for now, I'll add a patch.

Closing this for now as I don't have time to spend on it. Still love and use the project daily though :) Many thanks


Fix - epbf logo image link

Signed-off-by: s4rd1nh4<EMAIL_ADDRESS>Description
This PR fixes #
Notes for Reviewers
Signed commits

[x] Yes, I signed my commits.

@diego-milhomes, I didn't realize that your active in the KubeVela community. That's great. You have much context for the initiatives in the Layer5 Community, then. 👏


Feature request: Support ACTION_PICK intent

I use Camera Roll as my main gallery app. But ACTION_PICK intents are not supported. When using another app to select an image then Camera Roll does not intercept it and the app crashes the app rather show a file picker (see this issue). Can you add the intent support please?

Actually this should work.
ACTION_PICK Intent is intercepted:
https://github.com/kollerlukas/Camera-Roll-Android-App/blob/ce9c19c1863f1789b250f9740f39e2d360e3a002/app/src/main/AndroidManifest.xml#L129
On my Google Pixel selecting images works (tested with Pushbullet and Whats App).

Thank you for testing. Did you try with transistor as described in the linked issue in the original post? It is odd the Google Photos can intercept the intent but Camera Roll cannot.


RDK-34568: For testing

Expand AVInput RDK Service to include HDMIInput and CompositeInput
Change-Id: Iaf68fb22d07f85d68bbcdd165686ddc1b7e9373c

Closing current PR as created new one
https://github.com/rdkcentral/rdkservices/pull/2927


Incorrect local name for italian holiday

The italian local name for 15th of August is mistyped, the correct name is "Ferragosto o Assunzione" instead of "Ferragosto and Assunta".
Trust me, i'm italian...

A new nuget package is available with your fix


Add support for tree-sitter-svelte

As I understand it, the work that needs to be done to achieve this is that we need to define a tree-sitter-svelte-tags.scm file, similar to these: https://github.com/paul-gauthier/aider/tree/main/aider/queries
Unfortunately, Svelte is a multi-language language, where you might have JavaScript inside <script> tags, TypeScript inside <script lang="ts"> tags, CSS/PostCSS in <style> tags, and HTML mixed with Svelte constructs at the top-level (all other tags).
I don't see an example of a .scm file with multiple embedded languages in the queries directory that we can use as inspiration, so this might be a bit more difficult.

i was hoping for svelte support.
is there a way to help?

This doc may be helpful:
https://aider.chat/docs/languages.html#how-to-add-support-for-another-language

FYI for anyone looking for a bit more svelte support: you can get .svelte working with --watch-files by simply adding the extension to aider/watch.py and by mapping the parser to typescript in grep_ast/parsers.py:
".svelte": "typescript",

version: 0.67.0


Extract validation step inside new client state creation and expose it as a separate method

Improvement Summary
Separate validation from new client state creation method (here)
Proposal

Client states received via an IBC message should be verifiable without having to create a new one. There should be a separate validate() method exposed to encompass all the fields' validation checks.
The inclusion of validation steps inside new() may also lead to implementors forgetting to perform validations
One use case is for upgrading client process.

I disagree that this is needed. The way I see it is that new() enforces the invariants of the object; that is, the object is created if and only if all invariants are true. It should then be used immutably. Exposing a validate() method suggests that the object could change within its lifetime, suggesting the following (discouraged) workflow:

Create the ClientState with valid parameters
mutate the ClientState in a way that violates one of the invariants
call validate(), and notice that an invariant was violated

Why not simply create a new object? I wouldn't be surprised that compiler optimizations optimize that away (e.g. reuse the same memory if the old ClientState is never reused). Can you point to a location in the code where you'd like to use this validate() method?

The way I see it is that new() enforces the invariants of the object; that is, the object is created if and only if all invariants are true.

A concern of mine about that new() method was that developers (who implement a new kind of client) can bypass that verification step or even forget about it. It is implemented on ClientState struct and this design does not enforce them to introduce any validation on their ClientState object. Though, neither the PR of this issue yet. I was figuring out how we can address this. What are your thoughts?

Can you point to a location in the code where you'd like to use this validate() method?

It could be used to validate fields of received upgraded_client_state. However, now, I am doing that by creating a new object as you mentioned.
Perhaps the least thing can be done in this regard, we change new method's name to the new_validated?! HW, it does not ease the above concern

I see your concern. I think we need to distinguish between the ICS-2 and ICS-7 (Tendermint) ClientStates.

A concern of mine about that new() method was that developers (who implement a new kind of client) can bypass that verification step or even forget about it.

Tendermint light client
This is a Tendermint interface specific concern. IIUC, your concern is that it is not clear that new() performs validation. However, the interface returns a Result, which gives a strong signal that some sort of validation is expected in the function. However, I now see that we do need a constructor that doesn't do any validation, to be used in ClientState::update_state_with_upgrade_client(). So yes perhaps we could have new() and new_validated()?
Light client developers
Since new()/new_validated() is a Tendermint-specific interface, developers implementing new clients will not see this function. They only interact with the ICS-2 ClientState. So the question to ask is: does our ICS-2 interface make it clear that we expect validation to be performed whenever a new client is created?
For new ClientStates coming from UpgradeClient, we have ClientState::verify_upgrade_client() (in your PR). Wouldn't that be obvious to developers that validation is expected there?
The other place we create new ClientStates is in the CreateClient handler, where we call decode_client_state(). We indeed assume there that ClientState validation was done, and that should be properly documented. Therefore, the host (or blockchain) developer would read the docstring of decode_client_state(), and ensure to validate any light client that is returned to us.
I feel like this is sufficient (with the proposed changes) and that an additional validate() is redundant, and perhaps even confusing (e.g. a developer could ask "should I implement the validation in verify_upgrade_client(), as well as in validate()?").
WDYT?

Exactly. You well explained what I meant :ok_hand:
Let me digest this and take another look to the codebase, I'll get back to you

Finally, I could get into more detail :)
I noticed we already have another very similar method, called validate_self_client, which is exposed by ConnectionReader and soon would be available by ValidationContext interface.
The followings are related places in the codebase. Some go in one run doing multiple operations like “validate raw message(VR)” and “convert from Any(C)” or/and “validate client fields (VF)” or/and “create new client state (N)”:

“create_client” handler through decode_client_state(Any) (VR + C + VF + N)
“upgrade_client” handler through try_from(Any) (VR + C + VF + N)
“conn_open_try” handler through validate_self_client(Any) (VR + C + VF)
“conn_open_ack” handler through validate_self_client(Any) (VR + C + VF)
“validate_self_client” under the ValidateSelfClientContext trait which is not used anywhere (VR + C + VF)
"update_state_with_upgrade_client” through TmClientState::new(...) (N)

Remarks

The logic sequences that already exist for the conversion always lead to a client state creation even calling (3) and (4). So, there, we’d also perform (VR + C + VF + N)
The steps decode_client_state do, seem a bit difficult to understand from the developer’s perspective, IMO. we also have something else with the same name here
Looking at the ibc-go, there we have the “unpack_client_state” (VR + C  + N) and the “validate” (VF)  under the ClientState interface. There, in any case, a client state instance is also created, but the fields are validated afterward

Validating fields is a client-specific activity and is conducted on Any messages, so would make sense to keep it out of any Ctx. Also, If we decide to trim a little and go with the ibc-go pattern, keeping it under the ClientState interface removes the need for a redundant conversion from Any to the client-specific type.

We are touching some of the most confusing parts of IBC (IMO), which lead us to adopt the of_x_on_y convention to try to make as clear as possible.

Validating fields is a client-specific activity and is conducted on messages. So, it would make sense to keep it out of *Ctx interfaces.

IIUC, you're saying that validate_self_client() should not be in ValidationContext. You got confused in the confusing part. Notice that validate_self_client() performs validation of the client of us that's on the counterparty chain. When opening a connection, we ask the relayer to give us the client of us that runs on the counterparty chain. We then decode it, and check that the parameters of it are appropriate. Now, the reason we have it as part of ValidationContext is because ibc-rs doesn't know by design how to decode ClientState: Any blobs, because we don' know all the clients installed on the host. For example, if the TYPE_URL for a ClientState blob is "/some.unknown.consensus.protocol", how are we supposed to decode that? Only the host can do that; they will read the TYPE_URL, (presumably) recognize the type, and use the appropriate decoder to build the ClientState, and return it to us as a dyn ClientState. As previously stated, perhaps it would be appropriate to have an explicit validation on that ClientState, or very clearly document that it is the host's responsibility to make sure that the ClientState is valid.
Back to the validate_self_client(). Note that this is a different validation than the one we do in ClientState::new(). For example, we make sure that the chain ID on that client is indeed our chain ID (for Tendermint hosts). This addresses your point:

“validate_self_client” under the ValidateSelfClientContext trait which is not used anywhere (VR + C + VF)

The ValidateSelfClientContext trait is meant to be imported by Tendermint hosts, which they can use to implement ValidationContext::validate_self_client(). This is why it is not used internally. Let's document this better with #235.
I'm open to ideas to make any of this as clear as possible. Let me know if any of this is still unclear!

Now, the reason we have it as part of ValidationContext is because ibc-rs doesn't know by design how to decode ClientState: Any blobs, because we don't know all the clients installed on the host.

Ohh, I see! I could get the purpose of validate_self_client thanks to your clarification.
Honestly, the design around this doesn't point you in the right direction and makes you do work to figure it out. I only found out about this necessary chain-specific context through this issue. otherwise didn’t notice such a thing should be abstracted for each chain.
I'm not sure if we can bond the context to force implementors to introduce a kind of self-chain interface!

We are touching some of the most confusing parts of IBC (IMO), which lead us to adopt the of_x_on_y convention to try to make it as clear as possible

And yeah. some namings still use the legacy “counterparty” and the repo is not consistent yet.
Thank you so much for being patient. very helpful. Thus, to wrap up this tour :), should we just add some comments and make some naming adjustments, perhaps?

Thus, to wrap up this tour :), should we just add some comments and make some naming adjustments, perhaps?

I believe so yes. Do you want to take a crack at it?

I believe so yes. Do you want to take a crack at it?

I'll take care of it 👍🏻

The concern will be addressed in #434


tsc is slow to process lib.d.ts

tsc is pretty slow for me with an empty input file:
$ time tsc
real    0m0.450s
user    0m0.418s
sys    0m0.013s
$ touch in.ts
$ time tsc in.ts
real    0m2.796s
user    0m3.810s
sys    0m0.042s

but gets faster again with --noLib:
$ time tsc in.ts --noLib
real  0m0.591s
user  0m0.549s
sys  0m0.022s

Context: In my case I'm running tsc on independent libraries, chained together by generated .d.ts files, and with a remote filesystem. I observe 6-7s for each tsc invocation, and these are serialized to a 28s user-perceived latency for the build.
I noted that there are existing proposals to split up lib.d.ts, but assuming I am targetting a browser I think I'll have a lib.dom.d.ts that is not much smaller than the one in the current distro. So I think compressing the libs is not a strategy.
I wonder if we could run tsc with the current lib.d.ts already loaded, maybe using the snapshotting feature of the language services? I can see from profiling that even this null build is spending all its time type-checking the lib.d.ts. It would be better to start a compiler process that is already warmed up past that point.

What is the version of node are you using?

I also encountered this. I think storing a "parsed" version of lib.d.ts would significantly improve the compiler speed. Like from 1.0 -> 1.1.

--noLibCheck from https://github.com/Microsoft/TypeScript/pull/3049 looks pretty helpful.
This was with node 0.10.33

Most of the time spent compiling a program is typechcking, and every program has at least the library. so having most of the  time compiling an empty file spent in checking the library is what i expect. @DanielRosenwasser can add the --noLibCheck today, which should help with this. in general it not safe to skip checking the library, as interfaces can be reopened in a way that can make inheriticance hirarchy in the DOM generate errors. this is however is very rare to happen, and if you need a quick turnaround --noLibCheck should be good enough.
6-7 secs, however, seem alarming. on my machine it is in 1s range, which is what i expect. is there any thing special about your machine? have you seen this perf degradation in recent changes?

I was considering mentioning --noLibCheck here, but my impression was that it was going to be an "internal-ish experimental flag". Still, it should definitely help out pretty decently.

I don't have any hints about when this might have been introduced. I could
try reproducing with older versions - is there a particular SHA where I
should try that? Maybe just the last beta release to npm?
The machine where this is running is inside google's distributed build
system, so it's a prod machine in a datacenter with some extra sandboxing
and constraints wrapped around the process (tries to limit to one CPU for
example). The machine is likely loaded with many other users requests at
the same time.
On Mon, Jun 1, 2015 at 10:18 AM Daniel Rosenwasser<EMAIL_ADDRESS>wrote:

I was considering mentioning --noLibCheck here, but my impression was
that it was going to be an "internal-ish experimental flag". Still, it
should definitely help out pretty decently.
—
Reply to this email directly or view it on GitHub
https://github.com/Microsoft/TypeScript/issues/3298#issuecomment-107643921
.

latest beta would be a good reference point.

Yeah I can repro with https://github.com/Microsoft/TypeScript/tree/v1.5.0-beta as well.

@alexeagle give this a try https://github.com/Microsoft/TypeScript/commit/223d26f53566160153afc1b83f7e44b5a2eb390d

Thanks @mhegazy
I added --skipDefaultLibCheck to our internal distributed build system, and I'm still seeing about 6s to run the compiler on a very small input. But it's around 1s with --noLib.
Locally on my MacBook I have trouble reproducing the problem now, with various versions of node and tsc.
I think we need to gather more diagnostics on why our build environment is so slow.

@alexeagle sounds like you might be having an IO problem? From my understanding --noLib won't actually load lib.d.ts whereas --skipDefaultLibCheck will still read/parse, but lazily type-check. Still, that sounds strange.

we will need more info about what is happening on the machine, to see what can be done. if these machines have IO limitations, we can always have a long running process that parses lib.d.ts once and caches it.

looks like this was handled by --skipDefaultLibCheck, please reopen if this is not the case.

Indeed our compilations are now acceptably fast.
On Wed, Dec 9, 2015 at 1:38 AM Mohamed Hegazy<EMAIL_ADDRESS>wrote:

Closed #3298 https://github.com/Microsoft/TypeScript/issues/3298.
—
Reply to this email directly or view it on GitHub
https://github.com/Microsoft/TypeScript/issues/3298#event-486534013.


Add benchmark test for SPMV and solve segmentation fault when data size >= 50000

Add benchmark test for SPMV and solve segmentation fault when data size >= 50000

Not sure what happened here, you may have uncovered an actual bug in the build process.


How to troubleshoot "time out" issue?

First of all, thank you for making this collection of nodes available! Although I'm a newcomer to Modbus, I can see that it is a well thought out and flexible collection of tools, with decent documentation. Nice! But I'm afraid I'm having a little trouble getting even the most basic set-up to work, and I'm unable to figure out why - or indeed even what exactly is going wrong :) At first I had trouble getting any communication at all to appear on the serial port (UART connected to a Pi2); I tried adding my "nodered" user to the "dialout" group, which is most likely necessary in order to grant it access to /dev/ttyAMA0 where the port is located, but that didn't help. Then I looked a bit closer at the Node-RED log output and saw that I had an error on start-up: [warn] [serialport] Error: Module did not self-register, and after a bit of searching I did a re-install of the node-red-node-serialport with --unsafe-perm. Immediately I could see traffic starting to go out, and the "Rx" LED on the single RTU currently connected started blinking. "Great" I thought, "so it's working now", but alas I am not getting any response back. I have enabled debug by putting
Environment="NODE_RED_OPTIONS=-v"
Environment="DEBUG=modbus-serial,node_red_contrib_modbus"

in /lib/systemd/system/nodered.service and doing systemctl daemon-reload followed by systemctl restart nodered, and I can now see these debug messages in the syslog:
Sep  2 22:33:50 system Node-RED[3946]: Sat, 02 Sep 2017 21:33:50 GMT modbus-serial { action: 'send serial rtu buffered',
Sep  2 22:33:50 system Node-RED[3946]: data: <Buffer 01 01 00 f6 00 01 1d f8>,
Sep  2 22:33:50 system Node-RED[3946]: unitid: 1,
Sep  2 22:33:50 system Node-RED[3946]: functionCode: 1 }
Sep  2 22:33:51 system Node-RED[3946]: Sat, 02 Sep 2017 21:33:51 GMT modbus-serial {}
Sep  2 22:33:51 system Node-RED[3946]: Sat, 02 Sep 2017 21:33:51 GMT modbus-serial Timed out

The RTU in question is a Novus DigiRail 4C four channel counter, and it has a button "RCom" which when pressed sets the address and serial port parameters to known values (address 246, baud rate 1200, parity even, 1 stop bit) for one minute - I have used the same values in the configuration node (baud rate, parity, stop bit) and in the JSON I pass to the one modbus-flex-getter node I've put into my flow (full JSON is {"fc":1,"address":246,"quantity":1}). I press the "RCom" button before triggering the read, after which I can see its "Rx" LED blink briefly, but then ... nothing. Where do I go from here?

did you install the package with node-red-contrib-modbus --unsafe-perm --build-from-source ?

if yes check these:
a) is it 246 or 245?
b) is the timeout time enough?
c) is there only one to open the serial port or is it blocked by other?
d) did you search in the closed issues for ttyAMA0 QA's?
have fun
Klaus

Thanks Klaus, really appreciate your reply. Unfortunately I ran update-nodejs-and-nodered, despite the warnings, and now there is no sign of life at all on the serial port; before at least the "Rx" LED on the RTU would blink when I tried to send it a query, but now not even that. There are no errors in the Node-RED debug console, and no errors in the syslog:
Sep  5 22:53:46 system systemd[1]: Starting Node-RED graphical event wiring tool....
Sep  5 22:53:46 system systemd[1]: Started Node-RED graphical event wiring tool..
Sep  5 22:53:52 system Node-RED[14258]: 5 Sep 22:53:52 - [info]
Sep  5 22:53:52 system Node-RED[14258]: Welcome to Node-RED
Sep  5 22:53:52 system Node-RED[14258]: ===================
Sep  5 22:53:52 system Node-RED[14258]: 5 Sep 22:53:52 - [info] Node-RED version: v0.17.5
Sep  5 22:53:52 system Node-RED[14258]: 5 Sep 22:53:52 - [info] Node.js  version: v8.4.0
Sep  5 22:53:52 system Node-RED[14258]: 5 Sep 22:53:52 - [info] Linux 4.9.35-v7+ arm LE
Sep  5 22:53:56 system Node-RED[14258]: 5 Sep 22:53:56 - [info] Loading palette nodes
Sep  5 22:54:02 system Node-RED[14258]: 5 Sep 22:54:02 - [info] Dashboard version 2.4.3 started at /ui
Sep  5 22:54:05 system Node-RED[14258]: 5 Sep 22:54:05 - [warn] ------------------------------------------------------
Sep  5 22:54:05 system Node-RED[14258]: 5 Sep 22:54:05 - [warn] [sensehat] Error: Can't find Sense HAT python libraries. Run sudo apt-get install sense-hat
Sep  5 22:54:05 system Node-RED[14258]: 5 Sep 22:54:05 - [warn] ------------------------------------------------------
Sep  5 22:54:05 system Node-RED[14258]: 5 Sep 22:54:05 - [info] Settings file  : /home/nodered/.node-red/settings.js
Sep  5 22:54:05 system Node-RED[14258]: 5 Sep 22:54:05 - [info] User directory : /home/nodered/.node-red
Sep  5 22:54:05 system Node-RED[14258]: 5 Sep 22:54:05 - [info] Flows file     : /home/nodered/.node-red/flows_system.mydomain.net.json
Sep  5 22:54:05 system Node-RED[14258]: 5 Sep 22:54:05 - [info] Server now running at https://<IP_ADDRESS>:1880/
Sep  5 22:54:05 system Node-RED[14258]: 5 Sep 22:54:05 - [info] Starting flows
Sep  5 22:54:05 system Node-RED[14258]: 5 Sep 22:54:05 - [warn] [modbus-client:system] Client -> reconnect in 2000 ms Serial@/dev/ttyAMA0:1200bit/s default Unit-Id: 1
Sep  5 22:54:12 system Node-RED[14258]: 5 Sep 22:54:12 - [info] Started flows
Sep  5 22:54:17 system Node-RED[14258]: Tue, 05 Sep 2017 21:54:17 GMT modbus-serial modbus connection opened

Apart of course from the modbus-serial timeouts (I've also added serialport to the debug list since my original post):
Sep  5 22:46:01 system Node-RED[1621]: Tue, 05 Sep 2017 21:46:01 GMT serialport write 8 bytes of data
Sep  5 22:46:02 system Node-RED[1621]: Tue, 05 Sep 2017 21:46:02 GMT modbus-serial {}
Sep  5 22:46:02 system Node-RED[1621]: Tue, 05 Sep 2017 21:46:02 GMT modbus-serial Timed out

No other software on the system uses the UART; the serial console had already been removed from the boot cmdline. I'm afraid I am completely at a loss here. The flow couldn't be simpler:

The "inject" node sends the following JSON:
{"unitid":246,"fc":2,"address":0,"quantity":1}
And yes, it is supposed to be 246, according to the DigiRail manual:

If the equipment has already been used and you do not know its address and/or other communication parameters, press the RCom button on your front panel. It will enter the diagnostics mode during 1 minute, assuming the following communication parameters: Address=246, Baud rate=1200, parity even, 1 stop bit.

I've checked, and triple checked, every thing I can think of - including swapping the A/B wires, just in case the standard differs between my interface and the RTU (which is marked D/~~D). Whichever way, I did previously see the RTU detecting traffic on the bus (by blinking its "Rx" LED), even if it ignored it, whereas now it remains dark. Something must have gone wrong when I updated Node-RED, but what?

Please, try to work with Node.js 6 and not 8 and check your unitid is now 246 and address 0

Thank you. I'm not sure where Node 8 came from, must have been pulled in with an apt-get dist-upgrade since I haven't built from source or anything. In general, I always try to stay with the distro packages and the default settings. Since this is for a production server, automatic updates are enabled. Regarding address/unitid, I was under the impression that unitid is the Modbus RTU address (1-247) and address is the register I want to get/set (0-65535)? I've looked around for "other Modbus tools" but there doesn't seem to be a lot out there?

if there is more - please reopen - did Node@6 fix it?

Ah. Sorry, forgot to keep this updated - it seems the issue has to do with my RS-485 interface, a Monarco Hat, and the 4.9 Linux kernel. The Monarco devs are looking into it. And yes, this issue should probably be closed - many thanks for your help though!


how can i change the colors of the dark theme

how can i change the colors of the dark theme?

Directory Lister takes advantage of Tailwind CSS and their dark mode feature. In order to change the colors you would need to download the source, make your changes and re-compile the assets.


Addresses MARCo Eigenmike wav A to B conversion

This PR addresses the issue with Eigenmike A to B conversion described in issue #2.
Implemented Solution
The if-statement in utils._get_audio_numpy that triggered the ValueError is moved after the creation of audio_array, with audio_array replacing clip_names within the if-statement.
Test Revisions
test_get_audio_numpy_a2b is modified to include a test for an Eigenmike file.
An Eigenmike test file is added to tests/resources/datasets/marco/3D-MARCo Impulse Responses/01_Speaker_+90deg_3m/.
Audio file retrieval in all test cases is modified to directly address the files used, accounting for the addition of the Eigenmike file.
One ValueError check in test_utils.test_get_audio_numpy_valueerrors() is modified to use real clips since clips are now loaded to determine the number of channels.

#2

@aidanasingh, Thanks a lot for putting together this PR. I have submitted comments and requested minor changes. Once those are done, we will merge to main.

@aidanasingh, can you also please include the pytestcode coverage with your changes here?

@aidanasingh, can you also please include the pytestcode coverage with your changes here?

I cloned your branch, ran the tests. Everything looks good. Merging with master now


fix(#169): Replace installFetch() with installPolyfills()

Summary
Replace src/files/shims.js with the polyfills version.
Fixes: #169

Thanks

@jthegedus Hi James, is this going to be merged anytime soon?

Would love to see this merged as well.

Hi Pham,
I've tested your changes on my sveltekit project and it's working fine. I also went ahead and fixed the integration tests that are currently failing, but I'm not sure how to push the commit onto this PR.
https://github.com/Nushio/svelte-adapter-firebase/commit/d356444c6c6e771138672766ccad7568cc7a5176
I'd like to release the latest version of svelte-adapter-firebase with my fixes on Windows, your polyfills change, and co3k's header's pr (with a minor fix) as version 0.15.0 this week, if there are no objections / issues.

Hi Pham,
I've tested your changes on my sveltekit project and it's working fine. I also went ahead and fixed the integration tests that are currently failing, but I'm not sure how to push the commit onto this PR. Nushio@d356444
I'd like to release the latest version of svelte-adapter-firebase with my fixes on Windows, your polyfills change, and co3k's header's pr (with a minor fix) as version 0.15.0 this week, if there are no objections / issues.

Nushio,
If you'd create a pull request on my fork with your changes, I'll merge it and hopefully, that will get updated here.

Done!
https://github.com/pham/svelte-adapter-firebase/pull/2


Patch table

Checklist

[x] Appropriate branch selected (all PRs must first be merged to dev before they can be merged to master)
[x] Any modified or new methods or classes have helpful JavaDoc and code is thoroughly commented
[x] The description lists all applicable issues this PR seeks to resolve
[x] The description lists any configuration setting(s) that differ from the default settings
[x] All tests and CI builds passing

Description
Add editor HTTP endpoint for patching one or more values in an entire table (e.g., set end_date to 12/31/2019 for all calendars weekday calendars).
TODO: needs a corresponding UI PR. To work with this for now:
curl -XPATCH -H 'Authorization: Bearer $YOUR_TOKEN' -H "Content-type: application/json" -d '{"route_long_name": "This is a BUS!", "route_url": "http://new_url.com"}' 'http://localhost:9966/api/editor/secure/route?feedId=0de0f413-3b6a-44b1-b2c5-6242b8e9739e&sessionId=node0x9lekwvp5sxa1rtr81n7lsl4a1&route_sort_order=gt.1'

Codecov Report

Merging #238 into dev will decrease coverage by 12.99%.
The diff coverage is 4.41%.

@@            Coverage Diff             @@
##                dev    #238     +/-   ##
==========================================
- Coverage     32.79%   19.8%    -13%
+ Complexity      623     366    -257
==========================================
  Files           149     149
  Lines          7470    7538     +68
  Branches        993    1003     +10
==========================================
- Hits           2450    1493    -957
- Misses         4726    5916   +1190
+ Partials        294     129    -165

Flag
Coverage Δ
Complexity Δ

#end_to_end_tests
?
?

#unit_tests
19.8% <4.41%> (-0.15%)
366 <2> (+1)

Impacted Files
Coverage Δ
Complexity Δ

...tools/editor/controllers/api/EditorController.java
12.03% <4.41%> (-31.21%)
8 <2> (-10)

...ols/manager/models/ExternalFeedSourceProperty.java
0% <0%> (-100%)
0% <0%> (-3%)

.../conveyal/datatools/manager/models/LoadStatus.java
0% <0%> (-100%)
0% <0%> (-1%)

...al/datatools/manager/gtfsplus/ValidationIssue.java
0% <0%> (-100%)
0% <0%> (-1%)

...a/com/conveyal/datatools/manager/auth/Actions.java
0% <0%> (-100%)
0% <0%> (-1%)

...manager/jobs/CreateFeedVersionFromSnapshotJob.java
0% <0%> (-100%)
0% <0%> (-4%)

...ls/manager/models/FeedValidationResultSummary.java
0% <0%> (-92%)
0% <0%> (-4%)

...yal/datatools/manager/jobs/FetchSingleFeedJob.java
0% <0%> (-82.36%)
0% <0%> (-6%)

...ls/manager/jobs/NotifyUsersForSubscriptionJob.java
0% <0%> (-74.47%)
0% <0%> (-7%)

...veyal/datatools/editor/jobs/CreateSnapshotJob.java
0% <0%> (-74.36%)
0% <0%> (-7%)

... and 43 more

Continue to review full report at Codecov.

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

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


source-build supports 2.0 servicing

[ ] port changes from dev/release/2.0 to release/2.0
[ ] dry-run build and validate to ensure the servicing branch is sound.

Closing as we are not servicing 2.0 from this repo.


Option to hide command output

Would be great to have an option to hide output of some process. So, e.g. by running 2 processes I only see output of one of them. I can do something like this  &> /dev/null but it won't work on Windows OS.
Maybe as additional feature to this, would be an ability to set log level. e.g. show only error output.

Thanks for the suggestion, @kopach!

Duplicate of #25

Windows itself is going way towards WSL2, and recommending it for node development.
This might open a bag of worms, but I see the reasonable footprint to support to be the Windows + WSL2 combo. If so, this would allow simplification on the side of concurrently code base.

HI! its seems to be merged but not published yet..

Published in v6.4.0!


Consider warning about the GI

If you want users to fit to their own data in user testing, you might want to consider some warning message about the GI being arbitrary and that it should be user-specified.
For example, if someone was following the vignette, they might think they could just take their favorite respiratory virus case data and run this one line to get the R(t) https://github.com/CDCgov/cfa-gam-rt/blob/ce33553ac2de1bf06fe307351441a99c319d77b8/vignettes/RtGam.Rmd#L73 (that someone being me in user testing).
I would also suggest being a bit more clear here that fitGam is learning the trend in cases, and that not until the predict /plot function will you get R(t)

What do you think @seabbs? I think we likely need a good "formatting PMFs" vignette here and/or in {primarycensored} to make things clearer, but there's a bunch of higher priory stuff to get to.
We're pretty clear in the vignette and the docs that this is a simulated example from an SIR model:
https://github.com/CDCgov/cfa-gam-rt/blob/ce33553ac2de1bf06fe307351441a99c319d77b8/vignettes/RtGam.Rmd#L125-L126
Perhaps a big red warning box would be good for clarity? @kaitejohnson's point that calling RtGam() perhaps does imply that we're going to give the user an $R_t$. That said, I don't love the flow of requiring a GI at the time of fitting the model if it's not strictly required.

I think in the vignette I would have a sub section with a plot where you introduce the generation time and the delay as a clear other thing (something like this https://package.epinowcast.org/articles/single-timeseries-rt-estimation.html#specifying-the-model-using-epinowcastenw_expectation) would help.
RtGam
I think this point about the name is a really really strong one and does suggest to me it should maybe be called something else (unless we do plan to add the offset based renewal so you would actually get Rt). Perhaps that means calling the whole package something else...
I don't know about that but I definitely think its worth thinking through clearly at this stage.


Export Script must export JSON

The Export Script needs to export JSON for all library resource records

I would add to this (related to my comment on #3) that it would be ideal if these JSON responses could be saved as files named by the AS database id.


Zulip doesn't store conversations? Broken link in Tour of Selected equations

I've been browsing Tour of Selected Equations, and the "Equations 65, 1491: "Asterix and Obelix"" paragraph in it has a following quote

see this ongoing discussion"

link is dead because... Zulip doesn't seem to store old conversations?
(I'm not part of the project, but I've been participating in BBchallenge, so this kind of non-archiveability feels appalling)
But at the very least such dead links shouldn't stay public - so I suggest global search and prune of Zulip links in the repo (other than in Readme for the whole server, I suppose)

What I'm guessing happened here, is that topic was renamed and that the link therefore changed to this. I am not particularly familiar with Zulip, but googling around it looks like this is a known issue with Zulip being tracked here and that support for permalinks is coming shortly in the future, but this unfortunate behavior is the current state of things.

So reading that Zulip issue further, only links to topics are not currently permalinks, links to specific messages are. Links to topics end in /topic/NAME and links to messages end in /topic/NAME/near/NUMBER. I'll go ahead and open a PR shortly to update links to topics in the repo. I think only @teorth can update the wiki links.

I've fixed that specific wiki link, thanks for pointing it out.


Making this addon 1.17 compatible

please @Offroaders123 can you make this addon 1.17 compatible with the achievement screen and the panorama etc.

Yes plz @Offroaders123 🙏

I started working on the update s few days ago. I'm a little behind on things right now, so it will be out in the next week or so.

Sorry for taking so long on this update, more features and changes have come up during development. I looked back on a lot of the original textures of the pack and realized a lot of them are either inconsistent in regards to styling, or aren't color-accurate with the current textures in the Vanilla resource pack.

Alright! My bad for leaving Dark Mode in the dark, haha. Everything is up to date as of the Wild Update. I am working on publishing a new release for all of the changes soon. Now it uses the new Mangrove Swamp panorama!


[xgboost4j-spark] Incremental training

In this SO thread, http://stackoverflow.com/questions/38079853/how-can-i-implement-incremental-training-for-xgboost, I could find some info about incremental training using the python interface but I was not able to find any info about such feature in the Spark version. Is it available? Will it be in the future? Many thanks!

Internally there is update function in ml.dmlc.xgboost4j.scala.Booster, which allows you to perform update iteration by iteration, but there's currently no wrapper for incremental updates in xgboost4j-spark.
Are you envisioning a Spark-streaming application? If you're concerned about memory, you can try with useExternalMemory = true when you train with Spark's XGBoost.

No, a standard Spark application. But it would be better for my experimentation to train the classifier incrementally with the new data that I get from time to time. Any plan for this feature in the future? Thanks!

From a technical point of view, it is certainly doable with perhaps a similar interface to the Python one. But could you elaborate a bit more on the use case?
So you have, say, 50 million samples today, and you train a model with 50 trees.
A week later, you have another 50 million samples, and you want to update the model for another 50 iterations?

Exactly. To elaborate more: I would like to update the previous model with the new data that I get. I think it is interesting to see how the model performs when trained incrementally vs re-trained with the full updated dataset (i.e. train with data1 & update with data2 vs train with data1 & train again with data1+data2). Also, from a computational point of view, incremental training should be less expensive than re-training with the updated dataset.
I'm not aware of the XGBoost internal details, but If i understand correctly, the GBT algorithm is inherently incremental but there are quite a lot of optimisations in XGBoost that require all the data, making it somehow a hybrid incremental-batch classification/regression framework. Am I right? In such a case, is incremental training still possible?

As I mentioned earlier, internally every iteration is trained by the update() function. So, training an entire model can be decomposed into multiple update() stages. Thus, you can certainly break down the training into multiple sessions.
If you train your model with subsample < 1.0, then, each tree is trained with slightly different data, so I don't see how incremental changes would be that much different.
Do keep an eye on the distribution of the features though. If the distribution change, from time to time, between your incremental updates, then I think it may not end up working very well, even though GBT is not sensitive to scaling.
It seems something interesting worthy to explore, but I don't have the time to implement it in short term.

Thanks a lot for your feedback!
I was aware of the feature distribution problem, and I don't think it is something that you can easily solve without allowing for complete model reorganisation. Nevertheless, this is shared by many incremental models and I believe is an issue somehow you need to learn to live with.
I would be really interested in seeing a (perhaps preliminary) incremental training method in XGBoost Spark (as you said, maybe similar to what's already available in the Python interface). In the meanwhile, I'll check what I can something on my side :-)

instead of providing the interface shown in stackoverflow, https://github.com/dmlc/xgboost/pull/1670 shows a better solution?


Remove initialization in init()

When using memguard in Telegraf we also need to support constraint environments without memory-locking or memory-protection capabilities (e.g. containers, cloud environments or certain architectures). To do so we switch between an implementation using memguard and one without.
However, because memguard initializes some parts in init() functions (e.g. here) we will require the capabilities mentioned above even without using the functionality as-soon-as we are importing the package.
This makes it impossible to switch between a non-protected and protected solution during runtime.
Instead we should initialize the required parts either explicitly (requiring a v2 as it is a breaking change) or by using sync.Once at the first use of the functionality.
I'm willing to contribute a PR if there is an agreement on the way forward.

It is unfortunate that the implementation currently relies on package-level global variables. It would be better if everything was scoped to individual memguard.Instance things that stored their own state about what Buffers exist, what the Coffer key is, etc. And then perhaps also a single thread-safe global list of these instances for the purposes of cleaning up at program termination.
This would be a breaking change though (which should be okay to make for the time being given we are pre-v1). But for the time being it's probably easier to go with your other suggestion of using a sync.Once on the first usage of a Coffer.
I've seen suggestions in the past of having an environment variable to turn off memory locking, or detecting the ability to lock at runtime, but these are somewhat more complicated routes too.

#156 may incidentally help your use-case, let me know what you think

@awnumar I can confirm that #156 fixes the issue for us (see user comment in https://github.com/influxdata/telegraf/pull/13998).

@srebhan can you update this PR tomorrow with the latest from upstream? Then we can request one more round of testing. Thanks!


Before and after map actions

Is there any before and after hooks for this library? like in the following c#  library?
http://docs.automapper.org/en/stable/Before-and-after-map-actions.html

@marazt can you look into it?

Hi. No, there are no pre/post hooks implemented as in Automapper.

I'm closing it because of inactivity. If you want such feature, you can reopen it or create a PR :).


Try new colours on the home page

Trying a fresh coat of paint on the home page. Hope neither of you are against hot pink.
Uses a hard stopped gradient on a diagonal for a slightly edgy feel behind the photos

@Pinpickle @varkor Does this agree with you?

This is much more subtle, I love it.
I'm not sure if I'm convinced on the red gradient on the home page as I feel as it goes against our general look but maybe I'll come around to it.

Is there any way we can stop the stroke width scaling as the diamonds scale out? Maybe use some outline (to prevent reflow) and divide by scale?

Yeah I somewhat agree. Though I think it's v pretty, the solid red on the other pages then doesn't feel familiar. Maybe can keep the gradient for further down?

Might make the "Go to dashboard" link a little brighter / white now that the top bar is slightly transparent, but other than that, it all looks good!

This beautifulness is getting into our repo now


Update README.md

add feature parity table https://github.com/satoren/y_ex/issues/95

coverage: 94.462%. remained the same
when pulling 7d13724697d80956b2645560641d9eea24fd56e0 on satoren-patch-3
into d11a86e0544e3fce60a1cbb1807e15a14c0923c0 on main.


Enhanced isotope peak scanner

new isotope peak scanner

Scanning for characteristic isotope patterns for multiple element combinations and charges.
Identification of monoisotopic signals by calculating isotopic pattern similarity scores and comparing them (local maximum of the score = monoisotopic signal)
optional reduction of features to those with the best isotope pattern scores

addition to the DatabaseIsotopeRefiner:

Optional removal of the features of isotopic signals of the database matches, so only the monoisotopic signals of the found components are listed.

in #1891


wifi flakey on 16.09beta

Issue description
every few hours wifi quits on my machine.  i see this in my logs
[ 6945.686202] wlan0: deauthenticating from f4:f2:6d:63:99:2b by local choice (Reason: 3=DEAUTH_LEAVING)

i then have to reenable wifi support in network-manager to get it to going again, it reconnects to my network without any problem.  I was running the pkgs.linuxPackages_4_7 on 16.03 before hand. and not having this issue.
Steps to reproduce
is my wifi card
03:00.0 Network controller: Intel Corporation Wireless 7260 (rev 83)
Technical details
Linux toadman 4.7.2 #1-NixOS SMP Sat Aug 20 16:11:18 UTC 2016 x86_64 GNU/Linux
16.09beta133.ebe7f35 (Flounder)
nix-env (Nix) 1.11.4
"16.09beta133.ebe7f35"

System: (NixOS: nixos-version, Ubuntu/Fedora: lsb_release -a, ...)
Nix version: (run nix-env --version)
Nixpkgs version: (run nix-instantiate --eval '<nixpkgs>' -A lib.nixpkgsVersion)

[ 6987.278556] IPv6: ADDRCONF(NETDEV_CHANGE): wlan0: link becomes ready
[ 7437.049926] wlan0: deauthenticating from f4:f2:6d:63:99:2b by local choice (Reason: 3=DEAUTH_LEAVING)
[ 7506.933213] iwlwifi 0000:03:00.0: L1 Enabled - LTR Enabled
[ 7506.933819] iwlwifi 0000:03:00.0: L1 Enabled - LTR Enabled
[ 7507.145790] iwlwifi 0000:03:00.0: L1 Enabled - LTR Enabled
[ 7507.146556] iwlwifi 0000:03:00.0: L1 Enabled - LTR Enabled
[ 7507.174499] IPv6: ADDRCONF(NETDEV_UP): wlan0: link is not ready
[ 7507.204254] IPv6: ADDRCONF(NETDEV_UP): wlan0: link is not ready
[ 7510.449621] wlan0: authenticate with f4:f2:6d:63:99:2b
[ 7510.454367] wlan0: send auth to f4:f2:6d:63:99:2b (try 1/3)
[ 7510.455746] wlan0: authenticated
[ 7510.455960] wlan0: associate with f4:f2:6d:63:99:2b (try 1/3)
[ 7510.457072] wlan0: RX AssocResp from f4:f2:6d:63:99:2b (capab=0x11 status=0 aid=2)
[ 7510.458434] wlan0: associated
[ 7510.458518] IPv6: ADDRCONF(NETDEV_CHANGE): wlan0: link becomes ready

transferring more data across the link seems to make it happen faster but I can't reliably make the error happen yet

has not been a problem since i disabled powersave via modprobe. but I did not have the need of this setting before.

Thanks for reporting this! I suspect this is a kernel issue, not a NixOS issue, and there are several upstream bugs already (links in [1]). I think we can close this here if you are OK with that? If anyone else has the same issue they'll still find your bug and your solution in Google.
[1]
http://askubuntu.com/questions/616119/unstable-wireless-with-intel-7260-iwlwifi-after-upgrade-to-15-04

ya thats fine, i just wanted to flag it as it was a change and thought others might hit it


Fixes/removes outdated examples

Closes #204
I repaired leaflet_interacion.html, but did away with leaflet.html (the url template it was using seems to be down), as well as wim.html (uses a whole set of apis that we're not using anymore)
cc @javisantana

:shipit: :es:


Windows Server Operating Systems

Hello,
Please can you update this article with further details regarding Windows Server Operating Systems.
For example:
Office 365 on Windows Server 2016
Office 365 on Windows Server 2019
etc.
Thank You

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

ID: 00c430f1-bbf5-53b8-a225-4fbe8fc39c3b
Version Independent ID: 0a069a0d-4d35-71ee-53af-8c55fe8548a0
Content: Browsers used by Office Add-ins - Office Add-ins
Content Source: docs/concepts/browsers-used-by-office-web-add-ins.md
Product: non-product-specific
Technology: add-ins
GitHub Login: @o365devx
Microsoft Alias: o365devx

Hi @jd1984,
Thank you for raising this question. Let me consult with the team and get back to you about the current Windows Server support/browser story.

Thanks @AlexJerabek

Hi @jd1984,
Since it's the holiday season in the US, many of our team members are on vacation and responses may be slow. In the meantime, I found this Stack Overflow thread about running add-ins on Windows Server: Loading Word add-ins on Windows Server.
Judging by the thread, it looks like add-ins run on Windows Server, but you need to toggle some settings to make them work. As for the browser control, my guess is that Server 2016 and 2019 run an IE11 browser control, but I'd have to verify that. I would along want to verify the support story before committing to an answer.
Have you been testing on those platforms? Or was this issue raised out of curiosity?

Hi @AlexJerabek, no problem.
Yes the problem we are seeing is with Office 365 Semi Annual 2202 running on Server 2016 OS.
Specifically the Visio Data Visualizer add-in for Excel saying IE11 is no longer supported.
We do have Edge installed, so I guess the solution will be how do we force Excel to use Edge.
Thank You

With older versions of Windows, there isn't a way to "force" Edge to be the browser. That's because it's really a browser control in Office that's being used.
That said, I'm surprised the Visio Data Visualizer is giving that error. I thought that had been around for long enough that had to have supported IE11. Is this new behavior for you? Was the add-in previously working?

Hi @AlexJerabek
Yes this is new behaviour for us, and did used to work last year.
We are currently on O365 Semi Annual 2202 release
Is there any feedback from your wider team members yet?
Thanks

@slabereemsft, any insight?

@jd1984 - Thanks for reporting.  I'm not sure whether this is an OS specific issue or an installation specific issue as the Edge WebView2 component is technically an optional component for installation.
@yatibawri1 - Can you investigate here?

@slabereemsft after investigating with engineers seems like it is an installation issue. Office installation will trigger webview2 runtime installation. I am following up to reach out to the right individual

I have found a similar issue on two Server 2016 instances. However it is the actual M365 logon prompt that is using IE11. If a user needs to enroll in MFA, they are unable to do so as the login prompt runs in IE11. The MFA enrollment page does not support IE11.
Office version 16.0.14931.20858
One of them was a new server provisioned in October too. So a fresh install only a few months old.
It installs WebView2 with office, however Office doesn't actually bother using it. It still uses IE11.
As per this documentation page: https://learn.microsoft.com/en-us/office/dev/add-ins/concepts/browsers-used-by-office-web-add-ins
Windows 10 ver. < 1903 uses IE11. Windows Server reports as build 1607. So is it possible that it is detecting it as Windows 10 1607 thus using IE11?

@Ben-ITLogic - This question was posed on our developer forum which made a few of us think that this was related to Office Add-ins.  The MFA enrollment page sounds like its actually an office feature (vs using one of our APIs).  Is that correct?  That'll help us route this to the right folks.

@slabereemsft It is related to the normal Office login UI, so probably not an add-in directly. However this is literally the only place I have managed to find anyone mentioning office using IE11 for webpages instead of EdgeWebView2 on Server 2016. So thought it could have been related to underlying code somewhere.

Office 365 only deploys WebView2 on Windows 10 and it is already pre-installed on Windows 11.  For Windows down-level, you need to deploy WebView2 manually.
https://developer.microsoft.com/en-us/microsoft-edge/webview2/
Choose the Evergreen Bootstrapper in order to always be on the WebView2 latest build.

@SylvaD-MS In my case WebView2 is installed and works on other apps. Office M365 Login UI just doesn't use it.

@Ben-ITLogic - If I recall correctly, that feature isn't using any of our 3rd party extensibility capabilities.  So its likely hard-coded to use the Trident control (which is based on IE 11).  That's not technically supported through this support channel.  I'll see if I can follow-up on an internal channel to get an update from the team but if its urgent then I'd recommend going through one of our paid support channels.

@slabereemsft yes this was originally raised as a Visio Data Visualizer add-in for Excel issue, although based on @Ben-ITLogic 's additional feedback it sounds like the problem is more widespread?
@SylvaD-MS I have just tested manually installing WebView2 on Server 2016 and this still does not work

Thank You

Quick note: I've added the Windows Server support notes to the previously mentioned article in #3832. However, this thread points at a different issue of decreased functionality. I'm going to transfer this from the documentation into the product repo for tracking purposes.


build occasionally

Reviewer checklist

[ ] Ensure relevant issues are linked (description should include text like "Fixes #")
[ ] Ensure any appropriate documentation has been added or amended

Coverage remained the same at 99.615% when pulling 153cde437662c47d2665858758e1f1ef5ed34824 on build into 6f72131192fbcec473e60ef42464931b4c1c1668 on main.


Dynamic (ie. real) dashboard

The live dashboard was hacked together during the hackathon last weekend, and although it showed real data, it was maintained by hand in a static HTML file. It should be converted into a public view, the social feeds need to be added to the event configuration, a link should be provided somewhere for the organisers to see (admin panel?), and live data (e.g. activity) should be shown in a dynamic graph.

There is a basic API here. Use it with https://github.com/Dashing-io/smashing or other dashboards.

See the Dribdat whitepaper for some more of thoughts about pulling signals like Git commits into the dashboard.


Specify where the Azure update channels can be found

"...an announcement is made through the Azure update channels"
Please specify where I can find these channels.

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

ID: ec484163-5d73-af3a-3d7b-9e0d421d2824
Version Independent ID: 42da7aed-a33d-e331-fb7f-4fb4b40e5813
Content: Supported Kubernetes versions in Azure Kubernetes Service
Content Source: articles/aks/supported-kubernetes-versions.md
Service: container-service
GitHub Login: @sauryadas
Microsoft Alias: saudas

https://azure.microsoft.com/en-us/updates/?product=kubernetes-service

@sauryadas Should this suggestion be added? I can push a PR to quick add the link to the Azure updates page.

@iainfoulds Sure.. thanks

Added link to the Azure update channel. This change should publish later on this afternoon.


Latest release (3.1.1) missing arm64 docker images

Bug description
While 3.1.0 was still available as arm64 and amd64 docker image, the 3.1.1 release is only available for amd64.
Thus the deployment on arm64 CPUs (e.g. AWS graviton) fails.
There are quite some similar issues here already referring to developer images for apple's CPUs.
The workaround given for those won't work on k8s clusters running on arm64 nodes.
How to reproduce the bug

Check out the listed architectures for the release docker image: https://hub.docker.com/r/apache/superset/tags?page=1&name=3.1.1

Screenshots/recordings
No response
Superset version
3.1.1
Python version
3.9
Node version
16
Browser
Chrome
Additional context
No response
Checklist

[ ] I have searched Superset docs and Slack and didn't find a solution to my problem.
[X] I have searched the GitHub issue tracker and didn't find a similar bug report.
[ ] I have checked Superset's logs for errors and if I found a relevant Python stacktrace, I included it here as text in the "additional context" section.

Oh I think this is related to the branch being cut prior to the multi-platform changes in master. Hoping the 4.x cuts will include what's need in the branch itself.
To remedy this for that branch I just triggered the workflow dispatched manually from master. Oh, and I had to cherry-pick 0cd2431989 the same way I had done in 3.1.0 and somehow didn't make the cut for 3.1.1 (I never told anyone I squeezed in this cherry, thinking it was pretty minor, hard to explain change). That cherry is bringing a newer Dockerfile that prevents a race condition that happens when dual-platform building in parallel (both docker build processes fight for locally-mounted apt-get work folders, which we move away from that approach in that newer dockerfile)
@michael-s-molina I know it's not super clean, but I moved the tag 3.1.1 to include that cherry. How do we make sure it gets picked in 3.1.2+?

For the record, job is running here -> https://github.com/apache/superset/actions/runs/8150387426/job/22276578594
Explaining a bit more the intricacy of the different between a release GHA trigger and and workflow_dispatch on master... The former will use the old GHAs defined in the branch, while the master trigger will use the GHA definitions on master, pull the right branch, and run the build based on that. Subtle difference, but the reason for the issue here... For older release/re-release, we'll have to manually dispatch from master as such:

Moving forward, it shouldn't be an issue, unless we want to retroactively change some of the logic, say if we wanted to introduce a third build platform retroactively, we'd have to fiddle with things, trigger from master, ...

I think we should be able to close this once the job finishes and we confirm that:

3.1.1 is all multi-platform
we'll pick that cherry moving forward
we'll trigger manual runs for 3.x releases :(

We could create a cherry with fresher actions, but hoping we can just move on with our lives to 4.x

@mistercrunch I tried to manually build 3.1.2 but I'm getting errors:

Ok I'm on it!

Ok I opened a PR fixing it


FilePicker is not shown relative to CameraRoot and becomes unreachable

Description
If you move the CameraRoot / player and then launch FilePicker, the FilePicker window is shown based on CameraRoot being 0,0,0 and therefore out of reach. UI.PopupPose() is relative to CameraRoot, so I guess FilePicker needs to transform it to global space. The virtual keyboard is fine though.
Platform / Environment
Tested on 0.3.7-preview.8
Here's my test code:
using StereoKit;

Pose pose = new Pose(V.XYZ(0,0,-1),Quat.FromAngles(0,180,0));

SK.Initialize();

Pose cameraPose = new Pose(Vec3.Zero);

string inputStr="KB Test";
SK.Run(()=>{

    Hierarchy.Push(cameraPose.ToMatrix());
    Text.Add("Popup\nPose",UI.PopupPose(Vec3.Zero).ToMatrix());

    UI.WindowBegin("",ref pose, V.XY(.6f,0),UIWin.Body);
    UI.Input("Test input",ref inputStr, V.XY(.1f,0));
    UI.SameLine();
    if (UI.Button("Open file picker"))
    {
        Platform.FilePicker(PickerMode.Open,null,null,new string[]{"*.*"});
    }

    UI.Label(cameraPose.position.ToString());

    UI.Label("Move stage:");
    UI.SameLine();
    if (UI.Button("<")) {
        cameraPose.position+= V.XYZ(-1,0,0);Renderer.CameraRoot = cameraPose.ToMatrix();
    }
    UI.SameLine();
    if (UI.Button(">")) {
        cameraPose.position+= V.XYZ(1,0,0);Renderer.CameraRoot = cameraPose.ToMatrix();
    }
    UI.SameLine();
    if (UI.Button("Up")) {
        cameraPose.position+= V.XYZ(0,1,0);Renderer.CameraRoot = cameraPose.ToMatrix();
    }
    UI.SameLine();
    if (UI.Button("Down")) {
        cameraPose.position+= V.XYZ(0,-1,0);Renderer.CameraRoot = cameraPose.ToMatrix();
    }
    UI.WindowEnd();
    Hierarchy.Pop();

});

Thanks for finding this one! I expect it's an easy fix, and I should be able to get to this shortly :)

Fix should be in by this point, please let me know if it resurfaces :)


⚠ Samsung has degraded performance

In 697601a, Samsung (https://samsung.com) experienced degraded performance:

HTTP code: 200
Response time: 1802 ms

Resolved: Samsung performance has improved in e447115.


Question (redis-ha): is valkey support planned for the future?

Hi,
since redis changed their licence type we are thinking about a move to the valkey fork. The argocd community is also discussing it, see: https://github.com/argoproj/argo-cd/issues/17970
Currently the valkey image seems to be 100% compatible - the redis-ha chart still works good after replacing the redis image with valkey (tested with 8.0.1). But this can change in the future.
So we see the option to move to a different chart - I found only 2 options so far:
(bitnami - not our preferred option) https://github.com/bitnami/charts/tree/main/bitnami/valkey
(groundhog2k - small and new, but unclear adoption) https://github.com/groundhog2k/helm-charts/tree/master/charts/valkey
So my question is now: Do you think you will support the valkey images in the future? (especially if they will be incompatible)
Or is this totally out of your scope and you will focus on redis only.
Thanks in advance for clarification,
Sven

I don't personally have objection to a native OSS alternative to prevent licensing issues for consumers of the chart.
I haven't tested this with the chart out of the box.
I think with ArgoCD being the biggest downstream consumer of this that (that I'm aware of), I would happily follow their lead as a community.
The biggest test that needs doing is HA and adjustments to facilitate in something like Valkey.


Feature/trans3

Over a hundred new French translations added by @pierresauvignon ! Well done, Pierre.

added translation string in en/de/fr for latest Open Tasks work from kristy. Ready for merge.

LGTM


Support for new cluster app Helm values structure

What this PR does
Towards https://github.com/giantswarm/roadmap/issues/2954
Checklist

[x] Update changelog in CHANGELOG.md.

Trigger e2e tests

/run cluster-test-suites

Here you can see the local test run for custom cluster-aws branch https://github.com/giantswarm/cluster-aws/pull/431#issuecomment-1832192622

/run cluster-test-suites

The tests should now be able to pass if we run them, yes?
/run cluster-test-suites

CAPV MC is currently having unrelated issues so those failing tests are not due to this change. Adding skip label.

@nprokopic Could you please coordinate merging / releasing this with the cluster-aws changes?

cluster-aws release changes have already been merged, this is the fix we need next.
The next steps are then to cut a new release of cluster-aws and then fix the upgrade test for CAPA.


Rotate map with Google Maps API V3

Hello, I know this is not the right section, but I am truly desperate and I thought you may know if this is possible.
I am trying to rotate Google's Map and I'm using their JS API. I am trying to use setHeading() method but it's not working since as I've read it'll only work if the map type is hybrid or satellite and if there's a certain tilt.
I've seen in your browser code -> https://github.com/mapsplugin/cordova-plugin-googlemaps/blob/master/src/browser/PluginMap.js that you have this method too in your setCameraBearing() method.
My question is, is there a way to rotate the map using Google's Map JS API v3 as I can see this plugin does it in its code? I am willing to request private support if you can help me rotate Google's Map but using their JS API not this plugin, but I need to know if this is possible first in order to pay.
Thanks.

Technically not possible, because Google Maps JavaScript API v3 does not have the function.
setHeading() method works only satellite tile panel at particular locations (such as US big cities)

How comes it works with this plugin then? Don't you use Google JS API under it?

This plugin uses three APIs (everything describes in README.md).
Android - Google Maps SDK for Android
iOS - Google Maps SDK for iOS
browser - Google Maps JavaScript API v3.

And in the browser version of this plugin, does setCameraBearing(bearing) work? I only tried the Android version and it worked perfectly there without satellite or tilt mode

does setCameraBearing(bearing) work without satellite and tilt?

As I said above, no.

It worked on Android tho

APsI are different.


Cpu Usage , no framerate limiter

Really a nice tool to use ! , But an parameter to add like max fps 60, 30 , 15 would be nice , while sharing code it would prevent fan to ramp up , just need 15 fps when sharing visual studio .

thanks! right, that would be a nice addition. do you know if electron provides a simple parameter to limit frame rate by any chance? i will see if i can find the time to look into this:)

sadly no  :(

But I did clone the repo and tried some stuff , still no luck but you will know if I found something

just tried that :
`video: {
mandatory: {
chromeMediaSource: "desktop",
chromeMediaSourceId: source.id,
minWidth: display.bounds.width,
minHeight: display.bounds.height,
maxFrameRate: 5
},
},`

and it work ! . I did try  before maxfps , fps , ect ect XD

I made a build with a 15 fps limit . really slow down the fan on my laptop . An i7 in a 13 inch does make some heat XD

awesome! i will add a command line option in the next release:)


Use head/body tags in redirection markup

Running a Netlify plugin using html-validate fires warnings against redirect pages.

Rebased off latest master

Spec-wise the <head>, <body> tags can be omitted without invalidating the document.

Updated the PR name to reflect that! You’re right that they can be omitted according to the spec; html-validate is being more strict than the spec here. Also, interestingly, the Google style guide recommends their omission.

@cmbuckley Yep, I saw the Google recommendation as well. Thanks for posting a link here.
In the light of the new info, is it necessary to proceed with the proposal?
Also, is html-validate parsing the document correctly as HTML5?

html-validate only validates HTML5 documents, but they do state strictness as a design choice.
I can see either side here; the PR isn’t strictly necessary and the validation rules can be set to warn-only, but I would struggle to consider this an “optimisation” and it would be nice to keep the validator rules for other parts of the content model. I haven’t found a nice way to exclude specific files from the validator.


comments update

Coverage decreased (-0.1%) to 50.904% when pulling 3cbab59bacc4a2c251bc9570203da11bb54fe7a7 on lcestou:patch-3 into 1a140d21e2b9403b54ed0d793608c817f9f6c15d on TimothyLuke:master.


Zipped NodeJS modules as actions

This PR introduces support for Node actions written as zipped modules.
Builds on #1348 which should be merged first.

PG2 381 is blue-ish

It might be nice to supply a Yeoman generator to help generate OpenWhisk actions.

Thinking longer term, it might be advisable to support .tgz files produced with the npm pack command. npm pack is smart enough to include "bundled" dependencies and exclude files that are not needed for production use (automated tests, build files, README, etc.).
This would require that npm install is run on the .tgz each time, however, if all the required dependencies are bundled, this command is essentially equivalent to just unpacking the .tgz. However, if all the required dependencies are not bundled, the installation will still work (albeit slower due to the overhead of fetching dependencies). At this point, using bundledDependencies is an optimization we can strongly encourage to the user through documentation, the aforementioned Yeoman generator, and even log messages when running actions that did not include all the required deps.

The way I see it, supporting .tgz could be part of this PR, but supporting npm install seems beyond its scope.

The way I see it, supporting .tgz could be part of this PR, but supporting npm install seems beyond its scope.

I agree, and I even think that supporting .tgz without npm install may be more confusing than valuable. In this way, we may be able to say .zip is for completely self-contained archives, and .tgz is for using with npm install.

Addressed the binary marker (#1391 needs to be merged first).
Improved the error messages for the various failure modes of uploading a broken/incomplete zip file.
Added tests for the above.

PG2 415

Merged as https://github.com/openwhisk/openwhisk/compare/cb02a8850a4e...b36fd6faafbe.


CodeSandbox examples for events

Hey David -
I've added a CodeSandbox example for init, select, dragStart, dragEnd and resize events. I think it would be beneficial to consolidate these examples (and others - API etc) into as few CodeSandbox instances as possible simply for ease of maintenance as the project evolves. Happy to add additional documentation to replace the Under construction placeholder, but I think many of these are self-explanatory and could be listed more concisely in the documentation. Please feel free to fork my sandboxes as needed!
https://github.com/davidcetinkaya/embla-carousel/issues/45

Hello Nik (@nikrowell),
Wow, thanks a bunch for this pull request 💪!
I just glanced at it and it looks great. I will take a closer look at it as soon as possible and get back to you when I've done so. Looking forward to it.
I agree about consolidating the number of CodeSandboxes for maintainability reasons. An old friend of mine @gunnarx2 made this post about Embla, where you can toggle features on and off. Maybe we should aim to build something similar?

I think many of these are self-explanatory and could be listed more concisely in the documentation.

Would you mind giving me an example of how to list it more concisely? I'd appreciate that a lot 🙂.
Best
David

Thanks David!

Would you mind giving me an example of how to list it more concisely?

Was thinking if we were to consolidate CodeSandbox examples, the events section wouldn't need the code block, CodeSandbox link and (in some cases) the extra description. Could then be a more scannable table of options / events / methods like this, for example. That said, I love the idea of setting something up like the blog post you shared.

Thanks a bunch for your contribution Nik (@nikrowell) 💪!
I took the liberty to add you as a contributor here ⭐. I hope that is OK.

Could then be a more scannable table of options / events / methods like this, for example.

Some developers seem to appreciate the additional information provided for each option, api method or event. Things like these are always hard to decide I think. That's why I decided to use expandables for each. I guess you could call it a compromise of sorts.

That said, I love the idea of setting something up like the blog post you shared.

We should aim for this then 😃!
Cheers!
David


sol-oic-gen: add SCAN port on clients

With that it's possible to request a scan for all servers
that matches the same interface of clients.
IDs will be dispatched on DEVICE_ID port, so later
they can be used to select the device which the client
will talk.
Ideally a human-friendly name should be sent on packet
as well, not only the ID string, but I didn't found
anything like that in our implementation so far.
sol_oic_client_get_server_info return some information,
but only stuff related to a model, so users wouldn't
be able to use it to differentiate devices.
Maybe manufacturer_name + model_number could be used.
TODO: ID must be converted back from binary to
hex ascii.
@otaviobp please take a look on this. I'm pushing
it this way because I'm not sure I'll be able
to work more on that today.
It requires the conversion, and accepting IDs
by port instead of only option to conclude this
task.

Why did you choose to have the scan per-device, as opposed to have a scan type that takes an interface (or something like that) as parameter/inport?
My feeling is that it will be smaller code/binary-wise since this is not replicated in every generated node, also not adding 2 new ports of the node.
As for the pretty-name, @lpereira can tell you how to get. Until you get it done, use a composed packet with 2-3 strings and define which one is the ID, which one is the pretty name, etc. Use empty strings in those we don't support yet.

@barbieri I don't see use cases for such a generic scanner. For a flow user, what he does is something like, in client-side:
button(gpio/writer:pin=X) OUT -> ENABLED oic/client-brightlight(id=ABC)
She doesn't know it implement a "core.brightlight" interface.
Also, she won't be able to feed the node with the wrong interface.
The client knows what interfaces it implement, so it scan for all reachable servers for itself.
In the end, what you want is to find some server to talk to.
We could generate an oic/scan-brightlight (that would be used with oic/client-brightlight and oic/server-brighlight). But regarding code replication, all these scan machinery already exists, all it does so far is to filter by "id", and now we want to filter by "interface".
The difference is that if scan ports are on client itself, you don't need an extra node.
Things would work like:
light(oic/client-brighlight) DEVICE_ID -> IN Selector(selector/string)
Selector SELECTED -> DEVICE_ID light
instead of:
scan(oic/scan-brighlight) DEVICE_ID -> IN Selector(selector/string)
Selector SELECTED -> DEVICE_ID light(oic/light-brightlight).
What use cases do you see using a generic-interfaces scanner?

All these options are trivial to be implemented, it's just a matter of choosing which one would be better for a user, imo.

I don't like the scan- node types, indeed it would make it more complicated (and bigger), not smaller.
By keeping a single node that does it, it could avoid adding to the binary size with 2 extra ports and functions per node.
OTOH having to know about the interface name is really bad :-(
I have to think a bit more about it. The overhead of the 2 extra ports is not that big... at least not if we disable descriptions, then for now keep like you did.

OK, I've discussed with leandro and otavio now, and we're inclined to follow the implemented approach for now.
Leandro highlighted that resources may implement multiple interfaces, and sometimes despite names doesn't match, they're compatible (apparently they have stuff like aliases, inheritance, etc). A lot of things that users would need to know to use a generic scanner.
I'm sending a v2 enconding to base16 and @otaviobp will continue working on this task.

merged