Support to IAsyncEnumerable which can be enumerated asynchronously

Already discussed here: https://github.com/ardalis/CleanArchitecture/pull/161
Usage example:
[HttpGet]
public async IAsyncEnumerable<ToDoItem> GetAsyncEnumerable()
{
	await foreach(var todoItem in _repository.GetAsyncEnumerable<ToDoItem>())
	{
		yield return todoItem;
	}
}

I'll open and submit a PR for us to discuss this approach.

@ardalis I was trying to figure out where I should add the IAsyncEnumerable<T> GetAsyncEnumerable<T>() and I believe I should add it to IReadRepositoryBase, however it is using netstandard2.0, that doesn't expose IAsyncEnumerable<T>.
How do you see this class libraries evolving?

Agreed IReadRepositoryBase would be best place to try it out.

Only possible if we upgrade to .NET Standard 2.1, however we will lose support to .NET Framework.
Not sure if you are up for that breaking change?

Eventually, yes. Ideally, I'd like to keep two things true:

This package utilizes semver, and breaking changes result in a new major version number
This package's major version number updates in step with .NET; .NET 7 will be released in Nov 2022

However, I can be convinced to sacrifice the 2nd priority if the feature in question is in high demand and not easily worked around by client code. @fiseni what do you think?

Just an heads-up, targeting non LTS versions (like .NET5, .NET7, .NET9, ...) can be challenging for some customers, but I get the need and I also support it 😅

I do strongly dislike the .NET Standard specification altogether, and I can't wait the day we no longer have to use it (nor support it). But, we still have a lot of .NET FX users, that's the reason we have EF6 package too.
The feature you're requesting is just a repository feature, and you can easily add that method to your inherited interface and repository. Our built-in repository exposes some basic behavior only, and I'm sure everyone is adding something additional to it. I do like AsyncEnumerable, but making such a breaking change and losing support for NET FX users, just to have it in the built-in repository? Is it worth it?

It's been 3 years since the last .NET FX release, but maybe there's a lot of people using it. The problem is that you'll soon start losing access to nice and new improved APIs.
Feel free to close this issue 👍

Maybe it can go in CA after all, then. Thanks.


Incorrect number of Probes in template reference

The minimum probe interval is 5 seconds and the minimum number of unhealthy responses is 2. The total duration of all intervals cannot exceed 120 seconds.

Your JSON example templates reference "numberOfProbes": 1
I know I might be having OCD here, but all three JSON template boxes reference an incorrect number of probes. The minimum allowed value is 2.
Also the minimum value is not reflected in the Arm template reference (and no maximum given):
https://docs.microsoft.com/en-us/azure/templates/microsoft.network/loadbalancers?tabs=bicep#probepropertiesformat (should i open a different issue there?)

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

ID: 0e1e7cb2-c5a7-7122-c729-dc259db99a40
Version Independent ID: 45c6fd72-5114-fcda-0bab-2d80ac6bed33
Content: Health probes to scale and provide HA for your service - Azure Load Balancer
Content Source: articles/load-balancer/load-balancer-custom-probe-overview.md
Service: load-balancer
GitHub Login: @asudbring
Microsoft Alias: allensu

Hello @AndreasMWalter
Thank you for your feedback! We will review and update as appropriate.

#reassign:thisisanniefang

