Scoped Slot warns when used inside of dynamic component on regular element

Version
2.6.10
Reproduction link
https://jsfiddle.net/mybeta/1dfwsazn/
Steps to reproduce
When I use DOM Template Parsing Caveats to add a component (e.g.
 ) I can't use scoped slots (slotProps) without receiving a warning in the console. I would like to use it this way:

    slotProps: {{slotProps.test}}

What is expected?
No warning.
What is actually happening?
I get the following warning in the console.

[Vue warn]: Error compiling template:
v-slot can only be used on components or <template>.

The rest looks like it works as expected.

As the warning says v-slot can only be used on the wrapper components or nested in the component itself but on a template tag.
Previously, slot-scope would allow this usage but it was removed, you can check out the RFC: https://github.com/vuejs/rfcs/blob/master/active-rfcs/0001-new-slot-syntax.md.
If you only have one scoped slot, you should be able to do `

Hi @posva , thanks a lot for your comment!
As suggested, I have also tried to use v-slot nested inside a template tag, something like the below.

  <template v-slot:default="slotProps">
    slotProps: {{slotProps.test}}
  </template>

However that produces a warning as well, see fiddle:
https://jsfiddle.net/mybeta/bhcoLwu3/
When avoiding the DOM template parsing caveats, it works just fine:
<test-component>
  <template v-slot:default="slotProps">
    slotProps: {{slotProps.test}}
  </template>
</test-component>

but I believe I need to use the caveat, when using the component on a tr tag.
Also, would you mind explaining this comment a bit more?

If you only have one scoped slot, you should be able to do `

Thanks!

I updated my comment but the warning seems to appear anyway, the warning shouldn't appear indeed

What is the status of this?


Don't require "gush.yml" for "core:update" command

I've installed gush.phar in /usr/local/bin folder as root. Then I'm running php /usr/local/bin/gush.phar core:update and getting an exception that gush.yml is missing. And that's true: the root user doesn't have it and it shouldn't.
For now please don't require gush.yml for core:update command. But ideally each command should say whatever it needs gush.yml or not.

closed via #381


Any update on UTF8 characters in addresses?

I see this was mentioned and closed off in #39... I am still getting:
Mail::Field::ParseError: Mail::AddressList can not parse |"Matija Marohnić"<EMAIL_ADDRESS>Reason was: Only able to parse up to "Matija Marohnić

Are these characters still out?

@njt1982 Did you find a workaround? I'm receiving this error as well.

@nickrivadeneira nope 😞

To address this, we'll need to implement RFC 6532 support: https://github.com/mikel/mail/issues/39#issuecomment-12732768
Or implement internationalization "downgrading"—see RFC 5504.

@jeremy What's the plan? Do I need to invest in my own parser? #39 is from 2010. Mikel's been giving ambivalent responses as to when this will be addressed at least since then; I've found remarks in 2012, 2014, 2015, 2016, and of course this year. I can live with slow timelines; but the lack of any firm direction for seven straight years seems like a sign it's not going to land anytime soon.
Is there any hope of RFC 6532 support this calendar year?

@duane, it sounds like you've dug into the history a good bit. What's your take on the feasibility of implementing RFC5504 downgrading vs adding RFC6532 support?
Explicit social cue: I get where you're coming from, but hold up a sec. This is the way people talk (aka push on) their account reps at Oracle and IBM and BigSupportContractCo, and it's likely their only chance to get action there. In open source, it burns people out and thickens their skins. No need for that dynamic.

Fixed by #1103 😊

@jeremy Thanks for the fix 😁

@jeremy, thanks for the tip, I'll keep it in mind; I can certainly see what you mean.
My instinct is that parsing is distinct from downgrading, and ultimately Mail::Address should probably support both, but parsing should assist with the downgrading. Furthermore, RFC 6532 seems to be part of a broader RFC 6530 which obsoletes RFC 5504.
More broadly, RFC 5504 seems to be SMTP specific whereas RFC 6532 specifically addresses the mail address—I'd guess that'd be greater value for your effort.

I took a closer look at downgrading, and doing it properly is a LOT more work! Who knew 😊


Add the btrfs partitioning mode

(This is a revived #422.)
This PR has basically three parts:

The first commits fix already existing btrfs code in the library (it was never used before). Just tiny fixes. I tried to add tests where they had been missing before.
The "middle section" adds missing parts for btrfs subvolume. The scaffolding was there, but the translation from an abstract partition table to osbuild stages was missing.
The final section is the actual addition of a btrfs partitioning mode. When this mode is used, a root partition from the base partition table is converted to a btrfs one with a subvolume. The code for adding more btrfs subvolumes based on blueprint mountpoints was already there.

Weird parts:

When a btrfs partitioning mode is used, the compression is hard-coded to zstd:1. It would be great if this could be configured per an image type/distro/arch, but the partitioning code currently cannot do such specific things. In the end, this should be probably also user-configurable. However, I think that this default value is alright for the starters, we can always iterate on this.
Setting min-size for extra mountpoints is a weird thing, because the extra mountpoints are translated to subvolumes... Maybe we should just error out if the min size is set with btrfs and depend just on the total size customization... Happy to discuss this!

TODO:

[ ] more tests (especially for ensureBtrfs)

When a btrfs partitioning mode is used, the compression is hard-coded to zstd:1. It would be great if this could be configured per an image type/distro/arch, but the partitioning code currently cannot do such specific things. In the end, this should be probably also user-configurable. However, I think that this default value is alright for the starters, we can always iterate on this.

I can't say for sure (I don't remember), but I bet we gave little consideration for this when adding it.  It was probably a decision to add it and figure out the config later.  Like you said, it's a sane enough default.

Setting min-size for extra mountpoints is a weird thing, because the extra mountpoints are translated to subvolumes... Maybe we should just error out if the min size is set with btrfs and depend just on the total size customization... Happy to discuss this!

I remember thinking about this, going back and forth on ideas for how to handle sizing.  One idea was to sum up the min sizes and set the whole volume as the sum.  Erroring out on sizing for subvols also makes sense though.

Setting min-size for extra mountpoints is a weird thing, because the extra mountpoints are translated to subvolumes... Maybe we should just error out if the min size is set with btrfs and depend just on the total size customization... Happy to discuss this!

Or only error if the min-size is larger than the total volume size?

Merge conflicts

Merge conflicts

Should be fixed now.

Approving but the error from the linter should be fixed to avoid weird loop side-effects.

Linter error is addressed.


TransformerEngine + cudagraphs

🐛 Bug
Compiling a model with Transformer Engine executor with Cudagraphs enabled is not supported
To Reproduce
Code sample
import torch
import thunder

class Module(torch.nn.Module):
    def __init__(self, in_features, out_features) -> None:
        super().__init__()
        self.linear =  torch.nn.Linear(in_features, out_features)

    def forward(self, x: torch.Tensor):
        return self.linear(x)

with torch.device('cuda'):
    m = 1
    in_features = 4096 * m
    out_features = 4096 * m
    model = Module(in_features, out_features)
    x = torch.randn(768, in_features, requires_grad=True)

    jmodel_def = thunder.jit(model, executors=['transformer_engine'], use_cudagraphs=True)

    y = jmodel_def(x)

