Removing the line "Not Supported for Standard_DC8_v2"

REST API and "az vm" outputs showing misleading information from specific regions that VM SKU "Standard_DC8_v2" is supporting "PremiumIO" storage.
Example:
C:>az rest --method GET --url "https://management.azure.com/subscriptions/0d6f2bed-d8ee-4c2c-99ce-c15865095e5f/providers/Microsoft.Compute/skus?api-version=2023-11-01" --query "value[?name=='Standard_DC8_v2'].[name,locationInfo[0].location,capabilities[?name=='PremiumIO'].[name,value]]" -o table
Column1          Column2             Column3

Standard_DC8_v2  australiaeast       [['PremiumIO', 'True']]
Standard_DC8_v2  australiasoutheast  [['PremiumIO', 'False']]
Standard_DC8_v2  CanadaCentral       [['PremiumIO', 'True']]
Standard_DC8_v2  CanadaEast          [['PremiumIO', 'False']]
Standard_DC8_v2  CentralUSEUAP       [['PremiumIO', 'False']]
Standard_DC8_v2  eastus              [['PremiumIO', 'False']]
Standard_DC8_v2  northcentralus      [['PremiumIO', 'True']]
Standard_DC8_v2  northeurope         [['PremiumIO', 'True']]
Standard_DC8_v2  southcentralus      [['PremiumIO', 'True']]
Standard_DC8_v2  southeastasia       [['PremiumIO', 'False']]
Standard_DC8_v2  uksouth             [['PremiumIO', 'False']]
Standard_DC8_v2  ukwest              [['PremiumIO', 'True']]
Standard_DC8_v2  westeurope          [['PremiumIO', 'False']]
Standard_DC8_v2  westus              [['PremiumIO', 'False']]
Standard_DC8_v2  westus2             [['PremiumIO', 'False']]
az vm list-skus --location ukwest --size Standard_DC8 –all
[...]
"name": "PremiumIO",
"value": "True"
[...]
"name": "Standard_DC8_v2",
"resourceType": "virtualMachines",
"tier": "Standard"
https://learn.microsoft.com/en-us/azure/virtual-machines/dcv2-series
Microsoft TA confirmed that Specific SKU is supporting Premium Storage
Internal MS Link:
https://msazure.visualstudio.com/DefaultCollection/One/_git/Compute-CPlat-Core?path=%2Fsrc%2FCRP%2FDev%2FComputeResourceProvider%2FConfig%2FCommon%2FCRP.Configs.VMSizes.Global.xml&version=GBmaster&_a=contents
Example:

MS service request:
2312110050002697

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

ID: aca0ec03-776b-fb48-3c1d-82dc11916534
Version Independent ID: 030f5f5d-992a-1ead-ec17-39faba84cef1
Content: DCsv2-series - Azure Virtual Machines
Content Source: articles/virtual-machines/dcv2-series.md
Service: virtual-machines
Sub-service: sizes
GitHub Login: @linuxelf001
Microsoft Alias: raginjup

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

@marioorec
Thank you for bringing this to our attention! We've initiated a pull request (PR) to address this issue. Once the author reviews the changes, they will be merged, and the updates should go live shortly. Your diligence is much appreciated!

Hi to all and Happy 2024.
Could yo please send us an statement to provide to customer before closing the service request<PHONE_NUMBER>002697.
Customer expects an feedback from Microsoft about the misalignment in the documentation and API/CLI commands.
Thank you


Rob: Watch artjoker.net

Rob requests the watch of the watch_keyword artjoker\.net. See the Metasmoke search here and the Stack Exchange search here.

Coverage remained the same at 65.879% when pulling c131905bfb19376a80452fbb3884203cd55661bb on auto-blacklist-1525241332.9747818 into 01cc00bf2ca03d264c11acf46adf487a019a1a70 on master.


ES7: async and await

Is there any support for those? I saw some discussions about implementing this but there wasn't a final consent.

Related/Duplicated: #1939

Yeah, I tried using the experimental json key-value but it didn't work.

there is no "experimental" option yet, sorry. Anyways, this is a duplicate, lets keep it to the original issue.
The way jshint's parser is built does not make it very nice to support "experimental" features that may never make it as far as stage 2, or may change drastically before being ratified. It's very brittle, unlike projects such as Traceur or Babel which are built on traversing and transforming an AST. I hate to say it, but maybe eslint is the preferred solution for linting these experimental features, due to its AST-linting.

For the current status, see #2604

async/await are now supported as of version 2.10.1. Simply update your .jshintrc to use "esversion": 9.
See the CHANGELOG.md.


Finding examples of openly accessible images

The original version of landsat_spectral_clustering.ipynb used redding.tif which was obtained originally from planet.com. As I wasn't sure whether this image could be made available, I updated the notebook to use a landsat example taken from a  datashader example.
@ebo then informed me by e-mail that this image is not really suitable as it only has two bands. We would like some example images that can be made public that also have a decent number of bands. This is important as we will then be able to compute the various indices that we might then want to learn on.
One suggestion by @ebo was to use these images of a disappearing lake although I only see a link to download them in JPG format?
Lastly, a new notebook has been committed referencing 'Midwest_Mosaic.tif' which I don't think we have discussed yet. Is this something we could slice down and add to the repo as an example?

I'm not sure what you mean about this image having only two bands; it has 11 bands if you count panchromatic:
http://datashader.org/topics/landsat.html

Oh, I think I see the confusion: The information from the different bands is in different files.  You need all the files, if you want all the bands.  So I don't think we actually need a new example here, you just have to read all the different bands in, from different files.

As the current example does have sufficient bands (across the relevant files) I've renamed this issue to reflect that we would still like a variety of good, publicly accessible image examples regardless.

The jpeg formatted images are not suitable to calculate things like
NDVI (vegetation).  There are a couple of sites to download the images
from, like EarthExployer and Glovis, but the how and why of that I hope
is beyond the scope of the examples other than providing a suitable
download location.  I went on to downloaded the same two LANDSAT images
from NASA's EarthExployer and have started a notebook with the intent to
go through the entire exercise step-by-step (which include things like
stacking the individual bands, generating masks from NoData and
non-overlapping images, calculating NDVI, visualizing, etc.).  The
images are 7961x7241 and 7821x7941 for the 1988/10/22 and 2017/10/22
images respectively.  These images also do not exactly overlap, so they
have to be clipped, etc., if you are going to use the conventional "open
as an xarray" approach.  This is a very common workflow for people doing
geospatial analysis, and it is just what it is.  While we could slice
them down as Jean-Luc suggests, it sidesteps a lot of issues that users
have to deal with and hides them.  THis has contributed to my own
confusion and difficulty learning your tools -- because there is enough
differences between xarray, dask, rasterio, and numpy that non of my
intuition on how they work together actually holds.
One other problem I stumbled on to is the ordering of the data -- is
this (bands, height, width) or (height, width, bands) or (height, bands,
width)...  I think it is rasterio that has a helper function which
reorders the bands from the stacked 2D images to 3D image ordering.
Thinking about this a little I realized that I rarely have control over
how the data come to me, and this would suggest that a general
reordering/mapping method may be in order.
On Apr 25 2018 8:27 AM, Jean-Luc Stevens wrote:

