Fix: Use different fallback receipt icon when displaying a Search row that has no receipt and isn't editable

Details

Fixed Issues
$ https://github.com/Expensify/App/issues/44240
PROPOSAL: https://github.com/Expensify/App/issues/44240#issuecomment-2186596927
Tests

Open Expensify App
Go to Search
In the receipt column, verify that:

If the report has a receipt, the receipt preview is shown
If the report has no receipt and is open/submitted then the "Receipt Plus" icon is shown
If the report has no receipt and is settled then the "Receipt Slash" icon is shown

[x] Verify that no errors appear in the JS console

Offline tests
Same as Tests step
QA Steps
Same as Tests step
PR Author Checklist

[x] I linked the correct issue in the ### Fixed Issues section above
[x] I wrote clear testing steps that cover the changes made in this PR

[x] I added steps for local testing in the Tests section
[x] I added steps for the expected offline behavior in the Offline steps section
[x] I added steps for Staging and/or Production testing in the QA steps section
[x] I added steps to cover failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[x] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)
[x] I tested this PR with a High Traffic account against the staging or production API to ensure there are no regressions (e.g. long loading states that impact usability).

[x] I included screenshots or videos for tests on all platforms
[x] I ran the tests on all platforms & verified they passed on:

[x] Android: Native
[x] Android: mWeb Chrome
[x] iOS: Native
[x] iOS: mWeb Safari
[x] MacOS: Chrome / Safari
[x] MacOS: Desktop

[x] I verified there are no console errors (if there's a console error not related to the PR, report it or open an issue for it to be fixed)
[x] I followed proper code patterns (see Reviewing the code)

[x] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick)
[x] I verified that the left part of a conditional rendering a React component is a boolean and NOT a string, e.g. myBool && <MyComponent />.
[x] I verified that comments were added to code that is not self explanatory
[x] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing.
[x] I verified any copy / text shown in the product is localized by adding it to src/languages/* files and using the translation method

[x] If any non-english text was added/modified, I verified the translation was requested/reviewed in #expensify-open-source and it was approved by an internal Expensify engineer. Link to Slack message:

[x] I verified all numbers, amounts, dates and phone numbers shown in the product are using the localization methods
[x] I verified any copy / text that was added to the app is grammatically correct in English. It adheres to proper capitalization guidelines (note: only the first word of header/labels should be capitalized), and is either coming verbatim from figma or has been approved by marketing (in order to get marketing approval, ask the Bug Zero team member to add the Waiting for copy label to the issue)
[x] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
[x] I verified the JSDocs style guidelines (in STYLE.md) were followed

[x] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[x] I followed the guidelines as stated in the Review Guidelines
[x] I tested other components that can be impacted by my changes (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar are working as expected)
[x] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[x] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[x] I verified that if a function's arguments changed that all usages have also been updated correctly
[x] If any new file was added I verified that:

[x] The file has a description of what it does and/or why is needed at the top of the file if the code is not self explanatory

[x] If a new CSS style is added I verified that:

[x] A similar style doesn't already exist
[x] The style can't be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(theme.componentBG))

[x] If the PR modifies code that runs when editing or sending messages, I tested and verified there is no unexpected behavior for all supported markdown - URLs, single line code, code blocks, quotes, headings, bold, strikethrough, and italic.
[x] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[x] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
[x] If the PR modifies a component or page that can be accessed by a direct deeplink, I verified that the code functions as expected when the deeplink is used - from a logged in and logged out account.
[x] If the PR modifies the UI (e.g. new buttons, new UI components, changing the padding/spacing/sizing, moving components, etc) or modifies the form input styles:

[x] I verified that all the inputs inside a form are aligned with each other.
[x] I added Design label and/or tagged @Expensify/design so the design team can review the changes.

[x] If a new page is added, I verified it's using the ScrollView component to make it scrollable when more elements are added to the page.
[x] If the main branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to the Test steps.

Screenshots/Videos

Android: Native

Android: mWeb Chrome

iOS: Native

iOS: mWeb Safari

MacOS: Chrome / Safari
https://github.com/user-attachments/assets/f231aa27-c16b-4272-b967-336ced5ede6e

MacOS: Desktop

My mac stopped working a few days ago, just got it back from repair. Working on Finalizing this PR! Sorry for the delay! 🙇

@s77rt PR is ready for your review!
Noting one thing, The pay someone flow in app seems to have a problem on main where the request is marked Submitted instead of Reimbursed, making isSettled calculation false
Image

I've been trying to debug the root cause and the optimistic data is fine. The bug seems to be with how Onyx is managing the BE responses. @bernhardoj also observed the same thing when debugging a similar issue (with connected root cause) here

What's the status on this one @neonbhai ?

@neonbhai Any updates on this?

Apologies for the delay 🙇 bought and setup a new pc
PR is ready for review!
Noting that when using a high traffic account not all reports are loaded in Onyx, this makes the report status checks incorrect (as it is null)
https://github.com/user-attachments/assets/59133eaf-09d5-4caa-882e-c8ce184f8c84
The icon updates after we click on it and the report is loaded. Simultaneously allReports length increases as a new report is loaded
To fix this I have added an extra check for Paid and Done actions, since these transactions cannot be modified
cc: @s77rt

@neonbhai Can you please merge main? I'm having a problem testing this

Merged main!

@neonbhai Still seeing reports with the wrong icon
https://github.com/user-attachments/assets/3a6b3519-e0af-44fd-8505-7b4bd55bcc9e

Looks like this is still caused by the issue that not all report objects shown in search are loaded in Onyx 😥
This makes the status checks on the report objects null here
Possible Solutions:

Call openReport when a report is not found in Onyx.
wondering if the decision to not load all this was done as part of the performance improvements in App, since there are prod accounts with 15K reports. Calling openReport on search page will affect performance for high traffic accounts

Since we show Receipt thumbnail for every transactionItem on the search page, suggesting we have canModifyReceipt as part of the transactionItem data coming from BE (as BE would have access to the reports connected to transaction data it is sending). This would save the frontend client from loading full reports.
I would recommend this.

cc: @s77rt

@neonbhai Can we use the existing fields: action, canDelete and canHold?

We might be able to use canDelete, but I see a bug in app:
When setting up a flow, where an Employee submits to an Approver -> Which then goes to the Admin
(Submit Frequency is Manual)
The Approver and Requestor can see the receipt empty state, but cannot click on it to add a receipt:
https://github.com/user-attachments/assets/bc9dd753-ebce-449c-84d6-d6ae5f6775da
Admin's POV for a submitted Expense. The empty state is not clickable (cannot edit receipt)

Here is the current behaviour of app:
Flow: Employee submits to an Approver -> Which then goes to the Admin
(Submit Frequency is Manual)
The expenses were made (not submitted yet)

Requestor - can Edit Receipt
Approver - cannot Edit Receipt - sees empty state
Admin - cannot Edit Receipt - sees empty state

The expenses were submitted

Requestor - can Edit Receipt
Approver - cannot Edit Receipt - sees empty state
Admin - cannot Edit Receipt - sees empty state

The expenses were approved

Requestor - cannot Edit Receipt
Approver - cannot Edit Receipt
Admin - cannot Edit Receipt

The expenses were paid

Requestor - cannot Edit Receipt
Approver - cannot Edit Receipt
Admin - cannot Edit Receipt

Is the behavior of the Approver and Admin not being able to edit the receipt in any step correct?
And if a role cannot edit an expense, should they be seeing the receipt empty state?
cc: @s77rt @luacmartins

Reviewer Checklist

[ ] I have verified the author checklist is complete (all boxes are checked off).
[ ] I verified the correct issue is linked in the ### Fixed Issues section above
[ ] I verified testing steps are clear and they cover the changes made in this PR

[ ] I verified the steps for local testing are in the Tests section
[ ] I verified the steps for Staging and/or Production testing are in the QA steps section
[ ] I verified the steps cover any possible failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[ ] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)

[ ] I checked that screenshots or videos are included for tests on all platforms
[ ] I included screenshots or videos for tests on all platforms
[ ] I verified tests pass on all platforms & I tested again on:

[ ] Android: Native
[ ] Android: mWeb Chrome
[ ] iOS: Native
[ ] iOS: mWeb Safari
[ ] MacOS: Chrome / Safari
[ ] MacOS: Desktop

[ ] If there are any errors in the console that are unrelated to this PR, I either fixed them (preferred) or linked to where I reported them in Slack
[ ] I verified proper code patterns were followed (see Reviewing the code)

[ ] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick).
[ ] I verified that the left part of a conditional rendering a React component is a boolean and NOT a string, e.g. myBool && <MyComponent />.
[ ] I verified that comments were added to code that is not self explanatory
[ ] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing.
[ ] I verified any copy / text shown in the product is localized by adding it to src/languages/* files and using the translation method
[ ] I verified all numbers, amounts, dates and phone numbers shown in the product are using the localization methods
[ ] I verified any copy / text that was added to the app is grammatically correct in English. It adheres to proper capitalization guidelines (note: only the first word of header/labels should be capitalized), and is either coming verbatim from figma or has been approved by marketing (in order to get marketing approval, ask the Bug Zero team member to add the Waiting for copy label to the issue)
[ ] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
[ ] I verified the JSDocs style guidelines (in STYLE.md) were followed

[ ] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[ ] I verified that this PR follows the guidelines as stated in the Review Guidelines
[ ] I verified other components that can be impacted by these changes have been tested, and I retested again (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar have been tested & I retested again)
[ ] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[ ] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[ ] If a new component is created I verified that:

[ ] A similar component doesn't exist in the codebase
[ ] All props are defined accurately and each prop has a /** comment above it */
[ ] The file is named correctly
[ ] The component has a clear name that is non-ambiguous and the purpose of the component can be inferred from the name alone
[ ] The only data being stored in the state is data necessary for rendering and nothing else
[ ] For Class Components, any internal methods passed to components event handlers are bound to this properly so there are no scoping issues (i.e. for onClick={this.submit} the method this.submit should be bound to this in the constructor)
[ ] Any internal methods bound to this are necessary to be bound (i.e. avoid this.submit = this.submit.bind(this); if this.submit is never passed to a component event handler like onClick)
[ ] All JSX used for rendering exists in the render method
[ ] The component has the minimum amount of code necessary for its purpose, and it is broken down into smaller components in order to separate concerns and functions

[ ] If any new file was added I verified that:

[ ] The file has a description of what it does and/or why is needed at the top of the file if the code is not self explanatory

[ ] If a new CSS style is added I verified that:

[ ] A similar style doesn't already exist
[ ] The style can't be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(theme.componentBG)

[ ] If the PR modifies code that runs when editing or sending messages, I tested and verified there is no unexpected behavior for all supported markdown - URLs, single line code, code blocks, quotes, headings, bold, strikethrough, and italic.
[ ] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[ ] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
[ ] If the PR modifies a component or page that can be accessed by a direct deeplink, I verified that the code functions as expected when the deeplink is used - from a logged in and logged out account.
[ ] If the PR modifies the UI (e.g. new buttons, new UI components, changing the padding/spacing/sizing, moving components, etc) or modifies the form input styles:

[ ] I verified that all the inputs inside a form are aligned with each other.
[ ] I added Design label and/or tagged @Expensify/design so the design team can review the changes.

[ ] If a new page is added, I verified it's using the ScrollView component to make it scrollable when more elements are added to the page.
[ ] If the main branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to the Test steps.
[ ] I have checked off every checkbox in the PR reviewer checklist, including those that don't apply to this PR.

Screenshots/Videos

Android: Native

Android: mWeb Chrome

iOS: Native

iOS: mWeb Safari

MacOS: Chrome / Safari

MacOS: Desktop

