Chat Switcher - Draft message from previous conv is displayed after using chat switcher

If you haven’t already, check out our contributing guidelines for onboarding and email<EMAIL_ADDRESS>to request to join our Slack channel!

Action Performed:

Navigate to a conversation
Write something in compose box
Use ctrl+k command
Select another conversation

Expected Result:
Nothing should be displayed in compose box if the selected conversation didn't have a draft
Actual Result:
The draft from the previous conversation is displayed on the current conversation.
Workaround:
Can the user still use Expensify without this being fixed? Have you informed them of the workaround?
Platform:

Where is this issue occurring?

Web
Desktop App

Version Number: 1.0.86-2
Logs: https://stackoverflow.com/c/expensify/questions/4856
Notes/Photos/Videos: Any additional supporting documentation
https://user-images.githubusercontent.com/44479856/130116621-e5c335f4-5289-4819-9864-5b7de148be3f.mp4
Expensify/Expensify Issue URL:
View all open jobs on GitHub

From @iwiznia https://expensify.slack.com/archives/C01GTK53T8Q/p1629393716037000

BUG: (tested on web, staging, probably deploy blocker): draft is not working properly. Steps:
Write something in the chat but don't send it
Switch to another chat using CMD+K shortcut
See that draft message is carried over to the chat you switched, when it should not

Triggered auto assignment to @mountiny (Engineering), see https://stackoverflow.com/c/expensify/questions/4319 for more details.

:wave: Friendly reminder that deploy blockers are time-sensitive ⏱ issues! Check out the open StagingDeployCash deploy checklist to see the list of PRs included in this release, then work quickly to do one of the following:

Identify the pull request that introduced this issue and revert it.
Find someone who can quickly fix the issue.
Fix the issue yourself.

The only PR which might be related to this and could introduced it is https://github.com/Expensify/App/pull/4538 @marcaaron but I am not completely sure. What do you think? I can't really dig into this one right now. I would in the morning if noone identifies what is causing it 🙇 Thank you in any case for having a look.

It seems that with https://github.com/Expensify/App/pull/4538 ReportActionCompose no longer mounts and the input ref is lost in the update.

Why is the input not mounting? Which ref are you referring to?

When the chat is switch using the search bar didComponentMount is not triggered for ReportActionCompose and this inputRef does not seem to update.

The ReportActionCompose component should be mounting only once now. Is there some reason it needs to be unmounted and remounted? I'm not seeing it yet...

I agree that it should be mounted only once and we should keep it that way. What seems to be causing this issue is that this.setInputRef is not providing the correct ref to TextInputFocusable.  Both this.props.comment and defaultValue are correct when switching chats with the Search Page, so I'm not sure why the value is not updated.

Thank you both for looking into this! Following from what you have found @luacmartins, I have identified that when using the SearchBar, the ReportActionCompose does need to update couple of time (after selecting different chat from the search) before it gets the report data of the new report.
In comparison, when using sidebar chat switcher, the components gets the correct props immediately after switching as it mounts.
I haven't been able to easily revert that PR either because it seems there were some additional ONYX changes made after it, which make the ReportActionsView not render correctly.
Therefore, I have tried to find some possibly temporary workaround, before @marcaaron might be able to look into how to update the refactoring to prevent this problem.

PR is ready for a review, but it still needs to be tested on Mobile to make sure the workaround does not cause any problems.

Retest for this in Web was a pass 🎉

🚀 Deployed to production by @roryabraham in version: 1.0.88-2 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
failure ❌

🕸 web 🕸
success ✅

Looking into this, it has some weird reproduction steps on dev. It does not fail (carries the draft over to other chat) every time using the chat switcher. I have removed the deploy blocker label as I think it is very important, but it should not be a blocker.
I am looking into this now.

https://www.upwork.com/jobs/~01e5dccfcff059ed0f

@mountiny @laurenreidexpensify Oh! This was a tricky one!!!
So, the problem is something deep into react-navigation. Basically, when you use the Switch chat feature, the ReportScreen wasn't being unmounted/mounted, just updated, but if you go through the sidebar, it works just fine.
The problem happens in CustomActions.js inside pushDrawerRoute.
If you switch screens from the drawer, you will call
https://github.com/Expensify/App/blob/2920bb93630ce8be23017203341a2da7eaf30cb8/src/libs/Navigation/CustomActions.js#L39-L49
If you switch from the Switcher, you will call
https://github.com/Expensify/App/blob/2920bb93630ce8be23017203341a2da7eaf30cb8/src/libs/Navigation/CustomActions.js#L35-L37
The solution I found, not that I'm proud of it, is to bypass this issue skipping a frame. Basically we replace
https://github.com/Expensify/App/blob/2920bb93630ce8be23017203341a2da7eaf30cb8/src/pages/SearchPage.js#L154-L156
by
Navigation.goBack();
setTimeout(() => {
    Navigation.navigate(ROUTES.getReportRoute(option.reportID));
}, 17);

this change allows the navigatorRef to be updated to the parent and call the proper commands.

@sidferreira Thank you for this deepdive. I appreciate you having a look into this, but as you said yourself, this seems like solution of last resort as it is a hack kind off.
Since this behaviour worked when we have fixed this previously, that makes me think there should be some less hacky solution 😅 I will keep this still as Help Wanted in that case to see if anyone will be able to figure out!

@mountiny The real problem is that, on web, defaultValue is the first value set. As the component is unmounted and remounted when using the sidebar, the value is always cleared out. As the switcher does not causes the unmount (does not use reset), the value is reused.
I tried to use reset when doing the switch, but the navigator thrown errors not finding a navigator to apply the changes ( 🤷♂ ).
I agree it is hacky, but I'm afraid it may be related to the way the navigator is implemented on the app or how navigator works when inside a modal.

@sidferreira Thank you for the description. My reasoning behind waiting for some other solution is, that this issue has been resolved previously and as far as I know we have not made any substantial changes to our Navigator or the switch. Therefore, if the root cause would indeed be in the fundamental implementation of the navigator, should this not be broken from the beginning? 🤔
There is no harm with having more 👀 on this one. @sidferreira in general, we really try hard to avoid any hacks in this App as it is not sustainable in long-term to support them.

@mountiny
Reason
When we switch a report from the LHN, the report screen remounts as we reset the navigation state. But when we use the new chat, or searchPage, it does not reset the state,  but change the route params on the drawer action ReportScreen.
Remounting, reset the comment prop, and works great. But swapping the param only triggers componentDidUpdate .
We do have logic in place to manage this but that does not work as the report and comment prop does not update in a sync manner.
https://github.com/Expensify/App/blob/97110f060bac7e438cbd2dcdb6d4398810179b27/src/pages/home/report/ReportActionCompose.js#L200-L204,
When the this.updateComment executes it takes the old prop instead of the new. Due to the reason that report prop change and comment prop change is not synced. There is no guarantee that when report prop changes , we have the new comment for the new report.
and statement on line 204 only runs one for each report change.
Proposal

We can't add another check where the previous comment is not same as new comment and trigger the updateComment. As drafts could be the same for multiple reports and it will cause update loop.
To fix this, I think we can remount the ReportScreen just like LHN, this issue will be fixed and we don't have to worry about the race conditions. (race conditions are harder to solve)

I will modify the CustomActions.pushDrawerRoute so that it allows remounting. New code will look like this.
function pushDrawerRoute(screenName, params, navigationRef, path) {
   return (state) => {
       // Avoid the navigation and refocus the report if we're trying to navigate to our active report
       // We use our RootState as the dispatch's state is relative to the active navigator and might
       // not contain our active report.
       const rootState = navigationRef.current.getRootState();
       const activeReportID = lodashGet(rootState, 'routes[0].state.routes[0].params.reportID', '');
       if (state.type !== 'drawer') {
           navigateBackToRootDrawer(navigationRef);
       }
       if (activeReportID === params.reportID) {
           return DrawerActions.closeDrawer();
       }

       // Non Drawer navigators have routes and not history so we'll fallback to navigate() in the case where we are
       // unable to push a new screen onto the history stack e.g. navigating to a ReportScreen via a modal screen.
       // Note: One downside of this is that the history will be reset.
       if (state.type !== 'drawer') {
           state = getStateFromPath(path, linkingConfig.config);
       }
       const screenRoute = {type: 'route', name: screenName};
       const history = _.map([...(state.history || [screenRoute])], () => screenRoute);
       return CommonActions.reset({
           ...state,
           routes: [{
               name: screenName,
               params,
           }],
           history,
       });
   };
}