The original version of
landsat_spectral_clustering.ipynb
used redding.tif which was obtained originally from
planet.com.
As I wasn't sure whether this image could be made available, I
updated the notebook to use a landsat example taken from a
datashader example.
@ebo then informed me by e-mail that this image is not really
suitable as it only has two bands. We would like some example images
that can be made public that also have a decent number of bands. This
is important as we will then be able to compute the various indices
that we might then want to learn on.
One suggestion by @ebo was to use these images of a disappearing
lake
although I only see a link to download them in JPG format?
Lastly, a [new
notebook](https://github.com/pyviz-topics/EarthML/commit/1545c61b42518fc37ff1284cc2ef8532d1405b49)
has been committed referencing 'Midwest_Mosaic.tif' which I don't
think we have discussed yet. Is this something we could slice down
and
add to the repo as an example?

On Apr 25 2018 8:33 AM, James A. Bednar wrote:

I'm not sure what you mean about this image having only two bands; it
has 11 bands if you count panchromatic:
http://datashader.org/topics/landsat.html

that one might, but the image
https://github.com/pyviz-topics/EarthML/blob/master/examples/landsat-sample.tiff
added to pyviz-topics/EarthML repository only has two:
=================
gdalinfo ~/Downloads/landsat-sample.tiff
Driver: GTiff/GeoTIFF
Files: /home/jldavid3/Downloads/landsat-sample.tiff
Size is 2500, 2500
Coordinate System is `'
Metadata:
TIFFTAG_DOCUMENTNAME=/Users/jstevens/Desktop/development/EarthML/examples/cropped.tiff
TIFFTAG_IMAGEDESCRIPTION=Created with GIMP
TIFFTAG_RESOLUTIONUNIT=2 (pixels/inch)
TIFFTAG_XRESOLUTION=72
TIFFTAG_YRESOLUTION=72
Image Structure Metadata:
COMPRESSION=LZW
INTERLEAVE=PIXEL
Corner Coordinates:
Upper Left  (    0.0,    0.0)
Lower Left  (    0.0, 2500.0)
Upper Right ( 2500.0,    0.0)
Lower Right ( 2500.0, 2500.0)
Center      ( 1250.0, 1250.0)
Band 1 Block=2500x64 Type=Byte, ColorInterp=Gray
Mask Flags: PER_DATASET ALPHA
Band 2 Block=2500x64 Type=Byte, ColorInterp=Alpha

In case it helps, the original files from the current example are available from: https://github.com/bokeh/datashader/blob/master/examples/datasets.yml#L36
and shouldn't have any of the problems from the Gimp-processed version.  But if there are better examples that can be used to tell more stories, then bring them on! :-)

On Apr 25 2018 9:22 AM, Jean-Luc Stevens wrote:

I agree that if we can tell a compelling story with the data we have
then we should.

I'm working on that...  Not only was the study highlighted by NASA's
Earth Observatory
https://earthobservatory.nasa.gov/IOTD/view.php?id=91921, the study
was also published in Nature Geosciences
https://www.nature.com/articles/ngeo3052.  That is a huge deal.
What I am proposing is to replace the original example image with these
two, unless there is a compelling reason or similar compelling story
about that image.  There may be and I had just missed it...
Oh, another interesting thing is that we might be able to get access to
the salinity data to replicate the graphs
https://www.nature.com/articles/ngeo3052/figures/2 in the Nature
paper.

Sounds good!  No, there wasn't a compelling story about the original image, though there was intended to be. :-)  It was originally chosen to try to show the differences between the actual coastline of Southern Louisiana around New Orleans and what standard maps show as the outline of Louisiana, but the wrong image was selected, and so it ended up being the wrong bit of coastline, not telling that story at all.  So there's no problem replacing it with something that has a better story.

One other problem I stumbled on to is the ordering of the data -- is
this (bands, height, width) or (height, width, bands) or (height, bands,
width)...  I think it is rasterio that has a helper function which
reorders the bands from the stacked 2D images to 3D image ordering.
Thinking about this a little I realized that I rarely have control over
how the data come to me, and this would suggest that a general
reordering/mapping method may be in order.

Can I ask you to expand on this a bit further?  I suspect that Numpy and XArray both have mechanisms to help you here.  In particular you might want to look into parts of their respective APIs that include stack and transpose functions depending on what you want.

On Apr 25 2018 9:35 AM, James A. Bednar wrote:

Sounds good!  No, there wasn't a compelling story about the original
image, though there was intended to be. :-)  It was originally chosen
to try to show the differences between the actual coastline of
Southern Louisiana around New Orleans and what standard maps show as
the outline of Louisiana, but the wrong image was selected, and so it
ended up being the wrong bit of coastline, not telling that story at
all.  So there's no problem replacing it with something that has a
better story.

I would have to check on some things, but my wife is a senior research
ecologist with the USGS, and has permanently monitored sites in the
cypress swamps.  The water extraction in Texas is causing the cypress
swamps to die in the area around Beaumont TX.  If we had an example tjat
focused on that area I may be able to get you some really compelling
stories (I hesitate to call them good stories).  I would have to check
if that would cause a conflict of interest, etc.  She also has sites in
jean Lafitte National Park, which is around where you were talking
about, and we can engage quite a number of folks there as well.

On Apr 25 2018 9:49 AM, Matthew Rocklin wrote:

One other problem I stumbled on to is the ordering of the data -- is
this (bands, height, width) or (height, width, bands) or (height,
bands,
width)...  I think it is rasterio that has a helper function which
reorders the bands from the stacked 2D images to 3D image ordering.
Thinking about this a little I realized that I rarely have control
over
how the data come to me, and this would suggest that a general
reordering/mapping method may be in order.

Can I ask you to expand on this a bit further?  I suspect that Numpy
and XArray both have mechanisms to help you here.  In particular you
might want to look into parts of their respective APIs that include
stack and transpose functions depending on what you want.

In the last example I sent to Jean-Luc I used transpose and stack.  I
am not sure I did it right, but yes I am marginally aware of the base
functionality.
What I had meant by the mapping function is, it is intuitive what
(band, y, x) means, as well as (x, y, z) in 3D data.  Either documenting
a couple of examples using stack and transpose to show how it is done,
or developing a helper function that does an intuitive mapping, would be
useful I think.  There is a president with rasterio's reshape_as_image
which will take an image stack (3, 718, 791) and remap it to (718, 791,
3) or in my example above (orient={'bands':'z'}) or some such. (see
https://github.com/mapbox/rasterio/blob/master/docs/topics/image_processing.rst)

BTW, the author of the Nature Geosciences article sent me the data to replicate several of the published graphs.  I have a number of other things on my plate at the moment, but if we extend the walker lake to either include the Great Salt Lake, or as a second notebook.  We should be able to replicate the work in https://www.fs.fed.us/rm/pubs_journals/2017/rmrs_2017_wurtsbaugh_w001.pdf.  Also, I have permission to publicly release the data with the agreement to properly cite and credit the work.  I would also want to have them review this before formally releasing it if possible to make sure I/we do not make a mistake that would offend.

A recently announced source of freely available hi-res imagery:
https://twitter.com/planetlabs/status/1308768058098450437


Is there an example to send data to RN in pure html/js and not generated?

Looking to see this example as well.


Fix fix bug that the case sensibility of column name may impact join method

Proposed changes
Issue Number: close #17876
Problem summary
Describe your changes.
Checklist(Required)

[ ] Does it affect the original behavior
[ ] Has unit tests been added
[ ] Has document been added or modified
[ ] Does it need to update dependencies
[ ] Is this PR support rollback (If NO, please explain WHY)

Further comments
If this is a relatively large or complex change, kick off the discussion at<EMAIL_ADDRESS>by explaining why you chose the solution you did and what alternatives you considered, etc...

Could you please add a regression test case for this?

added

run buildall


config var uniformity

The inconsistency between these names is stumbling block for learners:

ZITI_CTRL_ADVERTISED_ADDRESS
ZITI_CTRL_ADVERTISED_PORT
ZITI_ROUTER_ADVERTISED_ADDRESS
ZITI_ROUTER_PORT

A minimal solution would be to introduce ZITI_ROUTER_ADVERTISED_ADDRESS as a replacement for ZITI_ROUTER_PORT while continuing to allow ZITI_ROUTER_PORT to function as an alias for the new var.
My personal preference is less minimal and aims for slightly improved aesthetics by shortening the other three, which are still unambiguous now that we're prescribing a single address and port as a best practice (thanks, ALPN):

ZITI_CTRL_ADDRESS
ZITI_CTRL_PORT
ZITI_ROUTER_ADDRESS
ZITI_ROUTER_PORT

The BrowZer bootstrapper introduces a pair of variables we could adopt here to solve this:

ZITI_CONTROLLER_HOST
ZITI_CONTROLLER_PORT


[mac] Random crash on M1 macs on VerifyAccess

Describe the bug
The application randomly crashes on an M1 mac machine in the middle of the session. The reason is the main thread check.
System.InvalidOperationException: Call from invalid thread
I saw several discussions about the main thread check that is different in the mac implementation. I am not sure though why this basic feature would return suddenly that the main thread is not the main thread.
To Reproduce
In our case, it is opening a second window and then clicking on the system dock panel.
Desktop:

OS: any Mac OS version. So far only M1 machines crashed (tested on at least 5 different machines).
Avalonia version: 0.10.18

Additional context
This is the stack trace below (I would say definitely on the main thread). It was running for a while so it had checked for this a thousand times before.
https://github.com/AvaloniaUI/Avalonia/blob/master/native/Avalonia.Native/src/OSX/platformthreading.mm#L104
   at Avalonia.Threading.Dispatcher.VerifyAccess() in /_/src/Avalonia.Base/Threading/Dispatcher.cs:line 48
   at Avalonia.AvaloniaObject.GetValue[T](StyledPropertyBase`1 property) in /_/src/Avalonia.Base/AvaloniaObject.cs:line 249
   at Avalonia.Input.FocusManager.GetFocusScopeAncestors(IInputElement control)+MoveNext() in /_/src/Avalonia.Input/FocusManager.cs:line 203
   at System.Linq.Enumerable.TryGetFirst[TSource](IEnumerable`1 source, Boolean& found)
   at Avalonia.Input.FocusManager.Focus(IInputElement control, NavigationMethod method, KeyModifiers keyModifiers) in /_/src/Avalonia.Input/FocusManager.cs:line 64
   at Avalonia.Input.FocusManager.SetFocusScope(IFocusScope scope) in /_/src/Avalonia.Input/FocusManager.cs:line 162
   at Avalonia.Controls.WindowBase.HandleActivated() in /_/src/Avalonia.Controls/WindowBase.cs:line 294
   at Avalonia.Native.WindowBaseImpl.WindowBaseEvents.Avalonia.Native.Interop.IAvnWindowBaseEvents.Activated() in /_/src/Avalonia.Native/WindowImplBase.cs:line 188
   at Avalonia.Native.Interop.Impl.__MicroComIAvnWindowBaseEventsVTable.Activated(Void* this) in /_/src/Avalonia.Native/Interop.Generated.cs:line 3689
   --- End of stack trace from previous location ---
   at Avalonia.Native.PlatformThreadingInterface.RunLoop(CancellationToken cancellationToken) in /_/src/Avalonia.Native/PlatformThreadingInterface.cs:line 90
   at Avalonia.Threading.Dispatcher.MainLoop(CancellationToken cancellationToken) in /_/src/Avalonia.Base/Threading/Dispatcher.cs:line 65
   at Avalonia.Controls.ApplicationLifetimes.ClassicDesktopStyleApplicationLifetime.Start(String[] args) in /_/src/Avalonia.Controls/ApplicationLifetimes/ClassicDesktopStyleApplicationLifetime.cs:line 120
   at Avalonia.ClassicDesktopStyleApplicationLifetimeExtensions.StartWithClassicDesktopLifetime[T](T builder, String[] args, ShutdownMode shutdownMode) in /_/src/Avalonia.Controls/ApplicationLifetimes/ClassicDesktopStyleApplicationLifetime.cs:line 209
   at MyApp.Main(String[] args) in /Users/administrator/buildagent/buildAgent/work/ded0ac7a4578263e/MyApp/Program.cs:line 43

I am not exactly sure what happened here. I managed to catch this with debug and realized that it was indeed running on a non-UI thread. I guess thats because the main loop on mac is implemented natively so it is not clear from the managed stack trace if it runs on the main thread or not.
The check in the VerifyAccess method is correct just the stack trace is a bit hard to read. I am closing this issue.


less support

support vstyle:less like vstyle:scss.
Although sass is more popular then less, but still many top project using less, like ant design vue.

Done 👌🏻
Feel free to let me know if you find anything else missing, or feel like something could be improved.

@mat2ja
seems missing here:

Thank you, I missed that one. Added in v0.5.5


Add eventbrite question to WRF

Hi @maneesha, we would like to add this question to the workshop request form.

What are your plans for managing the registration of your attendees?

We have access to or have our own system to collect registrations.
We would like The Carpentries support with registration via Eventbrite and will be charging a fee.
We would like The Carpentries support with registration via Eventbrite and will NOT be charging a fee.
Not sure yet.

@sheraaronhurt - Can you share where on the form we should add this question? and Would you like this on the workshop inquiry form as well?

Thanks @Talishask
Please add after the question "Is this workshop open to the public?".
Yes, please add to the workshop inquiry form in the same place.

@elichad  @pbanaszkiewicz  is there any other information you need to implement this request?

@maneesha no, you can add it to the milestone backlog.


Rebuild ics23 proofs with ts-proto for cosmjs compatibility

I think it is just about T | null | undefined vs T | undefined.
This is the compile error I got trying it.
Type 'IProofSpec' is not assignable to type '{ leafSpec?: { hash?: HashOp | undefined; prehashKey?: HashOp | undefined; prehashValue?: HashOp | undefined; length?: LengthOp | undefined; prefix?: Uint8Array | undefined; } | undefined; innerSpec?: { ...; } | undefined; maxDepth?: number | undefined; minDepth?: number | undefined; }'.
  Types of property 'leafSpec' are incompatible.
    Type 'ILeafOp | null | undefined' is not assignable to type '{ hash?: HashOp | undefined; prehashKey?: HashOp | undefined; prehashValue?: HashOp | undefined; length?: LengthOp | undefined; prefix?: Uint8Array | undefined; } | undefined'.
      Type 'null' is not assignable to type '{ hash?: HashOp | undefined; prehashKey?: HashOp | undefined; prehashValue?: HashOp | undefined; length?: LengthOp | undefined; prefix?: Uint8Array | undefined; } | undefined'.

176     proofSpecs: [iavlSpec, tendermintSpec],

I will close the issue, since we removed the Typescript implementation.


Relative uses …

… make it impossible to get a dependency overview at the top of the file where all use statements are. Additionally refactoring via IDEs is hindered as well. Consider to use only fully qualified uses and place all of them at the top of the file where they belong.

I'll update the code accordingly, I have no issue againts that


Add support for Apple M1 Machines

Description
The Host and CPU are incorrect for Apple M1 machines. I think that the CPU should be renamed to "Apple M1", and the Host should be "Mac mini m1" or "Mac mini late 2020".
Neofetch version
Neofetch 7.1.0 running on macOS 11.0.1 Big Sur
Screenshot

Config file
I've left the config file as default.
Verbose log
https://pastebin.com/gVyrAgvU

Run neofetch -vv 2> neofetchlog
Upload the contents of neofetchlog to pastebin, gist or equivalent.

The cpu is correct as Minecraft displays the same type

Minecraft and neofetch are running in Rosetta 2, Apple's translation layer. Apple refers to the whole SOC as M1. I could be wrong about this, but I'm fairly certain that Virtual CPU is symptom of Rosetta. I still think that the CPU should be called M1.

yeah there is not much you can do about it than

Isn't there an arm version of bash you can run?

I switched my terminal to use Rosetta 2, installed neofetch via homebrew, did a brew update/upgrade, deactivated and reactivated Rosetta 2 translation for the terminal and now my neofetch is correctly showing macOS being the arm64 build.

Not sure if this helps or is reproducible, but I wanted to mention it ...

I installed using native M1 terminal and homebrew

I installed using native M1 terminal and homebrew

hey all, I was able to replicate the the correct info  seen in the screenshots above. going to close the issue.

hey all, I was able to replicate the the correct info  seen in the screenshots above. going to close the issue.


Add support for Linux s390x

This patch adds support for Linux s390x to gperftools, and resolves issue #761.
libunwind has not yet been ported to the platform, so by default configure enables glibc backtrace. I may add a back chain walker (stacktrace_s390x-inl.h) at a later date, but it would only be useful with a configure option like --enable-s390x-backchain (similar to --enable-frame-pointers), since GCC does not store the back chain on the stack unless the -mbackchain option is used.
A complete port of linux_syscall_support.h is available.
This patch applies cleanly without @alk's wip-emergency-malloc-explicit branch, so I feel it is time for a pull request.
s390 support is intentionally omitted, as the 31-bit variant is generally being deprecated.

Thanks a lot! Applied.


Docker Latest Tag

Hi,
The instructions here on docker hub don't work because there is no "latest" tag:
https://hub.docker.com/r/apereo/cas/
docker pull apereo/cas
Please push the latest version tagged as "latest" and make it part of the docker build and push process.

Note that today, Docker Hub is unable to convert an existing repository to use Automated Builds:
https://github.com/docker/hub-feedback/issues/794
Seems like we'd have to delete the existing repo or start a brand new one for the automated build, neither of which is going to happen. We can proceed to do this manually for now until that ability becomes available.

This is now done.


n_peterson causes bus error

The CMurphi example ex/mux/n_peterson.m results in a checker that causes a bus error. Have not investigated further.

At least one problem here appears to be the simple fact that we check invariants (and assumptions) before canonicalisation. This causes a problem because the print_transition logic always canonicalises its candidate states. In other words, if a state fails an invariant it will be reported to the error logic pre-canonicalisation, then will be passed to print_transition that fails to find a (canonicalised) path to it, then our "unreachable" annotations at the bottom of this function cause it to lack a proper epilogue, so execution falls off the end into unrelated code and causes chaos.
Unfortunately even after applying a fix for this, we still trigger a bus error.


Add HyperlinkButton Control

What does the pull request do?
Add HyperlinkButton control
What is the current behavior?
What is the updated/expected behavior with this PR?

How was the solution implemented (if it's not obvious)?
HyperlinkButton inherits from Button with three additional properties:

DirectProperty NavigateUri: The Uri to navigate to upon click.
StyledProperty IsVisited: Indicate whether this Uri is already visited.
StyledProperty IsVisitedSetOnClick: True means IsVisited automatically set to true upon click. False means IsVisited always take assigned value.

Checklist

[x] Added unit tests (if possible)?
[x] Added XML documentation to any related classes?
[ ] Consider submitting a PR to https://github.com/AvaloniaUI/Documentation with user documentation

Breaking changes

Obsoletions / Deprecations

Fixed issues

Fixes #7640
Comments
Notice that I added unit test and tested locally on Windows and all passed. But I commented them out to avoid calling Process.Start in CI/CD.

I am not sure if we should include "Process.Open" in the default control. Even more I am not sure if it works crossplat. it should be configurable. Probably Command can by default has a command to run Process.Open and CommandParameter by default can have value of the NavigateUri.
Also, why is IsVisited mutable? It can be a readonly direct property. Upd, I see there is example of usage, when IsVisited set in xaml. Still not sure if it needs to be "styled", but fine by me to be mutable.

It wont work cross platform: here is a cross platform implementation, that will work!
you need to implement "shell execution" and "openbrowserasync".
these probably should end up in some kind of platform api for avalonia.
https://github.com/zkSNACKs/WalletWasabi/blob/v<IP_ADDRESS>/WalletWasabi/Helpers/IoHelpers.cs#L144-L162

Updated to fix the formatting issue. Will check further on cross platform implementation.

Is this a good reference?
https://github.com/dotnet/maui/tree/main/src/Essentials/src/Launcher

@rabbitism yes. iOS and Android implementation can use same APIs as there, everything else can be reused from code @danwalmsley attached (as it can be reused across main desktop platforms).

So, before I implement anything, can we have a discussion of whether we should have a Launcher like feature in Avalonia? It might be similar to IClipboard. I think it will benefit not only this control.

@rabbitism we can have API like this (similar to Essentials):
	public interface ILauncher
	{
		Task<bool> CanOpenAsync(Uri uri);
		Task<bool> OpenAsync(Uri uri);
		Task<bool> OpenAsync(IStorageFile file);
	}

Which can be accessible by AvaloniaLocator.GetService<ILauncher>() (until we have better API for the services)
Not sure if we need PresentationSourceBounds like MAUI has, not familiar with that.

Hyperlinks are not necessarily used to immediately open a URL in an external process.
In my WPF application we have various cases where clicking a hyperlink executes an event handler. Often the event handler does eventually launch a web browser, but not before some pre-processing steps are executed (e.g. authentication token requests).  The URL is not known to the hyperlink.
There are other cases where a hyperlink just takes the user to a different area of the current application, and in this case the hyperlink again has no URL.
Even when clicking a hyperlink does immediately open a URL, we have an process launching interface of our own which does this, and would not want to use a Button which bypasses it.
If built-in process launching is to be added to Avalonia, I would recommend that the button raise a RoutedEvent that has a built-in class handler for TopLevel controls. This gives users the option of intercepting the event and handling it themselves. The event should be raised regardless of whether a URL is defined on the hyperlink.

@tomenscape This is fully configurable to do what you want. If you don't specify a NavigateUrl nothing will happen on click. You can also disable automatic link color change with IsVisitedSetOnClick=False.

Close for now as this is really outdated codebase, and I need to reevaluate the effort to implement ILauncher.


Proposed improvements

You probably also want to have a look at the output of pylint. It reports stuff like
String statement has no effect (pointless-string-statement)
Dangerous default value dict() (builtins.dict) as argument (dangerous-default-value)
Dangerous default value [] as argument (dangerous-default-value)

@bdrung Thanks!


Facebook photoURL access token

[REQUIRED] Step 1: Describe your environment

Xcode version: 12.0.1
Firebase SDK version: 6.34.0
Firebase Component: Auth
Component version: 6.0
Installation method: Carthage

[REQUIRED] Step 2: Describe the problem
Steps to reproduce:

Authenticate via Facebook with FBSDKLoginKit
After getting the access token, log in to Firebase: FacebookAuthProvider.credential(withAccessToken: facebookAccessToken)
Obtain photoURL from providerData after successfully logging in

The photoURL is then in the format of  https://graph.facebook.com/{user_id}/picture but, according to the Facebook API documentation, it should contain access token - otherwise we are not able to get the profile's profile picture. I believe this is something that should be fixed on the Firebase side - or are we expected to handle the access token manually?

Hi @fortmarek -- Firebase does not hold on to the IDP access token, so you will have to handle the access token manually.

Ahh, OK, that makes sense - thanks for the response @rosalyntan!


Feature: Enable uncleaned exit

Currently, when a process running kazoo exists, due to an unhandled exception for example, kazoo tries to do a clean exit.
The clean exit happens because both handlers, gevent and threaded one, register their respective stop functions to atexit. In both cases the handler joins all still-running worker threads.
Now if one of these worker threads has been doing something that just blocks indefinitely (say, read a socket that no-one ever writes to), the process will just hang upon exit.
I'm proposing that we should have on option to pass either a timeout to the disconnect/close method that would then be passed to the thread joins or a flag that skips the joining altogether.
How does these sound? I'm more than happy to cook a patch for these

@nailor How do you work around?

@irachex We just made sure we don't block the kazoo, so fired callbacks and others in separate threads returning execution back to kazoo almost immediately


Editing a .bundle file

Hello
I am not an expert in this, I want to replace a text in a game that is in a prefab file in a .bundle (CAB).

I used UABEA to unzip a container, then dumped, edited and imported a monobehaviour file back. I next compressed the modified bundle and unfortunately the game freezes at the very beginning. The game behaves in the same way as if an entire .bundle file is missing.
I have tried decompressing and compressing the bundle without any changes and that does not cause problem.
I also made a change in a hex editor, a very small one, because I only changed an uppercase to lowercase in the desired text and also the game can't turn on properly.

This is most likely an addressables crc issue. See the readme for info on this.

This is most likely an addressables crc issue. See the readme for info on this.

It worked. Thank you very much for the hint.


Start all forwards in a cluster at the same time

We are using this application a lot at my job, and we have 35+ services/resources per environment, replicated into 4 environments. We have a structure when we forward where we have services every 5 "years" from 1900 and upwards.
We would like to be able to start all forwards in a cluster with a single on/off toggle
When debugging and testing something like a proxy-api or an orchestration-service, there is a need to forward to most if not all microservices, so it would be very helpful and time-saving to be to do it in one click
(this is one of multiple feature-requests I'm posting; sorry for the spam, but lumping them all together is not a good way to make User Stories)

This duplicates https://github.com/pixel-point/kube-forwarder/issues/48 doesn't it?

@dobesv ah, yes you are correct


[Coverity CID :203426]Memory - corruptions in /subsys/net/lib/lwm2m/ipso_buzzer.c

Static code scan issues seen in File: /subsys/net/lib/lwm2m/ipso_buzzer.c
Category: Memory - corruptions
Function: buzzer_create
Component: Networking
CID: 203426
Please fix or provide comments to square it off in coverity in the link: https://scan9.coverity.com/reports.htm#v32951/p12996

False positive


problem with running multiple tests

I was running two tests roughly in the following manner (I will illustrate using a notebook example):
%%writefile prompts/prompt1.txt
{{document}}
Question: {{question}}

%%writefile promptfooconfig1yaml
prompts:
  - prompts/prompt1.txt
providers:
  - id: openai:gpt-3.5-turbo
    config:
      temperature: 0
tests:
  - tests/test1.yaml
outputPath: output/output1.csv

And the second one similarly:
%%writefile prompts/prompt2.txt
Question: {{question}}
Document: {{document}}

%%writefile promptfooconfig2.yaml
prompts:
  - prompts/prompt2.txt
providers:
  - id: openai:gpt-3.5-turbo
    config:
      temperature: 0
tests:
  - tests/test2.yaml
outputPath: output/output2.csv

These were two completely different tests with different logic. However, I would like to implement this solution in a way that they run cyclically. To achieve this, I would like to somehow combine them so that they work and can be executed with a single command, like npx promptfoo view.

I think https://github.com/promptfoo/promptfoo/issues/170 is related to this, sort of similar concepts

This is not exactly what I have in mind. Here's how it looks: I have two separate tests - two separate test files with different assertions and two separate prompts. So, two completely separate tests with different assertions, prompts, and so on. I want to deploy this, and I would like these two tests to be accessible under a single link - to be executed with a single command like "npx promptfoo view".

Maybe you should manually combine the test results

发件人: tttbone8122 @.>
发送时间: Thursday, September 28, 2023 2:15:57 PM
收件人: promptfoo/promptfoo @.>
抄送: Subscribed @.***>
主题: Re: [promptfoo/promptfoo] problem with running multiple tests (Issue #203)
This is not exactly what I have in mind. Here's how it looks: I have two separate tests - two separate test files with different assertions and two separate prompts. So, two completely separate tests with different assertions, prompts, and so on. I want to deploy this, and I would like these two tests to be accessible under a single link - to be executed with a single command like "npx promptfoo view".
―
Reply to this email directly, view it on GitHubhttps://github.com/promptfoo/promptfoo/issues/203#issuecomment-1738532574, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AANFQPY5M6LFPFTQZDZLQ2TX4UIZ3ANCNFSM6AAAAAA5JGGKBU.
You are receiving this because you are subscribed to this thread.Message ID: @.***>


Build fails.

I saw https://github.com/paulevsGitch/BetterEnd/commit/38eaf8be67f99fd6d8206dce76b979cf4464daaf and wanted to try it but building from the source fails with /usr/bin/env: ‘sh\r’: No such file or directory. Tested on the local machine and Github Actions (to make sure it's not my fault) (https://github.com/RDKRACZ/BetterEnd/runs/2543774491?check_suite_focus=true).

As this issue is not directly on BE side I will close this


[tosa] legalize tfl.fully_connected to tosa.conv2d

This patch changes legalization of tfl.fully_connected to tosa.conv2d instead of tosa.fully_connected

This patch changes legalization of tfl.fully_connected to tosa.conv2d instead of tosa.fully_connected

Can you explain why this is preferred over matmul? From a computational standpoint a matmul and bias add seem more correct.

This patch changes legalization of tfl.fully_connected to tosa.conv2d instead of tosa.fully_connected

Can you explain why this is preferred over matmul? From a computational standpoint a matmul and bias add seem more correct.

Matmul + add would have following shortcomings:

To use MATMUL we would need to transpose the second matrix
MATMUL does not support asymmetric types (like int16 x int8) allowed by FULLY_CONNECTED
Bias addition for 48 bit accumulator (eg 16x8 operation) would require a 48-bit ADD which would be a new operation

Hi @rdzhabarov Can you please review this PR ? Thank you!

Hi @Tai78641 Can you please resolve conflicts? Thank you!

This PR is stale because it has been open for 14 days with no activity. It will be closed if no further activity occurs. Thank you.

resolved conflicts

@NatashaKnk would you help review this?

The code itself looks good, but I'm a bit concerned about this approach. From a clarity standpoint this seems confusing -- The first point of conversion between tfl and tosa should probably be as close of a 1:1 mapping we can get. Happy to review it as a later-on pass though.

the motivation for this PR is that we want to deprecate tosa.fully_connected operator.
before we can do that, we wanted to remove its use in tf/tfl loweing to tosa, so that we wont break tf/tfl
when we removed tosa.fully_connected as an op. Therefore this PR.

I think if fully_connected is being depricated, it's reasonable to expect that matmul would be able to pick up everything it was able to do before deprecation. It can later be converted into conv2d for optimization purposes, but mapping ftl directly to conv2d seems a bit hacky and confusing to me.

The reasons we did not lower to Matmul (followed by an Add), are:

To use MATMUL we would need to transpose the second matrix
MATMUL does not support asymmetric types (like int16 x int8) allowed by FULLY_CONNECTED
Bias addition for 48 bit accumulator (eg 16x8 operation) would require a 48-bit ADD which would be a new TOSA operation

thats why we chose the implementation in this PR

I understand why this is the best approach with the existing set-up, I'm just not sure that looking at this PR in isolation is the best way to go about this. If there is no way to support existing fully_connected behavior through an op that is a reasonable default mapping of that op (which I don't consider Conv2D to be), the reasons for/approach to deprecation should be looked at.

Hi @Tai78641 Can you please resolve conflicts? Thank you!

Hi @Tai78641 Can you please resolve conflicts? Thank you!

done

I understand why this is the best approach with the existing set-up, I'm just not sure that looking at this PR in isolation is the best way to go about this. If there is no way to support existing fully_connected behavior through an op that is a reasonable default mapping of that op (which I don't consider Conv2D to be), the reasons for/approach to deprecation should be looked at.

One of the reasons that tosa.conv2d is preferable is that fully_connected may include a bias addition. In the integer domain this potentially requires a tosa.add with a 48-bit operand, which is unsupported.
The conv2d op conveniently lets us encode bias addition as an operand. Matmul typically does not have a bias addition construct. Since fully_connected is a degenerate form of conv2d within this view, it makes sense to deprecate it and replace it with a tosa.conv2d.
In other circumstances fully_connected could indeed map to tosa.matmul (we're adding a new parameter to tosa.matmul to define accumulator width), but right now tosa.fully_connected is intended to be expressed as a conv2d instead. It's possible to implement a tosa-tosa transform beneath it that decomposes the conv2d to a matmul.


[FLINK-23272][web] Add custom netty HTTP request inbound/outbound handlers

What is the purpose of the change
At the moment there is no possibility to influence netty HTTP inbound/outbound requests. This could be useful from many perspectives. A good example (amongst others) is authentication/authorization. Here are the exact examples:

With an outbound custom netty handler one can modify the HTTP request by adding authentication information.
With an inbound custom netty handler one can do authentication/authorization.

In this PR I've added 2 generic APIs in order to handle inbound and outbound HTTP requests.
Please see FLIP-181 for further details.
Brief change log

Added. InboundChannelHandlerFactory
Added. OutboundChannelHandlerFactory
TestRestServerEndpoint and RestClient are now getting Flink Configuration instances.

Verifying this change

Existing automated tests
There are 2 not yet published external repositories with automated tests using the newly added APIs:

Basic authentication
Kerberos authentication

Does this pull request potentially affect one of the following parts:

Dependencies (does it add or upgrade a dependency): no
The public API, i.e., is any changed class annotated with @Public(Evolving): yes, introduced 2 @Experimental APIs
The serializers: no
The runtime per-record code paths (performance sensitive): no
Anything that affects deployment or recovery: JobManager (and its components), Checkpointing, Kubernetes/Yarn, ZooKeeper: no
The S3 file system connector: no

Documentation

Does this pull request introduce a new feature? yes
If yes, how is the feature documented? JavaDocs + API usage examples (intended to be published when APIs are in place)

As a start resolved the conflict.

The tests are not yet testing the netty chain so discovering how is it possible to do that w/o horror complex code...

@gyfora added proper tests which are testing the loaded factories behavior but this has increased the PR size significantly. I don't think I can come up w/ more simple tests. If somebody has any idea please share.

@flinkbot run azure

@flinkbot approve all

SQLClientSchemaRegistryITCase failed but it's passing in my local environment so tent to think it's flaky.

@flinkbot run azure

BlockingShuffleITCase failed which is another flaky test. Filing jira-s to highlight the flakyness of these tests.

Filed FLINK-23665 and FLINK-23666.

@gyfora it would be nice to update the JIRA tickets when merging a PR. Otherwise it is hard to find the paper trail when looking things up. Concretely, this PR seems to reference FLINK-21108 as in the commit but the PR title states that it is FLINK-23272. Moreover, FLINK-21108 has been closed as a duplicate more than a month ago.

Yea, we updated the ticket but unfortunately wrong ticket was referenced in the commit. We were so preoccupied with the CI problems that we did not notice this. :(

Np. I think it should be fine if you update the respective Jira tickets accordingly. Thanks!


Implement message queued/dequeued events

Happy new year to you all.
I'm not sure if this has any weight to it?
But I think 2 new controller events could provide some insurance for those with battery operated devices.
Whenever I am sending to a battery operated node or something that doesn't need to be a wake at that moment - whilst there is no reason to believe that they won't be delivered on their next wake up, I think it could add some value to some how flag that the message has been queued i.e a "message queued" event that they can subscribe to and subsequently a  "message dequeued" event.
The arguments for these events could be the id of the target node, the command class, and the time of the original message.
I think it removes the "is that going to be sent when they wake up" kind of doubt.
it could allow front end users of the lib to list pending messages in their apps.

Just to be sure I understand the use case correctly and clarify potential confusion:

whilst there is no reason to believe that they won't be delivered on their next wake up

This is actually not guaranteed. Depending on the queue length and the responsiveness of the device/network, it could be that a queued message takes 2 or more wakeups to be delivered.

I think it could add some value to some how flag that the message has been queued

Calling node.setValue, any CC API or sendMessage/sendCommand will queue at least one message. I don't see how we can add any value here.

it could allow front end users of the lib to list pending messages in their apps.

That could be interesting however. I'm leaning towards adding this request to https://github.com/zwave-js/node-zwave-js/issues/985 (specifically the point "queue size")

Just to be sure I understand the use case correctly and clarify potential confusion:

whilst there is no reason to believe that they won't be delivered on their next wake up

This is actually not guaranteed. Depending on the queue length and the responsiveness of the device/network, it could be that a queued message takes 2 or more wakeups to be delivered.

I think it could add some value to some how flag that the message has been queued

Calling node.setValue, any CC API or sendMessage/sendCommand will queue at least one message. I don't see how we can add any value here.

it could allow front end users of the lib to list pending messages in their apps.

That could be interesting however. I'm leaning towards adding this request to https://github.com/zwave-js/node-zwave-js/issues/985 (specifically the point "queue size")

This is actually not guaranteed. Depending on the queue length and the responsiveness of the device/network, it could be that a queued message takes 2 or more wakeups to be delivered.

Got ya!

Calling node.setValue, any CC API or sendMessage/sendCommand will queue at least one message. I don't see how we can add any value here.

Being advised that a message has been queued due to a sleeping node, feels as if it could add some closure, on the users request, certainly for those who are new to the ZWave protocol, and looking to get into home automation.

That could be interesting however. I'm leaning towards adding this request to #985 (specifically the point "queue size")

if one could somehow get a sense of what the queue contains - that should provide all the benefits, and will allow for some UI's that present what is waiting to be done on the network.

This is actually not guaranteed. Depending on the queue length and the responsiveness of the device/network, it could be that a queued message takes 2 or more wakeups to be delivered.

Got ya!

Calling node.setValue, any CC API or sendMessage/sendCommand will queue at least one message. I don't see how we can add any value here.

Being advised that a message has been queued due to a sleeping node, feels as if it could add some closure, on the users request, certainly for those who are new to the ZWave protocol, and looking to get into home automation.

That could be interesting however. I'm leaning towards adding this request to #985 (specifically the point "queue size")

if one could somehow get a sense of what the queue contains - that should provide all the benefits, and will allow for some UI's that present what is waiting to be done on the network.

Transparency is a good thing and I would really like to give users tools to understand what is happening.
I've added your suggestion to the other issue, so I'm going to mark this one as a
Duplicate of #985

Transparency is a good thing and I would really like to give users tools to understand what is happening.
I've added your suggestion to the other issue, so I'm going to mark this one as a
Duplicate of #985

Duplicate of #985

Duplicate of #985

Bonus to having events per message, rather than just counters, is also being able to see how long it actually took to deliver that "turn on" message. Would help immensely in tracking down where delays are occurring, when lights appear slow.

Bonus to having events per message, rather than just counters, is also being able to see how long it actually took to deliver that "turn on" message. Would help immensely in tracking down where delays are occurring, when lights appear slow.

Further discussion in #985 please

Further discussion in #985 please


Test : Is the ComponentManager thread safe ?

Start some components in a dedicated thread, check if the ComponentManager is thread safe.

Tested with 500 started and stopped component, each in a dedicated thread.

Tested with 500 started and stopped component, each in a dedicated thread.


Don't interpret program unless --interp is passed

In run in util.rs, the original program is always interpreted. It should only be interpreted if the --interp flag is passed.

Fixed by #82


When no maxThreshold is passed still warnings are presented in the log

https://github.com/marcingrzejszczak/gradle-test-profiler/commit/350bf19442a15a56369348ab8e2e7a6dd8c3e105


cglm: 0.8.8 -> 0.8.9

Automatic update generated by nixpkgs-update tools. This update was made based on information from https://github.com/recp/cglm/releases.
meta.description for cglm is: Highly Optimized Graphics Math (glm) for C
meta.homepage for cglm is: https://github.com/recp/cglm
Updates performed

Version update

To inspect upstream changes

Release on GitHub

Compare changes on GitHub

Impact

Checks done (click to expand)

built on NixOS
The tests defined in passthru.tests, if any, passed
found 0.8.9 with grep in /nix/store/wza9gqncwdlmvr90id6yq9ki95krb2dg-cglm-0.8.9
found 0.8.9 in filename of file in /nix/store/wza9gqncwdlmvr90id6yq9ki95krb2dg-cglm-0.8.9

Rebuild report (if merged into master) (click to expand)

3 total rebuild path(s)

3 package rebuild(s)

First fifty rebuilds by attrpath
cglm
fsv
taisei

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/wza9gqncwdlmvr90id6yq9ki95krb2dg-cglm-0.8.9 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A cglm https://github.com/r-ryantm/nixpkgs/archive/6c23261af2baac77745ecb86255623a6033d34d2.tar.gz

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/wza9gqncwdlmvr90id6yq9ki95krb2dg-cglm-0.8.9
ls -la /nix/store/wza9gqncwdlmvr90id6yq9ki95krb2dg-cglm-0.8.9/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review run on x86_64-linux 1

3 packages built:

cglm
fsv
taisei

Maintainer pings
cc @IvarWithoutBones for testing.

@ofborg build fsv taisei


[FEA] A generic operator to automate inference execution with a MONAI Bundle

Is your feature request related to a problem? Please describe.
The MONAI Bundle includes the TorchScript model, network metadata, and the transform specifications. A generic operator needs to be developed in the App SDK to use a MONAI Bundle as input, and then execute the transforms and inference, without, or with very limited, additional application code.
Describe the solution you'd like
Detailed design is yet to be done, but these are the considerations:

Determine the best approach to feed the bundle to the operator at runtime
Parse and validate the bundle
Transform, for both pre and post, need to be instantiated based on spec
TorchScript model may already have been extracted out and packaged in the MONAI App Packaged, and loaded by the app execution engine at runtime. If not, load the model
Consider the scenario where the model is loaded on a remote server, e.g. Triton Inference Server, and the inference is to performed using KServe API
Inference using the model script loaded in local process, or KServer API on remote inference server

Describe alternatives you've considered
Existing approach requires the deploy app developer collect the pre and post transforms, and code them up in MONAI Transform Compose to be passed to the App SDK built-in inference operator. The loading of model is carried out in the built-in inference operator either through the app execution engine or directly load from file.
Additional context
Ideally this functionality should be ready when the MONAI Bundle is formally released in MONAI 0.9. Triton support may need to be delayed till later release, though the design should consider it.

@ericspod @vikashg thoughts on this?
Regarding 'Existing approach requires the deploy app developer collect the pre and post transforms, and code them up in MONAI Transform Compose to be passed to the App SDK built-in inference operator.' this sounds like some extra manual steps. Is there a way to include the pre and post transforms within the same operator, deploy app developer doesn't have to do anything?
Thinking out loud how to automate this even further.

Not sure if what you are asking is right, @dbericat. “Existing approach” means just that, the releases up to v0.2.1, and the main/v0.3, in which there is no way the built-in inference operator can have the magic to know what the pre and post transforms are required for a specific model. Recall that, the latest released monai is v0.8.1, which do NOT have the model bundle and a deploy dev user would only have the TorchScript and maybe a some ad hoc description of the transforms,  hence, a model specific operator has to derive from the base and instantiate the transforms into Compose. This has been the case since App SDK v0.1, and the tutorials based on this have been demo’ed/taught many times. Are you confusing this with what’s coming in App SDK v0.4?
This very issue we are commenting on, is for a built-in operator to automate inference pipeline creation, including the transforms, WITH the monai bundle coming in v0.9

I'm currently working on a prototype of some of these concepts. With the bundle you can provide the inference JSON file defining the objects for an inference program, this data includes the pre and post transform pipelines containing the transforms to read data from a source, configure it for the network, and then save the results. We don't want all of those components but we can inspect the transform sequences and filter them appropriately then use the bundle mechanism for instantiating objects to that automatically for us.

Not sure if what you are asking is right, @dbericat. “Existing approach” means just that, the releases up to v0.2.1, and the main/v0.3, in which there is no way the built-in inference operator can have the magic to know what the pre and post transforms are required for a specific model. Recall that, the latest released monai is v0.8.1, which do NOT have the model bundle and a deploy dev user would only have the TorchScript and maybe a some ad hoc description of the transforms, hence, a model specific operator has to derive from the base and instantiate the transforms into Compose. This has been the case since App SDK v0.1, and the tutorials based on this have been demo’ed/taught many times. Are you confusing this with what’s coming in App SDK v0.4?
This very issue we are commenting on, is for a built-in operator to automate inference pipeline creation, including the transforms, WITH the monai bundle coming in v0.9

I indeed got confused. I didn't connect the 'describe the alternatives you have considered' with 'this is how it works today as we didn't have any better alternative'. I thought that meant an alternative proposal for 0.4, based on the bundle coming in 0.9. I get it now, thanks!


Fix Rails 6.1 deprecation warning for ExternalSite.name validation

Passes new "case_sensitive" param to the uniqueness validator for ExternalSite.name.
This PR proposes setting case-sensitive: false because domains, at least, are not case sensitive, even if we write them "MycoPortal.org" we don't want to add a second "mycoportal.org"
Please let me know if this seems OK. It's our only deprecation warning(?!)

Sounds perfectly good to me.  Is it worth adding a real simple test to demonstrate that this actually works as advertised?

Coverage remained the same at 93.059% when pulling d2d0a0fc91409092b299ada0acf694c7ff724b10 on nimmo-external-site-fix-uniqueness-arg-deprecation-warning into 4fbee49e662c1d6d98911878d4b915be55bf985c on master.

Thanks, Nimmo.  Looks good to me.


Add mouse drag operations

Currently, asciimatics only supports mouse click events.  Assuming most *NIX terminals are like xterm, drag operations should be possible too.  Windows can definitely do them.
The idea would be to add more flags to the mouse event type to clarify the mouse button up/down and movement, allowing users to detect drag an drop operations.

This should also add support for moving Frames around the Screen when added.

Sorry, but no.  That's why this enhancement is still open.  The main issue here is finding the right settings for Linux terminals.  Once I have that in place, the code shouldn't be too hard.

I'm very glad to hear that you still working on it, and I'm looking forward to your solution because I need it in my recent project  while I have no idea how to solve it.

The main issue here is finding the right settings for Linux terminals.

Can you point me to what you're referring to?

@EricBalingit Turns out understanding Linux terminal mouse support is tricky...  Best I could find was https://invisible-island.net/xterm/ctlseqs/ctlseqs.html#h2-Mouse-Tracking

Hmm, I see.
Maybe this helps?  Not sure how inclusive it is, but seems to be on the right track.
https://github.com/prompt-toolkit/python-prompt-toolkit/blob/master/prompt_toolkit/output/vt100.py#L536
https://github.com/prompt-toolkit/python-prompt-toolkit/blob/master/prompt_toolkit/input/vt100_parser.py#L23
Still digging to find where the blob is normalized into a mouse event, so far I only see it being matched and sent along.

Not sure what to make of that code.  It looks like it relies on partial implementation of the xterm options on various different terminals and then xterm (and any code based off of it) will end up in extended SGR mode.  IIUC, none of those options actually enables mouse drag messages.

Ah, ok, so mouse move when button state is non-zero.  I suppose reducing/eliminating throughput is expected given the design/purpose of such systems.
I'm not used to tty, coming from DOS/Windows where a key has an ascii code and screens have memory addresses. :-)
I did notice that mouse move seems to thrash the refresh rate in windows.
Might be worth handling mouse events in a thread and only reporting when row, col changes, but I suppose that's not the expected behavior.

Btw, thanks for this lib!  Really neat idea, just had a need for more layout options at the moment.
Also by going through your win32 code, I was able to get mouse working with prompt-toolkit.
Funny the docs didn't mention anything about disabling quick edit mode, but that did the trick for me.

Thanks.  If there's a feature you need, feel free to raise a new issue.
Yeah - quickedit is a pain for any console app that cares about the mouse because it stops sending events to your app.
You shouldn't see any change to the refresh rate on events unless you allow it by specifying allow_int=True on the call to play().  This was the compromise for people that want a super responsive UI as opposed to the predictable refresh provided by default.  Typically that means I set it to False on animations and True for TUIs in the samples.

:D
I understand, but I was suggesting that you can have the best of both by threading the event loop ( if it's not already ), but wait for events and only report mouse events e.g. by saving last row,col and then passing along new events when they differ from the saved row, col.
I see this on mouse move, and it's related to drag.
And when you get drag working, could be drastic on large layouts - depending on how you schedule redraw. Might be worth considering.
The event rate for move ( in windows at least ) is not throttled and can be upwards of 1 millis between events.
That's why it can pull down the ui refresh.

but only for mouse move, not sure how button events interfere with that kind of process

button changes would be passed, but only move if the row, col changes
I know it's hackish, but it's best I can think of, unless you're willing to discard mouse moves until the scheduled refresh, and only report the most recent mouse position at that point.
But I can see the blinking cursor hesitates when I move the mouse, to me that spells bad news for layout refresh.

but maybe it's because I'm not fully aware of the looping procedure here :-)

Aaahh...  I see what you're getting at now.  Thanks.  Yes - there should definitely be throttling of the event processing.
Note that there is nothing giving the user feedback for any input until the UI refreshes, so this is a question of total delay from user interaction to seeing it appear on the screen.  The existing design handles this by allowing events to queue up between refreshes and then processing them in bulk before the screen refresh.  This means that there is already implicit throttling in the existing design: if your scene is complex to render and takes (say) 100ms, the fastest refresh you can get is 10 times a second.  However, it does allow you to run riot at the other end (where refresh cost trivial).
The way most systems handle this is using a frame rate cap.  Should be trivial to do that here.  Just enforce that limit on the delay if specified.  The existing input processing will then handle all the queued mouse events without any need for any peeking/summarizing.
However, it does show the weakness in the design of relying on frame count for animation.  This was a compromise when I first added the widget sub-package.  The whole system was originally pre-determined by the 20Hz refresh cycle, but people expect faster interaction when typing.  The slight difference between 10ms and 50ms is really noticeable to some people - hence the allow_int compromise.  Changing this isn't going to be backwards compatible, so should be something to add to the v2 API ideas - detaching animation sequencing from frame counters.  I'll add that to the list.
PS: I have deliberately avoided using separate threads in the design.  It does all the work required (processing all input and re-drawing the screen) in a single frame.  You then just need to schedule that frame refresh regularly, making it trivial to run inside any async framework.

Also worth noting, some older mouse wheels are analog, and can report a range of ticks, not a constant value per event.
It's up to the OS to decide how often to report wheel events, and what the tick value is, but I don't know how the tick value is handled by terminals.
So this too can thrash the layout in some cases.

in the interim would it be fair to assume something like an XTERM=1002 or XTERM=1003 and based on https://tldp.org/HOWTO/NCURSES-Programming-HOWTO/mouse.html send a new int value for BUTTON_1_RELEASED or BUTTON_3_RELEASED?
Then at the very least you'd be able to manually track when the button is pressed and released.  In my case, I am using asciimatics as the renderer but wrote my own update loop which i poll each frame and would easily be able to set an internal value to see if the released button has been signaled yet.
It sure would make my little custom terminal sprite-painter easier to work with having a click-drag fill capability :-)

Yeah  - the theory should be to enable the right mode and then just process the events on Linux.  However, last time I tried, I got some weird results that confused button presses...  windows would just be a matter of adding the extra events to the event processing.


Add setmaxuploadtarget RPC command

Addresses part of GH #3243.
This needs tests if we're going to go much further, but I'm more interested in concept review. Does it make sense at all? As written? Are there any glaring errors that need design thought before going further?

Good point. We already have a request for something similar in #3206. I think this gives us enough desired use cases to design that feature.


Run BuildRuntimeStore target without building the entire project

Currently the package runtime store build is set up to run the build package store target as part of the entire build lifecycle. However, this step is unrelated to the rest of the build steps. It could save some time and resources by just https://github.com/aspnet/MetaPackages/blob/d9661ed70dc4f6d8347d956f787484d8d59ef3e4/build/repo.targets#L32 by itself on the CI's Coherence-PackageCache* steps.

Changed the CI configuration to run build.cmd/sh /t:BuildPackageCache


fix modalbackdrop type

there was some compile errors in common

Codecov Report

Merging #1034 into master will not change coverage.
The diff coverage is 100%.

@@           Coverage Diff           @@
##           master    #1034   +/-   ##
=======================================
  Coverage   99.82%   99.82%
=======================================
  Files         314      314
  Lines        7785     7785
  Branches     1896     1896
=======================================
  Hits         7771     7771
  Misses         14       14

Impacted Files
Coverage Δ

src/components/modal/ModalBackdropConnected.tsx
100% <100%> (ø)
:arrow_up:

Continue to review full report at Codecov.

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


Status+ Undergoing Scheduled Maintenance

Hi,
Status+ will be going maintenance beginning shortly. This should resolve the issues with GitHub actions and rate-limiting.
This shouldn't take more than an hour.
I will lock this thread until I can confirm I am done, if there are issues after that please reply to this post.
Thank you!

There is currently a delay-- The Git history is insanely large, which is causing issues trying to commit. I have to re-clone the git repository which is taking time. I do not know when this will be complete. I am sorry about that! Hopefully by the end of the day!


Allow /debug endpoints be access while service shutting down

Sometimes if the service is left hanging waiting for shutdown you want to access the /debug endpoints provided by some packages, such as the one you get by importing /net/http/pprof
Any idea on how to handle such a scenario? Ideally I wouldnt want to assign two port to all my go services.

In case someone is reading this issue: I settled on exposing the http.DefaultServeMux as a unix domain socket as a work around. I used this code as a base https://github.com/betfair/opentsp/blob/master/internal/pprof/pprof_unix.go


adjust printCurrentSubscription to getAzureClient and add some utilit…

…y functions to AppServiceUtils

Codecov Report

Merging #1158 into develop will not change coverage.
The diff coverage is n/a.

@@            Coverage Diff             @@
##             develop    #1158   +/-   ##
==========================================
  Coverage      56.93%   56.93%
  Complexity       276      276
==========================================
  Files             27       27
  Lines           1291     1291
  Branches         154      154
==========================================
  Hits             735      735
  Misses           479      479
  Partials          77       77

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 4ef7966...131ff6e. Read the comment docs.


[KEP-2876] Document (GA) CEL validation for custom resources

Document (GA) CEL validation for custom resources

/milestone 1.29
/sig api-machinery

/retitle [WIP] [KEP-2876] Document (GA) CEL validation for custom resources

I have updated the changes according to the suggested format. Please feel free to take a look when have time. Thanks

/approve

Thanks @cici37
It looks good to me.
/lgtm


How to used CaffeOnSpark produced model ?

I  run caffeonspark example on yarn successed.
but how to used caffedonspark produced  model ?
I want  to used the model to recognize handwritten digit pictures and get the probability of each number. please tell me how to do it? thank you !

You can use "-test" or "-feature" to generate the prediction or probability. Please refer to the Wiki page for details, e.g.
https://github.com/yahoo/CaffeOnSpark/wiki/GetStarted_EC2


Improve RefMeshes API

The API for creating the geometry of a plant is currently terrible.
We first have to define reference meshes, put them in a RefMeshes structure, and put that structure into the root node of the mtg.
Then, each node has a given geometry that points to the reference mesh, to its position in the vector of reference meshes in the RefMeshes structure, its transformations, tapering, and finaly the actual mesh of the node (which is lazily reconstructed).
I think we can improve that by removing the RefMeshes structure altogether, and only giving a reference to the reference mesh to the node. This way we simplify greatly the API.
The API would be something like:
internode_refmesh = cylinder()
leaf_refmesh = leaf_mesh()

traverse!(mtg) do node
    if symbol(node) == "Internode"
        transformation = [...]
        node.geometry = Geometry(internode_refmesh, transformation)
    elseif symbol(node) == "Leaf"
        transformation = [...]
        node.geometry = Geometry(leaf_refmesh, transformation)
    end
end

And if the user wants to add more information into its reference mesh, it can still wrap it into a RefMesh structure as follows:
RefMesh("Internode", internode_refmesh, RGB(220 / 255, 220 / 255, 220 / 255))

Now if some reference meshes are given directly as meshes, we need to give each a default name and compute the normals of their vertex when we write them to disc in the OPF.
We also need to change how we write the OPF altogether, because currently we use the index of the reference mesh. But we could make a dictionary of keys refmesh and values index + any other needed information (material, normals...), if the mesh/refmesh is not in this dict, we add it, if it is, we just extract the information. In this case, we should write different parts of the OPF at different times. Starting with the topology, and slowly growing the meshBDD and other header information. I don't know if that's possible though.

What changed: we don't use RefMeshes anymore, we just create RefMeshes, and use a reference to them in the node geometries. As long as we use the same RefMesh, it is only a reference (because it is immutable).
When we read an OPF, we parse the reference meshes in an array first, and reuse them throughout the OPF parsing.
When we write an OPF, we traverse the MTG to get all kind of reference meshes, and then we write them (check if that's well implemented though).
Now we don't have to have an attribute in the root node anymore, which saves time.
I also renamed geometry into Geometry, and removed the ref_mesh_index argument, as we automatically compute it at writing now.


Don't draw an image if its opacity is 0

...which also means not loading the tiles for it. On the one hand, being able to load an image with 0 opacity is a nice hack for pre-loading, but really we should have a more explicit pre-load option, and loading images with opacity 0 is wasteful.
/cc @nein09 @aeschylus

Should just be a matter of adding an opacity check in TiledImage.draw:
https://github.com/openseadragon/openseadragon/blob/master/src/tiledimage.js#L244

Fixed by #859


fix(iOS): Setting cursor on Text doesn't error

Summary:
Related: https://github.com/facebook/react-native/issues/44559
On the old architecture, RCTTextView  didn't have the cursor property, so if you tried to set cursor on Text, you would get a redbox. Implementing cursor for Text wasn't super simple (there's some stuff that's in RCTView that's not in RCTTextView), so let's just add a property so it at least doesn't redbox.
Changelog:
[IOS] [FIXED] - Setting cursor on Text doesn't error
Test Plan:
Updated the cursor example test page, and verified that:

No red box pops up
Setting cursor directly on Text doesn't actually do anything.

https://github.com/facebook/react-native/assets/6722175/a56623d4-5851-4c38-84e3-8be62867e4df

Hey @Saadnajmi, I confirm that this PR has been fixed for me. Thank you!


Benefits of k-redux-factory selectors

Sometimes, accessing an object in the state from a container is quickier to write than using its selector.
I would like to know all the advantages of k-redux-factory selectors over the direct use the state.

k-redux-factory is a lib that aim to access your data as fast as possible.
By using selectors you are safe about our possible internal state restructurations.
For example, we move from keyValue like that:

{ keys: [], array: [], data: {}, initialized: false  }
to
{ data: [[]], initialized: false }

In this example if you didn't use our selectors, an upgrade of k-redux-factory could would break your application. But if you used our selectors, it wouldn't.
Always prefers using lib API and not its internals, when you can!

Besides that I see this advantages:

We (k-redux-factory) can refactor our code without breaking your application (see previous comment)
You have a standard, always use selectors
You can move your factory around your store definition -> your containers will not have to be fixed
You can memoize selectors if you need to at some point

moreover, if you want to try k-ramel, you can access the state using k-redux-factory selectors in a quick way:
export default inject(store => ({
  users: store.data.users.get(),
})(Component)

https://github.com/alakarteio/k-ramel


Fixed local type of pretty print check

Added a special handling for private local type ty_t_case of class CL_CI_TEST_PRETTY_PRINT, which resulted in a short dump when exporting "pretty print check".

thanks, ignore the error from abaplint, its due to some of the old code
👍


[WIP] support legacy registries in exernal stores

Tackling and fixing https://github.com/docker/docker/issues/22910
Though I need more ppl to chime in there :smile_cat: (especially my last two comments)
So problems are:

ppl can login prepending the scheme to the registry
with the above - pull, push operations are ok with the filestore (.docker/config.json)
the above isn't working with external stores
logout does not work at all with registries saved with https|http when logging out using just the hostname
probably other things

Signed-off-by: Antonio Murdaca<EMAIL_ADDRESS>

naked pings @thaJeztah @icecrime @vdemeester @calavera @cpuguy83 :)

I'd like to have @dmcgowan @aaronlehmann @stevvooe to have a look as well (for registry/distribution)

I'm not wildly familiar with the behavior. My initial concern is that we need to be careful about making certain endpoints the same that are not to avoid credential leak. The following are pitfalls that must be avoided:

https should not equal http - do not leak https credentials over http.
https://domain is not the same as xxx://domain:443 - avoid leaking credentials with plain text over port 443.

Looking at the original complaint in #22910, I'm wondering if the mistake here is stripping the scheme but I am not sure I understand this issue deeply enough.

Failure in gccgo?
20:24:16 --- FAIL: TestNativeStoreGetMissingCredentials (0.00s)
20:24:16 	native_store_test.go:286: unknown argument "get" with ""

I think the root cause of this is that docker login is allowed to take a fully qualified URL with a scheme, but commands like docker pull and docker push always use the reference grammar, which omits the scheme.
As I understand the problem, docker login https://example.com will store https://example.com in an external credentials store, and when we try to pull example.com/image, the lookup in the credential store is for example.com, which doesn't match.
As @stevvooe points out, ignoring the scheme stored with an authentication credential is potentially problematic. If the user specified creds to be associated with a https:// URL, it would be inappropriate for us to ever use those credentials over plaintext HTTP. That said, I don't think we ever allow sending creds over plaintext HTTP, so this might not actually be a problem. Still, it feels strange to allow a user to specify https:// in docker login, and then strip off the https://.
Is there any good reason to allow schemes to be specified to docker login? It seems like it would be a lot more consistent if docker login didn't accept schemes, like docker pull and docker push. It may be an accident that a fully-qualified URL is accepted.
But changing this might break some existing users, for example the ECR case discussed in #22910.

It may be an accident that a fully-qualified URL is accepted.

this behavior has been kept since old Dockers so we still maintain it with when retrieving creds from the filestore - the problem may be that we don't do the same with the external store

Is there any good reason to allow schemes to be specified to docker login

Is there a good reason to strip the scheme from the url, turning it into a different thing? example.com is not the same as https://example.com. I ask because I honestly don't know why pull and push have that behavior.

I don't know either why pull and push work like that.

ping @aaronlehmann @stevvooe what should we do here?

Add a comment and do a rebase.

rebased, added a comment to @stevvooe's comment, this PR still lacks of everything I said in the first comment and which make the PR itself not ready to code review

Current status:
ppl can login prepending the scheme to the registry
with the above point - pull, push operations are ok with the filestore (.docker/config.json)
...but the above isn't working with external stores
logout does not work at all with registries saved with https|http when logging out using just the hostname
probably other things

ping @runcom build is failing;
10:06:59 # github.com/docker/docker/cliconfig/credentials
10:06:59 cliconfig/credentials/native_store.go:49: undefined: errCredentialsNotFound
10:06:59 cliconfig/credentials/native_store.go:72: undefined: errCredentialsNotFound
10:06:59 cliconfig/credentials/native_store.go:133: undefined: errCredentialsNotFound

@thaJeztah right, I'm holding a rebase again because I did not understand what we should do with this PR, given my comment in https://github.com/docker/docker/pull/23100#issuecomment-230093994 which lists some outstanding issues

@runcom alright, yeah, came here because I don't know either what's the best solution, but spotted it was failing CI :blush:

@aaronlehmann @stevvooe any hint on how to go ahead with this one? give:

ppl can login prepending the scheme to the registry
with the above point - pull, push operations are ok with the filestore (.docker/config.json)
...but the above isn't working with external stores
logout does not work at all with registries saved with https|http when logging out using just the hostname probably other things

I'm okay with accepting a scheme in docker login and stripping out the scheme before saving the registry name to the credentials store. We will always use HTTPS unless the user explicitly sets up the daemon to allow plain HTTP for that registry, so while this is a bit kludgy, it doesn't pose a real risk of exposing credentials over unencrypted HTTP against the user's intentions.

@aaronlehmann alright, I'll adapt the PR accordingly, thanks

@aaronlehmann PTAL

@runcom some kind of test would be cool (unit or integration :stuck_out_tongue_closed_eyes:)
/cc @aaronlehmann @stevvooe for reviews 👼

@runcom some kind of test would be cool (unit or integration )

right, I'll write some!

@vdemeester @aaronlehmann @stevvooe added an integration test which fails on master

LGTM 🐸
/cc @aaronlehmann @stevvooe

There are some build errors:
18:40:35 registry/auth.go:224: syntax error: unexpected ResolveAuthConfig, expecting (
18:40:35 registry/auth.go:249: syntax error: unexpected string at end of statement

But otherwise these changes look right, thanks.

@aaronlehmann should be fixed now

LGTM


Regularise Wishart prior further

Even after adding a bit of noise to the observed data the chol decomposition sometimes is non-positive definite. Increasing the multiplier fixed it for me, and is more similar to what JA does in unified seg.

Sounds good, thanks Mikael


fix(components): update to include mode classes on missing components

Short description of what this resolves:
Adds the mode class to the components that don't have it & need it, for example:
<ion-card>

⬇⬇⬇
<!-- in iOS -->
<ion-card class="ios">

<!-- in MD -->
<ion-card class="md">

Removed mode-less component classes from the internal CSS & component:
.slides {
  // some CSS
}

⬇⬇⬇
ion-slides {
  // some CSS
}

Changes proposed in this pull request:

[x] Removed the internal component (mode-less) classes from the following (for example, .card-content, .footer) and, if it was being used to target the element in the CSS, replaced it with the element's tag:

[x] ion-card-content
[x] ion-footer
[x] ion-header
[x] ion-infinite-scroll-content
[x] ion-item-group
[x] ion-list
[x] ion-picker
[x] ion-refresher
[x] ion-slides
[x] ion-split-pane

[x] Added tests to make sure item is added as a class to the following:

[x] ion-item
[x] ion-item-divider
[x] ion-item-group

[x] Added tests to make sure button is added as a class to the following:

[x] ion-button
[x] ion-back-button
[x] ion-menu-button

[x] Added tests to verify the following have their mode specific classes (e.g. card-content-md) still for internal styling:

[x] ion-card-content
[x] ion-footer
[x] ion-header
[x] ion-infinite-scroll-content
[x] ion-item-group
[x] ion-item-options
[x] ion-list
[x] ion-picker
[x] ion-refresher
[x] ion-slides
[x] ion-split-pane

Fixes: #17608
Components that do not need mode classes :white_check_mark:

action-sheet-controller
alert-controller
keyboard-controller
loading-controller
menu-controller
modal-controller
nav-pop
nav-push
nav-set-root
nav
picker-controller
platform
popover-controller
route-redirect
route
router-outlet
router
tab
tabs
toast-controller
virtual-scroll

Components lacking mode classes :x:
:white_check_mark: - component has classes added for mode (ios, md)
:memo: - e2e test checking for classes has been added

Class
Test
Component
Type

:white_check_mark:
:memo:
action-sheet
scoped

:white_check_mark:
:memo:
alert
scoped

:white_check_mark:
:memo:
anchor
shadow

:white_check_mark:
:memo:
app

:white_check_mark:
:memo:
avatar
shadow

:white_check_mark:
:memo:
back-button
scoped

:white_check_mark:
:memo:
backdrop
shadow

:white_check_mark:
:memo:
badge
shadow

:white_check_mark:
:memo:
button
shadow

:white_check_mark:
:memo:
buttons
scoped

:white_check_mark:
:memo:
card-content

:white_check_mark:
:memo:
card-header
shadow

:white_check_mark:
:memo:
card-subtitle
shadow

:white_check_mark:
:memo:
card-title
shadow

:white_check_mark:
:memo:
card
scoped

:white_check_mark:
:memo:
checkbox
shadow

:white_check_mark:
:memo:
chip
shadow

:white_check_mark:
:memo:
col

:white_check_mark:
:memo:
content
shadow

:white_check_mark:
:memo:
datetime
shadow

:white_check_mark:
:memo:
fab-button
shadow

:white_check_mark:
:memo:
fab-list
shadow

:white_check_mark:
:memo:
fab

:white_check_mark:
:memo:
footer

:white_check_mark:
:memo:
grid
shadow

:white_check_mark:
:memo:
header

:white_check_mark:
:memo:
icon

:white_check_mark:
:memo:
img
shadow

:white_check_mark:
:memo:
infinite-scroll

:white_check_mark:
:memo:
infinite-scroll-content

:white_check_mark:
:memo:
input
scoped

:white_check_mark:
:memo:
item-divider
shadow

:white_check_mark:
:memo:
item-option
shadow

:white_check_mark:
:memo:
item-options

:white_check_mark:
:memo:
item-sliding

:white_check_mark:
:memo:
item
shadow

:white_check_mark:
:memo:
item-group

:white_check_mark:
:memo:
label
scoped

:white_check_mark:
:memo:
list

:white_check_mark:
:memo:
list-header
shadow

:white_check_mark:
:memo:
loading
scoped

:white_check_mark:
:memo:
menu-button
shadow

:white_check_mark:
:memo:
menu-toggle
shadow

:white_check_mark:
:memo:
menu
shadow

:white_check_mark:
:memo:
modal
scoped

:white_check_mark:
:memo:
note
shadow

:white_check_mark:
:memo:
picker
scoped

:white_check_mark:
:memo:
picker-column

:white_check_mark:
:memo:
popover
scoped

:white_check_mark:
:memo:
progress-bar
shadow

:white_check_mark:
:memo:
radio-group

:white_check_mark:
:memo:
radio
shadow

:white_check_mark:
:memo:
range
shadow

:white_check_mark:
:memo:
refresher

:white_check_mark:
:memo:
refresher-content

:white_check_mark:
:memo:
reorder-group

:white_check_mark:
:memo:
reorder
shadow

:white_check_mark:
:memo:
ripple-effect
shadow

:white_check_mark:
:memo:
row
shadow

:white_check_mark:
:memo:
searchbar
scoped

:white_check_mark:
:memo:
segment-button
shadow

:white_check_mark:
:memo:
segment
scoped

:white_check_mark:
:memo:
select-option
shadow

:white_check_mark:
:memo:
select-popover
scoped

:white_check_mark:
:memo:
select
shadow

:white_check_mark:
:memo:
skeleton-text
shadow

:white_check_mark:
:memo:
slide

:white_check_mark:
:memo:
slides
shadow

:white_check_mark:
:memo:
spinner
shadow

:white_check_mark:
:memo:
split-pane

:white_check_mark:
:memo:
tab-bar
shadow

:white_check_mark:
:memo:
tab-button
shadow

:white_check_mark:
:memo:
text
shadow

:white_check_mark:
:memo:
textarea
scoped

:white_check_mark:
:memo:
thumbnail
shadow

:white_check_mark:
:memo:
title
shadow

:white_check_mark:
:memo:
toast
shadow

:white_check_mark:
:memo:
toggle
shadow

:white_check_mark:
:memo:
toolbar
shadow

this broke the toolbar/scenario test

The bug in my last comment is directly related to https://github.com/ionic-team/ionic/issues/17876

@liamdebeasi Could you take another look at this? I think the classes themselves are all good, I added it to ionicons and updated the dependency. I reverted the change with title because I think trying to remove the mode classes may be a breaking change and I want to investigate that more.


Cache support

Requires:

[x] #398

Might help to set this PR against #436 to only show the cache changes.

I think last time we talked about runtime optimization and cache support, we discussed making the caching part of the runtime optimizer, to avoid having to sprinkle it all over the code (like you do here now). Did you investigate that option?

Might help to set this PR against #436 to only show the cache changes.

It would have been. I'm afraid I'd have to create a new PR by now to do that, right?

I think last time we talked about runtime optimization and cache support, we discussed making the caching part of the runtime optimizer, to avoid having to sprinkle it all over the code (like you do here now). Did you investigate that option?

Yes and it's handled there. This PR adds cache support for the normal library. The benefit would be making this transparent for users.

In that case I don't think this is worth the additional complexity. Anyone unwilling to apply the full runtime optimization can trivially cache the formatter in their own code.

Anyone unwilling to apply the full runtime optimization can trivially cache the formatter in their own code.

@dpolivy has shown interest for this feature. So, I'd like to hear if he has any thoughts.

@rxaviers @jzaefferer I haven't followed the runtime PR too closely, but I guess my main question is, would that be easy to incorporate into a node.js environment? At a high level it makes sense, but it also looks a lot more complicated than npm install globalize cldr-data and require('globalize').
As an aside, I've actually seen ~2-3 second startup time increase in our node app since adding in i18n support with globalize (mostly loading all the CLDR JSON), so any possible optimizations would be great to incorporate (especially if they include caching).
Here's how I'm doing my own caching in express-globalize (a library I'm working on for integrating with express). It's serviceable, but really I think the library should handle this automatically. The main challenge is just consistently "hashing" the options for each formatter to avoid duplication. I'm not sure JSON.stringify is ideal as it might not account for different ordering of parameters, but I wanted something that would be super cheap to calculate (otherwise you lose the benefit of caching in the first place).

As an aside, I've actually seen ~2-3 second startup time increase in our node app since adding in i18n support with globalize (mostly loading all the CLDR JSON), so any possible optimizations would be great to incorporate (especially if they include caching).

#398 will reduce significantly your load time, not this PR though.

The main challenge is just consistently "hashing" the options for each formatter to avoid duplication

This is exactly what this PR does. The hash it uses is here https://github.com/jquery/globalize/pull/470/files#diff-981bf4d78b64521bd698f83454bb3cf9

Anyone unwilling to apply the full runtime optimization can trivially cache the formatter in their own code.

@jzaefferer While true at a high level, I'd argue that the hashing of the options object isn't necessarily trivial, and as such warrants the addition of caching within the library. I can't really think of any (user) scenario here where you wouldn't want the library to be optimized in this way.

@rxaviers with this additional cache, wouldn't the cache that the optimizer adds end up being redundant? Or does the optimizer optimize this cache away?
@dpolivy thanks for the details on your usecase, that helps a lot. Based on that I agree that this feature is worth it.

@jzaefferer your second statement: it's not an additional cache, but the same one that optimizer adds up.

Cache is useful to avoid creating a plural generator for every message formatter #817.

I am closing all old (and stalled) PRs

@rxaviers Are there plans to eventually add full caching support as discussed here? There's still value in the feature.

Yes, I think so @dpolivy. Ideally this feature is optional and can be injected when desired.


How can I limit GitHub authentication only for users in my GitHub organization

Hello, I would like to use GitHub user accounts and authenticate that user through Cognito. I have installed shim and it works so that GitHub users could authenticate via their GitHub accounts. I would like to limit users who can get authentication via GitHub by limiting them to my organization only. Is it possible? if so, could you please give advice on how to archive that?

You can see some discussion on this topic here - https://github.com/TimothyJones/github-cognito-openid-wrapper/issues/26
I recommend you put the user's organisations into the userinfo response, and then read those in the app to determine whether they should have access. This means a user might be able to log in, federate into Cognito, but then not have access to your app.

I'll close this for now - please feel free to reopen if you have further questions or the discussion on the other issue doesn't help.


Correct the mode bits on file REQUEST-932...

The mode bits of rules/REQUEST-932-APPLICATION-ATTACK-RCE.conf got mis-set in commit ef551c4c3d2073138f1fb301c19c8b259365cfb5.
This PR sets the mode bits to their correct state.

Merging following approval.


EOFError crashes bluetti-mqtt

I'm running bluetti-mqtt to connect to my AC500. Every once and a while I get this stack trace that crashes the app:
2023-03-01 08:48:49 ERROR    Error connecting to device xx:xx:xx:xx:xx:xx:
Traceback (most recent call last):
  File "/home/iandees/bluetti-venv/lib/python3.8/site-packages/bluetti_mqtt/bluetooth/client.py", line 40, in run
    await self.client.connect()
  File "/home/iandees/bluetti-venv/lib/python3.8/site-packages/bleak/__init__.py", line 471, in connect
    return await self._backend.connect(**kwargs)
  File "/home/iandees/bluetti-venv/lib/python3.8/site-packages/bleak/backends/bluezdbus/client.py", line 172, in connect
    reply = await self._bus.call(
  File "/home/iandees/bluetti-venv/lib/python3.8/site-packages/dbus_fast/aio/message_bus.py", line 370, in call
    await future
  File "/home/iandees/bluetti-venv/lib/python3.8/site-packages/dbus_fast/aio/message_reader.py", line 24, in _message_reader
    message = unmarshaller._unmarshall()
  File "/home/iandees/bluetti-venv/lib/python3.8/site-packages/dbus_fast/_private/unmarshaller.py", line 641, in _unmarshall
    self._read_header()
  File "/home/iandees/bluetti-venv/lib/python3.8/site-packages/dbus_fast/_private/unmarshaller.py", line 524, in _read_header
    self._read_to_pos(HEADER_SIGNATURE_SIZE)
  File "/home/iandees/bluetti-venv/lib/python3.8/site-packages/dbus_fast/_private/unmarshaller.py", line 276, in _read_to_pos
    raise EOFError()
EOFError

It should automatically retry even if it prints out this exception. When you say that it crashes the app what do you mean?

bluetti_mqtt exits. Here's the full log from the most recent event:
2023-03-02 00:21:24 ERROR    Crashing with uncaught exception:
Traceback (most recent call last):
  File "/home/iandees/bluetti-venv/lib/python3.8/site-packages/bluetti_mqtt/device_handler.py", line 31, in run
    await asyncio.gather(*(polling_tasks + pack_polling_tasks + [manager_task]))
  File "/home/iandees/bluetti-venv/lib/python3.8/site-packages/bluetti_mqtt/bluetooth/manager.py", line 19, in run
    await asyncio.gather(*[c.run() for c in self.clients.values()])
  File "/home/iandees/bluetti-venv/lib/python3.8/site-packages/bluetti_mqtt/bluetooth/client.py", line 53, in run
    await self._perform_commands(self.client)
  File "/home/iandees/bluetti-venv/lib/python3.8/site-packages/bluetti_mqtt/bluetooth/client.py", line 75, in _perform_commands
    await client.write_gatt_char(
  File "/home/iandees/bluetti-venv/lib/python3.8/site-packages/bleak/__init__.py", line 593, in write_gatt_char
    await self._backend.write_gatt_char(char_specifier, data, response)
  File "/home/iandees/bluetti-venv/lib/python3.8/site-packages/bleak/backends/bluezdbus/client.py", line 788, in write_gatt_char
    reply = await self._bus.call(
  File "/home/iandees/bluetti-venv/lib/python3.8/site-packages/dbus_fast/aio/message_bus.py", line 370, in call
    await future
  File "/home/iandees/bluetti-venv/lib/python3.8/site-packages/dbus_fast/aio/message_reader.py", line 24, in _message_reader
    message = unmarshaller._unmarshall()
  File "/home/iandees/bluetti-venv/lib/python3.8/site-packages/dbus_fast/_private/unmarshaller.py", line 641, in _unmarshall
    self._read_header()
  File "/home/iandees/bluetti-venv/lib/python3.8/site-packages/dbus_fast/_private/unmarshaller.py", line 524, in _read_header
    self._read_to_pos(HEADER_SIGNATURE_SIZE)
  File "/home/iandees/bluetti-venv/lib/python3.8/site-packages/dbus_fast/_private/unmarshaller.py", line 276, in _read_to_pos
    raise EOFError()
EOFError
2023-03-02 00:21:24 INFO     Shutting down...

Thanks, that's helpful. I'll need to dig a bit further into why this is happening, but it shouldn't be too difficult to handle this.

Thanks!


Remove target files when an error occurs

Catch the status for commands by sh; http://qiita.com/vzvu3k6k/items/7e6e5520eeb829ec1c8b


Sink should batch writes to the database

Individual transactions for writes to the database, the sink should batch its writes to be more efficient.
Some decisions need to be made:

how big should a batch be
howl long should a batch wait before writing anyway

We talked about dropping this until we see there are problems with writes to the database, as it would introduce complexity. Feel free to close it, we can reopen or create a new one in the future.

As a side note, when we want to include batching, we can continue with database/sql package to do it (see example) but we might want to consider changing to gorm (docs about batching here)

Closing for now since it's not an issue currently. We can reopen in the future if we need to improve performance around writing to the database