[Feedback Requested] Splitting up this Repository

I plan on splitting this repo at some point, potentially, but also want some feedback on it.
As they have grown a little bit, I consider VRCNowplaying and VRCSubs to be unique enough that they should live in their own repos -- I also want to eventually start releasing builds as exes and do auto-updating, and splitting the repos will be a good way to go about this.
This repo has been linked around several times so I will probably keep the URL around with a Readme.md linking to the new repos.
If anyone who is contributing to this project or uses this repo do update the scripts has any feedback on the matter, please comment on this issue!

If you build the scripts, please add a config to them both to change the osc ports/ips! I use 8001 & 9001 because port 9000 is occupied by a different program, and I currently edit the python script to change the port.


Proposal: Set GOMAXPROCS in Target/Source Adapters.

I found this article interesting. Seems like an easy speed boost for us? Thoughts? https://blog.devgenius.io/know-gomaxprocs-before-deploying-your-go-app-to-kubernetes-7a458fb63af1

Discussed today:

we'd need to measure performance before, make the change and test before, to see if there are improvements
Knative has something related to this

@JeffNeff do we want to spend time on this or close ?


token scan to string coming out with ridiculously large results

((11 * (15*0.707143)) * 1) - 11 * (15*0.707143)

issue is with how BODMAS order is being ignored in favour of left-to-right scan.


Fixed #26452 - remove lazy loading of middleware

buildbot, please test.

buildbot, test this please.

@timgraham Thanks for the feedback. Do you need me to squash this down to a single commit, or can you use the new github merge feature to do that?

merged in 99bb7fcc1859615a7b8c2468e7b97d54853bfb10, thanks!


Wine Mono Installer Fails with Checksum Error When Changing to Wine 9.9 DXMT (Experimental)

Description:
When attempting to change the wine distribution to Wine 9.9 DXMT (Experimental), the Wine Mono installer consistently fails with a checksum error. This issue persists even after checking the integrity of the installation.
Steps to Reproduce:

Open the wine configuration settings.
Attempt to change the wine distribution to Wine 9.9 DXMT (Experimental).
Observe the Wine Mono installer initiating.
The installer fails with a checksum error.

Expected Behavior:
The Wine Mono installer should complete successfully, allowing the change to Wine 9.9 DXMT (Experimental) distribution.
Actual Behavior:
The Wine Mono installer fails with a checksum error, preventing the successful change to the desired wine distribution.
Additional Information:

Attempted to check the integrity of the installation, but the issue persists.
This error occurs consistently on multiple attempts.

System Information:

Hardware: Apple M3 Pro
Memory: 36GB
Operating System: macOS Sonoma 14.6.1

Reinstall launcher completely, make sure you're not using cleaners.


Returning Binary Data is hard in utoipa 5

Previously, I could use [u8] in the path macro responses to generate openapi for returning a binary blob.
Now, that is pretty much impossible inside the responses field. The only way I could manage to do it is to define a struct just for use in utoipa.
/// Unused dummy struct only used for an OpenAPI definition.
#[derive(ToSchema)]
#[schema(value_type = String, format = Binary)]
struct BinaryFile(PhantomData<Vec<u8>>);

#[utoipa::path(
    get,
    path = "/download",
    responses(
        (status = 200, description = "", content_type = "application/octet-stream", body=inline(BinaryFile))
    )
)]

The generated OpenAPI should look like the below snippet. Openapi-generator requires the "schema" field, otherwise no body is expected.
"content": {
    "application/octet-stream": {
      "schema": {
        "type": "string",
        "format": "binary"
      }
    }
  }

The actual body is a kind of stream with custom headers, which does not implement ToSchema.

Yes it is possible, you might want to take a look at this
https://docs.rs/utoipa/latest/utoipa/attr.path.html#defining-file-uploads, https://spec.openapis.org/oas/v3.1.0.html#considerations-for-file-uploads and this https://www.openapis.org/blog/2021/02/16/migrating-from-openapi-3-0-to-3-1-0
The file uploads has changed a bit in OpenAPI 3.1. Like if you return the [u8] array, the OpenAPI 3.0 way of defining it as type: string format: binary is incorrect, as the value is actually an array of bytes hence type: array items: type: number.
But that is true, if you explicitly want to define it as type: string and format: binary then the new type is needed for it.

I do not have an issue generating either supposedly OpenAPI 3.1 or 3.0 definitions for file uploads. It's just that generating the "old" way now requires an additional struct just for an API definition that is never used.
The actual type I am returning is an axum Body created using Body::from_stream using a file as the source. Obviously this type does not have utoipa traits implemented. It's a bit annoying to assume all endpoints are consuming or returning large files by fully loading them into memory using Vec.
Then of course it's also a question of tooling. While the below definition should be correct for 3.1, openapi-generator still generates incorrect code. I know this is not an utoipa issue, but for compatibility reasons could be nice to support specifying the "format" manually.
OpenAPI 3.1:
# an arbitrary binary file:
content:
    application/octet-stream: {}

Sure, I need to see what can be done to improve the file uploads. Also you can use utoipa-config to define alias for Body as Vec<u8> which then would then make the Body behave as it was Vec of bytes. Though this does not actually remove the need for the format Binary for the old OpenAPI 3.0.


changing the colors using buttons #14

Abhishek
PES2UG21CS020

!bounty 15

You raised the issue on your own and solved it hence 10 enthusiasm points :)

!bounty 10

!bounty 25


Electrs stop working when password B is changed (it does not update the password in config.toml file)

Hello,
When password B is changed from menu, electrs will stop working because it can not connect to bitcoind.
Looking at  /home/electrs/.electrs/config.toml I can see that password is not updated.

Thanks should be fixed in dev, testing for v1.7.2


How to change line drawing configuration

This is the emulation with putty

But when i use webssh2  terminal line appears with not correct characters

With putty i can edit line drawing property. There is a parameter like putty for xterm.js?

I'm not sure how I can reproduce this issue. What is that host system you're connecting to?
The upstream package, xterm.js, has this to say about encoding:
http://xtermjs.org/docs/guides/encoding/


license ?

Please give more information about license of this code

Hello, I've added a license.txt file.