@AndreasMWalter Thanks for the feedback! The example templates are actually correct and the recommend configuration due to a current ongoing Known Issue (just added to https://docs.microsoft.com/en-us/azure/load-balancer/whats-new, and should appear soon).
We recommend setting the numberOfProbes property to 1 to reflect the current behavior.
#please-close

@AndreasMWalter Thanks for the feedback! The example templates are actually correct and the recommend configuration due to a current ongoing Known Issue (just added to https://docs.microsoft.com/en-us/azure/load-balancer/whats-new, and should appear soon).
We recommend setting the numberOfProbes property to 1 to reflect the current behavior.
#please-close

Oh, ok, is this an issue that only affects the portal or also the API?
And also is it generally recommended to use 1 or just due to the issue?
So many questions :)

@AndreasMWalter Apologies for the late reply! This is an issue that affects the API and Portal. We recommended using 1 due to the issue for the time being, as to not cause confusion with the actual behavior.

@thisisanniefang so I tried setting this via Terraform, which would result in this error returned by the Azure API:
So no dice in regards to setting this value to 1 via the API
Error: updating Load Balancer "lb" (Resource Group "rg") for Probe "probe": network.LoadBalancersClient#CreateOrUpdate: Failure sending request: StatusCode=400 -- Original Error: Code="NumberOfProbesIsOutOfRange" Message="NumberOfProbes value for probe azuinf-prd-probe is out of range. When IntervalInSeconds is 5, the value must be between 2 and 429496729." Details=[]
│
│   with module.infoblox.azurerm_lb_probe.internal_lb_probe,
│   on .terraform/3_loadbalancer.tf line 20, in resource "azurerm_lb_probe" "internal_lb_probe":
│   20: resource "azurerm_lb_probe" "internal_lb_probe" {

Terraform uses the most recent azure-sdk-for-go
"github.com/Azure/azure-sdk-for-go/services/network/mgmt/2021-05-01/network"

Hi @AndreasMWalter thanks for reaching out, we're working to resolve this issue and remove the validation that is blocking the ability to set the value to 1.
For the time being, setting it to 2 will result in the same behavior as if it were set to 1 due to the known issue. Apologies for the confusion!


Why does a stream have multiple videos?

 So I wrote the following function
import av
from numpy import ndarray
from loguru import logger
from typing import Generator

video_filename = 'Movies/123.mp4'

def frame_extract_pyav(video_filename: str, is_multi_thread_decode=True) -> Generator[ndarray, None, None]:
    with av.open(video_filename, metadata_encoding='utf-8', metadata_errors='ignore') as container:
        try:
            video = container.streams.video[0]
            video.thread_type = "AUTO"

            average_fps: int = round(video.average_rate)

            for index, frame in enumerate(container.decode(video)):
                if index % average_fps == 0:
                    yield frame.to_rgb().to_ndarray()
        except Exception as error:
            logger.warning(error)

What I don't understand is why is the type of container.streams a tuple? Why can a streams have more than one video?
Why is it the case that a streams can have more than one video? Does it have anything to do with the video encoding format? For example, is it possible for a common mp4 to have one streams containing multiple videos?

It's possible, and it's used for things like image-based subtitles.


/boost_1_64_0.tar.gz Forbidden

wget https://dl.bintray.com/boostorg/release/1.64.0/source/boost_1_64_0.tar.gz
[sudo] password for adminonur:
--2019-05-30 14:38:50--  https://dl.bintray.com/boostorg/release/1.64.0/source/boost_1_64_0.tar.gz
Resolving dl.bintray.com (dl.bintray.com)... <IP_ADDRESS>, <IP_ADDRESS>
Connecting to dl.bintray.com (dl.bintray.com)|<IP_ADDRESS>|:443... connected.
HTTP request sent, awaiting response... 403 Forbidden
2019-05-30 14:38:50 ERROR 403: Forbidden.

Thank you  so much :)
Sevilay
On Thu, May 30, 2019 at 9:01 PM Marshall Clow<EMAIL_ADDRESS>wrote:

This has been fixed.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/boostorg/boost/issues/298?email_source=notifications&email_token=AFNDDVUWTMIYBWWNA3W7VRTPYAI55A5CNFSM4HREPAGKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODWTBQYI#issuecomment-497424481,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AFNDDVQ2WRMJTYTYDCJV2SLPYAI55ANCNFSM4HREPAGA
.


Added favicon & icons

Added favicon and icons for different platforms to the public/img directory
Issue fixed: #8

I understood the issue wrong. Closing the PR for now.

What you did was totally what was needed.
We need logos of all sizes there so that we can use it later as per need


Add outdated browser test

http://outdatedbrowser.com/en/project

seems like all this does is apply CSS if it CSS feature detects... so it won't get everything.
We might need some pieces of this + an actual feature detect for Symbol (which would imply ES5)

Hard to even make this happen on available browsers in a test stack (which is great!)


Any guidance available?

Anyone that can give me any guidance in installing this bot?
Please respond or e-mail to<EMAIL_ADDRESS>

Follow install instructions

Hi Oleksandr,
Could you guide me through? I dont understand the install instructions,
Thanks,
Martijn
Op zondag 7 augustus 2016 heeft Oleksandr Dubenko<EMAIL_ADDRESS>het volgende geschreven:

Follow install instructions
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/PokemonGoF/PokemonGo-Bot-Desktop/issues/66#issuecomment-238068603,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AT51_2uVKnUWHtk-7O8C5gqR7jmnZnwiks5qdYsQgaJpZM4JeOHA
.

--
Met vriendelijke groet,
Martijn Santbergen

We do not offer personal support

Unfortunately, thanks for your reply. If you know anyone who is willing to
help me, please let me know.
Thanks,
Martijn
Op zondag 7 augustus 2016 heeft Oleksandr Dubenko<EMAIL_ADDRESS>het volgende geschreven:

We do not offer personal support
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/PokemonGoF/PokemonGo-Bot-Desktop/issues/66#issuecomment-238068698,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AT51_6Pw6UnhCy3b5J0LC1gn5BDlkJHuks5qdYvSgaJpZM4JeOHA
.

--
Met vriendelijke groet,
Martijn Santbergen


Integrate voting in main window

This integrates the voting dialog as a page into the main toolbar. Also the loading of the poll data should be fixed now.
The poll data is now reloaded every time one clicks on the voting toolbutton. This created some problems with the wallet constantly crashing while switching back and forth between voting and any other page. The problem is that QVariant VotingTableModel::headerData(int section, Qt::Orientation orientation, int role) is called with section = -1 . I have not been able to figure out why. I fixed it by simply catching this event if (orientation == Qt::Horizontal && section >= 0). So it works now but feels a bit dirty.
An alternative would be to not load any data on clicking on the toolbutton and simply let the user load the data manually with a click on the "reset data" button. But then new votes will not show up until the user clicks the button again.
Any ideas on what the behaviour of this should be?
And we really need new icons. We don't have a voting icon so for now I used the gridcoin logo icon, but that is not pretty.

load the data if it is older than 30 blocks
let user reload with button

It's weird how the -1 thing only happens the second time you switch to the tab.

Sweet, this is soooo much better.


Make Slide.renderFocusRing optional?

It really messes up my slide - causing the container things to shift slightly.  I even tried
.carousel__slide-focus-ring {
  display: none !important;
}

but still my slide borders are shifting slightly when i click on them.

Hmm.  We need the ring to be aria compliant.  Perhaps I can add an option to make the aria stuff optional, but I think this might be more of a CSS/HTML issue in your design.  Which browser are you using? Can I see the code or see it online so I can peek around in devtools?  In the meantime, here is a page that uses our carousel and the highlight ring doesn't make the slides jump around.  https://www.express.com/clothing/women/twist-strap-maxi-dress/pro/07900617/color/PITCH BLACK
So, it is possible to have the ring without messing stuff up.  Perhaps check out our CSS in devtools?

I recommend using: https://github.com/WICG/focus-visible
It fixed for us, not only carousel but also all the other buttons while keeping all aria happy 😉
Basically, if you implement it on your page focus ring will appear on buttons only when you use a keyboard.


Add Wildcard support for $InterfaceAlias

Description
There used to be support Wildcard for InterfaceAlis, but degraded with commit https://github.com/PowerShell/xNetworking/commit/89a9d95b611782a1848f7c9a3a66d550ab0a4afa#diff-da1b602b4060c5ac9213c9b402ca75aaR178
This PR add Wildcard support for InterfaceAlias.
There are many cases that user couldn't know or promise interface alias. Something like it is  "Ethernet" or "Ethernet 2" or "Enternet ..." in Cloud Infrastructure. Thus Wildcard support is useful and should better to be supported.
Reproduce Procedure
configuration Hoge
{
    Import-DSCResource -Module xNetworking
    xDNSServerAddress Test
    {
        Address = "<IP_ADDRESS>"
        InterfaceAlias = "Etthernet *"
        AddressFamily = "IPv4"
    }
}

Hoge
Start-DscConfiguration -Verbose -Wait -Path Hoge -Force
Test-DscConfiguration
Get-DscConfiguration

It will fail with previous psm1, and success in this PR.
Address        : {<IP_ADDRESS>}
AddressFamily  : IPv4
InterfaceAlias : Ehternet*
PSComputerName :

Hi @guitarrapc, I'm your friendly neighborhood Microsoft Pull Request Bot (You can call me MSBOT). Thanks for your contribution!

This seems like a small (but important) contribution, so no Contribution License Agreement is required at this point. Real humans will now evaluate your PR.

TTYL, MSBOT;

HI @guitarrapc this was forked from the master branch, which we do not accept Pull Requests from. However I do see the issue here so if you wanted to fork the dev branch and get submit a PR we will happily review it.

Sure. I will close this PR and re-create with dev branch.
Cheer,


[WiP] Add rules allowing proxy traffic to auto-generated security group

What does this PR do? / Related Issues / Jira
This PR addresses OSD-19401, which identifies a bug/feature gap in the AWS security groups auto-generated by osd-network-verifier (i.e., when the caller does not supply a sec. group ID). Currently, these security groups are created with a static set of rules allowing egress to TCP ports specified in the egress list (e.g., 80, 443). If the user is testing a network with a proxy configuration, this static rule set might not allow traffic to flow to the user's proxy server running on, e.g., port 8080.
This PR extends the verifier's sec. group auto-generation logic such that it adds egress rules to the base set that cover the ports used in the user-provided proxy URLs. For example, if a user passes the arguments --http-proxy http://<IP_ADDRESS>:8080 and --https-proxy https://<IP_ADDRESS>:8443 to the standalone network verifier binary, the verifier will generate a security group containing rules allowing egress to port 8080 and 8443. It will not affect any user-provided security groups.
For testing purposes, this PR also modifies the standalone network verifier binary such that --security-group-id is now optional. If not supplied by the user, an SG will be auto-generated according to the new/extended logic described above.
Checklist

[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[ ] I have made corresponding change to the default configuration files
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] I have tested the functionality against gcp / aws, it doesn't cause any regression
[ ] I have added execution results to the PR's readme

Reviewer's Checklist
TBA

[ ] (This needs to be done after technical review) I've run the branch on my local, verified that the functionality is ok

How to test this PR locally / Special Instructions
TBA
Logs
TBA

/label tide/merge-method-squash

Codecov Report

Merging #202 (9edfbe0) into main (d8e921a) will increase coverage by 1.66%.
The diff coverage is 43.54%.

Additional details and impacted files

@@            Coverage Diff             @@
##             main     #202      +/-   ##
==========================================
+ Coverage   10.13%   11.79%   +1.66%
==========================================
  Files          17       17
  Lines        1214     1272      +58
==========================================
+ Hits          123      150      +27
- Misses       1081     1110      +29
- Partials       10       12       +2

Files
Coverage Δ

cmd/egress/cmd.go
0.00% <0.00%> (ø)

pkg/verifier/aws/entry_point.go
0.00% <0.00%> (ø)

pkg/verifier/aws/aws_verifier.go
28.15% <52.94%> (+4.89%)
:arrow_up:


Renegade crash on Sandbox

Hardware=Intel(R) Core(TM) i5-4570 3.20GHz 8GB RAM
OS=Windows 10 Pro x64
GUI=Arena 3.5.1
Renegade configuration:
[Renegade 1.1.0 x64(BMI2)]
Hash=16
Threads=1
Sandbox Info:
SBIE2101 Object name not found: Unnamed object, error OpenProcess (C0000022) access=001FFFFF initialized=1

Can you please provide more details? I'm not familiar with that software. Were you able to run it and then crashed during a game?
You can also try to build it manually.

Hi again!
Renegade 1.0.0  and Renegade 1.1.0 on consule mode doesnot crash.
They crash on Arena GUI tournaments after Renegade finish current game(maybe on some comand like 'quit' or 'exit' or....that Arena send to Renegade).
You have to know that I test any chess engine on Sandboxie mode.
Hope you understand my poor english
Thank you!

Alright, I will look into this. I can't promise I will test under Sandboxie, but I'll see if I can replicate the crash under Arena.


Update CONTRIBUTING.md

Pull Request Description
This pull request closes #
Acceptance Test

[ ] Building the code with mvn clean install -Dintegration.tests still works.
[ ] Running mvn spring-boot:run in the strongbox-web-core still starts up the application correctly.
[ ] Building the code and running the strongbox-distribution from a zip or tar.gz still works.
[ ] The tests in the strongbox-web-integration-tests still run properly.

Questions

Does this pull request break backward compatibility?

[ ] Yes
[X] No

Does this pull request require other pull requests to be merged first?

[] Yes, please see #...
[X] No

Does this require an update of the documentation?

[ ] Yes, please see strongbox/strongbox-docs#{PR_NUMBER}
[X] No

I'll be closing this, because I don't think you have any merged pull requests in our projects. Please, let me know, if I'm mistaken.


icebox_vlog can't parse --warn-no-port attributes

This would be handy; as a workaround I'm just supplying a stripped .pcf to icebox_vlog vs arachne-pnr.

Thanks for pointing this out. Implemented in commit fddc548.


Battery consumption: F-Droid vs Google Play Services

I have both google play and fdroid on my android (running LineageOS 19.1 w/ gapps).  I am just wondering if I should use the Google play version or the f-droid version?  I believe the Play version uses firebase so am wondering if using it leads to less battery consumption.
Thanks

Just answered my own question.  Uninstalled the Fdroid version and installed Play version.  There is an option now in the Google Play version called "instant delivery".  Keeping it DISABLED will use Firbase - that will consume less battery but delay the notification.

Firebase is only used if

you use ntfy.sh (not your selfhosted server)
AND you use the Google Play variant of the app

In all other cases, Firebase is not used. Even then, you may still disable Firebase for individual messages. See https://ntfy.sh/docs/publish/#disable-firebase


--maxmatch using too many cores

Every time I run nucmer --maxmatch or dnadiff using mummer4.0.0beta2, it tries to use all available cores and fails not long after. I'm using a shared server and don't want to be a CPU hog- is there a way to limit the CPU usage?

Same problem here, even with --threads set, mummer4 runs on all threads.


improvement partial metadata patch

Follows up #100.

and thank you for taking care of this! i was about to do this today 👍

and thank you for taking care of this! i was about to do this today 👍


Segfault when converting COO to Dense

Hi @willow-ahrens,
I'm trying to convert empty COO tensor to a dense one but I get a segfault. Should I write it differently or is it a bug?
using Finch

tns_coo = Tensor(SparseCOO{2}(Element(0), (3,3)))  # empty coo
# with Tensor(SparseCOO{2}(Element(0), (3,3)), zeros(3,3)) it works

Tensor(Dense(Dense(Element(0))), tns_coo)  # segfault instead of dense 3x3

It looks like ptr field in uninitialized is:
1-element Vector{Int64}:
 1

and for initialized it's:
2-element Vector{Int64}:
 1
 1

That syntax isn't supposed to initialize a tensor. Instead, pass the dimensions to the Tensor function. It looks like the relevant docs in https://github.com/willow-ahrens/Finch.jl/blob/c9588e252e5fb50b0b217fa73b0fae522d7817f0/src/tensors/fibers.jl#L24-L31 somehow didn't make it into the website, so I made a PR to do that.

Ah, then I used incorrect semantics, thank you!


[master] Fix broken links for 1.1 release

Issue #, if available:
See list of broken links
Description of changes:
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

Previous CI Run
Current CI Run


Decorators

I propose some additional decorators. For example:
@LuaLocal - marks the typescript object instance local, which is not available in typescript.
Also I am thinking about some extra decorators that may improve compatibility, especially for arrays.

We are currently in the process of removing decorators/annotations in favour of language extensions (see #821, #969) wherever possible. So we probably won't add new ones unless absolutely necessary.
You might be able to add a custom decorator it yourself via a plugin.
If that is not possible or if you think others would benefit from the annotation please open a proposal detailing functionality and use cases of the annotation.
Anyway closing this since more information is needed and it is not really clear what the issue is.

We are currently in the process of removing decorators/annotations in favour of language extensions (see #821, #969) wherever possible. So we probably won't add new ones unless absolutely necessary.
You might be able to add a custom decorator it yourself via a plugin.
If that is not possible or if you think others would benefit from the annotation please open a proposal detailing functionality and use cases of the annotation.
Anyway closing this since more information is needed and it is not really clear what the issue is.


Feature Request: Add https:// to the fqdn of the container app in the CLI output

Is your feature request related to a problem? Please describe.
No
Describe the solution you'd like.
When I run az containerapp create it should return a URL including https:// rather than just a fqdn. With a URL, I can ctrl+click the url in the CLI (at least in Windows Terminal) to open the browser, rather than needing to copy the fqdn, open a browser, then paste the fqdn.
Describe alternatives you've considered.
A clear and concise description of any alternative solutions or features you've considered.
Additional context.
Add any other context or screenshots about the feature request here.

closing this issue, we now display both protocol and fqdn on create when you enable ingress.


Use case: 2 nixpkgs versions

I had a use case where I needed packages from two nixpkgs version:

haskell packages from the verion for which haskell.nix has a relatively decent cache
freecad / kicad from latest (due to a bug in freecad)

My solution so far, no idea if it's optimal, but wanted to share:
# flake.nix
{
  inputs.nixpkgsUnstable.url = "github:NixOS/nixpkgs/nixpkgs-unstable";
  outputs = { self, nixpkgs, flake-utils, devshell, nixpkgsUnstable }:
    let
      name = "CashBoxy";
      config = {};
    in flake-utils.lib.simpleFlake {
      inherit self name nixpkgs config;
      overlay = import ./overlay.nix {inherit nixpkgsUnstable config;};
      shell = ./devshell.nix;
    };
}

# overlay.nix
{ nixpkgsUnstable, config }: final: prev:
{
  CashBoxy =
    let
      pkgsUnstable = import nixpkgsUnstable {
        inherit config;
        localSystem = prev.stdenv.buildPlatform;
        crossSystem = prev.stdenv.hostPlatform;
      };
    in
      {
        kicad = pkgsUnstable.kicad;
        freecad = pkgsUnstable.freecad;
      };
}

# devshell.nix
{ pkgs }:
with pkgs; mkDevShell {
  name = "CashBoxy";
  packages = [
    CashBoxy.kicad
    CashBoxy.freecad
  ];
}

I found it tricky, so I wanted to share one option, if somebody is looking for how to do it.
Please don't regard this at any rate authoritative. It's just me playing around... (!)

I'm closing this, as this is not immediately actionable. Maybe (also closed) documentation labels can be reviewd when the time comes.


openfl package not found

Describe the bug
Following the OpenFL documentation instructions here but I get the following error when running pip install openfl:
ERROR: Could not find a version that satisfies the requirement openfl
ERROR: No matching distribution found for openfl
-OS: MacOS Big Sur

@alexkarargyris thanks for pointing this out. Right now we didn't publish PyPI wheels (this activity is in progress), so you need to install OpenFL from source:
git clone https://github.com/intel/openfl.git
cd openfl/
pip install .


NoFrameskip?

assert 'NoFrameskip' in env.spec.id  # required for DeepMind-style skip
AssertionError

Why this check? Is necessary for all atari environments? Is 'NoFrameskip' offered for all environments?
There is no CartPole NoFrameskip version available.

Deepmind typically only acts ever 4 frames in areas like Atari. This doesn't reduce the effectiveness of your agents, but it will allow the emulator to run at a much faster speed (roughly 4x) faster. Though for other environments like CartPole, you do not want to skip frames.

The check is for deepmind-style to be deepmind style. Of course you can create whatever wrappers you want or need, but that would not be deepmind-style. Hope this helps.


Add Git 2.31.0 maintenance support

Issue description
Git version 2.31.0 has a new feature called maintenance. Add a Nix module that starts a systemd service that run git maintenance ... on configured repositories.
Technical details

Git maintenance doc

I feel like I have to ask the obvious question: Do we really need a Nix module for that?
From the GitHub blog:

…and, you’re stuck. Now you’ve got to wait for Git to finish running git gc --auto before you can get back to work.

I don't remember this being a problem on Linux because it runs on the background and man git-gc confirms this:

gc.autoDetach
Make git gc --auto return immediately and run in background if the system supports it. Default is true.

This is the behaviour that I'm used to.
git-maintenance can still be useful (e.g. pre-fetching) but I wonder how many users actually need or even want that.
IMO the main problem is that git-maintenance seems to rely on cron (s. https://git-scm.com/docs/git-maintenance#_background_maintenance_on_posix_systems) so it shouldn't work on NixOS as intended (unless there is a fallback for systemd user timers). So IMO we certainly shouldn't implement more than a systemd timer that uses maintenance.repo so that git maintenance start, etc. work as usual (and it seems even better to wait until upstream supports this). Just my opinion though.

I don't remember this being a problem on Linux

I often get problems with it because I open too fast lived shells in nixpkgs-review, the gc --auto stops and creates a log file which stops it forever.

@SuperSandro2000 that's a different issue though, that comment was regarding git-gc blocking the shell instead of forking to the background. I assume you're running into (something like) this:
Auto packing the repository in background for optimum performance.
See "git help gc" for manual housekeeping.
error: The last gc run reported the following. Please correct the root cause
and remove $DIR/gc.log.
Automatic cleanup will not be performed until the file is removed.

warning: reflog of 'HEAD' references pruned commits
warning: There are too many unreachable loose objects; run 'git prune' to remove them.

Not sure if git-maintenance would solve that as well (it might/should avoid the too many loose objects problem, at least if it packs them more often than the gc.auto default, but the unreachable objects count still depend on settings like gc.pruneExpire, gc.worktreePruneExpire, and gc.reflogExpireUnreachable).

git-maintenance can still be useful (e.g. pre-fetching) but I wonder how many users actually need or even want that.

It seems really convenient when you work a lot on public transportation or your internet is not that great and you have the latest change already fetched, which in theory should speed up git pull since no or very few objects need to be transferred.

There is upstream systemd support now, though I don't know when it was introduced:
https://git-scm.com/docs/git-maintenance#_background_maintenance_on_linux_systemd_systems

I think that was there since the beginning or very early on.

This issue can be closed. I tested successfully git maintenance on nixos-23.11 with git 2.42.0


Dicom Parser Parsing Error

So I am having problems parsing a dicom file,  it is possible that the anonymization before it was sent to me is causing the issue but I can't figure out why the parser is failing.  I have used some other dicomParsing and they are able to be viewed fine.  I get a Uncaught #  and the error is getting thrown here.  I have zipped the file so you can replicate, all patient data is bogus.
image_0001.dcm.zip
function readDataSet(metaHeaderDataSet)
    {
        var transferSyntax = readTransferSyntax(metaHeaderDataSet);
        var explicit = isExplicit(transferSyntax);
        var dataSetByteStream = getDataSetByteStream(transferSyntax, metaHeaderDataSet.position);

        var elements = {};
        var dataSet = new dicomParser.DataSet(dataSetByteStream.byteArrayParser, dataSetByteStream.byteArray, elements);
        dataSet.warnings = dataSetByteStream.warnings;

        try{
            if(explicit) {
                dicomParser.parseDicomDataSetExplicit(dataSet, dataSetByteStream, dataSetByteStream.byteArray.length, options);
            }
            else
            {
                dicomParser.parseDicomDataSetImplicit(dataSet, dataSetByteStream, dataSetByteStream.byteArray.length, options);
            }
        }
        catch(e) {
            var ex = {
                exception: e,
                dataSet: dataSet
            };
            throw ex;
        }
        return dataSet;
    }

If you check the exception dicomParser is throwing it is reporting a buffer overrun.  This means the file is not standards compliant - one of the attributes has an invalid length field set.  While some parsers have logic to deal with invalid files like this, dicomParser doesn't and that is why it is failing.  There are various utilities out there to diagnose problems like this - Agfa's DVTK and David Clunie's dicom3tools are both very good.  Here is the output from dicom3tools on this file:
(0x0002,0x0013) SH Implementation Version Name  - Warning - Explicit value representation doesn't match data dictionary; Explicit  Dictionary
(0x0002,0x0016) AE Source Application Entity Title  - Warning - Explicit value representation doesn't match data dictionary; Explicit  Dictionary
(0x0008,0x1032) SQ Procedure Code Sequence  - Error - Bad tag in sequence - got - (0x0008,0x103e) LO Series Description  - Expecting Item or Sequence Delimiter - Skipping bad tag inside undefined length sequence
(0x0008,0x1032) SQ Procedure Code Sequence  - Error - Bad tag in sequence - got - (0x0900,0x0a00)  ?  - Expecting Item or Sequence Delimiter - Skipping bad tag inside undefined length sequence
Error - Seek failed - While skipping
Error - Sequence attribute read failed
Error - Dicom dataset read failed
Error - Illegal root for UID - "Alice<IP_ADDRESS>" in (0x0002,0x0013) Implementation Version Name
Warning - Missing attribute or value that would be needed to build DICOMDIR - Patient ID
Warning - Missing attribute or value that would be needed to build DICOMDIR - Study ID
Warning - Missing attribute or value that would be needed to build DICOMDIR - Series Number
Error - Value invalid for this VR - (0x0002,0x0013) SH Implementation Version Name  UI [0] = <Alice<IP_ADDRESS>> - Character invalid for this VR = 'A' (0x41)
Error - Value invalid for this VR - (0x0002,0x0013) SH Implementation Version Name  UI [0] = <Alice<IP_ADDRESS>> - Character invalid for this VR = 'l' (0x6c)
Error - Value invalid for this VR - (0x0002,0x0013) SH Implementation Version Name  UI [0] = <Alice<IP_ADDRESS>> - Character invalid for this VR = 'i' (0x69)
Error - Value invalid for this VR - (0x0002,0x0013) SH Implementation Version Name  UI [0] = <Alice<IP_ADDRESS>> - Character invalid for this VR = 'c' (0x63)
Error - Value invalid for this VR - (0x0002,0x0013) SH Implementation Version Name  UI [0] = <Alice<IP_ADDRESS>> - Character invalid for this VR = 'e' (0x65)
Error - Dicom dataset contains invalid data values for Value Representations
SCImage
Error - Invalid Value Representation UI (SH Required) Element= Module=
Error - Invalid Value Representation Type 3 Optional Element= Module=
Error - Invalid Value Representation LO (AE Required) Element= Module=
Error - Invalid Value Representation Type 3 Optional Element= Module=
Error - Missing attribute Type 2 Required Element= Module=
Error - Missing attribute Type 2 Required Element= Module=
Error - Missing attribute Type 2 Required Element= Module=
Error - Missing attribute Type 2 Required Element= Module=
Error - Missing attribute Type 1 Required Element= Module=
Error - Missing attribute Type 2 Required Element= Module=
Error - Missing attribute Type 1 Required Element= Module=
Error - Missing attribute Type 2 Required Element= Module=
Error - Missing attribute Type 2C Conditional Element= Module=
Error - Missing attribute Type 2 Required Element= Module=
Error - Missing attribute Type 2C Conditional Element= Module=
Error - Missing attribute Type 1 Required Element= Module=
Error - Missing attribute Type 1 Required Element= Module=
Error - Missing attribute Type 1 Required Element= Module=
Error - Missing attribute Type 1 Required Element= Module=
Error - Missing attribute Type 1 Required Element= Module=
Error - Missing attribute Type 1 Required Element= Module=
Error - Missing attribute Type 1 Required Element= Module=
Error - Missing attribute Type 1 Required Element= Module=
Error - Missing attribute Type 1C Conditional Element= Module=
Warning - Unrecognized defined term <ISO_IR 6> for value 1 of attribute
Warning - Attribute is not present in standard DICOM IOD - (0x0008,0x0092) ST Referring Physician's Address
Warning - Attribute is not present in standard DICOM IOD - (0x0008,0x0094) SH Referring Physician's Telephone Numbers
Warning - Attribute is not present in standard DICOM IOD - (0x0008,0x0116) ST Coding Scheme Responsible Organization
Warning - Dicom dataset contains attributes not present in standard DICOM IOD - this is a Standard Extended SOP Class

dicom3tools Version: 1.00.snapshot.20150319151618
dicom3tools Platform: Darwin graytoo.local 12.6.0 Darwin Kernel Version 12.6.0: Wed Dec 17 19:11:40 PST 2014; root:xnu-2050.48.15~1/RELEASE_X86_64 x86_64
dicom3tools Preprocessor: gcc cpp 4.2.1
dicom3tools Compiler: gcc g++ 4.2.1 Compatible Apple LLVM 5.1 (clang-503.0.40)
dicom3tools UID Root: <IP_ADDRESS>.4.1.5962.1

Sure so I get some of those errors are noise resulting in the cleaning of user data from it,  I can't just figure out which error is ultimately causing the problem for the parser.

Load the file here:
https://rawgithub.com/chafey/dicomParser/master/examples/dumpWithDataDictionary/index.html
And set breakpoints?

Seems like it is breaking on Procedure Code Sequence - Error - Bad tag in sequence - got - (0x0008,0x103e) LO Series Description - Expecting Item or Sequence Delimiter - Skipping bad tag inside undefined length sequence
things before that work things, after do not, last good parse I get is jnust before x00081032, so this leads me back to whether I should write a better error handling for this type of error or maybe code so invalid length file parsing.

If you just need to get this specific file working, send it through another dicom library and it should fix it.  If you are looking to make dicomParser more tolerant of bad files then it may take a bit more work...

I was thinking more of the latter,  maybe or at least be more tolerate of type3 tags.

OK well feel free to hit me up on email or this issue to discuss the details.  I definitely want to preserve the current "strict" mode by default and only enable workarounds like this if requested (e.g. by an options parameter)

Is there some reason why this is explicit instead of implicit?

1.2.840.10008.1.2 is set but explicit is still true for some reason.

I don't understand your question.  The P10 header is always explicit and the transfer syntax for the dataset is specified there which can be implicit

Sorry logging weirdness on my part mixed in logs from the previous variable,  through it was getting set wrong.  I am not going to worry about it to much, looks like something just messed up scrubbing the data out of these files and not sure if this would ever come up with a real file.  Would be nice at some point to have a better error message for this.

Yes, it would be nice if the exception included the problematic tag, length and number of bytes overrun.  I'll add an issue to track that

Thanks I will close this one out.

Keeping this open until the exception detail is added

I am planning to push a new build out this weekend, if anyone wants to submit a PR for this I would be thankful :)  If not, I'll do the work

It looks like this error is due to the Procedure Code Sequence (0008,1032) not being followed by an item tag (FFFE,E000). @chafey I have a PR forthcoming.

@chafey I have a PR ready to go, but it affects tests from #35, so if I create a new PR it also pulls in my changes from #35. How would you like me to proceed?

Can you add the fix to the #35 PR?

@jkrot this is now in 1.3.0, can you verify and close ?

I am still just seeing the error Uncaught # on version 1.3.0.
It doesn't seem to be showing this error message that was added for the commit. "dicomParser.readSequenceItem: item tag (FFFE,E000) not found at offset " + startPosition;

@jkrot Are you sure you're using the latest? If I drop your file on this example from the latest release, I get the item tag not found exception.
Note that this error won't happen on an implicit VR file without the vrCallback being provided: since it uses the peek to determine whether the tag has type VR, if the item tag is missing, it will fail the check and not even look like a sequence.

I see the problem , If I check the error messaging it passes the error message up, I was collecting my errors together because I am doing a bulk folder parsing.  I see the change on the server so that is good enough for me, I will have to rework some local code to handle the errors better.

I have same isue when i tried to display dicom image in dwv viewer :


feat: clarify that 'Text' supports markdown

Making it more clear that the "Text" layout element in dashboards supports Markdown by relabeling to "Text / Markdown"

It was called Markdown before... I'm not sure why we moved away from that in the first place, but perhaps there was a good reason. Maybe @kasiazjc or @yousoph remember?

I could even see a world where it's a "Rich Text" component and we eventually support Markdown/Handlebars/Jinja, or even add proper WYSIWYG rich text controls that use markdown without the user knowing.

GPT suggested "Rich Text" too but had to assert a momentary superiority over AI to try and preserve some self-worth :)

Oh, fine :P I look forward to the "Text / WYSIWYG / Markdown / Jinja / Handlebars / HTML / Liquid / Mustache" component ;)


React UI: Changing color for a shape

@ActiveChooN , could you please review and test the patch?


allow to simply build using sbt

We want a simply .jar file without the scala dependencies and use it within https://github.com/KWARC/MMT.
The added file build.sbt allows to call sbt package. This will create target/scala-2.11/leo_2.11-0.3.jar.
I could not convince maven to also create a .jar without the dependencies. I'm quite happy with SBT. In  https://github.com/KWARC/MMT/blob/svn-mirror/src/build.sbt we also create assembled jars for mmt and the jedit  MMTPlugin.
Keeping both files, pom.xml and build.sbt, (wrt versions) up-to-date might be extra work, though.

We've actually switched from maven to sbt because sbt has better re-compilation checking. (maven has problems with file names that do not produce matching class files.)

We can update both, but on our systems sbt is currently not working with the scala version >=2.11.
But we could completely switch, as soon as sbt is fixed.

under what system are you working? I use sbt version 0.13.8. http://www.scala-sbt.org/release/tutorial/Installing-sbt-on-Linux.html. (The Scala version could be increased to 2.11.7 and the scala modules to 1.0.4.)


ES: Support authentication

From @TamalSaha on May 22, 2017 14:0

[ ] TLS client auth
[ ] SearchGuard

This can be used by exporter.
Copied from original issue: k8sdb/elasticsearch#65

This issue was moved to kubedb/project#77


Fix icon loading in Blockstack extension

Icons aren't loading for me when using the extension with the testnet demo at http://testnet-demo.blockstack.org/

I am unable to reproduce this bug, unfortunately. @timstackblock can you repro?


feat: consider creating a storage account for tfstate

Please vote on this issue by adding a 👍 reaction to the original issue to help the community and maintainers prioritize this request
Please do not leave "+1" or "me too" comments, they generate extra noise for issue followers and do not help prioritize the request
If you are interested in working on this issue or have submitted a pull request, please leave a comment

Description
App workloads that want to use Terraform will need somewhere to put their state.
Having this created by the vending machine would encourage isolation of these into app workloads, reducing the blast radius should be storage account be compromised.
Is your feature request related to an issue?
This is a new feature suggestion.
Describe the solution you'd like
Create a storage account & container, secured using RBAC, as an optional component for the vending machine.
Currently we do this by a separate module outside of lz_vending, as part of the sub vending process.
You could consider having a central "platform" location for tfstate files, however I consider this to be an unwise approach due to the sensitivity of the state file - better to have these created per workload.
Additional context

We are considering this for another project, so will close this but watch this space!


docs: handle minor releases

should be backported to 0.14

Please don't merge yet; I will merge the gtk4-rs one first, backport it, do a 0.1.1 release (just from Github, no tags or anything); see if it properly detects the version, cancel the job, remove the release & then we can safely merge things here.

works fine :)