Explanation: Here when we navigate from any navigator to report screen, I delegate the navigation to  CommonActions.reset( which is used in LHN case also.
Here is the PseudoCode:

When not the drawer navigator, go back to drawer navigator. (means close the sidemodals, etc)
if navigating to the same report, just close the drawer if open.
if not the drawer navigator,  calculate the new state for the report screen which is needed to reset the state.
Reset the state.

I love this @parasharrajat. Let's move this to pull request once you will have time and make sure we test well the modals and navigation! Feel free to apply for the job on Upwork and let @laurenreidexpensify know once you have done so!

Obviously, I will refactor the code in a good way. I have already improved the navigation earlier.

👀

Those eyes are frightening. Sorry, I forgot to append with help of the team during review.

PR is up and in a review so added the label. This might take a while as we would like to make sure the changes are conceptual.

@mountiny assume this is still in review?

@laurenreidexpensify Correct!

I'm coming from this related issue - https://github.com/Expensify/App/issues/6490
Looking at the investigation and proposal, I believe this PR will also fix the linked issue.
Can anyone please confirm, thanks!

Yeah, I just checked that #6490 is not reproducible on the PR.

Thanks! 🙌

Triggered auto assignment to @trjExpensify (External), see https://stackoverflow.com/c/expensify/questions/8582 for more details.

@trjExpensify i'm OOO quite a bit over next week moving house, so handing this one off while I"m away thanks!

Cool, sounds good. Looks like we're waiting for a prod deploy to start the timer. 👍

The solution for this issue has been :rocket: deployed to production :rocket: in version 1.1.18-3 and is now subject to a 7-day regression period :calendar:. Here is the list of pull requests that resolve this issue:

https://github.com/Expensify/App/pull/6207

If no regressions arise, payment will be issued on 2021-12-15. :confetti_ball:

Ping for

@trjExpensify

Paid @parasharrajat , wanted to get it issued before the weekend!
Thanks for inc. the 'company offsite hold' bonus info, I forgot to add the label and details to some of issues that were in progress


Not starting

I've downloaded a version from the releases page and when I run the .exe nothing happens, I've tried both the 1.0.0 version and the 1.2.0, is there some kind of dependency needed for the release builds?

I just tried installing it on another computer and it worked, maybe it's something to do with my anti-virus

Anti-virus normally blocks the program. its due to the program being "new"
The only way to fix this is if i submit the program to every anti-virus company for review, or if a lot of people start using the program it will auto flag to review.


Build.sbt or Build.scala

Some may want Build.scala, so we should ask and then generate the appropriate file.

done


Out of sync project config when pom is updated manually

The project config may be out of sync when the pom.xml file is updated manually.
E.g. one bumps the helidon application parent pom manually.
We need a way to invalidate the project config and synchronize it with the pom.xml

Current workaround is to manually delete the project config file project/.helidon.

@romain-grecourt I think this may be covered already, now that the dev extension adds the helidon version.

This needs to be verified against 2.x as well.

I've verified that changing the parent pom version is detected correctly under both 2.x and 3.0.0-SNAPSHOT, in both scenarios:

change is made while dev loop running: change is detected and rebuild occurs.
change is made while dev loop is not running: change is detected on dev loop start and rebuild occurs.

Was there some other condition you were concerned about?

I think that was it.


Use -n instead of ! -z in bin/happo-ci

I spotted this stylistic issue after running this script
through shellcheck. More info:
https://github.com/koalaman/shellcheck/wiki/SC2236

Thanks!


Assign reviewers to PR

We can use the brand new assignees field of a GitHub issue: https://developer.github.com/v3/issues/#edit-an-issue. Added as of https://github.com/blog/2178-multiple-assignees-on-issues-and-pull-requests


son-validate: implement validation of forwarding graphs

Services must be validated beyond the network topology level.
Their forwarding graphs and associated forwarding paths must also be validated.

Done.


Missing merchandising api support

HI David,
This version currently seems not supporting merchandising api. Could you pls add support for the same.

This SDK is no longer supported as it has been moved to a new SDK  that supports several eBay services. This new SDK currently doesn't support Merchandising but I can certainly look at adding it soon after version 1.0.0 of the SDK is released in the next month or so.


Update Icons8 API

[x] My submission is formatted according to the guidelines in the contributing guide
[x] My addition is ordered alphabetically
[x] My submission has a useful description
[x] The description does not have more than 100 characters
[x] The description does not end with punctuation
[x] Each table column is padded with one space on either side
[x] I have searched the repository for any relevant issues or pull requests
[x] Any category I am creating has the minimum requirement of 3 items
[x] All changes have been squashed into a single commit

Linked to issue #2807

@matheusfelipeog Thanks for checking! I was careless there. Now I'm trying to learn how to squash the commits into 1


[decimal.js] Change module name to standard 'decimal.js'.

This change is small, but it will remove a minor headache for me. :smiley:
The current typings use the module name "decimal", which is a different NPM package.
decimal.js is in the npm package of the same name. In a Node or Browserify setting, you use it with require('decimal.js'). Thus, I've changed the typings to use the module name 'decimal.js'.
Let me know if you have any questions.

@jvilk thanks mate!
@musicist288


[Question]: E340: No objects for the device available

Adapter version
1.2.1
JS-Controller version
5.0.19
Node version
18.20.2
Operating System type
Linux
Operating system version
debian 12 (RaspPi)
Describe the bug
Adapter connects and turns green. It also does find the device (E340) and shows info about firmware etc.
However there are 0 object points for the video links, alarm trigger or anything else are being created.

It is connectiong to the webservice using a separate account.
Also there is a frequent timeout shown in the log:
once a minute the adapter is reconnecting
To reproduce

Go to '...'
Click on '...'
Scroll down to '....'
See error

Screenshots & Logfiles
No response
Additional context
In the beginning the locale for the linux was en_GB while the devices have been created under Germany. following some post here i've change this to de_DE with no effekt.

OK. looks like the e340 will only be working with the next release. It is listed as being supported. However when looking in the eufy-security-client release notes: It is only supported from 3.0.0 on. Parte of the eusec 1.2.1 is eufy-security-client 2.9.1 only.
Any way i can update the client only to 3.0.0 (if that would work with eusec 1.2.1?

Released new eusec in beta channel


Unable to Install

Hello, I was interested in testing this module out but when I try to install the 1.02 via either manifest, the forge bazaar or through the module install dialogue in-foundry I just get no installation sorta like a invalid .json.
I tried installing the 1.01 and that definitively gives me a manifest error.
Not sure what the issue exactly is. But I'de love to try this out as I love the idea of showing players the percentages when they attempt to do something!

pushed 1.0.3 release that should fix this

Yup! This fixed it! :D Been messing with this and this is something I've always wanted. Player feedback without needing to explain every single strike all of the time / discovery of the math. Big fan!


The experience of using tags in CPP is very fragmented

At present, there are no GamePlayTag related functions provided on the cpp side. Why not consider adding a Tag related version, and I think FGESEventContext may be redundant on the cpp side and can be packaged more simply
If it is simplified, function parameters can be passed directly without creating redundant structure parameters

FString FGESHandler::AddLambdaListener(UObject* Context, FGameplayTag EventTag, const TFunction<void()>& ReceivingLambda)
{
	FString Domain;
	FString Event;
	UGlobalEventSystemBPLibrary::Conv_TagToDomainAndEvent(EventTag, Domain, Event);
	FGESEventContext EventInfo;
	EventInfo.Domain = Domain;
	EventInfo.Event = Event;
	EventInfo.WorldContext = Context;
	return AddLambdaListener(EventInfo,ReceivingLambda);
}

The Gameplay Tag variants were largely for blueprint workflow based on dev requests in the past.
That said I will gladly merge a convenience c++ function with tags like the above if you make a pull request with the code.
I wouldn't get rid of the event context struct as I do prefer the double string context for event filtering.


EveryDoor assumes all plaques are to be snapped to a building

If you add a memorial=plaque, EveryDoor automatically adds a "fixme=Please merge me into a nearby building", but this isn't always the case, as can be seen in the Wiki page in the "Examples" paragraph: https://wiki.openstreetmap.org/wiki/Tag:memorial=plaque
Also if you add it and save the element (without uploading) and you get back to the same element to add a new tag, there's no trace of the fixme, that appears only after the upload. Maybe could be a good idea to add it as you click the preset, so you can notice it and delete it if not relevant to the case.

It's not that simple, because the fixme is only added when the app for some reason fails to snap the plaque to a building. The default is to snap to a nearby building outline, which misplaces the node if the plaque isn't in fact placed on a building wall.
By the way, I find the post-mounted plaque from Wiki a questionable example. To me it's rather an information board. But there are of course plaques mounted on walls (i.e. barriers), on the ground or on not-yet-mapped features.

So how we can do this: first add a support field to the plaque preset. And then Every Door can skip the snapping when the support=post tag is present.
Since it's common for plaques to be on buildings, I assume this would be the best option. And we need more plaques with the support tag set :)

There are 1212 uses of support with memorial=plaque atm:

support
uses

wall_mounted
632

wall
218

pole
160

rock
66

ground
39

bench
20

stone
17

post
13

pedestal
12

tree
12

fence
9

guard_rail
3

column
3

board
2

support
1

pole_mounted
1

billboard
1

ground;flower bed
1

posts
1

pillar
1

Most of them don't need to be merged to a wall, not =post only. =pole, rock, ground, tree, fence ecc. also.
Maybe the check could be something like this?: if support is missing or is =wall_mounted OR =wall, then look for a building for merge

Also see #541 for a more general issue.

Okay I've disabled snapping plaques until I do #541. After that I'll re-enable.


auth: Fixes "Cannot read properties of undefined 'tenantId' error

Please refer to this rg issue for the error.
Also added the account property to isSignedIn() because for some reason I kept getting all of my tenants showing up in the list when I should only be getting unauthenticated tenants.

If the problem was because we weren't passing account into isSignedIn on line 16, then would this solve it?

I added the account property to our tenant interface recently https://github.com/microsoft/vscode-azuretools/pull/1849

If the problem was because we weren't passing account into isSignedIn on line 16, then would this solve it?

I added the account property to our tenant interface recently #1849

Yes lol for some reason it wasn't showing up when I first implemented it 😅


[APIM] Add changes to provide support for building the API manager product with JDK 17

Purpose
To make the necessary changes to provide support for building the API manager product with JDK 17.
Goal
Fixes: https://github.com/wso2/api-manager/issues/2943

The task is being closed for now as it is on hold until we decide to start it again.


Reduce amount of clicks for "rerun failed jobs"

Description
I think GitHub recently changed the order inside the dropdown for rerunning jobs in case they failed. In the mobile app it's the first option listed, but in the browser the first option is now "rerun all jobs". Small change big difference in cost.

I was thinking if it would be possible to avoid the dropdown (the same way that approvals only require one click instead of two) and directly offer one button for each option, ideally the one for rerunning failed builds should be the first one.
It would obviously only be visible if the viewer has the rights to rerun the workflow, not sure if that makes it harder to implement.
Example URLs
https://github.com/refined-github/refined-github/actions/runs/7071099962?pr=7100

Not worth it here. Neither actions is more common than the other


Integration with AWS workshop Studio

What problem does it solve?
Updated eks workshop dev content to be able to run it in both Local Computer (using your own AWS account) and AWS Workshop Studio (at an AWS event).
For example:

Added tabs to differentiate steps for "AWS Workshop Studio" from "Local Computer"
Updated wording and commands to be compatible with both environments

Type of change

[x] Bug fix or improvement (non-breaking change which fixes an issue)
[ ] New lab exercise (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing workshop materials to not work as expected)

How Can Other Contributors Test Your Changes?
Describe the tests that you ran to verify your changes so that other contributors can reproduce your steps.

[ ] N/A
[x] Describe below:
Created a test event in AWS WorkshopStudio and run the workshop using the Visual Studio environment provisioned in WorkshopStudio

Checklist:

[x] My contributions follow the style guidelines of this project
[x] I have performed a self-review of my changes
[x] I have added tests that prove my changes are effective

I am working on an alternative way to provide user permissions in workshop Studio.
Please do not work on this PR, I will submit a new PR for this integration.


Work on making WebUI faster to load.

When lots of results are available, the WebUI can be slow to load.  We should think about ways of improving this.  Also it can be nice to see results trickle in without having to reload the page, so it might be good to have a facility to avoid refreshes.

Performance:
It is mainly slow because it has to parse all .info.json files.
We already have a trick to cache this information, and parse again the files only if they are more recent than the last time we parsed them. So you can "warm up" the webui, re-loading a page with many results should get you the page much faster.
Next step to get faster is to load everything in a database, that's what the CTS does, but it adds much more complexity.
Dynamic pages:
Yes in principle, non-trivial to do in practice.
We can also lazy-load the images as they appear on screen, that would speed up page renderings.
This is all asynchronous javascript stuff. I do not volunteer to do this :)
Possible solutions:

keep on patching our WebUI
Have the webui revamped by someone who knows how to do such things properly
Reuse somehow what the dEQP folks did with Cherry


Search filters: filter by license

What is it
We want to make it easier for people to understand whether images and digitised items are free to use, and under what conditions.
In addition to improving license and download information on /works pages #4549, we can also filter search results by license type.
User story
In order to find materials that I can download and use for free
As a researcher
I need to be able to filter out stuff that is restrictive or not available for free.
Implementation
Testing and tracking

Have you talked to Tacey?
Test plan
Will you need to set up additional tracking?
What is the expected life span for tracking?

Measurement
Related KPIs (e.g. breadth of collection accessed, reading time, etc.)
Other considerations
<---Delete as appropriate--->

Impact on URL design
Cardigan documentation

Superseded by https://github.com/wellcomecollection/platform/issues/4724


Third-party docs

Is there a way to use dasht to download kapeli's third party docs? Such as Hexdocs.pm?
I'm trying but with no success.
(Congrats anyway though, this is an excellent little app :) )