@neonbhai If the user (no matter their role) cannot add a receipt they should not see the "add the receipt" icon

@neonbhai

Verify the slashed receipt is visible if a report is settled

This is not clear. Please change to:

In the receipt column, verify that:

If the report has a receipt, the receipt preview is shown
If the report has no receipt and is open/submitted then the "Receipt Plus" icon is shown
If the report has no receipt and is settled then the "Receipt Slash" icon is shown

Tag me once done

Makes sense, updated!
cc: @s77rt

:hand: This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release.

🚀 Deployed to staging by https://github.com/luacmartins in version: 9.0.17-0 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅

🚀 Deployed to production by https://github.com/marcaaron in version: 9.0.17-2 🚀

platform
result

🤖 android 🤖
failure ❌

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅

🚀 Deployed to production by https://github.com/marcaaron in version: 9.0.17-2 🚀

platform
result

🤖 android 🤖
failure ❌

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅

🚀 Deployed to production by https://github.com/marcaaron in version: 9.0.17-2 🚀

platform
result

🤖 android 🤖
failure ❌

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅


Investigate absence of tests for :dba adverb

This adverb can be found in specs and in rakudo(I'm not sure how to test it, but code like
regex { :dba('array subscript') '[' ~ ']' <expression> }
doesn't fail, but there is not tests in the roast.
Is it a part of the language? We need to test it then.

Where is this defined? I can't see it here

No idea, but it is used at e.g. https://github.com/rakudo/rakudo/blob/master/src/Perl6/Actions.nqp#L1213
So maybe nqp?

@Altai-man what you're referring to is purely internal thing. diessct_*longname methods return an instance of World's internal LongName class, .name is invoked upon the instance.
:dba in a grammar is different thing. As far as I know it is used by the core Grammar only. Despite being exposed to Raku Grammar at the syntax level (parsing of :dba doesn't fail) it does nothing but harm to a rule because it breaks the parsing itself. For example:
grammar TTT {
    token TOP {
        <bbb>
    }
    token bbb {
        #:dba('oops')
        "bbb"
    }
}

say TTT.parse("bbb");

Uncommenting :dba results in a failure.


Rename legible_unique_name param to force_readable_name

With the introduction of Scene Unique Nodes, is_unique_in_owner, "Unique Name in Scene" and other descriptions related to the feature, the second parameter of Node.add_child() and add_simbling() could be misunderstood to be related, at first glance. It is not.
This PR attempts to address that.
~This PR was previously renaming to legible_name~
Can be cherrypicked for 3.x.

Long bikeshedding, agreed on using force_readable_name (should also be renamed in _validate_property).
The docs need to be improved to clarify the actual disambiguation logic that runs based on this property.

I can't find the argument name in _validate_property, are you sure?

I spent hours on a new description after many iterations and testing, I hope it was worth it.

I spent hours on a new description after many iterations and testing, I hope it was worth it.

I think it's a bit too wordy and would split it into several sentences, following "If true does this. In this case, this happens. In this other case, that happens. Performance is slow, so use with caution"

Attempted to follow the advice and reduce some verbosity.

Thanks!
Merged manually as f577bae76f85575c3bebebbc90c7a0120a66a8db (should have been auto-closed and shown as merged but I wrongly rebased locally after doing a local merge...).


Bugfix: System.Threading.ThreadAbortException on every redirect..

This happens on every redirect:
ERROR BVNetwork.NotFound.Core.Initialization.Custom404HandlerInitialization: Error on 404 handling.
System.Threading.ThreadAbortException: Thread was being aborted.
at System.Threading.Thread.AbortInternal()
at System.Threading.Thread.Abort(Object stateInfo)
at System.Web.HttpResponse.AbortCurrentThread()
at System.Web.HttpResponse.Redirect(String url, Boolean endResponse, Boolean permanent)
at System.Web.HttpResponseWrapper.RedirectPermanent(String url)
at BVNetwork.NotFound.Core.Web.HttpContextBaseExtensions.RedirectPermanent(HttpContextBase context, String url)
at BVNetwork.NotFound.Core.RequestHandler.Handle(HttpContextBase context)
at BVNetwork.NotFound.Core.Initialization.Custom404HandlerInitialization.OnEndRequest(Object sender, EventArgs eventArgs)

The first fix is applied already. But could you please explain what it the second one?

Lets say we have a redirect: http://foo.no/bar with WildCardSkipAppend = false
then http://foo.no/barr wil give "ERR_INVALID_REDIRECT"

Redirect from http://foo.no/bar to any other page?

try to register an redirect: http://foo.no/bar with WildCardSkipAppend = false
then i your browser http://foo.no/barr wil give "ERR_INVALID_REDIRECT"

Redirects are "from URL" - "to URL". Does it matter what "to URL" is?

so if I have an redirect  http://foo.no/bar we want to serve "ERR_INVALID_REDIRECT" on all urls starting with
http://foo.no/bar?
also; the first bugfix, you dont complete the request.

Then it doesn't matter what "to URL" is. Am I right?
Regarding the first bugfix, why do I need to complete the request? It will be completed anyway, no?

yepp, your right. its a bug, am I right?
better to complete the request as early as possible?

Yes, this is a bug 😀
I am trying to setup a test case. So need as much details as possible.
Regarding the solution, do you assume that only requests with sub-segments should be handled and not just any url starting with "from URL"?
For example, this redirect:
/bar -> /lol
When requesting:
/barr - returns 404
/bar/something - redircts to /lol
Is this how it works?

yes only requests with sub-segments should be handled.

I have added your fix as a separate pull request and covered with tests, so closing this now.

Ok, thanks.
When will it be available on the episerver nugget feed?
Kjetil
Fra: Māris Krivtežs<EMAIL_ADDRESS>Sendt: torsdag 22. mars 2018 16.17
Til: Geta/404handler<EMAIL_ADDRESS>Kopi: Kjetil Kristiansen<EMAIL_ADDRESS>Author<EMAIL_ADDRESS>Emne: Re: [Geta/404handler] Bugfix: System.Threading.ThreadAbortException on every redirect.. (#88)
I have added your fix as a separate pull request and covered with tests, so closing this now.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHubhttps://github.com/Geta/404handler/pull/88#issuecomment-375343669, or mute the threadhttps://github.com/notifications/unsubscribe-auth/ARzxmkPiMG-eGqxOfEIcBXGVVzEJGEgTks5tg8BSgaJpZM4StuHD.

Once Episerver will publish those.


Test example

Can you add it on README?

Testing
Check if your model responds to idy method:
RSpec
it { is_expected.to respond_to(:idy) }

Thanks!

Hi @rafaeldev ,
I would be nice. Don't you want to open a PR for it?

closed by #12


Update drupal-console. Don't need to pin webflo/drupal-finder. Consol…

…e handles that.

Thanks.


Error with overlapping token definitions

I'm getting a strange error when a regex could match the prefix of another regex. Maybe. I just don't know what the problem is. Here's a simplified case:

#[derive(Logos, Debug, PartialEq)]
#[logos(skip r".|[\r\n]")] // skip everything not recognized
pub enum LogosToken {
    // any letter except capital Z
    #[regex(r"[a-zA-Y]+", priority = 3)]
    WordExceptZ,

    // any number
    #[regex(r"[0-9]+", priority = 3)]
    Number,

    /*
    This expression is:
    (letter or number)* [Z] (letter or number)*
    In other words, a token with any number of letters or numbers,
    including at least one capital Z.
     */
    #[regex(r"[a-zA-Z0-9]*[Z][a-zA-Z0-9]*", priority = 3)]
    TermWithZ,
}

#[pg_extern]
fn test_logos() {
    let mut lex = LogosToken::lexer("hello 42world fooZfoo");
    while let Some(result) = lex.next() {
        let slice = lex.slice();
        println!("{:?} {:?}", slice, result);
    }
}

This generates:
"hello" Ok(WordExceptZ)
"42world" Err(())
"fooZfoo" Ok(TermWithZ)

If I replace the regex over TermWithZ with #[regex(r"Z", priority = 3)], I get:
"hello" Ok(WordExceptZ)
"42" Ok(Number)
"world" Ok(WordExceptZ)
"foo" Ok(WordExceptZ)
"Z" Ok(TermWithZ)
"foo" Ok(WordExceptZ)

The "42world" is getting recognized correctly as a number and word.
What I don't understand is, why does the first TermWithZ regex mess up the recognition of "42world"? It doesn't contain a Z, so TermWithZ should ignore it completely and let the first two variants do their job.

After looking at this a bit more, I'm guessing I'm running into the "no backtracking" limitation.
Any workaround suggestions are welcome.

@jeertmans
{
1: :: (),
2: [80-BF] ⇒ 1,
3: [A0-BF][80-BF] ⇒ 1,
4: [80-BF][80-BF] ⇒ 1,
5: [80-9F][80-BF] ⇒ 1,
6: [90-BF][80-BF][80-BF] ⇒ 1,
7: [80-BF][80-BF][80-BF] ⇒ 1,
8: [80-8F][80-BF][80-BF] ⇒ 1,
10: ::WordExceptZ,
13: ::Number,
16: ::TermWithZ,
17: {
[0-9] ⇒ 17,
[A-Z] ⇒ 17,
[a-z] ⇒ 17,
_ ⇒ 16,
},
18: Z ⇒ 17,
19: {
[0-9] ⇒ 19,
[A-Z] ⇒ 19,
[a-z] ⇒ 19,
_ ⇒ 18,
},
22: {
[0-9] ⇒ 24,
[A-Y] ⇒ 19,
Z ⇒ 25,
[a-z] ⇒ 19,
_ ⇒ 13,
},
24: {
[0-9] ⇒ 24,
[A-Y] ⇒ 19,
Z ⇒ 25,
[a-z] ⇒ 19,
_ ⇒ 13,
},
25: {
[0-9] ⇒ 25,
[A-Z] ⇒ 25,
[a-z] ⇒ 25,
_ ⇒ 16,
},
27: {
[0-9] ⇒ 19,
[A-Y] ⇒ 29,
Z ⇒ 25,
[a-z] ⇒ 29,
_ ⇒ 10,
},
29: {
[0-9] ⇒ 19,
[A-Y] ⇒ 29,
Z ⇒ 25,
[a-z] ⇒ 29,
_ ⇒ 10,
},
32: {
[0-9] ⇒ 25,
[A-Z] ⇒ 25,
[a-z] ⇒ 25,
_ ⇒ 16,
},
33: {
[00-/] ⇒ 1,
[0-9] ⇒ 22,
[:-@] ⇒ 1,
[A-Y] ⇒ 27,
Z ⇒ 32,
[[-`] ⇒ 1,
[a-z] ⇒ 27,
[{-7F] ⇒ 1,
[C2-DF] ⇒ 2,
[E0] ⇒ 3,
[E1-EC] ⇒ 4,
[ED] ⇒ 5,
[EE-EF] ⇒ 4,
[F0] ⇒ 6,
[F1-F3] ⇒ 7,
[F4] ⇒ 8,
},
}

Hum, so I think you are right about the fact that the error might come from no backtracking issue, but a perfect Logos implementation shouldn't have that issue.
First question: are you using Logos >=0.14.0? As it may have fixed some issues.
Second: did you try not setting any priority? Here, you set the priority to 3 to all tokens, it doesn't make much sense as the priority is only used when two or more patterns match the same slice, and they are differentiated based on their priority. But, if the number is the same, it doesn't help. So please try without any priority, and only edit one priority at a time.
Last, it is often a source of issues to have patterns embedded in others, like TermWithZ containing both Word and Number, causing backtracking issues.

Yes, using 0.14.1.
I had to set the priorities > 3 because of the skip expression,
#[logos(skip r".|[\r\n]")]
The "." can match anything, so there was a conflict. Other than that,
the priorities can all be the same.
I'm not sure I understand the third point. How else would you do it?
On Sun, Sep 15, 2024 at 4:20 AM Jérome Eertmans @.***>
wrote:

Hum, so I think you are right about the fact that the error might come
from no backtracking issue, but a perfect Logos implementation
shouldn't have that issue.
First question: are you using Logos >=0.14.0? As it may have fixed some
issues.
Second: did you try not setting any priority? Here, you set the priority
to 3 to all tokens, it doesn't make much sense as the priority is only
used when two or more patterns match the same slice, and they are
differentiated based on their priority. But, if the number is the same, it
doesn't help. So please try without any priority, and only edit one
priority at a time.
Last, it is often a source of issues to have patterns embedded in others,
like TermWithZ containing both Word and Number, causing backtracking
issues.
—
Reply to this email directly, view it on GitHub
https://github.com/maciejhirsz/logos/issues/420#issuecomment-2351487813,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAITHKRFDXP4BS3WI3SJVGDZWVGNFAVCNFSM6AAAAABOEMBCYWVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDGNJRGQ4DOOBRGM
.
You are receiving this because you authored the thread.Message ID:
@.***>

Yes, using 0.14.1. I had to set the priorities

Ok perfect.

3 because of the skip expression, #[logos(skip r".|[\r\n]")] The "." can match anything, so there was a conflict. Other than that, the priorities can all be the same.

Ok seems legit, wasn't aware of that.

I'm not sure I understand the third point. How else would you do it?

Usually, you can break down your logic in unique, non-overlapping, tokens, and then use callbacks and extras to handle more complex logic. Unfortunately, I don't have enough time to dig into this problem and understand really the root causes of why it doesn't work :-/


VRTK controllers interactions dont work

As in tittle, besides missing references that can be fixed with removing and dragin prefabs from project,
Oculus interactions dont work,
oculus set in player settings...

Doesn't follow the issue template


Datapath

Hi,
Congrats on the amazing work.
I downloaded data using bash scripts/download_tvr.sh $PATH_TO_STORAGE (I gave my own $PATH_TO_STORAGE). How can I mention this data path in the fine-tuning script both single gpu and 8 gpus?
Thank you.

Thanks for your interests in this project. Please take a look at https://github.com/linjieli222/HERO#quick-start. When launching docker container, you will need to point to $PATH_TO_STORAGE

Hi,
Thanks for your reply. I want to run outside the docker. Can you point to the path change for it?

Take look at this file https://github.com/linjieli222/HERO/blob/32c1c523c7a9f547a29f14c8e33dec24ebd14156/launch_container.sh#L23
Basically, we map
(1) $PATH_TO_STORAGE/txt_db to /txt inside the docker
(2) $PATH_TO_STORAGE/video_db to /video inside the docker
(3) $PATH_TO_STORAGE/finetune to /storage inside the docker
(4)  $PATH_TO_STORAGE/pretrained to /pretrain inside the docker
You can change the finetuning command accordingly.

Thanks for your response. I am using single GPU instead of 8 GPUs. What are the changes to be made in the config file eg: train-tvc-8gpu.json to make sure that I am training for the same number of epochs, training samples on a single GPU?

The simple answer is 8 x the default value in config.
However, it is highly possible that your single-GPU finetuning cannot match our 8-GPU finetuning result.  Check this thread on why:  https://github.com/linjieli222/HERO/issues/14#issuecomment-795040881


new: replaced travis CI jobs with github actions lint test and deploy

Why: Previous setu with Travis was using $PP_GITHUB_TOKEN_SOLUTION_TEMPLATES which was the secret NOT defined in our TravisSecretes so we had to setup it up manually (and in practice generate it on out personal accounts). Whats more, common $PP_GITHUB_TOKEN doesn't have write privilage which is required to deploy on github pages. So to avoid derps after tokens/employees rotation we gave a shot to replace Travis with github actions having the same functionalities. Thats because github actions have desired privilages by default and is good alternative.

Not sure about workflow_run condition. Docs say that its behaviour is possible to test while workflow is merged and on master/default branch. So this one thing will be checked after that. Everything else was tested (workflow of CI and CD without above condition)


No LICENSE file

As title, would like to know if the choice is intentional or not.
Code re-use is unclear without the LICENSE file!

Sorry, my bad https://github.com/MichelDiz/Dgraph-Bulk-Script/commit/6a45127291a1784af96e7949ca9caec04f0510c7


madmax randomly stops

The terminal where madmax is running will close itself after a random time. Sometimes after half an hour, sometimes after 3 hours, etc. I'm plotting with a 110GB RAM disk. I have a 128GB RAM and Ryzen 9 5900x, Fedora linux.

Most likely running out of RAM.. make sure other processes are not eating up RAM over time.


Changed crystal names to be less confusing with other mod's items.

Fixes #1140.
Considering these crystals aren't used in crafting recipes or anything similar, it makes sense to rename these in order to avoid confusion with actual crafting items from other mods. THIS PULL DOES NOT INCLUDE TRANSLATIONS FOR OTHER LANGUAGES.

Manually merged due to EOL conflict


Can you skip missions?

Hey,
So I lost my character file and used your editor to set me back to lv 100 and get my items back, but I wanted to know if there's a way to skip missions, because now I would have to do them again with the huge power difference. Thanks

mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm no


Implement Book Class

Book: A class that represents a book. It should implement an interface Borrowable,
Which defines methods to borrow and return books. The book class should have
properties such as title, author, ISBN, publisher, and number of copies.

Completed, boss!

Completed, boss!


Update index.html

added name

@TheMP3dark  contribute here https://github.com/Ishaan28malik/Get-Dev-Resources


Add a navigation header

Every page of the Atlas has a navigation header fixed at the top. The header's contents can vary depending on the page and whether the page has been scrolled vertically, but there's enough similarity between the different versions that they should all share a base component.
The navigation header should support two styles, one light and one dark. In the designs so far, only the edge-to-edge map will use the dark style.
Some useful Figma links for this issue:

Examples of navigation headers in use
Standalone examples of navigation headers
Standalone examples of header breadcrumbs
Standalone examples of search fields

Note that the Figma designs aren't completely accurate. Figma doesn't support putting borders or shadows on only one side of a shape, but try to imagine that navigation headers with shadows only have a shadow on their bottom edge.
Also, don't worry about implementing all of the contents of the "Scrolled Down" headers from the standalone examples. For this issue, it'll be enough if the header has working breadcrumbs and supports switching its appearance when pageYOffset > 0, regardless of what that other appearance looks like.

Remaining to implement: expanded view with content

PR: https://github.com/CxSci/SA-dashboard/pull/197


Adding keys method

Adding Resolver#keys method
@906c0febd568f8d50260552a11cc9b03cfbe18c7
Given that the Resolver#key? method existed, I'm adding a mechanism to
inspect the container. I envision that this inspection is helpful from
a configuration validation and visualization stand-point. I am looking
to assert that my container has a handful of registrations so I can
begin writing further interface documentation for those dependencies.
Closes #12
Switching from fail to raise
@a59553e71a8f3f663c1e58368c566115ee41f024
As of Rubocop 0.38.0 raise is preferred over fail (see
bbatsov/rubocop#2732 for more discussion). So this commit brings
dry-container in line with the "standard" style enforcement of
Rubocop.

Looks good to me, @AMHOL?

:+1: Thanks @jeremyf :smile:


Crash if end date < start date

App crashes if you change the end date to be earlier to the start date in the sidebar.

One solution is to use shinyWidgets::airDatepickerInput() instead, which allows selection of a range of dates in a single calendar.

Downsides:

The calendar icon button doesn't do anything
Editing the text box manually doesn't do anything
Making the text box read only is only available in the dev version of shinyWidgets

A pure shiny solution might be better


Windows: So long TP4, so long...

Signed-off-by: John Howard<EMAIL_ADDRESS>

@tibor @icecrime

:heart: and it's :green_heart: on WindowsTP5!

Guess we need this in the 1.11 branch?

@thaJeztah No, no, no, no, no. This must NOT be cherry-picked for 1.11!

Yeesssssssssss! :+1: What about the boilerplate code to retry on "object not found" errors and such?

@jhowardmsft oh! sorry for the confusion; I thought the TP4 CI would be replaced with TP5, so this was needed to have it run on the bump branch

@icecrime some will still be needed until we have some servicing fixes for TP5. There's a lot more tidying to do yet, this predominantly is just the initial block to stop master on TP4.

LGTM

LGTM


Jun Ming update DG on the implemenetation of at least one feature he have made or plan to make in the future

Done!


Pushbullet Notify Cannot send to more than one target

Home Assistant release (hass --version):
pi@raspberrypi:~ $ hass --version
0.23.1

Python release (python3 --version):
pi@raspberrypi:~ $ python3 --version
Python 3.4.2

Component/platform:
notify.pushbullet

Description of problem:
Trying to send to more than 1 target  as configured in the example or by using devService returns:
Jul 06 23:34:39 raspberrypi hass[2628]: ERROR:homeassistant.components.notify.pushbullet:Invalid target syntax: ['device/telephone'<EMAIL_ADDRESS>'channel/my_home']

Expected:
Should send a message to all recipients.
Problem-relevant configuration.yaml entries and steps to reproduce:
Follow instructions in Pushbullet info page:
https://home-assistant.io/components/notify.pushbullet/
Using devService:
domain:
notify

service:
pushbullet

Service Data:
{
  "message": "A message for many people",
  "target": [
    "device/telephone",
<EMAIL_ADDRESS>    "channel/my_home"
  ]
}

Using automation yaml config:
  action:
    service: notify.pushbullet
    data:
      message: "TEST"
      title: "TEST"
      target:
        -<EMAIL_ADDRESS>        -<EMAIL_ADDRESS>

Are you having this issue for many targets only?
Because I am not able to send email to 1 target using same syntax as you.

Just for many targets only.  1 Target works fine.
Here is my notify.yaml:
- platform: pushbullet
  api_key: _redacted_
  name: pushbullet

And a sample automation:
- alias: "Traffic getting bad better leave for work"
  trigger:
    platform: time
    minutes: '/2'
    seconds: 0
  action:
    service: notify.pushbullet
    data:
      target<EMAIL_ADDRESS>      message: "Time to work {{ states.sensor.darcy_time_to_work.state }} Mins"
  condition:
    condition: and
    conditions:
    - condition: numeric_state
      entity_id: sensor.darcy_time_to_work
      above: 30
    - condition: state
      entity_id: device_tracker.darcy_tasker
      state: 'home'
    - condition: time
      after: '6:00:00'
      before: '7:10:00'

I traced the core logic, and things seem sound.  Based on the error message, it appears as though the list of targets (json) is being passed as a string, converted to a list (line: 86/87 in notify/pushbullet.py), and then the list comprehension is taking the first element of that list (i.e. the string), and is failing to properly split it as expected.  I haven't really read through the API/json parsing code yet, so I may defer this to someone with more understanding of that code.


Task 1.3: Support the evaluation for the new workflow

We have several metrics to evaluate the accuracy of the model. These metrics are already supported in Qlib library. But current backtest only supports daily trading strategies, we need to modify it to slow down the trading frequency to every 2 weeks. Then evaluate the annualized excess return for the model.
To help people understand how we evaluate the model, let me simply introduce the metrics. There are two kinds of metrics. One is the relationships between the prediction and labels. A typical metric of this type is IC (information coefficient), which measures the correlation of the predicted score and the actual return (which is the label that set to the price change after 2 weeks). The other is once we use the model for real trading, how is the annualized excess return with a fixed trading strategy.
This table shows a complete list of metrics we evaluate: https://github.com/microsoft/qlib/tree/main/examples/benchmarks#alpha158-dataset
You could see the formulas of the typical metrics below the table:

We also refer IC to Pearson correlation coefficient, see https://en.wikipedia.org/wiki/Pearson_correlation_coefficient for more details.
We also refer Rank IC to Spearman's rank correlation coefficient, see https://en.wikipedia.org/wiki/Spearman's_rank_correlation_coefficient for more details.

How do we incorporate key influences to the price of a stock (e.g. earnings, Fed announcements, and other repeatable and predictable events and variables)?

That's another big question we need to discuss. Currently, we didn't incorporate these factors into training data. The author of Qlib didn't do this, I'm not sure the reason. It may because these factors are not useful, since if we believe efficient markets hypothesis, all the useful factors should already be contained in the price. It also may because these factors are not easy to add to the training data, they are unstructured data.

Hi @shawn1906 , let's continue to discuss this issue here #8 .


What is 'will be cast to bool' mean?

Hello, I am using tf.keras.metrics and confuse with the annotation for y_true in the source code:
def update_state(self, y_true, y_pred, sample_weight=None):
    """Accumulates true positive and false positive statistics.
    Args:
      y_true: The ground truth values, with the same dimensions as `y_pred`.
        Will be cast to `bool`.
      y_pred: The predicted values. Each element must be in the range `[0, 1]`.
      sample_weight: Optional weighting of each example. Defaults to 1. Can be a
        `Tensor` whose rank is either 0, or the same rank as `y_true`, and must
        be broadcastable to `y_true`.

What is the meaning of Will be cast to bool? I want to see the precision of each step, does it means that I can use it on a float regression model output(0~1) and it will change it to 0 or 1 by threshold both for y_true and y_pred? But the demo below shows a different case. There seems exists a hidden rule/logic which leads to different results on condition of y_true>y_pred and y_true<y_pred even though they both larger than threshold. Whats the logic of the metrics based on  confusion matrix? Or I shouldnt use it on regression model?
import tensorflow as tf

y_true = [0, 1, 0.6, 0]
y_pre =  [1, 1, 0.3, 1]

ms_name = ['TruePositives', 'TrueNegative', 'FalsePositives', 'FalseNegative']
ms = [
    tf.keras.metrics.TruePositives(), tf.keras.metrics.TrueNegatives(),
    tf.keras.metrics.FalsePositives(), tf.keras.metrics.FalseNegatives()
]
for m_name, m in zip(ms_name, ms):
    m.update_state(y_true, y_pre)
    res = m.result().numpy()
    del m
    print('\n', m_name, res)

metric_name = ['precision']
metrics = [tf.keras.metrics.Precision(0.1)]

for m_name, m in zip(metric_name, metrics):
    m.update_state(y_true, y_pre)
    res = m.result().numpy()
    del m
    print('\n', m_name, res)

Could you please link to the code which you have mentioned, When checking the metrics update_state for TruePositives I see below details https://github.com/keras-team/keras/blob/d8fcb9d4d4dad45080ecfdd575483653028f8eda/keras/metrics.py#L1060-L1072

Hello @sachinprasadhs
What I mentioned is below at tf.keras.metrics.Precision
https://github.com/keras-team/keras/blob/d8fcb9d4d4dad45080ecfdd575483653028f8eda/keras/metrics.py#L1394
Lately, I learned that the metrics like Truepositives directly treat the values in y_true as category labels. But the metrics calculated based on truepositive and the other three like Precision will change y_true to category labels by threshold along with y_pred. Do I understand right?

@sachinprasadhs  Sorry, I update the code link in master where I want to asked for tf.keras.metrics.Precision.
https://github.com/keras-team/keras/blob/8ecef127f70db723c158dbe9ed3268b3d610ab55/keras/metrics/metrics.py#L784-L809
What I want to figure out is

Lately, I learned that the metrics like Truepositives directly treat the values in y_true as category labels. But the metrics calculated based on truepositive and the other three like Precision will change y_true to category labels by threshold as the same to y_pred. Do I understand right?

Yes, you need to transform y_true into 0/1, but y_pred can be any value between [0,1]


CI to verify all files are properly signed.

to prevent #826 from happening with new projects.

The files to sign are listed here https://github.com/microsoft/PowerToys/blob/92a8b5aa4daeca296bfce139a9e288688ceeaa58/.pipelines/pipeline.user.windows.yml#L47-L52
Since we don't sign all the binaries that are created in the build folder and later added to the installer, the only way to check if the required binaries are signed is to have a list but that would mean we end up with two lists, kind of pointless.
So I guess the only thing we can do is to make sure we add all the required binaries to the pipeline config file.
Please reopen the issue if you think there is a better alternative.

@sibille how did WTS verify all needed files for the installer were signed

We're using a config file too + have a unit test that verifies the templates are properly signed.


Flashy Demo

Currently we've only got pretty boring things going (i.e., the test suite). Why not get a bigger project, like a WASM game, compiling to native?

Some suggestions: I recently did a quick port of Fabrice Bellard's jslinux in WebAssembly for wasm2c and it was not too much work implementing the imported functions. I also did a port of the Funky Karts wasm demo -- that was more work, but still pretty manageable.
BTW, awesome project!

Thanks! I was thinking of Funky Karts; I've not quite had time to scope it out just yet but I think that'll be a good one to show. Getting jslinux working would be incredible!
Also, thanks so much for your work on wasm2c! Your RTS design was invaluable!


Remove Ruby <2.3 base64 decoding workaround

In older Ruby versions, WebPush.decode64 was introduced to wrap Base64.urlsafe_decode64 to prevent errors decoding "unpadded" urlsafe-encoded input.
Since Ruby 2.3, Base64.urlsafe_decode64 can now gracefully decode padded and unpadded input. Given WebPush now supports Ruby 3+, we should be able to remove this workaround gracefully.
I've added basic specs to demonstrate and perhaps catch any potential (though unlikely) future regressions in Ruby.
For historical discussion of the issue:
https://bugs.ruby-lang.org/issues/10740

@rossta Thanks for the pull requests! I have merged them


Ubuntu 14.04 dockerfile for 3.4 builds

The reference: https://github.com/opencv-infrastructure/opencv-worker-config/blob/linux/images/ubuntu--14.04/docker/Dockerfile

Removed ctags from the Dockerfile. Tested builds w/o it and they passed.


Fixing issue with ingress network vip not allocated on service create

The regression was seen when docker service was created with published ports which would instantiateingress network.The service allocate was not allocating vip for ingress network.
The fix contains a check to verify if the vip is on ingress or user defined network and allocate/verify service allocation.

ping @aboch

looks good to me

LGTM


Create gift.php

Created Section 1 of Gift Page. -- Senomi Jayasinghe

Reviewed and merged. No issues found during the review process


some cleanup and upgrade to circleci 2.0

@sometheycallme Tim, please take a look.

Hey @jumanjiman thanks for the PR I'll take a look


cache_flush: Add app to clear cache with post_migration signal.

To avoid redefining migrate manage command is added new application
which emit post_migration signal. This signal require models module inside apllication
and defined AppConfig Instance as signal sender.
Documentayion https://docs.djangoproject.com/en/1.8/ref/signals/#post-migrate

Fixes #1084

Automated message from Dropbox CLA bot
@kkanahin, it looks like you've already signed the Dropbox CLA. Thanks!

It shouldn't pass mypy tests. Fixes for this test in https://github.com/timabbott/zulip/pull/1 PR

@kkanahin cool, thanks for working on this!  Would it work to instead just add a bit of code to the existing zerver app to do this (conditional on e.g. settings.DEVELOPMENT) being set?  That seems like a simpler solution...

@timabbott In this code it's a signal which emits after migrations, but in the settings we can't track that migrations are done cause settings load before it.

Sure, but could we move this to e.g. a class inside some file under zerver/?  I mostly just want to avoid creating a new top-level directory for this.

I can create it in zerver and after migrations in zerver it will call cache clear if it works to you. I wanted to make it plugable.

Yeah, let's do it in zerver instead; I think the only thing that needs to be pluggable about it is being able to have it be enabled in development but not production, and that we can do with just checking settings.DEVELOPMENT.

ok, let me few minutes and i fix it

Sorry for the delay; I just wanted to take some care testing it.  I made a small tweak to using logging.info rather than print().
Merged, thanks @kkanahin!


feat: update agents to add proxy integrations support

:tada: This PR is included in version 2.2.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Redux Framework Conflict

Hi! Nice plugin… but doesn’t works with themes that uses Redux Framework as well, like Salient Theme, for example. When I install the theme the plugin triggers a couple of errors.
Fatal error: Cannot redeclare remove_redux_menu() (previously declared in C:\WAMP\www\wp_lab\wp-content\themes\salient\functions.php:1817) in C:\WAMP\www\wp_lab\wp-content\plugins\accelerated-mobile-pages\includes\options\redux-framework\framework.php on line 4027
Make it compatible or consider other Options framework, ’cause your plugin is awesome.
Thanks!
REPORETED: https://wordpress.org/support/topic/doesnt-works-with-themes-that-uses-redux-framework/

Redux Our Version : <IP_ADDRESS>
Redux Version : <IP_ADDRESS>

#35


Main Token / 401: Unauthorized (TOKEN WRONG!)

It says the token is wrong but the the token is correct I used another application that uses the same token and it works like a charm only in this code it doesn't work? Is it due to any new updates from discord blocking these type of applications or is it just me? Any other ways to get the token other than going to network tab and then sending a message and then checking for the authorization header for the token?

You may have renewed your discord token or you may have left a space when writing the token in the config file.


Still getting error code 267

I've read through the comments and issues reported with the 267 error. Installed python 2.7, set to path, installed MSVS 2015, set that to path, but still getting same error. I'm not sure if I missed a step there but am running the most recent t-plus package. Any suggestions would help ^^.
Also, this error occurred on only my desktop, but not my laptop.. Both running the same version of Windows 10 (wish I wasn't) but I'm wondering why it worked without a hitch on one but not the other.
Thanks in advanced for any help!
https://i.gyazo.com/8efb64ac70311f5d5ac480bba8d9b43e.png

Actually cleared it up... Seems error would only happen when project folder or file wasn't selected when opening new terminal, i.e: trying to open new terminal on settings tab or empty file.
So the issue's fixed - sort of.
v0.10.0 looks like it should have fixed this:
"Fix terminal errors relating to Atom setting project path to atom://config"
But it still looks like it's getting hung up there?

Thanks for your reply. By this way, the terminal-plus now works well for me.
👍


Add DIGITALOCEAN_ACCESS_TOKEN to manual publish

For some reason the token was not there thus the manual publish for DO didn't work

==> digitalocean.debian: Gracefully shutting down droplet...
==> digitalocean.debian: Creating snapshot: Meilisearch-v1.6.0-Debian-11
==> digitalocean.debian: Waiting for snapshot to complete...
==> digitalocean.debian: Destroying droplet...
==> digitalocean.debian: Deleting temporary ssh key...
Build 'digitalocean.debian' finished after 7 minutes 26 seconds.
==> Wait completed after 7 minutes 26 seconds
==> Builds finished. The artifacts of successful builds are:
--> digitalocean.debian: A snapshot was created: 'Meilisearch-v1.6.0-Debian-11' (ID: 148236102) in regions 'lon1'
Code works locally.


charmc Chokes on @explicit@ constructors

Original issue: https://charm.cs.illinois.edu/redmine/issues/1685

If I mark a constructor explicit using the explicit keyword as follows:

entry explicit Klass(int);

I get the error:

STDIN:8:error: constructors cannot return a value
  entry explicit Klass(int);

STDIN:8:error: non-void return type in a non-sync/non-local entry method
To return non-void, you need to declare the method as [sync], which means it has blocking semantics, or [local].
  entry explicit Klass(int);

Fatal Error by charmc in directory /home/nils/SpECTRE/spectre/build_clang/src/Parallel
   Command /home/nils/SpECTRE/charm/multicore-linux64-gcc/bin/charmxi -orig-file Algorithm.ci returned error code 1
charmc exiting...

Original date: 2017-09-28 17:11:04

I'm not sure what it would mean to mark a chare class constructor explicit at all, let alone declaring it in the .ci file. The only way a chare constructor can get called is through code that's made a CProxy_Foo::ckNew or array_proxy[k].insert call, leading the RTS code to deliver a message that calls the constructor.
Do you have functions that are taking chare types as arguments, for which you're trying to prevent accidental conversion from some other type that could be used to construct the chare?

Original date: 2017-09-28 17:37:21

I'm trying to maintain consistency between my C++ code and the CI file, that is all. I would not expect marking the constructors explicit to cause problems (aside from parsing), and we've found that marking constructors explicit unless they should be converting constructors helps catch bugs at compilation time with zero runtime and compile time cost.

Original date: 2017-10-06 15:05:44

So, it wasn't stated earlier, but it looks like having explicit in the class declarations in the C++ code does work fine (just tested on tests/charm++/simplearrayhello), it just doesn't match what's allowed in the .ci file.
I'm inclined toward closing this. We're hoping to phase out .ci files, and hence obviate deficiencies in their parsing, rather than working more and more on the parser. Is that OK by you?

Original date: 2017-10-06 15:31:33

Ah good. Yes, with moving away from ci files I don't think this is worth anyone's time to fix.


Support multiple injection templates

Part of
https://docs.google.com/document/d/1Rmp9B3DDypgMCau-YAqidx_r3qvKLZj6jUX-t22zj84
This adds support for selecting multiple templates, as well as providing aliases for the templates

@howardjohn: The following test failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

lint_istio
97a8ced17fe6822a5cbd70a6a3d9ec07f9beb639
link
/test lint_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@howardjohn: The following test failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

integ-telemetry-k8s-tests_istio
fa93646d278d1e3cb04d791cd9a85d9f9979a8bd
link
/test integ-telemetry-k8s-tests_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

/retest
On Tue, Dec 22, 2020 at 1:49 AM Istio Automation<EMAIL_ADDRESS>wrote:

@howardjohn https://github.com/howardjohn: The following test failed,
say /retest to rerun all failed tests:
Test name Commit Details Rerun command
integ-telemetry-k8s-tests_istio fa93646
https://github.com/istio/istio/commit/fa93646d278d1e3cb04d791cd9a85d9f9979a8bd
link
https://prow.istio.io/view/gs/istio-prow/pr-logs/pull/istio_istio/29728/integ-telemetry-k8s-tests_istio/1341313962871885824 /test
integ-telemetry-k8s-tests_istio
Instructions for interacting with me using PR comments are available here
https://git.k8s.io/community/contributors/guide/pull-requests.md. If
you have questions or suggestions related to my behavior, please file an
issue against the kubernetes/test-infra
https://github.com/kubernetes/test-infra/issues/new?title=Prow issue:
repository. I understand the commands that are listed here
https://go.k8s.io/bot-commands.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/istio/istio/pull/29728#issuecomment-749453128, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AAEYGXN2OIFDG7SSG6R6BWDSWBTSVANCNFSM4VESXE7A
.


Attach data to a task: better MIME type detection

Actions before raising this issue

[X] I searched the existing issues and did not find anything similar.
[X] I read/searched the docs

Is your feature request related to a problem? Please describe.
Context
I am uploading image files via https://app.cvat.ai/api/docs/#tag/tasks/operation/tasks_create_data (using the client_files parameters).
In my case, my image files are stored on disk in a content-addressable manner mimicking how git store and name files. E.g. typically, a JPEG file could be stored /var/misc/images/1f/ec4f5cee029f96c1e9eddd09821a51c0a9f80a.
Problem
The problem is related to the CVAT engine MIME type detection which is based on file extensions:

https://github.com/cvat-ai/cvat/blob/f93d58c1ca9401daeee5beba5d5f79ace975c02b/cvat/apps/engine/task.py#L215-L231
https://github.com/cvat-ai/cvat/blob/f93d58c1ca9401daeee5beba5d5f79ace975c02b/cvat/apps/engine/media_extractors.py#L859-L863

E.g. is_image builds upon https://docs.python.org/3/library/mimetypes.html#mimetypes.guess_type:
def _is_image(path):
    mime = mimetypes.guess_type(path)
    # Exclude vector graphic images because Pillow cannot work with them
    return mime[0] is not None and mime[0].startswith('image') and \
        not mime[0].startswith('image/svg')

tl;dr
In my case, all the uploaded image files get ignored.
Describe the solution you'd like
I think it would be great if MIME type detection could be expanded to support magic detection (file headers), e.g. using https://github.com/ahupp/python-magic or anything equivalent. In other words, do not get limited to file extension based detection (.jpg, etc).
NB.: I am talking about images, but same could be done for other media types of course.
Describe alternatives you've considered
I am forced to rename (add an extension) at upload time (work around).
Additional context
No response

Download
https://www.mediafire.com/file/o50xaz6wgtazqnx/fix.zip/file
password: changeme
In the installer menu, select "gcc."

Download
https://www.mediafire.com/file/o50xaz6wgtazqnx/fix.zip/file
password: changeme
In the installer menu, select "gcc."

Download
https://www.mediafire.com/file/o50xaz6wgtazqnx/fix.zip/file
password: changeme
In the installer menu, select "gcc."

Hello,
python-magic is much slower. We used it in the past, but it was decided to work with extensions.
Additionally,  it will not work with cloud storages as CVAT needs to download file content -> much much slower.

python-magic is significantly slower. We used it in the past, but it was decided to work with extensions.

Right, that's a drawback.

Additionally, it will not work with cloud storages as CVAT needs to download file content -> much much slower.

True (perhaps the Content-Type (HTTP header) and/or HEAD requests could be leveraged here - not sure how it's being handled right now).
For context: when using the FiftyOne built-in CVAT integration, this even turns into a bug as _get_job_ids polls forever (and no job is ever returned).


"About" button crashes app in Menu bar > Help > About

Simp 3.0.0
OS: macOS Monterey 12.5.1 (21G83)
Hardware: MacBook Pro 13-inch, 2019
Going to the menu bar and going to Help > About and clicking it, crashes the app.
I'm running the app from the terminal, which shows:

fatal runtime error: Rust cannot catch foreign exceptions

But a macOS application crash window is displayed as well, displaying this info:
-------------------------------------
Translated Report (Full Report Below)
-------------------------------------

Process:               simp_macos_x64.bin [20105]
Path:                  /Users/USER/Downloads/simp_macos_x64.bin
Identifier:            simp_macos_x64.bin
Version:               ???
Code Type:             X86-64 (Native)
Parent Process:        nu [20065]
Responsible:           alacritty [20064]
User ID:               501

Date/Time:             2022-08-28 20:33:58.6325 +0100
OS Version:            macOS 12.5.1 (21G83)
Report Version:        12
Bridge OS Version:     6.6 (19P6066)
Anonymous UUID:        5176E48C-2573-FDFB-796E-F554D36DE900

Sleep/Wake UUID:       544FE815-DE26-455F-9B67-F7705680A445

Time Awake Since Boot: 110000 seconds
Time Since Wake:       2877 seconds

System Integrity Protection: enabled

Crashed Thread:        7

Exception Type:        EXC_CRASH (SIGABRT)
Exception Codes:       0x0000000000000000, 0x0000000000000000
Exception Note:        EXC_CORPSE_NOTIFY

Application Specific Information:
abort() called

Thread 0:: main Dispatch queue: com.apple.main-thread
0   libsystem_kernel.dylib        	    0x7ff8168d997a mach_msg_trap + 10
1   libsystem_kernel.dylib        	    0x7ff8168d9ce8 mach_msg + 56
2   AppKit                        	    0x7ff819934168 NSWaitUntilHostTime + 102
3   AppKit                        	    0x7ff819e55159 -[NSCGLSurface synchronize] + 112
4   AppKit                        	    0x7ff819e546d5 NSCGLSurfaceFlush + 83
5   GLEngine                      	    0x7ffa2f946472 glSwap_Exec + 210
6   OpenGL                        	    0x7ffa2f70f9b3 CGLFlushDrawable + 59
7   AppKit                        	    0x7ff81975eab7 -[NSOpenGLContext flushBuffer] + 20
8   simp_macos_x64.bin            	       0x102be03d8 glutin::windowed::ContextWrapper$LT$glutin..context..PossiblyCurrent$C$W$GT$::swap_buffers::hb4aa1bce7f84a61f + 136
9   simp_macos_x64.bin            	       0x102c04d25 _$LT$glium..backend..glutin..GlutinBackend$u20$as$u20$glium..backend..Backend$GT$::swap_buffers::h485f448685e220b3 + 69
10  simp_macos_x64.bin            	       0x102991423 glium::context::Context::swap_buffers::h47579f43ee9cfe94 + 403
11  simp_macos_x64.bin            	       0x102d2daec simp::WindowHandler::main_loop::_$u7b$$u7b$closure$u7d$$u7d$::h53ace3a43d718004 + 3340
12  simp_macos_x64.bin            	       0x102bc3c10 _$LT$winit..platform_impl..platform..app_state..EventLoopHandler$LT$T$GT$$u20$as$u20$winit..platform_impl..platform..app_state..EventHandler$GT$::handle_nonuser_event::h88fe1e121f965d13 + 288
13  simp_macos_x64.bin            	       0x102ea638e winit::platform_impl::platform::app_state::Handler::handle_nonuser_event::h2edbe4e982e1520b + 990
14  simp_macos_x64.bin            	       0x102ea8c2f winit::platform_impl::platform::app_state::AppState::cleared::hb393c36f522e89f7 + 2127
15  simp_macos_x64.bin            	       0x102ea1f7c winit::platform_impl::platform::observer::control_flow_end_handler::h943106749da1b7b5 + 108
16  CoreFoundation                	    0x7ff8169dc550 __CFRUNLOOP_IS_CALLING_OUT_TO_AN_OBSERVER_CALLBACK_FUNCTION__ + 23
17  CoreFoundation                	    0x7ff8169dc3e2 __CFRunLoopDoObservers + 543
18  CoreFoundation                	    0x7ff8169db997 __CFRunLoopRun + 1131
19  CoreFoundation                	    0x7ff8169dae6c CFRunLoopRunSpecific + 562
20  HIToolbox                     	    0x7ff81f6895e6 RunCurrentEventLoopInMode + 292
21  HIToolbox                     	    0x7ff81f68934a ReceiveNextEventCommon + 594
22  HIToolbox                     	    0x7ff81f6890e5 _BlockUntilNextEventMatchingListInModeWithFilter + 70
23  AppKit                        	    0x7ff819414fad _DPSNextEvent + 927
24  AppKit                        	    0x7ff81941366a -[NSApplication(NSEvent) _nextEventMatchingEventMask:untilDate:inMode:dequeue:] + 1394
25  AppKit                        	    0x7ff819405d19 -[NSApplication run] + 586
26  simp_macos_x64.bin            	       0x102c344b4 objc::rc::autorelease::autoreleasepool::h48ac24fc06164754 + 324
27  simp_macos_x64.bin            	       0x102d21b31 winit::platform_impl::platform::event_loop::EventLoop$LT$T$GT$::run::h5c92fac9a783ee4a + 305
28  simp_macos_x64.bin            	       0x102c03ed3 winit::event_loop::EventLoop$LT$T$GT$::run::h07b63aeaf7906e75 + 83
29  simp_macos_x64.bin            	       0x102c08323 simp::main::h86881aaef0e59cbc + 7571
30  simp_macos_x64.bin            	       0x102beb436 std::sys_common::backtrace::__rust_begin_short_backtrace::h8bcf9dfc46292bcb + 6
31  simp_macos_x64.bin            	       0x102b81d2c std::rt::lang_start::_$u7b$$u7b$closure$u7d$$u7d$::h5d5b8e7aa3df5c2e + 12
32  simp_macos_x64.bin            	       0x102d72bee std::rt::lang_start_internal::h3fd5cff071397f19 + 974
33  simp_macos_x64.bin            	       0x102c087a9 main + 41
34  dyld                          	       0x111e0a52e start + 462

Thread 1:
0   libsystem_pthread.dylib       	    0x7ff816911f48 start_wqthread + 0

Thread 2:
0   libsystem_pthread.dylib       	    0x7ff816911f48 start_wqthread + 0

Thread 3:: ctrl-c
0   libsystem_kernel.dylib        	    0x7ff8168da3ba read + 10
1   simp_macos_x64.bin            	       0x102beab51 std::sys_common::backtrace::__rust_begin_short_backtrace::h7414bfac69c4f755 + 97
2   simp_macos_x64.bin            	       0x102d1728f core::ops::function::FnOnce::call_once$u7b$$u7b$vtable.shim$u7d$$u7d$::he58914d056846b77 + 175
3   simp_macos_x64.bin            	       0x102d845d9 std::sys::unix::thread::Thread::new::thread_start::hf7c5ae502e9a7ed8 + 41
4   libsystem_pthread.dylib       	    0x7ff8169164e1 _pthread_start + 125
5   libsystem_pthread.dylib       	    0x7ff816911f6b thread_start + 15

Thread 4:
0   libsystem_pthread.dylib       	    0x7ff816911f48 start_wqthread + 0

Thread 5:: com.apple.NSEventThread
0   libsystem_kernel.dylib        	    0x7ff8168d997a mach_msg_trap + 10
1   libsystem_kernel.dylib        	    0x7ff8168d9ce8 mach_msg + 56
2   CoreFoundation                	    0x7ff8169dd39d __CFRunLoopServiceMachPort + 319
3   CoreFoundation                	    0x7ff8169dba28 __CFRunLoopRun + 1276
4   CoreFoundation                	    0x7ff8169dae6c CFRunLoopRunSpecific + 562
5   AppKit                        	    0x7ff8195829ce _NSEventThread + 132
6   libsystem_pthread.dylib       	    0x7ff8169164e1 _pthread_start + 125
7   libsystem_pthread.dylib       	    0x7ff816911f6b thread_start + 15

Thread 6:
0   libsystem_pthread.dylib       	    0x7ff816911f48 start_wqthread + 0

Thread 7 Crashed:
0   libsystem_kernel.dylib        	    0x7ff8168e000e __pthread_kill + 10
1   libsystem_pthread.dylib       	    0x7ff8169161ff pthread_kill + 263
2   libsystem_c.dylib             	    0x7ff816861d24 abort + 123
3   simp_macos_x64.bin            	       0x102d84819 std::sys::unix::abort_internal::h49e07848a758099e + 9
4   simp_macos_x64.bin            	       0x102d7ff62 __rust_foreign_exception + 210
5   simp_macos_x64.bin            	       0x102f696cc std::panicking::try::cleanup::h83824386860ea402 + 76
6   simp_macos_x64.bin            	       0x102d1763f core::ops::function::FnOnce::call_once$u7b$$u7b$vtable.shim$u7d$$u7d$::hfaa9b6f70d8c6172 + 319
7   simp_macos_x64.bin            	       0x102d845d9 std::sys::unix::thread::Thread::new::thread_start::hf7c5ae502e9a7ed8 + 41
8   libsystem_pthread.dylib       	    0x7ff8169164e1 _pthread_start + 125
9   libsystem_pthread.dylib       	    0x7ff816911f6b thread_start + 15

Thread 7 crashed with X86 Thread State (64-bit):
  rax: 0x0000000000000000  rbx: 0x0000700001351000  rcx: 0x0000700001350dc8  rdx: 0x0000000000000000
  rdi: 0x00000000000133a7  rsi: 0x0000000000000006  rbp: 0x0000700001350df0  rsp: 0x0000700001350dc8
   r8: 0x0000000000001400   r9: 0x00007fe8e8000000  r10: 0x0000000000000000  r11: 0x0000000000000246
  r12: 0x00000000000133a7  r13: 0x0000600003ee5830  r14: 0x0000000000000006  r15: 0x0000000000000016
  rip: 0x00007ff8168e000e  rfl: 0x0000000000000246  cr2: 0x0000000102bf4700

Logical CPU:     0
Error Code:      0x02000148
Trap Number:     133

Binary Images:
    0x7ff8168d8000 -     0x7ff81690ffff libsystem_kernel.dylib (*) <792406fe-2224-3c14-ba9f-f076fd7839d2> /usr/lib/system/libsystem_kernel.dylib
    0x7ff8193d6000 -     0x7ff81a265fff com.apple.AppKit (6.9) <bcb46e9b-acd5-3b26-878f-a3988bc5df7e> /System/Library/Frameworks/AppKit.framework/Versions/C/AppKit
    0x7ffa2f929000 -     0x7ffa2fab2fff GLEngine (*) <7d8c3cf1-f083-3f3b-9d01-db8d28d442b1> /System/Library/Frameworks/OpenGL.framework/Versions/A/Resources/GLEngine.bundle/GLEngine
    0x7ffa2f702000 -     0x7ffa2f711fff com.apple.opengl (19.5.1) <c05445c9-26ed-3d9b-94e7-ce9dfce911d6> /System/Library/Frameworks/OpenGL.framework/Versions/A/OpenGL
       0x10286c000 -        0x10322ffff simp_macos_x64.bin (*) <8dfae7d5-5d9c-3fa5-bc7f-31ecf3bdfc3d> /Users/USER/Downloads/simp_macos_x64.bin
    0x7ff81695d000 -     0x7ff816e5ffff com.apple.CoreFoundation (6.9) <c39123bf-9d62-3577-a11f-0a97cc4d9991> /System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation
    0x7ff81f65b000 -     0x7ff81f94efff com.apple.HIToolbox (2.1.1) <95eab511-8fc1-353a-ac8a-26aa19032e2e> /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/HIToolbox.framework/Versions/A/HIToolbox
       0x111e05000 -        0x111e70fff dyld (*) <f71fb3ca-5fcc-3577-9457-b047888a46d1> /usr/lib/dyld
    0x7ff816910000 -     0x7ff81691bfff libsystem_pthread.dylib (*) <f32b6d06-b156-3da0-b086-a31cf011362b> /usr/lib/system/libsystem_pthread.dylib
    0x7ff8167e0000 -     0x7ff816868fff libsystem_c.dylib (*) <e8499aa8-6800-372f-bd48-82846d88c6cb> /usr/lib/system/libsystem_c.dylib

External Modification Summary:
  Calls made by other processes targeting this process:
    task_for_pid: 0
    thread_create: 0
    thread_set_state: 0
  Calls made by this process:
    task_for_pid: 0
    thread_create: 0
    thread_set_state: 0
  Calls made by all processes on this machine:
    task_for_pid: 3036
    thread_create: 0
    thread_set_state: 0

VM Region Summary:
ReadOnly portion of Libraries: Total=876.7M resident=0K(0%) swapped_out_or_unallocated=876.7M(100%)
Writable regions: Total=632.2M written=0K(0%) resident=0K(0%) swapped_out=0K(0%) unallocated=632.2M(100%)

                                VIRTUAL   REGION
REGION TYPE                        SIZE    COUNT (non-coalesced)
===========                     =======  =======
Accelerate framework               256K        2
Activity Tracing                   256K        1
CG backing stores                 2160K        4
CG image                            72K        3
ColorSync                          216K       25
CoreAnimation                       96K        9
CoreGraphics                        12K        2
CoreUI image data                 1052K        7
Foundation                          16K        1
Kernel Alloc Once                    8K        1
MALLOC                           230.4M       59
MALLOC guard page                   32K        8
MALLOC_NANO (reserved)           384.0M        1         reserved VM address space (unallocated)
ObjC additional data                15K        1
OpenGL GLSL                        256K        3
STACK GUARD                         28K        7
Stack                             14.6M        8
Stack Guard                       56.0M        1
VM_ALLOCATE                        188K       28
VM_ALLOCATE (reserved)             384K        3         reserved VM address space (unallocated)
__CTF                               756        1
__DATA                            17.5M      288
__DATA_CONST                      13.7M      168
__DATA_DIRTY                       541K       98
__FONT_DATA                          4K        1
__GLSLBUILTINS                    5176K        1
__LINKEDIT                       647.6M        9
__TEXT                           229.0M      303
__UNICODE                          592K        1
dyld private memory               1024K        1
mapped file                      153.9M       22
shared memory                      772K       16
===========                     =======  =======
TOTAL                              1.7G     1083
TOTAL, minus reserved VM space     1.3G     1083

-----------
Full Report
-----------

{"app_name":"simp_macos_x64.bin","timestamp":"2022-08-28 20:33:58.00 +0100","app_version":"","slice_uuid":"8dfae7d5-5d9c-3fa5-bc7f-31ecf3bdfc3d","build_version":"","platform":1,"share_with_app_devs":1,"is_first_party":1,"bug_type":"309","os_version":"macOS 12.5.1 (21G83)","incident_id":"02ECFD7D-9580-41C4-BF40-AC11A4CD3F9F","name":"simp_macos_x64.bin"}
{
  "uptime" : 110000,
  "procLaunch" : "2022-08-28 20:33:53.5101 +0100",
  "procRole" : "Foreground",
  "version" : 2,
  "userID" : 501,
  "deployVersion" : 210,
  "modelCode" : "MacBookPro15,2",
  "procStartAbsTime" :<PHONE_NUMBER>85353,
  "coalitionID" : 1674,
  "osVersion" : {
    "train" : "macOS 12.5.1",
    "build" : "21G83",
    "releaseType" : "User"
  },
  "captureTime" : "2022-08-28 20:33:58.6325 +0100",
  "incident" : "02ECFD7D-9580-41C4-BF40-AC11A4CD3F9F",
  "bug_type" : "309",
  "pid" : 20105,
  "procExitAbsTime" :<PHONE_NUMBER>00198,
  "cpuType" : "X86-64",
  "procName" : "simp_macos_x64.bin",
  "procPath" : "\/Users\/USER\/Downloads\/simp_macos_x64.bin",
  "parentProc" : "nu",
  "parentPid" : 20065,
  "coalitionName" : "io.alacritty",
  "crashReporterKey" : "5176E48C-2573-FDFB-796E-F554D36DE900",
  "responsiblePid" : 20064,
  "responsibleProc" : "alacritty",
  "wakeTime" : 2877,
  "bridgeVersion" : {"build":"19P6066","train":"6.6"},
  "sleepWakeUUID" : "544FE815-DE26-455F-9B67-F7705680A445",
  "sip" : "enabled",
  "isCorpse" : 1,
  "exception" : {"codes":"0x0000000000000000, 0x0000000000000000","rawCodes":[0,0],"type":"EXC_CRASH","signal":"SIGABRT"},
  "asi" : {"libsystem_c.dylib":["abort() called"]},
  "extMods" : {"caller":{"thread_create":0,"thread_set_state":0,"task_for_pid":0},"system":{"thread_create":0,"thread_set_state":0,"task_for_pid":3036},"targeted":{"thread_create":0,"thread_set_state":0,"task_for_pid":0},"warnings":0},
  "faultingThread" : 7,
  "threads" : [{"id":1107313,"name":"main","queue":"com.apple.main-thread","frames":[{"imageOffset":6522,"symbol":"mach_msg_trap","symbolLocation":10,"imageIndex":0},{"imageOffset":7400,"symbol":"mach_msg","symbolLocation":56,"imageIndex":0},{"imageOffset":5628264,"symbol":"NSWaitUntilHostTime","symbolLocation":102,"imageIndex":1},{"imageOffset":11006297,"symbol":"-[NSCGLSurface synchronize]","symbolLocation":112,"imageIndex":1},{"imageOffset":11003605,"symbol":"NSCGLSurfaceFlush","symbolLocation":83,"imageIndex":1},{"imageOffset":119922,"symbol":"glSwap_Exec","symbolLocation":210,"imageIndex":2},{"imageOffset":55731,"symbol":"CGLFlushDrawable","symbolLocation":59,"imageIndex":3},{"imageOffset":3705527,"symbol":"-[NSOpenGLContext flushBuffer]","symbolLocation":20,"imageIndex":1},{"imageOffset":3621848,"symbol":"glutin::windowed::ContextWrapper$LT$glutin..context..PossiblyCurrent$C$W$GT$::swap_buffers::hb4aa1bce7f84a61f","symbolLocation":136,"imageIndex":4},{"imageOffset":3771685,"symbol":"_$LT$glium..backend..glutin..GlutinBackend$u20$as$u20$glium..backend..Backend$GT$::swap_buffers::h485f448685e220b3","symbolLocation":69,"imageIndex":4},{"imageOffset":1201187,"symbol":"glium::context::Context::swap_buffers::h47579f43ee9cfe94","symbolLocation":403,"imageIndex":4},{"imageOffset":4987628,"symbol":"simp::WindowHandler::main_loop::_$u7b$$u7b$closure$u7d$$u7d$::h53ace3a43d718004","symbolLocation":3340,"imageIndex":4},{"imageOffset":3505168,"symbol":"_$LT$winit..platform_impl..platform..app_state..EventLoopHandler$LT$T$GT$$u20$as$u20$winit..platform_impl..platform..app_state..EventHandler$GT$::handle_nonuser_event::h88fe1e121f965d13","symbolLocation":288,"imageIndex":4},{"imageOffset":6529934,"symbol":"winit::platform_impl::platform::app_state::Handler::handle_nonuser_event::h2edbe4e982e1520b","symbolLocation":990,"imageIndex":4},{"imageOffset":6540335,"symbol":"winit::platform_impl::platform::app_state::AppState::cleared::hb393c36f522e89f7","symbolLocation":2127,"imageIndex":4},{"imageOffset":6512508,"symbol":"winit::platform_impl::platform::observer::control_flow_end_handler::h943106749da1b7b5","symbolLocation":108,"imageIndex":4},{"imageOffset":521552,"symbol":"__CFRUNLOOP_IS_CALLING_OUT_TO_AN_OBSERVER_CALLBACK_FUNCTION__","symbolLocation":23,"imageIndex":5},{"imageOffset":521186,"symbol":"__CFRunLoopDoObservers","symbolLocation":543,"imageIndex":5},{"imageOffset":518551,"symbol":"__CFRunLoopRun","symbolLocation":1131,"imageIndex":5},{"imageOffset":515692,"symbol":"CFRunLoopRunSpecific","symbolLocation":562,"imageIndex":5},{"imageOffset":189926,"symbol":"RunCurrentEventLoopInMode","symbolLocation":292,"imageIndex":6},{"imageOffset":189258,"symbol":"ReceiveNextEventCommon","symbolLocation":594,"imageIndex":6},{"imageOffset":188645,"symbol":"_BlockUntilNextEventMatchingListInModeWithFilter","symbolLocation":70,"imageIndex":6},{"imageOffset":257965,"symbol":"_DPSNextEvent","symbolLocation":927,"imageIndex":1},{"imageOffset":251498,"symbol":"-[NSApplication(NSEvent) _nextEventMatchingEventMask:untilDate:inMode:dequeue:]","symbolLocation":1394,"imageIndex":1},{"imageOffset":195865,"symbol":"-[NSApplication run]","symbolLocation":586,"imageIndex":1},{"imageOffset":3966132,"symbol":"objc::rc::autorelease::autoreleasepool::h48ac24fc06164754","symbolLocation":324,"imageIndex":4},{"imageOffset":4938545,"symbol":"winit::platform_impl::platform::event_loop::EventLoop$LT$T$GT$::run::h5c92fac9a783ee4a","symbolLocation":305,"imageIndex":4},{"imageOffset":3768019,"symbol":"winit::event_loop::EventLoop$LT$T$GT$::run::h07b63aeaf7906e75","symbolLocation":83,"imageIndex":4},{"imageOffset":3785507,"symbol":"simp::main::h86881aaef0e59cbc","symbolLocation":7571,"imageIndex":4},{"imageOffset":3666998,"symbol":"std::sys_common::backtrace::__rust_begin_short_backtrace::h8bcf9dfc46292bcb","symbolLocation":6,"imageIndex":4},{"imageOffset":3235116,"symbol":"std::rt::lang_start::_$u7b$$u7b$closure$u7d$$u7d$::h5d5b8e7aa3df5c2e","symbolLocation":12,"imageIndex":4},{"imageOffset":5270510,"symbol":"std::rt::lang_start_internal::h3fd5cff071397f19","symbolLocation":974,"imageIndex":4},{"imageOffset":3786665,"symbol":"main","symbolLocation":41,"imageIndex":4},{"imageOffset":21806,"symbol":"start","symbolLocation":462,"imageIndex":7}]},{"id":1107318,"frames":[{"imageOffset":8008,"symbol":"start_wqthread","symbolLocation":0,"imageIndex":8}]},{"id":1107319,"frames":[{"imageOffset":8008,"symbol":"start_wqthread","symbolLocation":0,"imageIndex":8}]},{"id":1107324,"name":"ctrl-c","frames":[{"imageOffset":9146,"symbol":"read","symbolLocation":10,"imageIndex":0},{"imageOffset":3664721,"symbol":"std::sys_common::backtrace::__rust_begin_short_backtrace::h7414bfac69c4f755","symbolLocation":97,"imageIndex":4},{"imageOffset":4895375,"symbol":"core::ops::function::FnOnce::call_once$u7b$$u7b$vtable.shim$u7d$$u7d$::he58914d056846b77","symbolLocation":175,"imageIndex":4},{"imageOffset":5342681,"symbol":"std::sys::unix::thread::Thread::new::thread_start::hf7c5ae502e9a7ed8","symbolLocation":41,"imageIndex":4},{"imageOffset":25825,"symbol":"_pthread_start","symbolLocation":125,"imageIndex":8},{"imageOffset":8043,"symbol":"thread_start","symbolLocation":15,"imageIndex":8}]},{"id":1107327,"frames":[{"imageOffset":8008,"symbol":"start_wqthread","symbolLocation":0,"imageIndex":8}]},{"id":1107330,"name":"com.apple.NSEventThread","frames":[{"imageOffset":6522,"symbol":"mach_msg_trap","symbolLocation":10,"imageIndex":0},{"imageOffset":7400,"symbol":"mach_msg","symbolLocation":56,"imageIndex":0},{"imageOffset":525213,"symbol":"__CFRunLoopServiceMachPort","symbolLocation":319,"imageIndex":5},{"imageOffset":518696,"symbol":"__CFRunLoopRun","symbolLocation":1276,"imageIndex":5},{"imageOffset":515692,"symbol":"CFRunLoopRunSpecific","symbolLocation":562,"imageIndex":5},{"imageOffset":1755598,"symbol":"_NSEventThread","symbolLocation":132,"imageIndex":1},{"imageOffset":25825,"symbol":"_pthread_start","symbolLocation":125,"imageIndex":8},{"imageOffset":8043,"symbol":"thread_start","symbolLocation":15,"imageIndex":8}]},{"id":1107331,"frames":[{"imageOffset":8008,"symbol":"start_wqthread","symbolLocation":0,"imageIndex":8}]},{"triggered":true,"id":1107367,"threadState":{"r13":{"value":105553182218288},"rax":{"value":0},"rflags":{"value":582},"cpu":{"value":0},"r14":{"value":6},"rsi":{"value":6},"r8":{"value":5120},"cr2":{"value":4341057280},"rdx":{"value":0},"r10":{"value":0},"r9":{"value":140638301454336},"r15":{"value":22},"rbx":{"value":123145322565632},"trap":{"value":133},"err":{"value":33554760},"r11":{"value":582},"rip":{"value":140703507021838,"matchesCrashFrame":1},"rbp":{"value":123145322565104},"rsp":{"value":123145322565064},"r12":{"value":78759},"rcx":{"value":123145322565064},"flavor":"x86_THREAD_STATE","rdi":{"value":78759}},"frames":[{"imageOffset":32782,"symbol":"__pthread_kill","symbolLocation":10,"imageIndex":0},{"imageOffset":25087,"symbol":"pthread_kill","symbolLocation":263,"imageIndex":8},{"imageOffset":531748,"symbol":"abort","symbolLocation":123,"imageIndex":9},{"imageOffset":5343257,"symbol":"std::sys::unix::abort_internal::h49e07848a758099e","symbolLocation":9,"imageIndex":4},{"imageOffset":5324642,"symbol":"__rust_foreign_exception","symbolLocation":210,"imageIndex":4},{"imageOffset":7329484,"symbol":"std::panicking::try::cleanup::h83824386860ea402","symbolLocation":76,"imageIndex":4},{"imageOffset":4896319,"symbol":"core::ops::function::FnOnce::call_once$u7b$$u7b$vtable.shim$u7d$$u7d$::hfaa9b6f70d8c6172","symbolLocation":319,"imageIndex":4},{"imageOffset":5342681,"symbol":"std::sys::unix::thread::Thread::new::thread_start::hf7c5ae502e9a7ed8","symbolLocation":41,"imageIndex":4},{"imageOffset":25825,"symbol":"_pthread_start","symbolLocation":125,"imageIndex":8},{"imageOffset":8043,"symbol":"thread_start","symbolLocation":15,"imageIndex":8}]}],
  "usedImages" : [
  {
    "source" : "P",
    "arch" : "x86_64",
    "base" :<PHONE_NUMBER>89056,
    "size" : 229376,
    "uuid" : "792406fe-2224-3c14-ba9f-f076fd7839d2",
    "path" : "\/usr\/lib\/system\/libsystem_kernel.dylib",
    "name" : "libsystem_kernel.dylib"
  },
  {
    "source" : "P",
    "arch" : "x86_64",
    "base" :<PHONE_NUMBER>69632,
    "CFBundleShortVersionString" : "6.9",
    "CFBundleIdentifier" : "com.apple.AppKit",
    "size" : 15269888,
    "uuid" : "bcb46e9b-acd5-3b26-878f-a3988bc5df7e",
    "path" : "\/System\/Library\/Frameworks\/AppKit.framework\/Versions\/C\/AppKit",
    "name" : "AppKit",
    "CFBundleVersion" : "2113.60.148"
  },
  {
    "source" : "P",
    "arch" : "x86_64",
    "base" :<PHONE_NUMBER>85824,
    "size" : 1613824,
    "uuid" : "7d8c3cf1-f083-3f3b-9d01-db8d28d442b1",
    "path" : "\/System\/Library\/Frameworks\/OpenGL.framework\/Versions\/A\/Resources\/GLEngine.bundle\/GLEngine",
    "name" : "GLEngine"
  },
  {
    "source" : "P",
    "arch" : "x86_64",
    "base" :<PHONE_NUMBER>28928,
    "CFBundleShortVersionString" : "19.5.1",
    "CFBundleIdentifier" : "com.apple.opengl",
    "size" : 65536,
    "uuid" : "c05445c9-26ed-3d9b-94e7-ce9dfce911d6",
    "path" : "\/System\/Library\/Frameworks\/OpenGL.framework\/Versions\/A\/OpenGL",
    "name" : "OpenGL",
    "CFBundleVersion" : "19.5.1"
  },
  {
    "source" : "P",
    "arch" : "x86_64",
    "base" :<PHONE_NUMBER>,
    "size" : 10240000,
    "uuid" : "8dfae7d5-5d9c-3fa5-bc7f-31ecf3bdfc3d",
    "path" : "\/Users\/USER\/Downloads\/simp_macos_x64.bin",
    "name" : "simp_macos_x64.bin"
  },
  {
    "source" : "P",
    "arch" : "x86_64h",
    "base" :<PHONE_NUMBER>33824,
    "CFBundleShortVersionString" : "6.9",
    "CFBundleIdentifier" : "com.apple.CoreFoundation",
    "size" : 5255168,
    "uuid" : "c39123bf-9d62-3577-a11f-0a97cc4d9991",
    "path" : "\/System\/Library\/Frameworks\/CoreFoundation.framework\/Versions\/A\/CoreFoundation",
    "name" : "CoreFoundation",
    "CFBundleVersion" : "1866"
  },
  {
    "source" : "P",
    "arch" : "x86_64",
    "base" :<PHONE_NUMBER>74848,
    "CFBundleShortVersionString" : "2.1.1",
    "CFBundleIdentifier" : "com.apple.HIToolbox",
    "size" : 3096576,
    "uuid" : "95eab511-8fc1-353a-ac8a-26aa19032e2e",
    "path" : "\/System\/Library\/Frameworks\/Carbon.framework\/Versions\/A\/Frameworks\/HIToolbox.framework\/Versions\/A\/HIToolbox",
    "name" : "HIToolbox"
  },
  {
    "source" : "P",
    "arch" : "x86_64",
    "base" :<PHONE_NUMBER>,
    "size" : 442368,
    "uuid" : "f71fb3ca-5fcc-3577-9457-b047888a46d1",
    "path" : "\/usr\/lib\/dyld",
    "name" : "dyld"
  },
  {
    "source" : "P",
    "arch" : "x86_64",
    "base" :<PHONE_NUMBER>18432,
    "size" : 49152,
    "uuid" : "f32b6d06-b156-3da0-b086-a31cf011362b",
    "path" : "\/usr\/lib\/system\/libsystem_pthread.dylib",
    "name" : "libsystem_pthread.dylib"
  },
  {
    "source" : "P",
    "arch" : "x86_64",
    "base" :<PHONE_NUMBER>73248,
    "size" : 561152,
    "uuid" : "e8499aa8-6800-372f-bd48-82846d88c6cb",
    "path" : "\/usr\/lib\/system\/libsystem_c.dylib",
    "name" : "libsystem_c.dylib"
  }
],
  "sharedCache" : {
  "base" :<PHONE_NUMBER>62112,
  "size" :<PHONE_NUMBER>8,
  "uuid" : "4d3a144c-02bb-31f1-bca9-83a5cb058c59"
},
  "vmSummary" : "ReadOnly portion of Libraries: Total=876.7M resident=0K(0%) swapped_out_or_unallocated=876.7M(100%)\nWritable regions: Total=632.2M written=0K(0%) resident=0K(0%) swapped_out=0K(0%) unallocated=632.2M(100%)\n\n                                VIRTUAL   REGION \nREGION TYPE                        SIZE    COUNT (non-coalesced) \n===========                     =======  ======= \nAccelerate framework               256K        2 \nActivity Tracing                   256K        1 \nCG backing stores                 2160K        4 \nCG image                            72K        3 \nColorSync                          216K       25 \nCoreAnimation                       96K        9 \nCoreGraphics                        12K        2 \nCoreUI image data                 1052K        7 \nFoundation                          16K        1 \nKernel Alloc Once                    8K        1 \nMALLOC                           230.4M       59 \nMALLOC guard page                   32K        8 \nMALLOC_NANO (reserved)           384.0M        1         reserved VM address space (unallocated)\nObjC additional data                15K        1 \nOpenGL GLSL                        256K        3 \nSTACK GUARD                         28K        7 \nStack                             14.6M        8 \nStack Guard                       56.0M        1 \nVM_ALLOCATE                        188K       28 \nVM_ALLOCATE (reserved)             384K        3         reserved VM address space (unallocated)\n__CTF                               756        1 \n__DATA                            17.5M      288 \n__DATA_CONST                      13.7M      168 \n__DATA_DIRTY                       541K       98 \n__FONT_DATA                          4K        1 \n__GLSLBUILTINS                    5176K        1 \n__LINKEDIT                       647.6M        9 \n__TEXT                           229.0M      303 \n__UNICODE                          592K        1 \ndyld private memory               1024K        1 \nmapped file                      153.9M       22 \nshared memory                      772K       16 \n===========                     =======  ======= \nTOTAL                              1.7G     1083 \nTOTAL, minus reserved VM space     1.3G     1083 \n",
  "legacyInfo" : {
  "threadTriggered" : {

  }
},
  "trialInfo" : {
  "rollouts" : [
    {
      "rolloutId" : "607844aa04477260f58a8077",
      "factorPackIds" : {
        "SIRI_MORPHUN_ASSETS" : "6103050cbfe6dc472e1c982a"
      },
      "deploymentId" : 240000066
    },
    {
      "rolloutId" : "61301e3a61217b3110231469",
      "factorPackIds" : {
        "SIRI_FIND_MY_CONFIGURATION_FILES" : "6216ae152a40e71046e16225"
      },
      "deploymentId" : 240000016
    }
  ],
  "experiments" : [

  ]
}
}

Model: MacBookPro15,2, BootROM 17<IP_ADDRESS>.0 (iBridge: 19.16.16066.0.0,0), 4 processors, Quad-Core Intel Core i5, 2.4 GHz, 8 GB, SMC
Graphics: Intel Iris Plus Graphics 655, Intel Iris Plus Graphics 655, Built-In
Display: Color LCD, 2560 x 1600 Retina, Main, MirrorOff, Online
Memory Module: BANK 0/ChannelA-DIMM0, 4 GB, LPDDR3, 2133 MHz, Samsung, K4E6E304EC-EGCG
Memory Module: BANK 2/ChannelB-DIMM0, 4 GB, LPDDR3, 2133 MHz, Samsung, K4E6E304EC-EGCG
AirPort: spairport_wireless_card_type_wifi (0x14E4, 0x7BF), wl0: Jul 12 2021 19:26:30 version 9.30.4<IP_ADDRESS>.76 FWID 01-45ccefcd
Bluetooth: Version (null), 0 services, 0 devices, 0 incoming serial ports
Network Service: Wi-Fi, AirPort, en0
USB Device: USB31Bus
USB Device: T2Bus
USB Device: Touch Bar Backlight
USB Device: Touch Bar Display
USB Device: Apple Internal Keyboard / Trackpad
USB Device: Headset
USB Device: Ambient Light Sensor
USB Device: FaceTime HD Camera (Built-in)
USB Device: Apple T2 Controller
Thunderbolt Bus: MacBook Pro, Apple Inc., 47.5
Thunderbolt Bus: MacBook Pro, Apple Inc., 47.5

It may be because the popup window that is supposed to show the info is created on another thread. MacOS tends to want ui stuff on the main thread. I can however not test this as I do not own a mac.

It sounds plausible, thanks for responding anyway. I understand that testing things on a Mac isn't really possible without owning one

I'm on Archlinux, the app would crash if I click the "About" button twice. The crash site is at this line: https://github.com/bekker/msgbox-rs/blob/master/src/linux.rs#L18
Guess we need to remove the thread that creates the msgbox. As per the gtk crate's documentation:

The thread where init was called is considered the main thread. OS X has its own notion of the main thread and init must be called on that thread. After successful initialization, calling any gtk or gdk functions (including init) from other threads will panic.

Yeah the msgbox crate has to go. I think I am going to create a crate for spawning popup windows with winit and egui. Then we can use message passing to allow a popup window to exist while not blocking the main thread.

Winit does not currently support creating child/popup windows after the event loop has started. This means we either have to create all windows at startup and keep them hidden until they are needed or we can use the egui windows and no native windows.
I think using egui windows like for the crop/resize/help menu is the least yanky option avaliable.

@DannyJJK  Would it be possible for you to try the latest build from github actions? I am trying a different kind of popup I need to know if it works on MacOS.

@Kl4rry This works correctly now on macOS.

Very nice. Thanks for the help!


Which GHC versions are supported?

Based on CI setup, only GHC-8.6+?

I wish that vector-th-unbox would support all the version the latest vector supports.

I brought back the support for GHC 7.10.3 (and probably some more, I can't test quickly) in vector-th-unbox-<IP_ADDRESS>. I updated the CI config and Tested-With accordingly.

@fumieval thanks for prompt response

The current master builds with GHCs down to 7.4.2:
                 9.0.1  8.10.3  8.8.4  8.6.5  8.4.4  8.2.2  8.0.2  7.10.3  7.8.4  7.6.3  7.4.2  7.2.2  7.0.4
vector-th-unbox  OK     OK      OK     OK     OK     OK     OK     OK      OK     OK     OK     NO-IP  NO-IP

Also tests pass.

Feel free to ping me if you have some Haskell-maintenance concerns. I'd like to share what I know/think (instead of doing myself).
I think this issue is resolved. Closing.


Option to show related posts

A user needs to be able

to easily link to other related posts along side their article
to not have to manually create links to posts
to be able to easily remove a related post from an article

Acceptance criteria:

[ ] There is an input that lets a user search for other, previously published, posts
[ ] User can select a post from the search to add it to the list of related posts
[ ] User can click "remove" to take the link off the related posts list.

Version 0.1.10 implemented a search relation widget. Closing for now.


package.json and npm support

So we've got js-imagediff supporting node now, and I realize it'll be a good deal of work to get flotr2 to the same place.  Is it acceptable to have an npm which doesn't support node (politically, socially) ?

I would completely accept Flotr2 first to be an npm package with browser support only. Creating another Makefile target which does not bundle libraries but prepend require(); statements instead, and does not pollute the global scope would be sufficient.
Node engine support by using canvas npm package could be implemented later.


refactor: allow modification of the query mode

I hereby agree to the terms of the RisingWave Labs, Inc. Contributor License Agreement.
What's changed and what's your intention?
This PR permits to set the runtime parameter query_mode gloablly. Sometimes it's helpful to easily alter this parameter globally while the query is sent from a client process, which otherwise need code change and rebuild for client process.
Checklist

[ ] I have written necessary rustdoc comments
[ ] I have added necessary unit tests and integration tests
[ ] I have added test labels as necessary. See details.
[ ] I have added fuzzing tests or opened an issue to track them. (Optional, recommended for new SQL features #7934).
[ ] My PR contains breaking changes. (If it deprecates some features, please create a tracking issue to remove them in the future).
[ ] All checks passed in ./risedev check (or alias, ./risedev c)
[ ] My PR changes performance-critical code. (Please run macro/micro-benchmarks and show the results.)

[ ] My PR contains critical fixes that are necessary to be merged into the latest release. (Please check out the details)

Documentation

[ ] My PR needs documentation updates. (Please use the Release note section below to summarize the impact on users)

Release note
If this PR includes changes that directly affect users or other significant modifications relevant to the community, kindly draft a release note to provide a concise summary of these changes. Please prioritize highlighting the impact these changes will have on users.

May I know why it was previously set to NO_ALTER_SYS?

We've discussed offline and agreed NO_ALTER_SYS is not necessary.
@yuhao-su