You do backport PRs?


First PR was not triggered

After following the setup instructions, the first PR was not triggered.
- Generate a copy of this repo by clicking on this link. Name your repo anything you like except {your-username}.github.io.
- GitHub Actions will automatically open a PR on your new repository ~ 30 seconds after the copy is created. Follow the instructions in that PR to continue.

Four days ago I was able to copy the repo successfully. Today, I have tried twice without success.  I cannot see any recent commit in the last few days that might be causing the issue (an issue in the GitHub side?_
Thanks for this great tool.

There appears to have been some recent issues with GitHub.  I just tested it and everything works for me.

Hi there, did you eventually get the PR? I have the same problem. Tried multiple times and not getting any. Not sure where to go from here. I'm new to fastpages, love the concept but don't know it well enough to figure out what to do now.

Enable local and third party Actions for this repository) I got the PR. Thanks. Apologies for trouble but it may be worth mentioning this in the instruction?

@marcingminski please submit a PR to edit the instruction

After following the setup instructions, the first PR was not triggered. Tried  in the last 5 days with no success.

@kennedykwangari you must have not enabled Actions (see the instructions, as well as the comments in this issue).  I have tested it just now, and it works.

@hamelsmu  I have enabled local and third party Actions and followed all the instructions shared but to no avail.....