At present, the dasht-docsets-install(1) script can only download docsets that Dash for OSX has kindly made available on its "direct docsets links" page. :santa: I don't know if (or where) third-party docsets are made available to us in a similar fashion, but please do tell me if you happen to know or find out. :crystal_ball:
However, if you somehow have access to the *.tar.gz files or the *.docset folders of third-party docsets—for example, if you generated your own custom docset—then simply place them into your $DASHT_DOCSETS_DIR folder (and extract if necessary) to make them visible to and searchable in dasht.

Okay, I've figured out how to incorporate docsets from the "User Contributed" source. :tada:  We just need to scrape this directory listing for docset names and download them from the usual location: the Dash CDN.

Never mind, I was wrong. :sweat:

I just added a new dasht-docsets-extract script in commit b73f37ce0838ecaec2ee826bca113074d372fcae that further simplifies the task of installing third-party docsets directly from their *.tgz files (if you somehow happen to have to them).

The dasht-docsets-extract script has been released in version 1.2.0. :gift:

@eidge Were you able to get a setup you're happy with for importing and viewing Hexdocs in dasht? I'm just starting down that path and came across this issue. Thanks.

Hi there,
Unfortunately I didn't, but to be honest I didn't take a big look. I use
Linux virtual boxes for development purposes which make it very frustrating
to use dash to download the docsets and then move them over to the vms. So
I'm just using dash at the moment.
This would definitely unlock it though.
Thanks for the good work!
On Thursday, 1 September 2016, Eric Milford<EMAIL_ADDRESS>wrote:

@eidge https://github.com/eidge Were you able to get a setup you're
happy with for importing and viewing Hexdocs in dasht? I'm just starting
down that path and came across this issue. Thanks.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/sunaku/dasht/issues/4#issuecomment-244126901, or mute
the thread
https://github.com/notifications/unsubscribe-auth/ACPZiPkH787rs60XepK7xgbKgyYNPstNks5qlvbPgaJpZM4HqXJB
.

--
Hugo Ribeira
Jack of All Trades at *intoCros http://intocross.coms
http://intocross.com *
Tel: +351 910982209 http://910982209 * LinkedIn
http://pt.linkedin.com/pub/hugo-ribeira/45/295/536/ * GitHub
https://github.com/eidge
Universidade de Coimbra

Thanks.
Downloading and extracting the docsets directly from hex.pm didn't work because of the directory structure format, sqlite, etc. required by dash. I've found that downloading the docsets via Dash and copying them to the dasht location works.

Could you provide an example URL of a hexdocs.pm docset package (tarball) so I can download it and debug why dasht-docsets-extract isn't sufficient to make it searchable with dasht?
All I was able to gather from hexdocs.pm's homepage was that I could access a particular hex package's documentation online via a URL like this: http://hexdocs.pm/<package>/<version>.  I tried adding .tgz and .tar.gz to the end of such URLs but that did not yield a downloadable docset.

Here's an example https://repo.hex.pm/docs/ecto-2.0.4.tar.gz
There's a good chance I borked something when using dasht-docsets-extract. 😁

Thanks. :+1:  Ah yes, this tarball simply contains a bunch of HTML files at the root: there is no   SQLite3 database at /Contents/Resources/docSet.dsidx available for searching, so this really isn't a Dash docset. :person_frowning:
We need to transform this tarball into a Dash docset, somehow, to make it installable with dasht-docset-extract and searchable with dasht.  Right now, I don't know how to do this. :confused:

I haven't had a chance to look at it or to give it a shot, but came across this which might help.

:+1: Considering the fact that hexdocset has runtime dependencies on Elixir and Erlang , it seems unlikely that Dash would come bundled with it to dynamically transform hexdocs.pm tarballs into proper Dash docsets during installation on the client side. :meat_on_bone:
Instead, I believe that transformation software like hexdocset is run internally by hexdocs.pm and the result is provided as a proper Dash docset to be downloaded directly into Dash for OS X.  That way, Dash users are spared from having to satisfy special runtime dependencies just to install hexdocs.pm docsets. :cold_sweat:
An easy way to confirm this suspicion would be to run a network traffic analyzer while downloading a  brand new hexdocs.pm docset into Dash for OS X.  Find out what URL is actually being downloaded: it's likely not the same one that you provided in comment https://github.com/sunaku/dasht/issues/4#issuecomment-244465110. :eyes:
Finally, repeat the experiment with other sources third party docsets and share the results here.  Of course, I could do all of this myself, except for the fact that I don't use Mac OS X at all. :penguin: :neckbeard:

There's seemingly something to do with hexdocset when downloading a hex docset within Dash. It's from a different app; the one you linked to I'd need to spend more time with to understand what I'm looking at. These results are consistent when downloading.

Interesting, so Dash comes bundled with hexdocset?  and it uses hexdocset to build an SQLite3 database out of the HTML files on the client side?  :astonished:

Help Wanted: If anyone wants to try adding support for installing improper docsets (which don't contain a SQLite3 database at /Contents/Resources/docSet.dsidx within them, as defined in https://github.com/sunaku/dasht/issues/4#issuecomment-244471949) such as those from hexdocset, please submit a pull request and I would be glad to review and merge it! :sweat_smile:

I am having an issue with getting the docsets from sub-folders. I have set the directory to this:
export DASHT_DOCSETS_DIR="/Users/XXXXX/Library/Application Support/Dash/DocSets"
However, dasht does not detect .docsets files in subfolder. When i search for 'Dart' I get no result at all. after resetting the directory exactly where the .docsets files are, it seems to be working. like the following:
export DASHT_DOCSETS_DIR="/Users/XXXXX/Library/Application Support/Dash/DocSets/Dart"
but this will only get the dart docs obviously and it is very inconvenient to move all .docsets files directly in the same folder directly.
Any idea on how to properly set the DASHT_DOCSETS_DIR to look into subfolders ?
Regards,
Sultan

Hi @SultanEid, see issue #15 instead: :tipping_hand_man: what you've described is a completely different issue.


Not able to set it up locally

Hey,
I have been wanting to set up Scribble Diffusion locally and followed all steps for it and even added my Replicate API Key into .env.local file but as you can see from the Screenshot that Its failing to recognize the API Key's presence even though it exists.
What should i do?

Hey there, I am getting the same problem, made a new key. But the key works using this script below, works great, but the scribble wont see the .env file, or env.local. I had this working 4 months ago and came back to play around, there was updates to the env file as you didn't need an api key then.
From https://replicate.com/docs/get-started/nodejs
curl -s -X POST
-d '{"version": "5c7d5dc6dd8bf75c1acaa8565735e7986bc5b66206b55cca93cb72c9bf15ccaa", "input": {"text": "Alice"}}'
-H "Authorization: Token r8_XcGqk5GTiNJtVoIq0UyiMR0Hv6oQqvC3Ff5xX"
-H 'Content-Type: application/json'
https://api.replicate.com/v1/predictions


Use performance.now() where available

This PR changes the NDT5 client code to use the monotonic performance.now() instead of Date.now() where available. This fixes a rare bug that happens when the system clock is changed while a measurement is running, which would cause an incorrect client-side throughput to be displayed -- in extreme cases, even a negative value.
(The code is basically the same as in ndt7-js)

This change is

Pull Request Test Coverage Report for Build 1637

0 of 0   changed or added relevant lines in 0 files are covered.
15 unchanged lines in 4 files lost coverage.
Overall coverage decreased (-0.7%) to 81.463%

Files with Coverage Reduction
New Missed Lines
%

ndt5/ndt5.go
2
88.95%

metrics/metrics.go
4
60.0%

ndt5/c2s/c2s.go
4
71.43%

ndt7/upload/sender/sender.go
5
65.91%

Totals

Change from base Build 1634:
-0.7%

Covered Lines:
1815

Relevant Lines:
2228

💛  - Coveralls


Integration of ark with Macaron.js: Is it Possible to Use Them Together?

Description
I would like to know if it's possible to integrate ark with Macaron.js.
Proposed Solution or API
https://macaron.js.org/docs/styling
Additional Information
I am immensely grateful for your efforts in creating ark.

@Yvictor you can style with anything. It's headless. Macaron example here
https://codesandbox.io/p/sandbox/ark-marcaron-vite-react-35eh2z?file=%2Fsrc%2FApp.tsx%3A49%2C16


Add list-plus icon

list-plus
Closes #408

100%

Needs list-minus and list-check too.

@locness3 good idea!

list-check?


Add translation resources

Adds a directory under 'pics' with some resources to help other translators with translating the pictures.

This is really useful, thank you! :)


Broadcast Idea

Load a file with phone numbers and send a message to all of them! The difference between this and the Whatsapp broadcast in smartphone is that we can send message even if we don't have that contact!

I would like to work on this. I just got a reference that how to send message through api.whatsapp.com, here's a link of it : https://www.androidpit.com/send-whatsapp-message-without-adding-contact-to-address-book . Can i implement it here? Or please suggest some better ways.

@zulkernine I'm refactoring the project and I already included this feature to send message to unknown number. I will release it soon. So wait for my release to start working on this issue.