[Don't merge] Parallel test execution for start-pspester

Enable running tests in parallel using runspaces with new -UseRunspacePool switch.
Still TODO: support UnElevate and merging NUnit logs to a single log.

Make it sense on slow CI VMs?

@iSazonov that's part of the experiment I'm trying to figure out.  I think even with 1 virtual core, there is enough wait time that having a second thread running may help.

Closing for now as no work is happening for this.


Generate the navigation sidebar for a docs version automatically from page files

We currently configure the navigation sidebar on the left of the screen by editing the navigation section of docs/config.json for a particular version of the docs.
The benefit of this approach is that we can get precise control over the content of the navigation sidebar. Some drawbacks are:

We need to validate that docs pages named within the sidebar also exist in the filesystem
Publicly accessible pages can easily exist in docs/pages but be absent from the sidebar
We need to remember to update config.json when we make changes to docs pages within the filesystem

I think the drawbacks outweigh the advantage. Further, config.json is a massive YAML file, so removing the navigation section would make it a bit easier to manage (we would still need this file for variables and redirects).
I don't think there's a situation where the structure of the docs/pages directory tree should differ from the structure outlined in docs/config.json.
I propose that we modify the docs engine to build the navigation sidebar automatically by walking the filesystem. In this proposal, when the docs engine builds a page, it generates the navigation sidebar based on the title frontmatter keys of each page. It also generates navigation subsections based on walking the directory tree. If the docs engine finds that the depth of the docs/pages directory tree exceeds the maximum depth of the navigation sidebar, the docs engine throws an exception.
One challenge would be preventing the docs engine from having to open every single docs page for every single docs page (i.e., opening each file at O(n2) efficiency if n is the number of docs pages). We'd need  a way to walk the docs/pages directory once, then assemble something similar to docs/config.json either in memory or (if we need to) on disk, then build the sidebar.
To fine-tune the way the sidebar displays each page's title, we can add another frontmatter item to a page, e.g., sidebar-title.

Closing as "Won't implement". The order of elements in the sidebar matters, and we'll need to specify this manually in some way.


Make older OpenSearch releases (1.1, 1.2 and etc) available to fetch with latest capability

Is your feature request related to a problem? Please describe
With the addition of https://github.com/opensearch-project/opensearch-build/pull/1569. We can now support latest keyword when fetching distribution builds.
This could potentially be a win for bwc testing if we can backfill so we can fetch the correct latest build for older distribution such as Opensearch 1.1.
Describe the solution you'd like
Right now this link downloads latest distribution build for job-scheduler-<IP_ADDRESS>:
https://ci.opensearch.org/ci/dbc/distribution-build-opensearch/1.3.1/latest/linux/x64/builds/opensearch/plugins/opensearch-job-scheduler-<IP_ADDRESS>.zip
If I try out the following link for js-1.2.0, no build is found:
https://ci.opensearch.org/ci/dbc/distribution-build-opensearch/1.2.0/latest/linux/x64/builds/opensearch/plugins/opensearch-job-scheduler-<IP_ADDRESS>.zip
Solution:
Using above link for 1.2.0 will download appropriate distribution build
This could be used for example in AD BWC testing where we currently need to keep older JS and AD zips in order to test bwc.

@tianleh @peterzhuamazon @dblock any thoughts on this and using these downloads for bwc testing?

Option 1: we manually run a build for 1.2.0 and this will add index.json with latest build number.
Option 2: we manually find the existing max build number and manually create a file index.json with the max number.
My understanding is that we cannot run new builds for released versions. Seems Option 2 is more feasible.
cc @bbarani @seraphjiang

Option 2!

Option 2.

@amitgalitz I don't recommend using latest for bcw because 1) it may not be the actual released version 2) those bits are not signed. There may be builds that are newer than what was released. I would implement something that looks for a .zip on opensearch.org first, then falls back to latest for the current version.

@amitgalitz I don't recommend using latest for bcw because 1) it may not be the actual released version 2) those bits are not signed. There may be builds that are newer than what was released. I would implement something that looks for a .zip on opensearch.org first, then falls back to latest for the current version instead of this proposal.

In order to get the correct zip from opensearch.org we would need to have the exact build number stored for those version which shouldn't be too difficult I assume? We don't have another location where we can fetch AD or JS zip for example for 1.1. For current version AD will transition to using latest (https://github.com/opensearch-project/anomaly-detection/pull/475) for zips we currently constantly need to update but wanted to remove the zips we have for bwc and implement an easily changeable matrix for bwc versions.

@amitgalitz There's only 1 release on opensearch.org per version. The issue rn is that we don't publish ZIPs for plugins, which is https://github.com/opensearch-project/opensearch-build/issues/1823. I recommend implementing that, but you'd still have the backfill problem.

With 2.x line moving forward, do we still need this issue @amitgalitz @dblock ?

With 2.x line moving forward and 1.x running in maintenance mode, do we still need this issue @amitgalitz @dblock ?

Also to note that older version before 1.3 have different folder structures, so it is not easy to capable of doing this, especially those are not being tracked at the moment and this issue was opened in 2022.

I am also okay with closing this request, even though I think option 2 can still be implemented. I am okay with just utilizing the zip location from the manifest.


\Route::currentRouteName() always return null on laravel 7.28.4

Laravel Version: 7.28.4
PHP Version: 7.3.22
Database Driver & Version: 10.4.14-MariaDB

Description:
When I try to check what the name of the current route is, I get null every time.
On Laravel 5.x it works fine, but with this version of Laravel I keep getting null
Steps To Reproduce:
in any controller, view, middleware set: dd(\Route::currentRouteName());

Hey there,
Unfortunately we don't support this version anymore. Please check out our support policy on which versions we are currently supporting. Can you please try to upgrade to the latest version and see if your problem persists? We'll help you out and re-open this issue if so.
Thanks!

Hey @driesvints
on middleware steel not work after upgrade to laravel 8.11.2

I found a solution, so if someone has a similar problem, use the following code in middleware.
    $route = \Route::getRoutes()->match($request);
    $routeName = $route->action['as'];

best regards


Consider Uri as a type for endpoint parameter of EventHub constructor

I've extracted all instances of sb://[\w\-/\.]+ from the repo and they are all possible to represent with the Uri object.
Java SDKs use URI: https://github.com/Azure/azure-sdk-for-java/blob/master/sdk/servicebus/microsoft-azure-servicebus/src/main/java/com/microsoft/azure/servicebus/MessageSender.java#L38
Some other ServiceBus docs show endpoint represented as URI too: https://github.com/Azure/azure-service-bus/tree/master/samples/DotNet/Microsoft.ServiceBus.Messaging/NetMessagingBinding
cc @jsquire

sb:///example/data/gutenberg/davinci.txt
sb:///example/data/sample.log
sb://contoso.servicebus.windows.net
sb://default8714
sb://eventhubnamespace616.servicebus.windows.net/
sb://event-hubs-rezas.servicebus.windows.net
sb://fake.servicebus.windows.net/
sb://hydranh-namespace1661.servicebus.windows.net/
sb://hydranh-namespace2438.servicebus.windows.net/
sb://ihsuprodbyres085dednamespace.servicebus.windows.net/
sb://iothubcsharpsdkehnamespacetest.servicebus.windows.net
sb://iothubcsharpsdkehnamespacetest.servicebus.windows.net/
sb://iothubcsharpsdksbnamespacetest.servicebus.windows.net
sb://iothubcsharpsdksbnamespacetest.servicebus.windows.net/
sb://iothub-ns-affanbacku-722541-e6d3b9e3d3.servicebus.windows.net/
sb://iothub-ns-affancentr-1228701-2801317b54.servicebus.windows.net/
sb://iothub-ns-affanga-85919-dbb37074f2.servicebus.windows.net/
sb://iothub-ns-affanmain-723068-75224a8e64.servicebus.windows.net/
sb://iothub-ns-alekseynor-1636439-2947969b98.servicebus.windows.net/
sb://iothub-ns-andbuc-tes-271231-875dddaed9.servicebus.windows.net/
sb://iothub-ns-ankurwestc-1792419-67d0616a9c.servicebus.windows.net/
sb://iothub-ns-askhura-io-1648528-e856d03cc0.servicebus.windows.net/
sb://iothub-ns-asrudra-io-1707361-9db3d6caa7.servicebus.windows.net/
sb://iothub-ns-asrudrates-1770836-658e50b9f3.servicebus.windows.net/
sb://iothub-ns-cymgtest-1795267-6f4620a3c8.servicebus.windows.net/
sb://iothub-ns-demo-asrud-1782619-30ec784c08.servicebus.windows.net/
sb://iothub-ns-dmpypin-cd-1791907-fbf12ba05a.servicebus.windows.net/
sb://iothub-ns-dmpypin-cd-1820624-aa7de2a50e.servicebus.windows.net/
sb://iothub-ns-dotnetcert-1873424-7b5f3593a2.servicebus.windows.net/
sb://iothub-ns-dotnethub-1873374-1bd981a938.servicebus.windows.net/
sb://iothub-ns-dotnethub-1873374-efe0efab53.servicebus.windows.net/
sb://iothub-ns-ea-genhub-1647445-5ddfdc94ff.servicebus.windows.net/
sb://iothub-ns-ea-trustbo-1845736-4cbb218ecb.servicebus.windows.net/
sb://iothub-ns-egmgmttest-1626137-c697d5c7b8.servicebus.windows.net/
sb://iothub-ns-eliohub-1766795-c81a49aca3.servicebus.windows.net/
sb://iothub-ns-eliohub2-1766902-3fffe330de.servicebus.windows.net/
sb://iothub-ns-icm1157738-1635035-4a1220ecb2.servicebus.windows.net/
sb://iothub-ns-ilieedgete-193665-3774bf2376.servicebus.windows.net/
sb://iothub-ns-ilie-test-207274-908460fd83.servicebus.windows.net/
sb://iothub-ns-infra-edge-1848973-1557c6e6f3.servicebus.windows.net/
sb://iothub-ns-iot-hub-re-1608616-9da2f04507.servicebus.windows.net/
sb://iothub-ns-iot-hub-re-1812185-14d8e75e5a.servicebus.windows.net/
sb://iothub-ns-kapilbuild-1609938-ede937158c.servicebus.windows.net/
sb://iothub-ns-maga-canar-1711650-9883db24e0.servicebus.windows.net/
sb://iothub-ns-manualfail-1762885-7a26ecb045.servicebus.windows.net/
sb://iothub-ns-manul-fail-1770469-8055c2fd21.servicebus.windows.net/
sb://iothub-ns-maxgpgtest-1669398-0ab6e73e26.servicebus.windows.net/
sb://iothub-ns-mchaihub-1704167-8fa11e789d.servicebus.windows.net/
sb://iothub-ns-routingrun-1620581-7f4b19c2b2.servicebus.windows.net/
sb://iothub-ns-sachinctes-1643119-627b7767d2.servicebus.windows.net/
sb://iothub-ns-sapan-iot-1608720-c892db45e1.servicebus.windows.net/
sb://iothub-ns-sapan-iot-1622287-aabfd81b00.servicebus.windows.net/
sb://iothub-ns-sapan-iot-1762324-93d1e6ff1c.servicebus.windows.net/
sb://iothub-ns-shishu-can-1635078-9a79c62305.servicebus.windows.net/
sb://iothub-ns-skintali-t-1674510-dfbfe560a5.servicebus.windows.net/
sb://iothub-ns-smoke-iot-1796043-571607922d.servicebus.windows.net/
sb://iothub-ns-smoke-iot-1870061-d35d0a962a.servicebus.windows.net/
sb://iothub-ns-testopsmon-1795455-0c0fa49709.servicebus.windows.net/
sb://iothub-ns-unittestin-417834-12c39aa948.servicebus.windows.net/
sb://iothub-ns-updatedotn-1873405-ca0aee630a.servicebus.windows.net/
sb://iothub-ns-vishalg-eu-1036652-c086004927.servicebus.windows.net/
sb://magaoneboxsbns.servicebus.windows.net
sb://myapp.WindowsAzure.com/
sb://myehnamespace.servicebus.windows.net
sb://mynamespace.someotherregion.windows
sb://namespace_DNS_Name
sb://newendpoint
sb://NOTREAL.servicebus.windows.net/
sb://not-real.servicebus.windows.net/
sb://output
sb://resourcelocator/entityname
sb://routingrunnerscenariotestsehtest-ns.servicebus.windows.net
sb://routingrunnerscenariotestssbqtest-ns.servicebus.windows.net
sb://routingrunnerscenariotestssbtopictest-ns.servicebus.windows.net
sb://sdk-disasterrecovery486.servicebus.windows.net/
sb://sdk-disasterrecovery-5011.servicebus.windows.net/
sb://sdk-namespace-108.servicebus.windows.net/
sb://sdk-namespace-131.servicebus.windows.net/
sb://sdk-namespace-1585.servicebus.windows.net/
sb://sdk-namespace-2064.servicebus.windows.net/
sb://sdk-namespace-3315.servicebus.windows.net/
sb://sdk-namespace-3870.servicebus.windows.net/
sb://sdk-namespace-5149.servicebus.windows.net/
sb://sdk-namespace-6418.servicebus.windows.net/
sb://sdk-namespace-8689.servicebus.windows.net/
sb://sdk-namespace-8898.servicebus.windows.net/
sb://sdk-relaynamespace-1162.servicebus.windows.net/
sb://sdk-relaynamespace-1293.servicebus.windows.net/
sb://sdk-relaynamespace-6031.servicebus.windows.net/
sb://sdk-relaynamespace-7689.servicebus.windows.net/
sb://sdk-relaynamespace-9129.servicebus.windows.net/
sb://shishueh.servicebus.windows.net
sb://test.servicebus.windows.net/
sb://testcontainer13369
sb://vishalgoneboxsbnamespace.servicebus.windows.net

The Event Hubs client does not have a parameter that corresponds to the endpoint, conceptually.  The constructor takes the host for the Event Hubs namespace, which is assigned by the resource manager.   This value has historically taken the form of {your-namespace-name}.servicebus.windows.net but the ownership of that decision is external to the client library.
Unfortunately, this value is not displayed within the portal making it difficult for developers to discover.  The closest illustration that appears in the portal is the Endpoint component of the connection string, which further muddies the waters, as it has an arbitrary sb:// scheme prefix by convention - but which actually is not needed nor used with the client library.  The library makes use of the host, along with the requested Event Hub name, and a scheme that is determined by the requested transport type in order to form a uri used for connecting to the service.
The decision to use a string host was made for a couple of reasons:

Allow developers the flexibility to either use the documentation to build the host from their namespace name or to copy/paste the endpoint value directly from the connection string.

Provide the flexibility to do a better job in the future of assisting developers by allowing them to use just the name of their Event Hubs namespace in addition to the other forms.

Not take a dependency on the format of the host, as this value is controlled by the service team and may change, such as taking different forms for different transport types.  (currently, AMQP is the only supported transport, but others have been used in the past and are being discussed for inclusion)

This was a decision made by the feature team across languages, and the approach between .NET, Java, TypeScript, and Python are aligned for the track two client.  I would prefer to keep this more loosely typed as a string to give developers more freedom and allow the library to provide assistance on forming the correct resource from the only item of information prominent in the portal - the namespace name.
That said, @ramya-rao-a is leading the Event Hubs feature all-up.  Since this change would be one that would need to be accepted by all languages, I'll assign to her and give her the opportunity to share thoughts or bring it to the feature team for wider discussion.

Filed #7242 to begin formally tracking this enhancement.   It's been something that I've informally been tracking for a bit, but this was a good motivator to formalize it.

Thank you for the response, the reasoning is clear to me now. I was asking because I was trying to avoid  an unfortunate AddEventHubClientWithHost https://github.com/Azure/azure-sdk-for-net/blob/master/sdk/eventhub/Azure.Messaging.EventHubs/src/Compatibility/AzureClientBuilderExtensions.cs#L35 method name that is required because without TokenCredential there is nothing to disambiguate connectionString + hub and host + hub overloads.
I tried to go in both direction at this point - considering strongly typed connectionString and now host but it seems that we'll have to live with this one.


Switch crashes when launching certain games

The Switch crashes when certain games are launched due to it running out of "AudioRenderer" sessions. This can be avoided by creating a blacklist where the sysmodule will stop once a "bad" game is launched.
If you've come here to report a game that has this issue, please comment with it's name and title id/program id in the following format:
Game Name [Title/Program ID]
e.g.:
The Legend of Zelda: Breath of the Wild [01007EF00011E000]

The Elder Scrolls V Skyrim [01000A10041EA000]

Error occurred after boot logo.
Works well when the Sysmodule turned off.

Darksiders Genesis [0100F2300D4BA000]

Ni No Kuni: Wrath of the White Witch [0100E5600D446000]
Minecraft Dungeons [?]
Mario Paper Origami [?]
The Outer Worlds [?]

Ghostrunner [010090F012916000][135]
Crashes before "One More Level" logo finishes materializing (works with sysmodule stopped/turned off)

Ghostrunner [010090F012916000][135]
Crashes before "One More Level" logo finishes materializing (works with sysmodule stopped/turned off)

Clannad [0100A3A00CC7E000] also crashes the Switch, straight away from booting up the game

Blade Strangers [01005950022EC000]
Death Road to Canada [0100423009358000]
Both crashes on game boot, shortly after seeing switch logo in bottom right of screen.
Both work when Triplayer Sysmodule is turned off.

CRASH™ TEAM RACING NITRO-FUELED [0100F9F00C696000]
Crashes after the very first loading screen.


it would be nice if you updated this now that vue 1.0.0 is stable

I see you mentioned you would make the 1.0.0 branch the master once it was stable, I think this time has come. Your project is very useful and I would like to see it used more to help people with vue and jwt!!
Thanks!

Hi! The README is not up to date. This project has been using vue 1.0.x since it has become stable.


Validate DS topology w.r.t. required capabilities

What does this PR (Pull Request) do?
When adding a required capability to a topology-based delivery service,
there must be at least one server (in the DS's CDN) per cachegroup in
the topology with all the required capabilities.
Which Traffic Control components are affected by this PR?

Traffic Ops

What is the best way to verify this PR?
Review the TO API tests, verify they're sufficient, and verify the tests pass.
Manually attempt to add a DS required capability to a DS that is assigned to a Topology that contains at least one cachegroup that doesn't meet the criteria (must have at least one server in the DS's CDN with the required capabilities).
The following criteria are ALL met by this PR

[x] This PR includes tests
[x] Validation, no docs necessary
[x] This PR includes an update to CHANGELOG.md
[x] This PR includes any and all required license headers
[x] This PR does not include a database migration
[x] This PR DOES NOT FIX A SERIOUS SECURITY VULNERABILITY (see the Apache Software Foundation's security guidelines for details)

Should this warn, but not error?
For example, someone might want to assign just one particular server, or just a few servers, to a test DS. This makes that impossible, without a custom topology.
Or, someone might have an actual capability, like an ATS plugin, that they've deployed to a number of caches, but maybe they have some small cachegroups without many caches, that they don't really want to upgrade, and they're ok with clients going to a nearby large cachegroup instead.
So maybe they get a message, "Warning: no servers in cachegroup 'LittleRock', requests for this Delivery Service will not be routed to that Cachegroup!" But maybe they're ok with that, because their Nashville datacenter is nearby and large.

The rationale behind this validation is that operators should be able to look at a DS's topology and know that reality matches the given information. If we allowed this with a warning, a DS's topology would no longer match reality.
I agree with you in that the downside is that custom topologies would have to be made for the certain use cases you've laid out, but I think having the information match reality is more important.

This PR fixes #5098

Should the title be adjusted to make it clearer that this is for POST and PUT /deliveryservices_required_capabilities (and not PUT /deliveryservices)?


In self-service portal, allow drivers and to add notes next to add notes next to confirmed matches

Next to each confirmed match in the self-service portal (for drivers and riders), add a box that lets drivers/riders record notes for themselves.
This is especially useful for drivers, to keep track if they're arranging multiple rides.

working on the db side of it, will post back later

@sasjkia I'm just taking a look at this as you thought it is something that one of the new contributors can help with. Do you have any thoughts (or mock up) of how the UI will look and work for this? Currently, for each match there is a Cancel button. As well as a textbox, is the plan to add an Add Notes button for each match? That button will end up being reasonably close to the Cancel button, only so much that can be done to avoid that

@jkbits1 this is a very crude mockup created in my Open Office 🥇 Obvs colours, text, style should reflect Carpool Vote standard. But this is the general principle. I can try to get a UX person to do a proper mockup if needed. Let me know!

@kylejcrawford

@sasjkia A few initial questions:

To what extent do we know drivers are looking for something like this?  Because they will be communicating with riders via a separate platform (either SMS or email), how likely is it that they log back into the portal in order to add notes? Might they track ride order another way (like just adding each person at certain times on their calendar)?

If it is expected they'll use it sufficiently enough to build it, then I'd suggest we look for a more subtle way to include the feature than a full text box. One reason is that if a driver has multiple riders, the screen will be cluttered with text boxes.

@sasjkia the new operator focus of the system means this issue is less of a priority, but it's not so hard to do so I'll add a low priority label


GRPC zap middleware output log to stderr

Bug report:

Expected behavior:

How to reproduce it:

Environment:

Dragonfly version:
OS:
Kernel (e.g. uname -a):
Others:

Please try the v2.0.6.


Forge is NeoForge now (Port to 1.20.4)

Don't forget to change the branch 😼

Everything looks good, gradle wrapper checksum verified, merging after some tests.
Thank you!


torchsharp tensor load and save incompatible with pytorch

c# tensor.Save and Load, and also torch.Save and .Load seems to  be closer to python torch.jit.Save and Load.
.pt file from c# contains subfolder "code" and constraints.pkl
It makes it incompatible with python implementation.
python tensor.save and torch.save saves .pt file with just subfolder data, files data.pkl and version
while it is possible to load a tensor saved from C# into python with torch.jit.load, it got loaded in wrapped format and needs to be unwrapped. It is not clear how to pass a tensor back from python into c#.
That limits usability of torchsharp for more advanced use-cases.
Can you please make torchsharp tensor load and save compatible with pytorch?

Technically, when pytorch saves a tensor, it saves "torch._utils_rebuild_tensor_v2"
when torchsharp saves a tensor, it saves __torch__Module with torch._utils_rebuild_tensor_v2 inside
You can see it in data.pkl which is inside of .pt file

Generally speaking, Pytorch relies on pickling, which .NET does not support -- it is a very capable Python-specific serialization format with no perfect-fidelity implementation in .NET. There are native APIs to save modules, but the realization on load is not useful. In fact, we might remove those interfaces from TorchSharp, since they're not very functional.
In order to address this, we invented a specific format for saving weights only, which you can use to transfer state-dicts between PyTorch and TorchSharp. This format requires that you translate the model from Python to .NET with very high fidelity (fields have to be called the same, etc.). The other way to transfer models is to use TorchScript.
See:
https://github.com/dotnet/TorchSharp/wiki/Sharing-Model-Data-between-PyTorch-and-TorchSharp
https://github.com/dotnet/TorchSharp/wiki/TorchScript

@BalashovK -- have your questions been answered here?

Yes, thank you!


[WIP] Convert PyObjectPayload to a dyn trait

This is what I discussed in #535, I've changed so far just a few but here's what a bare-bones obj module would look like:
pub struct ObjFloat {
    value: f64,
}
fn get_value(obj: &PyObjectRef) -> f64 {
    if let Some(objfloat) = obj.payload.downcast_ref::<ObjFloat>() {
        *objfloat.value
    } else {
        panic!("Inner error getting float")
    }
}

I'm going to close this cause it seems like a big stretch that isn't quite necessary right now, the same could be done with a PyObjectPayload variant containing a Box<dyn Any>, and some of what this was trying to accomplish is in #525.


[BUG] media.location returns None even if location is present in the actual post

Hi,
I'm having some issues with retrieving locations from posts of a profile.
This piece of code
medias = client.user_medias(userid)

for m in medias:
   print(m.location)

always prints None, even if all medias are returned correctly and most of the posts do have locations when checking the instagram page itself. I checked the printed output, and indeed location=None.
Why is that? Am I missing something?
Thanks

Try using user_medias_v1:
>>> medias = cl.user_medias_v1(cl.user_id)
>>> for m in medias:
>>>     print(m.location)

None
None
pk=449507392 name='Norway' phone='' website='' category='' hours={} address=None city=None zip=None lng=8.0 lat=61.0 external_id=108646839159211 external_id_source='facebook_places'

Thanks, this seems to work


Asserts download

https://github.com/zeux/meshoptimizer/releases/tag/v0.18
i downloaded gltfpack-windows.zip.
it is failed because it has virus.

Please see #448 and please report this to Microsoft assuming this is using Windows Defender.


Environment installation fails

Hey,
I tried installing the environment, unfortunately, it fails either due to manopth or the MANO models.
Can you help me out? Anything I need to specify differently?
(minimal-hand-torch) muellelu@e130-pc25:~/git/minimal-hand-pytorch$ python demo.py
Traceback (most recent call last):
  File "demo.py", line 3, in <module>
    from manopth import manolayer
  File "/home/AD/muellelu/xconda3/envs/minimal-hand-torch/lib/python3.7/site-packages/manopth/manolayer.py", line 7, in <module>
    from mano.webuser.smpl_handpca_wrapper_HAND_only import ready_arguments
  File "/home/AD/muellelu/git/minimal-hand-pytorch/mano/webuser/smpl_handpca_wrapper_HAND_only.py", line 137
    print 'FINITO'
                 ^
SyntaxError: Missing parentheses in call to 'print'. Did you mean print('FINITO')?
(minimal-hand-torch) muellelu@e130-pc25:~/git/minimal-hand-pytorch$

Hi, would you check here to have a try?

@MengHao666 thanks for the fast response.
Unfortunately, that does not help. It seems that the python files of the mano model use python version 2.* (print "something" instead of print("something"). That's quite strange

The official code of mano is written in python2. Manopth migrates the official code of mano to python3. You need to replace the official code of mano with the code of manopth. I think you maybe replace the code of manopth with the official code of manom, this can't run in python3.

I think in essence I just had to delete all *.py files that are automatically in the .zip of the MANO models. Without, I got further

You can try your method. But, I'm not sure whether manopth completely migrates all mano code to Python 3. Maybe some code can also run in Python 3, so they are not migrated.
My method is to choose not to overwrite manopth when decompressing the mano model.

@maitetsu so you manually copy/install manopth? I guess this i not reflected in the instructions?
Currently manopth is installed automatically via the environment file.

yes. I manually install manopth.more detail you can see https://github.com/hassony2/manopth#installation


Simple/Expert UI changer

Opened a new PR because #24 got too complicated after the restructuring.

One problem I'm still trying to figure out is why the gear menu opens the menu 200 pixel below the window, rather than inside the window.

Right now, the menu opens at a specific position relative to (I believe) the top left corner. It would probably be better to define its position from one of the bottom corners, to avoid issues like this when the window size changes.

I've rebased this branch off #43. We'll need to merge #43 before this gets merged.

I'm pretty happy with how this works now. I need to test on windows and in packaged versions, but if it looks good there I'm ready to merge this.


Make explicit decision on removing or keeping 0 int's in state for total escrow amount

Summary
#3019 added a separate tracking amount in state for the total IBC'd out for a chain. One slight concern is handling of 0 amount escrow balances. Two issues arise:

GetTotalEscrowForDenom returns a zero coins slice for escrows which have never been referenced to ease caller logic (not ideal)
0 int's exist in state while the bank keeper prunes zero balances (also not ideal to have inconsistency)

We should make an explicit decision on how we want to handle this situation, so we can ensure there are no pitfalls and that it is well documented
Given two problematic scenario's, I think I'm leaning towards adjusting the logic to:

require caller to handle initializing empty escrow accounts
prune zero ints (match bank behaviour)

I guess the idea is that the escrow function needs to handle empty escrows and unescrow needs to handle pruning zero amounts.

For Admin Use

[ ] Not duplicate issue
[ ] Appropriate labels applied
[ ] Appropriate contributors tagged/assigned

Closed by #3585


Impossible to make inference on long input signal

Dear all,
After some made tests., I realised that it is imposstible till know to make inference on long input signal. Am I wrong ?
Best regards

You can use our VAD (see HuggingFace) to split long sentences into shorter
ones. Then you can use the ASR models on the detected chunks.
On Tue, Aug 16, 2022, 6:47 AM Asma-droid @.***> wrote:

Dear all,
After some made tests., I realised that it is imposstible till know to
make inference on long input signal. Am I wrong ?
Best regards
—
Reply to this email directly, view it on GitHub
https://github.com/speechbrain/speechbrain/issues/1544, or unsubscribe
https://github.com/notifications/unsubscribe-auth/AEA2ZVUEDLDR2AWLR5JQ5TDVZNWVLANCNFSM56VKN6QA
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>

Hello,
There has been no activity on this issue for a very long time.
Therefore, I am closing this issue. Feel free to reopen it if needed! 😁


How do I set my prefered stock list "

This Data Adapter simulate a market data feed which provides a list of 30 stock symbols (item1, item2, ... , item30) with updates prices and other fields.
At the client side the application can request any subset of this list through the itemized list provided with the subscribe request (for example ["item4", "item5", "item9", "item15"]).
You can also use a symbolic name instead of the detailed list, for example "MY_PREFER", but you'll need to extend the code of this Adapter to implement the getItems method of the MetadataAdapter interface in order to resolve an Item Group name into the list of stock symbols.

ok , thanks !

if I change the item1 to other name,it does not work fine.
what's the reason?

Please consider that if you change the name of an item, for example from 'item1' to 'my_stock_no1', you should take care to let the client and the Data Adapter consistent.
In the specific case of this Data Adapter you have to change the code of ExternalFeedSimulator in order to generate a feeds producer for the 'my_stock_no1' Item (ExternalFeedSimulator.java#L120).

problem is fixed, thanks

BTW,it it possible to support k-line and other chart line graph   in ios client?

The iOS client library does not provide any graphic widgets, but you can feed with the real-time updates received any third-party component suitable to your needs.

ok.
If I pull the real time updates from provided server , do I need to save the new data at local file to be used for data analysis?

Yes, with a MERGE type subscription should be your client to store the received data for any aggregate analysis.
But, leveraging other type of subscription mode (like DISTINCT or COMMAND) and the snapshot feature you could receive, against a subscription request, a historical series of data.
The feasibility and/or suitability of such a mechanism depends on the type and size of the historical data.


Issue with search key

I am getting error while executing following  query,
SELECT  *  FROM  test WHERE lucene='{query :  {type : "match", field : "URL", value :"AAAA-BBB-943b7a01b257d1a1af3441d0639c9a2dc65562a8"}}'
But its working if i remove '-' from the key ,Is it possible to use key with - .
My working query is ,
SELECT  *  FROM  test WHERE lucene='{query :  {type : "match", field : "URL", value :"AAAABBB943b7a01b257d1a1af3441d0639c9a2dc65562a8"}}'
Thanks

Could you please show me the create table and create index statements? I need to know at least the type of the column 'URL' and the used index mapper in order to reproduce the issue.

You may reproduce with following queries ,
CREATE KEYSPACE demoWITH REPLICATION = {'class' : 'SimpleStrategy', 'replication_factor': 1};

CREATE TABLE tweets (    id INT PRIMARY KEY,    user TEXT,    body TEXT,    time TIMESTAMP,
lucene TEXT
);
CREATE CUSTOM INDEX tweets_index ON tweets (lucene)
USING 'com.stratio.cassandra.index.RowIndex'
WITH OPTIONS = {
'refresh_seconds' : '1',
'schema' : '{
fields : {
id   : {type : "integer"},
user : {type : "string"},
body : {type : "text"},
time : {type : "date", pattern  : "yyyy/MM/dd"}
}
}'
};
  INSERT INTO tweets	(id, body, lucene, time, user)VALUES 	(1, 'test', '', '2015-01-01', 'user1');

INSERT INTO tweets	(id, body, lucene, time, user)VALUES 	(2, 'AAAA-BBB-943b7a01b257d1a1af3441d0639c9a2dc65562a8', '', '2015-01-01', 'user2');

SELECT * FROM tweets
WHERE lucene = '{query : {
type  : "match",
field : "body",
value : "test" }}';
But i am getting error with following select query
SELECT * FROM tweets
WHERE lucene = '{query : {
type  : "match",
field : "body",
value : "AAAA-BBB-943b7a01b257d1a1af3441d0639c9a2dc65562a8" }}';