@kennedykwangari its very difficult to help you because you are not pointing me to a reproducible public example.
I am only left to guess on what your issue to be:
Your repo isn't using fastpages, its using fast_template.

@kennedykwangari Additionally, I can see that you already have a fastpages repo and blog that is working correctly so it appears that everything is working correctly.


document symbols in Visual Studio 2017 again

Produce and upload symbols for Windows
https://github.com/dotnet/coreclr/issues/10873
By default, the Microsoft System Servers are not enabled

because:

The performance of remote symbol stores can vary due to latency, bandwidth, or availability of servers.  Debugging performance can be improved by selecting the option to load only specified modules when enabling this server.

Without it enabled, performance profiling has issues:

Profiling started.
Profiling process ID 27040 (dotnet).
Process ID 27040 has exited.
Data written to C:\Users\taggac\coreservices\VimServiceTest\dotnet180707.vsp.
Profiling finished.
Failed to load symbols for C:\Program Files\dotnet\shared\Microsoft.NETCore.App\2.1.1\coreclr.dll.
Failed to load symbols for C:\Program Files\dotnet\dotnet.exe.
Failed to load symbols for C:\Program Files\dotnet\shared\Microsoft.NETCore.App\2.1.1\System.Private.CoreLib.dll.
Failed to load symbols for C:\Users\taggac\coreservices\VimServiceTest\bin\Debug\netcoreapp2.1\VimService.dll.
Failed to load symbols for C:\Users\taggac\.nuget\packages\vmware.vsphere.management\6.5.1-build.62\lib\netstandard2.0\VMware.vSphere.Management.dll.
Failed to load symbols for C:\Users\taggac\.nuget\packages\system.private.servicemodel\4.4.2\runtimes\win7\lib\netstandard2.0\System.Private.ServiceModel.dll.
Failed to load symbols for C:\Program Files\dotnet\shared\Microsoft.NETCore.App\2.1.1\System.Private.Uri.dll.
Failed to load symbols for C:\Program Files\dotnet\shared\Microsoft.NETCore.App\2.1.1\System.Linq.dll.
Failed to load symbols for C:\Program Files\dotnet\shared\Microsoft.NETCore.App\2.1.1\System.ObjectModel.dll.
Failed to load symbols for C:\Program Files\dotnet\shared\Microsoft.NETCore.App\2.1.1\System.Private.Xml.dll.
Failed to load symbols for C:\Program Files\dotnet\shared\Microsoft.NETCore.App\2.1.1\System.Runtime.dll.
Failed to load symbols for C:\Program Files\dotnet\shared\Microsoft.NETCore.App\2.1.1\System.Private.DataContractSerialization.dll.
Failed to load symbols for C:\Program Files\dotnet\shared\Microsoft.NETCore.App\2.1.1\System.Text.RegularExpressions.dll.
Failed to load symbols for C:\Program Files\dotnet\shared\Microsoft.NETCore.App\2.1.1\System.Runtime.Extensions.dll.
Failed to load symbols for C:\Program Files\dotnet\shared\Microsoft.NETCore.App\2.1.1\System.Collections.NonGeneric.dll.
Failed to load symbols for C:\Program Files\dotnet\shared\Microsoft.NETCore.App\2.1.1\System.Diagnostics.TraceSource.dll.
Failed to load symbols for C:\Program Files\dotnet\shared\Microsoft.NETCore.App\2.1.1\System.Collections.dll.

The fact that the Visual Studio 2017 15.7.4 Enterprise Performance Profiler still doesn't support portable pdb files is really frustrating.
Improve NuGet package debugging and symbols experience
https://github.com/NuGet/Home/issues/6104
NuGet Package Debugging & Symbols Improvements
https://github.com/NuGet/Home/wiki/NuGet-Package-Debugging-&-Symbols-Improvements


Numba-based StdDevUDF

This version is slightly about 2x faster compared to the version in #625 for the benign case of signal buffers that fit comfortably into the CPU caches.
For the malign case of signal buffers that don't fit the caches well,
it is about 10x faster since it eliminates large intermediate buffers and
calculates each pixel in one pass the result in cache-friendly blocks and CPU -friendly access patterns.

Added test for numerical stability.
Added citation in bibtex

Contributor Checklist:

[x] I have added myself to the creators.json file
[x] I have added/updated documentation for all user-facing changes
[x] I have added/updated test cases

Thx @sk1p for the feedback! This should be ready for a second round of review.

The Numba coverage for process_tile was not counted for some reason. It did work before, with the exception of not passing through the blocked part of the loop since the input data was too small.

The Numba coverage for process_tile was not counted for some reason. It did work before, with the exception of not passing through the blocked part of the loop since the input data was too small.