Ok. I'm waiting ☺

What is the type of the file ?
In which format will it contains those numbers??

a simple txt, 1 number per line:
9194848948
4848946548
4684848648

Alright

Should I use that api to send message to unsaved number?
In that case , whatsapp web will be opened in the new tab again, thus it would take a very long time.
So what should I do??

use this method: search_and_select_target. It will detect the number and load the page, without opening a new one

so you can put it in a for loop:
for number in numbers:
    search_and_select_target(page, number)
    send message

I got the idea :)
I'm starting to implement it .
I'll make the commit soon.

Searching the target(through number) more than once gives this pop up. How to disable this pop up ?
1904.05104.pdf

My code is ready for commit except this issue(Mentioned upper).

a simple txt, 1 number per line:
9194848948
4848946548
4684848648

Should I assume all the numbers are correct and has a whatsapp account?
Number will contain country code or not?
I implemented it in such a way that if country code is provided then alright otherwise indian country code is used.

https://stackoverflow.com/questions/46669788/how-to-handle-popups-in-puppeteer

skip the number if error and log a message.

skip the number if error and log a message.

Existing target_search method exit the program if wrong number is used.
So I think , I'm to make a custom function for this case.

skip the number if error and log a message.

Following error is skipped in the __try_load_contact_by_number() in target search. Consequently, Though the number is invalid, this function is returning true leading to exit call in __get_focused_target_title(). :(

You will need to watch this message box, using waitForSelector

Think that all numbers are valid, I will fix this in the weekend.

Ok

A PR is created regarding this issue .
Please review.

What happened? What about that PR?


update version from base

mitigates https://github.com/crewjam/saml/security/advisories/GHSA-267v-3v32-g6q5

We probably should fix our test and linting problems. The upstream has Green pipelines.


Display collision shapes in the editor

Collision shapes can only be displayed when the game is running.
It would be useful to be able to display collision shapes in the editor to check collisions.
https://github.com/DevMagicLord/Godot3/blob/master/bugs/download/collision shapes.jpg?raw=true

The newer builds of Godot has the collision shapes from all instances visible by default.
Though there could be a few options on how they are to be drawn (other than the wireframes they are displayed as now).

I'm using 3.1 alpha 1, it is supported already or it is latest builds only ?

Alpha 1 is nearly 2 months old at this point. I posted a link in your other issue showing where you can download nightlies.

I'm not always in Godot ;)
Just tested with latest build, in the editor collisions are showing, but the new issue is they are always displayed , i can't turn them off in the editor.


Update helpers.php: new function introduced

dline() Outputs the line where function was called

Please just add this to your own app as you need it.


Gdx.app.exit() does't work on ios!

You never ever exit an app on ios!
But just for completeness the implementation of exit is wrong on iOS.
It should probably call [[NSThread mainThread] exit].

Looking into this it looks like Apple really doesn't want you to force close your application.  This may result in application rejections from the App Store, so we should probably do nothing and follow the guide from Apple. I'll change the implementation to exit, but this should really only be used during testing (even then abort is probably better).


Fix hmm example when run on the GPU

This seems like a recent change (regression?)
In [1]: import torch

In [2]: import numpy as np

In [3]: torch.tensor(np.array([1.]), dtype=torch.float32)
Out[3]: tensor([1.])

In [4]: torch.set_default_tensor_type('torch.cuda.FloatTensor')

In [5]: torch.tensor(np.array([1.]), dtype=torch.float32)
---------------------------------------------------------------------------
RuntimeError                              Traceback (most recent call last)
<ipython-input-5-5b6e0594b346> in <module>()
----> 1 torch.tensor(np.array([1.]), dtype=torch.float32)

RuntimeError: device.has_value() ? device.value().type() == type.device_type() : other.device().type() == type.device_type() ASSERT FAILED at /opt/conda/conda-bld/pytorch-nightly_1543828543801/work/torch/csrc/utils/tensor_new.cpp:94, please report a bug to PyTorch.

Let us not merge this yet. I'm seeing some odd behavior, and don't completely understand why this example is failing.

I have pasted a minimal example above, but I am not sure if this is a regression on the pytorch side.

The PyTorch fix seems to be in dev, I will check with tomorrow's nightly build again.


removed: user mocks from image service test specs

This should clean up #5105, however it seems that there is a localization file that was updated on build. This may need to be removed?

Thanks @thomas-hervey this looks good!  I can rebuild the localization file if needed..

@bhousel if you could rebuild the localization that would be good. After attempting to rebuild, I am not certain why anything was new.

I ended up not needing to rebuild it..
This just happened because we had different versions of the editor_layer_index dependency.  This is possible because it's not a proper dependency with a version number, so npm won't necessarily update it when you do an npm install


[Outlook] (debugging) Document how to debug event-based add-ins in Outlook on Mac

Suggestion to be less mouse-centric if touch input is possible

Thanks for catching this!


Remove dependency on the host machine having a C++ compiler for non-test builds

The Meson configuration will fail if it can't find a C++ compiler on the host machine. Since C++ is only required when building unit tests (for gtest), the build should be able to succeed with only a C compiler when the 'tests' option in meson_options.txt is set to false.

@bendercob Thanks for the suggestion. I think this is easy to do. I'll try to implement this this week.

@bendercob The library has been updated in meson wrapdb. You can check!

Awesome, thanks.


UV anim YCD setting anim constant is glitching out

The original animation in game looks like this: https://imgur.com/l0aq5wm
I tried doing it again using Sollumz but it looks like this: https://imgur.com/b5otpO1
I tried doing everything and finding fixes, maybe checking where I went wrong but I am not sure, all out of options here. If this is an issue with Sollumz UV anim tool, I hope a fix can be found and implemented for it quickly. Thanks.

The action keyframes in Blender should be set every 30 frames if constant interpolation is needed.
If it is still an issue provide the model and ycd.


Get off Travis

TravisCI is no longer freely (as-in-beer) available. Let's switch this project to GitHub actions, as we've done with many others.

Reminder: even after the move, just like Travis did (#422), GitHub Actions should run the tests with all the feature flags switched on.


[BUG] No module or method, attribute in the usage of other repository

Is there an existing issue for this?

[X] I have searched the existing issues

Current Behavior
I'm reproducing the SPVNAS github code.
There are few lines that have issues like below.

train.py # 65 F.set_conv_mode(2)
=> module 'torchsparse.nn.functional' has no attribute 'set_conv_mode'
core.models.utils.py # 38 hashmap = torchsparse.backend.GPUHashTable(hashmap_keys, hashmap_vals)
=> AttributeError: module 'torchsparse.backend' has no attribute 'GPUHashTable'
core.models.utils.py # 26 self._caches.idx_query = dict()
=> AttributeError: 'PointTensor' object has no attribute '_caches'

PointTensor in spvnas inherits torchsparse SparseTensor class, so self._caches must be defined in torchsparse SparseTensor

I've searched the old versions of torchsparse and I could not find the set_conv_mode or GPUHashTable and other methods.
I installed torchsparse from
pip install --upgrade git+https://github.com/mit-han-lab/torchsparse.git
Is there anything I missed on the installation??
Expected Behavior
Examples of the current behavior should act normally.
Environment
- GCC:9.4.0
- NVCC:
Cuda compilation tools, release 11.1, V11.1.105
Build cuda_11.1.TC455_06.29190527_0
- PyTorch: 1.8.2+cu111
- PyTorch CUDA: 11.1
- TorchSparse: 2.0.0b0

Anything else?
No response

@YunsikShin Did you solve the issue? I am facing similar one of the issues
File "torchsparse/nn/modules/conv.pyx", line 99, in torchsparse.nn.modules.conv.Conv3d.forward
File "torchsparse/nn/functional/conv/conv.pyx", line 71, in torchsparse.nn.functional.conv.conv.conv3d
AttributeError: 'SparseTensor' object has no attribute '_caches'

I am having the same issues.
With torchsparse2.0, it looks like we don't have these functions and variables.  Maybe they are included in torchsparse1.4  but I can't download 1.4.

Please install the latest version (v2.1.0) of TorchSparse with python -c "$(curl -fsSL https://raw.githubusercontent.com/mit-han-lab/torchsparse/master/install.py)".


chore(deps): update renovate/renovate docker tag to v35.159.3

This PR contains the following updates:

Package
Update
Change

renovate/renovate
minor
35.158.0 -> 35.159.3

Release Notes

renovatebot/renovate (renovate/renovate)
v35.159.3
Compare Source
Bug Fixes

changelog: remove urls from md heading url (#23112) (8b819dd)
presets: Update @aws-lambda-powertools monorepo url (#23057) (5db88aa)

Miscellaneous Chores

deps: update linters to v5.60.1 (#23119) (6e0b9e4)

Tests

git-refs/git-tags: add types to mocked objects (#23096) (700fa4d)

v35.159.1
Compare Source
Miscellaneous Chores

deps: update github/codeql-action action to v2.20.2 (#23102) (0513797)

Build System

deps: update dependency simple-git to v3.19.1 (#23101) (42dceca)

Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.

[ ] If you want to rebase/retry this PR, check this box

This PR has been generated by Renovate Bot.

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


Adding different Animations to the Animation section

Describe the project you want to add with tech stack

I can add more CSS animation to this project .
Expected behavior

The animations can be used in any project that I will add so it will save time for other project developer , they can just import that animation into their projects .
Screenshots (optional)

Additional context (optional )

I would like to contribute to this issue as a part of @GSSOC'23
Please assign it to me. Thank you.

bro here u have to make issue on your own then you can pull request, Just go through the readme file once.


Can't read the Column name with 'dot'

I am using ExcelDataReader for a WPF project. When I import file (.xlsx, .csv) that column name with ., It didn't show any data. Is this a bug?
e.g. the column filter., it doesn't show any data. I have tested many other files, they are the same.

Hi,
Dots in column name works for me:

Which version of ExcelDataReader are you using? Can you share a file having this problem?

@andersnm I am using the latest version v3.2.0.
The main method looks like this:
`private async void PublishLoadExcelFile()
{
ExcelView = new ExcelViewModel(_eventAggregator);
await Task.Run(() =>
{
var extension = Path.GetExtension(_excelFilePath)?.ToLower();
using (var stream = new FileStream(_excelFilePath, FileMode.Open, FileAccess.Read, FileShare.ReadWrite))
{
IExcelDataReader reader = null;
if (extension == ".xls") // file is old excel file
{
reader = ExcelReaderFactory.CreateBinaryReader(stream);
}
else if (extension == ".xlsx")// file is old excel file (2007 onwards)
{
reader = ExcelReaderFactory.CreateOpenXmlReader(stream);
}
else if (extension == ".csv") // file is old comma separated value
{
reader = ExcelReaderFactory.CreateCsvReader(stream);
}
                // file is not acceptale
                if (reader == null)
                {
                    return;
                }

                using (reader)
                {
                    _ds = reader.AsDataSet(new ExcelDataSetConfiguration()
                    {
                        UseColumnDataType = false,
                        ConfigureDataTable = (tableReader) => new ExcelDataTableConfiguration()
                        {
                            UseHeaderRow = true
                        }
                    });

                }
            }
            ExcelContent = _ds.Tables[0].DefaultView;
            _eventAggregator.PublishOnBackgroundThread(
                        new DatasetImportMessage()
                        {
                            ImportType = DatasetImportTypes.Excel,
                            ExcelViewData = ExcelContent
                        });
        });

    }`

The code looks OK. Maybe try updating to the latest ExcelDataReader version 3.6.0? There's been quite some fixes since 3.2.0.
If that doesn't help, I think we would need an example file to repro the issue.

I just updated to version 3.6.0, It doesn't work. can you please repo the issue?

I was thinking, is this perhaps a WPF databinding issue?
https://stackoverflow.com/questions/13765308/wpf-datagrid-binding-errors-with-dots-in-column-headers
https://stackoverflow.com/questions/8979155/binding-to-fields-containing-a-period-in-datatable-in-c-wpf
Never used WPF, but if you are using WPFs datagrid, then this could be the issue. If so, you need to manipulate the column names before passing the dataset to the datagrid

Thank you,
it is a WPF Datagrid Problem. I just solved it.
andersnm<EMAIL_ADDRESS>于2019年9月3日周二 上午11:01写道：

I was thinking, is this perhaps a WPF databinding issue?
https://stackoverflow.com/questions/13765308/wpf-datagrid-binding-errors-with-dots-in-column-headers
https://stackoverflow.com/questions/8979155/binding-to-fields-containing-a-period-in-datatable-in-c-wpf
Never used WPF, but if you are using WPFs datagrid, then this could be the
issue. If so, you need to manipulate the column names before passing the
dataset to the datagrid
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/ExcelDataReader/ExcelDataReader/issues/427?email_source=notifications&email_token=ACPY2UXHQC3RAESNL5HT673QHYRYNA5CNFSM4ITCP6H2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD5XQYBA#issuecomment-527371268,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ACPY2UWLIPOSQFC6UMGPDS3QHYRYNANCNFSM4ITCP6HQ
.


Refactor visitors and transformers

Visitors: switch to a more commonly used model. Projects like serde or rustc are examples.

This design store data in self. Having a separate context associated type doesn't have much gain. The old context is used for composition instead. With this method, we may add things like per-transformer options in the future.
We no longer use a register pattern, because it's both coding and codegen overhead, and plus that it interleaves visitor execution.

Transformers: self-explanatory additions to revive the transform(Module) entrypoint. Some tautological tests are removed.
ParentTrackingContext: removed because the usage is unknown.

@cmtt Review ping!

@ishitatsuyuki hey, sorry for being quiet here, I'll review this whenever I have a moment!

I would appreciate that. I'm not sure whether I'm motivated now to implement something huge, but given the recent rise in similar interests (e.g.
https://github.com/swc-project/swc), I'll try to look what we can share with them.


chore(master): release 0.27.0

:robot: I have created a release beep boop
0.27.0 (2022-05-29)
Features

versioned search (6865e7c), closes #66

This PR was generated with Release Please. See documentation.

:robot: Release is at https://github.com/easyops-cn/docusaurus-search-local/releases/tag/v0.27.0 :sunflower:


Typo? -> \config\custom_components\indego

Hi,
In the instructions you say to place the indego folder into \config\custom_component\indego
but surely this should be: \config\custom_components\indego

Fixed in develop branch, soon to be commited in the next version.


Read all messages on startup in log compacted topic and exit

I have a Kafka topic with log compaction (partition_key -> values) and in an application I want to read in all the messages present in the topic at startup and exit the loop.
I did the following now:
client = KafkaClient(broker_version="0.11.0")
c = client.topics['mytopic'].get_simple_consumer(
                auto_offset_reset=OffsetType.EARLIEST,
                reset_offset_on_start=True,
                compacted_topic=True)
while True:
        message = c.consume(False)
        if message is not None:
                print message.offset, message.partition_key, message.value
        else:
                break

But it is quite possible that there is a None message before consuming all messages, and then the logic breaks.
Thanks for the help in advance.

@nikhilbiyani None is a valid return value for consume(False) (that is, block=False). Since this call doesn't block, it will return None when its first attempt to find a message from the topic fails. You can either simply ignore None messages or change your call to consume(block=True), which will ensure that you don't get None back except in the case of timeouts. The ideal solution probably incorporates both of these changes.

hi i was wondering if this is the best way to get the latest message for each key in a log-compacted topic.
consumer = topic.get_simple_consumer(compacted_topic=True,
    reset_offset_on_start=True, auto_offset_reset=OffsetType.EARLIEST,
    consumer_timeout_ms=10000)

for message in consumer:
    if message is None:
        break
    # do something with message

It this the right way or we can somehow directly query Kafka for the latest value of each key? If it is, what should the consumer_timeout_ms be set in general?

@willguxy I'm not sure what you mean by "each key" (maybe you're referring to partitions?), but this recipe can get you started on consuming the latest N messages of a topic. As for consumer_timeout_ms, it has no bearing on the starting offset for consumption. See the documentation for more specifics.


register default http server views in example

https://github.com/census-instrumentation/opencensus-go/blob/ae36bd8445ff9cde752c94cf0d4f3f9dced1facc/examples/http/helloworld_server/main.go#L76
Currently its missing a view.Register call for the default views.

Likewise with the client example.


Number answer component

What is the context of this PR?
Added number answer component
How to review
Check against this trello task: https://trello.com/c/u0tK9TDZ/165-add-edit-number-answer-component-3
Check Number component in storybook under "AnswerTypes"
Run tests

 Add/edit number answer component (3)


Make unicode string crate

Draft for CI - no idea if this is the correct approach or not

Codecov Report
Patch coverage: 100.00% and project coverage change: -0.26 :warning:

Comparison is base (6b3425e) 90.33% compared to head (cdf745e) 90.07%.

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #718      +/-   ##
==========================================
- Coverage   90.33%   90.07%   -0.26%
==========================================
  Files         111       82      -29
  Lines       15700    14259    -1441
  Branches      565        0     -565
==========================================
- Hits        14182    12844    -1338
+ Misses       1498     1415      -83
+ Partials       20        0      -20

Flag
Coverage Δ

uitests
?

uitests-ios
?

unittests
90.07% <100.00%> (+1.01%)
:arrow_up:

unittests-ios
?

unittests-rust
90.07% <100.00%> (+<0.01%)
:arrow_up:

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

crates/unicode_string/src/unicode_string.rs
82.59% <ø> (ø)

crates/wysiwyg/src/composer_model/base.rs
93.12% <ø> (ø)

crates/wysiwyg/src/composer_model/code_block.rs
95.80% <ø> (ø)

crates/wysiwyg/src/composer_model/delete_text.rs
97.41% <ø> (ø)

...rates/wysiwyg/src/composer_model/example_format.rs
97.47% <ø> (ø)

crates/wysiwyg/src/composer_model/format.rs
98.20% <ø> (ø)

...s/wysiwyg/src/composer_model/format_inline_code.rs
98.67% <ø> (ø)

crates/wysiwyg/src/composer_model/hyperlinks.rs
98.74% <ø> (ø)

crates/wysiwyg/src/composer_model/lists.rs
96.71% <ø> (ø)

crates/wysiwyg/src/composer_model/mentions.rs
98.46% <ø> (ø)

... and 37 more

... and 30 files with indirect coverage changes

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


Pod rejection errors and unexpected MIG slice counts

When following the Kueue+InstaSlice demo #92, I expect 7 pods to run to completion with no more than 3 pods running at a time to due the configuration of the cluster queue. While I observed no violation of the max concurrency, in many instances I observed a couple of unexpected outcomes:

One or several pods report the status OutOfnvidia.com/mig-1g.5gb with the message Pod was rejected: Node didn''t have enough resource: nvidia.com/mig-1g.5gb, requested: 1, used: 0, capacity: 0
The count of nvidia.com/mig-1g.5gb resources in the node capacity no longer matches the count of org.instaslice/* resources in the node capacity. More specifically the former is lower than the latter and lower than the number of slices required to run pending ungated pods.

This is running Kind 1.31 on rancher desktop 1.15.1 on Sonoma. The demo scenario relies on fake GPUs and InstaSlice emulator mode.

I encounter the same node capacity mismatch issue ( nvidia.com/mig-1g.5gb count vs org.instaslice/* ) on kind 1.30.4:
kind create cluster --image kindest/node:v1.30.4@sha256:976ea815844d5fa93be213437e3ff5754cd599b040946b5cca43ca45c2047114

My suspicion at this point is that in this scenario InstaSlice may destroy the slice intended for a pod right after ungating the pod leading to the 3 scenarios I have observed:

The pod was scheduled and started by the kubelet before the deletion. It appears to run successfully but only because the untimely deletion of the slice does not affect the sleep command running in the pod.
The pod remains pending because the slice has been deleted before the scheduler had a chance to schedule the pod.
The pod was scheduled but the kubelet reports an error because the slice was gone in-between the scheduler scheduling and the kubelet doing its thing.

In these emulated scenarios, the creation/deletion of the slice boils down to the addition and removal of one unit of the MIG resource in the node capacity.

/cc @sairameshv

Thanks for this issue. scenario 2 can be reproduced and we have a PR for it #99. Scenario 3 could result from dangling org.instaslice resource on the node which is causes emulator to perform excessive deletes

Solved by #121

With new design changes, I am not sure if this issue is valid


fix typos in debugger code

JerryScript-DCO-1.0-Signed-off-by: Geoff Gustafson<EMAIL_ADDRESS>

Mostly English, but one constant I think was wrong?

Nothing important, just things I noticed while reviewing the debugger code recently.

LGTM


Restore installing SciPy from defaults instead of conda-forge on public CI

This fixes fetching SciPy from defaults instead of conda-forge, now that a suitable SciPy 1.9 has become available.
This is a partial revert of #8413 since only the changes for the public ci build scripts, that pertain to the installation of SciPy are included.

there are merge conflict

@sklam @stuartarchibald I opted to rebase onto main in this case, since the change was quite short and no comments had been made. This will need a re-review now.


Guacamole extension should pass an access-token to the TRE API rather than id-token

Description
As a Azure TRE Developer
I want to pass the access token to the underlying API
So that the authentication is according to best practices
on top of that, if needed, refresh tokens support may be added (today they are not supported) - Issue #1110 .
Acceptance criteria

[ ] id token is received at first
[ ] id token is validated, only continue if token itself is valid + all required scopes/aud/etc is valid and matching (exists today)
[ ] only if validated. an access token is requested (whether via OBO flow, code flow or other - need to choose best suitable)
[ ] access token is sent to the TRE API
[ ] if needed, fix TRE API to support the new token (probably not needed)

Technical notes:

Today we are using the openid extension which is using the implicit grant flow to provide an id_token
the open id extension is loading first (either configuration or alphabetically)
redirected back to guacamole with the id_token
Can't use another implicit grant to get the access token as it will create an infinite loop. on top of that, implicit grant can't be used to refresh token and also are not supported for browsers with 3rd party cookies blocked
Need to see if the openid extension can be used with OBO flow
another option is to avoid using the openid extension and implement the complete flow
Last point, need to verify that without issuing refresh token, guacamole does disconnect after a period of time

@eladiw can this be closed now that we moved to the oauth2-proxy?

@eladiw can this be closed now that we moved to the oauth2-proxy?

yes


KMO based Matcher

After reading your article and code, I am interested in the part of Matcher, but I do not find KMO based Matcher in the code. Is it in the module or something else?

Yes, I can also only see the basic L1 implementation of the matcher.

@dk-liang: Can you also provide a KMO-based mather in order to reproduce the results in new publications?

@ds2268 Did you get KMO-based matcher? I can't find it in this repository...

I met the same problem. Did you solve it?

Yes, I can also only see the basic L1 implementation of the matcher.

I met the same problem. Did you solve it?

Yes, I can also only see the basic L1 implementation of the matcher.

No.. not yet 🤣

All right... That is，it feels like this paper just moved DETR to the crowd counting task，without any other greater improvements😵💫
---- Replied Message ----
| From | @.> |
| Date | 07/10/2023 22:41 |
| To | dk-liang/CLTR @.> |
| Cc | @.>,
Comment @.> |
| Subject | Re: [dk-liang/CLTR] KMO based Matcher (Issue #5) |
I met the same problem. Did you solve it?
Yes, I can also only see the basic L1 implementation of the matcher.
No.. not yet 🤣
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you commented.Message ID: @.***>

All right... That is，it feels like this paper just moved DETR to the crowd counting task，without any other greater improvements😵💫 ---- Replied Message ---- | From | @.> | | Date | 07/10/2023 22:41 | | To | dk-liang/CLTR @.> | | Cc | @.>, Comment @.> | | Subject | Re: [dk-liang/CLTR] KMO based Matcher (Issue #5) | I met the same problem. Did you solve it? Yes, I can also only see the basic L1 implementation of the matcher. No.. not yet 🤣 — Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you commented.Message ID: @.***>

I agree, this paper only use conditional DETR without bounding boxes and class information. I think a main novelty is the KMO matcher, but they didn't open this as a open source :(

Well. thank you for replying and communicating together
---- Replied Message ----
| From | @.> |
| Date | 07/10/2023 22:53 |
| To | dk-liang/CLTR @.> |
| Cc | @.>,
Comment @.> |
| Subject | Re: [dk-liang/CLTR] KMO based Matcher (Issue #5) |
All right... That is，it feels like this paper just moved DETR to the crowd counting task，without any other greater improvements😵💫 ---- Replied Message ---- | From | @.> | | Date | 07/10/2023 22:41 | | To | dk-liang/CLTR @.> | | Cc | @.>, Comment @.> | | Subject | Re: [dk-liang/CLTR] KMO based Matcher (Issue #5) | I met the same problem. Did you solve it? Yes, I can also only see the basic L1 implementation of the matcher. No.. not yet 🤣 — Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you commented.Message ID: @.***>
I agree, this paper only use conditional DETR without bounding boxes and class information. I think a main novelty is the KMO matcher, but they didn't open this as a open source :(
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you commented.Message ID: @.***>


Remove unused Incr ++ and Decr ++

While fixing #526, I found that token.Incr and token.Decr are used in lexer.go while increment/decrement operators are unused.
// compiler/token/token.go
	Incr     = "++"
	Decr     = "--"

I'd like to remove them when fixing  #526. If @st0012 has any plan to use them, please let me know.

@hachi8833 They will not be used again, plz drop them, thx


Add max connection to variable

should be able to change the max connection

@dtantsur
it uses about 1000EA bare metal nodes.
so it would be nice to have a max connection option variable.

You're also changing the default, is it intended? I assume it's going to increase the RAM usage.

@dtantsur
it's no significant increase in memory usage in the dev environment.
before
kubectl top -n test po metal3-ironic-6fddcb67ff-d8466
NAME                             CPU(cores)   MEMORY(bytes)
metal3-ironic-6fddcb67ff-d8466   17m          352Mi

after
kubectl top -n test po metal3-ironic-645cf85dcc-khkn7
NAME                             CPU(cores)   MEMORY(bytes)
metal3-ironic-645cf85dcc-khkn7   83m          355Mi

I'm not a huge mysql specialist, but putting 1024 in http://www.mysqlcalculator.com/ gives me a huge increase. I'm okay with returning to the mysql default of 150 (which already adds 200M of RAM according to the calculator), but not to such a huge value.


Fix minimal versions dependencies

The CI job I added in this PR is something I try to run on all my crates as well. It's something that catch if the crate (or a transitive dependency) has under-specified a dependency.
cargo +nightly update -Z minimal-versions downgrades the entire dependency tree to the lowest allowed versions according to all the dependency semver specs in their Cargo.toml files.
It's very common to just add foo = "0.3" manually and then write code and run. Not realizing cargo automatically pulls in the latest version at the time. That might be foo 0.3.8 and you might unknowingly depend on features introduced in foo 0.3.4. A CI check like this makes sure you don't under-specify version requirements like that.
I found this because I depend on trycmd and this became an error with filetime. See this CI run: https://github.com/mullvad/unicop/actions/runs/9709586296/job/26798567031?pr=2. You depend on filetime::set_file_mtime, but that was introduced in filetime 0.2.6. However, I had to bump the version even further, because filetime did not build with minimal versions until 0.2.8.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>
Details

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

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
1390

Relevant Lines:
2691

💛  - Coveralls

Pull Request Test Coverage Report for Build<PHONE_NUMBER>
Details

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

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
1390

Relevant Lines:
2691

💛  - Coveralls

Looks like a dep has a minimal-versions problem

Looks like a dep has a minimal-versions problem

Ok. Crap. We'll see when I have time to submit the same to them then.

Fixed. There were two more crates in this dependency tree which did not specify their dependencies correctly at their oldest versions allowed by this crate. But all of them had fixed the issue in newer versions. So just bumping the minimum version here in this repository fixes the issue.
Arguably those crates should also have a minimal-versions CI job. But they currently have no issue with this, and I don't currently have the time to submit that upstream :)

btw why did this matter and why was this started off with --all-targets?
In theory, minimal versions is only relevant for dependents, and not yourself.  We could lower the ecosystem burden of adopting this by leaving off the --all-targets flag and only checking default targets.

--all-targets was put there to catch invalidly specified dependencies used in examples and tests etc as well as the main library/binary code.
How much of a burden do you regard this CI check to be to adopt? I don't think it's very hard at all to keep the dependencies well specified, once this check is in place. And when adopting this CI job it's very easy to fix any existing issues. The only time it's a real problem is if a dependency you depend on have made the same error. But then it's only luck if that dependency happens to be a dev dependency instead of a prod dependency and you ignore checking dev dependencies by leaving out --all-targets.
I personally find it does not simplify things a lot to remove --all-targets but instead it makes the CI checked miss what it was supposed to uphold.

From my understanding, the primary value add of verifying version requirements is for people who depend on you.  I'm not seeing the value for tests and examples.
However, I'm much more free with my dev-dependencies than other dependencies and by excluding dev-dependencies, it reduces the number of people I have to bug or workaround to make this work as I adopt it across all of my projects.

I see your point. If you write a library, keeping everything neat and tidy for your own project's sake vs keeping it correct for your consumers are two different things. However it's still objectively wrong to say [dev-dependency] foo = "0.2" if your tests use features in foo 0.2.3. However, I can agree that this error is not likely to cause much trouble in practice. And as you say, if/while the ecosystem often commit these crimes, it's going to inflict a bit more pain on you downstream, the more dependencies you strictly check for this correctness property.
On the other hand, checking stricter and actively pushing these CI jobs upstream (like I just did) will spread it faster :shrug:
I don't have a very strong opinion about dev-dependencies. But I do think we should push for this being a more standard CI check in general. Would be great if it could be stabilized, so nightly is not required.

Would it be possible to get a release of trycmd? Since the latest version on crates.io still depend on snapbox ^0.6.0, which has the minimal-versions issue, my minimal-versions CI fail. Thank you :blush:

Released

FWIW, I found this discussion very enlightening. Thank you, @faern! Thank you, @epage!


Is there a way to limit the Web3Enable method to open only polkadot.js extention not any injected extension

I am using two wallets, polkadot.js and sporan at the same time and i am tesitng my new Daap that uses the built in Web3Enable method to enable wallets. when calling that method i get both wallets extensions popups, is there a way to only enable a specific wallet extension ?

web3Enabke triggers all compatible wallets.

@jacogr is there a way to make not do that ?

If this is useful, PRs that don't break backward compatibility always welcome.

@moda20 we are using https://github.com/TalismanSociety/talisman-connect to solve this issue. getWallets() fetches the available extensions only, whereas getWalletBySource(wallet_name) followed by enable() connects to that particular extension only - and this is when the pop-up happens.
We also recently had a PR merged for Polkadot JS API that allows us to fetch addresses for an array of extensions. This is quite useful but does not stop the multi-popup issue alone.
Any queries with implementation please let me know. We use this for the staking dashboard: https://github.com/paritytech/polkadot-staking-dashboard/pull/64


config.ml edit to align with github changes

fixes #406

Thanks Vasilis. I fixed this fully at https://github.com/barryclark/jekyll-now/pull/445 as the Kramdown/Rouge changes broke syntax highlighting.


Preparation of meeting and guide for constitutive equation of the orthotropic layer in the arrangement long fibers and in the rotated arrangement

The following actions are to do, in order to prepare the meeting and the guide:

[x] #1032

[x] #1033

[x] #1034

All done.


.tmc-autocomplete.sh should store opts on the disk instead of running tmc

source $HOME/.tmc-autocomplete.sh makes starting a new shell take up several seconds. Running the JVM every time you start a shell is not a good idea at all.

Also, if tmc is not found, the script hangs and you won't be able to run the shell at all.

The problem most likely is that the tmc tries to auto update. It was fixed in commit 214f880 .

If the tmc doesn't exist. The bash script prints the following on my machine.
bash: ~/tmc-cli/tmc: No such file or directory
I think we should hide any error messages from it.

Yes, that seems to have been fixed in the master branch - I was using the latest release. Might be a good idea to draft a new one.
That being said, even with the latest version tmc still adds a short but noticeable delay when starting a new shell. Probably no big deal for anyone with a sufficiently powerful machine, but I think it would still be best if .tmc-autocomplete didn't run any Java code. Users with toasters may end up having to wait a few seconds. I keep the source line in my .bashrc commented when I'm not actively using it to speed it up.

Yeah It's probably pretty easy to just dump the new commands into a file in the auto-update code. I will look into it.


add onnx version for toxicity and topic models

Add onnx versions for toxicity and topic metrics
This assumes a local folder with the onnx model artifacts:

toxic-comment-model-onnx
xtremedistil-l6-h256-zeroshot-v1.1-all-33-onnx (default model set to the quantized version)

The use is exactly the same, but importing topic_onnx and toxicity_onnx instead of the original metrics.

Closing this as this was included in other commits


Add/Update Information on Events

Description Of Changes
This updates the flyout information for both recurring Livestreams as
well as information about new upcoming webinar. This also adds a top
alert banner that drives users to the new webinar page.
Motivation and Context
We have new event times and a event that need updated.
Testing
Operating Systems Testing
Change Types Made

[ ] Bug fix (non-breaking change).
[x] Feature / Enhancement (non-breaking change).
[ ] Breaking change (fix or feature that could cause existing functionality to change).
[ ] Documentation changes.
[ ] PowerShell code changes.

Change Checklist

[ ] Requires a change to the documentation.
[ ] Documentation has been updated.
[ ] Tests to cover my changes, have been added.
[ ] All new and existing tests passed?
[ ] PowerShell code changes: PowerShell v2 compatibility checked?

Related Issue

https://github.com/chocolatey/img/pull/6
https://github.com/chocolatey/chocolatey.org/pull/293

Results will look similar to the below screenshots. Note that the "Learn More" button on the webinar listing will actually be an outlined button (this was fixed after noticing it was wrong in the screenshot).


Passing shorthand margin as a prop throw an error on react-native

Version
1.3.0
Steps to reproduce
Create an element as in the example below and pass a margin prop to it with a string inside.
const Styled = styled.View`
    margin: ${props => props.margin};
`;

<Styled margin="50 0" />

As a workaround you can call the prop m, ex: <Styled m="50 0" /> and it will work fine.
Expected Behavior
Should work as expected as a margin shorthand
Actual Behavior
Throw an error JSON value '50 0' of type NSString cannot be converted to NSNumber

@dbertella I think thats react native related, it doesn't expect string there, but wants numbers 50 0 in your case you could margin={50} and apply it as margin-right / margin-left a bit annoying, as margin={50 0} is invalid :/

I know, but if you pass the props with another name ex m instead of margin it will work fine.
That's the thing that bugged me.

This is a bug in css-to-react-native, mind submitting an issue there? /cc @styled-components/css-to-react-native

I’m not so sure. I think what’s happening here is that the props used within the component are also passed down to the <View>.
React Native passes styles down as direct props, so <View style={{ margin: 50 }} /> is (unofficially) the same as <View margin={50} />.
Effectively, we’re getting <View style={{ marginTop: 50, marginRight: 0, marginBottom: 50, marginLeft: 0 }} margin="50 0" />. React Native is trying to convert margin, which it can’t.

That's what I thought! I wanted to try it with other css properties but I
didn't have time!
On 24 Jan 2017 20:27, "Jacob Parker"<EMAIL_ADDRESS>wrote:

I’m not so sure. I think what’s happening here is that the props used
within the component are also passed down to the .
React Native passes styles down as direct props, so <View style={{
margin: 50 }} /> is (unofficially) the same as .
Effectively, we’re getting <View style={{ marginTop: 50, marginRight: 0,
marginBottom: 50, marginLeft: 0 }} margin="50 0" />. React Native is
trying to convert margin, which it can’t.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/styled-components/styled-components/issues/403#issuecomment-274928398,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ACccfOigBQJ4CPD5mX7MrABiPPBxUgCuks5rVl67gaJpZM4LrHy2
.

Apparently it's an hidden feature in react-native this morning I tried this <View margin={5} padding={80} borderWidth={10} backgroundColor="red"> and it's working fine as I was adding those styles inlines. I guess it's not a library's related issue then, should we close it?

It is a library issue. There’s currently very limited support distinguish between props used for styling (which should not be passed down to the target component), and props for the target component.  The current logic is to filter out all non-DOM props for DOM elements.
However, all other elements will have both the props intended for the component and styling props passed down.

I think I found out what the problem is. View component has this possible Layout props https://facebook.github.io/react-native/docs/layout-props.html#props. I'm not sure you can filter them out and if it's what the final user always want though.

The layout props are intended to be used within in styles. It's just a quirk of React Native that they’ll sometimes work when used as direct props.
I’m pretty certain it’s a bug here. Regardless of the behaviour of RN, there will be other components this can affect.

Opened issue on RN: https://github.com/facebook/react-native/issues/12469

@mxstbr any updates on this?

@jacobp100 Any ideas on possible fixes?

It's hard, because you're ultimately going to have to make a trade-off between developer friendliness and correctness.
One suggestion would be for the developer to define propTypes on their component, and then we only pass on the properties outside of the defined propTypes.
const StyledView = styled(View)`
  margin: ${props => props.margin};
`

StyledView.propTypes.margin = PropTypes.string

@jacobp100 Assuming that the upstream issue is not a bug, shouldn't styled-components match all props with LayoutProps and apply a css-to-react-native transform before passing them to the underlying component?

I'm not sure that addresses the fundamental issue.

It blew my mind to discover that layout props were actually props and not just styles. I came across an issue trying to set position shorthands in my library with an array. I am able to pass shorthands using arrays still for margin and padding like so:
 <View margin={[2,4]} />

but not for position, because position is type-checked for the enum ["absolute", "relative"] or [0,1]. But that's just in my library. Don't know if that kind of thing is even worth trying here.

There seem to be only 2 possible solutions at the moment:

styled-componenets asks developers to explicitly declare what props their component depends on and not passing those particular props to the underlying component that gets styled.
Apply transformations to all props that are style props and are type checked by react-native (e.g. margin, padding etc.) before passing them to the underlying component.

Implementing 2 would involve figuring out an exhaustive list of such props that are typechecked and maintaining it as new props are added upstream. 1 looks more foolproof and maintainable that way.

I thought of another way of defining properties in effectively the same way as my last comment. It mostly saves typing.
const DynamicStyles = styled.div`
  @property color, margin;

  color: ${props => props.color};
  margin: ${props => props.margin};
`

@jacobp100 how would you go about defining styles based on a non style prop.
const DynamicStyles = styled.div`
@property propMyComponentNeedsToRender, margin;
color: ${props => (props.propMyComponentNeedsToRender === 'a' ? : '#000000' : '#ffffff')};
margin: ${props => props.margin};
`
if propMyComponentNeedsToRender is not passed to underlying component, it will break. If it is, then we have the same problem we started out with.

Moving discussion to #439

@IljaDaderko
RN docs https://facebook.github.io/react-native/docs/layout-props.html#margin
It accepts string. At least it should.

Ya it accepts things like "5%" and "auto"


[msal-common] Fix issue where extraScopesToConsent was not appending scopes correctly

This PR fixes an issue where scopes passed with extraScopesToConsent would not be added in a trimmed and lower-case format.

Coverage decreased (-0.004%) to 79.246% when pulling b8323fcb93ff258349d4b8ba46bdfbd95df66597 on extrascopes-append-error-2.0 into bcc1ebfba67af8c9e265a8c9655f850b1463c09d on dev.


Backward motions (TF) are not repeated in a clever-f style

Ok, I should repeat with f, but not with F


Thirdperson option being enabled causes CSGO to crash upon loading any map.

All other options seem to work fine except for thirdperson. Thank you for the quick fix before on the previous update!

tracers also crashes the game from my experience. I had one other crash since then and will continue to test more features later.


Is there any document about the functions in the cblas.h?

I need a matrix dot product function and a function to get a sum of elements in the same col, but I can't find those functions···please help me···
我需要一个矩阵点乘以及一个求矩阵每行所有元素和的函数，然而并没有找到他们，向大家求助，感激不尽

OpenBLAS is for the most part "just" an optimized implementation of the standard BLAS library, so the
official documentation for that one at http://netlib.org/blas/index.html still applies. CBLAS on the other hand is just an interface that allows calling these FORTRAN functions from C with its different conventions for argument passing and array ordering.

Level 1 BLAS _dot function takes incx parameter and can make sums you need from a matrix, or you transfrom matrix and do same with incx=1, you need to measure which is faster. It is mostly memory -bound, which means parallelisation will not have big impact.

thanks  a lot !


Feature Request - Add more than 2 Filter preset on Main page

The main page only displays the first 2 filter of Playnite's filter presets.
Going in 'All Games' while full screen displays all the filter presets.
I understand the theme is meant to be an as close as possible replication of the PS5 UI but it would be nice to have this functionality implemented as an optional customization.

The sense of the theme is to be 1: 1 equal to the ps5 dashboard that's why there are only two filters on the home screen

An option will be added in the next release of the theme and DKG Theme Modifier to enable all Filter Presets on the Main screen.


Unable to start network with more than 9 nodes

Unable to start a new node after 9 nodes have been generated / started.
Think this is due to the fact that after 9 , the port numbers of the nodes created are incorrect and hence unable to start the node.
Below is an error message from a Jenkins run when starting a 10th node.
https://jenkins.ops.vega.xyz/job/common/job/system-tests-wrapper/31480/artifact/testnet/logs/testnet-nodeset-full-10-full/vega-full-10.stderr-2022-11-30T16%3A14%3A30Z.log/*view*/
This implies that the port number that was assigned to the tendermint for the 10th node to be 266106 , whereas the correct port number would be 26706

We are going to redesign port allocation, but to avoid breaking changes in ports we i will use the following rules:

Here is a table illustrating how ports are computed:


[error] Error: EISDIR: Angular v17 using esbuild

🐞 Bug report
Command
build
Is this a regression?

[x] Yes, this behavior used to work in the previous version

The previous version in which this bug was not present was
16
Description
When opting for the es-build feature over webpack. An exception occurred which does not have any context. This is unacceptable. It should at least print out on which file or directory the error occurred.
I simply change this in my angular.json file.
Fails:
"builder": "@angular-devkit/build-angular:browser-esbuild",

Works:
builder": "@angular-devkit/build-angular:browser",

Minimal Reproduction
ng build --configuration production --verbose

output:
> project<EMAIL_ADDRESS>build
> ng build --configuration production --verbose

⠙ Building...

  polyfills-LZBJRJJE.js  32.7kb

⠇ Building...

  chunk-2FFGP3PS.js  993.4kb
  chunk-RCON6BW6.js  652.2kb
  main-HGXVCJ3H.js    59.1kb
  chunk-6BA7RJO3.js   31.1kb
  chunk-ZZLLJRB6.js   20.3kb
  chunk-2HU5B4AX.js   19.5kb
  chunk-4KKN7QDQ.js   14.4kb
  ...and 9 more output files...

An unhandled exception occurred: EISDIR: illegal operation on a directory, read
See "C:\Users\DOMINI~1\AppData\Local\Temp\ng-mDUayD\angular-errors.log" for further details.

Exception or Error
An unhandled exception occurred: EISDIR: illegal operation on a directory, read
See "C:\Users\DOMINI~1\AppData\Local\Temp\ng-mDUayD\angular-errors.log" for further details.

Content:

[error] Error: EISDIR: illegal operation on a directory, read

Your Environment
Angular CLI: 17.0.7
Node: 20.10.0
Package Manager: npm 10.2.5
OS: win32 x64

Angular: 17.0.7
... animations, cli, common, compiler, compiler-cli, core, forms
... platform-browser, platform-browser-dynamic, router

Package                         Version
---------------------------------------------------------
@angular-devkit/architect       0.1700.7
@angular-devkit/build-angular   17.0.7
@angular-devkit/core            17.0.7
@angular-devkit/schematics      17.0.7
@angular/cdk                    17.0.4
@schematics/angular             17.0.7
rxjs                            7.8.1
typescript                      5.2.2
zone.js                         0.14.2

Anything else relevant?
No response

Can you please provide the full contents of the error log including the stacktraces and also the build section of yopur angular.json configuration?

angular.json
{
"builder": "@angular-devkit/build-angular:browser-esbuild",
"options": {
	"outputPath": "./dist/frontend",
	"index": "./src/index.html",
	"main": "./src/main.ts",
	"polyfills": "zone.js",
	"tsConfig": "tsconfig.app.json",
	"assets": ["./src/favicon.ico", "./src/assets"],
	"styles": [
		"./src/styles.css",
<EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS>		"node_modules/ngx-toastr/toastr.css",
		"node_modules/ngx-spinner/animations/ball-clip-rotate.css"
	],
	"allowedCommonJsDependencies": ["flat"],
	"scripts": []
}

Can you please provide the full contents of the error log including the stacktraces and also the build section of yopur angular.json configuration?

I already provided the full error log?!
Error
An unhandled exception occurred: EISDIR: illegal operation on a directory, read
See "C:\Users\DOMINI~1\AppData\Local\Temp\ng-mDUayD\angular-errors.log" for further details.

Content:

[error] Error: EISDIR: illegal operation on a directory, read

it is strange that there is no stack trace. Do you have any sort of non alphanumeric characters in the path? Unfortunately, I was not able to reproduce with the steps and information provided above.

Do you have any sort of non alphanumeric characters in the path or symlinks?

no
You have another idea why there is no stack trace?

C:\USERS\DOMINIC WREGE\CODE\PROJECTXY\SRC
├───app
│   ├───components
│   │   └───app
│   └───state
├───app-auth-layout
├───applications
│   ├───components
│   │   ├───application-create
│   │   ├───application-detail
│   │   ├───application-form
│   │   └───applications
│   ├───resolvers
│   ├───services
│   └───state
├───assets
│   └───img
├───core
│   ├───components
│   │   └───call-back
│   ├───directives
│   ├───services
│   └───validators
├───environments
├───generic-table
│   └───components
│       └───generic-table
├───groups
│   ├───components
│   │   ├───group-detail
│   │   ├───group-list
│   │   └───group-locked-cell
│   ├───resolvers
│   ├───services
│   └───state
├───home
│   ├───components
│   │   └───home
│   └───state
├───instances
│   ├───components
│   │   ├───system-instance-create
│   │   ├───system-instance-detail
│   │   ├───system-instance-form
│   │   └───system-instances
│   ├───resolvers
│   ├───services
│   ├───state
│   └───validators
├───login
├───models
├───permission
│   ├───components
│   │   └───permission-overview
│   └───services
├───user
│   ├───components
│   │   ├───user-create
│   │   ├───user-details
│   │   ├───user-form
│   │   ├───user-list
│   │   └───user-locked-cell
│   ├───resolver
│   ├───state
│   └───validators
└───utils

So the reason why there is no stacktrace is a known Node.js issue https://github.com/nodejs/node/issues/30944
What you can try is:
npm install trace
node --stack_trace_limit=100 -r trace<EMAIL_ADDRESS>build

Now i have this stack trace:
[error] Error: EISDIR: illegal operation on a directory, read
    at emitInitNative (node:internal/async_hooks:202:43)
    at emitInitNative (node:internal/async_hooks:202:43)
    at emitInitScript (node:internal/async_hooks:505:3)
    at promiseInitHook (node:internal/async_hooks:324:3)
    at promiseInitHookWithDestroyTracking (node:internal/async_hooks:328:3)
    at runCommand (C:\Users\Dominic Wrege\source\org\Identity\projectxy\node_modules\@angular\cli\src\command-builder\command-runner.js:26:26)
    at default_1 (C:\Users\Dominic Wrege\source\org\Identity\projectxy\node_modules\@angular\cli\lib\cli\index.js:70:54)
    at C:\Users\Dominic Wrege\source\org\Identity\projectxy\node_modules\@angular\cli\lib\init.js:140:25
    at emitInitNative (node:internal/async_hooks:202:43)
    at emitInitScript (node:internal/async_hooks:505:3)
    at promiseInitHook (node:internal/async_hooks:324:3)
    at promiseInitHookWithDestroyTracking (node:internal/async_hooks:328:3)
    at Promise.then (<anonymous>)
    at Object.<anonymous> (C:\Users\Dominic Wrege\source\org\Identity\projectxy\node_modules\@angular\cli\lib\init.js:140:6)
    at emitInitNative (node:internal/async_hooks:202:43)
    at emitInitScript (node:internal/async_hooks:505:3)
    at promiseInitHook (node:internal/async_hooks:324:3)
    at promiseInitHookWithDestroyTracking (node:internal/async_hooks:328:3)
    at C:\Users\Dominic Wrege\source\org\Identity\projectxy\node_modules\@angular\cli\lib\init.js:50:2
    at Object.<anonymous> (C:\Users\Dominic Wrege\source\org\Identity\projectxy\node_modules\@angular\cli\lib\init.js:139:3)
    at Module._compile (node:internal/modules/cjs/loader:1376:14)
    at Module._extensions..js (node:internal/modules/cjs/loader:1435:10)
    at Module.load (node:internal/modules/cjs/loader:1207:32)
    at Module._load (node:internal/modules/cjs/loader:1023:12)
    at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:135:12)
    at node:internal/main/run_main_module:28:49

Does the error happen when running ng build --configuration=production --no-optimization?

Running:
 node --stack_trace_limit=100 -r trace<EMAIL_ADDRESS>build --configuration=production --no-optimization

The stack trace is identical.

Looking at the stack trace, this looks kind of odd:
at Module._extensions..js (node:internal/modules/cjs/loader:1435:10)

That's just node.js internal modules. Unfortunately however the stacktrace is not helpful as it doesn't indicate the origin.
I am suspecting it's something related to the assets, can you try to remove the assets array?

With:
"build": {
    "builder": "@angular-devkit/build-angular:browser-esbuild",
    "options": {
        "outputPath": "./dist/frontend",
        "index": "src/index.html",
        "main": "src/main.ts",
        "polyfills": "zone.js",
        "tsConfig": "tsconfig.app.json",
        "assets": [],
        "styles": [],
        "allowedCommonJsDependencies": [],
        "scripts": []
    },

No Change. Yes, the error also happens. The stack trace is identical.

I see you also removed the styles option. Is there a way you could share the project even privately, as it would definitely be faster to get to the bottom of this.

Okay, I will email you with a link to the code.

The problem appears to be caused because the index is set to an empty string in the production config. If you'd like to disable index generation. Set it to false instead of an empty string.

Yes, that was the issue. Thanks for your help and patience.

It would be nice to have this index boolean option mentioned somewhere in the docs.
The only thing I found was this.
https://angular.io/guide/workspace-config#index-configuration
or
https://angular.dev/reference/configs/workspace-config#index-config

Agreed and we should provide a better error in this case

commit: https://github.com/angular/angular-cli/commit/ceffafe1a3c8cad469b718e466e771e1d396ab14


Skip cache logic when mode is no-store

We were still running all the cache logic when mode is no-store. This PR changes it to skip the whole cache logic when this mode is specified.
This change means we are not reading from cache anymore in this mode. Technically, the "no-store" only signals "don't write", not necessarily "don't read and return an existing cached response". But I think this might be OK?
Or should we keep reading (checking for existing responses) and only skip writing? That would only be useful when the mode changes across requests depending on some condition... not sure if this would ever be desired.
Checklist

[ ] I've read the Contributing Guidelines
[ ] I've considered possible cross-platform impacts (Mac, Linux, Windows)
[ ] I've added a changeset if this PR contains user-facing or noteworthy changes
[ ] I've added tests to cover my changes
[ ] I've added or updated the documentation

I think this is a good chance. Also cache checks are a sub-request from CF's perspective, so essentially every storefront sub-request results in at least two sub-requests. With this change, no cache check means no extra sub-request.

Merging this for now 👍