yara  causes high memory consumption

Hi,
i'm using Yara 3.10 on RHEL 7 , with 8GB memory on 8 cores.
i'm scanning 50 files batch. with 27k rules ( some withe rgex some with strings and some with Bytes at offset or virtual address).
all the 27k rules are located in one .yar file
my vm shows yara causing out of memory.
is'd that i'm not giving enough memory , or there is some memory leak ?

Thanks i'll try to analyze it one by one ,and there is any way to calculate Yara memory consumption?

There's nothing special in YARA for computing memory consumption. You must use whatever tools you usually employ with other programs. If you can share your rules with me I can take a look.

Hello! If you compile Yara rules, you could have better Yara ram usage. I used the hash database of ClamAV main.hdb, date 13/01/2023 and convert to Yara. The yara rule file is 16MB. It should have 82221 rules. Yara version: 4.2.3. The scan result when scan the same dir

Yara with text-based rules: 0:01.24 real,	1.24 user,	0.02 sys,	0 amem,	107168 mmem
Yara with compiled rules: 0:00.06 real,	0.06 user,	0.02 sys,	0 amem,	66104 mmem

The total runtime was faster. I assume Yara had to compile text rules before execute. Therefore, memory had both text-based rules and compiled rules.


Please support django 1.11

django 1.11 need support

Version 0.8.0 now supports Django 1.8 - 1.11.


Callback Problems

Callbacks are not called outside the Filterscript while using FCNPC_OnInit
CODE IN FILTERSCRIPT
public FCNPC_OnInit()
{
    TrainDriverNPCs[0] = FCNPC_Create("TrainDriverLS");
	TrainDriverNPCs[1] = FCNPC_Create("TrainDriverSF");
	TrainDriverNPCs[2] = FCNPC_Create("TrainDriverLV");
	for(new traindriver = 0; traindriver < MAX_STANDARD_NPC_TRAINDRIVERS; traindriver++) {
		if(TrainDriverNPCs[traindriver] != INVALID_PLAYER_ID && TrainDriverVehicles[traindriver] != INVALID_VEHICLE_ID) {
			FCNPC_Spawn(TrainDriverNPCs[traindriver], 255, 0.0, 0.0, 0.0);
			//SetPlayerTeam(TrainDriverNPCs[traindriver], 69);
			FCNPC_SetInvulnerable(TrainDriverNPCs[traindriver], true);
			SetPlayerColor(TrainDriverNPCs[traindriver], COLOR_STANDARD_NPC);
			FCNPC_PutInVehicle(TrainDriverNPCs[traindriver], TrainDriverVehicles[traindriver], 0);
			TrainDriverPlaybackCycle[traindriver] = traindriver;
			TrainDriverNextPlayback(traindriver);
		}
	}
	PilotNPCs[0] = FCNPC_Create("PilotLS");
	PilotNPCs[1] = FCNPC_Create("PilotSF");
	PilotNPCs[2] = FCNPC_Create("PilotLV");
	for(new pilot = 0; pilot < MAX_STANDARD_NPC_PILOTS; pilot++) {
		if(PilotNPCs[pilot] != INVALID_PLAYER_ID && PilotVehicles[pilot] != INVALID_VEHICLE_ID) {
			FCNPC_Spawn(PilotNPCs[pilot], 61, 0.0, 0.0, 0.0);
			//SetPlayerTeam(PilotNPCs[pilot], 69);
			FCNPC_SetInvulnerable(PilotNPCs[pilot], true);
			SetPlayerColor(PilotNPCs[pilot], COLOR_STANDARD_NPC);
			FCNPC_PutInVehicle(PilotNPCs[pilot], PilotVehicles[pilot], 0);
			PilotPlaybackCycle[pilot] = pilot;
			PilotNextPlayback(pilot);
		}
	}
}

CODE IN GAMEMODE
public FCNPC_OnCreate(npcid)
{
    new npcname[MAX_PLAYER_NAME + 1];
    GetPlayerName(npcid, npcname, sizeof(npcname));
    print("The callback is Working Good");
    if(!strcmp(npcname,"TrainDriverLS",true))
    {
        TrainDriverNPCs[0] = npcid;
        printf("TrainDriverLS NPC ID: %i", TrainDriverNPCs[0]);
    }
    else if(!strcmp(npcname,"TrainDriverSF",true))
    {
        TrainDriverNPCs[1] = npcid;
        printf("TrainDriverSF NPC ID: %i", TrainDriverNPCs[1]);
    }
    else if(!strcmp(npcname,"TrainDriverLV",true))
    {
        TrainDriverNPCs[2] = npcid;
        printf("TrainDriverLV NPC ID: %i", TrainDriverNPCs[2]);
    }
    else if(!strcmp(npcname,"PilotLS",true))
    {
        PilotNPCs[0] = npcid;
        printf("PilotLS NPC ID: %i", PilotNPCs[0]);
    }
    else if(!strcmp(npcname,"PilotSF",true))
    {
        PilotNPCs[1] = npcid;
        printf("PilotSF NPC ID: %i", PilotNPCs[1]);
    }
    else if(!strcmp(npcname,"PilotLV",true))
    {
        PilotNPCs[2] = npcid;
        printf("PilotLV NPC ID: %i", PilotNPCs[2]);
    }
    return 1;
}

LOG REFERENCE
[11:07:28] [npc:join] TrainDriverLS has joined the server (99:<IP_ADDRESS>)
[11:07:28] [npc:join] TrainDriverSF has joined the server (98:<IP_ADDRESS>)
[11:07:28] [npc:join] TrainDriverLV has joined the server (97:<IP_ADDRESS>)
[11:07:28] [npc:join] PilotLS has joined the server (96:<IP_ADDRESS>)
[11:07:28] [npc:join] PilotSF has joined the server (95:<IP_ADDRESS>)
[11:07:28] [npc:join] PilotLV has joined the server (94:<IP_ADDRESS>)
[11:07:28] [npc:join] BusDriverLS has joined the server (93:<IP_ADDRESS>)
[11:07:28] [npc:join] BusDriverLV has joined the server (92:<IP_ADDRESS>)

INFO
If I use the callback in filterscript, Its working Good inside filterscript the callback could not be used outside filterscript....
if i use timer in filterscript while create NPC, i can use the callback in both filterscript and gamemode
I just don't know its some sort of issue or not, I just Let you know.
If used a Timer in Filterscript to delay the creating the NPC the callback is working Good in Gamemode
[11:13:23] [npc:join] TrainDriverLS has joined the server (99:<IP_ADDRESS>)
[11:13:23] The callback is Working Good
[11:13:23] TrainDriverLS NPC ID: 99
[11:13:23] [npc:join] TrainDriverSF has joined the server (98:<IP_ADDRESS>)
[11:13:23] The callback is Working Good
[11:13:23] TrainDriverSF NPC ID: 98
[11:13:23] [npc:join] TrainDriverLV has joined the server (97:<IP_ADDRESS>)
[11:13:23] The callback is Working Good
[11:13:23] TrainDriverLV NPC ID: 97
[11:13:23] [npc:join] PilotLS has joined the server (96:<IP_ADDRESS>)
[11:13:23] The callback is Working Good
[11:13:23] PilotLS NPC ID: 96
[11:13:23] [npc:join] PilotSF has joined the server (95:<IP_ADDRESS>)
[11:13:23] The callback is Working Good
[11:13:23] PilotSF NPC ID: 95
[11:13:23] [npc:join] PilotLV has joined the server (94:<IP_ADDRESS>)
[11:13:23] The callback is Working Good
[11:13:23] PilotLV NPC ID: 94
[11:13:23] [npc:join] BusDriverLS has joined the server (93:<IP_ADDRESS>)
[11:13:23] The callback is Working Good

Should be fixed in 2.0.8


chore, refactor(egen) : changes file extension from .json to .yaml, refactored code as per template guidelines

This PR includes the following updates:

Adds Colab Enterprise link and other structural changes from the new template.
Changes file extension from .json to .yaml in the cleanup section for deleting locally generated resources.
Changes REGION variable name to LOCATION.
Removes import os and IS_TESTING from the cleaning up section.
Adds comments for cells needed.
Removes the usage of future tense.
Replaces aip with aiplatform.
Contracts words like is not, do not, You are, etc.

REQUIRED: Fill out the below checklists or remove if irrelevant

If you are opening a PR for Official Notebooks under the notebooks/official folder, follow this mandatory checklist:

[x] Use the notebook template as a starting point.
[x] Follow the style and grammar rules outlined in the above notebook template.
[x] Verify the notebook runs successfully in Colab since the automated tests cannot guarantee this even when it passes.
[x] Passes all the required automated checks. You can locally test for formatting and linting with these instructions.
[ ] You have consulted with a tech writer to see if tech writer review is necessary. If so, the notebook has been reviewed by a tech writer, and they have approved it.
[ ] This notebook has been added to the CODEOWNERS file under the Official Notebooks section, pointing to the author or the author's team.
[x] The Jupyter notebook cleans up any artifacts it has created (datasets, ML models, endpoints, etc) so as not to eat up unnecessary resources.

/gcbrun

/gcbrun


More documentation around the recommended database

Pertinent section of the Wagtail docs
https://docs.wagtail.org/en/stable/advanced_topics/performance.html#database
Details
I feel like there isn't enough documentation around the preferred database.
In my experience, MySQL is a good production database. Ofcourse, so is Postgres.
However, in the documentation it is stated:

We recommend PostgreSQL for production use.

Is there any particular reason for this?
I have been looking through stackoverflow, github and the wagtail documentation to find any kind of explanation, but there isn't really a question asked or an answer given.
It would be nice to also have a reason why in the documentation, this way, developers can weigh the benefits against the drawbacks, and make better, and more concise decision for them, and their team.

As you say, there's little difference between the 2. If you prefer one, use it. In many situations, SQLite can be limiting, hence it's not the recommended, but PostgreSQL and MySQL do very similar things. PostgreSQL has more features and complex capabilities than MySQL, but perhaps not ones which matter for a CMS. MySQL backs some of the largest sites on the planet, but more and more newer sites are backed by PostgreSQL.
It's recommendation here is more on personal preference than it being objectively better. 99% of Torchbox's applications, including all Wagtail organisation projects run on PostgreSQL in production. Wagtail is actively tested against all 3 backends.
Above all else, you should use the engine you're most comfortable working with, deploying and administering.

Hi @thibaudcolas please assign this to me.

@MelakuAlehegn we do not assign issues, please read our documentation for contributors if you’re not sure where to start.

Hello
I'm jadesola, an outreachy contributor and I attempted to solve this issue here


[Docs]: Upgrading to jest 28 page is broken

Page(s)
https://jestjs.io/docs/28.x/upgrading-to-jest28
Description
I found the link here: https://jestjs.io/blog/2022/04/25/jest-28a

This is the link: https://jest-archive-august-2023.netlify.app/docs/28.x/upgrading-to-jest28


⚠ Samsung has degraded performance

In 7a12fba, Samsung (https://samsung.com) experienced degraded performance:

HTTP code: 200
Response time: 2544 ms

Resolved: Samsung performance has improved in 15172db.


building a release should not run tests

When doing
./gendossier.sh -r

it runs all the tests and then builds the release.  That's OK for the default behavior with no flags specified, but when I specify -r it should just build the release.

You can just run bazel build :release from the depot root to build the release artifacts -- or if you just want the jar, bazel build //src/java/com/github/jsdossier:dossier_deploy.jar
The gendossier.sh script handles all of the steps, including running the tests to ensure the build is valid)


Transition.enter not running on initial page load