coverage issues are best debugged locally (I don't trust codecov... the travis job says coverage was uploaded, but apparently it was not correctly merged into the full coverage report, sigh.) - did you try tox -e numba_coverage and checking the result in the htmlcov directory?

did you try tox -e numba_coverage and checking the result in the htmlcov directory?

Good point! The function was actually never called since the partition did fit in a single tile. I've adapted the parameters accordingly. At least locally, the coverage is 100 % now.

Perfect, thanks, merged!


Suggestion - show wait time

Found this handy for debug/sanity
print(f'not enough time has passed yet... Waiting {TIME_DIFFERENCE} minute(s)')

implemented.


Bug in /template/game.p8

I noticed a bug in game.p8
To replicate:
1: Use purple tentacle
2: Move to the right
3: Use humanoid
4: Try to walk past the tentacle
The tentacle will repeat "STOP! COME BACK HERE!" ad infinitum

I tried to replicate again and couldn't, weird. So my replication instructions dont work

Yeah, ability to switch chars was a quick demo of the concept, so wouldn't be surprised if there's a couple of edge-cases.
Thanks for report, though.


Undefined references are not not shown

Atom-LaTeX does not show warnings about undefined citations - this is critical when writing a thesis or large document with citations.

@madsmh What toolchain are you using?
I get the expected warning message "Citation 'xxx' on Page 'y' undefined" with biber

Feel free to comment to reopen this issue!


Asyncification II: As Awaited

Redo the sync -> async changes from prior jmt proof of concept
Find a clever and good way to support both synchronous and asynchronous code

https://docs.rs/futures/latest/futures/task/fn.noop_waker.html might be useful for (2)


change title on README

Left reviews and line comments
Created a file and made a commit
Opened a pull request

ok


Problem typing optional props with exactOptionalPropertyTypes enabled in tsconfig

Vue version
3.2.37
Link to minimal reproduction
https://sfc.vuejs.org/#eNqdUzuP1DAQ/itWqpx0iREnhBSyuaUAiQaoqNxkk9nFt/FDfgShkP/OOE72QnK6gs6eGX+PmfGQfNQ67z0kRVI6ELqrHVRMElJ+kdq7r16cwJA+E6qF7sCSvu48sITQWKSrYSBTjDw+EpZ42cIZ0+NYUh1LTt45Jcmx6XhzXRDIgbx7w5Lq27WksQCLS7pSgFfbGK4dseC8Jl0tL/jaWXzFJBdaGUcGYuBMRnI2SiA7+mDJLbk2MBfkdBUMtkM5k42S1s02DgGylPHZHzIZ4hLaKr0d7z4ErVEdaknuk8iYiVrnT1ZJbOYQvLM5gZoLMkVCbKIt8PDTOW0LSr3U10veKEGPmKPGS8cFZK0Sx4f8bf7wnrbcunU8Byuyk1G/LNp4Qvj7FTjFYA8mM4CCDZhXyTa1/xBucjvSwDkyOWIDNm3dbxMPBas9arxBXPdjXif3WwNGY9vn9fqfdUBfyAPtbieWIWujtMUhx1F+D7dymswkbJJTkP300WWVhrkvOCC4u8F8wssMk+Jz/Aa6RdnFMyZOKO7XS+B3BekV33Ose4Rci7d0IrqAS/HhHm1ZNIN9MjIazp+VID5ObdoX7GS6FWWd4fLygroFdvklujYWPneqnjGC8JAPjUlf60AsDArG7Uca/wK66Je8
Steps to reproduce
See reproduction link for full example.
I declare a property which allows undefined:
const props = defineProps<{
  modelValue: number | undefined
}>();

and actually pass undefined:
<template>
  <TheComponent v-model="value" />
</template>

<script setup lang="ts">
const value = ref<number | undefined>(undefined);
</script>

What is expected?
Vue doesn't emit runtime errors for explicitly allowed and used undefined properties.
What is actually happening?
I get the following Vue runtime error in dev mode
[Vue warn]: Invalid prop: type check failed for prop "modelValue". Expected Number | Null, got Undefined

This is because the SFC compiler emits the following property declaration. Note how null was used instead of undefined:
props: {
  modelValue: { type: [Number, null], required: true }
},

If I modify the generated code and runtime like below (see <<< and >>>), to allow undefined, it seems to work correctly. But I don't understand if there are other reasons for not allowing undefined to be a required property value:
// Component
props: {
  modelValue: { type: [Number, undefined], required: true }
},

// Vue Runtime
function getType(ctor) {
  const match = ctor && ctor.toString().match(/^\s*function (\w+)/);
  // <<<<<<<< added `undefined` support >>>>>>>>>>
  return match ? match[1] : ctor === null ? "null" : ctor === undefined ? "undefined" : "";
}

function assertType(value, type) {
  let valid;
  const expectedType = getType(type);
  if (isSimpleType(expectedType)) {
    const t = typeof value;
    valid = t === expectedType.toLowerCase();
    if (!valid && t === "object") {
      valid = value instanceof type;
    }
  } else if (expectedType === "Object") {
    valid = isObject(value);
  } else if (expectedType === "Array") {
    valid = isArray$1(value);
  } else if (expectedType === "null") {
    valid = value === null;
  // <<<<<<<< added `undefined` support >>>>>>>>>>
  } else if (expectedType === "undefined") {
    valid = value === undefined;
  } else {
    valid = value instanceof type;
  }
  return {
    valid,
    expectedType
  };
}

System Info
System:
  OS: Windows
Binaries:
  Node: 18.7.0
  npm: 8.15.0
npmPackages:
  vue: ^3.2.37 => 3.2.37

Any additional comments?
I'm using undefined when a value is not set by the user, for example empty number <input> or unselected <select>, as I understood to be current recommended practices:

Use undefined. Do not use null.
https://github.com/Microsoft/TypeScript/wiki/Coding-guidelines#null-and-undefined

For now, just use ?: in the prop type  to make the prop optional. Also allows for rhe prop to be undefined.
const props = defineProps<{
  modelValue?: number
}>();

That's what I originally tried, but I also have "exactOptionalPropertyTypes": true in my tsconfig.json (https://devblogs.microsoft.com/typescript/announcing-typescript-4-4-beta/#exact-optional-property-types) and I get vue-tsc errors:
Type '{ modelValue: number | undefined; }' is not assignable to type
'Omit<Readonly<ExtractPropTypes<__VLS_TypePropsToRuntimeProps<{ modelValue?: number; }>>>
& { "onUpdate:modelValue"?: (value: number | undefined) => any; }
& VNodeProps
& AllowedComponentProps
& ComponentCustomProps, never>' with 'exactOptionalPropertyTypes: true'.
Consider adding 'undefined' to the types of the target's properties. ts(2375)

If I add | undefined, it still doesn't work:
const props = defineProps<{
  modelValue?: number | undefined
}>();

Type '{ modelValue: number | undefined; }' is not assignable to type
'Omit<Readonly<ExtractPropTypes<__VLS_TypePropsToRuntimeProps<{ modelValue?: number | undefined; }>>>
& { "onUpdate:modelValue"?: (value: number | undefined) => any; }
& VNodeProps
& AllowedComponentProps
& ComponentCustomProps, never>' with 'exactOptionalPropertyTypes: true'.
Consider adding 'undefined' to the types of the target's properties. ts(2375)

This could be a vue-tsc bug, I'm not sure.

As an experiment, try this please:
const props = defineProps<{
  modelValue?: number | undefined
  'onUpdate:modelValue'?: undefined | (value: number | undefined) => any
}>

and don#t use defineEmits()
I'd suspect that vue-tsc has a problem with the event prop generated from the defineEmits rather than the modelValue prop

I get the errors both in VS Code with Volar when the file is opened and when running npx vue-tsc -noEmit in the terminal in a vite based project.

Volar:
Type '{ modelValue: number | undefined; }' is not assignable to type
'Omit<Readonly<ExtractPropTypes<__VLS_TypePropsToRuntimeProps<{ modelValue?: number | undefined; "onUpdate:modelValue"?: ((value: number | undefined) => any) | undefined; }>>>
& VNodeProps
& AllowedComponentProps
& ComponentCustomProps, never>' with 'exactOptionalPropertyTypes: true'.
Consider adding 'undefined' to the types of the target's properties. ts(2375)

npx vue-tsc -noEmit:
error TS2375: Type '{ modelValue: number | undefined; }' is not assignable to type
'IntrinsicAttributes
& Partial<{}>
& Omit<Readonly<ExtractPropTypes<__VLS_TypePropsToRuntimeProps<{ modelValue?: number | undefined; "onUpdate:modelValue"?: ((value: number | undefined) => any) | undefined; }>>>
& VNodeProps
& AllowedComponentProps
& ComponentCustomProps, never>' with 'exactOptionalPropertyTypes: true'.
Consider adding 'undefined' to the types of the target's properties.
  Type '{ modelValue: number | undefined; }' is not assignable to type
'Omit<Readonly<ExtractPropTypes<__VLS_TypePropsToRuntimeProps<{ modelValue?: number | undefined; "onUpdate:modelValue"?: ((value: number | undefined) => any) | undefined; }>>>
& VNodeProps
& AllowedComponentProps
& ComponentCustomProps, never>' with 'exactOptionalPropertyTypes: true'.
Consider adding 'undefined' to the types of the target's properties.
    Types of property 'modelValue' are incompatible.
      Type 'number | undefined' is not assignable to type 'number'.
        Type 'undefined' is not assignable to type 'number'.

The problem also appears with simple properties, so it's not modelValue specific:

Okay, so I can kinda reproduce this, but a full repro from your side in a github repo would be apprechiated to make sure we are looking at the same things.
I have:

exactOptionalPropertyTypes: true in my tsconfig
Typescript 4.6 in my project i'm testing with. (yes, not latest)
latest Volar / vue-tsc (0.40.1)

This is HelloWorld.vue ...:
const props = defineProps<{
  msg?: string | undefined;
}>();

This is what I have in the parent's state:
import { ref, Ref } from 'vue'

const nameRef: Ref<string | undefined> = ref("Tom");
const name: string | undefined = "Tom";

And it seems there is some kind of problem with the unwrapped ref's type when using exactOptionalPropertyTypes.
this does work fine:

...while this does throw the error:

In plain TypeScript there is no problem with leaving the question mark in, so it is related to Vue & co somehow. There are no reported errors in the code below with exactOptionalPropertyTypes: true
// test.ts

interface Props {
  required: string
  optional?: string | undefined
}

const p1: Props = { required: "req", optional: "opt" }
const p2: Props = { required: "req", optional: undefined }
const p3: Props = { required: "req" }

export { p1, p2, p3 }

That's because in your example you are essentially casting all 4 objects to be of type Prop. They don't have their own explicit type that could clash with your : Props annotation.
What happens in this issue is more like this (pseudocode, and a bit backwards):
interface PropsExtractedFromParentTemplate {
  msg?: string | undefined
}

interface PropsFromChildComponentDef {
  msg: string | undefined
}

const propsFromParent: PropsExtractedFromParentTemplate  = {
  msg: 'Tom'
}

propsFromParent.msg

function ChildComponent(props: PropsFromChildComponentDef) {
  props.msg
}

ChildComponent(propsFromParent)

TS Playground

@pikax So there's two layers to this:

Runtime/codegen: There's the problem of code generation: an optional prop generates a proper runtime prop definition, while a prop with | undefined doesn't. The PR that was already submitted seems to fix this.
Types: the types that vue-tsc/Volar generates from the defineProps generic argument are not practical when exactOptionalPropertyTypes is being used. This has to be solved in Volar.

Would you agree?

For Volar/vue-tsc, please track https://github.com/johnsoncodehk/volar/issues/1798.

There are one more problem: Type definitions of native elements.
For example, this simple component from Nuxt Content has type error with exactOptionalPropertyTypes option, because in this component width can be undefined while native img's width prop has optional non-undefined Numberish type. (under this TS option, optional and allowing undefined is different)
https://github.com/nuxt/content/blob/409f03f81f3023d314a7a4d995dec6a726d79a60/src/runtime/components/Prose/ProseImg.vue
This problem can't be resolved without modifying native types in packages/runtime-dom/types/jsx.d.ts, so I suggest adding | undefined to all optional props.
ref: https://github.com/vuejs/core/issues/6068
For your reference, in the type definition of react, all optional props has | undefined to support exactOptionalPropertyTypes.
https://github.com/DefinitelyTyped/DefinitelyTyped/pull/54352

The linked PR (https://github.com/vuejs/core/pull/6533) does solve the issue for me.
Maybe it can be looked at and merged in?

Any progress on this issue?

Bump - I also have this issue

Here's what works for me now
<script setup lang="ts">
     import {ButtonHTMLAttributes} from 'vue';
     defineProps<ButtonHTMLAttributes>();
</script>

<template>
	<button :type="type ?? 'button'">
		<slot />
	</button>
</template>

Here's what I expect to work
<script setup lang="ts">
     import {ButtonHTMLAttributes} from 'vue';

     withDefaults(defineProps<ButtonHTMLAttributes>(), {type: 'button'});
</script>

<template>
	<button :type="type" >
		<slot />
	</button>
</template>

Error caused
error TS2379: Argument of type '{ type: "button" | "reset" | "submit" | undefined; class: string; }' is not assignable to parameter of type 'ButtonHTMLAttributes & ReservedProps & Record<string, unknown>' with 'exactOptionalPropertyTypes: true'.

Consider adding 'undefined' to the types of the target's properties.

 Type '{ type: "button" | "reset" | "submit" | undefined; class: string; }' is not assignable to type 'ButtonHTMLAttributes' with 'exactOptionalPropertyTypes: true'. Consider adding 'undefined' to the types of the target's properties.
    Types of property 'type' are incompatible.
      Type '"button" | "reset" | "submit" | undefined' is not assignable to type '"button" | "reset" | "submit"'.
        Type 'undefined' is not assignable to type '"button" | "reset" | "submit"'.

Vue ButonHTMLAttributes Interface for reference
export interface ButtonHTMLAttributes extends HTMLAttributes {
    autofocus?: Booleanish;
    disabled?: Booleanish;
    form?: string;
    formaction?: string;
    formenctype?: string;
    formmethod?: string;
    formnovalidate?: Booleanish;
    formtarget?: string;
    name?: string;
    type?: 'submit' | 'reset' | 'button'; // It feels like adding | undefined here will suppress the error ?
    value?: string | string[] | number;
}

If you are lucky and have Vue 3.5+, you can use the new Reactive Props Destructure.
<script setup lang="ts">
  import type { ButtonHTMLAttributes } from 'vue';

  interface Props extends ButtonHTMLAttributes {}

  const { type = 'button' } = defineProps<Props>();
</script>

<template>
  <button :type>
    <slot />
  </button>
</template>


Binding arrays for "IN" queries

As example:
 List<Integer> age = new ArrayList(); age.add(10); age.add(20); age.add(30); r2dbc                 .withHandle(handle -> handle.select("select * from persons where age in ($1)")                         .bind("$1", )                 .mapResult(result -> result.map(toWrapper())));

This does not work as R2DBC Client does not process the SQL query. Each bound parameter in a IN requires its own placeholder. Similar, to how JDBC works.


Fixes #26700 -- Added how to upgrade to TEMPLATES link in 1.10 release notes.

The language is a little bad but it formatted correctly. Is this the right place to put it in the release notes? Since the users actually have to do something it seems important especially the auth bit (?: (admin.E402) 'django.contrib.auth.context_processors.auth' must be in TEMPLATES in order to use the admin application.)  which I only discovered after following the guide and hitting a check.

merged in d65e2899b2b25c62a4ead7aba121421c19e55bce, thanks!


CapacitorJS is supported?

Will it work from on CapacitorJS apps?
Since Capacitor uses http://localhost for Android and capacitor://loaclhost for iOS, I'm interested in how CORS will work here.

I just figured out, that iOS will never work, since it's using capacitor:// protocol and this SDK has condition "only http || https".

Fixed on 28 Feb 2023.


Add reload systemd to run unit generator for st2ctl

This PR is part of https://github.com/StackStorm/st2-packages/pull/706 to use st2.confto dynamically generate st2api, st2auth and st2stream socket files.
For this to work seamlessly for most users, an update to st2ctl is required to perform a systemctl daemon-reload which will regenerator the .socket files and pickup any modifications to st2.conf.
Fixes: https://github.com/StackStorm/st2/issues/3356 https://github.com/StackStorm/st2-packages/issues/686 https://github.com/StackStorm/st2/issues/2676

Thanks, @nzlosh!
Great item for including in the v3.6.0 :+1:  Marked it as such.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

This PR comes with the https://github.com/StackStorm/st2-packages/pull/706 and should be merged only once the change in packaging is ready.


How to make an Image Carousell  for your website using basic HTML,CSS and Javascript.

Be sure to visit our Resources Page for tools, resources, and example articles to go over.
NOTE: (Please ensure that you have only one open issue + linked pull request at a time. This will ensure that we complete the article in a timely manner from inception to publishing.)
We're looking for the first 2-3 paragraphs of the article that appropriately summarize what your article will be about.
NOTE: We tend to stray away or tend not to publish reviews/comparisons of commercial product offerings.
Title
How to make an Image carousel using basic HTML,CSS and Javascript.
Introduction paragraph (2-3 paragraphs):
An Image Carousel is like a container of Images which the user can select through by clicking a buttons which directs him forward or backwards in the collection of images. It enables the website to be more interactive and hence enhance the user experience. The collection of Images can be set to change automatically by use of a timer or manually when the user clicks the displayed buttons.
Key takeaways:
After reading this article, the user will have gained the following:
1.An understanding of HTML since it is among the prerequisites.
2.An understanding of CSS and its use in making a web-page stylish.
3.An understanding of Javascript and its use in adding more functionality to a web page.
4. How to interweave the understanding of the three languages to make their web pages more interactive,stylish and appealing to the eye
References:
https://www.w3schools.com/tags/att_script_src.asp
Templates to use as guides

How To Guide Template
Software Review Template
Tutorial Template

topic suggestion

good topic @KanizoRGB - approved


made UnitTest PHP 5.4 compatible

fix problem in CI in
https://github.com/mschindler83/fints-hbci-php/pull/25

Changed Coding Style (also when this is not my code, but I would like to see this PR merged ;) )


Add support for user-level API keys to be used instead of JWTs

HQ: https://github.com/resin-io/hq/pull/861
Discussions:

https://www.flowdock.com/app/rulemotion/resin-tech/threads/Tp6Up7Zu2U9qAnOLfqsqY3bYqv0
https://www.flowdock.com/app/rulemotion/resin-frontend/threads/_g5ZBIGqmsKYzk5YG_cDx5B07-h
https://www.flowdock.com/app/rulemotion/platform/threads/pUlR_TwVuF5RywMqsgYCxYe-QVL

Just to summarize the current state and plan: the goal here is that as well as the currently available login methods, you should also be able to log in with an api key.
The API work for this is done (ask @flesler if you have any specific questions on the backend part), and there's a replacement for resin-token called resin-auth that should give you a single interface that will work for both JWTs and api keys.
To do this, we're going to need to:

Update resin-request to use resin-auth, so that when it sends requests, they work with either the JWT or the API key
Replace resin-token in the SDK with resin-auth:

There are some places that depend on the internal data of the token (https://jwt.io/ can be helpful to see this data for yourself), those will need to change (because API keys contain no data), and should generally all be making requests to our API instead.
The rest of this should be a fairly simple translation between the differences in resin-token and resin-auth's API

Add a resin.auth.loginWithApiKey method

One thing I'd like to add is. Historically, JWT have been sent on the Authorization header while API Keys where included as apikey in the querystring (most of the time). With this PR that is close to production, due to a security concern, we're moving towards sending both JWTs and API Keys in the same place (Authorization header). This actually simplifies a lot the integration of resin-auth into resin-request. Because you just need to put whatever is in auth.getKey() in the header, regardless of what it is

@flesler , @pimterry , the SDK is using token.getUserId, token.getUserName, token.getEmail. How should I use these methods with resin-auth ?

@pimterry , I also have a lot of these errors: ```17) Application Model given no applications resin.models.application.create() should be able to create a child application:
TypeError: token.has is not a function
at ResinPine._request (node_modules/resin-pine/build/pine.js:86:20)
at ResinPine.PinejsClientCore.request (node_modules/pinejs-client/core.js:615:25)

the SDK is using token.getUserId, token.getUserName, token.getEmail. How should I use these methods using resin-auth ?

@MoranF see my comment above:

There are some places that depend on the internal data of the token (jwt.io can be helpful to see this data for yourself), those will need to change (because API keys contain no data), and should probably all be making requests to our API instead.

Those token.has errors you're seeing are errors with resin-token usage inside resin-pine - you'll need to upgrade that to use resin-auth too.

@pimterry , the SDK already uses auth = require('../auth')(deps, opts) and resin.auth. I can change also token to auth, but I'm afraid it can be confusing. What do you say?

@MoranF we're going to stop exposing the instance directly, so resin.auth will still be the SDK's current auth  module, and resin.token will just go away. I don't have an easy answer for variable naming inside the SDK code itself though, you'll need to come up with something sensible there. auth/authSdk?

@pimterry , how do I start using the API in the SDK project?

@MoranF sorry, I have no idea what that means. Can you be more specific?

@pimterry , about Stop exposing resin.token directly to end users, and maybe expose resin.auth.getKey() instead (this is mainly just used by the UI, so just hunt down whatever it needs it for)
it seems that the UI uses token.set , token.get and token.remove  (and maybe will need token.hasKey also).
Do you prefer that I will expose all these methods instead the whole object?

@MoranF something like that, yes. It depends a bit on how the UI uses these methods, since maybe there are changes we should make in the UI instead, but if we can't then making them standalone methods here instead is the right choice.
For example, why does the UI use token.remove instead of the already existing sdk.auth.logout()? Could the UI use the already existing sdk.auth.isLoggedIn() instead of hasKey, and auth.loginWithToken() instead of token.set? We should add extra methods where it's necessary to support things that the SDK can't already do, but we should first fix the UI to simplify things as much as we can.

Depends-On: https://github.com/resin-io/resin-api/pull/661

@flesler , is the method token.setKey should work also with an api-key as a parameter?

@pimterry , about Add a resin.auth.loginWithApiKey method, auth.setKey should work with api keys also, so the method sdk.auth.loginWithAuth should work with JWT and with api keys, isn't it?
I also had some failed tests, but they failed also when I ran these tests on master.

sdk.auth.loginWithAuth should work with JWT and with api keys

Sure, if that works that's great :+1:

is the method token.setKey should work also with an api-key as a parameter?

It's not really clear what this sentence means. Are you asking if setKey should work with both API keys and JWTs? If so, it sounds like you've already found the answer, but let me know if not :smiley:.


fix: fix table outline frame calculations; removed conditional rendering of outline

The TableExampleFactory creates tables with outline borders, but the outlines are never drawn. This fixes that.

Hi Jeff, thanks for opening up this pull request.
I can confirm that the current example is not working as expected, and that your PR fixes it.
I do have a couple of comments, I'll add to the review

I'm not set up for iOS dev at the moment so I can't take a look at the failing tests, but I have thoroughly tested this on macOS and fixed one final bug with the final offsets.

Thank you, I can take over looking at the tests for iOS and fix it in the upcoming days

So I fixed the expected test results, they did not include the table outline to begin with.
But it seems like there is something wrong in the CI, going to fix this on a different branch, I'll then update this PR

alright looks like the checks are now passing.
Anymore changes from your side? Otherwise, lgtm

Amazing thank you! It's all working for me, let's merge!


"scss.lint.unknownProperties" : "ignore" does not work on latest insiders build

VSCode Version:
OS Version:

Steps to Reproduce:

Using an unknown property (working with the Lost grid) - such as lost-column.
Set "scss.lint.unknownProperties" to "ignore".
VSCode complains about lost-column being an unknown property.

This occurs in the recent builds and I'm fairly sure is as a result of the recent refactor - this does not occur in the main.
Just as a side note - it may be of value to teach VSCode about certain "unknown" properties - lost grid is an example, in a similar way to how we teach VSCode or other editors about json schemas, especially with post-css plugins becoming a bigger deal.

duplicate of #7777


fix: Keyboard command to post reaction fails if there is a system mes…

Fix emoji picker issue when system message is present
https://github.com/mattermost/mattermost/issues/24976
#24976
Fix error where +:emoji: did not react to the last message if the last message was a system message

Hello @MeenuyD,
Thanks for your pull request! A Core Committer will review your pull request soon. For code contributions, you can learn more about the review process here.
Per the Mattermost Contribution Guide, we need to add you to the list of approved contributors for the Mattermost project.
Please help complete the Mattermost contribution license agreement?
Once you have signed the CLA, please comment with /check-cla and confirm that the CLA check is green.
This is a standard procedure for many open source projects.
Please let us know if you have any questions.
We are very happy to have you join our growing community! If you're not yet a member, please consider joining our Contributors community channel to meet other contributors and discuss new opportunities with the core team.

/check-cla

Hello @MeenuyD,
Thanks for your pull request! A Core Committer will review your pull request soon. For code contributions, you can learn more about the review process here.
Per the Mattermost Contribution Guide, we need to add you to the list of approved contributors for the Mattermost project.
Please help complete the Mattermost contribution license agreement? Once you have signed the CLA, please comment with /check-cla and confirm that the CLA check is green.
This is a standard procedure for many open source projects.
Please let us know if you have any questions.
We are very happy to have you join our growing community! If you're not yet a member, please consider joining our Contributors community channel to meet other contributors and discuss new opportunities with the core team.

@MeenuyD can you please sign the CLA?

Hello @harshilsharma63 what should i do for cla

Hello @harshilsharma63 I have sign the cla

/check-cla

@MeenuyD You have a few linting issues. npm run fix should fix them all (or the majority). Can you take a look?

This PR has been automatically labelled "stale" because it hasn't had recent activity.
A core team member will check in on the status of the PR to help with questions.
Thank you for your contribution!


[SP-6520] Backport of PDI-20059.  REST plugin - initialize entity to …

…empty string instead of null (#9237)

 Note:

Frogbot also supports Contextual Analysis, Secret Detection, IaC and SAST Vulnerabilities Scanning. This features are included as part of the JFrog Advanced Security package, which isn't enabled on your system.

🐸 JFrog Frogbot

:white_check_mark: Build finished in 2h 54m 57s
Build command:
mvn clean verify -B -e -Daudit -Djs.no.sandbox -pl plugins/rest/core

:ok_hand: All tests passed!
Tests run: 32, Failures: 0, Skipped: 0    Test Results

:information_source:  This is an automatic message


Pass through loadbalancer annotations

Checklist

[ ] The PR has a meaningful title. It will be used to auto generate the
changelog.
The PR has a meaningful description that sums up the change. It will be
linked in the changelog.
[ ] PR contains a single logical change (to build a better changelog).
[ ] Categorize the PR by adding one of the labels:
bug, enhancement, documentation, change, breaking, dependency
as they show up in the changelog.
[ ] Link this PR to related issues or PRs.

can You edit description?


Done tracking with multiple branches

I think the bot needs to track "done" status per target branch, in https://github.com/go-gitea/gitea/pull/30193, it opened a second port backport to 1.21 after we closed the first one. Maybe backport/v1.21/done labels, or search existing PRs to do it label-less.

I agree

Could likely be done by checking by existance of branch in the bot's repo:

backport-29314-v1.21

https://github.com/GiteaBot/gitea-backporter/pull/125


Slack doesn't display desktop notifications

Hello,
Thanks for sharing slack example. It fails to start on my Debian Buster so i had to slightly change Dockerfile. Seems like X11 libraries incompatibility.
Here's the error that i get when slack tries to send notification
(slack:1): libnotify-WARNING **: 14:23:07.528: Failed to connect to proxy

I've tried various solutions to get it working, like setting DBUS_SESSION_BUS_ADDRESS and mounting it to container, setting various XDG_ variables, mounting /run/dbus inside container, running with --net=host, but no luck.
Another issue with slack, that it doesn't open links in system browser. Seems that containerized slack is not usable in real life.

To display notifications on host sent within a container, you need to connect the container with DBus from host.
Have a look at: How to connect container to DBus from host

@mviereck thx, i tried that with no results.

Maybe DBus only accepts messages sent by the same user.
Try the DBus setup along with --user $(id -u):$(id -g) to have the same user in container as on host.

Yes, that works, but there's still an issue with url links not being opened from slack when clicking.

url links not being opened from slack

An application in a container cannot start an application on host.
If you don't include a browser in the slack image, slack finds none.
It would be possible to transfer URLs with DBus, but I am not aware that any browser (or slack) supports that.
Though, you can just use the clipboard to transfer the URL.

Thanks for your help @mviereck
I've created modified version of slack with DBUS and updated Debian for those who may face the same issues.
https://github.com/kshcherban/slack-in-docker


WIP: feat(core-step-tracker): component refactor (#407)

Addresses #407
This refactor is extremely a work in progress! I'll end up changing the way some things here work, and there are a few things that still need to be worked out. Tests, for example. Up until now the goal has been to simply get it up and running in the new format with some of the new features.
Something to think on in the meantime though, should we try and police what goes into the current prop? Right now the prop will go to any number regardless of how many steps there actually are, so it's up to the developer consuming the component to worry about verifying the number in this prop.
(And once it's done, this should be squashed.)

Something to think on in the meantime though, should we try and police what goes into the current prop?

Good point. Seems like an appropriate thing to do, but its up to you if you want to add that in as it wasn't called out in the original story.  If we use PropTypes, then the airbnb-prop-types package has a range validator that could work. Also we could do Math.min and Math.max in the code to ensure that even if you pass too big/small a number it can't go past steps.length.

@ryanoglesby08 I think I'll do it since I feel like it adds a layer of polish to things. That validator would be perfect!

Still to come:

unit tests for other prop types
give user a warning for having a greater integer value for current than number of steps provided


[BUG] "Get-PnPTenantSite: The operation has timed out." when using "-IncludeOneDriveSites"

Reporting an Issue
Can't get all my sites with Get-PnPTenantSite anymore when using "-IncludeOneDriveSites" param.
no updates or major changes in my tenant to be noted, it had been working for months without a problem.
Expected behavior
It's supposed to give me all my sites (Sharepoint/OneDrive).
Actual behavior
Instead of giving all the sites, it loads for 5 minutes and then timeouts (without any partial result).
It only give me a single line error :

if i do $Error[0] | select * it give me this :

Steps to reproduce behavior

Connect to PnP, for example using this : Connect-PnPOnline -Url "tenantName-admin.sharepoint.com" -Interactive
Try to run this : $SITES = Get-PnPTenantSite -IncludeOneDriveSites

What is the version of the Cmdlet module you are running?

PowerShell : 7.3.6
PnP.PowerShell :  2.2.0

Which operating system/environment are you running PnP PowerShell on?

[X] Windows
[ ] Linux
[ ] MacOS
[ ] Azure Cloud Shell
[ ] Azure Functions
[ ] Other : please specify

Note
I also tried on another computer on another network, it's the same.
For information, I have more than 50k SharePoint/OneDrive sites... So maybe that's a relevant point.
I don't know if there's any limitation about throttling or max capacity (it's not in the doc of the cmdlet btw), and i can't try to remove some sites to test if it's because the result is too HUGE or not.

work again since this morning...
Maybe it was a temporary issue on SharePoint Online ?

Thanks for feeding back. Will now close.


Measure library creation overwriting the library resource file. Measure output incomplete.

Describe the bug
When compiling libraries with the packager, if the library is also a measure, it will overwrite the FHIR library resource file. Measures should be written to a different filename or folder. ResourcePackager.cs CreateMeasureResource.
We should also produce the full and correct measure FHIR resource.
To Reproduce
Steps to reproduce the behavior:
Compile elm that is both a library and a measure. Notice only the measure is created.
Version used:
2.0 branches.
⚠ Must be discussed at September WGM as this is not per spec.

Reopened - see comments https://github.com/FirelyTeam/firely-cql-sdk/pull/531#issuecomment-2385481213


Add feature to allow empty root password

Close https://github.com/mariadb-operator/mariadb-operator/issues/323
This PR introduces the rootEmptyPassword option to allow a simple mariadb connection without a password.
apiVersion: mariadb.mmontes.io/v1alpha1
kind: MariaDB
metadata:
  name: mariadb
spec:
  rootEmptyPassword: true

If rootEmptyPassword = true, the RootPasswordSecretKeyRef option will be ignored and the root password will be empty.
When rootEmptyPassword = false, the default behavior is unchanged: a random root password will be generated if a secret is not already provided.
With rootEmptyPassword = true, I can connect to the database as root without a password:
k -it exec mariadb-0 -- mariadb -D mariadb  -u root
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 152
Server version: 11.0.3-MariaDB-1:11.0.3+maria~ubu2204 mariadb.org binary distribution

Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [mariadb]> CREATE TABLE t1 ( a INT );
Query OK, 0 rows affected (0.025 sec)

Whereas if the rootEmptyPassword = false or nil, a password is required:
k -it exec mariadb-0 -- mariadb  -D mariadb  -u root
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)
command terminated with exit code 1

CI is complaining about not having generated artifacts:

https://github.com/mariadb-operator/mariadb-operator/actions/runs/7431141447/job/20221581492?pr=328

Just run make gen and commit. This is to make sure the CRDs, documentation and all the generated stuff is up to date.

CI is complaining about not having generated the artifacts:

https://github.com/mariadb-operator/mariadb-operator/actions/runs/7431141447/job/20221581492?pr=328

Just run make gen and commit. This is to make sure the CRDs, documentation and all the generated stuff are up to date. This includes our brand new API reference automatically generated from CRDs which I've added just yesterday, so be sure to rebase with main.

I rebased and generated the API documentation.


API Multi Field Filtering [OSF-6851]

Purpose

Allows for multi-field filtering in the API, i.e. /v2/users/?filter[given_name, family_name]=roll will filter users whose given_name OR family_name contains 'roll'.

Changes

Updated QUERY_PATTERN regex in the FilterMixin class (note: I'm not 100% confident in this regex).
Changes to parse_query_params() in FilterMixin and the format of the query dict that is returned.

Notes

The multiple fields included in the filter must be the same type, i.e. /v2/nodes/?filter[title, public]=science will give an error.
Multi-field filters can be combined with other multi-field or single-field filters.
/v2/nodes/?filter[title,description]=music&filter[public]=true will filter by:

(title contains 'music' OR description contains 'music') AND (public equals true)

/v2/nodes/?filter[title,description]=music&filter[category,description]=hypothesis will filter by:

(title contains 'music' OR description contains 'music') AND (category contains 'hypothesis' OR description contains 'hypothesis')

Ticket

OSF-6851

This looks great. Might as well do some regex tests in the super-fast TestCase (rather than OSFTestCase), and let's do one set of integrated view tests with in user search. Pass done. 🐧

Awesome. RTM when tests pass. 🎉 🐧 🎉


x-request-id is being modified when using tracing

Description:
The issue is that even by simply adding an empty tracing: {}, Envoy is modifying the x-request-id that was sent in the request, changing the version from 4 to 9 🤷♂
I have noticed this before in our logs from another gateway we have, which contains this configuration, but I had no idea that tracing was the cause, yesterday by luck I managed to track down the problem to this property when enabling tracing for this new gateway.
I configured Envoy with the upstream cluster pointing to postman-echo.com which will return as response body, the request headers sent.
curl --location --request GET 'localhost:8080/headers' \
--header 'x-request-id: 968ea8f8-3806-45c9-8228-8d3dde5df3b4' \
--header 'x-another-id: 968ea8f8-3806-45c9-8228-8d3dde5df3b4'

{
    "headers":{
        "x-forwarded-proto":"http",
        "x-forwarded-port":"80",
        "host":"localhost",
        "x-amzn-trace-id":"Root=1-5f97d990-6daf0ed27c296cad5e916f6c",
        "content-length":"0",
        "user-agent":"curl/7.64.1",
        "accept":"*/*",
        "x-request-id":"968ea8f8-3806-95c9-8228-8d3dde5df3b4",
        "x-another-id":"968ea8f8-3806-45c9-8228-8d3dde5df3b4",
        "x-envoy-expected-rq-timeout-ms":"15000"
    }
}

x-request-id change:
-968ea8f8-3806-45c9-8228-8d3dde5df3b4
+968ea8f8-3806-95c9-8228-8d3dde5df3b4

My use case is the one below, as I need to copy the x-request-id as a tag:
tracing:
  custom_tags:
      - tag: x-request-id
          request_header:
          name: x-request-id

But as you can try it out here, only by adding an empty tracing: {} the problem already happens.
Note:
The problem only happens with the x-request-id, as you can see I used also a x-another-id and that one did not change.
Versions I tried:

v1.16-latest
v1.15.0

Repro steps:
I created a gist with the problem here: https://gist.github.com/Brunomachadob/d998a59c27ada3cacfafa95d2f3ecd9f
Let me know if you need me to run it with envoy_collect, I tried a few times here but failed, guess I'm doing something wrong with the docker setup for it.

It looks like this is how stable tracing IDs work. @mattklein123 for more info

See the docs https://www.envoyproxy.io/docs/envoy/latest/intro/arch_overview/observability/tracing and https://www.envoyproxy.io/docs/envoy/latest/configuration/http/http_conn_man/headers#config-http-conn-man-headers-x-request-id.
Better docs appreciated, but this is "stable sampling" kicking in. You might be able to disable this by controlling random sampling. This is also why we made this component extensible, but there is no other implementation upstream. cc @euroelessar

Thanks for the reply...
But what couldn't understand is why the value is being mutated.
I configured Envoy with
generate_request_id: true
preserve_external_request_id: true

So I guess it should obey my configuration and if the header was provided, it should use it as it is.
My use case is related to PSD2 regulations for Open Banking and specifically about the Berlin Group specification, where every party calling our gateway will provide an UUIDv4 x-request-id header, and we should be able to track everything they send to us by it.
But the problem is they ask us to provide details about 968ea8f8-3806-45c9-8228-8d3dde5df3b4 and then we need to search on our services by 968ea8f8-3806-95c9-8228-8d3dde5df3b4

Oh, okay, now after navigating here I saw it
If not set, Envoy uses the default UUID-based behavior:
* Request ID is propagated using x-request-id header.
* Request ID is a universally unique identifier (UUID).
* Tracing decision (sampled, forced, etc) is set in 14th byte of the UUID.

So the decision of sampling and the actual sampling happens in different points in time?
You first need to tag the request that you want to sample with something, then later in time you check that tag in order to sample it?

Maybe I can try to come up with an extension based on UUIDRequestIDExtension that actually does the same, but specifically for the getTraceStatus & setTraceStatus uses a different header to keep track of the sampling.

Closing this one in favor of the other issue that I linked here.


add end of support notice to README.MD

@djulieann I think it's ok to merge this PR with that failing build, because that build already fails on the main branch. It's not an error introduced by this commit.


fix(encrypted-archive): introduce ts-pattern

This did not work well within our code that we considered implementing.


Add close icon to "You have been signed out" alert

Fixed with #83 (8ac50e767641dd39c5b8f8f6294aad0580482eea)


MmProbeAndLockPages but don`t MmUnlockPages

in KsSendRecv routine call MmProbeAndLockPages but don`t call MmUnlockPages

Good catch, thanks!


Update CSS for inline notebook cell buttons

It looks like the entire notebook can shift left/right when using these new buttons. Can you take a look to see if that can be resolved?


"Failable constructors" - Allow constructors to return undefined with "strictNullChecks" enabled.

Search Terms
Failable, constructor,  undefined, strictNullChecks
Suggestion
When strictNullChecks compiler option is set, constructors can not return undefined (or null).
The request is to allow marking a constructor as "failable", which will negate the strictNullChecks for that constructor, adding undefined to the possible return type of the constructor.
Use Cases
Similar to other languages (like Swift's init?()).
It is often useful to return undefined from the constructor, indicating that an object can not be created with given parameters.
This is possible in Javascript and Typescript unless strictNullChecks is set.
strictNullChecks is very useful feature and often is the desired default behavior for the project but with strictNullChecks, returning undefined is not possible and there is no way to modify consturctor's return type to include undefined as with regular function.
The alternative in this case is to throw errors from within the constructor. Which is less elegant and flexable.
Examples
class DictionaryWord {
  constructor(public word: string) {
    if(!isWordInDictionary(word)) {
      return undefined; // This is an error with "strictNullChecks"
    }
  }
}

const dictWord: DictionaryWord | undefined  = new DictionaryWord("word");

Possible way to mark the constructor failable is like this:
constructor?(public word: string)
Checklist
My suggestion meets these guidelines:

[X] This wouldn't be a breaking change in existing TypeScript/JavaScript code
[X] This wouldn't change the runtime behavior of existing JavaScript code
[X] This could be implemented without emitting different JS based on the types of the expressions
[X] This isn't a runtime feature (e.g. library functionality, non-ECMAScript syntax with JavaScript output, etc.)
[X] This feature would agree with the rest of TypeScript's Design Goals.

I actually knew this and completely overlooked the fact that JavaScript just silently ignores any primitives returned from the constructor.
The good news is that I can use strictNullChecks without losing anything.
What would be a better "cleaner" practice to achieve a failable constructor in Typescript? Just throwing an error or returning an empty (or some sort of wrapper) object from the constructor?
Personally, I don't like using errors for program logic and reserve them for cases where the execution flow needs to be disrupted. Returning undefined / null would be better in this case. But returning an empty/dummy object doesn't seem ideal either.

Static factory methods would be the logical alternative if the constructor can meaningfully fail without "needing" to throw an exception.

This issue was returned from a google search about returning undefined from constructors - as the JS error might make you think it's acceptable as "normal return values".
MDN explains (search for "return value") what exactly are the return values used in JS constructors and why this weird behavior exists. I was under the same impression it was possible to create failable constructors, but it's not :)


POST /keys/upload schema and example don't match.

So for this property, https://github.com/matrix-org/matrix-doc/blob/03641d9e48c3e3e73ff8b3c851e2338fb8ceea87/api/client-server/keys.yaml#L75-L80
One of the examples are,
https://github.com/matrix-org/matrix-doc/blob/03641d9e48c3e3e73ff8b3c851e2338fb8ceea87/api/client-server/keys.yaml#L86-L90
The schema and example doesn't match so one of them is wrong. (The doc seems to insist the example is wrong).
TL;DR
The schema says, Map<String, String> but the example is Map<String, Map<String, String>>.

The schema does say it is a Map<String, Map<String, String>> due to the use of additionalProperties, it's just poorly represented.
Line 69 identifies the whole thing as an object (first Map), then line 79 says it consists of a Map<String, String>, so when put together it's Map<String, Map<String, String>>.

then line 79 says it consists of a Map<String, String>

Yes, line 79 consists of Map<String, String> but the example of it is Map<String, Map<String, String>>.

Right, the signatures property itself is a Map<String, *> because of line 69. Line 79 makes the * a Map<String, String>.

:confused: Don't you mean because of line 76?
Also, if signatures itself is a Map<String, String>, why does the doc say "Mapped from user ID to signature object." (as supposed to "signature string")?

If signatures is a map of user ID to signature object. (Assuming the doc is correct).
Taking one of the examples provided.
"signatures": {
  "@alice:example.com": {
    "ed25519:JLAFKJWSCS": "FLWxXqGbwrb8SM3Y795eB6OA8bwBcoMZFXBqnTn58AYWZSqiD45tlBVcDa2L7RwdKXebW/VzDlnfVJ+9jok1Bw"
  }
}

Am I correct in say that @alice:example.com is a user ID and
{
   "ed25519:JLAFKJWSCS": "FLWxXqGbwrb8SM3Y795eB6OA8bwBcoMZFXBqnTn58AYWZSqiD45tlBVcDa2L7RwdKXebW/VzDlnfVJ+9jok1Bw"
}

is the mapped signature object?

yes


IonicDev App Error

After update IonicDev App, I'm getting a error. IonicDev stop after I click on a button to login on my app, but at last version or app installed on android it works correctly.
IonicDev works perfectly on IOS, this issue it's happening just on 2 Android. App Store shows version 1.0.2.
https://itunes.apple.com/us/app/ionic-devapp/id1233447133?mt=8
ionic info:
ionic (Ionic CLI)  : 4.3.1 (/usr/local/lib/node_modules/ionic)
Ionic Framework    : ionic-angular 3.9.2
@ionic/app-scripts : 3.2.2
IonicDev App version (error):
[x] 1.0.4
IonicDev App version (works perfectly):
[x] 1.0.2
I'm submitting a ...

[x] bug report
[ ] feature request

I am getting the same issue . @GleidsonHenrique  did you solve the issue ?

@tommyarn, I solved it by downloading an earlier version. Probably is not the best way, but I did not want to waste time. Maybe in the next update they fix it.
https://apk.tools/details-ionic-dev-app-apk/

@GleidsonHenrique - thanks . sorry for the late reply but I also followed what you mentioned

Thanks for the issue! Are you still experiencing problems with DevApp?