The field "body" is using a "text" mapper, which is used for analyzed text. No analyzer is specified in the schema, so the default analyzer is used. This is Lucene's StandardAnalyzer, which uses hyphen as token separator. This way, the text "AAAA-BBB-943b7a01b257d1a1af3441d0639c9a2dc65562a8" is split into three tokens, which are "AAAA", "BBB" and "943b7a01b257d1a1af3441d0639c9a2dc65562a8". The provided query is of type "match", which is used for matching single terms. You can see that theses queries do find the row:
SELECT * FROM tweets WHERE lucene = '{query :
   {type : "match", field : "body", value :"AAAA"}}';
SELECT * FROM tweets WHERE lucene = '{query :
   {type : "match", field : "body", value :"BBB"}}';
SELECT * FROM tweets WHERE lucene = '{query :
   {type : "match", field : "body", value :"943b7a01b257d1a1af3441d0639c9a2dc65562a8"}}';

Additionally, you can query for all the three terms using a phrase query, which is intended to multi term searches:
SELECT * FROM tweets WHERE lucene =
   '{query : {
      type : "phrase",
      field : "body",
      values :["AAAA", "BBB", "943b7a01b257d1a1af3441d0639c9a2dc65562a8"]}}';

Also you can use the Lucene's query syntax:
SELECT * FROM tweets WHERE lucene =
   '{query : {
      type : "lucene",
      default_field : "body",
      query :"AAAA-BBB-943b7a01b257d1a1af3441d0639c9a2dc65562a8"}}';