Firstly, thank you for the great framework. I love how it is so easy to use and the documentation is excellent.
I have run in an issue where I would like a bootstrap modal to open upon session login/logout which is being shown/hidden by Vue.transition.enter/leave functions.
Upon initial page load the user session is undefined so the modal should be shown (this is not currently the case). However if I trigger the modal manually from the console $('#loginView').modal('show'); and then click login/logout, the transitions work as expected.
I believe the transition.enter function is not running on initial render.
To demonstrate this issue, I have created a jsbin. Just run $('#loginView').modal('show'); in the console.

We're having this issue as well.
The workaround we are using for now is to start with the property set to false and then set it to true in Vue.nextTick. But it's annoying... Not sure if it can work for you use case.

This is actually by design, because the enter transition is only supposed to be run when the element attached/detached state has changed. During the initial render the element is already in the DOM so there's no state change. Also imagine we have 20 items with transitions on the page, we probably don't want everything to animate on initial render.
The workaround is to explicitly trigger a state change after the initial render, basically what @ayamflow said...

It makes sense to not trigger every transition on page load, though it would be convenient to be able to set a flag on a component so the transition happens immediatly, or maybe some kind of directive to hide the Vue.nextTick + boolean thing... Might belong to userland.

Yeah, a flag attribute would probably help. Something like transition-on-init?

transition-on-init

@yyx990803 have you looked into this any further?
react has a transitionAppear flag that does the same thing

keeping track of it as #1654, it's part of planned features for 1.1.

@yyx990803 was this transition-on-init ever implemented?

@PierBover It's in 2.0 as <transition>'s appear prop
https://github.com/vuejs/vue/issues/2873 > Transition API Change

awesome @fnlctrl 👍


Text seems a bit contradicting

This line is a bit confusing "protection is achieved by using middleware libraries, not the Microsoft Authentication Library (MSAL). ", because on a linked page it states "Signing in users takes advantage of the [Open ID Connect], standard protocol, simplified by the use of middleware [libraries]", and that "libraries" link points to MSAL libraries.
So is protection achieved using MSAL, or am I missing something?
Linked page: https://docs.microsoft.com/en-us/azure/active-directory/develop/scenario-web-app-sign-user-overview?tabs=nodejs
Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: c4cf601f-5d7e-4902-7f58-964e9377d511
Version Independent ID: d5d7f8cd-e6cb-e45d-92b0-763a04307439
Content: Build a web app that authenticates users and calls web APIs - Microsoft Entra
Content Source: articles/active-directory/develop/scenario-web-app-call-api-overview.md
Service: active-directory
Sub-service: develop
GitHub Login: @jmprieur
Microsoft Alias: jmprieur

@seacoastcoder MSAL acquires the tokens. The middleware libraries validate the tokens,
In a web app calling APIs, there will be validation of the ID token, and acquisition of tokens to call the downstream APIs


Chirp.WebService tests

See issue #145.
Waiting for #158 to be merged.

Closed due to PR #158 containing commits and has been merged.


Timestamp ahead & handling position updates in binance futures

  code: -1021,
  message: "Timestamp for this request was 1000ms ahead of the server's time.",
  body: {
    code: -1021,
    msg: "Timestamp for this request was 1000ms ahead of the server's time."
  },

when using USDMClient.getPositions
doesn't happen always tho,
and another issue, even when I send symbols like in the getPositions([ { symbol: 'BTCUSDT' } ]), it fetches every other positions even positions I never had, so with 0s. and Can I subscribe to listen to my futures positions changes, with WebsocketClient, like every 2-5 seconds?

For the timestamp error, does it work fine when you first restart the process (but start happening later after running for a while)?
I would recommend using disableTimeSync: true in the rest client options:
const client = new USDMClient({
  api_key: key,
  api_secret: secret,
  disableTimeSync: true
});

My connectors have a time sync feature. They will regularly query the time endpoint to estimate network latency and/or differences between server time and client time. However, I think the current way it works is too simple, so it takes one slow reply for the client to over-estimate that gap between server and client time. The result is what you saw. It's not the only reason this can happen, but I do think it does often cause this to happen too.
I've been testing for a while now with time sync disabled, across my connectors, and it seems more stable this way.
I've disabled this feature by default in my other connectors and will disable it by default in this connector in the next release. In the meantime, turning the feature off should reduce the chances of you seeing this kind of timestamp error (assuming your machine time is in sync over something like ntp).

Regarding the positions question, your parameters are slightly off. You're passing an array into getPositions.
This method only accepts an object. Either pass one symbol, to check only one position:
const onePosition = await getPositions({ symbol: 'BTCUSDT' });

Or pass no params to get all positions:
const allPositions = await getPositions();

What I do in my own systems:

Subscribe to the user data stream for futures (subscribeUsdFuturesUserDataStream() on the ws client)
Query getPositions() for all positions and store the result (e.g. in an object keyed by symbol & position side)
Update this store when any ws position updates come in.

Lastly, if the ws client emits a reconnected event, fetch and update positions again via REST to ensure I'm in sync:
  binanceWs.on('reconnected', async (event) => {
    if (
      typeof event?.wsKey === 'string' &&
      event.wsKey.toLowerCase().includes('userdata')
    ) {
      Logger.info(`Ws reconnected, checking balance, positions & orders...`);
      await updateWalletBalance(exchangeApi, state, true);
      await syncPositionsAndCheckOrders();
      const e = new Error(`WS reconnected (userData) - executed full sync`);
      captureException(e);
    } else {
      Logger.info(`Ws ${event?.wsKey} reconnected`);
      const e = new Error(`WS reconnected (${event?.wsKey})`);
      captureException(e);
    }
  });

This way I can completely rely on position updates coming over the websocket instead of having to regularly poll the rest api (unless I see a chance of being out of sync, where I do ask the REST API for the current state).

Ah lastly, subscribing and handling user data (position) updates in usdm futures (with typescript):
  binanceWs.subscribeUsdFuturesUserDataStream();
  binanceWs.on(
    'formattedUserDataMessage',
    (data: WsMessageFuturesUserDataEventFormatted) =>
      onBinanceFuturesUserDataEvent(data),
  );

async function onBinanceFuturesUserDataEvent(
  event: WsMessageFuturesUserDataEventFormatted,
): Promise<void> {
  const dt = new Date();
  trackInternalEventDt('wsFuturesUserData', dt);

  switch (event.eventType) {
    case 'ORDER_TRADE_UPDATE': {
      onOrderUpdateEvent(event, dt);
      break;
    }
    case 'ACCOUNT_UPDATE': {
      onAccountUpdateEvent(event, dt);
      break;
    }
    default: {
      Logger.warn(
        `onFuturesUserDataEvent(${
          event.eventType
        }): unhandled event type: ${JSON.stringify(event, null, 2)}`,
      );
    }
  }
}

The ACCOUNT_UPDATE case exposes event.updateData.updatedPositions, which has similar data to the getPositions api call. I'd recommend trying it out a bit with breakpoints or logs too see what it looks like.
There's info here on some of the values available in these events, although the above example looks at the beautified version (so the property names are readable thanks to the ws client and floats are parsed from string to number)
https://binance-docs.github.io/apidocs/futures/en/#event-balance-and-position-update

I don't know why but I can't get any updates with WebsocketClient except for ping pongs, I checked it with copying it from readme with default logger, no errors

I don't know why but I can't get any updates with WebsocketClient except for ping pongs, I checked it with copying it from readme with default logger, no errors

The formattedMessage event only happens if you have beautify: true in the ws client options - check the example:
https://github.com/tiagosiebler/binance/blob/master/examples/ws-userdata.ts#L22-L27
Raw messages are always emitted via the message event. Could it be you didn't use beautify: true? Check out the above example for a full workflow on consuming user data events with the beautifier.

Let me know whether or not you get the ws client working. Will keep this open for a bit until then.

I have set beautify: true

Just to double check everything then, did you call the "subscribe" methods, like the example does?
https://github.com/tiagosiebler/binance/blob/master/examples/ws-userdata.ts#L117-L120
Are you triggering an action in your account when you expect to see an event? It's important to note that these websockets only emit events when something happens (e.g. you place/cancel an order, an order is filled, you transfer funds from spot to futures, etc). One example of a valid test is:

Prepare the ws client with beautifier true
Call subscribeUsdFuturesUserDataStream() to open the futures user data stream.
On the binance website, set a limit order in binance futures (or open a position if you want).

This should trigger both a message event with the raw data and a formattedMessage event with the beautified version of the event.

Are you triggering an action in your account when you expect to see an event? It's important to note that these websockets only emit events when something happens (e.g. you place/cancel an order, an order is filled, you transfer funds from spot to futures, etc)

Ah that makes sense, Sorry I thought I would get my future positions, every 3 seconds, no I'm not triggering anything, what do you

Ah yes, that's a common misunderstanding. These are essentially only change events. You will only receive an event when something changed in your account. If you just want to query the current state (regardless of change), you'll need to use the REST API.


[cardano-api] : Remove ghc-9.6 specific allow-newer

New versions of dependencies have been release to CHaP, so this can be fixed.

PR is https://github.com/input-output-hk/cardano-api/pull/176

Done


/info api returns with unicode back spaces

When calling the api request for /info, unicode \b chars in ascii are sent.
Background, built today:
$ docker version
Client:
 Version:      1.9.0-dev
 API version:  1.21
 Go version:   go1.4.2
 Git commit:   743dc1c
 Built:        Mon Sep 21 13:20:09 UTC 2015
 OS/Arch:      linux/amd64

Server:
 Version:      swarm/0.5.0-dev
 API version:  1.16
 Go version:   go1.5.1
 Git commit:   HEAD
 Built:
 OS/Arch:      linux/amd64

$ docker info
Containers: 38
Images: 4
Role: primary
Strategy: spread
Filters: affinity, health, constraint, port, dependency
Nodes: 1
 ip-192-168-100-206: <IP_ADDRESS>:2375
  └ Containers: 38
  └ Reserved CPUs: 0 / 1
  └ Reserved Memory: 0 B / 2.051 GiB
  └ Labels: executiondriver=native-0.2, kernelversion=3.13.0-62-generic, operatingsystem=Ubuntu 14.04.2 LTS, storagedriver=aufs
CPUs: 1
Total Memory: 2.051 GiB
Name: go-devil-flathead

