Nothing happens after clicking the 'More troubleshooting help' link on 'Reset' dialog

Storage Explorer Version: 1.5.0
Platform/OS Version: Windows 10/ MacOS High Sierra/ Linux Ubuntu 16.04
Architecture: ia32
Build Number: 20181018.2
Commit: b246d18d
Regression From: Not a regression
Steps to Reproduce:

Navigate to Help menu -> Select 'Reset'.
Try to click the 'More troubleshooting help' link -> Check the result.

Expected Experience:
The web page of the troubleshooting will be opened successfully.
Actual Experience:
Nothing happens.

This issue also reproduces on the latest master build 20190702.3.

This issue also reproduces on build 20191220.9.

Fix merged into master.


rename cargo-dist

cargo-dist has aspirations to be not-just-cargo, so it should... not be called cargo-dist. probably for rust users it will continue to be available as "cargo dist", but i don't want to tell anyone to use cargo-dist dist init when using it with not-cargo.
An Eternal Question / Meme here at axodotdev is: surely we should have a tool called "axo" that does all the things. As cargo-dist has increasingly become a bigger tent (especially if we do #842), it's increasingly looking like the fabled "axo". Or maybe it's "axo dist" (axo-dist).
The cargo subcommand trick is cute, but also a bit of a logistical nightmare for not-cargo to do, so if we do want to be invoked as "axo dist", that realistically means an axo monorepo with cargo-dist just being part of the workspace. If we do "axo dist" then maybe #842 is "axo release", instead of what may have presumably become "axo dist release"?

[ ] email https://www.npmjs.com/package/dist
[ ] email https://crates.io/crates/dist

Let's assume we're renaming to "dist":

add a bin-alias so that cargo-dist.exe and dist.exe both exist
teach the clap CLI to not require the "dist" dummy arg that cargo likes to pass
do we rename the actual package from "cargo-dist" to "dist"

if we do how hard do we try to enforce an alias in infra
oranda getting full history
axo releases reporting full history
axo updater handling full history

old updater doesn't know about new name
install receipt migration?

potential approach (performed in precise sequence):

release "dist" 1.0.0 (it can be a version less than that but let's call it that for now)
release "cargo-dist" 0.X.0

this release tells axoupdater that the name of the app is now "dist"

The idea here is that a user who tries to update "cargo-dist 0.14.0" or whatever old release that doesn't know about the rename will end up on "cargo-dist 0.X.0" because it knows how to do that. Then when they try to update "cargo-dist 0.X.0" they will get "dist 1.0.0" (or any version after that).

The bulk of this work is in #1267


Add sample data collection with Cloud Optimized GeoTIFF

We added a nice Sentinel-2 L2A data collection (over Poland), copying items from the Copernicus Data Space Ecosystem STAC that link to JPEG2000 Sentinel-2 band files:

https://github.com/EOEPCA/data-access/issues/75

However, the JPEG2000 driver linked in GDAL (OpenJPEG) is failing under load and generally has poor performance

https://github.com/EOEPCA/data-access/issues/105

So we need a nice collection instead that has Cloud Optimized GeoTIFF (COG).
To allow us to test and demo typical data access patterns, the collection should

Feature adjacent tiles / images that can be stitched together in dynamic tiling (mosaic) or coverages requests
Feature repeated coverage of the same area, such that we can test time series functionality

Acceptance criteria

[ ] eoAPI STAC in EOEPCA has a collection of COGs that meet the above criteria

One possibility could be to copy selected collections from Maxar Open Data to a CloudFerro S3 bucket and copy STAC records into our service.

Maybe @MathewNWSH knows by heart, whether any nice COG collections exist in eodata.cloudferro.com that perhaps also already have STAC records somewhere?
I previously noted that
Looking at the CloudFerro STAC https://radiantearth.github.io/stac-browser/#/external/https://pgstac.demo.cloudferro.com - the only collection with COGs seems to be Sentinel-1 Ground Range Detected (GRD).
But maybe there are more?

Sentinel-1 GRD could be an option, though. RGB composites of the different polarizations tend to look quite nice https://gis.stackexchange.com/a/400780

What about using Sentinel-2 COGs by Amazon's Registry for Open Data. AFAIK there are no egress costs. And we could go for a similar area as before (e.g. Poland) to keep size of data a bit limited.

Thanks, @MathewNWSH! @j08lue, I would prefer to use S2L2A over S1GRD, it is probably nicer to show. I can imagine it would be good to have this as a use case also when running it on other premises than cloudferro.
What do you think for this purpose to download a timerange of a year or so of S2L2A-cogs over Poland (or even a smaller area) and the create a STAC Catalog from it (rio-stac should help us with that) that we can then ingest?

Ok, let us copy some S2L2A COGs over to CloudFerro for now.
It would be great to have rich Sentinel-2 STAC metadata, more than what rio-stac produces.
I see three ways to get there:

Amend the existing sentinel-2-l2a collection and just add another asset like B04_10m_cog for all bands, in original resolution (not the up/downsampled ones)
Copy STAC metadata from somewhere and change it to point to our bucket
Generate rich STAC data with https://github.com/stactools-packages/sentinel2

Could (1) be easiest, perhaps? We probably need to run one job per item to copy the relevant files.

We need to find out how to create and get write access to a bucket in CloudFerro in the same region as our EOEPCA infrastructure. I would ask about that on EOEPCA Slack.

We received access to the cloudferro infrastructure of the project. Next steps ahead.

[ ] Download Sentinel-2 COG data for 2023 over the area of Iceland.
[ ] Make an own STAC collection of this data (probably can just be taken and adapted from the search result of the STAC search of Earth Search)
[ ] Spinn up a bucket for data storage on cloudferro through the infrastructure as a code
[ ] Upload data and collection info to this bucket
[ ] Link it to eoAPI deployed for EOEPCA+

There is a script we use to obtain search results from Earth Search, strip out the jp2 assets and leave only the cogs and dump this into a json file.
The result is a static catalog here, and can be inspected with this stac-browser.
It looks like we can use the files directly from the AWS Open Data Registry as they are publicly available. I suggest we get it to work first, and then consider whether we want to have a mirror on cloudferro.

Next steps:

Looking into ingestioning this into pgstac on the deployed eoapi.

The sample looks great!
Agreed, if performance is ok with loading directly from AWS us-west-2, we could skip the copying. How many GB are we talking about, roughly?

I currently took all imagery over Iceland from 2023 with a cloud coverage lower than 5%. There are 226 items of it. Each contain assets of around 180MB which should be a total of ~40GB. If we play with the cloud coverage it could be more or less.

Data should now be available - please check it @j08lue.
Related PRs:

https://github.com/developmentseed/eoapi-k8s/pull/164 - simple ingestion method
https://github.com/vincentsarago/MAXAR_opendata_to_pgstac/pull/9 - script to produce the pgstac import json files

The collection looks great. As icing on the cake, we could add a collection thumbnail, so it looks nice in STAC Browser, similar to what the Poland Sentinel-2 collection has:
https://radiantearth.github.io/stac-browser/#/external/eoapi.develop.eoepca.org/stac/collections/sentinel-2-l2a?.asset=asset-thumbnail
"assets": {
"thumbnail": {
"href": "https://s3.waw3-2.cloudferro.com/swift/v1/stac-png/S2_L2A.jpg",
"type": "image/jpeg",
"roles": [
"thumbnail"
],
"title": "Sentinel-2 Level-2A",
"proj:code": null,
"proj:shape": [
360,
640
]
}
},

Ideally a mosaic of the actual data or just one of the nicest scenes. Or just a screen grab from a cloudless Sentinel-2 product, like https://s2maps.eu/.

Done: https://radiantearth.github.io/stac-browser/#/external/eoapi.develop.eoepca.org/stac/collections/sentinel-2-iceland

Yeah, once the Transaction endpoints work, i wanted to add the thumbnail through them as the first use.


Unable to create Clone page

Issue Description
We successfully solved the smtp issue. thank your for your help. now we are sending test email but when we try to clone any webpage via clone page feature, it is giving error.
cloner issue.zip
Kindly help us to resolve this issue.
Also guide us, once this clone is done, shall we replace this clone webpage with on-line/live website index.html file?
Reproduction Steps

KingPhisher -> Tools -> Clone webpage

Error Details / Stack Trace
snapshot is attached for error review.

Thanks, I'm going to take a look at this. In the future, it would be very helpful if you could copy the contents of the error details in the dialog and paste them into the issue. That will help us keep track of the details without having to dig through the ZIP and read the details from the image.

As it turns out WebKit2.URIResponse.get_http_headers is available since v2.6. I'm pretty confident that the issue here is that Ubuntu 15.10 has an older version of WebKit2. This issue has been addressed in commit 455e555 and has been pushed up to the dev branch.
Thanks for reporting this issue!


Fixes "Create shader Node" window position when visual shader editor is floating

Fixes the issue where the "Create shader node" window was appearing inside the boundaries of the main Godot editor window instead of the visual shader editor window when it's floating. (mentioned in issue #78854.)

@trollodel Something like that: members_dialog->set_current_screen(get_window()->get_current_screen());?
(I only tested on Windows 10, I can't currently test on other platforms.)

trollodel Something like that: members_dialog->set_current_screen(get_window()->get_current_screen());? (I only tested on Windows 10, I can't currently test on other platforms.)

Sorry for the late response, but yes, like that.

Thanks!


Removed jdk8 Function ref; added xalan

Removes the JDK8 Function reference. Fix was already detected and applied to master.

Note that this needs to be merged into master as well. I also ended up fixing a few NPEs

It works, you can prepare the same PR for the master...

great!


Usability: Show correct run time and start time

As a user, I would like an accurate representation of how long my robot has been running for, and what time the run started.
Background
Currently clock jumps above 00:00:00 and start time does not match what's on computer.
Acceptance Criteria

start run at 00:00:00
show correct time for start time

Design
n/a

Start time comes in to the app via the command log in the RPC session. This is known to be inaccurate and needs additional research

Fixed by the addition of startTime to the RPC API Session in #1426 and #1427

This is still an issue for me on robot server and app version 3.2.0. It seems the system date is incorrectly set on the raspberry pi. Our system clock on the robot is set to Sun Jul  1 17:48:50 UTC 2018 as of August 13 2018.


Function1: CleverClean

Hi @aimee0317, @adrianne-l, and @Vikiano
Working on writing the cleverclean function, aside from converting text to lower case and removing punctuation, should also preprocess the text to remove all digits?

I think we should remove the digits because they are usually not that useful in wordcloud. What do you think?

I think we should remove the digits because they are usually not that useful in wordcloud. What do you think?

Yes I agree as well, in most cases it would be quite arbitrary to have numbers show up in our final world cloud, okay will make changes to the documentation accordingly, thanks!


Fixed other typos (READ DESC)

Hey, if that's ok for you I added myself in the README as a tester (pretty sure u will not like it lol). Close this if u want me to remove my name and I'll proceed.

Thank you for all of your efforts.


fix: Made FAQ section responsive.

Fixed issue number #414
Made changes in FAQ section and made it responsive to all devices.
Before changes:

After changes:

Make sure to pull all the existing changes before pushing anything. Solve the above conflicting issues and raise your PR again.


update-version-1.2.0-canary.1

Pull Request Test Coverage Report for Build 2417

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 79.96%

Totals

Change from base Build 2410:
0.0%

Covered Lines:
2353

Relevant Lines:
2846

💛  - Coveralls


Webstorm code completion

I am not sure whether this is possible. It's worth a try with jsdoc and/or maybe typescript definitelytyped...

I should examine typescript definitelytyped codes and write a custom code. It should not be that hard.

I am not sure whether this can be implemented, but I don't want to do much about it for now. I keep this for later, maybe one day I check how webstorm autocompletion work and whether it is possible to register a class lib like this. I somehow doubt it, I think it would require a webstorm plugin. I have only license for an old version before the annual license decision, so I am not faimiliar with the changes after that.


react content loader not working in razzle?

https://www.npmjs.com/package/react-content-loader
not sure If I'm using this package incorrectly or if its something razzle-related.
Has anyone got this working?
my code is based off the example. I added the uniquekey param as per the documentation, but I don't see the SVG animation, instead I see the word "Loading".
import ContentLoader from 'react-content-loader';

const MyLoader = () => (
  <ContentLoader primaryColor="#f3f3f3" uniquekey>
    {/* Pure SVG */}
    <rect x="0" y="0" rx="5" ry="5" width="70" height="70" />
    <rect x="80" y="17" rx="4" ry="4" width="300" height="13" />
    <rect x="80" y="40" rx="3" ry="3" width="250" height="10" />
  </ContentLoader>
);

and in the render()
{this.state.loading ? MyLoader : <Component />}

<Facebook uniquekey/> as the component alone, seemed to have worked.


No release folder

Hello, whenever I install raylib, there is no release folder inside raylib. I am running Windows 10.

Yes, it's expected to be that way. I was changed some time ago.


WIP:Add a new service called extensions_versions

Check all extensions installed in all databases
and raise an alarm if the current version is not the default version available
on the instance.
Typically, it is used to detect forgotten extension upgrades after package
upgrades or a pg_upgrade.

I've rebased and updated the branch:

removed warning;  any obsolete extension leads to Critical
all dbs and templates are tested
I didn't add an  --exclude yet, I'm wondering if this overkill (there is already --dbexclude)

Sample:
$ ./check_pgactivity --service extensions_versions  -p9603
POSTGRES_CHECK_EXT_VERSIONS CRITICAL | powa=3
powa.powa: 3.1.0 (should be: 3.2.0)  powa.pg_stat_kcache: 2.0.3 (should be: 2.1.1)  powa.pg_qualstats: 1.0.2 (should be: 1.0.7)

./check_pgactivity --service extensions_versions  -p9603 --dbexclude powa
POSTGRES_CHECK_EXT_VERSIONS OK

./check_pgactivity --service extensions_versions -h paddington -p 11001
POSTGRES_CHECK_EXT_VERSIONS CRITICAL | christ=3 testpostgis=3
christ.postgis_topology: 2.5.1 (should be: 2.4.6)  christ.postgis: 2.5.1 (should be: 2.4.6)  christ.postgis_tiger_geocoder: 2.5.1 (should be: 2.4.6)  testpostgis.postgis_tiger_geocoder: 2.5.1 (should be: 2.4.6)  testpostgis.postgis: 2.5.1 (should be: 2.4.6)  testpostgis.postgis_topology: 2.5.1 (should be: 2.4.6)

I just added a commit to your branch to add the --exclude argument, enforce schema prefix, always report perfdata, a small doc fix and fix indentation.
Could you please review?

@ioguix : Tests ok for --exclude... except that the schema is totally ignored.
In fact I forgot it totally in the main query.
I'm wondering if this would be really useful as you can only install an extension once in a db.


Update index.html

New URL for Banano Charts
BananoForest's faucet

Merged.
Thank you for your continued contribution! ❤


clang-format: ran it on this file

Curious... I didn't get a clang-format failure on https://github.com/The-OpenROAD-Project/OpenROAD/pull/6305, even if clang-format had more work to do on the file I changed.
Perhaps CI knows not to complain about formatting problems that isn't in the part of the code that I changed? If so, nice feature. :-)

Ooops... clang-format infighting...
$ clang-format --version
Ubuntu clang-format version 18.1.3 (1ubuntu1)

$ git add -p .
diff --git a/src/grt/src/GlobalRouter.cpp b/src/grt/src/GlobalRouter.cpp
index 4d5ee6659..4625bbaf8 100644
--- a/src/grt/src/GlobalRouter.cpp
+++ b/src/grt/src/GlobalRouter.cpp
@@ -4598,10 +4598,7 @@ void GlobalRouter::reportNetDetailedRouteWL(odb::dbWire* wire,
 void GlobalRouter::createWLReportFile(const char* file_name, bool verbose)
 {
   std::ofstream out(file_name);
-  out << "tool "
-      << "net "
-      << "total_wl "
-      << "#pins ";
+  out << "tool " << "net " << "total_wl " << "#pins ";

   if (verbose) {
     out << "#vias ";
(1/1) Stage this hunk [y,n,q,a,d,e,?]? y

@maliberty @vvbandeira FYI, clang-format infighting...

You need to use clang-format-14


Accessing the Infrastructure

What's the difference between this PR and https://github.com/alphagov/govwifi-dev-docs/pull/2 ?


Create a client example

This starts creating usable examples so we can start seeing it interact with other implementations.

@stammw I got the ALPN fixed (needed h3-29 instead of just h3 for several servers), but so far, they all timeout after sending the request. I'm probably missing something obvious?

Found the issue. After closing the send side, I also needed to add ignoring of unknown/reserved frames, and success!

It actually works! Nice ! :)

I started adding printing of the received data too, and hit a panic "There is still data to read, please call poll_data() ..."...

Ok, so I fixed that by making sure recv_data wouldn't poll for a new frame if FrameStream::remaining_data != 0. Now I'm hitting a panic in h3-quinn, advancing the buffer too far after calling read_unordered().

Ok, all set! cargo run --example client https://blog.cloudflare.com fetches the full page!

All right! Sorry I haven't been that much involved into this but the my shiny new embedded linux video driver with fpga-cuda interface thing job is taking a lot of bandwidth.


Introduce unit testing

https://docs.gradle.org/3.3/userguide/custom_plugins.html#sec:writing_tests_for_your_plugin

I think the better approach for testing will be to use TestKit https://docs.gradle.org/current/userguide/test_kit.html

initial version implemented. next tests will be introduced while covering bugs reported and while implementing improvements.


memory available and max-mem pod schedulable capacity checks

plus new 'conversions' library
and necessary RPM spec updates to include capacity checks into monitoring-openshift.rpm

@twiest :+1: #575 in stg


Add get_coreclr_command_line which uses hostfxr_initialize_for_dotnet_command_line

The problem with hostfxr_initialize_for_runtime_config is that the trusted platform assemblies (TPA) will only contain that version's assemblies. If you reference a newer version of a runtime's assembly, the assembly load context will always load the runtime version not your referenced version. There is no way to intercept the loading of this TPA. When creating a dotnet application this does not occur as the runtime is loaded using the hostfxr_initialize_for_dotnet_command_line method which uses the .runtimeconfig.json and (importantly) .deps.json. You can then continue to use the runtime as if it was loaded using hostfxr_initialize_for_runtime_config.
See for details on different ways to initialize https://github.com/dotnet/runtime/blob/main/docs/design/features/native-hosting.md#initializing-host-context

Thank you for your contribution, I'll try to read up and review it shortly. The macos tests failing is probably due to the recent update of the Github macos-latest runners to 14, which breaks a lot of tests.

TestFrameworks.zip
Attached is my minimal failing example. If you run the dotnet app it all works fine. If you run the python app it fails. The reason is that the Hosting reference which is pinned to 8.0 has a reference to DiagnosticSource which it expected to be 8.0. The version in the TPA list is 6.0 due to the 6.0 framework loaded. It then fails because metrics don't exist in that version.


Adjust MOAutocompleter to not use jQuery

Manual review only
To test this PR manually, just open a new obs form and check the behavior of the autocompleted fields.
Or try it on other forms, or check the "Help Identify" page, where the "filter by region" autocomplete works correctly for once. Some autocompleted fields, like the obs image upload "year" autocompletes, are in forms that are not present at page load but created by JS. They also should work!
The goal of this PR was simply rewriting the autocompleter without jQuery, as preparation for Rails 7. All functionality should be exactly as current... except it fixes a number of bugs.
Background
@pellaea's MOAutocompleter is very different from other open source autocompleters. It has custom features such as matching words out of order, as in "scientific" location_format, and is closely configured to work with the responses MO's AutocompleteController produces.
Most importantly, it is MUCH quicker than off-the-shelf autocompleters in dealing with AJAX queries for names and locations, because it calls the db once for all entries starting with the typed letter of the alphabet, and then consults this internal primer to refine results as the user types more, rather than making separate server requests.
Having finally understood this, of course I want to keep it.
New features
This PR makes it even easier to implement an autocompleted field in HTML. You just add the data-attribute
    data: { autocompleter: :location } // or whatever type

to an input field. An observer/initializer in assets/javascripts/main.js watches the DOM if an element needing to be initialized as an autocompleter has been added. and instantiates the completer. (This initializer is temporary, since Stimulus can handle observing DOM changes in Rails 7.)
One result of the refactor here is that methods like turn_into_#{x}_autocompleter can now be removed from the templates.

coverage: 93.644%. remained the same when pulling 9a993dd4df13d7478cd583a4f0f38ed216413aae on nimmo-moautocompleter-nojquery into 259f8157dd4e501d0299b79b5a298480e8334914 on main.

Hey Nimmo, I ran out of time.  It looks like the vast majority of changes are one-to-one translations, so this is probably safe.  For some reason github is not letting me check out the branch so I can't test it live.  Maybe a 2FA thing?  Gotta run!

Thanks for checking the code out. One thing currently broken I found is hot-swapping the autocompleters on observations/identifywhen you flop between clade and region... will try to fix that shortly.
I have a branch off this that makes the function a JS class, also with very few changes, only syntax tweaks.

Ready for (manual) review.  If anyone is available to hand-test some autocompleters, please do.
Will merge tomorrow morning, otherwise.

Immediately ran into an issue in the observation create workflow.  I clicked "Create Observation", typed "North Falmouth" in the Location box and selected "North Falmouth, Falmouth, Massachusetts, USA".  I then typed "Boletus e" into the Scientific name and selected "Boletus edulis" and hit return.  It then came back with a warning that says "Unknown country ‘North Falmouth’".  Note that my Location Format is set to "Scientific (USA, New York)".  However, the options I was given are in "Postal" format.  This is an important feature to maintain for the professional scientific community.  Roy Halling (formerly of the NYBG, an expert in all things Boletes, and a strong supporter of MO) specifically requested this feature.

@mo-nathan
I had "wisely" intuited that a change in the handling of the format param could be buggy and pulled it out to its own PR, #1614. But that's where the problem was introduced. Thank you for catching it before any users did.

Scientific is fixed... workflow described above works as expected, maintaining "scientific" location_format throughout the process. Let me know if anyone wants to manually test again.

Hmm, this one doesn't seem to be working (but it's not critical IMO):
app/views/admin/session/edit.html.erb:                                    autocompleter: :user }) %>
To get to it, you have to be in admin most and then click "Switch User".  I honestly forgot that this was even a thing.

Thanks for the thoroughness @mo-nathan.
It does work for me, though. (well, there's still the VERY annoying Safari pushy-autocompleter).

Are you sure it's not just slow... or, could it be that you started typing before the page was loaded. That was a gotcha for me repeatedly in testing.

You are correct.  It was just slow.  Working now.

Well, not really working.  Sometimes waiting longer matters, but sometimes it never starts working again.  Once it's broken it seems to stay broken.

Not clear exactly how long you have to wait, so maybe it's just a matter of waiting long enough, but I'm really not sure.  I did get it into a weird situation where if you type "hollinger" it would show you two accounts (jason and jason_test), but when you select an autocomplete value, it just leaves "hollinger" and then the switch fails.  I've not been able to consistently reproduce it.

re: when it's broken it seems to stay broken

That's what i get sometimes too (but not today, just now). I had to reload the page to get it to autocomplete again.
I believe the reason it's an issue in dev but not on production may be that the js is compiled and cached, but on dev it's always reloaded, and so slower to bind?

Hmm, and then I got into another weird state where it says "jason ", but when I hit  it fails with the error message 'Couldn't find "jason ". Play again?'.

Yep, i'm getting that too. researching

Also note a preexisting bug (which you should probably ignore, just like
Jason & I do):
The Login Name field must contain only the login name, rather than both
the login and the user name. (On the webserver the autocompleter supplies
both the login and user name. I haven't had a chance to check the PR.)
On Mon, Sep 18, 2023 at 3:23 PM Nathan Wilson @.***>
wrote:

Not clear exactly how long you have to wait, so maybe it's just a matter
of waiting long enough, but I'm really not sure. I did get it into a weird
situation where if you type "hollinger" it would show you two accounts
(jason and jason_test), but when you select an autocomplete value, it just
leaves "hollinger" and then the switch fails. I've not been able to
consistently reproduce it.
—
Reply to this email directly, view it on GitHub
https://github.com/MushroomObserver/mushroom-observer/pull/1610#issuecomment-1724542149,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAALDFHHQL4P52A4YZWORMLX3DCWNANCNFSM6AAAAAA4YRU6MQ
.
You are receiving this because your review was requested.Message ID:
@.***>

Got it, yes, thanks Joe.
If you accept an autocomplete, it's been trying to find the user by a string that never corresponds to either a login or an email.
I believe the update action just needs to strip out the real name from a string input, if there's no @, something like this:
@id = params[:id].to_s
if(@id.is_a?(String) && !@id.contains("@")
  @id = @id.split(" <")[0]

Switch user bug should be fixed!

Switch user bug should be fixed!

Thank you!  Now it works for everyone.
(@pellaea and I were too lazy to fix it because we rarely used it and we knew the easy work-around.)

Deployed


Adding fixed CVEs for kyverno-cli

Adding Fixed Advisory GHSA-7f9x-gw85-8grf for kyverno-cli
Adding Fixed Advisory GHSA-pvcr-v8j8-j5q3 for kyverno-cli

added here https://github.com/wolfi-dev/advisories/pull/934


[pulsar-broker] Fix delete empty namespace with partitioned-topic metadata

Motivation
Right now, broker gives below error while deleting empty namespace without any topic under the namespace but namespace was having partitioned-topic metadata.
pulsar-admin namespaces delete prop/us-west/my-ns
Cannot delete non empty namespace

Reason: Cannot delete non empty namespace

Modification
It's because broker was incorrectly assuming topic existence by checking partitioned-topic metadata. delete-admin API cleans up partitioned-metadata after successfully deleting namespace and it it should not incorrectly depend on partitioned-metadata check. this issue is already fixed with forcefully delete-ns admin-api and delete-admin also needs the same fix.
Result
User can delete namespace after successfully deleting all topics under the namespace.

@rdhabalia is this a bug fix and we do not need to update docs?

this PR doesn't need doc update.

@rdhabalia LGTM but the PR needs rebasing


Responsive resize

On window resize punchcard should behave like img tag. Added few missing semicolons too.

Perfect, thank you


Standardize Bid Pricing Calculation for PBS Bids

Description
There is currently an inconsistency in how bid prices are calculated for blocks and how relays simulate bid accuracy. Specifically, the process of using a validator’s balance difference to determine the bid value can lead to inaccuracies.
This issue aims to standardize how validator balance differences are applied, ensuring consistent and transparent calculation of bid values across all builders and relays.
The goal isn't to force this proposal through, if there is a better method we can all agree on and point to moving forward then I will be content.  After chatting with many teams it doesn't seem that any are bidding or verifying bids the exact same way.
Background / Context
Previously, it was proposed that bid values should consider only the positive balance change to the block’s coinbase, excluding any outgoing transfers and withdrawals.
If the validator is the coinbase, using the validator’s balance difference (excluding withdrawals) is acceptable. However, when a builder is the coinbase, the correct method is to rely solely on the builder’s final transaction transfer.
Below is an example where a validator balance difference was used while a block builder's address was set to the block coinbase.
Example:
In the BTCS block at slot 10575868, there was a payment of 0.18532 ETH to Lido and a builder payment of 0.02161 ETH. The intended bid should have been 0.02161 ETH, but due to the current logic, it was mistakenly interpreted as 0.20693 ETH.
This occurred because the rbuilder simulation used the validator’s balance difference even though the coinbase was a builder address, not the validator.
This kind of bidding can be misleading to validators believing they are accepting a block that pays them 0.20693 meanwhile it's using incoming funds of 0.18532 that they would have received either way.
Furthermore this kind of bidding is incompatible with bloXroute relays currently and results in being demoted from optimistic submissions.
Proposed Standardization
To achieve consistency, I'm proposing the following:

When the validator is the coinbase:
Use the positive balance difference (excluding withdrawals) as the bid price.

Calculation: Determine the validator’s balance before and after the block is built. Exclude incoming withdrawals from the balance increase and adjust for outgoing transfers, ensuring the final figure reflects the net positive gain.

If the validator decides to give some money to his poor grandmother we ignore this tx since counting it would appear as negative profit.

When the builder is the coinbase:
Use only the final transaction’s transfer value to determine the bid price.

Calculation: The last transaction’s transfer amount (e.g., from gas, MEV rewards, or subsidies) serves as the bid value. This is the simplest and most direct indicator of the builder’s intended payment.

Impact / Implementation Details
Implementing this standardization should involve minimal changes to both Go and Rust simulation code.
Once adopted, validators, builders, and relays will have a unified and transparent method for determining bid values, reducing confusion and promoting fairness and consistency within the PBS ecosystem.
As of time of posting I have gathered feedback and support from multiple teams and will ask them to provide their support or any discussions below to get everything finalized.

@benhenryhunter Want to adjust incoming for transfers incoming transfers as well (not just incoming withdrawals and outgoing transfers) when the validator is the coinbase?

Here I'm proposing we include all incoming transfers in the net positive balance change.
There was discussion a long time ago in various telegram groups that were meant to standardize this in the past.  Those groups decided to include the incoming transfers in the bid due to some complexities on the relay side to know if the transfer was an MEV tip or just a normal tx transferring to the validator.
I am not against excluding them because I think they cause the most confusion in bid value, but we would need clear agreement on what we exclude.
i.e. exclude any transfer txs but include any that happen to come from an internal transaction?

I'd like to offer some historical context and opinions. The question of relay block scoring goes back a long ways, with some good public conversation in this Flashbots Collective thread. Mostly it comes down to block level scoring (i.e. "fee recipient difference") vs transaction output scoring. Benjamin summarizes each in the proposed standardization. There hasn't been a formalized specification for how mev-boost relays should score blocks, it's always been agreed on via informal consensus. General trend was that relays started with tx output scoring, and gradually opened to block-level scoring due to demand from builders (a good argument for the status quo here).
One of the downsides of block-level scoring is that incidental transfers in or out of the validator's fee recipient address affect the total bid value. If a validator receives some ETH via an unrelated transaction, then builders can use that to inflate the value of their own bids. This is fine as long as all builders are aware of the strategy and bid accordingly, but it means that the bid does not reflect the true builder -> proposer value transfer. Likewise, builders will probably exclude any transaction where value is transferred out of the fee recipient address. But the big upside is that builders can build however they want: a single payment transaction, validator as coinbase, or whatever else, and have all those methods be scored by the same algorithm.
The most recent standardization effort was initiated about a year ago when jgm reported incorrect bids being selected because some builders were including CL withdrawals in their bid value while others weren't, causing cases where the bids with the highest true value did not win the auction because they failed to add CL withdrawals to their bid. This was discussed in the Flashbots thread and in MEV-Boost community calls. The solution most generally agreed upon was to standardize such that relays would always exclude CL withdrawals from block value calculation. Some code to do this was written, and Aestus has been running that as our block validation logic ever since.
It was news to me that not all relays adopted this standardization, and I think we'll be quite fortunate if discrepancies haven't caused loss of value for proposers or excessive, unnecessary builder demotions. Getting relays on the same page would be my primary goal here and, as we've implemented validation logic respecting standardization efforts in the past, we are more than happy to do so again whenever there is broad support.

That said, I'm unsure about this particular standard. Mainly that it implements both block scoring methods and uses them in different scenarios. And as a result I don't see how it improves upon the previous "fee_diff - withdrawals" standard. Let's look at how the reference BTCS x Lido block would be handled here:
We have true transferred value ~= 0.02 ETH and an incidental transfer into the Lido fee recipient ~= 0.18 ETH.

Builder A builds a block with Lido as the coinbase, so the standard dictates that it uses block-level scoring. Builder A is therefore allowed to include the value of the incidental transfer in their bid value, so their final bid is 0.02 + 0.18 = 0.2 ETH.
Builder B builds a block with themselves as the coinbase, so the standard dictates that it uses tx output scoring. Builder B is not able to include the incidental transfer in their bid, so they bid 0.02 ETH. Builder A wins, and Builder B should probably adjust their strategy for next time.

Now what if Builder B actually had a slight edge in MEV extraction over builder A such that their true transferred value is 0.03 ETH instead? Builder A's bid was 0.2 ETH, and now Builder B can bid 0.03 ETH. Builder A still wins the auction, and the validator receives a block value of 0.02, losing out on the extra 0.01 ETH they would have received under an ideal auction. This is the same issue as with CL withdrawals, but under the suggested changes the relay-side validation rules enforce, rather than prevent, the discrepancy.
Under the simpler "fee_diff - withdrawals" scoring for all submissions, Builder B could construct the same block, with themselves as coinbase and the single 0.03 ETH payment transaction at the end, but would be allowed to include the value of the incidental transfer. So their total bid of 0.21 ETH is fairly compared against Builder A's bid of 0.2 ETH, since both scores mean the same thing. The higher true value block wins the auction and the proposer gets paid 0.03 ETH.
If the benefit of this new standard is to more closely match bid value to true value for the proposer, I don't think this will accomplish it. Bid values only deviate from true block values when there are incidental transfers into the fee recipient address. And generalizing from the above example, every time this is the case, builders are incentivized to build their blocks with validator coinbase and block-level scoring rather than tx output scoring.
That is, under all situations where this could help align bid value and true transferred value, that option won't be taken.

The other change suggested here, which I think can be separated out cleanly from the split-scoring suggestion, is to adjust block value by outgoing transfers from the fee recipient address. I don't see any particular problems with this other than added complexity. It would need a stricter definition: would any transaction that results in a decrease in fee recipient balance have its value excluded, or only basic transfers? I'm not sure it's practically all that useful of a change, but I don't see any harm in it.
The option of excluding the value transfers into the fee recipient address is in my mind not feasible. It would be hard to differentiate between which transactions are actually MEV and which ones are incidental, and it shouldn't be a relay's role to draw that distinction.
So in the end it seems to me that as long as block-level scoring is going to be an option, the only fair implementation is to uniformly apply that one scoring rule across all blocks, and my suggestion would be for all relays to standardize on that. I'd like to get some validator thoughts in here as well, but my impression from past discussions is that they may not like having the bid be different from their actual value received from the builder, but they would see auction rules that increase the chance of the highest true bid losing the auction to be a bug to be resolved ASAP.

The option of excluding the value transfers into the fee recipient address is in my mind not feasible. It would be hard to differentiate between which transactions are actually MEV and which ones are incidental, and it shouldn't be a relay's role to draw that distinction.

Agreed ☝ – it is too difficult for relays to decide which transactions to include/exclude with mev payments.
I'm definitely on board with switching to a single calculation for block scoring if we can come to a consensus (though I doubt we will be able to).
If I had it my way we would only allow the builder to be the block coinbase and the bid must be the exact amount being transferred to the validator in the last transaction.
I understand the reasoning for using validator as block coinbase but that has been the cause of these issues in the first place to save some gas, albeit a not too insignificant amount of gas.
If we choose to switch to only the total validator balance diff:
Calculations open up to negative value bids unless outgoing transactions are censored from the block by the builder.  This is why we decide the net positive balance increase, but this leads to very misleading bid values.

If I had it my way we would only allow the builder to be the block coinbase and the bid must be the exact amount being transferred to the validator in the last transaction.

This would certainly simplify things in terms of calculations.  Perhaps the conversation should start here: are all relays willing to demand and enforce this behavior?
If the proposer fee recipient address is used then things definitely become a lot harder.  Over time we have added a number of rules that attempt to cover various situations that this creates, most of which have already been discussed above, but it definitely makes the calculation significantly more costly (we fetch transaction traces for every transaction to pick apart what's going on).  It is possible that a collaborative effort can agree on all of these conditions, but we always have the chance of missing some and/or disagreeing on their allocation.

I do think that would be the best solution but I honestly didn't think we would get agreement on that.
Using the validator balance difference is only necessary if we allow validators to be the coinbase and I was hoping we could limit that to being used only in that specific scenario.  In my opinion this would be better than using both whenever we want.

If everyone can somehow all agree then yeah only allowing the builder to be the block coinbase would be fantastic.

not the biggest expert here. at a glance, simple sounds nice. 1. final tx counts for bid only.
i would want to take builders into account. glad to hear this could work for titan. if a builder shows up with a strong case for a proposer balance based calculation i'd want to consider it. numbers on how much proposers would miss out on would also be interesting. although let's not forget inflating bids could lead to missed rewards too 😅.

if we're accepting proposer recipient delta based bids, from the sound of it, i'm pretty ambivalent what the logic is as long as we clearly standardize. keeping it super simple makes the gaming plain and obvious, easy to enforce. eventually every builder would apply every trick and true value should be revealed again. the interim may come at the proposer's expense. seems this already lead to complaints about withdrawal inflated bids and simple didn't work well. on the other hand, making this scoring / valuing very complex leads to relay / builder complaints that things become game-able in unclear ways / hard to enforce. i'm sure we can agree on some middle-ground. happy to enforce the standard. prefer just doing 1.


Mopeka Universal Sensor isn´t recognized through HA

I use 2 new Mopeka Universal Sensors
(HA on Raspery 5 with BT/ Ruuvi Tag´s work fine !)
They work fine with Venus OS, but not with HA.
HA doesn´t find them during search- 50cm away :)
What can I do ?
Thank you !

https://github.com/Bluetooth-Devices/mopeka-iot-ble/issues/9


Require confirmation to delete the media and files from a Repository Object node

If I click to the Media tab of a Repository Object node, the pre-selected/default Action is Delete media and file(s).
If I have selected any files, and I click Apply to selected items for any reason (accidental or not) while on this page, my media and files are immediately deleted without asking me for any confirmation.
One fix would be to require affirmative confirmation before all media/files are deleted.
Another might be to not have any action pre-selected in the drop-down, especially not the most destructive possible action option.

Related issue - #1564.

FWIW, if I visit Media tab of Repository Item on sandbox, there is no default action selected, see https://sandbox.islandora.ca/node/49/media


SMAZ added, COBS and derivates added

TCOBS was developed by me. Feel free to remove it from the list.

Thomas, thanks for your contribution 🙏
BTW, I will fix it after merge:
✖ Linting

  README.md:167:3
  ✖  165:41  List item description must start with valid casing  remark-lint:awesome-list-item
  ✖  167:3   https://github.com/rokath/tcobs                     remark-lint:double-link
  ✖  167:43  List item description must start with valid casing  remark-lint:awesome-list-item
  ✖  265:42  List item description must start with valid casing  remark-lint:awesome-list-item
  ✖  268:3   https://github.com/rokath/tcobs                     remark-lint:double-link
  ✖  268:43  List item description must start with valid casing  remark-lint:awesome-list-item

  6 errors

Error: Process completed with exit code 1.


Allow minting devnet NFTs

This PR adds NetworkContext which allows changing between mainnet and devnet for the entire docs site, and persists it to local storage.
On the Create NFT component itself, there’s a LuxMenu that allows switching network:

I moved the network switcher and extracted <InteractiveWell /> (which includes the container, the title “Live Minting Demo”, and the network switcher).
I switched to using Luma’s usePersistedState for interacting with local storage, but I did make a change to the hook d183c7a58bba6148cfa40b810fcc304a761744ab to fix hydration errors. Without that, I was getting errors that the server-side rendered version of the page (which had the default value) didn’t match the client-side version (which had the value from local storage).

Whoops! I had {title} but forgot to push it. I added a className prop and I’m now blurring everything:


Windows Client is missing file version string

Describe the problem
This Windows client executables are missing the "file version" string
To Reproduce
Check file properties

Expected behavior
A clear and concise description of what you expected to happen.
Are you using NetBird Cloud?
Please specify whether you use NetBird Cloud or self-host NetBird's control plane.
NetBird version
v0.28.2
NetBird status -dA output:
Additional context
Windows MDM admins often use these file properties for install detection / presence of the app.

Please close, this is fixed at least in v0.28.9:

thanks for the feedback @florian-obradovic


~ sudo wechattweak-cli --install 安装失败

~ sudo wechattweak-cli --install
Password:
------ Backup ------
Install failed: The file “WeChat” couldn’t be opened because there is no such file.

确认 WeChat 已安装在 /Applications 目录下


max-range

Sets the maximum range available for selection. Number of months between selected start and end dates?

month-range

You can use max-range, just convert it to days.


Modify keep hook to only ignore undefined values.

Summary
Problem: keep is discarding properties if they have "falsey" values.
Solution: keep now only discards undefined values. As a result a 0 or empty string can now reach the service.

Thanks for this catch. Its pretty serious.
Do you think it would be better to use existsByDot to see if the property exists and copy it regardless of its value?

@eddyystop Yep good idea. I've updated the PR to use existsByDot and modified the tests to check falsey values.

Very nice. Thanks a lot!


Creating a custom form field control is overcomplicated

This documentation describes the topic: https://material.angular.io/guide/creating-a-custom-form-field-control
This:
@Component({
  ...
  providers: [{provide: MatFormFieldControl, useExisting: MyTelInput}],
})
class MyTelInput implements MatFormFieldControl<MyTel> {
  ...
}

Should be:
@Component({
  ...
})
class MyTelInput extends MatFormFieldControl<MyTel> {
  ...
}

This:
@Input()
get placeholder() {
  return this._placeholder;
}
set placeholder(plh) {
  this._placeholder = plh;
  this.stateChanges.next();
}
private _placeholder: string;

<input [placeholder]="_placeholder">

Should be:
@Input() placeholder: string

<input [placeholder]="placeholder">

And so on...

I think the specific example you listed does need the setter, so it can emit on the stateChanges observable. There are other ways that could be handled (i.e. do it in ngOnChanges), but the code is not there for no reason.
That said if someone wants to take a stab at simplifying this guide I'd be happy to take a look

The documentation also seems to refer to an old codebase, for example:
stateChanges = new Subject<void>();
But for 9.2.4 stateChanges is reported as an Observable:
readonly stateChanges: Observable<void>;

@dario-collavini

The documentation also seems to refer to an old codebase
Oh, really? Look at the original post's date.

@dario-collavini

The documentation also seems to refer to an old codebase

Oh, really? Look at the original post's date.

Is your reply supposed to be of help? I just wanted to highlight that on the REFERENCE doc site material.angular.io v9.2.4 the documentation is not only cumbersome as you stated, but also out of date, so it is not just a matter of syntax refactoring.

you can assign Subject<void> to readonly Observable<void>, Subject implements the Observable interface

I'm attempting to follow the out-of-date guide now and feel that the MatFormFieldControl abstract class should either be switched back to an interface or the properties in the class all be made abstract as well. Them not being abstract implies that they would "just work" as is, but based on the guide, that's not true for most of them as they need to do things like triggering the stateChanges observable, etc. The only benefit to it being a class would be if the logic that we need to manually write were to be moved into the class (like the special setters or the instance of stateChanges, etc) but that's not currently done.
Also (and not sure if it being an interface would fix this) but if you try to override the existing properties with getters/setters results in VS Code showing an error. Here's the error I get when doing this with the value input: "'value' is defined as a property in class 'MatFormFieldControl', but is overridden here in 'CustomInputComponent' as an accessor.ts(2611)" - adding //@ts-ignore does get around this, however devs shouldn't need to add that everytime they implement/extend this.
Overall, I agree that creating a custom form field is over-complicated.

I'm attempting to follow the out-of-date guide now and feel that the MatFormFieldControl abstract class should either be switched back to an interface or the properties in the class all be made abstract as well. Them not being abstract implies that they would "just work" as is, but based on the guide, that's not true for most of them as they need to do things like triggering the stateChanges observable, etc. The only benefit to it being a class would be if the logic that we need to manually write were to be moved into the class (like the special setters or the instance of stateChanges, etc) but that's not currently done.
Also (and not sure if it being an interface would fix this) but if you try to override the existing properties with getters/setters results in VS Code showing an error. Here's the error I get when doing this with the value input: "'value' is defined as a property in class 'MatFormFieldControl', but is overridden here in 'CustomInputComponent' as an accessor.ts(2611)" - adding //@ts-ignore does get around this, however devs shouldn't need to add that everytime they implement/extend this.
Overall, I agree that creating a custom form field is over-complicated.

Closing this issue as all of the specific examples pointed to above are not over-complication, but are in fact necessary for the example to work properly


Adding support to register measurement service on specific  version

What does this Pull Request accomplish?
Modifying the code to explicitly specify the version of the Measurement Service, which is not supported currently, allows users to register services based on their specific needs, ensuring they can choose the desired service version.

Renamed MeasurementLinkServerUserEvents.ctl to MeasurementLinkServerUserSettings.ctl
A string array has been introduced in "MeasurementLinkServerUserSettings.ctl" to accommodate the Measurement Service Version.
"Create Measurement Services.vi" has been modified as follows:

A new control for specifying the Measurement Service Version has been added to the Front Panel.
When the array is empty, all supported Measurement Service classes will be utilized.
If the array contains version information, the corresponding Measurement Service will be used based on the provided version.

The "Run Service.vi" has been updated to unbundle the Measurement Service Version and Pass it to the "Create Measurement Services.vi."

Run Service.vi

Create Measurement Services.vi

Measurement Service Version Array Empry.
All supported Measurement Service classes will be utilized.

Measurement Service Version Array not Empty:
Measurement Service will be used based on the provided version.

Why should this Pull Request be merged?
By implementing this modification, users can explicitly designate the version of the Measurement Service, a feature not currently supported. This enhancement empowers users to register services according to their unique requirements, enabling them to select the preferred service version.
What testing has been done?
The existing test cases with respect to the discovery service were executed and they passed.

@pbirkhol-ni isn't this a breaking change for existing measurement services? @svm-ni have you tried opening a measurement service created with an older version of the framework with your new changes?
Also, I don't quite understand how the user's supposed to use this feature. Do they show this user settings control on the Run Service.vi front panel and add a specific version to the array if they only want, e.g. V2?

@pbirkhol-ni isn't this a breaking change for existing measurement services? @svm-ni have you tried opening a measurement service created with an older version of the framework with your new changes?
Also, I don't quite understand how the user's supposed to use this feature. Do they show this user settings control on the Run Service.vi front panel and add a specific version to the array if they only want, e.g. V2?

This change is just for enabling testing in our test suite so that we can make sure both V1 and V2 services work. Otherwise, LabVIEW will always advertise both versions and our client will always pick V2.
I would be surprised if any customers were depending on this input. It is a recommended input, so if you aren't wiring it (and I doubt any customer is since our generator doesn't wire it), then there is no issue. The defaults do the right thing. If you were wiring it, this would break compatibility because of the name change. Since the fix is trivial and I suspect no one is using this feature anyway, I asked Sharath to just modify and rename the existing typedef instead of creating a new one.


Update Engineering Feedback README.md (Issue #169)

Updated previous engineering-feedback/readme.md with short explanation for "why" and "what" engineering feedback
Added placeholder for "Examples of Good Engineering Feedback"

Linked issue #169 so it gets closed when the PR is closed - please change or add any other related issues if this was incorrect

Linked issue #169 so it gets closed when the PR is closed - please change or add any other related issues if this was incorrect

/lgtm
/approve
Awesome content @arsenvlad !


issue 4097/5330 fix - Recipe import should update (not create) a draft content item when a matching identity is found and there is no published version of that content item

https://github.com/OrchardCMS/Orchard/issues/4097 (open)
https://github.com/OrchardCMS/Orchard/issues/5330 (dupe with full details)
https://github.com/OrchardCMS/Orchard/issues/4564 (dupe)
https://github.com/OrchardCMS/Orchard/issues/4882 (dupe)

Have you tried these scenarios:

Importing a Draft when the latest is Draft (updating)
Importing a Draft when the latest is Published (new draft)
Importing a Published version when a Draft exists (new published)
Importing a Published version when the latest is Published (updating)

Are there any unit tests that could be updated with these scenarios to ensure we do not regress on this later ?

Question: should the PublishedUtc be updated to the current time and date when importing published content items, or should those values remain untouched? Example scenario: migrating blog posts from one site to another using import/export. If the site's using the PublishedUtc to show when a post was originally published, it currently shows today's date and time for all posts since the Import method published each published item. Would it make sense to prevent that from happening, or is it recommend to use the CreatedUtc instead to display the "publication date" of the post on the front end?

@sfmskywalker I'd rather not change the current behavior

OK

Please add some tests

sorry, very busy atm, i will get around to it when i can. please feel free to close the PR if you like, and i will re-raise when i have time to add tests etc.

We don't need to close this PR, just add more commits to your branch, and it will be updated.

@jimasp Can you please retarget this PR to dev rather than 1.9.x? Thanks

Closing this one in favor of another PR including unit tests and updated Import behavior.


Enhancement: more information about schema errors

I tried sbom-utility against https://github.com/chainguard-dev/bom-shelter/blob/main/in-the-wild/cyclonedx/obsidian-sailboat-sbom-cdx.json .  407 errors were found, here is the first one:
	1. Type: [number_one_of], Field: [components.0.licenses.0.license], Description: [Must validate one and only one schema (oneOf)]
	Failing object: [{
	  "url": "https://github.com/AngleSharp/AngleSharp/blob/master/LICENSE"
	}]

First question.  sbom-utility logged Schema "schema/cyclonedx/1.2/bom-1.2.schema.json" loaded. but the error seems to be coming from validation in resources/schema/cyclonedx/1.2/bom-1.2-strict.schema.json, not resources/schema/cyclonedx/1.2/bom-1.2.schema.json.
The failing validation is
            "oneOf":[
              {
                "required": ["license"]
              },
              {
                "required": ["expression"]
              }

The failing component has
      "licenses": [
        {
          "license": {
            "url": "https://github.com/AngleSharp/AngleSharp/blob/master/LICENSE"
          }
        }
      ],

It isn't clear to me what is wrong with this license.  In this case I could tell from the URL which fragment was the problem but I would like to see the JSON Path, e.g. to component.  I would also like to see the more details of the failed validation.  At first glance I see a license.
Type: [number_one_of], Field: [components.0.licenses.0.license], Description: [Must validate one and only one schema (oneOf)] No "license", no "expression"
Failing object components[0]/license[0] : [{
"url": "https://github.com/AngleSharp/AngleSharp/blob/master/LICENSE"
}]

Second example.  I ran this on an SBOM with 9928 components.  There were duplicate components.
	1. Type: [unique], Field: [components], Description: [array items[3,243] must be unique]
	Failing object: [[
	  {
	    "name": "acl",
	    "publisher": "Guillem Jover <guillem@ ... (truncated)

The message is correct, components[3] and components[243] were duplicates.  However, the "failing object" is truncated to show components[0].  But it wasn't related to the message.  It would be much easier to read the message if the message showed components[3] instead of components[0].

Hi @esnible, Let me try and respond to your comments...

the error seems to be coming from validation in resources/schema/cyclonedx/1.2/bom-1.2-strict.schema.json, not resources/schema/cyclonedx/1.2/bom-1.2.schema.json.

The non-strict CDX v1.2 JSON schema does enforce the "OneOf" constraint for "license" (not just in strict):

https://github.com/CycloneDX/specification/blob/21314a9e70937670fd892a29d9ffb6625a46c88b/schema/bom-1.2.schema.json#L349

In fact, the "strict" schema, if a "diff" is performed, typically only adds the "additionalProperties": false, property to almost every type definition (which prevents any non-standard fields).

The message is correct, components[3] and components[243] were duplicates. However, the "failing object" is truncated to show components[0]. But it wasn't related to the message. It would be much easier to read the message if the message showed components[3] instead of components[0].

Unfortunately, the schema error results processing code only reports at the granularity of the owning object, in this case an array.  In this case, it is enforcing a "uniqueness" constraint within the entirety of the array.
If you would like to add special logic as a pull request to look for this specific error case (i.e., array uniqueness) and post-process the error results to reduce the result set reported (as you likely did manually after using debug option) I would welcome that.  Otherwise, please open another issue with a title and (some of this) content to describe the feature request at a granular level as I wish to avoid tracking issues that have inside them descriptions of different questions/problems (despite being from the same SBOM input file).
You can link or reference this issue as context.

@esnible I was wondering why your tooling was still using an outdated version of the .NET tool:
"tools": [{
        "vendor": "CycloneDX",
        "name": "CycloneDX module for .NET",
        "version": "<IP_ADDRESS>"
      }

which was from June 27, 2021 (https://github.com/CycloneDX/cyclonedx-dotnet/releases/tag/v1.6.1).
as I see that the latest version is 2.7:

https://github.com/CycloneDX/cyclonedx-dotnet/releases/tag/v2.7.0

BTW, I almost missed your last question...

It isn't clear to me what is wrong with this license:

"licenses": [
        {
          "license": {
            "url": "https://github.com/AngleSharp/AngleSharp/blob/master/LICENSE"
          }
        }
      ],

The answer is simple looking at the schema for "license":
"license": {
      "type": "object",
      "title": "License Object",
      "oneOf": [
        {
          "required": ["id"]
        },
        {
          "required": ["name"]
        }
      ],

you need to provide one of the required fields... either id or name (as url is an optional field). Preferably you would supply an id which would be an actual SPDX ID (identifier).

@esnible I may ask you to close this issue, create a new one solely for the "enhancement" to the array error result processing so that when a developer works on it, it is disentangled from the other questions/issues surfaced here.
Would that be possible? You can ref. this issue for history...

Saved the enhancement request in a separate issue #37


Cannot show Custom Dialog from VM the way it was shown in the MetroDemo project

What steps will reproduce this issue?
Hi guys,
I tried using your way of showing Custom Dialog from ViewModel, but I get an error
System.InvalidOperationException was unhandled by user code
HResult=-2146233079
Message=Context is not registered. Consider using DialogParticipation.Register in XAML to bind in the DataContext.
Source=Microsoft.Threading.Tasks
StackTrace:
w Microsoft.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
w Microsoft.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccess(Task task)
w Microsoft.Runtime.CompilerServices.TaskAwaiter.ValidateEnd(Task task)
w Microsoft.Runtime.CompilerServices.TaskAwaiter.GetResult()
w DialogFromVmException.MainWindowViewModel.<<get_TestCommand>b__2>d__4.MoveNext() w c:\dev\DialogFromVmException\DialogFromVmException\MainWindowViewModel.cs:wiersz 19
InnerException:
I've attached
DialogFromVmException.zip
project that reproduces the issue.
Expected outcome
The dialog window shows, no exception is thrown
--
Environment

MahApps.Metro v<IP_ADDRESS>
Windows 8.1
Microsoft Visual Studio Ultimate 2013 Version 12.0.30501.00 Update 2
.NET Framework 4.0

Silly me, I've added
Dialog:DialogParticipation.Register="{Binding}"
line and it works now as expected


Fuzzy Search For Causer?

This may be because i'm not as well versed with Laravel and Eloquent as i could be, but is there a way to do a fuzzy search on the causer? More specifically the causer name.  I'm trying to implement a DataTables style page for displaying my logs where they are able to just start typing in a user they'd like to find logs for.

.

Consider the following endpoint for your fuzzy search API call:
public function fuzzySearch(string $searchQuery)
{
    return Activity::with(['causer' => function ($query) use ($searchQuery) {
        $query->where('name', 'like', "%{$searchQuery}%");
    }])->get();
}

This will load all activity including the causers that have a name that includes the fuzzy search query.


popovers: New function for hiding all user info popovers.

New function hide_all_user_info_popovers closes all user info popovers, instead of calling multiple functions everytime to close user info popover now we can just call this new function.
This PR is a follow-up of #21460.

Self-review checklist

[x] Self-reviewed the changes for clarity and maintainability
(variable names, code reuse, readability, etc.).
[x] Commit message(s) explain reasoning and motivation for changes.

Completed manual review and testing of the following:

[x] Visual appearance of the changes.
[x] Corner cases, error conditions, and easily imagined bugs.

@timabbott Did you look at this PR, It is a follow-up PR.

Yep, merged, thanks @yogesh-sirsat!
As a sidenote, it's helpful to rebase your PRs when they're showing a weird CI state, since weird CI states reduces the chances of things being reviewed :).


ResizeSensor doesn't - actually - support native collections

From Line 131 of ResizeSensor.js:
        if ('array' === typeof element

Firstly - native element collections are not Arrays - but NodeLists or HTMLCollections.
Secondly - typeof doesn't return 'array' - even for arrays; it returns 'object' - sadly. And same goes for NodeLists and HTMLCollections...
... which all means that that line of code doesn't actually do anything ;)
Something like the following should work:
        var elementString = element.toString();
        if (elementString === "[object NodeList]" || elementString === "[object HTMLCollection]"

Did you guys ever test this with document.querySelectorAll?

Obviously not. Feel free to test and fix it.

Looks like this was fixed in 5127e931ca16a2300d605f39546c9325c3023bf0 .
I'll just close this then ;)


Link to HTTPS downloads on Wiki

On the phpCAS website Wiki https://wiki.jasig.org/display/CASC/phpCAS there are links to download phpCAS:
http://downloads.jasig.org/cas-clients/php/current/
http://downloads.jasig.org/cas-clients/php/
These links forward to:
http://developer.jasig.org/cas-clients/php/current/
http://developer.jasig.org/cas-clients/php/
Although the Wiki is served over HTTPS, these download links are for HTTP. These download pages are also available over HTTPS so the links can be changed to:
https://developer.jasig.org/cas-clients/php/current/
https://developer.jasig.org/cas-clients/php/

Thank you for the report. It should be fixed.


Update Ruby to 3.1

(Temporarily) add net-* gems to Gemfile (which have been split out
from stdlib into separate gems in Ruby 3.1, but aren't explicit
dependencies of Rails yet)

Given the outstanding questions about hash literals in certain contexts (@elliotcm raises some excellent points), and the fact that Brakeman doesn't support 3.1 syntax yet anyway, I'll close this PR and open a new one without the changes and with the Rubocop rule disabled.
Let's revisit this in the future though.


pd-web: remove

Signed-off-by: hundundm<EMAIL_ADDRESS>
What problem does this PR solve?
Removed pd-web and keyvisualService. They will be replaced by Dashboard.
What is changed and how it works?
Check List

Codecov Report

Merging #2121 into master will increase coverage by 0.06%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master    #2121      +/-   ##
==========================================
+ Coverage   76.82%   76.89%   +0.06%
==========================================
  Files         194      192       -2
  Lines       19990    19899      -91
==========================================
- Hits        15358    15302      -56
+ Misses       3482     3453      -29
+ Partials     1150     1144       -6

Impacted Files
Coverage Δ

tests/cluster.go
85.76% <ø> (-0.06%)
:arrow_down:

server/server.go
80.25% <ø> (-0.32%)
:arrow_down:

pkg/apiutil/serverapi/middleware.go
73.03% <0%> (-8.99%)
:arrow_down:

server/schedulers/base_scheduler.go
60.86% <0%> (-8.7%)
:arrow_down:

server/tso/tso.go
81.75% <0%> (-2.19%)
:arrow_down:

server/grpc_service.go
57.29% <0%> (-1.08%)
:arrow_down:

server/schedulers/adjacent_region.go
75.4% <0%> (-1.07%)
:arrow_down:

pkg/btree/btree.go
87.65% <0%> (+0.8%)
:arrow_up:

client/base_client.go
86.2% <0%> (+1.37%)
:arrow_up:

... and 4 more

Continue to review full report at Codecov.

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

/merge


Split bounded sources in larger than 1k chunks.

A simple sub-linear formula gives a "reasonable" split size
over a wide range of total input sizes.

Follow this checklist to help us incorporate your contribution quickly and easily:

[ ] Format the pull request title like [BEAM-XXX] Fixes bug in ApproximateQuantiles, where you replace BEAM-XXX with the appropriate JIRA issue, if applicable. This will automatically link the pull request to the issue.
[ ] If this contribution is large, please file an Apache Individual Contributor License Agreement.

It will help us expedite review of your Pull Request if you tag someone (e.g. @username) to look at it.


feat(Ranger): refactor the logic when ranger performs ACL

https://github.com/apache/incubator-pegasus/issues/1054
This patch fixes the judgment logic when ranger matches policies:

Traverse all resource policies

If the current policy matches deny_condition

does not match any deny_exclude, returns kDenied, and the traversal ends
A deny_exclude is matched, return kPending, and continue to the next policy judgment

No policy is matched or the return value is kPending, enter 2

Traverse all resource policies again

If the current policy matches allow_condition

does not match any allow_exclude, returns kAllowed, and the traversal ends
An allow_exclude is matched, return kPending, and continue to the next policy judgment

If the return value is kPending, it will return kDenied

dose not match any policy, return kDenied

As shown below:
                *** Ranger Policy Evaluation Flow ***
                    +-----------------+
                     \ Resource access \
                      \    request      \
                       +-------+---------+
                               |
                         +-----v-------+
                        /               \
                       /     Has a       \
         +-----N------+  resource policy  <----------------N-----------------+
         |             \  been matched ? /                                   |
         |              \               /                                    |
         |               +-----+-------+                                     |
         |                     |                                             |
         |                     Y                                             |
         |                     |                                             |
         |               +-----v-------+                  +-------------+    |
         |              /               \                /               \   |
         |             /    Has more     \              /   Has more      \  |
         |      +----->   policies with   +---N--+---->+  policies with    +-+
         |      |      \ Deny Condition? /       |      \ Allow Condition?/
         |      |       \               /        |       \               /
         |      |        +------+------+         |        +------+------+
         |      |               |                |               |
         |      |               Y                |               Y
         |      |               |                |               |
         |      |        +------v------+         |        +------v------+
         |      |       /    Request    \        |       /    Request    \
         |      |      / matches a deny  \       |      /matches an allow \
         |      +--N--+ condition in the  +      +--N--+ condition in the  +
         |      |      \     policy?     /       |      \    policy?      /
         |      |       \               /        |       \               /
         |      |        +------+------+         |        +------+------+
         |      |               |                |               |
         |      |               Y                |               Y
         |      |               |                |               |
         |      |        +------v------+         |        +------v------+
         |      |       /    Request    \        |       /    Request    \
         |      |      /  matches a deny \       |      / matches an allow\
         |      +--Y--+   exclude in the  +      +--Y--+   exclude in the  +
         |             \      policy?    /              \      policy?    /
         |              \               /                \               /
         |               +------+------+                  +------+------+
         |                      |                                |
         |                      N                                N
         |                      |                                |
   +-----v-----+         +------v------+                  +------v------+
   |    DENY   |         |    DENY     |                  |    ALLOW    |
   +-----------+         +-------------+                  +-------------+

Seems you are using me but didn't get OPENAI_API_KEY seted in Variables/Secrets for this repo. you could follow readme for more information

I want to disable you.


Added docker contanerization to png-extraction module

As a response to #262. Made changes suggested in #269.
Instructions to use docker are added in README.md
Has been tested several times by several people
Used standard ubuntu image for making docker container.

Thanks, looks good to me.

Merged.


token-transformer merges tokens before deciding what set to exclude

If you have the following structure:
themes
  Foundations
  Light
  Dark

and the "Dark" theme is setup like this:
Foundations: SOURCE
Light: SOURCE
Dark: ENABLED

And your Light theme contains all tokens that the dark theme uses:
Foundations:
{
  "color": {
    "neutral": {
      "10": {
        "value": "#E6EFFF",
        "type": "color"
      },
      "50": {
        "value": "#2B70E8",
        "type": "color"
      }
    }
  }
}

Light:
{
  "default": {
    "value": "{color.neutral.50}",
    "type": "color"
  },
  "gray": {
    "value": "{default}",
    "type": "color"
  },
  "background": {
    "value": "{color.neutral.10}",
    "type": "color"
  }
}

Dark:
{
  "gray": {
    "value": "{default}",
    "type": "color"
  },
  "background": {
    "value": "{color.neutral.10}",
    "type": "color"
  }
}

And you want to transform this with token-transformer like this:
npx token-transformer themes output.json Foundations,Light,Dark Foundations,Light
Your output file will be empty. Reason for that is that we probably merge tokens before we decide what to exclude. Ideally, something set as SOURCE doesn't overwrite something set as ENABLED, and we don't remove tokens that are part of any set that is ENABLED.

I think that I having a relationed issue.
Imagine that I got 3 sets:

core (source)
desktop(enabled)
mobile(enabled)

If I try to select a single set as:
token-transformer tokens.json core.json **core**
This works is fine, and i got only de core tokens only.
But if i try too use 2 sets like:
token-transformer tokens.json core.json **core,desktop**
This already return a blank json, even if I do not use the excludes command.

Just to tag on with a similar problem that may be related from the issue description:

Ideally, something set as SOURCE doesn't overwrite something set as ENABLED

We have a font family in our core set of tokens globals and are overriding it in an enabled set. From globals:

In an enabled token set expressive-type we're overriding the font set with Aktiv Grotesk VF and use a reference to it:

We run token-transformer with globals as a source:
token-transformer tokens.json transformed-tokens.json --throwErrorWhenNotResolved --expandTypography=true globals,expressive-type globals

The resulting output uses the core value of Helvetica instead of expressive-type's override value:

We're able to work around by removing fontFamily from the globals set, but ideally we could override the base font settings per-theme. Is this the same problem, or something else?
Thank you!


Add VM_BASED variable to envs

Description
Adds the VM_BASED variable to all the envs that #687 requires. These need to be there when deploying
Tested
Tested when deploying pilotstaging/integration. Also as a part of #687 and other PRs
Other changes
n/a
Related issues
n/a
Backwards compatibility
Yes

Can you add VM_BASED=false or VM_BASED=true to every .env file?

@ashishb all the other .env files already have it, this adds it to the remaining ones that didn't add it


[1.12.2] Some mobs won't take damage from direct hits or will crash the game if hit by projectiles.

Minecraft: 1.12.2
Forge: <IP_ADDRESS>60
Mods:
AoA3-3.3.6
HadEnoughItems_1.12.2-4.24.6
NGE-1.12.2-1.2.0-forge

I tested out a Diamond Sword on a Zombie and they were able to be killed without any issue... though for Iron Golems... thewy won't take any damage. I later spawned in a bow & arrow and fired an arrow at the same Iron Golem and.... the game crashed.
Crash:
crash-2024-02-20_01.54.07-server.txt
I am unsure what other mobs are out there that would run into crashes or would be unable to take damage. I did try some modded weapons like the Advent of Ascension Energy Guns and the game crashed with that upon hitting an Iron Golem with... say the Beamer Energy Gun which fires 3 streams of Projectiles when fired. The Zombie however did take damage without any issue.
Crash:
crash-2024-02-20_01.59.40-server.txt

I see...This is because there is no egg for Iron Golems . I will fix it at 1.2.1 .

Some modded mobs that prob spawn without Spawn Eggs, like via a custom way of spawning might also run into this issue, perhaps.

I am so sorry ... This is my first mod , there are so many bugs , although I have fix a lot bugs ...


MissingMethodException after upgrade to Android Studio Arctic Fox

Please ensure you have given all the following requested information in your report.
Issue details
Please provide the details of your issue
Project buid error after update from AS 4.2.2 to Arctic Fox
How can I fix the build?
Reproduction steps/code
Even if you think your issue is trivial to reproduce, please supply a SSCCE that demonstrates your issue.  This saves time on our end, and makes it much more likely that your issue will be fixed.
You can find barebones templates here
Version of libGDX and/or relevant dependencies
Please provide the version(s) affected.
1.9.14
Root buid.gradle:
buildscript {
    ext.kotlinVersion = '1.5.21'
    ext.roboVMVersion = '2.3.13'
    repositories {
        mavenCentral()
        google()
    }
    dependencies {
        classpath "com.android.tools.build:gradle:7.0.0"
        classpath "com.google.gms:google-services:4.3.10"
        classpath "com.google.firebase:firebase-crashlytics-gradle:2.7.1"
        classpath "com.mobidevelop.robovm:robovm-gradle-plugin:$roboVMVersion"
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlinVersion"
    }
}

allprojects {
    apply plugin: "idea"

    version = '1.0'
    ext {
        appName = "factory"
        gdxVersion = '1.9.14'
        gdxPayVersion = '1.3.2'
        gameServicesVersion = '1.1.0'
        robopodsVersion = '2.2.3'
    }

    repositories {
        mavenCentral()
        google()
    }
}

project(":desktop") {
    apply plugin: "kotlin"

    dependencies {
        implementation project(path: ":core", configuration: 'default')
        implementation "com.badlogicgames.gdx:gdx-backend-lwjgl:$gdxVersion"
        implementation "com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-desktop"
        implementation "com.badlogicgames.gdx:gdx-freetype-platform:$gdxVersion:natives-desktop"
    }
}

project(":android") {
    apply plugin: "android"
    apply plugin: "kotlin-android"
    apply plugin: "com.google.gms.google-services"
    configurations { natives }

    dependencies {
        implementation project(path: ":core", configuration: 'default')
        implementation platform('com.google.firebase:firebase-bom:27.1.0')
        implementation "com.badlogicgames.gdx:gdx-backend-android:$gdxVersion"
        implementation "com.badlogicgames.gdx:gdx-freetype:$gdxVersion"
        implementation "com.badlogicgames.gdxpay:gdx-pay-android-googlebilling:$gdxPayVersion"
        implementation "com.google.firebase:firebase-ads"
        implementation "com.google.firebase:firebase-crashlytics"
        implementation "com.google.android.gms:play-services-games:21.0.0"
        implementation "de.golfgl.gdxgamesvcs:gdx-gamesvcs-android-gpgs:$gameServicesVersion"
        natives "com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-armeabi"
        natives "com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-armeabi-v7a"
        natives "com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-arm64-v8a"
        natives "com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-x86"
        natives "com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-x86_64"
        natives "com.badlogicgames.gdx:gdx-freetype-platform:$gdxVersion:natives-armeabi"
        natives "com.badlogicgames.gdx:gdx-freetype-platform:$gdxVersion:natives-armeabi-v7a"
        natives "com.badlogicgames.gdx:gdx-freetype-platform:$gdxVersion:natives-arm64-v8a"
        natives "com.badlogicgames.gdx:gdx-freetype-platform:$gdxVersion:natives-x86"
        natives "com.badlogicgames.gdx:gdx-freetype-platform:$gdxVersion:natives-x86_64"
    }
}

project(":ios") {
    apply plugin: "kotlin"
    apply plugin: "robovm"

    dependencies {
        implementation project(path: ":core", configuration: 'default')
        implementation "com.mobidevelop.robovm:robovm-rt:$roboVMVersion"
        implementation "com.mobidevelop.robovm:robovm-cocoatouch:$roboVMVersion"
        implementation "com.mobidevelop.robovm:robopods-reachability-ios:$robopodsVersion"
        implementation "com.badlogicgames.gdx:gdx-backend-robovm:$gdxVersion"
        implementation "com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-ios"
        implementation "com.badlogicgames.gdx:gdx-freetype-platform:$gdxVersion:natives-ios"
        implementation "com.badlogicgames.gdxpay:gdx-pay-iosrobovm-apple:$gdxPayVersion"
        implementation "de.golfgl.gdxgamesvcs:gdx-gamesvcs-ios-gamecenter:$gameServicesVersion"
    }
}

project(":core") {
    apply plugin: "kotlin"

    dependencies {
        implementation "com.badlogicgames.gdx:gdx:$gdxVersion"
        implementation "com.badlogicgames.gdx:gdx-freetype:$gdxVersion"
        implementation "com.badlogicgames.gdxpay:gdx-pay-client:$gdxPayVersion"
        implementation "de.golfgl.gdxgamesvcs:gdx-gamesvcs-core:$gameServicesVersion"
        implementation "org.jetbrains.kotlin:kotlin-stdlib:$kotlinVersion"
    }
}

Android build.gradle is the same as
https://github.com/libgdx/libgdx-demo-cuboc/blob/master/android/build.gradle
Stacktrace
Caused by: groovy.lang.MissingMethodException: No signature of method: build_44elx1mv9bqrje9cd2cr8lv5c.android() is applicable for argument types: (build_44elx1mv9bqrje9cd2cr8lv5c$_run_closure1) values: [build_44elx1mv9bqrje9cd2cr8lv5c$_run_closure1@762bc498]
	at build_44elx1mv9bqrje9cd2cr8lv5c.run(C:\Users\proma\Documents\GitHub\Factory\android\build.gradle:1)
	at org.gradle.groovy.scripts.internal.DefaultScriptRunnerFactory$ScriptRunnerImpl.run(DefaultScriptRunnerFactory.java:91)
	... 140 more

Please select the affected platforms

[X] Android
[ ] iOS
[ ] HTML/GWT
[ ] Windows
[ ] Linux
[ ] MacOS

This isn't related to an issue in libGDX, and this is an issue tracker. Use the Discord for help questions. It is possible com.android.tools.build:gradle:7.0.0 is too high, but we have no way of telling without knowing your Gradle version and so on.

I think you will get the same questions in near time -_-
When developers will try upgrade or create projects at latest Android Studio

My Gradle is 7.0.2

I agree that something isn't right, though starting from a new project may be more useful for narrowing down the issue than using an existing one.
I'm also using Arctic Fox. I can build with as high as Gradle 6.9, but 7.0 tips it over into not working.
Failed to apply plugin class 'org.gradle.plugins.ide.idea.IdeaPlugin'.
> Cannot run Project.afterEvaluate(Action) when the project is already evaluated.

This is with a 1.10.0 project produced by gdx-setup (no Box2D but otherwise default). I don't know what this tells us, as it's a different error to yours. I'm content with just not using Gradle 7, but obviously this isn't a solution for everyone.


fix saturation curve issues

add manual rebuild, print some nice statements upon rebuild
add notes to scheme

closes #29


File drop inbound adapter

Monitor directory for inbound files where contents represent payload
Configure to take file and publish message

Payload could be flat text or formatted.  Kessel doesn't need to understand the payload.


fix issue 139 (Add openssl info to Troubleshooting document)

#139  is an old issue, is it still there?
I can't verify it, and if the changes are still valid, then I'll merge it.

Sorry, I didn't know if this is still valid. I can't verify it either! Feel free to discard this PR. Sorry for any inconvenience!


Controlled shutdowns

Closes #3361 .
This PR adds shutdown capabilities to the diagnostics port by adding a new component named ShutdownTrigger.
The ShutdownTrigger component is notified of each new block and keeps track of the highest block it has seen, as it will ignore all older blocks. Should it receive an up-to-date block, it will check if it fulfills the shutdown criteria set through a potential StopAtSpec. If so, it instructs the node to shutdown via ControlAnnouncement.
To play with this in nctl, simply run nctl dport, stop --at era:5, for example.

bors r+


Automatic PyPI releases

It'd be nice if PyPI releases would happen more frequently, therefore I suggest that we make a simple Github Actions workflow that handles the publishing.

It'd be nice if PyPI releases would happen more frequently, therefore I suggest that we make a simple Github Actions workflow that handles the publishing.

When do you want to publish it. On which event?
Most common is on release, but this repo has no releases. On commit is too much, on merge isntt a good idea, venum does work in main branch, so his changes will not affect that and or he waits for merge or he publishes release himself.

I think we should use the Github Flow development workflow, just make a dev branch and several feature branches and publish on push onto main. This forces us to use the correct conventions.

Yes, this sounds like good approach for developemnet. I can make this action in next pr. Probably will add tests too.


Feature request: Sending & Receive Files from multiple devices

Is your feature request related to a problem? Please describe.
The ability to receive files from multiple devices at once. Even the ability to send files to another device while receiving files from another device. And the ability to send files to multiple devices.
Describe the solution you'd like
The receive menu will have tabs to manage the devices sending files to you. And new tabs will appear when file transfer requests to you are made.
Multiple tabs for sending files to different devices.
Describe alternatives you've considered
No response
Additional context
No response

Sending to multiple devices should work since v1.8.0.
Receiving multiple devices is currently not possible

Creating classes or groups of receivers would be great. So you do not have to choose every single device every time.
Great app by the way. Just found it and I really like it.


Viva Connections Dashboard Webpart: Upgrade Request

Right now, our normal users (50,000+) do not have the ability to hide or rearrange their Viva Connections Dashboard cards on their webpart. We're getting requests that, like other tools they have, they're able to customize how their dashboard functions for them. Microsoft - could you please consider allowing admins to enable any card we deem to be hide-able, or rearranged by users? Some cards may need to be showing per-company policy, but others could be re-arranged or hidden.
Thanks

Thank you for submitting feedback.
I think the best way forward is if you open a service ticket in your tenant so this can get resolved ASAP. Based on the outcome let me know if it is something that can be called out in the docs.
Please follow this link to contact support for business products:https://docs.microsoft.com/office365/admin/contact-support-for-business-products
Please keep us posted here on the resolution so we can feed whatever information you discover into the content.