Alternatively, if you are not interested in language analysis, you can map the field body as "string":
CREATE CUSTOM INDEX tweets_index ON tweets (lucene)
USING 'com.stratio.cassandra.index.RowIndex'
WITH OPTIONS = {
'refresh_seconds' : '1',
'schema' : '{
fields : {
  id : {type : "integer"},
  user : {type : "string"},
  body : {type : "string"},
  time : {type : "date", pattern : "yyyy/MM/dd"}
}}'};

Thus you can use the match query as is:
SELECT * FROM tweets
WHERE lucene = '{query : {
   type : "match",
   field : "body",
   value : "AAAA-BBB-943b7a01b257d1a1af3441d0639c9a2dc65562a8" }}';

And also do wildcard queries:
SELECT * FROM tweets WHERE lucene = '{query :
   {type : "wildcard", field : "body", value :"AAAA*"}}';
SELECT * FROM tweets WHERE lucene = '{query :
   {type : "wildcard", field : "body", value :"*BBB*"}}';

Thank you for the feed back


Apply new styles to the Partner main dashboard for higher clarity (only for advanced CSS developer)

See attached mockup: HE - Dashboard.pdf
Must be implemented using Tailwind framework, so that some of us regular volunteers (who are petrified of CSS) can maintain and modify the result going forward.
Only for devs with extensive experience in using CSS to implement design mockups. (Unless you're sure this describes you, it might be good to ask. We'll need an implementation that's maintainable by non-CSS experts.)

Hello! 👋
I'm a Rails developer who doesn't hate CSS. I'd like to take this one.

Absolutely thanks! @metamoni


cross-compile instructions ?

Is it possible to compile linux from mac or get a universal binary ...
otherwise saying so in the readme would be nice binaries will only work on the systems they were compiled on

It is possible but maintaining a cross-compilation environment is extremely difficult and I don't want the support burden.
You can run rubyc on travis CI to build macOS and Linux binaries that are uploaded to a destination of your choice, and travis CI has a paid option if you need the source and destination to be secret.


Updating LICENSE to include all team members

Added everyone else's names to LICENSE

I think we should use GPL v3 instead


Add First and Last name to Newsletter intake form

I would like to add fields from First and last name to the intake form for the DVC Newsletter on the site so that I can better personalize email messages.

This form?

I don't remember when exactly, but didn't we discuss whether we should do this in the past? I think I remember someone mentioning adding extra fields to the form may have some cons 🤔 cc @iterative/websites

I don't remember when exactly, but didn't we discuss whether we should do this in the past?

I was thinking the same thing, but I can't find the exact Issue. I think first and last may make it seem a bit intrusive and/or cumbersome. I could see a single "name" field working better, but even then without any deeper personalization it may deter more users than it does increase open rates for.
There's also the issue of how we handle all the subscribers we have that don't have names input, as well as people that don't input names- do MailChimp templates support logic for optional fields?
That all said, I'm not to attached either way so if we all agree we want it then the implementation shouldn't be too difficult given MailChimp supports it, which I'm pretty sure it does.

I think first and last may make it seem a bit intrusive and/or cumbersome. I could see a single "name" field working better, but even then without any deeper personalization it may deter more users than it does increase open rates for.

I'd be totally ok with just first name.  I think the original reason was to not be intrusive.  We are collecting more for Studio and that makes sense.  In this case with the open source tools, I think being less intrusive is desirable, but I would like to make people feel more welcome and part of the Community instead.

There's also the issue of how we handle all the subscribers we have that don't have names input, as well as people that don't input names- do MailChimp templates support logic for optional fields?

On this, I think I can set up a tag once the change happens on new ones.  Or a stage for items that have the first name field filled out. So there would be a newsletter to the pre-change list with no merge "Hi Friend!" and the new ones with the tag would get the same newsletter, but personalized.

I thought we have a mailchimp pop-up or a separate page when you click signup button. It would have made sense to include name there. Have mixed feeling about the main page itself 🤔 any good examples with multiple fields like this on the main page?
at least we'll have to design it a bit  ...

I just tested this flow of subscriptions and I have an important note to consider.
@rogermparent @shcheklein @jendefig
I believe we are missing an important intermediate step of verification for the entered email.
Usually, after entering the email, a verification link needs to be dropped to the provided email address which further confirms the subscription and adds the email to the list of subscribers.
As of now, I can provide any email address and it straight away gets added to the list of subscribers which I don't think is a good way.
When it comes to taking in the name, I don't really think it's necessary as this subscription is completely voluntary.
What matters more than the personal touch is the profound content that eventually lands in the inbox.
As a starter, the "subscription confirmed" email can be glorified to be informative and attractive.
Thanks!

Thanks @VinayakRugvedi!   Indeed it is customary to have a verification step.  We should definitely consider that.

@jendefig Lowering the priority of this one. Do we still need it? Do we even still want this intake form?

Adding fields beside email will have a negative impact on the number of people signing up for the newsletter. And, if we want to greet people, using general ones like "Hi friend", "Hey", or "Hey there" should be fine.
Generally, the ones with proper greetings are the ones that are subscribed once the user registers/signs up to the platform/app/website. So, this is similar to when a user signs up for "Iterative Studio" in our case.

I think it may make a difference to how the email is accepted by email clients as to whether it goes to promotions (not desirable) or directly to inbox (desirable).  I don't know the ins and outs of this.  I haven't had time to study.


Simplify installation

Invoke python3 -m pysr install in setup.py after main install call.

not needed in newer version


Update LSTNet.py

Resolves a Runtime error occurring based on this:
Traceback (most recent call last):
File "main.py", line 149, in
train_loss = train(Data, Data.train[0], Data.train[1], model, criterion, optim, args.batch_size)
File "main.py", line 55, in train
output = model(X);
File "D:\Anaconda2\envs\py3\lib\site-packages\torch\nn\modules\module.py", line 491, in call
result = self.forward(*input, **kwargs)
File "D:\Python\multivariate-time-series-data\models\LSTNet.py", line 53, in forward
s = s.view(batch_size, self.hidC, self.pt, self.skip);
RuntimeError: invalid argument 2: size '[128 x 100 x 6 x 24]' is invalid for input with 2073600 elements at ..\src\TH\THStorage.c:41

i have the same question. How to solve this?

i have the same question. How to solve this?
Review my commit proposal.
i.e. enclose line 16 with the int( ) function.


Cannot run the unity environment

Hello Dear Xavier,
Thanks for your great work! When I used Unity 2018.4.4.f1 (as the project suggested, installed from Unity Hub) to open the project (without any modification, tested both on ubuntu16 and mac os big sur), I encountered the following errors.
Are these due to the reason that I miss installing some supporting packages?

Thanks in advance.
Best,

Hi @AnyiRao, the latest version of the simulator is actually run with Unity 2019.X, but the reason you are getting this issue is because in order to make the simulator work you need to install external packages. In particular, you need to install FinalIK and Complete Home Interior Pack, listed here:
https://github.com/xavierpuigf/virtualhome_unity/blob/master/doc/third_party.md
You don't really need the modern house pack, it just includes extra assets


Problem with uniformity of FNV implementation

Hi Will,
Really appreciate your time implementing Bloom. We have opted to use it in a new project of ours at work, and while reviewing I have found a problem with your custom implementation of FNV. I threw together a test in a branch of my fork to help illustrate. You can find that here: https://github.com/turgon/bloom-1/blob/uniformity/uniformity_test.go
The arrangement of the test is pretty straightforward. The hashing method under test is used to determine the location of a bit to set in the filter, just like it is during your Add() method. I count up the number of times each bit is hit, and then compare the histogram to the uniform distribution using a Chi Square goodness of fit test.
I tested five different methods of finding bit locations:

your current implementation
an implementation using Murmur3
your implementation preceding changeset ed0c3ad552eb74b37999995a9678f3723ca44454
an implementation using Go's native FNV-1
an implementation using Go's native FNV-1a

The results indicate that your two custom implementations of FNV are not uniformly distributing mod m. In practice one could size up the filter in m and k and not suffer terribly, however, it certainly will increase the false positive rate in very unpredictable ways.
I think the problem stems from your addition of the index on line 77.
That addition makes the initial value differ from FNV for indices i greater than zero. My suspicion is that fnv64Hash(0, data) is ok, but the others are not. Also, the others (1, 2, 3) have no influence on the bit location when ii is zero on line 99. I believe this causes the first bit location to be uniformly distributed, but not the rest.
After further research I introduced Go's native FNV-1 and FNV-1a methods as a baseline, and although they performed surprisingly well, there are only 32 and 64 bit implementations. Therefore the g(x) = h0(x) + i*h1(x) trick can only be applied for filters with m < 2^32 when splitting 64-bit FNV.
Cassandra uses Murmur3 instead of FNV for its bloom filters and the linked article hints at why. It satisfies the requirement of Kirsch and Mitzenmacher,
Our k hash functions will be of the form gi(x) = h1(x)+ih2(x) mod p, where h1(x) and h2(x) are two independent, uniform random hash functions on the universe with range {0, 1, 2, . . . , p − 1}, and throughout we assume that i ranges from 0 to k − 1. I.e.: Uniformity is critical or the math doesn't hold up.
I also prefer Murmur3 as it produces 128-bit values, which lends itself well to addressing 64-bit locations, while not suffering the kind of performance hit a cryptographic hash takes.
I hope this was clear enough, and you can find it useful. Thank you!

Hi turgon, I will review this.

Hey @willf, any chance you've looked yet?

@turgon : Take a look at https://github.com/tylertreat/BoomFilters

@turgon thanks again for running this test. Would you be willing to adapt your code to swap out the current hash, and then include some test for uniformity as an acceptance test? I'm afraid I personally won't be able to get to it before a week or two or more.

@willf I'd be happy to.
@anacrolix looks like a nice bundle of stuff. I notice they don't have uniformity tests, too. ;)

@turgon Wow, it's taken me a long time to get to this, and I see you went on to create your own Bloom filter code, but this code now uses the same murmurhash, and there is a test for uniformity included.

@willf Pay my bloom no mind. Just me goofing around. I'm excited you came back to this and again I really appreciate you making time to publish libraries like this one!


Reduce chance of random angry animals event spawning

About the PR
Massively reduce the weight of the random angry animals spawn events.
Why / Balance
There are currently four random spawn events in the game with a combined weight of 16.5. These random enemies are frustrating for players, do not lead to any roleplay, prey disproportionately on new players, encourage powergaming, and cause rule issues when players take the open ghost roles and destroy station infrastructure or try to become station pets. I do not understand why these events should be so frequent.
Worth noting that I did not increase any of the other event weights in comparison. Let me know if I need to or if that breaks things.
Technical details
I wrote this in webedit in like five minutes and haven't tested it. I'm welcome to making other changes to stop things from breaking.
Requirements

[X] I have read and am following the Pull Request and Changelog Guidelines.
[X] I have added media to this PR or it does not require an ingame showcase.

Changelog

:cl:

tweak: Significantly reduced the frequency of the random killer animal spawn events.

Janitors be blessed

I wouldn't mind them if the mobs were a bit weaker, the messes easier to clean, and warnings on spawn locations

A player asked me in dead chat what the point of having these events at all was and I honestly couldn't think of an answer. I'm okay with having them in to keep players on their toes and create conflict, I guess, but they are way too frequent as-is.

webedit detected, maintainers will send you to the pear wiggler

I wouldn't mind them if the mobs were a bit weaker, the messes easier to clean, and warnings on spawn locations

A player asked me in dead chat what the point of having these events at all was and I honestly couldn't think of an answer. I'm okay with having them in to keep players on their toes and create conflict, I guess, but they are way too frequent as-is.

To give security reason to exist, duh!

I wouldn't mind them if the mobs were a bit weaker, the messes easier to clean, and warnings on spawn locations

A player asked me in dead chat what the point of having these events at all was and I honestly couldn't think of an answer. I'm okay with having them in to keep players on their toes and create conflict, I guess, but they are way too frequent as-is.

I agree, AI also isn't engaging to fight or deal with at all currently

I wouldn't mind them if the mobs were a bit weaker, the messes easier to clean, and warnings on spawn locations

A player asked me in dead chat what the point of having these events at all was and I honestly couldn't think of an answer. I'm okay with having them in to keep players on their toes and create conflict, I guess, but they are way too frequent as-is.

To give security reason to exist, duh!

Security normally has enough on their plates let's be real

Security normally has enough on their plates let's be real

Except for all the times they do not, other than some migrations being stun immune(so warden/hos refusing 35 ammo hurts) they have been improvements to my shifts as sec because you do not need to wait whole hour or have something better to do than go after tiders with syndie scarf.

I also like them as good sec gameplay.

its hardly gameplay its a shooting range at the expense of just about everything and everyone else
Also theres always plenty to do regardless of your job, if the shifts calm and theres nothing to do, great! you can sit down, have a drink at the bar or start yelling at cargo to get you more donuts

By distracting security and potentially harming crew, it gives antags opportunities to do things they would otherwise not get, thus creating more chaos which is desired for the game. Its bit more work for medical/sec only if antags fail to make any use of event smoke screen.

i think this is too harsh of a decrease, maybe decrease them to like 8-10 combined weight instead, or make prototypes for vent mobs that are slower so you can reasonably run away from them

Yeah, mobs that are not guaranteed to kill you if they spawn close enough in a room would be nice, they either can keep up with you or outrun you(like syndie penguin), neither allows to gain distance and close door behind you, small speed nerf would let people disengage while still making them life threatening if not taken seriously enough.

By distracting security and potentially harming crew, it gives antags opportunities to do things they would otherwise not get, thus creating more chaos which is desired for the game. Its bit more work for medical/sec only if antags fail to make any use of event smoke screen.

i dont think "it makes things easier for antags" is exactly a completely positive argument
The event in itself is just un-interesting, un-interactive and harms a shitton of people for little to no gain of fun or enjoyment, maybe if one day they were more thought out like a whole spider-queen thing, xeno nests or "carp storms" with better AI they could replace these. It is needless chaos and not in a fun way, the only way I can imagine you gaining enjoyment from these events is if your playing security and have a "I have a gun and i must use it" complex. the event also has it so they just spawn in from thin air and with no methods of prevention. I dont understand this events design and the only reason im not advocating for its removal is because we lack a variety of events as a whole.

i think this is too harsh of a decrease, maybe decrease them to like 8-10 combined weight instead, or make prototypes for vent mobs that are slower so you can reasonably run away from them

I think 5 weight combined makes sense as that was the original weight of one of these events when they were added. I don't think these were ever intended to be as frequent as they are.
Slower vent mobs is outside of my scope as a webedit knucklehead.

I would ask that if you want these to be balanced in relation to one another that you collect them in a new file and use a new entityTable to include them in the scheduler. Look at the migration events for a reference of what I mean.
Its a small management thing that shouldnt effect the functionality, but it will make keeping them balanced easier maintenance wise.

I recently got back into the game and after a few weeks of playing I think I'd be fine with never seeing these damn vent creatures again. The amount of times they've interrupted good gameplay or roleplay moments is just way too high.
Honestly I think most of these random events happen way too often. It really feels like most rounds I'll see several vent creature spawns, a dragon and a ninja AT LEAST. These things feel like they should be more rare and special, but instead it's kind of expected, and now a ninja or dragon has managed to become boring.


Guard access to window global object

Hi @coolgk, thank you for this project!
Please could you consider this patch and release a new version if you approve.
This change adds support for using oauth-pkce in a Chrome extension background script or Web Worker, both of which have crypto available globally but don't use window as the global object.
Thanks!

Thanks @coolgk - please could you also push a new version to npm?

Thanks @coolgk - please could you also push a new version to npm?

thank you for your contribution! I have invited you as a collaborator for this project. If you don't mind, can you share your npm username, I will invite you on NPM as a maintainer too.

Sure! I'm dp-rufus on npm

thanks, I have sent you an invite on npm


[FEATURE] Show zero values in bar graph.

A while ago, a fix was introduced to remove 0 value representation on bar graphs.
I understand why it was done (not wanting to show incorrect values and all that), but I need to be able to show something because in my situation, the data shown on a graph can be for the same label, but from multiple sessions (datasets).
Expected Behavior

A bar of very small size should be visible for 0 values.
Current Behavior

Currently, a value of 0, on a bar graph is not represented. However, if I mouse over it, I get my custom tooltip telling me it's 0.
Possible Solution

For my needs, something like a 'representZero' boolean (default value false) under the 'ticks' key would be an excellent feature.
Perhaps set a minimum non-zero pixel length for a bar?
Context

While in our system, a client can mouse over where the bar might be, and get a tooltip telling them the value is 0, but if they print out the graph, it's difficult to understand that there is supposed to be something there.
Environment

Chart.js version: 2.5.0
Browser name and version: Irrelevant.
Link to your project:

PS: If this is already possible, it means I have missed it in the documentation. If this is the case, I apologize and would appreciate a push in the right direction. Alternatively, if anyone else has implemented an alternative for this, I would love to have an explanation.

So, since no one else has shown interest over the past day, I've taken it upon myself to come up with some idea on how it should be implemented. I'd like to get some feedback before I create a pull request with any changes.
I was taking a look at the Documentation for Chart.defaults.global.elements.rectangle, and how you can edit things like the background color, and border width. I thought that that's a place where it would make sense to place this global property.
I added a key called 'minSize' to globalOpts.elements.rectangle, making it look like this:
globalOpts.elements.rectangle = {
    backgroundColor: globalOpts.defaultColor,
    borderWidth: 0,
    borderColor: globalOpts.defaultColor,
    borderSkipped: 'bottom',
    minSize : 0
};

This is around like 10085 in Chart.js.
After that, I added this line
 minSize: custom.minSize ? custom.minSize : helpers.getValueAtIndexOrDefault(dataset.minSize, index, rectangleElementOptions.minSize)
to Chart.controllers.bar, in the updateElement function, at the bottom. Around line 1950. I did the same to Chart.controllers.horizontalBar around line 2244.
Then, in Chart.elements.Rectangle, I made the following changes:
var borderWidth = vm.borderWidth;

// change
var minSize = vm.minSize;

if (!vm.horizontal) {
	// bar
	left = vm.x - vm.width / 2;
	right = vm.x + vm.width / 2;
	top = vm.y;
	bottom = vm.base;

	// start change
	if(top === bottom) {
		top -= minSize;
	}
	// end change

	signX = 1;
	signY = bottom > top? 1: -1;
	borderSkipped = vm.borderSkipped || 'bottom';
} else {
	// horizontal bar
	left = vm.base;
	right = vm.x;

	// start change
	if(right === left) {
		right += minSize;
	}
	// end change

	top = vm.y - vm.height / 2;
	bottom = vm.y + vm.height / 2;
	signX = right > left? 1: -1;
	signY = 1;
	borderSkipped = vm.borderSkipped || 'left';
}

In order to make it work, from my code, I call
Chart.defaults.global.elements.rectangle.minSize = 2;, which gives me 2 pixels on 0 length bars.
Before:

After:

Further considerations:
I was thinking about the possibility of using positive and negative values. Right now, using a negative value for minSize is the same as using 0. However, would it make sense to instead use negative values to put those tiny bars on the other side of the axis? I feel like using a negative value there would help remove any possibility that it might be confused for some other value when all your other values are positive.
For bar graphs with both positive and negative values, it might make sense to take minSize, split it into two, and then use one half to drop the bottom, and the other half to raise the top (vertical bars). This would put the bar right on the zero, and is probably the most correct in terms of representation.
I also considered having the value be a boolean, and instead use a predetermined minSize, but I feel like everyone can apply their own judgement as to how big the minimum bar size should be.

Hi, Thanks to this post, I've write a plugin to draw the little line, It looks like this when value is zero.

const zeroCompensation = {
  renderZeroCompensation: function (chartInstance, d) {
      // get postion info from _view
      const view = d._view
      const context = chartInstance.chart.ctx

      // the view.x is the centeral point of the bar, so we need minus half width of the bar.
      const startX = view.x - view.width / 2
      // common canvas API, Check it out on MDN
      context.beginPath();
      // set line color, you can do more custom settings here.
      context.strokeStyle = '#aaaaaa';
      context.moveTo(startX, view.y);
      // draw the line!
      context.lineTo(startX + view.width, view.y);
      // bam！ you will see the lines.
      context.stroke();
  },

  afterDatasetsDraw: function (chart, easing) {
      // get data meta, we need the location info in _view property.
      const meta = chart.getDatasetMeta(0)
      // also you need get datasets to find which item is 0.
      const dataSet = chart.config.data.datasets[0].data
      meta.data.forEach((d, index) => {
          // for the item which value is 0, reander a line.
          if(dataSet[index] === 0) {
            this.renderZeroCompensation(chart, d)
          }
      })
  }
};

I've also add a answer on StackOverflowUpvote me on Stackoverflow

However useful this may be to someone, I prefered this solution because it kept the colors of the data set. This works in 2.6.0.
`
/**

Used to show a small bar on the chart if the value is 0

@type Object
*/
var showZeroPlugin = {
beforeRender: function (chartInstance) {
var datasets = chartInstance.config.data.datasets;
 for (var i = 0; i < datasets.length; i++) {
     var meta = datasets[i]._meta;
     // It counts up every time you change something on the chart so
     // this is a way to get the info on whichever index it's at
     var metaData = meta[Object.keys(meta)[0]];
     var bars = metaData.data;

     for (var j = 0; j < bars.length; j++) {
         var model = bars[j]._model;

         if (metaData.type === "horizontalBar" && model.base === model.x) {
             model.x = model.base + 2;
         } else if (model.base === model.y) {
             model.y = model.base - 2;
         }
     }
 }

}
};

// Enabled by default
Chart.pluginService.register(showZeroPlugin);
`
If you have any improvements, they're most welcome.

Its perfect...!Great @Moghul
Thank you...!

@Moghul Great clean solution and easy integration into my project. I'm new to chart.js and I've been looking for a solution for days. Thank you!

Should be fixed by #5741

However useful this may be to someone, I prefered this solution because it kept the colors of the data set. This works in 2.6.0.
/**
 * Used to show a small bar on the chart if the value is 0
 *
 * @type Object
 */
var showZeroPlugin = {
    beforeRender: function (chartInstance) {
        var datasets = chartInstance.config.data.datasets;

        for (var i = 0; i < datasets.length; i++) {
            var meta = datasets[i]._meta;
            // It counts up every time you change something on the chart so
            // this is a way to get the info on whichever index it's at
            var metaData = meta[Object.keys(meta)[0]];
            var bars = metaData.data;

            for (var j = 0; j < bars.length; j++) {
                var model = bars[j]._model;

                if (metaData.type === "horizontalBar" && model.base === model.x) {
                    model.x = model.base + 2;
                } else if (model.base === model.y) {
                    model.y = model.base - 2;
                }
            }
        }

    }
};

// Enabled by default
Chart.pluginService.register(showZeroPlugin);

If you have any improvements, they're most welcome.
PS: I have no idea how the code styling works on github

I know this is pretty old thread, but still I am sharing my opinion.
The above code works perfectly fine. This takes care of showing tooltips when hovered. No need to explicitly take care of showing tooltips.

@Moghul
Any ideas how to achieve this using version 3.5?

Does minBarLenth not work as per https://github.com/chartjs/Chart.js/pull/5741 ?


Layers

Add an advanced layer separated from the general plan visualization.
Formatting the user-specified input file for visualized objects.


Update run-nala-on-dx.yml

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 85.25%. Comparing base (54c14a0) to head (d9fab13).

Additional details and impacted files
@@           Coverage Diff           @@
##            stage      #25   +/-   ##
=======================================
  Coverage   85.25%   85.25%
=======================================
  Files           8        8
  Lines        2455     2455
=======================================
  Hits         2093     2093
  Misses        362      362

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


feat: update tonic and tokio

This pulls Tokio (0.2 to 1.2) and Tonic (0.1 to 0.4) up to their latest stable versions
and resolves all their breaking changes.

bors try

bors try

I don't know why rustfmt didn't get run by my hook...

bors try

bors try

bors try

bors try

bors try

This PR is delaying until @tiagolobocastro finishes with the control plane repo split.

I noticed mayastor depends on mbus_api which depends on paperclip which depends on actix-web 3 which depends on tokio 0.2, so this might require waiting for that to update.

Ah yes!  That will fail. I didn't push the change.

bors try

bors try

@gila could you pull my branch of h2 into your branch so we don't need to move it? I'd prefer not to maintain a branch of h2.

bors try

bors try

bors try

bors try

bors try

bors r+

bors cancel

bors r+

bors try

bors merge


Add wrappers for GDALBuildVRT, GDALApplyGeoTransform, GDALInvGeoTransform

[x] I agree to follow the project's code of conduct.
[x] I added an entry to CHANGES.md if knowledge of this change could be valuable to users.

I did not know where to put apply_geo_transform and inv_geo_transform, so I left them in lib.rs. Please let me know where they should go.
I also did not know what manner of tests should be included. Please let me know what I should contribute in that regard.

Thanks for the feedback. I've summarized my updates below:

invert_geo_transform now returns a result.
Added struct BuildVRTOptions that frees the owned pointer on drop.
build_vrt

Uses _last_null_pointer_err to populate the error result.
Employs that thin generic wrapper pattern. (is there a name for this?)
Takes dest: Option<&Path> instead of String, though it gets converted using Path::to_string_lossy

I didn't take the suggestions re: raw strings verbatim, as I didn't see how they added terminating null bytes. I did look at GDALBuildVRTOptionsNew and determine that it doesn't actually mutate the strings, so I left them owned by the CStrings, which hopefully addresses part of the concern.

Incorporated latest feedback.

r? @jdroenner

@lnicola Taking dest: Option<P> ... where P: AsRef<Path> has made it so a type annotation is needed when passing None:
gdal::raster_programs::build_vrt(None, datasets, args)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type for type parameter `P` declared on the function `build_vrt`

A default type cannot be specified because that is not allowed for functions:
error: defaults for type parameters are only allowed in `struct`, `enum`, `type`, or `trait` definitions
pub fn build_vrt<D: Borrow<Dataset>, P: AsRef<Path> = &'static str>(
                                     ^

Is there a cleaner way to do this?

Ah, good point. You can still specify the type, but it's an ugly API. Let's revert this change .

Changes look good to me; thanks again @amartin96 .  Pinging @lnicola @jdroenner :  could you pls. allow running CI and merge if all looks good?

I took a hard page fault on this one :smile:.

@amartin96 One final nitpick:  it would be good to rename GeoTransformTrait as GeoTransformEx.  That's the typical rust naming convention for traits to add functionalities.

bors d+

bors r+


[WIP] skip high-density BEM warning if model has only one surface

Addresses #4053

Codecov Report

Merging #4080 into master will not change coverage.
The diff coverage is 0%.

@@          Coverage Diff           @@
##           master   #4080   +/-   ##
======================================
  Coverage    86.1%   86.1%
======================================
  Files         350     350
  Lines       63481   63481
  Branches     9676    9676
======================================
  Hits        54662   54662
  Misses       6137    6137
  Partials     2682    2682

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 a2c5bb1...5f1a98b. Read the comment docs.

thx @christianbrodbeck


Layout group children auto-spacing

Forum topic: https://forum.playcanvas.com/t/layout-question/14045
https://developer.playcanvas.com/en/api/pc.LayoutGroupComponent.html
Feature request: add an option for pc.LayoutGroupComponent to auto space its children.

I really like this idea. Thinking about how to expose this functionality: how about a separate option in the fitting options? Currently we have None, Stretch, Shrink and Both, the last 3 of which alter the positions and sizes of the children. We would then add another option like Space, which only alters the positions, but not the sizes. I think there's no use-case to have resizes + auto spacing.


Consider using @discardableResult where possible.

Some of the algorithms in this package have a return value that might not be needed by the caller. It would be nice if these were marked as @ discardableResult so that callers don't have to use _ = to silence Xcode warnings.
For example, stablePartition returns the start of the resulting suffix, which might not be of interest to a caller who's only interested in the final result.

https://github.com/apple/swift-algorithms/issues/67

Oops, sorry. Not sure how I missed that obvious duplicate! Feel free to close this issue.


Next release of the Specification (WIP)

All upcoming changes to the Spec are collected on this branch (spec/next).

Just a heads-up @vladdeSV , I’m going to release this as Version 1.1 of the spec. That way I can make a separate release of the CLI before starting to work on the multiline entry summaries. (Otherwise I’m worried it’s too much changes all at once.)
I wait with merging this PR until right before the v3.2 release of the CLI (probably in like a week or so), so that the spec file in the repo is up to date with the latest release.

Awesome!
Is there an easy way to get the specification version being used by the binary?
Nothing I need it for right now, but being able to distinguish between them
could be nice.
Note to self: do I really need something like this? Isn't a klog version mapping good enough

Is there an easy way to get the specification version being used by the binary?

klog version outputs both the binary and the spec version (but not with --quiet). Otherwise, the mapping between binary version and spec version is fixed, so you could also implicitly infer it, at least for past releases.


Syntax error disable.kubeflow.sh

Syntax error at line 52 in microk8s/microk8s-resources/actions/disable.kubeflow.sh:
click.echo(f"Destroying Kubeflow {resource}...")

The fix for this is in the 1.20/candidate channel and should be released  in the next days.


package manager support

midnight-smoker should be able to run against multiple package managers.  This is critical for projects which have some sort of dependency on the behavior of package managers.
Essentially, the endgame would be a "build matrix" for package managers.  I'm a little surprised this sort of thing isn't already supported by something like GitHub Actions.

Closed via #273


x/vgo: submodules are not downloaded

What version of Go are you using (go version)?
1.10
What operating system and processor architecture are you using (go env)?
linux/amd64
What did you do?
:gthomas@redpath: ~/src/github.com/tgulacsi/go/dbcsv/csvdump
$ vgo build -o /tmp/csvdump
vgo: resolving import "gopkg.in/goracle.v2"
vgo: finding gopkg.in/goracle.v2 (latest)
vgo: adding gopkg.in/goracle.v2 v1.1.15-gopkgin-v2.1.15
# gopkg.in/goracle.v2
../../../../../v/gopkg.in/goracle.v2@v1.1.15-gopkgin-v2.1.15/conn.go:20:10: fatal error: 'dpiImpl.h' file not found
#include "dpiImpl.h"
         ^~~~~~~~~~~
1 error generated.

One issue is that vgo resolves gopkg.in/goracle.v2 as gopkg.in/goracle.v2 v1.1.15-gopkgin-v2.1.15, even if I put gopkg.in/goracle.v2/v2 v2.1.15 into the go.mod file,
another issue is that though it downloads goracle.v2, it does not download its odpi submodule.
Will submodules be supported, or should we find a workaround?
(Workaround: use go generate to download the submodule and rsync into another dir)
If possible, provide a recipe for reproducing the error.

I can confirm that copying the C source out from the submodule solves as a workaround.

Submodules will not be supported, sorry. That's getting back into the version control detail world that we're trying to get "go get" out of.

Just updated the title here to confirm this discussion is about git submodules not being supported. As distinct from vgo Go modules (and submodules).


Use src dir for Q# projects

This PR updates qsc_project logic so Q# projects:

Default to /src/**/*.qs (instead of all sibling files)
Ignore all dot entries
Don't support exclude files and regexes

Aside: This PR nicely proves that our project logic is indeed centralized. We only need to update qsc_project, and we get project
logic updates in Python, qsc, qsi, notebooks, and VS Code.

switch to reading src dir in projects
rewrite tests for new project system; remove exclude list tests
bugfix for src dir
bugfix for src dir

What's supposed to happen in this setup? This doesn't look quite right to me.

Good catches with the behavior of searching up for the containing folder. I ran this through some tests manually on my end, and the behavior of the extension looks good to me.


Add event support for the Catalog Plugin GitLab Discovery Entity providers

Hey, I just made a Pull Request!
Add events support for the GitLab Entity Provider modules.
Refs: RFC: Event Subscription Mechanism for Cross-Plugin Module Integration in the New Backend System #22393 and 🚀 Feature: Add Events Support for GitlabDiscoveryEntityProvider and GitlabOrgDiscoveryEntityProvider #21553
:heavy_check_mark: TODO List

[x] Add GitLabOrgDiscoveryEntityProvider module (new Backend)
[x] Add events support for the GitLabDiscoveryEntityProvider
[x] Add events support for the GitLabOrgDiscoveryEntityProvider
[x] Add tests
[x] Update documentation
[x] Remove EventSubscriber interface implementation (https://github.com/backstage/backstage/pull/17565#discussion_r1184937825)
[x] Remove the Events Extension Point and add the Events Service

:heavy_check_mark: Checklist

[x] A changeset describing the change and affected packages. (more info)
[x] Added or updated documentation
[x] Tests for new functionality and regression tests for bug fixes
[ ] Screenshots attached (for UI changes)
[x] All your commits have a Signed-off-by line in the message. (more info)

Hi @vinzscam !
I had some issues with my branch and had to recreate it (I know, I'm such a git newbie! :D ).
I did incorporate your suggestions/remarks. Could you please take a look at them?
Also, the pipeline is throwing a formatting error on a file I did not touch (beps/0004-scaffolder-task-idempotency/README.md). Should I do anything about it?
thanks again in advance!!! :)

Yeah that prettier error has been fixed since then. Rebasing on a fresh master gets rid of the problem.  Could you please take a look?
I appreciate the feedback :)

Hi!
I have incorporated the changes requested by @vinzscam .  However, I'm trying to update the feature branch but I'm getting tons of vale errors. My vale version is the 3.3.1.
I can fix the errors by adding backticks around the unrecognized words in the changelog.md files. The question is, should I? :)