When I use curl, I'm getting a malformed string back: (including unicode backspaces "\u0008")
$ curl -v localhost:2375/v1.20/info
* Hostname was NOT found in DNS cache
*   Trying <IP_ADDRESS>...
* Connected to localhost (<IP_ADDRESS>) port 2375 (£0)
> GET /v1.20/info HTTP/1.1
> User-Agent: curl/7.35.0
> Host: localhost:2375
> Accept: */*
>
< HTTP/1.1 200 OK
< Content-Type: application/json
< Date: Thu, 24 Sep 2015 21:26:32 GMT
< Content-Length: 945
<
{"ID":"","Containers":38,"Driver":"","DriverStatus":[["\u0008Role","primary"],["\u0008Strategy","spread"],["\u0008Filters","affinity, health, constraint, port, dependency"],["\u0008Nodes","1"],["ip-192-168-100-206","<IP_ADDRESS>:2375"],[" └ Containers","38"],[" └ Reserved CPUs","0 / 1"],[" └ Reserved Memory","0 B / 2.051 GiB"],[" └ Labels","executiondriver=native-0.2, kernelversion=3.13.0-62-generic, operatingsystem=Ubuntu 14.04.2 LTS, storagedriver=aufs"]],"ExecutionDriver":"","Images":4,"KernelVersion":"","OperatingSystem":"","NCPU":1,"MemTotal":2202568704,"Name":"ip-192-168-100-251","Labels":null,"Debug":false,"NFd":0,"NGoroutines":0,"SystemTime":"2015-09-24T21:26:32.185780176Z","NEventsListener":0,"InitPath":"","InitSha1":"","IndexServerAddress":"","MemoryLimit":true,"SwapLimit":true,"IPv4Forwarding":true,"BridgeNfIptables":true,"BridgeNfIp6tables":true,"DockerRootDir":"","HttpProxy":"","HttpsProxy":"","NoProxy":""}

The string [to me] looks like copypasta  from something and I created a PR to remove these characters that does not impact the cli. This is chipping away at the larger issue that this API call is simply calling the cli functions instead of the cli and api having a shared generic function (discussed here: https://github.com/docker/swarm/issues/1214).

Hello @u2mejc, see my answer in https://github.com/docker/swarm/pull/1147

Closing as a duplicate of #1214.


Add unit tests for edge cases in polling handlers

Description
Polling handlers have a few edge cases and hardcoded conditions. It would be good to add some unit tests and also to extract the condition checking into a function to make it more robust
Are you aware of any blockers that must be resolved before implementing this feature? If so, which? Link to any relevant GitHub issues.
No response
Some information to help us out

[X] Tick this box if you plan on implementing this feature yourself.
[X] I have searched the issue tracker to make sure this issue is not a duplicate.

If polling handlers is ever added to other network outside of Ethereum, one very important test case to add will be adding "skip block" test case. NEAR can skip block meaning you could get 1004a (parent 1000a).


SCSS and LESS Support

One thing I'd like to eventually see supported is SCSS and LESS support. Those files are included with bootswatch so I would think it is doable. Not being familiar with either myself, I didn't even know where to start. PR's are welcome or just help pointing me in the right direction!

FYI, I've been toying with LESS to change a couple theme options and might have a good way to implement this. Status: In-Progress

Figured out the solution to this in another addon, just need to implement here. https://github.com/martndemus/ember-font-awesome/commit/ab97ed483578fd8d5781a076001763cf690a308d


How to read FieldData?

Hi,
I am experimenting with the WriteVTK.jl and ReadVTK.jl. I would like to store some 3D scalar field data and the velocity and acceleration of a particle. What I am using to write the vtk file is something like the following:
vtk_grid(dataset, xcoord, ycoord, zcoord) do vtk
                    vtk["Phi"] = statevector[:, :, :, 1]
                    vtk["Pi"] = statevector[:, :, :, 2]
                    vtk["Psix"] = statevector[:, :, :, 3]
                    vtk["Psiy"] = statevector[:, :, :, 4]
                    vtk["Psiz"] = statevector[:, :, :, 5]
                    vtk["Position"] = [xcoord[i], ycoord[j], zcoord[k]]
                    vtk["Velocity"] = [vx, vy, vz]
                end

I can see that the info is written in the vti file correctly. Later in VisIt or with ReadVTK.jl
I cannot retrieve the data for the Position and Velocity which are FieldData.
How could I read these data?

Since it looks like the PR you mentioned is stalled due to a lack of examples/testing, you're welcome to contribute by helping out there.

It seems to be an easy task to add some tests, since the functions are relatively simple. But I have not done a PR again, is there something to read to guide how to proceed with it?

TBH, I have not done it myself this way, but I imagine you could clone the fork used for #42, push the branch in question to your own fork, and then add your tests on top of it. Just to avoid redundant work, it would be good to communicate your plans in #42 such that everyone knows you are picking up there.

I cloned your pr and had a look at the tests. Should I modify the example repo to add field data to it, or should I create an example file for each VTKData type which would include only some field data and test them instead? Some guidance would be much appreciated! its also a learning process for me.

I don't know the details of how much as required to test this properly, but assuming that field data is stored similarly for the various mesh file types, I'd say that adding a single file with field data and reading it should suffice.


Typograpgy field throws errors in Kirki 4.0-dev

Issue description:
When using the Typography field, errors similar to below are displayed sometimes breaking the whole customizer:
Warning:  preg_match() expects parameter 2 to be string, array given in D:\laragon\www\site\wp-includes\class-wp-block-parser.php on line 417
Warning:  strlen() expects parameter 1 to be string, array given in D:\laragon\www\site\wp-includes\class-wp-block-parser.php on line 489
Warning:  preg_match() expects parameter 2 to be string, array given in D:\laragon\www\site\wp-includes\class-wp-block-parser.php on line 417
Warning:  strlen() expects parameter 1 to be string, array given in D:\laragon\www\site\wp-includes\class-wp-block-parser.php on line 489
Warning:  preg_match() expects parameter 2 to be string, array given in D:\laragon\www\site\wp-includes\class-wp-block-parser.php on line 417
Warning:  strlen() expects parameter 1 to be string, array given in D:\laragon\www\site\wp-includes\class-wp-block-parser.php on line 489
Version used:
Version:       4.0-dev
The problem does not happen with the stable version 3.1.5
Using theme_mods or options?
theme_mods
Code to reproduce the issue (config + field(s))
`Kirki::add_field( 'theme_config_id', [
'type'        => 'typography',
'settings'    => 'themenav_font',
'label'       => esc_html__( 'Top Menu Fonts', 'kirki' ),
'section'     => 'headerfont_section',
'default'     => [
'font-family'    => 'Open Sans Condensed',
'variant'        => '300',
'text-transform' => 'uppercase',
'letter-spacing' => '0',
'font-size'      => '14px',
'line-height'    => '1.4',
'color'          => '#FFFFFF',
],
'priority'    => 11,
'transport'   => 'auto',
] );`

Hello and thank you for reporting this issue.
We are closing most open GitHub issues with the release of Kirki 4 to start fresh with this major release.
If you are still running into issues after you have tested your theme with Kirki 4, please let us know so we can reopen the issue.
Please note that Kirki 3 is no longer actively supported. Moving forward, we will only provide support the very latest version of Kirki.
Thank you for your understanding.
Best,
David


[Bug] Couldn't find story matching 'drafts-components-skeletontext--default'.

When I visit https://primer.style/components/skeleton-text/react/draft, there is the error messages as below:
Couldn't find story matching 'drafts-components-skeletontext--default'.
The component failed to render properly, likely due to a configuration issue in Storybook. Here are some common causes and how you can address them:

Missing Context/Providers: You can use decorators to supply specific contexts or providers, which are sometimes necessary for components to render correctly. For detailed instructions on using decorators, please visit the [Decorators documentation](https://storybook.js.org/docs/react/writing-stories/decorators).
Misconfigured Webpack or Vite: Verify that Storybook picks up all necessary settings for loaders, plugins, and other relevant parameters. You can find step-by-step guides for configuring [Webpack](https://storybook.js.org/docs/builders/webpack) or [Vite](https://storybook.js.org/docs/builders/vite) with Storybook.
Missing Environment Variables: Your Storybook may require specific environment variables to function as intended. You can set up custom environment variables as outlined in the [Environment Variables documentation](https://storybook.js.org/docs/configure/environment-variables).
- Are you sure a story with that id exists?
- Please check your stories field of your main.js config.
- Also check the browser console and terminal for error messages.

Also, after clicking View in Storybook, we could meet the error message.
Screenshots

launch the issue in https://github.com/primer/brand/issues/853


Cannot save files named in Chinese

Does this issue occur when all extensions are disabled?: Yes

VS Code Version: 1.70.0 (Universal)
OS Version: Darwin x64 21.6.0

Steps to Reproduce:

I don't know why but after the update, sometimes files named in Chinese can be saved and sometimes not

The left sidebar shows that a file has been modified, but the editor list indicates that it has not been modified

Have you noticed any error notifications on the bottom right? If a file cannot be saved when you hit ctrl+s, there should be a notification reporting the problem. Or if you have configured "format on save" or "code actions on save", they will block until the specified actions are finished.

Have you noticed any error notifications on the bottom right? If a file cannot be saved when you hit ctrl+s, there should be a notification reporting the problem. Or if you have configured "format on save" or "code actions on save", they will block until the specified actions are finished.

when I hit ctrl+s, no notification show, and  I didn't configured "format on save" or "code actions on save".

If I open the Auto Save , vscode will automatically save the changes to the file. if I dont and just hit ctrl+s, nothing will happen

If I modify a file named in English, as usual, there are three places where it shows that this file has same new change  waiting to be saved. But if I modify a file named in Chinese, only the left sidebar shows that there are a file has been changed waiting to be saved

I get your point, the file seems already written to disk. The dirty indicator (that solid circle) shows the file already saved, but the badge count does not update. It will be helpful providing more detailed steps or screen records since I cannot reproduce it.
There are some existing issues you can refer to:
https://github.com/microsoft/vscode/issues/65417
https://github.com/microsoft/vscode/issues/93627
https://github.com/microsoft/vscode/issues/137720

I get your point, the file seems already written to disk. The dirty indicator (that solid circle) shows the file already saved, but the badge count does not update. It will be helpful providing more detailed steps or screen records since I cannot reproduce it.
There are some existing issues you can refer to: #65417 #93627 #137720

It doesn't seem to be the same problem, and I can guarantee that the file is not being written to disk, because the dir is belong to a git  repository also, if I run command 'git status' under the dir, it shows that the file has not been modified.

I get your point, the file seems already written to disk. The dirty indicator (that solid circle) shows the file already saved, but the badge count does not update. It will be helpful providing more detailed steps or screen records since I cannot reproduce it.
There are some existing issues you can refer to: #65417 #93627 #137720

It doesn't seem to be the same problem, and I can guarantee that the file is not being written to disk, because the dir is belong to a git repository also, if I run command 'git status' under the dir, it shows that the file has not been modified.

I'm sorry I misunderstood the situation... But as I tried on my own Mac with different approaches (local/remote, creating the file inside explorer/using cmd+N, auto save/manual save) I still can't reproduce the problem

Steps to reliably reproduce please on a fresh user data dir (launch with --user-data-dir <empty folder>).

Detailed concise steps to reliably reproduce please on a fresh user data dir (launch with --user-data-dir <empty folder>).

I once deleted version 1.70.0 and re-downloaded the version 1.69.2 , and it solved my problem.
to reproduce the issue,  I re-downloaded  1.70.0,  but can not reproduce it now....I'm not sure why
thank you for all your help!


bug: Division operator cant be found on contract

Bug Report
Cairo version:
Alpha 7
Current behavior:
    fn as_u256(high: u128, low: u128) -> u256 {
        u256 { low, high } }
    let happens_amount:u256 = as_u256(3_u128, 2_u128) / as_u256(1_u128, 1_u128);

Error when tried to build
error: Plugin diagnostic: Trait has no implementation in context: core::traits::Div::<core::integer::u256>  --> market.cairo:179:35         let happens_amount:u256 = as_u256(3_u128, 2_u128) / as_u256(1_u128, 1_u128);
Other information:
I followed the similar use at corelib operator tests.

was not replicated on main - so will be fixed at the next release.


build: publish at client mobile 3.2.2

- What I did

publish at client mobile for chunked json parser exception
- How I did it
modified pubspec and changelog

@murali-shris I've not done the actual publication of at_client_mobile yet, I think best leave that for whichever of us gets to it first in the morning, as I'm getting a bit punchy now

@murali-shris I've not done the actual publication of at_client_mobile yet, I think best leave that for whichever of us gets to it first in the morning, as I'm getting a bit punchy now

@gkc : The at_client_mobile version 3.2.2 is published to pub.dev


deno compile into executable with dax

I am trying to use dax to build an internal cli.
Minimal example is
import $ from "@david/dax"

const output = await $`echo "hello world"`.text()
console.log(output)

deno compile --allow-all dax_test.ts && ./dax_test

It compiles just fine but when I try to execute ./dax_test it just hangs without any error.
Is it something that I am doing wrong?

Interestingly enough it's working with deno bundle -> deno compile
deno bundle main.ts
deno compile --allow-env --allow-read --allow-write --allow-net --output bin/main-bundled main.js
./bin/main-bundled # hello world

I've created a simple repo to demonstrate https://github.com/dolbyzerr/deno-dax-compile-test
I suspect that it's related to wasm module but not really sure.

FWIW, this is working for me:
> deno --version
deno 1.44.2 (release, aarch64-apple-darwin)
v8 <IP_ADDRESS>
typescript 5.4.5

> bin/main-bundled
hello world
> bin/main
hello world

🤔 it's working for me as well now, not sure what changed but must be something with my system
@NfNitLoop thanks for checking!


frontend_server JavaScript support for new invalidation strategy

I did not remember if I filled a bug for this, but filling now so that we can keep track of it.
2.2/2.1 introduced a new invalidation strategy for incremental compilation that is faster for larger edits where the public API is unchanged. This is currently enabled for mobile/desktop but disabled for web since it doesn't work out of the box.
We need to research why that is, off the top of my head:

Need to handle computing SCC when only given a single library.
Need to persist summary components for DDC
possibly need special rules for invalidating circular imports

Probably some more after that.

Ahh one more:
Switch JS loader to legacy/google strategy instead of requirejs, so that we can skip loading everything (might "just work" as is, but with extra work)

Work in progress: https://dart-review.googlesource.com/c/sdk/+/196840

The work has been landed in https://dart-review.googlesource.com/c/sdk/+/251960


We need a way to identify answers by task_type.

At the moment the only way to do that is to check attached task for task_type, this doesn't seems right to me.

Should we close it due to #41 ?


Improve secret storage in User claims

Is your suggestion related to an experience ? Please describe.
Currently, the product does not support product level encryption mechanisms or hashing mechanisms for storing sensitive user claims such as OTP backup codes. The product relies on database level encryption mechanisms.
Describe the improvement
Provide the ability to hash and store these secrets.
Effort BE::15

This issue is being closed due to extended inactivity. Please feel free to reopen it if further attention is needed. Thank you for helping us keep the issue list relevant and focused!


Migrate to node 16, npm 7.

Resolve #2742
Motivation and context
Migration to node version 16 and npm version 7.
Transferring commonly used packages to the root package.json (if possible).
Updating Dockerfile to use the root package.json. Updating Dockerfile.ci. Updating Dockerfile.ui to use stretch image which uses node 16.
Updating pipeline files. Updating CONTRIBUTING guide.
How has this been tested?

Checklist

[x] I submit my changes into the develop branch
[x] I have added description of my changes into CHANGELOG file
[x] I have updated the documentation accordingly
[ ] I have added tests to cover my changes
[x] I have linked related issues (read github docs)
[ ] I have increased versions of npm packages if it is necessary (cvat-canvas,
cvat-core, cvat-data and cvat-ui)

License

[x] I submit my code changes under the same MIT License that covers the project.
Feel free to contact the maintainers if that's a concern.
[x] I have updated the license header for each file (see an example below)

# Copyright (C) 2021 Intel Corporation
#
# SPDX-License-Identifier: MIT

Hi @bsekachev, please take a look to the patch. Unfortunately, I do not understand the reason for the snyk tests error. node-sass had to be updated because to work with node 16, the required version of ``node-sass``` 6+.

@dvkruchinin , @bsekachev , I will suggest to replace node-sass. What do you think?
Warning: LibSass and Node Sass are deprecated. While they will continue to receive maintenance releases indefinitely, there are no plans to add additional features or compatibility with any new CSS or Sass features. Projects that still use it should move onto Dart Sass.

scss files has been affected due to the occurrence of warning (as an example of one of)
DEPRECATION WARNING: Using / for division is deprecated and will be removed in Dart Sass 2.0.0.

Recommendation: math.div($grid-unit-size, 2)

More info and automated migrator: https://sass-lang.com/d/slash-div

  ╷
9 │ $layout-sm-grid-size: $grid-unit-size / 2;
  │                       ^^^^^^^^^^^^^^^^^^^
  ╵
    src/base.scss 9:23                                        @import
    src/components/update-cloud-storage-page/styles.scss 5:9  root stylesheet

DEPRECATION WARNING: Using / for division is deprecated and will be removed in Dart Sass 2.0.0.

Recommendation: math.div($grid-unit-size, 2)

More info and automated migrator: https://sass-lang.com/d/slash-div

To fix it, I used https://sass-lang.com/documentation/breaking-changes/slash-div#automatic-migration

Hi @dvkruchinin
The patch looks fine, but I come across one issue. When I open typescript files from cvat-canvas, cvat-canvas3d,
Eslint says:
[Info  - 1:24:47 PM] Error while loading rule '@typescript-eslint/dot-notation': You have used a rule which requires parserServices to be generated. You must therefore provide a value for the "parserOptions.project" property for @typescript-eslint/parser. Occurred while linting /home/user/cvat/cvat-canvas3d/src/typescript/canvas3d.ts

If I do some changes in these files, they are automatically linted on precommit hook and linter fails with the same error, so, I can't commit if these files are changed. Could you please look into this?


[builtins writer] using .png or .jpg extension when saving single-channel image layer results in a traceback

🐛 Bug Report
First reported here: https://github.com/napari/napari/issues/3080#issuecomment-1544493749
If you have a simple image layer like:
np.zeros or np.ones -- anything single channel -- and use Save Selected Layers... and use .png or .jpg extension to save as png, you get a traceback:
OSError: cannot write mode F as PNG

Traceback (most recent call last):
  File "/Users/piotrsobolewski/Dev/miniforge3/envs/napari-dev/lib/python3.11/site-packages/PIL/PngImagePlugin.py", line 1279, in _save
    rawmode, mode = _OUTMODES[mode]
                    ~~~~~~~~~^^^^^^
KeyError: 'F'

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/Users/piotrsobolewski/Dev/miniforge3/envs/napari-dev/lib/python3.11/site-packages/app_model/backends/qt/_qaction.py", line 53, in _on_triggered
    self._app.commands.execute_command(self._command_id).result()
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/piotrsobolewski/Dev/miniforge3/envs/napari-dev/lib/python3.11/site-packages/app_model/registries/_commands_reg.py", line 197, in execute_command
    raise e
  File "/Users/piotrsobolewski/Dev/miniforge3/envs/napari-dev/lib/python3.11/site-packages/app_model/registries/_commands_reg.py", line 192, in execute_command
    future.set_result(cmd(*args, **kwargs))
                      ^^^^^^^^^^^^^^^^^^^^
  File "/Users/piotrsobolewski/Dev/miniforge3/envs/napari-dev/lib/python3.11/site-packages/in_n_out/_store.py", line 936, in _exec
    result = func(*args, **kwargs)
             ^^^^^^^^^^^^^^^^^^^^^
  File "/Users/piotrsobolewski/Dev/miniforge3/envs/napari-dev/lib/python3.11/site-packages/in_n_out/_store.py", line 804, in _exec
    result = func(**bound.arguments)
             ^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/piotrsobolewski/Dev/napari/napari/_qt/_qapp_model/qactions/_file.py", line 30, in _save_selected_layers
    qt_viewer._save_layers_dialog(selected=True)
  File "/Users/piotrsobolewski/Dev/napari/napari/_qt/qt_viewer.py", line 745, in _save_layers_dialog
    saved = self.viewer.layers.save(
            ^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/piotrsobolewski/Dev/napari/napari/components/layerlist.py", line 491, in save
    return save_layers(path, layers, plugin=plugin, _writer=_writer)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/piotrsobolewski/Dev/napari/napari/plugins/io.py", line 243, in save_layers
    _written, writer_name = _write_single_layer_with_plugins(
                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/piotrsobolewski/Dev/napari/napari/plugins/io.py", line 456, in _write_single_layer_with_plugins
    written_paths, writer_name = _npe2.write_layers(
                                 ^^^^^^^^^^^^^^^^^^^
  File "/Users/piotrsobolewski/Dev/napari/napari/plugins/_npe2.py", line 125, in write_layers
    res = writer.exec(args=args)
          ^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/piotrsobolewski/Dev/miniforge3/envs/napari-dev/lib/python3.11/site-packages/npe2/manifest/utils.py", line 61, in exec
    return self.get_callable(reg)(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/piotrsobolewski/Dev/napari/napari_builtins/io/_write.py", line 124, in napari_write_image
    imsave(path, data)
  File "/Users/piotrsobolewski/Dev/napari/napari/utils/io.py", line 28, in imsave
    imsave_png(filename, data)
  File "/Users/piotrsobolewski/Dev/napari/napari/utils/io.py", line 58, in imsave_png
    iio.imwrite(
  File "/Users/piotrsobolewski/Dev/miniforge3/envs/napari-dev/lib/python3.11/site-packages/imageio/v3.py", line 139, in imwrite
    with imopen(
  File "/Users/piotrsobolewski/Dev/miniforge3/envs/napari-dev/lib/python3.11/site-packages/imageio/core/v3_plugin_api.py", line 367, in __exit__
    self.close()
  File "/Users/piotrsobolewski/Dev/miniforge3/envs/napari-dev/lib/python3.11/site-packages/imageio/plugins/pillow.py", line 144, in close
    self._flush_writer()
  File "/Users/piotrsobolewski/Dev/miniforge3/envs/napari-dev/lib/python3.11/site-packages/imageio/plugins/pillow.py", line 485, in _flush_writer
    primary_image.save(self._request.get_file(), **self.save_args)
  File "/Users/piotrsobolewski/Dev/miniforge3/envs/napari-dev/lib/python3.11/site-packages/PIL/Image.py", line 2439, in save
    save_handler(self, fp, filename)
  File "/Users/piotrsobolewski/Dev/miniforge3/envs/napari-dev/lib/python3.11/site-packages/PIL/PngImagePlugin.py", line 1282, in _save
    raise OSError(msg) from e
OSError: cannot write mode F as PNG

Worse yet, a file is created, but it's empty so it's misleading.
Seems related to the layer/file type, because RGB layers are fine.
Edit: OK, it's because these simple np layers are dtype('float64')
💡 Steps to Reproduce
Use:
import numpy as np
import napari

w = napari.Viewer()
w.add_image(np.ones((10,10)))

(or you can use zeros)
Then try Meta/Command-S (Save selected layers) and use .png as extension
💡 Expected Behavior
The data should be saved properly.
🌎 Environment
napari: 0.5.0a2.dev543+gad78ee21a
Platform: macOS-13.3.1-arm64-arm-64bit
System: MacOS 13.3.1
Python: 3.11.7 | packaged by conda-forge | (main, Dec 23 2023, 14:38:07) [Clang 16.0.6 ]
Qt: 6.6.1
PyQt6:
NumPy: 1.26.3
SciPy: 1.12.0
Dask: 2024.1.1
VisPy: 0.14.1
magicgui: 0.8.1
superqt: 0.6.1
in-n-out: 0.1.9
app-model: 0.2.4
npe2: 0.7.4
OpenGL:

GL version: 2.1 Metal - 83.1
MAX_TEXTURE_SIZE: 16384
GL_MAX_3D_TEXTURE_SIZE: 2048

Screens:

screen 1: resolution 1680x1050, scale 2.0

Settings path:

/Users/piotrsobolewski/Library/Application Support/napari/napari-dev_a1eb8b76ba95fa16ad06e26097b46b8455dfbf0b/settings.yaml

💡 Additional Context
No response

I think converting from float could be tricky, so best solution is to warn the user?
Alas, for image layers convert type isn't implemented, so little recourse.

I think that we could use here code from #6537


Coverage support with Cadence Tools

Enables coverage collection while running the ibex-dv with xcelium.
Signed-off-by: Canberk Topal<EMAIL_ADDRESS>Needs to be merged after #1575

This enables a coverage report to be generated from the runs but as far as I can tell from the reports, we are missing the functional coverage numbers. However, it at least allows us to improve the compatibility of Ibex DV with Cadence tools.
@rswarbrick : What do you think?

Last changes actually enables fcov collection, oops! Should be fine overall now (except for my not so pretty code)

Thanks @rswarbrick for the suggestions and review! With the latest push, we now collect run specific coverage report (under out/seed-XXXX/cov_report. So it should be fine all around now.


Remove Microsoft Word comments

Trello: https://trello.com/c/3JX1Pc9f/770-embed-paste-html-to-govspeak-functionality
When users add comments to Word 2016 documents and then copy that
content the word document contains the comments that are output.
This commit removes these comments. It does this by matching the
particular element and class name combinations produced by Microsoft
Word.
This is likely very delicate as it requires MS Office to consistently
produce the same code even in future versions.
The HTML snippet to test this was rather big for testing an individual
scenario so I decided to create a fixture for this and include the full
HTML that is output. After chatting with Alex a directory of
fixtures was deemed a common JS library convention.

@alex-ju It's a little more complex than an allow list and a deny list. We have elements that must be removed including their contents, then we have elements that we convert, then we have elements where just their contents remain. The list of elements where we keep the content is surprisingly long (semantic HTML, tables, definition lists) so I think this is still quite substantially shorter. This is probably a conversation for PR #38 though - hint hint 😉


Prepare 0.10.1 release

I backported a number of issues that were fixed in master, and that looked like they won't give any problems. Other suggestions welcome.

Merged


Question: Unity Support

Hi!
Could the SQLite-net be used in Unity projects?
In the official description Unity not mentioned.
SQLite-net is an open source, minimal library to allow .NET, .NET Core, and Mono applications to store data in SQLite 3 databases. It was first designed to work with Xamarin.iOS, but has since grown up to work on all the platforms (Xamarin.*, .NET, UWP, Azure, etc.).

But I see a merged fix for IL2CPP:
https://github.com/praeclarum/sqlite-net/pull/993

@rdcm

mac/iOS : just copy SQLite.cs to your project
Windows: just copy SQLite.cs and the official sqlite3.dll to your project.
Android: copy SQLite.cs and the official sqlite-android-*.aar to your project and change the LibraryPath of SQLite.cs.

Index: Assets/sqlite-net/SQLite.cs
IDEA additional info:
Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
<+>UTF-8
===================================================================
diff --git a/Assets/sqlite-net/SQLite.cs b/Assets/sqlite-net/SQLite.cs
--- a/Assets/sqlite-net/SQLite.cs	(date<PHONE_NUMBER>971)
+++ b/Assets/sqlite-net/SQLite.cs	(date<PHONE_NUMBER>971)
@@ -4356,7 +4356,11 @@
 			Serialized = 3
 		}

+#if UNITY_ANDROID && !UNITY_EDITOR
+		const string LibraryPath = "sqliteX";
+#else
 		const string LibraryPath = "sqlite3";
+#endif

 #if !USE_CSHARP_SQLITE && !USE_WP8_NATIVE_SQLITE && !USE_SQLITEPCL_RAW
 		[DllImport(LibraryPath, EntryPoint = "sqlite3_threadsafe", CallingConvention=CallingConvention.Cdecl)]

Hey @shiena, can you please explain, or send some information how SQLite works on Mac/iOS? Why the native library is not necessary?

@khindemit
Mac/iOS includes sqlite3 so it works without adding native libraries.
On my macOS Catalina, /usr/lib/libsqlite3.dylib exists.

Just to add a comment after doing some research - on macOS, if the library asked for in sqlite-net is "sqlite3" macOS will automatically look for a library with libsqlite3.dylib, which is included in the library lookup path by default. The lib prefix and .dylib are magic strings added to the lookup.

Even more magic - I just checked my macOS Monterey 12.0.1 M1 install, and it's now /usr/lib/sqlite3 alone. Interesting.

I forgot that DllImport should be __Internal in iOS.
So the patch is as follows, along with the one for Android.
https://docs.unity3d.com/2022.1/Documentation/Manual/NativePlugins.html
diff --git a/src/SQLite.cs b/src/SQLite.cs
index e5712f3..dc9e0d4 100644
--- a/src/SQLite.cs
+++ b/src/SQLite.cs
@@ -4468,7 +4468,13 @@ namespace SQLite
 			Serialized = 3
 		}

+#if UNITY_IOS && !UNITY_EDITOR
+		const string LibraryPath = "__Internal";
+#elif UNITY_ANDROID && !UNITY_EDITOR
+		const string LibraryPath = "sqliteX";
+#else
 		const string LibraryPath = "sqlite3";
+#endif

 #if !USE_CSHARP_SQLITE && !USE_WP8_NATIVE_SQLITE && !USE_SQLITEPCL_RAW
 		[DllImport(LibraryPath, EntryPoint = "sqlite3_threadsafe", CallingConvention=CallingConvention.Cdecl)]

@shiena
__Internal is only for linking extern methods with statically-linked native functions in Unity IL2CPP. If the intent is using the system-provide d libsqlite3, LibraryPath should be kept as sqlite3.
However, if the Unity project integrates SQLite using static library or source code, then LibraryPath should be kept as __Internal .


Update info about licenses

https://github.com/MicrosoftDocs/windows-itpro-docs/issues/9133

@greg-lindsay PR has been copyedited and is ready for final review, could you please check and merge? Thanks!

Please note that we are still waiting for the suggested sentence adjustment is still waiting to be committed.


facing this problem in paperspace machine

the error message that is coming up is thid after doing $conda update env .How to solve this
CondaVerificationError: The package for pytorch located at /home/paperspace/anaconda3/pkgs/pytorch-0.3.1-py36_cuda9.0.176_cudnn7.0.5_2
appears to be corrupted. The path 'lib/python3.6/site-packages/torch/_C.cpython-36m-x86_64-linux-gnu.so'
specified in the package manifest cannot be found.

I have the same problem

Please post this on the forum:  http://forums.fast.ai
(I have not been through PyTorch for this documentation.)


Reload certificate at run time

What should we add or change to make your life better?
It would be nice to ultimately have support for letsencrypt. Not sure that it makes sense to add letsencrypt support specifically, but at least some way of automatically reloading a cert when it changes?
Why is this important to you?
We currently use nginx and cert-manager in kubernetes, but would love to get rid of nginx and just use kestrel on the edge (using this project!) but we need a way to either automatically update the cert in kestrel when cert-manager grabs a new one, or even better, get rid of cert-manager and have the edge proxy manage its own certs with built in letsencrypt integration.

Have you seen https://github.com/natemcmaster/LetsEncrypt ?

Yeh - we currently plan to use that along with https://github.com/ProxyKit/ProxyKit. Just thought I'd suggest it as a core feature here.

I do think having Let's Encrypt as a core feature is valid (though perhaps not in v1). We have #110 tracking that already.
@Tratcher @halter73 is the rest of this (updating the certificate, separate from Let's Encrypt) possible already with the SNI callback? I realize it's not async, but you could (today) still have a background process reloading it and swap it out, right?

Yes, the SNI callback allows you to use a new cert every time a connection starts. That's how the LetsEncrypt integration works. It's a bit manual if you want to do it yourself though. We're tracking a few related improvements:

https://github.com/dotnet/aspnetcore/issues/20981 - async SNI
https://github.com/dotnet/aspnetcore/issues/21244 - Add/remove/update endpoints via code
https://github.com/dotnet/aspnetcore/issues/19376 - Reload endpoints from config
https://github.com/dotnet/aspnetcore/issues/15144 - config based SNI

My sense then is to close this out. We have #110 tracking native support for LE. We have the issues you listed above (which we can add to our tracking board) for improvements to SNI.

Triage: Let's close this out.


x/playground: do the "vet" check before running user programs

"vet" is implemented as a separate button. Consider if we can remove that button and do the "vet" check whenever a user pushes the "run" button.
Comments from CL 100776:

Bryan Mills
I wonder whether this should even be a separate button. Could we Vet unconditionally whenever we Run?
We already have a bit of a visual distinction between “errors” and “output”, so it probably wouldn't be terribly confusing to put the errors before the output if we have both, and that would make the warnings that much more discoverable.
Nathan Youngman
I think that's a good point.
Also, with the Go Playground supporting tests, and tests in Go 1.10 now running a subset of vet, it seems like this could just be automatic whether running tests or code. Though it may be important to clearly indicate what is an error from the compiler vs. an error from vet for people new to Go.
https://go-review.googlesource.com/c/playground/+/98155
Andrew Bonventre
This would have ramifications for every call to /compile, which is an endpoint that anyone can use right now.
Yury Smolsky
That would mean changing the spec of /compile endpoint. That endpoint is not supposed to return errors along with output. All clients assume that if there is an error, then output should not be considered. So this could break clients. IMHO, this feature requires new version of /compile along with new protocol.
Nathan Youngman
There is more than one way to do it. An alternative is for the front-end to call /compile and /vet from the same button click.

https://go-review.googlesource.com/c/playground/+/100776/5/edit.html#115

No way. Refusing to run perfectly correct programs isn't what one expects of a playground, for Zeus' sake.
fmt.Println("Is it?\n") // vet: redundant newline

It is not supposed that "vet" errors will prevent from executing the program. Errors from vet must be displayed along with output from the program. However how to present it clearly, I don't know.

Back end protocol aside (that can be worked out either way), it does seem nice to just show the vet output alongside the normal output, instead of having yet another button. Unlike go test, if vet fails, the program should still run. (This is the playground.)

Now that the playground supports go test (#6511) is there any interplay to consider between go test running vet and running vet standalone? Or would the vet part of go test just be disabled/ignored in the playground in favour of the same vet as non-test code?
Regarding back end, what makes most sense to me at the moment is separate vet and compile endpoints that the UI can use from the same button click. What happens when the compile fails with errors though? Does vet only run after the compile succeeds and the output (begins) to display? (Keeping in mind time.Sleep works in the playground).

To clarify go test function of Playground. Right now it does not run vet while testing. So we assume that we have to run go vet for the code containing tests too. And errors returned from go vet should not break an execution of a program even for tests. It differs from the behaviour of a real 'go test', but this will provide some consistency for the playground users.
Some examples of how it might look.
A1. vet errors after the output. User would have to wait until all output is replayed first.:

A2. A test:

B1. If we put go vet errors before the output and with no prefix:

B2. A test:

Any suggestion how to improve A variant?

This one is my favourite. I have made the output of stderr to look like an error and put vet errors before the output. It is not indicated that first error is from vet. Should we?

Running an example without output compiles it but not executes producing this error:

All of these formats seem to rely on differences in color, which might not work so well for someone with red-green colorblindness, although I suppose that's also an existing issue.
To distinguish vet output from user code, what about putting the vet output at the end of the affected line instead of after the program?
That might look like:

That way the warning isn't buried at the end of the output, but also doesn't bury the output. On the other hand, line-wrapping makes things a bit dicey for small windows, long code lines, and/or long error lines.

Red/black can look a lot like black/black or black/nearly-black for various forms of color blindness and mostly for red-green color blindness which is the most prevalent form.
Another way to distinguish the vet output is to leave it where it is but draw a box around it labeled something like "vet output".
The red issue also applies to stdout vs stderr. Maybe adding unhighlightable {out, err} labels where line numbers would go in addition to the red? They could be made smallish since they'd essentially be icons. The lack of either on vet warnings would probably be enough to make it clear where things start and stop along with a little more spacing between the vet output and the program output.

More screenshots for my proposed solution/design above: https://imgur.com/a/Jn3qx.
Thanks for the feedback. I will have to meditate on it.

I don't want to add graphics for this feature. I really like simple or minimal design as it is right now. Also I want vet errors to be on the top, that they urge a user to fix the code and get rid of them. They must be annoying in some sense.
Is current design friendly to color blind people?
I propose this simple layout:

If go vet returned no errors, then first 3 lines are not displayed.

The explicit delimiter works. It's not friendly, per se—but it's not antagonistic.

One more observation:
package main

func main() {
	qwe
}

produces
prog.go:4:2: undefined: qwe

Program exited.

But in fact the program was not running at all. Error came from the go build. So the output could be:
prog.go:4:2: undefined: qwe

Go build exited.

"Go build failed." might be clearer. It always exits.

We should ensure that vet results show up in the Tour, too. That might save some folks a lot of time while they're learning.

I agree. Tour is a different thing and does things differently. It uses golang.org/compile. Since we add new endpoint for vetting, we do not break Tour by any means. So that feature is still possible and should be tackled as a separate change.
I have updated https://go-review.googlesource.com/c/tools/+/107455 with the proposal I made above. I think this is the best design retaining simplicity I can think of. Examples are here.

@andybons, please take a look at https://go-review.googlesource.com/c/tools/+/107455.


Support shard promotion with Segment Replication.

Signed-off-by: Marc Handalian<EMAIL_ADDRESS>Description
This change adds basic failover support with segment replication.  Once selected, a replica will commit its SegmentInfos and reopen a writeable engine.  The replica will also remove all other commits so that this commit is selected when the writeable engine is opened.  It is possible that this commit is not considered 'safe' by the primary, meaning its max seqNo is higher than the global cp.  While an edge case, we never want replicas to reindex with segment replication enabled, so if the global cp has not been updated yet we do not want to revert to a safe commit. This change also updates how SegmentReplicationCheckpointPublisher is wired up within IndexShard so that once promoted the new primary can publish checkpoints.
This PR does not handle edge cases of promotion while there are ongoing replication events, that will be covered in a separate issue.
Issues Resolved
closes #3989
Check List

[x] New functionality includes testing.

[x] All tests pass

[ ] New functionality has been documented.

[ ] New functionality has javadoc added

[x] Commits are signed per the DCO using --signoff

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

Codecov Report

Merging #4135 (c28905a) into main (d09c285) will decrease coverage by 0.03%.
The diff coverage is 82.35%.

@@             Coverage Diff              @@
##               main    #4135      +/-   ##
============================================
- Coverage     70.55%   70.52%   -0.04%
+ Complexity    57018    57015       -3
============================================
  Files          4597     4597
  Lines        274307   274335      +28
  Branches      40187    40188       +1
============================================
- Hits         193543   193468      -75
- Misses        64513    64610      +97
- Partials      16251    16257       +6

Impacted Files
Coverage Δ

...c/main/java/org/opensearch/index/IndexService.java
73.80% <0.00%> (-0.23%)
:arrow_down:

...in/java/org/opensearch/index/shard/IndexShard.java
69.13% <78.57%> (-0.02%)
:arrow_down:

...rc/main/java/org/opensearch/index/store/Store.java
81.29% <86.66%> (-0.04%)
:arrow_down:

.../opensearch/index/engine/NRTReplicationEngine.java
75.60% <100.00%> (+1.66%)
:arrow_up:

...ava/org/opensearch/action/NoSuchNodeException.java
0.00% <0.00%> (-50.00%)
:arrow_down:

...cluster/coordination/PublishClusterStateStats.java
33.33% <0.00%> (-37.51%)
:arrow_down:

...java/org/opensearch/threadpool/ThreadPoolInfo.java
56.25% <0.00%> (-37.50%)
:arrow_down:

...ain/java/org/opensearch/search/sort/MinAndMax.java
63.15% <0.00%> (-36.85%)
:arrow_down:

.../opensearch/client/indices/CloseIndexResponse.java
56.25% <0.00%> (-35.00%)
:arrow_down:

...search/search/aggregations/pipeline/EwmaModel.java
24.44% <0.00%> (-33.34%)
:arrow_down:

... and 488 more

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

I've added a commit to this ensuring cancelling primary allocation succeeds and that the replica is promoted & primary recreated as a replica.  In testing that I found we were failing to publish a replication checkpoint if the primary flushed during close. That is now fixed, the shard must be open for us to publish the replication cp.


Cleanup isFrozen

Issue number
Relevant issue number

Resolves #988

Please check the following

[ ] Do the tests still pass? (see Run the Tests)
[ ] Is the code formatted properly? (see Linting (Formatting))
For New Features:

[ ] Have tests been added to cover any new features or fixes?
[ ] Has the documentation been updated accordingly?

Please describe additional details for testing this change
Removed gameStore.player.frozenId === card.id from the isFrozen check.
Removed  frozenId from the user model.

Hey! Nice work and thanks for your contribution! Unfortunately this PR can't be merged until we complete and merge our new API. This will be helpful when we are ready though!


[Bug]: AsyncLLMEngine hangs when using asyncio.gather with vllm version 0.5.5

Your current environment

The output of `python collect_env.py`
Collecting environment information...
PyTorch version: 2.4.0+cu121
Is debug build: False
CUDA used to build PyTorch: 12.1
ROCM used to build PyTorch: N/A

OS: Debian GNU/Linux 12 (bookworm) (x86_64)
GCC version: (Debian 12.2.0-14) 12.2.0
Clang version: Could not collect
CMake version: version 3.30.2
Libc version: glibc-2.36

Python version: 3.12.4 | packaged by Anaconda, Inc. | (main, Jun 18 2024, 15:12:24) [GCC 11.2.0] (64-bit runtime)
Python platform: Linux-5.4.0-164-generic-x86_64-with-glibc2.36
Is CUDA available: True
CUDA runtime version: Could not collect
CUDA_MODULE_LOADING set to: LAZY
GPU models and configuration:
GPU 0: Tesla V100-SXM2-32GB
GPU 1: Tesla V100-SXM2-32GB
GPU 2: Tesla V100-SXM2-32GB
GPU 3: Tesla V100-SXM2-32GB
GPU 4: Tesla V100-SXM2-32GB
GPU 5: Tesla V100-SXM2-32GB
GPU 6: Tesla V100-SXM2-32GB
GPU 7: Tesla V100-SXM2-32GB

Nvidia driver version: 535.104.12
cuDNN version: Could not collect
HIP runtime version: N/A
MIOpen runtime version: N/A
Is XNNPACK available: True

CPU:
Architecture:                       x86_64
CPU op-mode(s):                     32-bit, 64-bit
Address sizes:                      46 bits physical, 48 bits virtual
Byte Order:                         Little Endian
CPU(s):                             96
On-line CPU(s) list:                0-95
Vendor ID:                          GenuineIntel
Model name:                         Intel(R) Xeon(R) Platinum 8260 CPU @ 2.40GHz
CPU family:                         6
Model:                              85
Thread(s) per core:                 2
Core(s) per socket:                 24
Socket(s):                          2
Stepping:                           7
CPU(s) scaling MHz:                 79%
CPU max MHz:                        3900.0000
CPU min MHz:                        1000.0000
BogoMIPS:                           4800.00
Flags:                              fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc art arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc cpuid aperfmperf pni pclmulqdq dtes64 ds_cpl vmx smx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid dca sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm 3dnowprefetch cpuid_fault epb cat_l3 cdp_l3 invpcid_single intel_ppin ssbd mba ibrs ibpb stibp ibrs_enhanced tpr_shadow vnmi flexpriority ept vpid ept_ad fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid cqm mpx rdt_a avx512f avx512dq rdseed adx smap clflushopt clwb intel_pt avx512cd avx512bw avx512vl xsaveopt xsavec xgetbv1 xsaves cqm_llc cqm_occup_llc cqm_mbm_total cqm_mbm_local dtherm ida arat pln pts hwp hwp_act_window hwp_epp hwp_pkg_req pku ospke avx512_vnni md_clear flush_l1d arch_capabilities
Virtualization:                     VT-x
L1d cache:                          1.5 MiB (48 instances)
L1i cache:                          1.5 MiB (48 instances)
L2 cache:                           48 MiB (48 instances)
L3 cache:                           71.5 MiB (2 instances)
NUMA node(s):                       2
NUMA node0 CPU(s):                  0-23,48-71
NUMA node1 CPU(s):                  24-47,72-95
Vulnerability Gather data sampling: Mitigation; Microcode
Vulnerability Itlb multihit:        KVM: Mitigation: Split huge pages
Vulnerability L1tf:                 Not affected
Vulnerability Mds:                  Not affected
Vulnerability Meltdown:             Not affected
Vulnerability Mmio stale data:      Mitigation; Clear CPU buffers; SMT vulnerable
Vulnerability Retbleed:             Mitigation; Enhanced IBRS
Vulnerability Spec store bypass:    Mitigation; Speculative Store Bypass disabled via prctl and seccomp
Vulnerability Spectre v1:           Mitigation; usercopy/swapgs barriers and __user pointer sanitization
Vulnerability Spectre v2:           Mitigation; Enhanced IBRS, IBPB conditional, RSB filling, PBRSB-eIBRS SW sequence
Vulnerability Srbds:                Not affected
Vulnerability Tsx async abort:      Mitigation; TSX disabled

Versions of relevant libraries:
[pip3] numpy==1.26.4
[pip3] nvidia-cublas-cu12==<IP_ADDRESS>
[pip3] nvidia-cuda-cupti-cu12==12.1.105
[pip3] nvidia-cuda-nvrtc-cu12==12.1.105
[pip3] nvidia-cuda-runtime-cu12==12.1.105
[pip3] nvidia-cudnn-cu12==<IP_ADDRESS>
[pip3] nvidia-cufft-cu12==<IP_ADDRESS>
[pip3] nvidia-curand-cu12==<IP_ADDRESS>
[pip3] nvidia-cusolver-cu12==<IP_ADDRESS>
[pip3] nvidia-cusparse-cu12==<IP_ADDRESS>
[pip3] nvidia-ml-py==12.560.30
[pip3] nvidia-nccl-cu12==2.20.5
[pip3] nvidia-nvjitlink-cu12==12.6.20
[pip3] nvidia-nvtx-cu12==12.1.105
[pip3] pyzmq==26.1.1
[pip3] sentence-transformers==3.0.1
[pip3] torch==2.4.0
[pip3] torchvision==0.19.0
[pip3] transformers==4.44.0
[pip3] triton==3.0.0
[conda] numpy                     1.26.4                   pypi_0    pypi
[conda] nvidia-cublas-cu12        <IP_ADDRESS>                 pypi_0    pypi
[conda] nvidia-cuda-cupti-cu12    12.1.105                 pypi_0    pypi
[conda] nvidia-cuda-nvrtc-cu12    12.1.105                 pypi_0    pypi
[conda] nvidia-cuda-runtime-cu12  12.1.105                 pypi_0    pypi
[conda] nvidia-cudnn-cu12         <IP_ADDRESS>                 pypi_0    pypi
[conda] nvidia-cufft-cu12         <IP_ADDRESS>                pypi_0    pypi
[conda] nvidia-curand-cu12        <IP_ADDRESS>               pypi_0    pypi
[conda] nvidia-cusolver-cu12      <IP_ADDRESS>               pypi_0    pypi
[conda] nvidia-cusparse-cu12      <IP_ADDRESS>               pypi_0    pypi
[conda] nvidia-ml-py              12.560.30                pypi_0    pypi
[conda] nvidia-nccl-cu12          2.20.5                   pypi_0    pypi
[conda] nvidia-nvjitlink-cu12     12.6.20                  pypi_0    pypi
[conda] nvidia-nvtx-cu12          12.1.105                 pypi_0    pypi
[conda] pyzmq                     26.1.1                   pypi_0    pypi
[conda] sentence-transformers     3.0.1                    pypi_0    pypi
[conda] torch                     2.4.0                    pypi_0    pypi
[conda] torchvision               0.19.0                   pypi_0    pypi
[conda] transformers              4.44.0                   pypi_0    pypi
[conda] triton                    3.0.0                    pypi_0    pypi
ROCM Version: Could not collect
Neuron SDK Version: N/A
vLLM Version: 0.5.5@09c7792610ada9f88bbf87d32b472dd44bf23cc2
vLLM Build Flags:
CUDA Archs: Not Set; ROCm: Disabled; Neuron: Disabled
GPU Topology:
GPU0	GPU1	GPU2	GPU3	GPU4	GPU5	GPU6	GPU7	NIC0	NIC1	CPU Affinity	NUMA Affinity	GPU NUMA ID
GPU0	 X 	NV1	NV2	NV1	SYS	SYS	SYS	NV2	SYS	SYS	0-23,48-71	0		N/A
GPU1	NV1	 X 	NV1	NV2	SYS	SYS	NV2	SYS	SYS	SYS	0-23,48-71	0		N/A
GPU2	NV2	NV1	 X 	NV2	SYS	NV1	SYS	SYS	SYS	SYS	0-23,48-71	0		N/A
GPU3	NV1	NV2	NV2	 X 	NV1	SYS	SYS	SYS	SYS	SYS	0-23,48-71	0		N/A
GPU4	SYS	SYS	SYS	NV1	 X 	NV2	NV2	NV1	NODE	NODE	24-47,72-95	1		N/A
GPU5	SYS	SYS	NV1	SYS	NV2	 X 	NV1	NV2	NODE	NODE	24-47,72-95	1		N/A
GPU6	SYS	NV2	SYS	SYS	NV2	NV1	 X 	NV1	PIX	PIX	24-47,72-95	1		N/A
GPU7	NV2	SYS	SYS	SYS	NV1	NV2	NV1	 X 	PIX	PIX	24-47,72-95	1		N/A
NIC0	SYS	SYS	SYS	SYS	NODE	NODE	PIX	PIX	 X 	PIX
NIC1	SYS	SYS	SYS	SYS	NODE	NODE	PIX	PIX	PIX	 X

Legend:

  X    = Self
  SYS  = Connection traversing PCIe as well as the SMP interconnect between NUMA nodes (e.g., QPI/UPI)
  NODE = Connection traversing PCIe as well as the interconnect between PCIe Host Bridges within a NUMA node
  PHB  = Connection traversing PCIe as well as a PCIe Host Bridge (typically the CPU)
  PXB  = Connection traversing multiple PCIe bridges (without traversing the PCIe Host Bridge)
  PIX  = Connection traversing at most a single PCIe bridge
  NV#  = Connection traversing a bonded set of # NVLinks

NIC Legend:

  NIC0: mlx5_0
  NIC1: mlx5_1

Model Input Dumps
No response
🐛 Describe the bug
I'm simply change a little bit of the api_server.py to serve with multiple prompts and using asyncio.gather to wait all responses to be ready.
the log shows that all requests can successfully finishes, but the response can't be returned from the asyncio.gather, it just hangs forever until timeout.
"""
NOTE: This API server is used only for demonstrating usage of AsyncEngine
and simple performance benchmarks. It is not intended for production use.
For production use, we recommend using our OpenAI compatible server.
We are also not going to accept PRs modifying this file, please
change `vllm/entrypoints/openai/api_server.py` instead.
"""
import asyncio
import json
import ssl
from argparse import Namespace
from typing import Any, AsyncGenerator, Optional

from fastapi import FastAPI, Request
from fastapi.responses import JSONResponse, Response, StreamingResponse

from vllm.engine.arg_utils import AsyncEngineArgs
from vllm.engine.async_llm_engine import AsyncLLMEngine
from vllm.entrypoints.launcher import serve_http
from vllm.logger import init_logger
from vllm.sampling_params import SamplingParams
from vllm.usage.usage_lib import UsageContext
from vllm.utils import (FlexibleArgumentParser, iterate_with_cancellation,
                        random_uuid)
from vllm.version import __version__ as VLLM_VERSION
from transformers import AutoTokenizer

logger = init_logger("vllm.entrypoints.api_server")

TIMEOUT_KEEP_ALIVE = 5  # seconds.
app = FastAPI()
engine = None
tokenizer = None

@app.get("/health")
async def health() -> Response:
    """Health check."""
    return Response(status_code=200)

@app.post("/batch_chat")
async def generate(request: Request) -> Response:
    """Generate completion for the request.

    The request should be a JSON object with the following fields:
    - prompt: the prompt to use for the generation.
    - stream: whether to stream the results or not.
    - other fields: the sampling parameters (See `SamplingParams` for details).
    """
    request_dict = await request.json()
    prompts = request_dict.pop("texts")
    stream = request_dict.pop("stream", False)
    sampling_params = SamplingParams(**request_dict)
    request_id = random_uuid()
    messages = [[
        {"role": "system", "content": "You are a helpful assistant."},
        {"role": "user", "content": prompt}
    ] for prompt in prompts]
    texts = [tokenizer.apply_chat_template(message, tokenize=False, add_generation_prompt=True) for message in messages]

    assert engine is not None
    results_generators = [iterate_with_cancellation(engine.generate(text, sampling_params, request_id) , is_cancelled=request.is_disconnected) for text in texts]

    async def process_generator(results_generator) -> str:
        final_output = None
        async for request_output in results_generator:
            final_output = request_output

        text_outputs = final_output.outputs[0].text
        return text_outputs

    tasks = [process_generator(results_generator) for results_generator in results_generators]
    outputs = await asyncio.gather(*tasks)
    return JSONResponse(content={"response": outputs})

def build_app(args: Namespace) -> FastAPI:
    global app

    app.root_path = args.root_path
    return app

async def init_app(
    args: Namespace,
    llm_engine: Optional[AsyncLLMEngine] = None,
) -> FastAPI:
    app = build_app(args)

    global engine
    global tokenizer

    engine_args = AsyncEngineArgs.from_cli_args(args)
    engine = (llm_engine
              if llm_engine is not None else AsyncLLMEngine.from_engine_args(
                  engine_args, usage_context=UsageContext.API_SERVER))

    tokenizer = AutoTokenizer.from_pretrained(engine_args.model, padding_side="left")
    return app

async def run_server(args: Namespace,
                     llm_engine: Optional[AsyncLLMEngine] = None,
                     **uvicorn_kwargs: Any) -> None:
    logger.info("vLLM API server version %s", VLLM_VERSION)
    logger.info("args: %s", args)

    app = await init_app(args, llm_engine)
    assert engine is not None

    shutdown_task = await serve_http(
        app,
        engine=engine,
        host=args.host,
        port=args.port,
        log_level=args.log_level,
        timeout_keep_alive=TIMEOUT_KEEP_ALIVE,
        ssl_keyfile=args.ssl_keyfile,
        ssl_certfile=args.ssl_certfile,
        ssl_ca_certs=args.ssl_ca_certs,
        ssl_cert_reqs=args.ssl_cert_reqs,
        **uvicorn_kwargs,
    )

    await shutdown_task

if __name__ == "__main__":
    parser = FlexibleArgumentParser()
    parser.add_argument("--host", type=str, default=None)
    parser.add_argument("--port", type=int, default=8000)
    parser.add_argument("--ssl-keyfile", type=str, default=None)
    parser.add_argument("--ssl-certfile", type=str, default=None)
    parser.add_argument("--ssl-ca-certs",
                        type=str,
                        default=None,
                        help="The CA certificates file")
    parser.add_argument(
        "--ssl-cert-reqs",
        type=int,
        default=int(ssl.CERT_NONE),
        help="Whether client certificate is required (see stdlib ssl module's)"
    )
    parser.add_argument(
        "--root-path",
        type=str,
        default=None,
        help="FastAPI root_path when app is behind a path based routing proxy")
    parser.add_argument("--log-level", type=str, default="debug")
    parser = AsyncEngineArgs.add_cli_args(parser)
    args = parser.parse_args()

    asyncio.run(run_server(args))

the server launch command:
python api_server.py --model=/root/.cache/huggingface/hub/models--Qwen--Qwen2-72B-Instruct/snapshots/1af63c698f59c4235668ec9c1395468cb7cd7e79/ --disable-log-stats --enforce-eager --tensor-parallel-size=8 --dtype=float16

the trace log file is too large, I picked the repeated part when the server hangs here:
vllm_trace.log
the prompts are simply a list of two strings: ['who are you', 'who are you'].
the logs of the server:
INFO:     Started server process [708619]
INFO:     Waiting for application startup.
INFO:     Application startup complete.
INFO:     Uvicorn running on http://<IP_ADDRESS>:8000 (Press CTRL+C to quit)
INFO 09-12 10:33:05 async_llm_engine.py:208] Added request 1052656a5d7f4a9785b84d122dfc7200.
INFO 09-12 10:33:05 async_llm_engine.py:208] Added request 1052656a5d7f4a9785b84d122dfc7200.
DEBUG 09-12 10:33:05 async_llm_engine.py:899] Waiting for new requests...
DEBUG 09-12 10:33:05 async_llm_engine.py:913] Got new requests!
INFO 09-12 10:33:44 async_llm_engine.py:176] Finished request 1052656a5d7f4a9785b84d122dfc7200.
INFO 09-12 10:33:49 async_llm_engine.py:176] Finished request 1052656a5d7f4a9785b84d122dfc7200.
DEBUG 09-12 10:33:49 async_llm_engine.py:899] Waiting for new requests...

I know there are some related issues, but it seems the problem still exists after the fix.
Before submitting a new issue...

[X] Make sure you already searched for relevant issues, and asked the chatbot living at the bottom right corner of the documentation page, which can answer lots of frequently asked questions.

checked with a smaller model Qwen/Qwen2-0.5B-Instruct, the issue remains.

Can you check whether this issue still persists in the current version (0.6.1)?

Can you check whether this issue still persists in the current version (0.6.1)?

@DarkLight1337  still persists.

Same issue here. Tqdm shows that the last request remains from 60 total, but hangs forever. vllm 0.6.4

why do you use same request_id for different request in one batch? request_id should be unique for each request.
can you change this line
results_generators = [iterate_with_cancellation(engine.generate(text, sampling_params, request_id) , is_cancelled=request.is_disconnected) for text in texts]

to
results_generators = [iterate_with_cancellation(engine.generate(text, sampling_params, random_uuid()) , is_cancelled=request.is_disconnected) for text in texts]


Update your Vagrantfile to download and install the IBM Cloud CLI

**As a developer
**I need a Vagrantfile to download and install the IBM Cloud CLI.
**So that I can operate IBM Cloud on the terminal.
Details & Assumptions:
IBM account is created and accessible
Promotions are ready to push.
Acceptance Criteria:
Given the terminal.
When I want to use IBM Cloud CLI.
Then I make it work on my terminal.

I have competed this part. You can have a check, let me know if you have any problem


Update Program.cs

The original uses a deliberately expected exception to format console output at 70 characters. This leaves an exception in the log that looks icky and may make people say "why is there an error here?"
https://personator.melissadata.net/v3/WEB/ContactVerify/doContactVerif
y?&id=[ISupposeIReallyShouldHideTheKeyInAPublicPostButTrustMe]&format=
json&act=check&a1=71%20gold%20city%20court&city=yellowknife&state=NT&p
Exception thrown: 'System.ArgumentOutOfRangeException' in System.Private.CoreLib.dll
ostal=x1a%203p6&cntry=CA

The proposed LINQ snippet does not cause an exception.
API Call:
https://personator.melissadata.net/v3/WEB/ContactVerify/doContactVerif
y?&id=[ISupposeIReallyShouldHideTheKeyInAPublicPostButTrustMe]&format=
json&act=check&full=RICHARD%20KIDD&a1=27%20UNION%20ST&city=PICTON&stat
e=ON&postal=K0K%202T0&cntry=CA

API Response:

Thank you for sending in the pull request! In order to both avoid the exception and retain the simplicity of sample code, we decided to use a conditional statement instead of LINQ. You can give it a try. Happy coding :)!


Bug fix and many simplifications to odbc_statement_backend

For some reason this vector, added recently in 9b4c5484 (Fetch vectors
by a single row for huge strings in ODBC backend, 2021-03-24), used
"void*" for its elements instead of "odbc_vector_into_type_backend*",
requiring casts in several places.
Do use the actual type now, as there doesn't seem to be any problems
with doing this and it simplifies the code and makes it safer.

@thesiv I'm going to merge this soon, but I'd still like you to have a look at this when you're back and tell me if you see anything wrong here. Other improvements are definitely possible, but this already makes things much simpler and, of course, fixes an important bug with out of bounds access to the indicators vector.


Create kubescape.yml

Close #59 Added Kubescape actions file to the project

@ShaikMoAbdullah this project is not deployed and has no kubernetes config files in it, so I will close this PR and Issue


tests: install lvm2 before setting up ceph-volume/LVM tests

This fixes broken ceph-volume tests caused because lvm2 is no longer pre-installed in its images.
[vagrant@osd0 ~]$ which lvs
/usr/bin/which: no lvs in (/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/home/vagrant/.local/bin:/home/vagrant/bin)
[vagrant@osd0 ~]$ sudo su
[root@osd0 vagrant]# which lvs
/usr/bin/which: no lvs in (/sbin:/bin:/usr/sbin:/usr/bin)
[root@osd0 vagrant]# lvm
bash: lvm: command not found
[root@osd0 vagrant]# yum provides lvs
Loaded plugins: fastestmirror
Determining fastest mirrors
 * base: mirror.vcu.edu
 * extras: www.gtlib.gatech.edu
 * updates: mirror.siena.edu
base                                                                                | 3.6 kB  00:00:00
extras                                                                                | 3.4 kB  00:00:00
updates                                                                                | 3.4 kB  00:00:00
(1/4): base/7/x86_64/group_gz                                                                                | 166 kB  00:00:00
(2/4): extras/7/x86_64/primary_db                                                                                | 204 kB  00:00:00
(3/4): base/7/x86_64/primary_db                                                                                | 5.9 MB  00:00:00
(4/4): updates/7/x86_64/primary_db                                                                                | 6.0 MB  00:00:01
base/7/x86_64/filelists_db                                                                                | 6.9 MB  00:00:00
extras/7/x86_64/filelists_db                                                                                | 603 kB  00:00:00
updates/7/x86_64/filelists_db                                                                                | 3.2 MB  00:00:00
7:lvm2-2.02.177-4.el7.x86_64 : Userland logical volume management tools
Repo        : base
Matched from:
Filename    : /usr/sbin/lvs

[root@osd0 vagrant]# yum install lvm2
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: mirror.vcu.edu
 * extras: www.gtlib.gatech.edu
 * updates: mirror.siena.edu
Resolving Dependencies
...

Tests are failing with:
 TASK [create physical volume] **************************************************
 task path: /tmp/tox.NUa8QhzceL/centos7-bluestore-create/tmp/ceph-ansible/tests/functional/lvm_setup.yml:8
 ok: [osd0] => {
     "changed": false,
     "cmd": "pvcreate /dev/sdb",
     "failed_when_result": false,
     "rc": 2
 }

 MSG:

 [Errno 2] No such file or directory

was already a commit here for that.
merging this one anyway since it's in a separated pr.


F# nuget reference doesn't work in VSCode notebooks

Using v1.0.130603 of the plugin.
This code fails to compile:
#r "nuget: FSharpPlus"
open FSharpPlus

The package is installed, but the FSharpPlus symbol is unresolved:

This does not reproduce in Jupyter notebooks.

Can you run #!about in each of these notebooks?
Binder tends to lag behind by a few versions and this is looking more like a regression.

VSCode:

Binder:

Huh. Local install:


Update spring-boot related modules' version to 2.3.3-beta.1.

Hi, @JimSuplizio ,
Please review. 🙏

Hi, @saragluna .

We need to update the dependent spring boot version to 2.3.0 too.

Updated, please check again. 🙏

/azp run java - spring - ci

Hi, @saragluna .
Please merge it. 🙏


listener: add listener address in log

Commit Message: add listener address in log
Additional Description: When Envoy rejects a listener because it has a listener with the same name on a different address, it just logs the new address. It would help to log the existing address also.
Risk Level: Low
Testing: Updated
Docs Changes: N/A
Release Notes:N/A

Looks good modulo CI failure - I've kicked off another coverage run.


Implement properties field for enhanced backend integration

This PR introduces a new properties field to improve backend integration in CopilotKit. Key changes include:

Added properties: Record<string, any> to CopilotApiConfig and CopilotKitProps interfaces.
Updated UseChatOptions to include properties in copilotConfig.
Modified CopilotRuntimeClient.generateCopilotResponse to accept and use the properties parameter.
Updated use-chat.ts to propagate properties from UseChatOptions to generateCopilotResponse.
Maintained backward compatibility by keeping backendOnlyProps alongside properties.

These changes enable more flexible data passing between frontend components and backend services, enhancing the CopilotKit's configurability and extensibility.

@alsong There are some conflicts in the code. I'll close this PR for now. If you still require this change, please re-open the PR and resolve the conflict. Thanks for your will to contribute!


how to enable desktop with shortcuts on desktop

hey, I have gotten this to work before on my tablet, but I can't seem to figure out how to do it on my phone. can someone help me?

nevermind


Footnotes not working anymore

Heya!
I noticed a bug recently in the Blog plugin: I don't exactly know when or why it happened, but as of recently, footnotes are no longer properly parsed. I did not change the syntax and double-checked for eventual syntax errors, but it appears the Markdown parser doesn't like footnotes anymore. This behavior is visible both when outputting post.content_html | raw on the page as well as in the preview field in the backend.
Interestingly, this did work in the past. And even more so, since the blog plugin "caches" the rendered HTML in the content_html variable, the old posts with footnotes still work. To give you an example:

A recent post I published a few days ago. You can search for [^1] to discover that the markup is not rendered. This post lets me assume this bug has been there at least since July.
This is the last post which properly parsed footnotes, from June 30th.

Current versions:

WinterCMS v1.2.3
Blog Plugin v2.0.2

This is likely due to the recent change in the library used to parse the markdown, @bennothommo do you have any thoughts?

Hey, is there maybe any update on this issue?

Sorry @nathanlesage for missing this one.
There is a Footnote Extension for Commonmark, the library we now use for Markdown parsing. I'll have to double-check if that's already being included or not - we may have to get the Blog plugin to automatically include it.

That would be awesome, thank you! I would jump in if I had some free time, so I'm sorry about just nagging you... I hope it works well, and happy holidays to you, of course!

@wintercms/maintainers I had an idea about perhaps making the following features of Commonmark controllable, perhaps as properties for the Post component, or as additional settings in the BlogSettings model:

Table of contents
Footnotes
Block and inline attributes

These features are available in Winter\Storm\Parse\Markdown, but by default are disabled. The intention was to allow developers to enable them when they want them.
However, if we were to make these available to be toggled in the Post component, we would need to parse the Markdown at the component level, instead of relying on the content_html attribute which is generated on save. This would effectively make that attribute redundant. In order to save on performance if we go down this path, we'd probably need to cache the rendered content - perhaps with a language prefix if the Translate plugin is installed.
I'm not sure if content_html is used anywhere else.
Do you guys have any thoughts on this?

I think the idea of extra markdown features is interesting.

I personally found the route via content_html always a bit weird. I understood it always as a cache mechanism, but it is true that this could also be handled on a per-page basis. Right now it saves me because it allows me to monkey patch footnote support, but I would happily live without it.
In general, it may make sense to do the following:

People should always use the md twig filter instead of using content_html (which is essentially the same but cached in the database)
Allow developers to hook into the Markdown parser (I'm not sure if the PHPLeague one makes that easy, I only know that JS based parsers make extensions very simple)

Then you would also have the benefit that the Markdown parser natively only needs to support whatever PHPLeague offers, and divert the efforts to support additional syntaxes to plugin developers. This might be great, also for supporting non-standard syntax (think citations and other goodies that Pandoc offers).

@nathanlesage great thoughts.
You are correct on content_html being mainly a caching mechanism, although it does serve well as a "normalised" value for when people change the Blog plugin to use the WYSIWYG editor over the Markdown editor - it can be safely assumed that its value will always be the resultant HTML.
Nevertheless, if we want the Markdown to be customisable, it cannot be used.
Using the md filter will introduce a penalty when reading the blog post. I don't think it's too much, but it is still a penalty. It could be mitigated by caching within the component itself, if we wanted to go down that route, although we'll need to allow for the Translate plugin to be able to do its thing if needed. We'd also need the Blog plugin to be able to invalidate the cache when a change is made to the blog post (or the page it is on).
As for customising the Markdown parser - we have a wrapper around the PHP League's Commonmark library which can enable or disable features at will. If someone wanted to customise it even further, they can extend our parser. So the capability is already there.

@bennothommo why are these features not just enabled by default? Also if we were to be configuring which features are enabled then it should probably be in the settings / config for the plugin itself, not on a per component basis.

@bennothommo why are these features not just enabled by default? Also if we were to be configuring which features are enabled then it should probably be in the settings / config for the plugin itself, not on a per component basis.

I just double checked and the extension is included in storm\Parse\Markdown; the only issue is: where does the footnote flag in the constructor come from...? Maybe that's broken?


Allow uploading whole directories

It would be awesome if we could upload whole directories and make them available in the include paths of the compiler. My use case is that I'm working on the Hana C++14 metaprogramming library, and I'd like to have a "Try it online" link where you can try the library on Wandbox. However, in order to do this, I'd need to be able to make my library available on Wandbox so you can type #include <boost/hana/xxx.hpp>.
This is related to ldionne/hana#87. As a workaround, we also tried creating a single header containing the whole library and then uploading that on Wandbox. Unfortunately, the header spans several thousand lines and Wandbox does not seem to work with that.

#154

Wandbox allows to make directories.
In order to upload whole directories, you can use Wandbox API. (POST limit size is 1MB)
I tested Boost.Hana library. Script is here: https://gist.github.com/melpon/8c769de03025d4699da6
But, result is...

http://melpon.org/wandbox/permlink/xnjfZydZ9tMp8V7N
I'm going to fix this UI. I want you to use this UI at the moment.

Thanks a lot for the support! It works perfectly. Also, I wrote a somewhat generic script to upload a whole library to Wandbox and produce a permalink to it. @krzysztof-jusiak, if you're interested,  take a look at this commit.


Chore: comply with new coding sytle rules

Revisit and polish realm-agnostic migration scripts.
Solves https://github.com/witnet/internal/issues/83.

If in the libraries the internal functions and parameters must have an underscore, then CBOR.sol and BufferLib.sol should be updated

General comments:

I have doubts on whether WitnetRequestBoardV03OVM is the best naming if we don't know for certain that every OVM network will have the same special requirements as Boba does (static gas price, native token as ERC20, etc.)
Seeing abstract contracts inside a directory named impls feels somehow weird.
Contract Migrations is in patterns but it's not a pattern.

Otherwise, everything else looks just fine to me.

General comments:

I have doubts on whether WitnetRequestBoardV03OVM is the best naming if we don't know for certain that every OVM network will have the same special requirements as Boba does (static gas price, native token as ERC20, etc.)
Ok, will be this renamed to WitnetRequestBoardV03Boba in this branch.

Seeing abstract contracts inside a directory named impls feels somehow weird.
They are some kind of "half-way" there. In fact, there should better be an abstract implementation of the "trustable" board, and then having the "EVM" (or "Default") and "Boba" final implementation inherit from it. At the moment they share more than 90% of the code.

Contract Migrations is in patterns but it's not a pattern.
Indeed. Actually, it is not needed anymore after the introduction of new migration scripts, so I will just deleted.

Otherwise, everything else looks just fine to me.
Nice !


ui bg yellow colour looking bad /Text not visible

ui bg yellow colour looking  is bad is dont match color theam and Text also not visible

ui bg yellow colour looking is bad is dont match color theam and Text also not visible

yes previously it was different if you can apply that it would be nice !!