Expected behaviour
Traceback (most recent call last):
  File "/workspace/workdir/examples/dev/te.py", line 32, in <module>
    y = jmodel_def(x)
  File "/usr/local/lib/python3.10/dist-packages/torch/nn/modules/module.py", line 1736, in _wrapped_call_impl
    return self._call_impl(*args, **kwargs)
  File "/usr/local/lib/python3.10/dist-packages/torch/nn/modules/module.py", line 1747, in _call_impl
    return forward_call(*args, **kwargs)
  File "/workspace/workdir/thunder/core/module.py", line 63, in forward
    res = self._forward_fn(*args, **kwargs)
  File "/workspace/workdir/thunder/__init__.py", line 781, in fn_
    result = cache_entry.computation_fn(*inps)
  File "/usr/local/lib/python3.10/dist-packages/torch/utils/_contextlib.py", line 116, in decorate_context
    return func(*args, **kwargs)
  File "/usr/local/lib/python3.10/dist-packages/torch/amp/autocast_mode.py", line 44, in decorate_autocast
    return func(*args, **kwargs)
  File "/usr/local/lib/python3.10/dist-packages/torch/amp/autocast_mode.py", line 44, in decorate_autocast
    return func(*args, **kwargs)
  File "thunder.augmented_forward_fn_3", line 12, in augmented_forward_fn
  File "/usr/local/lib/python3.10/dist-packages/torch/nn/modules/module.py", line 1736, in _wrapped_call_impl
    return self._call_impl(*args, **kwargs)
  File "/usr/local/lib/python3.10/dist-packages/torch/nn/modules/module.py", line 1747, in _call_impl
    return forward_call(*args, **kwargs)
  File "/workspace/workdir/thunder/executors/transformer_engineex.py", line 212, in forward
    weight_fp8, weight_t_fp8 = self.get_fp8_weight_version_compat(
  File "/workspace/workdir/thunder/executors/transformer_engineex.py", line 293, in get_fp8_weight_version_compat
    weight_fp8 = self.get_fp8_workspace(
  File "/usr/local/lib/python3.10/dist-packages/transformer_engine/pytorch/module/base.py", line 965, in get_fp8_workspace
    out.cast_transpose_(
  File "/usr/local/lib/python3.10/dist-packages/torch/utils/_contextlib.py", line 116, in decorate_context
    return func(*args, **kwargs)
  File "/usr/local/lib/python3.10/dist-packages/transformer_engine/pytorch/float8_tensor.py", line 732, in cast_transpose_
    fp8_meta = self._fp8_meta[fp8_meta_key]
KeyError: 'scaling_fwd'

Environment

PyTorch Version (e.g., 1.0): 2.5.0a0+gitb0fc6aa
Thunder: f9dbf9ce6e2b9c3e6885a8ef84d3ffcadbff5f87
OS (e.g., Linux): Linux
Python version: 3.10.12
CUDA/cuDNN version: 12.6
GPU models and configuration: RTX ADA 6000
Any other relevant information: Tested on NVIDIA internal docker containers

I remember that I had this KeyError: 'scaling_fwd' error once when running a trace TraceCtx the decorator for transformer engine was not present (@transformer_engine.fp8_autocast(fp8_recipe=te_fp8_recipe)).
This info may help.

Fixed in https://github.com/Lightning-AI/lightning-thunder/pull/1021


docs: add back/prev button in generator documentation

Description
Added previous and next buttons in generator documentation.
Related issue(s)
#1176

@Ankitchaudharyy thanks but I have to close this PR. In the website repo we only keep copy of generator docs. These are copied on every change from https://github.com/asyncapi/generator/tree/master/docs. So basically all the work you just did would be overridden anyway in next change to generator docs.
Please do not yet create PR for the generator. Maybe you want to contribute https://github.com/asyncapi/website/issues/1000 ?


Errors and script doesn't execute correctly

At C:\Users\pavanmaganti\Desktop\HealthChecker.ps1:143 char:19

          Sign up

              ~

The ampersand (&) character is not allowed. The & operator is reserved for future use; wrap an ampersand in double
quotation marks ("&") to pass it as part of a string.
At C:\Users\pavanmaganti\Desktop\HealthChecker.ps1:170 char:190

... ures">Features <span class="Bump-link-symbol float-right text-normal text-gray-l ...

               ~

The '<' operator is reserved for future use.
At C:\Users\pavanmaganti\Desktop\HealthChecker.ps1:170 char:261

... xt-gray-light">→

               ~

The ampersand (&) character is not allowed. The & operator is reserved for future use; wrap an ampersand in double
quotation marks ("&") to pass it as part of a string.
At C:\Users\pavanmaganti\Desktop\HealthChecker.ps1:184 char:255

... stomer stories <span class="Bump-link-symbol float-right text-normal text-gray-l ...

               ~

The '<' operator is reserved for future use.
At C:\Users\pavanmaganti\Desktop\HealthChecker.ps1:184 char:326

... xt-gray-light">→

               ~

The ampersand (&) character is not allowed. The & operator is reserved for future use; wrap an ampersand in double
quotation marks ("&") to pass it as part of a string.
At C:\Users\pavanmaganti\Desktop\HealthChecker.ps1:185 char:231

... rity">Security <span class="Bump-link-symbol float-right text-normal text-gray-l ...

               ~

The '<' operator is reserved for future use.
At C:\Users\pavanmaganti\Desktop\HealthChecker.ps1:185 char:302

... xt-gray-light">→

               ~

The ampersand (&) character is not allowed. The & operator is reserved for future use; wrap an ampersand in double
quotation marks ("&") to pass it as part of a string.
At C:\Users\pavanmaganti\Desktop\HealthChecker.ps1:205 char:222

... Explore GitHub <span class="Bump-link-symbol float-right text-normal text-gray-l ...

               ~

The '<' operator is reserved for future use.
At C:\Users\pavanmaganti\Desktop\HealthChecker.ps1:205 char:293

... xt-gray-light">→

               ~

The ampersand (&) character is not allowed. The & operator is reserved for future use; wrap an ampersand in double
quotation marks ("&") to pass it as part of a string.
At C:\Users\pavanmaganti\Desktop\HealthChecker.ps1:208 char:107

... pt-lg-3">Learn & contribute

               ~

The ampersand (&) character is not allowed. The & operator is reserved for future use; wrap an ampersand in double
quotation marks ("&") to pass it as part of a string.
Not all parse errors were reported.  Correct the reported errors and try again.
+ CategoryInfo          : ParserError: (:) [], ParseException
+ FullyQualifiedErrorId : AmpersandNotAllowed

@mpkumar82 it would appear that you copied the script from the site not downloaded it. Please correctly download the script from the Releases tab, as none of the errors that are provided within the above text is actually within the script.

@mpkumar82, please let me know if you are still running into this issue. Otherwise, i will proceed to close out this issue.

Closing out issue due to inactivity. Also doesn't appear to be an actual issue as the script doesn't appeared to have been downloaded correctly from the Releases page.


Music Sheets

Thanks for the update!  Would it be possible to add a tab for tracking music sheets known?

Added with the v<IP_ADDRESS> release.


⚠ Fortnite has degraded performance

In fd51c82, Fortnite (https://fortnite.com) experienced degraded performance:

HTTP code: 200
Response time: 1493 ms

Resolved: Fortnite performance has improved in c53dac6.


Multipart enhancement

This is the for multipart enhancement described in https://github.com/irods/irods_client_s3_api/issues/114.
I have also implemented AbortMultipartUpload.
Notes:

Tests are passing.
I had previously made all of the changes for PR #115.  I opened a new PR simply because so many changes have been made since that PR was opened.
This is now working for both normal clients and clients that use chunked encoding.
I made a couple of minor updates not directly related to this enhancement:

I changed FUNCTION references to func. This was only for these two files that are touched in this PR.
I changed some logging from debug to trace.

A couple of other concerns/questions:
The entry in shared memory is cleaned up when CompleteMultipartUpload or AbortMultipartUpload returns. However, if neither is called it won't be cleaned up until the server restarts.  A new call to InitiateMultipartUpload would generate a new upload_id so that upload should behave correctly.

The entry in shared memory is cleaned up when CompleteMultipartUpload or AbortMultipartUpload returns. However, if neither is called it won't be cleaned up until the server restarts.

Should we consider cleaning up the entry in shared memory if a certain amount of time passes?   Aka a timeout on idle shared memory entries?  If so... what is a safe amount?  An hour of no activity?  A day?  A week?

very impressive. glad this is behaving.
we have existing tests? new tests?

For the most part the existing tests should suffice.  I did have a problem with missing the last close which would cause a second put to that object to fail if done too quickly.  I just updated the tests to follow up the first large file put with a second one for each of the clients.

Yes, proceed with squashing if it's passing the tests.

Yes, proceed with squashing if it's passing the tests.

I have squashed.
Note that I also corrected my .vimrc file which was no longer highlighting spaces at the end of lines.  I noticed some of these in my docker-compose.yml so removed those.  Other than that this is identical to what you reviewed.

Please capture the design/ideas behind the multipart enhancements in the commit body of 45508f5.

Please capture the design/ideas behind the multipart enhancements in the commit body of 45508f5.

I added the design in the commit message.


enhance the Legofy to only use Lego colors

i just add a function "getNearestColor" in legofy
BTW, tests/nearestColor.py was made for me to test the function and you don't have to merge this on main project

I think you'd have quite better result if you implemented getNearestColor with HSV or HSL (which can be done easily with colorsys from the standard lib (#BatteriesIncluded). Then it might be interesting to multiply either component with a scalar constant to change their relative importance.
Worth noting that Wikipedia has an article on color difference which point to rather using Lab and Python-colormap has specific functions for computing color distances.
Main point is : computing distance by doing an euclidean distance over RGB coordinates does not result with the visually closest color.

I think you better modified your colors again and change it with material design color
The list of the hex is here
And because the color of the site is hex,
Try to use HEX to RGB Converter, check it here

thanks all!
I will fix my problem as soon as possible

@christoga
I'm confused why i should change the colors with material design color.
what's advantage in this way?
thanks for your suggestion

I think @christoga wanted to say that Material Design offers a palette of colors that should look better.  That could be interesting as an option, if we could choose our palette, but given the goal of this pull request, using the official LEGO colors should be the main feature we add ... we can still add the option to chose a better palette in a subsequent PR based on what this one offers, though.

I'm still trying to find a fix for something before I merge this, and I'll probably be implementing the nearest color in a different way. Great stuff though

better merge has been merged


Automate ARM architecture CI

Consider https://www.scaleway.com/pricing/#anchor_baremetal . see #7949

That would be awesome!


Temperature Returns Innacurate Data

Using cputemperature to measure the temperature of my CPU, I get these values:
{ main: -172.86666666666667,   cores: [ -273.2, -273.2, 27.8 ],   max: -1 }
My CPU only has two cores but it is indicated that there are three.
Also, I haven't checked using any other software, but I'm fairly sure my CPU isn't at Absolute Zero.
Is this an issue with the sensors on my CPU?

Can you post the result of wmic /namespace:\\root\wmi PATH MSAcpi_ThermalZoneTemperature get CriticalTripPoint,CurrentTemperature /value?

CriticalTripPoint=4832
CurrentTemperature=0
CriticalTripPoint=4832
CurrentTemperature=0
CriticalTripPoint=0
CurrentTemperature=3010

It must be a sensor problem by the looks of it. Something on my end. I did check with HWiNFO and read my CPU temperature as 47C

Yes ... anyway I will check my code and come back to that tomorrow.

Alright, its probably an issue with my machine anyway.

Code seems to be ok ... but I will keep an eye on that. Closing it for now.


Can jsonify return array?

as the title says, can i use jsonify as this:
jsonify( [ { 'a': 1, 'b': 2 }, { 'c': 3, 'd': 4 } ] )

This is fixed in ES5, and lots of sites no longer support browsers that are older than that. Can we have a flask option like disable_pre_es5_security (or something better named)?

+1 @jaredly , I need  it too

It will be removed, see https://github.com/mitsuhiko/flask/issues/1182

This is a security flaw in javascript/browsers... If the API isn't being used from javascript, and json is just being used as a means of data transfer (eg. to some python client or something), then there isn't any point in users caring about the security issue. In addition its much easier to stream the data more efficiently if an array is returned (eg. in Haskell w/ pipes)

How insane is this? jsonify does not serlialize a list into JSON...? that's insane
I don't see how Flask can claim to be a web server framework if this code doesn't work:
lists = List.query.all()
return jsonify(lists=lists)

But it returns
TypeError: Object of type List is not JSON serializable

@ajbraus watch it. Your code is broken, not Flask. You try to serialize a type List, not the built-in type list.

I don't see how Flask can claim to be a web server framework if this code doesn't work:

No need to be passive aggressive. 🙊
Have a look at Marshmallow for serializing your models to something that can be jsonified.


Add a few mocking utils to the testing framework + add more documentation

Fixes #439

I'm guessing the downstream projects are failing because they don't use Quarkus 3 (yet).


GitHub App for setting up better codeowner pings

I need a GitHub App to implement https://github.com/NixOS/nixpkgs/pull/336261, because the standard GitHub Action tokens don't have sufficient permissions.
Instructions:

Create new App (direct link)

Name: Nix Owners
Homepage URL: https://github.com/NixOS/nixpkgs
Disable Webhooks
Permissions:

Repository > Pull Requests: read-write (to request reviews)
Repository > Administration: read-only (indirectly needed to check whether a review can be requested)
Organization > Members: read-only (indirectly needed to check whether a review can be requested)

Install the App on the NixOS, give it access to only https://github.com/nixos/nixpkgs
Set the App ID as a new repository variable (direct link) named OWNER_APP_ID
Generate a private key for the App and set it as a new repository secret (direct link) named OWNER_APP_PRIVATE_KEY

ok, should be done


Add EVP_PKEY_METHOD enumeration functions.

Checklist

[x] documentation is added or updated
[x] tests are added or updated

This PR adds a way to enumerate public key methods. It adds a test to ensure the table is correctly ordered and adds a -public-key-methods switch to the list command.

Update: rebased, comments addressed and conflicts resolved.


KNN Support for Point Cloud Operators

This pull request is for adding KNN support to the point cloud operators in addition to the already existing fixed-radius support. This work is for issue #38

Still in progress. Just finished updating the RBF interface.

Finished initial implementation. Damien can you review this and the issues and we can discuss tomorrow? I will see if these builds pass.


Restore env after running stages

Is your feature request related to a problem? Please describe.
When running makisu, environment variables might get overwitten by the image creation process.
Describe the solution you'd like
Makisu should save and restore the env between stage.
From what I see:

at the end of building (before pushing)
before building another stage (multi stage docker)

Describe alternatives you've considered
It is possible to bypass this bug by specifying your env vars as ENV command in your Dockerfile but its unclean
Additional context
This might be the root cause of all the SSL certs issues. if the SSL_CERT_DIR is overwritten by an image (from pull or in creation), makisu will not be able to use the one provided by the original env.

I'm starting a PR as soon as I have a workaround for this.


Update Agent.OSVersion support fot .net 5 and later

The .net runtime changed the way the OS version is returned and it does
not longer return the Darwin kernel version but the produce version, for
reference: https://github.com/dotnet/runtime/pull/36029

@mandel-macaque Thanks. It is nice to know this will be fixed permanently once we update to .Net 5.


Add support for TIFF sequences

The TIFFReader works on a single file.
https://github.com/bluesky/tiled/blob/89c1c8bd41156f733bf69205ef6fdf52004a768a/tiled/readers/tiff.py#L9-L22
We need a TIFFSequenceReader that works on a sequence of files. Proposed API:
class TIFFSequenceReader:
    """
    Examples:

    >>> TiffSequenceReader.from_file_list(["images001.tif", "images002.tif", "images003.tif"])

    >>> TiffSequenceReader.from_glob("images*.tif")
    """
    def __init__(self, tiff_series: tiffile.TiffSequence):
        # __init__ is probably not user-facing, as usual for Readers
        # See classmethod constructors for "friendlier" entry points.
        # This does minimal work, just setting up any state we need.
        self._tiff_series = tiff_series

    @classmethod
    def from_file_list(cls, files: List[str | file]):
        ...

    @classmethod
    def from_glob(cls, pattern):
        # Use Python's builtin glob module.
        ...

This is addressed by https://github.com/bluesky/tiled/pull/47. In #48 we propose some ideas for getting the directory-walker to deal with "datasets" and span multiple files, such as TIFF sequences do. Let's leave this open until that is done.


[BUG] SkipDistributedCacheReadWhenStale also skips on memory cache miss

Describe the bug
Distributed cache is skipped on memory cache miss when setting SkipDistributedCacheReadWhenStale = true in FusionCacheOptions. Expected only stale cache to be skipped.
To Reproduce
Dependencies: XUnit, FluentAssertions
public class FusionCacheTests
{
    [Fact]
    public async Task SkipDistributedCacheReadWhenStale_True_DoesNotSkipOnMemoryCacheMiss()
    {
        const string cacheKey = "key";
        var fusionCache1 = new FusionCache(Options.Create(new FusionCacheOptions
        {
            DefaultEntryOptions = { SkipDistributedCacheReadWhenStale = true }
        }));

        var fusionCache2 = new FusionCache(Options.Create(new FusionCacheOptions
        {
            DefaultEntryOptions = { SkipDistributedCacheReadWhenStale = true }
        }));

        var fakeDistributedCache = new FakeDistributedCache();
        fusionCache1.SetupDistributedCache(fakeDistributedCache, new FusionCacheSystemTextJsonSerializer());
        fusionCache2.SetupDistributedCache(fakeDistributedCache, new FusionCacheSystemTextJsonSerializer());

        // Set cache via the first fusion cache instance.
        await fusionCache1.SetAsync(cacheKey, new TestCacheEntry("irrelevant"));
        fakeDistributedCache.GetAsync(cacheKey).Should().NotBeNull("it should now be stored in distributed cache");
        (await fusionCache1.TryGetAsync<TestCacheEntry>(cacheKey)).HasValue.Should().BeTrue("cache hit in fusionCache1's memory");

        // The second fusion cache instance should still read from distributed cache on memory cache miss.
        (await fusionCache2.TryGetAsync<TestCacheEntry>(cacheKey)).HasValue.Should().BeTrue("cache miss in fusionCache2's memory, but should have cache hit in distributed cache");
    }

    private record TestCacheEntry(string Value);

    private class FakeDistributedCache : IDistributedCache
    {
        private readonly ConcurrentDictionary<string, byte[]> _cache = new();
        public byte[]? Get(string key)
        {
            return _cache.GetValueOrDefault(key);
        }

        public Task<byte[]?> GetAsync(string key, CancellationToken token = new CancellationToken())
        {
            return Task.FromResult(_cache.GetValueOrDefault(key));
        }

        public void Refresh(string key) { throw new System.NotImplementedException(); }

        public Task RefreshAsync(string key, CancellationToken token = new CancellationToken()) { throw new System.NotImplementedException(); }

        public void Remove(string key)
        {
            _cache.Remove(key, out _);
        }

        public Task RemoveAsync(string key, CancellationToken token = new CancellationToken())
        {
            _cache.Remove(key, out _);
            return Task.CompletedTask;
        }

        public void Set(string key, byte[] value, DistributedCacheEntryOptions options)
        {
            _cache.AddOrUpdate(key, value, (key, existing) => value);
        }

        public Task SetAsync(string key, byte[] value, DistributedCacheEntryOptions options, CancellationToken token = new CancellationToken())
        {
            _cache.AddOrUpdate(key, value, (key, existing) => value);
            return Task.CompletedTask;
        }
    }
}

Expected behavior
Skip distributed cache only on stale value in memory cache, don't skip on missing value in memory cache.
Versions
I've encountered this issue on:

FusionCache 0.24.0
.NET 7.0
Windows 11

Screenshots
None.
Additional context
Not sure if this is a bug or as intended, but it was not intuitive for me based on the name SkipDistributedCacheReadWhenStale and its xmldoc:

When a 2nd layer (distributed cache) is used and a cache entry in the 1st layer (memory cache) is found but is stale, a read is done on the distributed cache: the reason is that in a multi-node environment another node may have updated the cache entry, so we may found a newer version of it.
There are situations though, like in a mobile app with a SQLite 2nd layer, where the 2nd layer is not really "distributed" but just "out of process" (to ease cold starts): in situations like this noone can have updated the 2nd layer, so we can skip that extra read for a perf boost (of course the write part will still be done).
TL/DR: if your 2nd level is not "distributed" but only "out of process", setting this to true can give you a nice performance boost.

Our use case was a Blazor web app, where we store order details in browser local storage to resume after redirecting to a payment method provider and back again. There is no central storage available.
We configure FusionCache to use browser local storage as distributed cache to persist the order, but setting SkipDistributedCacheReadWhenStale = true resulted in not reading from browser local storage due to a miss in memory cache. This is then due to Blazor creating scoped resources per circuit, which in practice is for each full page load. So when redirecting back from the payment method provider to our app, a new FusionCache instance and memory cache instance is created.
A more common use case is the "cold start" scenario in xmldoc, getting cached values persisted to disk on startup or after restarting a .NET application, using disk as distributed cache.

Hi @angularsen the behavior should be the one you expected, so it seems like you hit a bug: maybe it's because of one of the changes I've made recently, but it's strange that the tests didn't catch that.
I'll be able to take a look at that after christmas, will let you know.
Thanks for pointing that out!

Great! Thanks for the speedy response. No rush on my end, have a great holiday!

Hi @angularsen , upon further inspection it seems like we were both kinda right 😅
Basically in the "get or set" code path the check was correct, whereas in the "get only" code path (eg: TryGet/GetOrDefault) the check was not correct.
I tried to keep them as "aligned" as possible, but this escaped my efforts.
Now it's fixed in the new branch, and with the next release will be fixed.
Thanks for reporting it!

While we are here, a couple of notes.
First is a curiosity: why did you create a custom IDistributedCache implementation that works only in memory, instead of using the existing one MemoryDistributedCache? I was wondering if you had a particular reason.
Also, watch out for a couple of things in this line:
fakeDistributedCache.GetAsync(cacheKey).Should().NotBeNull("it should now be stored in distributed cache");

First, since you are calling the async version (fakeDistributedCache.GetAsync(cacheKey)) and you are not using the await keyword, what you are in fact testing is the returned Task<T> which will always be non null, and not the returned cached value itself.
Second, I see you are using the same cacheKey to directly access the distributed cache, and typically the cache key is modified when talking to that (read here for more) so in theory it would always fail.
Hope this helps.

Oh yeah, you are absolutely right about the two mistakes in the test code. I just threw it together real quick and the results matched what I saw in production code so I thought I got it right 😓😄
What you say about Get vs GetOrSet makes sense to me, we rarely use Get-path and I guess most other people also use it less frequently, which could explain why it took time to discover.
No good reason to not use MemoryDistributedCached, I could not think of any ready to go implementation in the heat of the moment so I just wrote my own for this piece of test code.
Thanks for the swift investigation and pointing out the mistakes, much appreciated 🙇 Will give the new version a go soon.

Hi @angularsen , I just released v0.25.0-preview1 🎉
This version includes the fix related to this issue, so if you can give it a try it would be great, thanks!

Perfect, will give it a go soon when I'm done wrapping up another small project.

Hi @angularsen , I just release v0.25.0 🥳

Perfect thank you, haven't had time to try it yet but will do.

It took me a while to get back to this, but I've tried v0.26 and this fix seems to work. Thanks!


[Fix][Android] Error: 'onChange' overrides nothing on<EMAIL_ADDRESS>

Issue: https://github.com/AzizAK/react-native-detector/issues/22
tested on a real device:

[x]<EMAIL_ADDRESS>listener work as expected (build error is gone)
[x]<EMAIL_ADDRESS>listener work as expected

@AzizAK Hi Could you please review this PR ?

Merged & released new version,
Thanks David really appreciate your contributions, and sorry for the delay i'm traveling right now so I have limited access to the internet


review 1

Coverage decreased (-0.3%) to 85.446% when pulling 056c69889c93b237ecf5104c9eac54fe88766943 on dpolivaev:master into 05ed5230f8d9e195af7560117696a48121169e8c on Mercateo:master.

Coverage decreased (-0.3%) to 85.446% when pulling 056c69889c93b237ecf5104c9eac54fe88766943 on dpolivaev:master into 05ed5230f8d9e195af7560117696a48121169e8c on Mercateo:master.

Coverage increased (+0.04%) to 85.022% when pulling c9b2711ec0fd72b0e1a95ddb41a23fac611a8734 on dpolivaev:master into 60654d6a7ed3a5a085928dadca7d3e6b5700d827 on Mercateo:master.

Coverage increased (+0.04%) to 85.022% when pulling 9fe19cd8a44b033f480529d4b1e6c5a41c3bfe60 on dpolivaev:master into 60654d6a7ed3a5a085928dadca7d3e6b5700d827 on Mercateo:master.

Coverage increased (+0.04%) to 85.022% when pulling aedfaf2a7e8576f46c03f3b51fa000a930f72f98 on dpolivaev:master into 60654d6a7ed3a5a085928dadca7d3e6b5700d827 on Mercateo:master.

Coverage increased (+0.04%) to 85.022% when pulling ba49845a1ef1fc091775a6e578b1675f6963008a on dpolivaev:master into 60654d6a7ed3a5a085928dadca7d3e6b5700d827 on Mercateo:master.

Coverage increased (+0.04%) to 85.022% when pulling 8db94f40871f85ad13256a9ef1f843198af36d77 on dpolivaev:master into 60654d6a7ed3a5a085928dadca7d3e6b5700d827 on Mercateo:master.


implement speedups with rust v2

pip install -e . in a virtualenv should build src/markupsafe/_rust_speedups.???.so, assuming you have Rust installed.
python bench.py to run all benchmarks, rust included. Here's the results on my machine:
$ python bench.py

short escape native: Mean +- std dev: 656 ns +- 12 ns
short escape speedups: Mean +- std dev: 417 ns +- 7 ns
short escape rust_speedups: Mean +- std dev: 522 ns +- 15 ns

long escape native: Mean +- std dev: 17.3 us +- 0.2 us
long escape speedups: Mean +- std dev: 7.79 us +- 0.14 us
long escape rust_speedups: Mean +- std dev: 6.71 us +- 0.08 us

short plain native: Mean +- std dev: 505 ns +- 9 ns
short plain speedups: Mean +- std dev: 349 ns +- 5 ns
short plain rust_speedups: Mean +- std dev: 401 ns +- 4 ns

long plain native: Mean +- std dev: 17.2 us +- 0.1 us
long plain speedups: Mean +- std dev: 7.77 us +- 0.10 us
long plain rust_speedups: Mean +- std dev: 6.73 us +- 0.15 us

long suffix native: Mean +- std dev: 134 us +- 1 us
long suffix speedups: Mean +- std dev: 131 us +- 1 us
long suffix rust_speedups: Mean +- std dev: 58.3 us +- 1.2 us

I'll have to run it on my machine for an exact comparison, but those are some good performance numbers compared to the C. The long escape and long plain ratios are significantly better, and the long suffix is equal rather than slower.

Simplified the rust speedups to use a lookup table instead of relying on auto-vectorized simd. The advantages of this are that it's not as messy, doesn't use advanced rust features, doesn't use unsafe*, and slightly faster for the workloads in bench.py. I'm sure this still could be simd-accelerated, but not portably.
*potentially eating the conversion cost if the PyString is stored as utf-16 or unicode 32-bit

@davidhewitt thanks for looking at this. In #461 we're setting up wheel builds for 313 and 313t (free threading). Say we were to add the features = ["abi3"] suggestion you made above. How would we deal with the free threading build? Presumably, we'd offer an abi3 wheel, and then also a 313t wheel that's not abi3? How would we configure pyo3 and cibuildwheel to handle both of those?

For ease of use, currently at the moment if you have the abi3 feature set but you're building on the freethreaded Python we'll ignore it and build for the freethreaded ABI. I understand in 3.14 there's possibility of a new stable abi which supports freethreading, so that might change in future.
I am not super familiar with cibuildwheel configuration 🙈, though I assume that the Rust build would work the same way as building a freethreaded C wheel.

Though note also that PyO3's freethreaded support is not complete yet / keeping me up at night / should drop soon-ish in our 0.23 release.


🐛 Fix root phase 0 bootstrapping sometimes failing

Summary
Make sure that when binding root APIs, we keep retrying updates until they succeed.
Related issue(s)
Fixes #2148

/approve

/lgtm


Print <failure> nodes for all hook failures in the junit output

In the Junit printer currently we were only adding some <failure> nodes in the case of failures in BeforeStep or AfterStep hooks. If there was any failure in any of the other hooks, nothing was printed on the output file.
In this PR we change this behaviour so that for each hook failure we will add a <failure> node at the <testcase> level, so that the output will look like this:
<?xml version="1.0" encoding="UTF-8"?>
<testsuites name="default">
  <testsuite name="Simple feature" tests="1" skipped="0" failures="0" errors="0" time="-IGNORE-VALUE-">
    <testcase name="Simple scenario" classname="Simple feature" status="passed" time="-IGNORE-VALUE-" file="features/simple.feature">
      <failure message="Error in afterScenario hook (Exception)" type="teardown"></failure>
    </testcase>
  </testsuite>
</testsuites>

For suite/feature hooks, this failure node will be added to the first (for before hooks) or last (for after hooks) of the scenarios in the feature/suite
You will notice that the scenarios will be considered skipped (for before hooks) or passed (for after hooks), initially I considered changing this but then I realised this is how they are treated in the other printers (pretty and default) so changing this behaviour will probably be a BC break. So, I believe that we should probably change this behaviour so that failed hooks make the related scenario(s) to fail, not be skipped or pass, but this should be done separately in a new branch for a new major version and it should affect all formatters.
Fixes https://github.com/Behat/Behat/issues/1195

Just seen that there is a failing test case, will work to fix this

Fixed, needed to modify the output of another junit test

Mmm, there is a failure in the Windows tests related to the separator used in paths, I wonder how they manage this in other tests, looking into it

Mmm, there is a failure in the Windows tests related to the separator used in paths, I wonder how they manage this in other tests, looking into it

Fixed 🎉

Changed to draft as I want to add a change

This is now ready to be reviewed

@acoulton thanks for your comments, this has been updated


Add all-caps rule

Addresses #604.
Enforces the use of const for all-caps variable names. For example:
let PI = 3.1415926535; // bad
const SECONDS_IN_A_DAY = 86400; // good

Thanks for the PR! I think this should be an option on the variable-name rule instead of a whole new rule though.

Hmm, are you sure? The two rules seem pretty orthogonal to me.
I can imagine a user wanting to enforce this rule but wanting to use a different capitalization convention than the one variable-name enforces (camelCase and UPPER_CASE), such as  lower_case and UPPER_CASE.

@adidahiya What do you think?

Sorry for the delay on this one. I think it should be a new option on variable-name as well.
We should be able to support options like this, right?
"variable-name": {
  "check-format": false,
  "ban-keywords": false,
  "all-caps": true
}

what about this instead?
"variable-name": {
  "check-format": false,
  "ban-keywords": false,
  "all-caps-for-const": true
}


fix: hmr: false doesn't disable Hot Module Replacement

Summary
webpacker-dev-server >= 4 enables HMR by default, so explicitly disable when hmr: false. Fixes #390
Pull Request checklist

[x] Add/update test to cover these changes
[x] ~Update documentation~
[x] Update CHANGELOG file

@thedanbob can I get a link to the docs or source code of the '--no-hot' option?

@justin808
In the readme of the webpack-dev-server, it is mentioned.
Apart from that, all of the options in webpack CLI can be reverted by using no prefix. This is why no explicit reference or implementation of --no-hot exists in the code base. --no-hot is simply the opposite of --hot, so it sets hot to false.

@justin808 I just checked and this would work as well, and is perhaps cleaner:
cmd += ["--hot", (@hot || false).to_s] if @hot != true

Of course I'll have to adjust the tests to match. Probably making the default (in the tests) as hmr: true would be best, as @ahangarha suggested.

@thedanbob

cmd += ["--hot", (@hot || false).to_s] if @hot != true

I prefer a more visible code in more lines over one-liners. It is simpler to read, understand, and debug.

How does this look? I went ahead and changed the tests to use hmr: true. My implementation did have a side effect on a couple of inlining_css tests but I think the behavior change is unimportant?

Thanks @thedanbob!


fix: Use macos-latest to see if we can bump info.plist

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


[Bug]: Images built not saved in the local image store

What happened?
Hi,
I tried to build a Beam Go SDK container by running ./gradlew :sdks:go:container:docker. The build succeeded but when I do docker image ls or docker images, I couldn't find the image built and saw WARNING: No output specified with docker-container driver. Build result will only remain in the build cache. To push result image into registry use --push or to load image into docker use --load. So though the build is finished, the image built is not saved and disappeared.
Based on what I found here: https://docs.docker.com/build/drivers/docker-container/, this is because it is using the docker-container driver and "unlike when using the default docker driver, images built with the docker-container driver must be explicitly loaded into the local image store. Use the --load flag."
Therefore, I tried to add load true as the last line in the docker task in sdks/go/container/build.gradle and ran the same build command again. Then I was able to find the apache/beam_go_sdk container locally. The same issue exists for all Beam Python and Java SDK containers. And adding load true as the last line in the docker task in sdks/$LANGUAGE/container/common.gradle will resolve it.
However, one other thing worth noting is that if we want to build multi-arch images by adding, for example,-Pcontainer-architecture-list=arm64,amd64 to the build command, load true will make the build fail because ERROR: docker exporter does not currently support exporting manifest lists to local image store.
An alternative solution will be adding push true (which is mutually exclusive with load true) and it will automatically push the image built to the specified repository. A multi-arch image can be built and pushed this way. If no repository is specified, the build will fail because it will by default try to push the image to the apache repository, to which we don't have permission.
Conclusively, we can make the below changes in the corresponding common.gradle and build.gradle files:

if multiple architectures are passed as argument, set push true, build and push the image to the specified repository and if no repository specified, throw an informational error such as ERROR: docker exporter does not currently support exporting manifest lists, to save multi-arch images, please specify a repository to push;
otherwise set load true and always load the image built to local image store by default.

Any other suggestions are welcomed, thanks!
Issue Priority
Priority: 1 (data loss / total loss of function)
Issue Components

[X] Component: Python SDK
[X] Component: Java SDK
[X] Component: Go SDK
[ ] Component: Typescript SDK
[ ] Component: IO connector
[ ] Component: Beam examples
[ ] Component: Beam playground
[ ] Component: Beam katas
[ ] Component: Website
[ ] Component: Spark Runner
[ ] Component: Flink Runner
[ ] Component: Samza Runner
[ ] Component: Twister2 Runner
[ ] Component: Hazelcast Jet Runner
[ ] Component: Google Cloud Dataflow Runner

.take-issue

cc: @robertwb due to multi-arch docker images

Do I understand correctly that the build is literally useless, because the artifact is immediately discarded?
Or is there some way that the artifact turns out to be used in downstream gradle builds?

Sorry for the late reply. I think the artifact is discarded and can't be found.


fix(build): fix authentication failure during Validate

Description
Validate command does not pass devhub alias to BuildImpl, causing failure when
building packages.
Checklist
All items have to be completed before a PR is merged

[x] Adhere to Contribution Guidelines
[x] Updates to Decision Records considered?
[x] Updates to documentation at DX@Scale Guide considered?
[x] Tested changes?
[x] Unit Tests new and existing passing locally?

Codecov Report

Merging #1045 (28bd8e8) into develop (0b30fff) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff            @@
##           develop    #1045   +/-   ##
========================================
  Coverage    59.55%   59.55%
========================================
  Files           52       52
  Lines         1674     1674
  Branches       357      357
========================================
  Hits           997      997
  Misses         634      634
  Partials        43       43

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 db3cd16...28bd8e8. Read the comment docs.


Layout - Maximum Category Width Option is missing

In other visuals, generally this option is available in x axis options

, but not in simple waterfall chart. (Screenshot attached).
Expected Behavior

Current Behavior

Possible Solution

Steps to Reproduce (for bugs)

Context

Screenshots

We have an option to adjust minimum bar width in X-Axis formatting options. This will only work when 'Fi To Width' is disabled


Document types specified in 7.1 Transaction Encoding and Consensus as part of the consensus rules

For each consensus rule:

check that the rule is implemented in Zebra
make sure the latest version of the rule is quoted in the docs for the code that implements it
make sure the code implements the latest version of the rule

Subtasks

[x] #3420
[x] #3421
[x] #3422
[x] #3423
[x] #3424

Zcash transaction format
https://zips.z.cash/protocol/protocol.pdf#txnencoding
Up to transaction v4

Transaction v5

Implementation

See #3223

Not sure if we can do any easy documentation here or if it's all over the codebase...

Not sure if we can do any easy documentation here or if it's all over the codebase...

The format specs should documented where the types are serialized and deserialized.

Here is the split I'd suggest, because it matches the structure of Zebra's code (and also the spec):

transaction header
transparent
sapling
sprout
orchard

You can see this split in the v5 transaction format, it's indicated using double lines. v1-v4 should follow the same split, even though the field order is different. The leftover JoinSplit fields are sprout fields.
We should cover all relevant transaction versions as part of each sub-ticket. (The code is repeated but usually identical.)
@mpguerra can you assign people to the sub-tasks after you've split this task?

Closed by https://github.com/ZcashFoundation/zebra/pull/3491, https://github.com/ZcashFoundation/zebra/pull/3498, https://github.com/ZcashFoundation/zebra/pull/3499, https://github.com/ZcashFoundation/zebra/pull/3501 and https://github.com/ZcashFoundation/zebra/pull/3507


incorrect m3a format in alphafold

When describing the deletion_probability feature for alphafold, you specify the fact that you use the m3a format from hhblits.
To quote hhblits' github on the m3a format:

residues emitted by Match states of the HMM are in upper case, residues emitted by Insert states are in lower case and deletions are written -.

In the m3a format, the sequences of the MSA are not necessarily of equal length, and deletions are denoted by "-", whereas lowercase letters denote insertions and cause the disparities in sequence length:
A B C        Original sequence
A - E        Sequence where residue 2 was deleted, residue 3 was substituded
A d B C      Sequence where a residue d was inserted between residue 2 and 3.
             Note that now the residue B no longer aligns with that of the original sequence.

This means your description of the deletion_probability feature makes no sense: not just should we count "-" rather than lowercase letters if we are looking for deletions, but aligning the residues by column makes no sense in the a3m format, since the lengths dont match.
Assuming that the name deletion_probability is not a misnomer, one has to instead remove all lowercase letters form the a3m MSA and then count the number of "-" per column to obtain the probability of a deletion of a particular residue in the MSA.
Is my reasoning here correct, or am I missing something important?

I agree with your opinion. The description was strange to me for the same reason.

Hi, thanks for the feedback. You are right, the description of the deletion_probability feature wasn't correct, I fixed it and added a code snippet to show how we compute the deletion_probability feature to make it clearer.
On the insertion vs deletion comment: I agree that our naming is misleading -- we call them 'deleted' residues because they have to be deleted in order for the sequence to align to the query.

Thank you for the update.


[Feature] Thread and task logging

🚀 Feature
snarkOS needs additional metric logging. The node spins up many tasks/threads without much management/tracking.
Motivation
snarkOS currently has very limit benchmarking and logging, especially in the network component of the node. In order to effectively reason about the performance of the node, we need more accurate logging and analytics of the underlying operations of the node.
Implementation
Each task/thread can be named by a builder in the executors (i.e. tokio or async-std) and have state/progress logged to an output file. Analytics can be run externally on the log files similar to gain insight into what needs to be updated in the system.
See https://perf.rust-lang.org/ for an example metrics page.

We've added a lot of logging improvements, but they don't go down to the thread-specific level.
Should we close this issue out?

We're already keeping track of all our threads and tasks and close all of them when they are no longer needed; the only extra thread (other than tokio's threadpool) right now (1.3.7) is the miner thread.
We could add task info for logging, as the logs can always be improved, but the situation is no longer limited or inaccurate.

I'd like to see us improve our overall logging to make it more concise, meaningful, and structured; however, I believe this particular issue as described here has been resolved.  Like you said, there's always room for improvement, and I'll create new issues to track specific improvements we should make to our logging.


BUG: Destination section not working properly

Hello @apu52 , in destination section, images are not being displayed. Also on clicking destination in navbar, scroll is not working.
Screenshots (Mandatory)

Additional Context (Mandatory )
Kindly assign me this issue under GSSoC'24. I'll do my best.
Are you contributing under any open-source program ?
Yes, I am contributing under GSSoC'24.

@Dilpreet0501 this issue is already present in this repo & also assigned.


Research Pubkey rotation for Bridge account

Research the SDK / accounts pub key configuration and think about whether we can have this done automatically by the validators f.e
Or implement a script that will be executed by every validator etc.

make a list of the keys
how they could be rotating
Ethereum contracts

-> account update transaction

Research contracts and Hedera account


feat(core): use "_merge" in Sentinel Shield effects

This provides a helpful example of how/why to use this, as the
"flags.dnd5e.initiativeAdv" effect is built in to Plutonium already.

LGTM. Going forward we'll need to review data of current plutonium and migrate data to core and also flag relevant addon data for review any time the core plutonium effects update. This is an opportunity to improve baseline plutonium effects.

Going forward we'll need to review data of current plutonium and migrate data to core
I imagine most core AEs are written as data.<stuff> or flags.dnd5e.<stuff>, and any exceptions will be documented somewhere. I could write a script (in Powershell, or nodeJS if you ask really nicely and make me pull my hair out 🥴🤏) to search our data for those, rip them out, and then insert them into the core 5eT data as appropriate. Could either be run manually or as an automated action if Github lets you do things like that.

Also all good by me 👌


Allocator reorg & simplify

Reorganise plan data components into core/data
Move Allocator into core/allocator
Simplify Plan to reference just a list of particles
Remove legacy logic for storage key protocol choice

@shans this PR removes Handle and Plan only contains ParticleSpecs now. Are you planning to add Handles later? I'm asking because TTLs belong on the Handle.


Fixed a bug when scroll after invoke setPages

@ealeksandrov

I can't reproduce a bug. Can you share example code to force a crash?

Hi dear,
It was long time ago, I can only recall this:

When you try to invoke setPages method after you have init EAIntroView, it will crash.
Say you have 3 pages, so it looks like this:
eaIntroView.page = 3, and then you insert a new page eaIntroView.page = 4.
And it crash.


SwapOf2Num without using any Arithmetic operations..

Betwise operators are used please assign me this...
swap.txt

please assign me this @shamilthomas8


Device location verification API  only checks longitude

For the Device Location Verification API, It can verify when the device's latitude and longitude is matching the query.
{
   "status":200,
   "method":"POST",
   "endpoint":"location-verification",
   "api":"verify",
   "accessToken":"Bearer xxxxx",
   "phoneNumber":"00000000",
   "message":"location-verification request successful",
   "datetime":"2024-10-05T19:13:36.170Z",
   "cell":{
      "phoneNumber":"00000000",
      "name":"team x",
      "message":"Hi",
      "accessToken":"Bearer xxxxx"
   },
   "device":{
      "phoneNumber":"00000000"
   },
   "area":{
      "type":"Circle",
      "location":{
         "latitude":49.261177,
         "longitude":-123.249161
      },
      "accuracy":12000
   },
   "verificationResult":true,
   "lastLocationTime":"2024-10-05T19:13:36.170Z"
}

And when I change the longitude something incorrect, it does return false for the verification result
{
   "status":200,
   "method":"POST",
   "endpoint":"location-verification",
   "api":"verify",
   "accessToken":"Bearer xxxxx",
   "phoneNumber":"00000000",
   "message":"location-verification request successful",
   "datetime":"2024-10-05T19:13:36.170Z",
   "cell":{
      "phoneNumber":"00000000",
      "name":"team x",
      "message":"Hi",
      "accessToken":"Bearer xxxxx"
   },
   "device":{
      "phoneNumber":"00000000"
   },
   "area":{
      "type":"Circle",
      "location":{
         "latitude":49.261177,
         "longitude":123.249161
      },
      "accuracy":50
   },
   "verificationResult":false,
   "lastLocationTime":"2024-10-05T19:13:36.170Z"
}

However, when I query it with the wrong latitude value it still returns true.
{
   "status":200,
   "method":"POST",
   "endpoint":"location-verification",
   "api":"verify",
   "accessToken":"Bearer xxxxx",
   "phoneNumber":"00000000",
   "message":"location-verification request successful",
   "datetime":"2024-10-05T19:13:36.170Z",
   "cell":{
      "phoneNumber":"00000000",
      "name":"team x",
      "message":"Hi",
      "accessToken":"Bearer xxxxx"
   },
   "device":{
      "phoneNumber":"00000000"
   },
   "area":{
      "type":"Circle",
      "location":{
         "latitude":1,
         "longitude":-123.249161
      },
      "accuracy":50
   },
   "verificationResult":true,
   "lastLocationTime":"2024-10-05T19:13:36.170Z"
}

So i think that it is currently only checking the longitude of the coordinates of the device for if it is in the correct location as it also does error if both longitude and latitude are incorrect
{
   "status":200,
   "method":"POST",
   "endpoint":"location-verification",
   "api":"verify",
   "accessToken":"Bearer xxxxx",
   "phoneNumber":"00000000",
   "message":"location-verification request successful",
   "datetime":"2024-10-05T19:24:52.281Z",
   "cell":{
      "phoneNumber":"00000000",
      "name":"team x",
      "message":"Hi",
      "accessToken":"Bearer xxxxxx"
   },
   "device":{
      "phoneNumber":"0000000"
   },
   "area":{
      "type":"Circle",
      "location":{
         "latitude":50.735851,
         "longitude":7.10066
      },
      "accuracy":50
   },
   "verificationResult":false,
   "lastLocationTime":"2024-10-05T19:24:52.281Z"
}

Try reducing your accuracy to the scale of 0.1 - 0.01. Your accuracy value is to large and I believe that is what is causing the problem. I've tested this with lower accuracy values and it correctly reports for different latitudes.

Looks liked the accuracy is in degrees not meters


tesstrain.sh

Hi,
When i run:
tesseract/src/training/tesstrain.sh --fonts_dir /usr/share/fonts --lang eng --linedata_only --noextract_font_properties --langdata_dir ./langdata --tessdata_dir ./tessdata --fontlist Arial --output_dir ./tesstutorial/engtrain
Ii am getting the error as below
ERROR: /tmp/eng-2019-08-02.hxh/eng.Arial.exp0.tif does not exist or is not readable
can you please help me with this.

Please use forum for asking questions.
Most probably you do not have the font Arial in /usr/share/fonts


Integrate zk-SNARK parameters directly into the zebrad binary

The Sapling zk-SNARK parameters are small enough that it's sensible to store them in the zebrad binaries themselves so that users don't have to download and store them separately on disk, which is annoying. The Sprout (groth16) parameters are large, but only a minuscule portion of the Sprout parameters are actually needed by zebrad to verify Sprout transactions and these parameters can be stored directly in this repository and include_bytes!'d at compile time.
I wrote a draft PR for zcashd where we are considering doing the exact same thing. The PR uses the wagyu-zcash-parameters Rust crate so that Sapling parameters are effectively downloaded by cargo at compile time. Also in this proposed change for zcashd, people who need to create Sprout proofs will have to independently download the Sprout proving key like before, but by default this is not required. zebrad would need no such compatibility hack, because as far as I know Sprout proving is not supported nor will it be in the future.
Is this something the project would be interested in adding? If so I might be able to throw a PR up here along the lines of my PR in zcashd.

I think this would make our CI and zebrad startup more reliable, at the cost of larger build caches and longer link times.
Overall it could be a positive step, but I'd like to check with other Zebra developers first.
We're already using zcash_proofs to download parameters, so it would be easiest for us if we could just switch the functions we're calling in that crate.

is this a duplicate of #7613 ?

Yes, I think we accidentally made a duplicate because I'd forgotten about this ticket.
@ebfull no need to make a PR, I opened PR #7800.


[documentation] Installing git subtree on Drupal VM

I'm exploring the usage of git subtree with my agency's Acquia account and wish to do some testing on the usage and in general to get some experience before looking into proper subtree CI procedures on a production/development server.
As subtree is a module which ships from git's repository, could anybody enlighten me on how to get started on the setup specific to Drupal VM?

Git subtrees just allow you to add a Git repository as a 'child' of another Git repository—see the following articles for help:

http://blogs.atlassian.com/2013/05/alternatives-to-git-submodule-git-subtree/
https://gist.github.com/kvnsmth/4688345

But a lot of projects take another approach, using Composer to manage Drupal VM as a dependency. For example, see how BLT is going to integrate Drupal VM: https://github.com/acquia/blt/pull/105
This isn't really something that would be Drupal VM-specific, so I'm going to close the issue; but anyone else who uses Drupal VM as a subtree or submodule, please chime in with benefits/drawbacks/gotchas here.

I used Drupal VM as a submodule since a year ago or so, up until 3.0.0 (yey). There's a section on how to set it up in the docs. I didn't really find any drawbacks besides the usual submodule drawbacks.

I feel my question was misunderstood, but I'm going to just create some tasks to implement https://github.com/travis-ci/travis-ci/issues/2002#issuecomment-43331703

@fubarhouse is there a specific reason for using a subtree over a submodule? Whilst Acquia don't support submodules you can still use it for something like Drupal VM as you never need to checkout the submodule on an Acquia environment and the submodule can still be checked out on travis/jenkins etc.
Wouldn't recommend using a subtree in this case as you probably don't want to track the whole DVM project only your custom config.

Let's just say I have a niche which has a far bigger scope than just Drupal VM.
Drupal VM is fantastic, but our setup has far more built onto it and subtrees fits the bill for what we're trying to achieve.
I've attempted to work with submodules as it was my preference until I actually started working with it, and I've basically built a preference for this alternative - which is also officially supported by git.

Sounds interesting we currently reuse our local (YAML) VM config for our CI environment, which means we can effectively branch and test our infrastructure changes alongside normal project features.
It obviously adds a bit of time to each test as it needs to provision first but it also gives us the flexibility quickly test the impact of any infrastructure changes. We're also working towards implementing LXD to cache the provisioning step to speed up builds and only rebuild if config changes are found.

@thom8 - You need to blog some about these things, and get your posts on Drupal Planet... it sounds like you're doing some amazing work! :)

@geerlingguy if only there were more hours in a day! 2 contracts & 2 kids keep me pretty busy ATM.

@thom8 you can always sacrifice sleep. Sponsored by Coca-Cola® and Red Bull®
/s


Fix TOC link

...cause I guess I saw it and thought I'd fix it. 😳

lol, good eye but I'm merging the refactor branch tomorrow methinks (blasts the README). Merging tho! 💃


Fix data issue from Facebook Graph API

Due to some changes in the new version of the Graph API, the requests we are sending return the following error
facebook: Please reduce the amount of data you're asking for, then retry your request
We might be able to fix this issue by reducing the fields in the request or by making the request in two parts
Reference:
https://stackoverflow.com/questions/55429860/facebook-api-reduce-the-amount-of-data-youre-asking-for-then-retry-your-requ

The problem was solved by updating the token with one generated by using a previous version of the API.


Traffic lights  when sidebar is right positioned

Hi,
Thanks for this extension!
Is there any workaround for this?

@drcika 0.0.5 did not solve it :(
Should you reopen this?

provide some more detail, how to reproduce

Like this, with sidebar at right
"workbench.sideBar.location": "right",
"window.titleBarStyle": "native",
 "apc.activityBar": {
        "position": "bottom",
        "size": 30,
    },
    "apc.electron": {
        "titleBarStyle": "hiddenInset",
    }

I can not reproduce

Well, I don't know why... but:

I need to to full clean uninstall as described here https://code.visualstudio.com/docs/setup/uninstall#_clean-uninstall
After that installed again this extension.

It only happens to me if I leave the sidebar on the left, it gets fixed if I move to the right.
The sidebar on right

The sidebar on left


Using the default recommended keys working but Enter key didn't work

[ids]

*

[main]

shift = oneshot(shift)
meta = oneshot(meta)
control = oneshot(control)

leftalt = oneshot(alt)
rightalt = oneshot(altgr)

capslock = overload(control, esc)
insert = S-insert

Why my enter didn't working?
showmetheykey-gtk show that my enter is inputted, but keyd ignore it

keyd -l
it didn't have return
why keyd didn't have return as List key names?

without keyd running
BY Tech Gaming Keyboard	258a:0049	enter down
BY Tech Gaming Keyboard	258a:0049	enter up
AT Translated Set 2 keyboard	0001:0001	enter down
AT Translated Set 2 keyboard	0001:0001	enter up

with keyd running
keyd virtual device	0fac:0ade	enter down
keyd virtual device	0fac:0ade	enter up
keyd virtual device	0fac:0ade	enter down
keyd virtual device	0fac:0ade	enter up

but keyd enter didn't working.
there is something weird too, as soon as I start keyd service, it keep spamming enter until I press ctrl-c, but it not work ever again


Empty String Crash 4.0.3A update

Crash Report:
---- Minecraft Crash Report ----
// Surprise! Haha. Well, this is awkward.
Time: 5/31/15 6:03 PM
Description: Exception ticking world
java.lang.IllegalArgumentException: Empty string not allowed
at net.minecraft.nbt.NBTTagString.(SourceFile:15)
at net.minecraft.nbt.NBTTagCompound.func_74778_a(SourceFile:84)
at net.minecraftforge.fluids.FluidStack.writeToNBT(FluidStack.java:95)
at erogenousbeef.bigreactors.common.multiblock.helpers.FluidHelper.writeToNBT(FluidHelper.java:119)
at erogenousbeef.bigreactors.common.multiblock.helpers.CoolantContainer.writeToNBT(CoolantContainer.java:67)
at erogenousbeef.bigreactors.common.multiblock.MultiblockReactor.writeToNBT(MultiblockReactor.java:568)
at erogenousbeef.bigreactors.common.multiblock.MultiblockReactor.formatDescriptionPacket(MultiblockReactor.java:614)
at erogenousbeef.core.multiblock.MultiblockTileEntityBase.encodeDescriptionPacket(MultiblockTileEntityBase.java:180)
at erogenousbeef.core.multiblock.MultiblockTileEntityBase.func_145844_m(MultiblockTileEntityBase.java:160)
at net.minecraft.server.management.PlayerManager$PlayerInstance.func_151252_a(PlayerManager.java:705)
at net.minecraft.server.management.PlayerManager$PlayerInstance.func_73254_a(PlayerManager.java:648)
at net.minecraft.server.management.PlayerManager.func_72693_b(PlayerManager.java:101)
at net.minecraft.world.WorldServer.func_72835_b(WorldServer.java:185)
at WorldServerOF.func_72835_b(WorldServerOF.java:234)
at net.minecraft.server.MinecraftServer.func_71190_q(MinecraftServer.java:625)
at net.minecraft.server.MinecraftServer.func_71217_p(MinecraftServer.java:547)
at net.minecraft.server.integrated.IntegratedServer.func_71217_p(IntegratedServer.java:186)
at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:427)
at net.minecraft.server.MinecraftServer$2.run(MinecraftServer.java:685)
A detailed walkthrough of the error, its code path and all known details is as follows:
-- Head --
Stacktrace:
at net.minecraft.nbt.NBTTagString.(SourceFile:15)
at net.minecraft.nbt.NBTTagCompound.func_74778_a(SourceFile:84)
at net.minecraftforge.fluids.FluidStack.writeToNBT(FluidStack.java:95)
at erogenousbeef.bigreactors.common.multiblock.helpers.FluidHelper.writeToNBT(FluidHelper.java:119)
at erogenousbeef.bigreactors.common.multiblock.helpers.CoolantContainer.writeToNBT(CoolantContainer.java:67)
at erogenousbeef.bigreactors.common.multiblock.MultiblockReactor.writeToNBT(MultiblockReactor.java:568)
at erogenousbeef.bigreactors.common.multiblock.MultiblockReactor.formatDescriptionPacket(MultiblockReactor.java:614)
at erogenousbeef.core.multiblock.MultiblockTileEntityBase.encodeDescriptionPacket(MultiblockTileEntityBase.java:180)
at erogenousbeef.core.multiblock.MultiblockTileEntityBase.func_145844_m(MultiblockTileEntityBase.java:160)
at net.minecraft.server.management.PlayerManager$PlayerInstance.func_151252_a(PlayerManager.java:705)
at net.minecraft.server.management.PlayerManager$PlayerInstance.func_73254_a(PlayerManager.java:648)
at net.minecraft.server.management.PlayerManager.func_72693_b(PlayerManager.java:101)
at net.minecraft.world.WorldServer.func_72835_b(WorldServer.java:185)
at WorldServerOF.func_72835_b(WorldServerOF.java:234)
-- Affected level --
Details:
Level name: Test New World
All players: 1 total; [EntityPlayerMP['Baserunner0723'/35, l='Test New World', x=-241.93, y=64.00, z=197.20]]
Chunk stats: ServerChunkCache: 287 Drop: 0
Level seed:<PHONE_NUMBER>196375165
Level generator: ID 01 - flat, ver 0. Features enabled: true
Level generator options: 2;7,59x1,3x3,2;1;village,biome_1
Level spawn location: World: (-252,4,200), Chunk: (at 4,0,8 in -16,12; contains blocks -256,0,192 to -241,255,207), Region: (-1,0; contains chunks -32,0 to -1,31, blocks -512,0,0 to -1,255,511)
Level time: 14540 game time, 14540 day time
Level dimension: 0
Level storage version: 0x04ABD - Anvil
Level weather: Rain time: 54937 (now: false), thunder time: 127548 (now: false)
Level game mode: Game mode: survival (ID 0). Hardcore: false.
ThermalDynamics: -[1.7.10]1.0.0-122
Profiler Position: N/A (disabled)
Vec3 Pool Size: 0 (0 bytes; 0 MB) allocated, 0 (0 bytes; 0 MB) used
Player Count: 1 / 8; [EntityPlayerMP['Baserunner0723'/35, l='Test New World', x=-241.93, y=64.00, z=197.20]]
Type: Integrated Server (map_client.txt)
Is Modded: Definitely; Client brand changed to 'fml,forge'
If this is not the mod and something else, please let me know and if you can, help me fix it.

Game Crashed while trying to shut down reactor...


Cannot remove CC v1.8 (to upgrade to v1.9)

It's currently the v1.8.10107.10 installed in my VS Community Edition, and even though I download the latest installer for the v1.9.10714.2 and run it - the version installed is still v1.8.
I cannot even remove the older one: I run the installers "Remove" option and after it completes successfully - the extension is still in the VS.
How would I resolve that?

You're not the first person to be bothered by this! See #161.
I don't know the developers don't simply make a new version where the version number is correct...

@davidhesselbom thanks for the reference!


Testing accuracy on CNN Sentiment analysis

The validation accuracy is higher than the training accuracy?

For notebook 4? The validation and test are both lower than the training accuracy.


DCOS-47965 UI-Update Service client & data-layer

Adding client and data-layer for making queries and requests to the
dcos-ui-update-service.
Testing
Run unit tests, this will be used and testable by an upcoming feature.
Trade-offs

Dependencies

Screenshots

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


feat: added issue btns and respective forms

This PR solves the issue #24, kindly review it and merge.

@Mayank2808sharma kindly add the apt gssoc labels


SQL where equals subquery cannot build query plan

Affected Version
Version 0.15.0
Description
This query produces: Unknown exception (org.apache.druid.java.util.common.ISE): Cannot build plan for query
select * from "druid"."table"
where __time = (
select max(__time) as file_date from "druid"."table")
I also tried this on the date field but got the same:
select * from "druid"."table"
where file_date = (
select max(file_date) as file_date from "druid"."table")
I would have thought this would work?

Looks like you want to look at the last event (or few events) in your datasource. As of Druid 0.15.0 you can do:
select * from "druid"."table" ORDER BY __time DESC LIMIT 1

(or limit more than 1)

There are multiple records so that would have to be in the subquery. I
tried putting that in the subquery and it still doesn’t work.
So where __time = (select __time from ...) doesn’t work.
On Mon, 22 Jul 2019 at 18:04, Vadim Ogievetsky<EMAIL_ADDRESS>wrote:

Looks like you want to look at the last event (or few events) in your
datasource. As of Druid 0.15.0 you can do:
select * from "druid"."table" ORDER BY __time DESC LIMIT 1
(or limit more than 1)
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/apache/incubator-druid/issues/8123?email_source=notifications&email_token=AFM4Z4KYHX3TSUESBPOXOOTQAXSCVA5CNFSM4IFZ3NG2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD2QQLUA#issuecomment-513869264,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AFM4Z4ONPSNW54CNFOIGHBTQAXSCVANCNFSM4IFZ3NGQ
.

I think the issue in your query is that it can not build a query plan on an aggregate.
I just tested this:
select * from "wikipedia"
where "__time" IN (
  select "__time"
  from "wikipedia"
  WHERE "__time" >= CURRENT_TIMESTAMP - INTERVAL '1' HOUR
  GROUP BY 1
  ORDER BY "__time"
  DESC LIMIT 1
)

And it seems to work.

A couple of notes / thoughts:

I am not sure x = (sub query) is legal in SQL at all, I know IN is fine and that also makes more sense to me, I mean the sub query will be a set right?
Notice the filter on the inner query, filters make Druid super duper fast, scanning over all the data is not a good use of your servers. Any kind of dynamic filter that you can add to the inner query will do wonders to the speed.


Put actions as one batch

Is this possible to put several actions in batch else each put leads to re-render of components?
put([...actions]) or put(action1, action2, action3, ...) would be great.

I think this is more related to React/React-redux than redux-saga itself.
Related to 'physical rendering' (patching the real DOM) I think there is no worry here because React will batch (or debounce) multiple renders in the next animation frame.
Now for the 'logical render' (calling the render method of components) I can't say. It depends on how React-redux is implemented. Maybe @gaearon can tell us more about this.

React won't batch renders by default but you can tell it to with ReactDOM.unstable_batchedUpdates—either manually or via https://github.com/tappleby/redux-batched-subscribe.
In any case this is out of scope of Redux Saga.

React won't batch renders by default but you can tell it to

Didn't know that. I thought that animation frame debouncing was automatic

It batches updates if you're inside an event handler. So for dispatches caused by a click, for example, it will be fine. But it doesn't do that in other cases such as AJAX callbacks. There are plans to implement this for all cases but there hasn't been a dedicated effort yet.

So, if we dispatch all actions inside the same (micro)-task queue, this will be fine.

I'm not well versed in micro tasks in JS. I'm fairly certain React explicitly wraps its event handlers with batching but I don't think it works in other cases. Regardless you can always opt into this with the package I linked to and ReactDOM.unstable_batchedUpdates().

micro tasks (like used by promise.then) are executed withing the same event loop. Meaning even if the overall code triggered by the event handler dispatches multiples actions, We'll stay in the same event loop cycle, If React doesn't touch the DOM during this interval, no browser render will occur.
I mentioned them because redux-saga dispatches actions from Sagas using microtasks (using promises). If you look at the real-example bootstrap code you'll see I m delaying the render until the next animation frame. Otherwise, the Render will occur synchronously, and the Sagas may miss some startup events (especially the Router related events) because take effect will run only on a future microtask.
using requestAnimationFrame ensures Sagas are ready to take actions before the UI starts to fire anything. requestAnimationFrame will always be scheduled in a new macro-task, i.e. after all scheduled microtasks terminate

Interesting! Didn't know about React handlers. I have noticed that there is a difference while dispatching actions in component handlers and promise callbacks
So what do you suggest guys if I have similar code? I would like that last 3 put call will no call render each time
yield put(request())
        try {
            const state = getState()
            const login = state.LOGIN_VIEW.get('login')
            const password = state.LOGIN_VIEW.get('password')
            const data = {login, password}
            invalidate(data)

            const response = yield call(post, loginUrl(), data)
            yield put(success())
            yield put(user(response))
            yield put(navigate(V.USER_INFO_VIEW))
        }
        catch (error) {
            console.error(error)
            yield put(failure(error))
        }

I suggest you to use redux-batched-subscribe as I said above. Alternatively you can do this: https://github.com/tshelburne/redux-batched-actions

@yelouafi take care with requestAnimationFrame
I've been using it in the past and we got problems with text inputs where the caret jumped. I know Om uses requestAnimationFrame and they used to wrap the default react inputs to avoid this problem. I don't know if it works better by default today.

@gaearon Thx. I will try.

@slorber Didn't know that, thanks.
In the  real-world example I m using it only at the startup to delay the first Render. Until Sagas has finished with registring their take actions.

Does all serve the same purpose as batched-actions?  I am assuming no, but perhaps you can shed light on this, @yelouafi.

@jimbol
No, its doesnt serve the same purpose. You might know yield all() already as yield [...arrayOfEffects]. We've added this all as we prefer keeping things explicit (all effect) rather than implicit (yielding arrays).
all is by no means tied to puts. You can use with any other effect - useful with 2 parallel calls, or forks etc.
Keep in mind that due to synchronous nature of redux-saga and single-threaded javascript if you all([put(ACTION1), put(ACTION2), put(ACTION3)]) they will get dispatched to ur store one by one, probably from the left to right, but I wouldnt count on that order as it might break in the future (it shouldnt, but u know how it is... if we change internals somehow, ordering of this might be affected). This is considered to be a parallel effect and to execute effects in it all at once and such mental model u should apply when working with this.

Thought so, thanks @Andarist!

yield all([put(ACTION)]) doesn't seem to work.


Fixed the random unitary generation from the Haar measure (#760)

Summary
To generate random unitary matrix from a Haar measure, I used scipy.stats.unitary_group.
Fix #519

Thx, I update changelog.rst.

It seems the scipy.stats.unitary_group does not implement the Haar measure formula from the referenced publication (https://arxiv.org/abs/math-ph/0609050).  They skip the last step.  Here is a correct implementation that can be used here:

import math
import numpy as np
import scipy.linalg as la

def haar_unitary(n):
    z = (np.random.randn(n,n) + 1j*np.random.randn(n,n))/math.sqrt(2.0)
    q,r = la.qr(z)
    d = np.diagonal(r)
    ph = d/np.abs(d)
    q = np.multiply(q,ph,q) #This line is missing in the SciPy version.
    return q

Thank you.
Does the following line correspond to the last step?
https://github.com/scipy/scipy/blob/master/scipy/stats/_multivariate.py#L3789

I think they are the same. I'm going to merge with master. Meanwhile, @nonhermitian, if you have a couple of minutes, could you confirm @ikkoham observation, please.

Ahh, yes it does.  Good catch.  This is good.


Using averaged_comm_period, improve RPM stability and reduce vibrations

This PR takes into account the phase asymmetry averaging done on lines 543 and 902.
Benefits are a more stable rotation in closed loop RPM mode, less torque shocks and thus slightly less vibrations, as well as a more stable measured value returned via CLI stat command and via UAVCAN.

Thanks Pierric. Release v2.2 will incorporate this change.


[SDK Automation - Java] Support SDK generation in CI pipeline for the services migrated from Swagger to TypeSpec

If the migrated service has existing customized SDK code, the automation will keep them and report the error in the compiling step when the generated codes are not compatible with existing code.
This refers to the option 1 described in the linked epic.

option 1: keep the existing customized SDK code and generate the SDK code based on TypeSpec specs.
If the customized SDK code is not compatible with the new specs, the generation should fail in the build/compile step providing the comprehensive error message, such as "The SDK has customized SDK code and might not be compatible with the new specs, the service team may need to update the customized code or the new specs."

@weidongxu-microsoft

Synced with @weidongxu-microsoft offline and summarized the agreement as follows.
Given that this scenario is corner case, we will implement a basic solution to clean up the existing SDK code and generate the new code based on the TypeSpec. We also mention this generation strategy in the log and provide the guidance for the service team.

Generate from TypeSpec is good. Upon compile failure and finding "swagger" folder existed, it will delete the folder and re-generate a fresh SDK from TypeSpec.
https://github.com/Azure/azure-rest-api-specs/pull/29521/checks?check_run_id=26456973433
However, the error in above CI comes from the "generate from Swagger" step https://dev.azure.com/azure-sdk/internal/_build/results?buildId=3888703&view=logs&j=a8a7a537-82b0-583c-7971-bac70b9822ca&t=37e3947b-3cfb-5d36-86ba-0e22bb7dbc33&l=164
Can we avoid triggering the Swagger flow, if service has configured TypeSpec for language?


Pretraining the network

Hi @Yuliang-Zou Thanks for sharing the code for the reimplementation. I wanted to replicate the results as mentioned in the paper. Is it possible for you to share the code changes required for 2 frames?
Can you also please share the results after pretraining the depth and flow network with 2 frame setup?

@Yuliang-Zou In the kitti_5frame dataset you have train.txt and val.txt files. But I don't find the val.txt being used anywhere. Is that file used anywhere?

@isheetajha Due to some system update, I cannot get access to the old code base. I will share the results soon.

@roboticsbala You can use val.txt to test the depth estimation performance for model selection. Simply replace test.txt with val.txt

@Yuliang-Zou Thanks a lot.
Will the losses for depth prediction would remain same for pretraining as joint training?

@isheetajha I actually used the simple L2 photometric loss for the pre-training, since I found it easier to train the network.

@Yuliang-Zou I tried your suggestion of replacing the ternary loss with L2 photometric loss but still pretraining is not happening properly. Even after several iterations the error do not change much. Also, I increased the learning rate to 0.0002. On testing the depth network I get a very high error. Any suggestions would be helpful.
abs_rel,     sq_rel,        rms,    log_rms,     d1_all,         a1,         a2,         a3
0.4607,     5.0703,    12.4489,     0.5938,     0.0000,     0.2855,     0.5361,     0.7518
Earlier I was getting the following error:
abs_rel,     sq_rel,        rms,    log_rms,     d1_all,         a1,         a2,         a3
0.4429,     4.7578,    12.0834,     0.5876,     0.0000,     0.3033,     0.560

@Yuliang-Zou I did not use the val set to pick the best model, I just tested all the checkpoint models using split=test. Also, I monitored the training progress using tensorboard. Following are some snapshots.
pixel loss

total loss

smoothness loss

@isheetajha The pixel loss curve looks good, but the smoothness loss curve clearly indicates that the training fails (since it decreases to zero quickly, if you observe the predicted depth visualization, you should find it all white).
Actually, you should monitor the visualization to decide if you should early-stop to keep training, sometimes the training will fail due to the randomness of CUDA operations or inappropriate hyperparameters. Let me see if I can find my hyperparameter settings (I am out of town so it might take some time)

@Yuliang-Zou Thanks for your reply. If you could share the hyperparameters it would be great.
The smoothness loss very quickly becomes 0 but the pixel loss shows erratic behavior which I was more worried about. Is this expected?

@Yuliang-Zou @isheetajha Having the same issue, smoothness loss falls to zero and stays there for depth pretraining. Any idea how to fix that?

@Yuliang-Zou @isheetajha @shujonnaha
Hi, sorry to bother you guys. I have the same problem, after training the predicted depth map is all white. And I also got the test error like:
root@mygpu:~/DF-Net# python kitti_eval/eval_depth.py --pred_file=./prediction/model-70000.npy --split='test'
abs_rel,     sq_rel,        rms,    log_rms,     d1_all,         a1,         a2,         a3
0.4499,     4.8663,    12.4314,     0.5961,     0.0000,     0.2985,     0.5540,     0.7693
even though I change the trained models from 10000 to 99999 I got the same test error.
If you have some idea to solve the problem, please reply me. I'm in urgent to reimplement this model. Thanks!

@Yuliang-Zou @isheetajha @shujonnaha Hi, sorry to bother you guys. I have the same problem, after training the predicted depth map is all white. And I also got the test error like:
root@mygpu:~/DF-Net# python kitti_eval/eval_depth.py --pred_file=./prediction/model-70000.npy --split='test' abs_rel, sq_rel, rms, log_rms, d1_all, a1, a2, a3 0.4499, 4.8663, 12.4314, 0.5961, 0.0000, 0.2985, 0.5540, 0.7693
even though I change the trained models from 10000 to 99999 I got the same test error.
If you have some idea to solve the problem, please reply me. I'm in urgent to reimplement this model. Thanks!

I've found  where the problem is. When I was training, I deleted some lines in the ./dataset/train.txt and I got the results above. After I re-train the model using the un-modified train.txt, I succed.


Set correct mtime when creating header

This makes tar-rs produce default headers that are standards-compliant.

I've verified that cargo, when using tar-rs with this patch, will produce crate files that can be unpacked by 7-zip and thereby fixes rust-lang/cargo/#4712.

Awesome, thanks! Could you be sure to include a unit test here as well for this behavior?

I've added a test and realized I had forgotten to handle the old-style headers as well, so the PR now handles that correctly as well.

Thanks!


Optimise bucket size and fingerprint size based on initial capacity

Currently the bucket size is 4 and the fingerprint size is 1 bytes...
Lets make those adaptive

ignore this


Fixed ReadMe

Kinda pointless. But felt like fixing the small typo.

Have added boiler plate code for docker as well. for issue #2
Need more information for which file should be run as main file.

Haha! I love that, no contribution is small @varishtsg and documentation should be catchy and precise giving a noob clear instructions. I value your time and presence of mind finding that small but essential error :)
I will merge your PR 👍


build(deps): bump react-native-shake from 5.3.2 to 5.5.2

This PR resolves []
Description
Bumps react-native-shake

PR Checklist

[x] I have tested my changes on iOS and Android.
[x] I hid my changes behind a feature flag, or they don't need one.
[x] I have included screenshots or videos, or I have not changed the UI.
[x] I have added tests, or my changes don't require any.
[x] I added an app state migration, or my changes do not require one.
[x] I have documented any follow-up work that this PR will require, or it does not require any.
[x] I have added a changelog entry below, or my changes do not require one.

To the reviewers 👀

[ ] I would like at least one of the reviewers to run this PR on the simulator or device.

Changelog updates
Changelog updates

Cross-platform user-facing changes

iOS user-facing changes

Android user-facing changes

Dev changes

bump react-native-shake from 5.3.2 to 5.5.2 - gkartalis

Need help with something? Have a look at our docs, or get in touch with us.

This PR contains the following changes:

Dev changes (bump react-native-shake from 5.3.2 to 5.5.2 - gkartalis)

  Generated by :no_entry_sign: dangerJS against aec56977de592b33445d2259e0b6076509356f0b


Pages: Create, Edit, Publish, Archive, Delete

Add functionality to create, edit, publish, archive and delete a page. Changes to pages have to be versioned.
For editing, there should be a WYSIWYG editor as well as a simple markup language.
Enable minor edits which do not change the translation status.
It must be possible to add media to a page and embed images. See #48
For API v0/v1/v2 compatibility, the page ID of deleted pages must be tracked. Alternatively, deletion must be disallowed in favor of archiving. See #12

Since some municipalities already use HTML as their markup language, we should stick with it.


ArgoCD fails to connect to Redis when setting Istio with mTLS STRICT mode

Hello,
I am trying to get ArgoCD to run with Istio with mTLS mode STRICT. I installed both Istio and ArgoCD using their respective Helm charts.
This is my setup:
All ArgoCD related stuff is running on the namespace argocd, including the Redis instance that comes with it.
All pods have Istio proxies present in them.
It works fine as long as the mTLS mode is not STRICT.  When I set it to STRICT the argocd servers cannot connect to Redis anymore. I get the following error in the wait-for-redis container:

Here are the setups that I tried with to solve the issue:
I added the following port entry in the Istio Gateway Helm chart values. This is the Redis service port and protocol for Redis as defined in its service.
  - name: tcp-redis
    port: 6379
    protocol: TCP
    targetPort: 6379

Here are my ingressgateway, virtual service, and destination rule setups.
apiVersion: networking.istio.io/v1alpha3
kind: Gateway
metadata:
  name: ingress-gateway-configuration
  namespace: argocd
spec:
  selector:
    istio: ingressgateway
  servers:
  - port:
      number: 6379
      name: tcp-redis
      protocol: TCP
    hosts:
    - "*"

kind: VirtualService
apiVersion: networking.istio.io/v1alpha3
metadata:
  name: argo-cd-virtual-service
  namespace: argocd
spec:
  hosts:
    - "*"
  gateways:
    - ingress-gateway-configuration
  tcp:
  - match:
    - port: 6379
    route:
    - destination:
        host: argo-cd-redis-master.argocd.svc.cluster.local
        port:
          number: 6379

apiVersion: networking.istio.io/v1alpha3
kind: DestinationRule
metadata:
  namespace: argocd
  name: argo-cd-destination-rule
spec:
  host: argo-cd-redis-master.argocd.svc.cluster.local
  trafficPolicy:
    tls:
      mode: ISTIO_MUTUAL # also tried with SIMPLE, but yielded the same result

Here is a screenshot of all the services:

Is there something I am missing?
Any help would be greatly appreciated! Thank you!

Is that an init container? Init containers do not get proxied through the mesh unfortunately

Is that an init container? Init containers do not get proxied through the mesh unfortunately

Indeed, it is an init container. Thanks a lot for your reply. Thanks to you now I know what direction for troubleshooting to go. Are some workarounds known so far for this issue?

Switched to using Kustomize for ArgoCD. Only the helm-based instalation from ArgoCD uses init containers to check for connectivity with redis. Thanks for your help! 😀


Add links to all issues in the remaining sections of the changelog

Description
This PR adds links to all issues in the remaining sections of the changelog. It also fixes a few typos. Contrary to what I did in previous PRs related to #244, here I did not read through all the text looking for typos. I only fixed the typos highlighted by my IDE as it would take a long time to read everything. I also opted to fix the typos in a separate commit that can be squashed before merging as the number of changes in this PR is much bigger than in previous PRs. I'm hoping that this will make the review process easier.
Related issues/external references
Part of https://github.com/PHPCSStandards/PHP_CodeSniffer/issues/244
Types of changes

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

[ ] This change is only breaking for integrators, not for external standards or end-users.

[x] Documentation improvement

PR checklist

[ ] I have checked there is no other PR open for the same change.
[ ] I have read the Contribution Guidelines.
[ ] I grant the project the right to include and distribute the code under the BSD-3-Clause license (and I have the right to grant these rights).
[x] I have added tests to cover my changes.
[x] I have verified that the code complies with the projects coding standards.
[x] [Required for new sniffs] I have added XML documentation for the sniff.

Thanks for the review, @jrfnl!

Aside from some issues with duplicate links in link lists (didn't we discuss those before ?), this looks good.

I missed the duplicate links. I remember us discussing duplicate links in the same version, but I don't remember us discussing duplicate links across different versions. I could have inferred that, but unfortunately, I did not.

I noticed duplicate links added in previous PRs. Would you prefer that I push a commit fixing those to this PR or create a separate PR?

I missed the duplicate links. I remember us discussing duplicate links in the same version, but I don't remember us discussing duplicate links across different versions. I could have inferred that, but unfortunately, I did not.

Well, the previous issue was already across versions as the links between Squiz and this repo were overlapping with the links to this repo only being in recent changelogs (and the links to Squiz in older changelogs).
While duplicate link definitions which have the same URL attached is not necessarily problematic, it is still not a good idea to have them, as if one is updated, but not the other, which one should be used ? (hint: the first one found will be used, but that may not be the one updated).
You may want to read up a little on markdown. These may be good starting points:

https://daringfireball.net/projects/markdown/syntax#link
https://www.markdownguide.org/basic-syntax/#reference-style-links

I pushed a new commit removing the duplicates.
I noticed duplicate links added in previous PRs. Would you prefer that I push a commit fixing those to this PR or create a separate PR?

Please feel free to fix them up in this PR.

Thanks for the additional information, @jrfnl.
I added the new commit fixing the other duplicate links in the file and this PR is ready for a final review.


VirtualBox should not be required to use CDK on MacOS if xhyve is present/working

I downloaded and installed the CDK using the devsuite installer on my Mac, and it prompted me to upgrade my copy of VirtualBox. This was unnecessary, as my Mac already has docker-machine-xhyve installed and ready to go. The check for VirtualBox should also accept xhyve, so as not to insist upon a technology that may very well not be used.

Resolved with https://github.com/redhat-developer-tooling/developer-platform-install/pull/1303.
Implementation details are explained here https://github.com/redhat-developer-tooling/developer-platform-install/issues/1267.