Hi @vinzscam ,
great news! 😄
We caught a small bug in our environment and fixed it. The allowInherited config option was not being correctly read from the config file because it was not added to the readGitlabConfig function (my bad 🥲 ). I integrated the fix in the last commit and also rebased to get rid of the merge conflict.

Hi @elaine-mattos, can you please add details about the fact that you need to define the schedule in your provider config when using the new backend system? This is missing in the current docs and I don't see it here. Thanks!

Hi @awanlin ! I've changed the docu a little bit. Could you please review? :)

Hi @vinzscam, @freben , @awanlin ,
is there anything else I can do to get this one merged?
Please let me know if there is anything missing! :)


Shift click remove/ Attackable players

Is your feature request related to a problem? Please describe.
A clear and concise description of what the problem is. Ex. I'm always
frustrated when [...]
N/A
Describe the solution you'd like
A clear and concise description of what you want to happen.
N/A
Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've
considered.
It'd be good to be able to Shift+click the loots inside the Loot Tracker to remove them (but not for remove all), I find myself wanting to keep some loots but remove certain ones. For example; when I'm at reves I want to remove the coins drop so I have to keep right clicking and pressing remove. I went to the abyss and had to remove about 30 loots but wanted to keep my previous 20 from revs so I had to right click remove the ones from the abyss while getting my pouch.
I'd like there to be an "attackable players" option for the wilderness if possible. So if me and someone else was 1 level apart or X levels (My level 100 and his 101) in level 30 it would have a green circle inside of the current box at his feet showing that we're safe from each others attacks and in level 31 it would have a red circle to show we're able to attack each other. It could be in Player Indicators for something like "Highlight attackable players" or something of the sorts with a custom color option for both "attackable" and "safe".
Additional context
Add any other context or screenshots about the feature request here.
https://imgur.com/npgB577

One suggestion per issue, please.

This seems quite OP when in wilderness as it would basically tell you that some player can attack you so you will just hop/leave

Also duplicate of #512 looks like

Ah, I looked for "attackable players" and "attackable" but didn't see it on there. I guess since the name was player indicators instead of attackable players I didn't see it. I shoulda looked up player indicators also my bad lol. So I reckon this is a no go at the moment? Thanks for the info bro


Interested in these fixes?

I've forked this project to fix the following issues:

Fixed issue where sorting was ignoring changes in the data-sort-value attribute value.  Basically jQuery caches the data-sort-value so your sort logic was using stale values whenever these values changed.
Fixed issue where sorting for any columns following a TH than spanned multiple columns.

Happy to create a PR if you would like any of these fixes merging in.  I've noticed a few stale PRs so didn't want to waste my time creating PRs if they're just going to sit there.
Cheers!

Sure, those sound good.
I'd be happy to merge if you can provide a detailed description of how to reproduce the issues you're solving — or better yet, an example. The biggest piece of friction for me when verifying fixes is setting up a scenario that allows me to verify the bug and fix. So if you can provide that, it's a simple merge 👍 Thanks!


fix: use appDirectoryPath from projectData

Changes required for respecting nsconfig.json
Related to https://github.com/NativeScript/nativescript-cli/issues/3257

ping @rosen-vladimirov @Mitko-Kerezov


Just questions

Hi !
1)Is there 'feature importance' in LightGbm like in XGBoost?
2)What is the fastest way to get prediction for single row on already trained model. If say i have a stream of newcoming data rows and i want to get prediction for each row as fast as possible

@IbanezJS cpp predict function is in https://github.com/Microsoft/LightGBM/blob/master/src/application/predictor.hpp
However, it isn't design for steam data.
If you want speed up the single row prediction by multi-threading, you can change this function:
https://github.com/Microsoft/LightGBM/blob/master/src/boosting/gbdt_prediction.cpp#L9-L27

@guolinke Hi
which part you suggest to go parallel?
for (int k = 0; k < num_tree_per_iteration_; ++k)
this cycle? Are the models_ all independent?
Actually I don't get math here. Why num_iteration_for_pred_ and early_stop need for prediction on already trained model?
How early_stop may decide to stop prediction iterations?
Please give some educational references for this questions.

you can use openmp.
The models_ are independent.
sorry, not everything has reference.
The pr of early_stopping in prediction : https://github.com/Microsoft/LightGBM/pull/550
you can specific num_iteration_for_pred_ to use part of trees for prediction, default is using all trees.
BTW, if you are not using multi-class, and didn't use early stopping in prediction, the changes is quite easy:
  double sum = 0.0f;
  #pragma omp parallel for schedule(static) reduction(+:sum)
  for (int i = 0; i < num_iteration_for_pred_; ++i) {
    sum += models_[i]->Predict(features);
  }
  output[0] = sum;

@guolinke thanks for the hint!
does #pragma omp parallel really beneficial?
I mean how heavy model->Predict() could be and what is average of num_iteration_for_pred_?
If compare to threads synchronization and context switch time.
Are there any further simplifications if using only binary classification output?

@IbanezJS it depends on the complexity of your model, e.g. num_leaves, num_trees. You can just test it by run it.
I think it cannot be further simplified.


The fastest way to convert from vips to imagick?

Question: Anyone knows what could be the fastest way from a vips resource to an imagick resource (retaining the image, of course) and maybe vice versa. I sometimes need to convert (for example for saving gif) from one to the other.
I basically currently do:
$image = new \Imagick();
$imagick->readImageBlob($vips->pngsave_buffer(['interlace' => false]));

Any better recommended way?

Hello Christian, PNG is very slow, unfortunately, uncompressed TIFF would be a lot quicker.
Best of all would be simply passing a pointer to large array of uncompressed bytes (this is what pyvips does when interchanging images with numpy and PIL), but that would need additions to php-vips-ext.
Does imagick support creating an image from a memory array?

Imagick::exportImagePixels and https://github.com/jcupitt/php-vips-ext/pull/13 might be relevant here.

Oh dear Kleis, sorry, I'd forgotten about #13. Let's merge now since we're doing a new version. I'll have a look.

Ah, cool, great. No need to png/tiffsave anymore, will test soon
But regarding tiffsave, I have something I can't explain. Simple case:
$v = \Jcupitt\Vips\Image::newFromFile("animated.gif");
$v = $v->premultiply();
$v = $v->resize(0.5);
$v = $v->unpremultiply();
$v->pngsave("foo.png");
$v->tiffsave("foo.tiff");

The png looks like expected, but the tiff is totally wrong, looks like a black and white image (even without resize). Does it need something more?
Input:

Output (converted to a png outside of vips, since github doesn't support tiff):

Hello, premultiply / unpremultiply use float format, so you are saving as a float TIFF (12 bytes per pixel). Float TIFF usually uses 0 - 1 for black - white, rather than 0 - 255, so your 0 - 255 float TIFFs look white.
After unpremultiply, I would use cast() to put image image back to the original band format, something like:
$original_format = $image->format;
$image = $image->premultiply()->resize(0.5)->unpremultiply();
$image = $image->cast($original_format);

Processing as float is obviously slower than byte or short, so I would only premultiply if necessary, and cast back as soon as possible after.

Thanks, that works. And with #13 in the works, I think we can close this issue again.


Azure Virtual Desktop - local Drive re-direction

Hi
I have an issue whereby i have setup Azure Virtual desktop and everything is working as expected besides my local drives do not map to my session on WVD and i also cant see my local drives on the published apps.
i verified on the hostpool RDP properties that all device re-direction is enabled.
i can confirm there is no group policy or any local policy setup on the WVD.
to access the above platform i connected the workspace to remote desktop app from the microsoft store.
any ideas as to why my local drives do re-direct to my WVD sessions?
any assistance will be highly appreciated.

Thanks for reaching out to us , but at this time it does not look like you are referring to a document but to a specific scenario . If that's the case we request you to please post your question on Microsoft Q&A and other forums , we have our engineers and others who are monitoring them and will be happy to help .
If you have a document which you are following and if you think it needs  an update , please let us know about that here .

Since we have not recieved any response from you so going ahead and closing the issue.


What do you think about awareness?

(Please let me know if there's a better place for discussions like this. Do you prefer e.g. https://discuss.yjs.dev?)
I'm curious how you think about exposing awareness through SyncedStore.
A caveat — as I'm fairly new to Yjs, the answer here may very well be "don't use awareness like that." 😄
In this discuss.yjs.dev thread about Yjs Redux bindings I shared a bit code I've written that I use to provide some facilities reminiscent of redux and react-redux on top of SyncedStore: making the state available throughout the component tree with React context and hooks, and a way of organizing accessors and mutations with names drawn from redux, "selectors"  and "actions".  I shared a hasty gist here: https://gist.github.com/jasonm/8d81f233a6a4f853ddbd981a8784bc41
There's another piece that I added about awareness, to provide access to the awareness throughout the React component tree. I couldn't quite figure out how to wrap the awareness crdt in reactive/syncedstate (though I admit I haven't yet tried very hard 🙈 ) and ended up subscribing to awareness changes in a useEffect hook and mirroring them into React state that is provided by my context provider. This all happens in this part of this gist: https://gist.github.com/jasonm/8d81f233a6a4f853ddbd981a8784bc41#file-synccontext-tsx-L51-L74
However (back to my original caveat) this seems to rely on the provider being connected, which isn't great for an offline-friendly/offline-first approach. Perhaps I should not rely on storing the user identity state (currentUserId / JWT claims / etc) into the awareness crdt, and instead store it elsewhere (plain react state?) and then push the interesting parts into provider.awareness purely for, well, awareness (cursors, etc.)
@YousefED I wonder if you've thought about this?

I'm keeping my reply focused on Awareness (if you want to discuss Redux we can do it in a different issue or on discuss.yjs.dev)

However (back to my original caveat) this seems to rely on the provider being connected

Afaik, Awareness in yjs is really only used to broadcast information to connected peers while they are online. It is not meant / suitable for "storing" data. So this works well for cursors, presence, mouse positions, etc.
User identity state should be handled separately, although you can use Awareness to broadcast the username / cursor of the user that is logged in.
I have not yet digged into whether it would be useful to directly expose Awareness via SyncedStore - but of course you can access it via the underlying Yjs structures. Hope this makes sense!


[Personalizer] fix pylint next

fixes #31599
tried to regenerate -- failed :( so manually updating

API change check
API changes are not detected in this pull request.


resolved_ts: add endpoint

Signed-off-by: 5kbpers<EMAIL_ADDRESS>
What problem does this PR solve?
Problem Summary:
Add endpoint for resolved ts.
What is changed and how it works?
What's Changed:

Add endpoint
Add rts_id to apply::ObserveCmd for temporarily being compatible with CDC
Run resolved ts worker when starting TiKV server

Check List
Tests

Unit test
Integration test

Release note

N/A

Please resolve the conflict.

/merge

/merge

/merge

/merge

/hold

/merge cancel
/unhold

@5kbpers consistent failures. PTAL~

/run-all-tests

/merge


Forms Authentication failing

Hi,
Forms authentication does not seem to work..
here is the public site:
url to be crawled: https://s1.demo.opensourcecms.com/drupal/admin/appearance
https://s1.demo.opensourcecms.com/drupal/user/login
Username: opensourcecms
Password: opensourcecms
while this is basically similar to issue 500, the soln provided there seems to be giving me some new errors:
Exception in thread "main" java.lang.NoSuchMethodError: com.norconex.commons.lang.config.XMLConfigurationUtil.getNullableDimension(Lorg/apache/commons/configuration/HierarchicalConfiguration;Ljava/lang/String;Ljava/awt/Dimension;)Ljava/awt/Dimension;
at com.norconex.collector.http.fetch.impl.PhantomJSDocumentFetcher.loadFromXML(PhantomJSDocumentFetcher.java:1202)
at com.norconex.commons.lang.config.XMLConfigurationUtil.loadFromXML(XMLConfigurationUtil.java:445)
at com.norconex.commons.lang.config.XMLConfigurationUtil.newInstance(XMLConfigurationUtil.java:206)
at com.norconex.commons.lang.config.XMLConfigurationUtil.newInstance(XMLConfigurationUtil.java:273)
at com.norconex.commons.lang.config.XMLConfigurationUtil.newInstance(XMLConfigurationUtil.java:258)
at com.norconex.collector.http.crawler.HttpCrawlerConfig.loadCrawlerConfigFromXML(HttpCrawlerConfig.java:584)
at com.norconex.collector.core.crawler.AbstractCrawlerConfig.loadFromXML(AbstractCrawlerConfig.java:395)
at com.norconex.commons.lang.config.XMLConfigurationUtil.loadFromXML(XMLConfigurationUtil.java:445)
at com.norconex.collector.core.crawler.CrawlerConfigLoader.loadCrawlerConfig(CrawlerConfigLoader.java:119)
at com.norconex.collector.core.crawler.CrawlerConfigLoader.loadCrawlerConfigs(CrawlerConfigLoader.java:79)
at com.norconex.collector.core.AbstractCollectorConfig.loadFromXML(AbstractCollectorConfig.java:304)
at com.norconex.collector.core.CollectorConfigLoader.loadCollectorConfig(CollectorConfigLoader.java:78)
at com.norconex.collector.core.AbstractCollectorLauncher.loadCommandLineConfig(AbstractCollectorLauncher.java:141)
at com.norconex.collector.core.AbstractCollectorLauncher.launch(AbstractCollectorLauncher.java:92)
at com.norconex.collector.http.HttpCollector.main(HttpCollector.java:74)
Has there been any updates to the standard forms authentication? I am using 2.8.1
Thanks

Did you overwrite your existing installation with 2.8.1 by any chance?  The method it complains of not finding was in fact introduced in Norconex Commons Lang version 1.14.0 which is packaged with Norconex HTTP Collector since version 2.8.0 (or higher versions).
Check in the "lib" folder to make sure you do not have duplicate jars (same name different versions). or manually upgrade to Norconex Commons Lang to 1.15.0 if you have an older one for some reason.

Hi Pascal,
Thanks yes - I probably did overwrite some jars.
Where you able to test the Forms Authentication issue?
Thanks

Hi Pascal,
i was able to extend the HttpClientFactory as suggested in some other posts. Thanks for your help.


Add workflow and package.json with tests

Add Workflow to run NPM tests.  Add Markdown Lint, Editor Config and Licensee.
I didn't add Cspell because it does not like Lorem Ipsum
Fixes #27

I didn't add Cspell because it does not like Lorem Ipsum

There is a lorem ipsum dictionary for cSpell, but I don't know if you'd want to add it