sleep_instead_of_delay

Added new SleepInsteadOfDelay rule for checking for whether Thread.sleep() is being used in suspend functions and coroutines.

Suggestions for additional tests to increase code coverage would be welcome.

Suggestions for additional tests to increase code coverage would be welcome.

Yes, basically. If Thread.sleep isn't imported, then there wouldn't be any
non dot-qualified expressions of the function, correct? In that case, the
rule could skip parsing through expressions that it wouldn't have an
expectation of finding the sleep() function.
Op wo 6 jan. 2021 21:44 schreef Nicola Corti<EMAIL_ADDRESS>
@cortinico commented on this pull request.
In
detekt-rules-coroutines/src/main/kotlin/io/gitlab/arturbosch/detekt/rules/coroutines/SleepInsteadOfDelay.kt
https://github.com/detekt/detekt/pull/3335#discussion_r552952363:

private var sleepImported = false

override val issue = Issue(

   javaClass.simpleName,

   Severity.Defect,

   "Usage of Thread.sleep() in coroutines can potentially halt multiple coroutines at once.",

   Debt.FIVE_MINS

)

override fun postVisit(root: KtFile) {

   super.postVisit(root)

   sleepImported = false

}

override fun visitImportDirective(importDirective: KtImportDirective) {

   sleepImported = importDirective.importedFqName?.asString() in IMPORT_PATHS

to avoid having to search through all KtCallExpression descendents
Are you trying to avoid this for performance reasons?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/detekt/detekt/pull/3335#discussion_r552952363, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AC7SZ4IVJG4422X3XYQF6QDSYTDTRANCNFSM4VOIGSRA
.

Yes, basically. If Thread.sleep isn't imported, then there wouldn't be any
non dot-qualified expressions of the function, correct? In that case, the
rule could skip parsing through expressions that it wouldn't have an
expectation of finding the sleep() function.
Op wo 6 jan. 2021 21:44 schreef Nicola Corti<EMAIL_ADDRESS>
@cortinico commented on this pull request.
In
detekt-rules-coroutines/src/main/kotlin/io/gitlab/arturbosch/detekt/rules/coroutines/SleepInsteadOfDelay.kt
https://github.com/detekt/detekt/pull/3335#discussion_r552952363:

private var sleepImported = false

override val issue = Issue(

   javaClass.simpleName,

   Severity.Defect,

   "Usage of Thread.sleep() in coroutines can potentially halt multiple coroutines at once.",

   Debt.FIVE_MINS

)

override fun postVisit(root: KtFile) {

   super.postVisit(root)

   sleepImported = false

}

override fun visitImportDirective(importDirective: KtImportDirective) {

   sleepImported = importDirective.importedFqName?.asString() in IMPORT_PATHS

to avoid having to search through all KtCallExpression descendents
Are you trying to avoid this for performance reasons?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/detekt/detekt/pull/3335#discussion_r552952363, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AC7SZ4IVJG4422X3XYQF6QDSYTDTRANCNFSM4VOIGSRA
.

Yes, basically. If Thread.sleep isn't imported, then there wouldn't be any non dot-qualified expressions of the function, correct? In that case, the rule could skip parsing through expressions that it wouldn't have an expectation of finding the sleep() function.

I would say that in this case the readability outweighs the performance benefits. It was not immediately clear to me why you were interested in the checking if sleep() was imported or not.
I would simplify the checkDescendants function with
    private fun PsiElement.checkDescendants(message: String) {
        forEachDescendantOfType<KtCallExpression> { it.verifyExpression(message) }
        forEachDescendantOfType<KtDotQualifiedExpression> { it.verifyExpression(message) }
    }

You're anyway running verifyExpression for all the KtDotQualifiedExpression, I don't see the benefit of optionally skipping the KtCallExpression occurrences only. You can then remove all the postVisit and visitImportDirective code as well as the specific cases in the tests.

Yes, basically. If Thread.sleep isn't imported, then there wouldn't be any non dot-qualified expressions of the function, correct? In that case, the rule could skip parsing through expressions that it wouldn't have an expectation of finding the sleep() function.

I would say that in this case the readability outweighs the performance benefits. It was not immediately clear to me why you were interested in the checking if sleep() was imported or not.
I would simplify the checkDescendants function with
    private fun PsiElement.checkDescendants(message: String) {
        forEachDescendantOfType<KtCallExpression> { it.verifyExpression(message) }
        forEachDescendantOfType<KtDotQualifiedExpression> { it.verifyExpression(message) }
    }

You're anyway running verifyExpression for all the KtDotQualifiedExpression, I don't see the benefit of optionally skipping the KtCallExpression occurrences only. You can then remove all the postVisit and visitImportDirective code as well as the specific cases in the tests.

It seems that although 1.16.0 has not been released yet, this new rule has been published in https://detekt.github.io/detekt/coroutines.html#sleepinsteadofdelay.
For me, this led to
> Run failed with 1 invalid config property.
  	- Property 'coroutines>SleepInsteadOfDelay' is misspelled or does not exist.

When I unknowingly tried to enable this with version 1.15.0.

It seems that although 1.16.0 has not been released yet, this new rule has been published in https://detekt.github.io/detekt/coroutines.html#sleepinsteadofdelay.
For me, this led to
> Run failed with 1 invalid config property.
  	- Property 'coroutines>SleepInsteadOfDelay' is misspelled or does not exist.

When I unknowingly tried to enable this with version 1.15.0.

It seems that although 1.16.0 has not been released yet, this new rule has been published in detekt.github.io/detekt/coroutines.html#sleepinsteadofdelay.

That's expected as the documentation website follows the status of the current master. If you want to use SleepInsteadOfDelay you can consider using our snapshot version https://detekt.github.io/detekt/snapshots.html or wait for 1.16.0 to be released.

It seems that although 1.16.0 has not been released yet, this new rule has been published in detekt.github.io/detekt/coroutines.html#sleepinsteadofdelay.

That's expected as the documentation website follows the status of the current master. If you want to use SleepInsteadOfDelay you can consider using our snapshot version https://detekt.github.io/detekt/snapshots.html or wait for 1.16.0 to be released.


[Frontend] Make Get Involved page

Deliverables:

[ ] Add route for get Involved page
[ ]  Make a good looking standard Get Involved page having the ways of getting involved like Opening up an Issue, contributing to codebase etc. You can take reference from here and here

Please make sure to show the design here once before opening up the PR.

I would like to work on this.
Please assign this to me.

I would like to work on this.
Please assign this to me.

sure @atharva-upadhye-01 Go ahead with this issue. Looking forward to your PR :)

sure @atharva-upadhye-01 Go ahead with this issue. Looking forward to your PR :)

Adding Get Involved item in nav bar looks good in mobile view but gets distorted in landscape view

So digging on it too.

Adding Get Involved item in nav bar looks good in mobile view but gets distorted in landscape view

So digging on it too.

@atharva-upadhye-01 don't add this in navbar, in footer we have a text Get Involved under Other section, just make that direct to the Get Involve page

@atharva-upadhye-01 don't add this in navbar, in footer we have a text Get Involved under Other section, just make that direct to the Get Involve page

Yes I won't add Get Involved. But I just now fixed the CSS of navbar so that it can contain more tabs.

Would you like to merge this ?

Yes I won't add Get Involved. But I just now fixed the CSS of navbar so that it can contain more tabs.

Would you like to merge this ?

Yes I won't add Get Involved. But I just now fixed the CSS of navbar so that it can contain more tabs.

Would you like to merge this ?

remove the other tab and just open up the PR with fixes(if any) I will check that on my end once and if i find that relevant, I would surely merge that with proper labels :)

Yes I won't add Get Involved. But I just now fixed the CSS of navbar so that it can contain more tabs.

Would you like to merge this ?

remove the other tab and just open up the PR with fixes(if any) I will check that on my end once and if i find that relevant, I would surely merge that with proper labels :)

How does this design look ?

How does this design look ?

@atharva-upadhye-01 design looks preety good but instead of using picture in the card, please use few lines describing the heading like under Report Issue , you can put If you came across something that isn't working perfectly, feel free to open up an issue for the same

@atharva-upadhye-01 design looks preety good but instead of using picture in the card, please use few lines describing the heading like under Report Issue , you can put If you came across something that isn't working perfectly, feel free to open up an issue for the same

@Kajol-Kumari  How is this ?

@Kajol-Kumari  How is this ?

@atharva-upadhye-01 looks nice and clean, just make the heading consistent with other pages and it will be good to go :(

@atharva-upadhye-01 looks nice and clean, just make the heading consistent with other pages and it will be good to go :(

[x] Heading font made consistent
[x] Added hovering effect

[x] Heading font made consistent
[x] Added hovering effect

Hey @atharva-upadhye-01 just make the heading size and style similar to other pages like FAQs and feel free to open up a PR :)

Hey @atharva-upadhye-01 just make the heading size and style similar to other pages like FAQs and feel free to open up a PR :)

Is this issue open to grab? @Kajol-Kumari

Is this issue open to grab? @Kajol-Kumari

Hey @vedikaag99 we can't assign this to more than one person. We will be opening more issues very soon :)

Hey @vedikaag99 we can't assign this to more than one person. We will be opening more issues very soon :)

Can I work on this issue?

Can I work on this issue?


SSR: can't scroll on (server) first render

Hi,
I am migrating my an app to Server Side Rendering, and to make sure the site is browsable on the first render, I disabled the client bundle. So my server renders the markup, sends it to the client, and that's it.
I am using the universal prop on Scrollbars, with autoHeightMin={0} and autoHeightMax={'100vh'}
With the first render, I can't scroll. Is this caused by the style differences (between server/client) brought by the universal prop? Is this "normal" or am I doing something wrong?
Thanks in advance!

same problem here , any solution?

solution's here
https://github.com/malte-wessel/react-custom-scrollbars/blob/master/docs/usage.md#universal-rendering


[system] Fix discrepancy between core and system ThemeOptions

Fixes #27139.

[x] I have followed (at least) the PR section of the contributing guide.

The CI failures look unrelated at first glance, but I'm not sure. @hbjORbj Can you provide some guidance?

@fmeum Thank you for your contribution. I simply had to click "Details" and do "Re-run from failed" :)


Mosquitto broker SSL error - Missing documentation

The problem
Dear all,
I am trying to use Mosquitto using the official addon. In the docs it is mentioned that it is possible to disable connection to insecure port 1883 (what about 8883?) and listen to 1884. In the example it is shown how to configure certfile and
keyfile. However, my noob question is:
how can I create the key in hassio?
Environment

Add-on with the issue: Mosquitto broker
Add-on release with the issue: NA
Last working add-on release (if known): NA
Operating environment (OS/Supervised): Hass.io

Problem-relevant configuration
Default conf
logins: []
anonymous: false
customize:
  active: false
  folder: mosquitto
certfile: fullchain.pem
keyfile: privkey.pem
require_certificate: false

Traceback/Error logs
[19:11:26] INFO: Setup mosquitto configuration
[19:11:26] WARNING: SSL not enabled - No valid certs found!
[19:11:26] INFO: No local user available
[19:11:27] INFO: Initialize Hass.io Add-on services
[19:11:27] INFO: Initialize Home Assistant discovery
[19:11:27] INFO: Start Mosquitto daemon

Additional information

This is linked to #1412 , closed without an answer.

This is not an issue with the addon, or it's documentation.
You should already have the certs before trying to use it.
Since this is not a bug/issue here, I'm closing it.
For support please reach out on the forums or discord
Thanks :+1:

Thank you @ludeeus, can you then point me and the author of #1412 to the section where we can find info about this on the documentation?


With lib hyps

Done. Note that I've introduced a Nix overlay for hydra-battles, but we can remove it as soon as we update the derivation file in nixpkgs to add the LibHyps dependency.

Thanks, @palmskog and @Zimmi48.
I plan to keep temporarily withLibHyps as a separate branch, the time to experiment and define appropriate auto-renaming tactics. Meanwhile, I'm working also on the gaia-hydras part (in ssreflect style)


Various fixes to the "Download image from URL" functionality

This commit adds an user-agent string to the download request wich prevents some sites from returning a 403 (forbidden) status.
Clicking the download button on the thumbnail, also showed the thumbnail because the event wasn't stopped. The parts thumbnail didn't update after a succesfull download of the image, reloadImage was never called.

I've also found that the thumbnail delete button is not showing after an upload. Would it be okay for me to throw these changes in with this PR? Or should I make a separate one?

@bloemp seems related enough for it to be in the same PR

All good from my end, requires sign off from @matmair

Glad to be of some help while trying to create an iventory for my electronics hobby and learning python and django along the way.
Merry Christmas!

@bloemp thanks for your contributions! Everyone starts somewhere :) I hope we can see more contributions from you. Have a great holiday


glibc: cherry-pick fix for CVE-2023-4911 "Looney Tunables"

cc @jsoo1

wait nevermind, it doesn't apply cleanly


Filter and Search produces incorrect filter

After entering a string in the search box within a column's filter, the list options are shorten to the check-box matching the searched item, then after checking the item outputted by the search, you end-up actually filtering by a different item than the one you searched for, see images. Then, Step 3 shows how the dataframe was filtered by other value different to the one selected from the search.

OK thanks for the report, I should have a fix for this in the next beta.  Hopefully later this week or next week.

Fixes has been merged and releases in beta 8.  Please give the new version a shot and reopen the issue if it's not fixed.  Thanks.


BROOKLYN-570: fix entity synchronizing on self

Fixes https://issues.apache.org/jira/browse/BROOKLYN-570

Thanks @aledsage. Tests passed, merging this now


2790: devolve management only to schools with no who_will_order_devices set

Context
Card
Changes proposed in this pull request
When a school user is invited to join GHwT, devolve management to the school only if it is not already set.
Guidance to review

 Bug when inviting school users


request: implement Goto like YCM

Go to include/declaration/definition

@butterflyfish Hi :)
This repository source for deoplete.nvim. so your implements are the burden is too heavy.
but, I planned deoto.nvim.
Dark powered Next Generation asynchronous Goto for Neovim.
Please wait for a little :)

@zchee,thank you for your response. I'm looking forward your work.

@butterflyfish :)

Is there any progress on that?
Or any other recommendation to use?
Thanks

@stfl Current state...
https://github.com/zchee/clang-server


No border when only one window

If there's only one window on the workspace, remove the window's border

dwindle
https://wiki.hyprland.org/Configuring/Dwindle-Layout/#config
master
https://wiki.hyprland.org/Configuring/Master-Layout/#config
please consider reading the wiki

The only option I can see on master layout is no_gaps_when_only, and that's not the same thing

then you can script it by altering the window prop with hyprctl when there's only one window on a workspace.

I am also looking for something similar. Although it seems to me that it would not be difficult to add a setting for this, I won't ask the developer because I can't make the necessary pull request myself. However, perhaps someone can share a similar script that removes the border when there is only one window on the desktop?

with 4eb42fab7bb1b1d6c8fec4682c8c1de6dca7049b you can now do this via
windowrulev2 = noborder, onworkspace:1

windowrulev2 = noborder, onworkspace:1

This doesn't seem to work anymore (or perhaps it never did). Instead of removing the border when there's only one window on a workspace, it removes borders from all windows on workspace 1 and has no effect on other workspaces.

onworkspace changed syntax in 0.39.0. See https://wiki.hyprland.org/Configuring/Workspace-Rules/#workspace-selectors
Now it would be [t1] instead of 1

Thanks! Just to clarity for others, the updated complete rule is:
windowrulev2 = noborder, onworkspace:w[t1]


neon: implementation of set_lane

This was based on the st1_lane implementation, it's just shuffling some things around, should be pretty simple.
(CC @tlively @ngzhian)

Merged as 17b2d263481d341fa5c007e215ee76f47bf98271, thanks!
I'm not sure why GitHub didn't close the issue when it was merged, but it's been in master for a couple days :/

Ah, because it was in my local master branch but I didn't push, oops.  Anyways, it'll be in soon, just waiting on CI.


Log level for SAML protocol-errors

I noticed that SAML protocol-level errors are logged at INFO-level:
https://github.com/OpenConext/OpenConext-engineblock/blob/707cd875b13ce70f7209b924722e379f112f6995/library/EngineBlock/Corto/Module/Service/SingleSignOn.php#L185
I guess it's debatable, but I usually don't log INFO messages and these situations are not 'normal operation' in my book (eventhough it's the right thing to do as per spec).
May I suggest this (and similar) case is changed to either NOTICE ('Interesting events') or perhaps even WARNING ('Normal but significant events')?

I would disagree that it’s not normal behaviour. Perfectly fine for an SP to request passive and they must always be prepared that the answer is No, and it’s legitimate and expected that EB will not render a wayf so it’s fine that EB responds this way.
We’ve worked to reduce the amount of noise in warning and error so only actual problems surface. This is just by design that it works this way, so warning is not appropriate.

OK, I can live with that explanation.. I guess I can just raise the log level to see more detail.
However, in my case the SP is another EB instance showing an 'Identity Provider error' to the user and the actual SP never receives the NoPassive and therefore can't anticipate on it.. Shouldn't the SAML-error be passed through the proxy?


Using 2FA instead of proxy method

Hi,
How can I go back to the 2FA method instead of proxy ? The documentation does not say how this can be done. Newer versions of alexa_media force proxy method (since ~ 2 months now). I don't see any setting (GUI or YAML) to switch back to 2FA.
I haven't been able to use proxy method due to getting "500 Internal Server Error" when it prompts me to log in to my Home Assistant instance after verifying my proxy App key.
Gave up on trying to get around this issue and want to use the older 2FA method (SMS) instead.
Thanks.

Downgrade.


feat(forge): Solidity cheat to find and replace text in bytes and string variables

Component
Forge
Describe the feature you would like
Suppose you have a differential test that compares the bytecodes of a contract deployed using two different methods, e.g. see deployPermit2.
Now, imagine the contract-under-test takes a storage record of its address(this) in the constructor. In this case, the two deployment methods would produce two slightly different bytecodes (only ~20 bytes would be different), so the differential test would fail.
There are various ways to fix this using vm.ffi, but it would be nice to have a native find-and-replace cheat so that users don't have to exit Solidity in this scenario.
Additional context
Late edit: it looks like I could use Solady's LibString for this.

I would also like this feature.
LibString is not sufficient for me since I need UTF support. solidity-stringutils is too low-level and too slow for my needs.
What I have in mind is this interface:
function stringReplaceAll (string memory source, string memory pattern, string memory replacement);

Where pattern will be a regex (as in Regex::new(pattern).unwrap()) and the cheatcode would invoke .replace_all(source, replacement).
@PaulRBerg @mattsse WDYT?

Marking as resolved by https://github.com/foundry-rs/foundry/pull/6891, implementing native cheatcodes for working with strings, including replace
Feel free to re-open if there are still action items @Tudmotu / @PaulRBerg


[Feature] Fabric port please

Please port this mod to Fabric. I love it, but it's a shame it's only on 🅱orge.
(I deleted the template because none of it really matched what I wanted to say)

I don't know how to makes fabric mod and I don't have the time to learn

I don't know how to makes fabric mod and I don't have the time to learn

Do I have permission to make a port?


feat: Prepare the UI for Languages written in Arabic script.

Is your feature request related to a problem? Please describe.

Add font that looks nice in Arabic, Farsi (and other languages written in Arabic script in General)
Notice that some of these languages have unique characters like چ and پ in Farsi.
Prepare the UI to Switch to RTL when it's needed.

Describe the solution you'd like to see
Use the Bahij font for Arabic docs Bahij
Use the Dana font for Farsi docs Dana
(I'm not aware of the type License for these fonts, I will appreciate your help on this point.
Describe alternate solutions
Not doing that
Additional information
No response

Are you aware of any other OSS projects that do a good job with Arabic/Farsi docs? Maybe we can learn from them.

Yes, The React Libray has Arabic and Farsi Docs,
https://ar.reactjs.org/
https://fa.reactjs.org/

Prepare the UI to Switch to RTL when it's needed.

I think we support this, should just be putting dir: "rtl" in the frontmatter

This will be improved significantly by https://github.com/t3-oss/create-t3-app/pull/820
I don't want to tag that PR as "resolving" this because we'll probably need to do more afterwards, but wanted to have it linked here.

Closing this for now after #820 is merged, please open individual issues for any remaining bugs in rtl :)


Allow code snippets drag and drop into existing notebook cells

As per suggestion in this PR comment, in addition to dropping a snippet into a notebook as a new cell, users could also benefit from dropping it into existing notebook cells (it might be related to how the notebook widget listens to dragover events).
This task still can be accomplished with the code snippets insert button.

Could I work on this issue?


Compile ts using alwaysStrict mode

@KamilSzostak,
Thanks for your contribution as a Microsoft full-time employee or intern. You do not need to sign a CLA.
Thanks,
Microsoft Pull Request Bot


Info to checkout specific cairo-vm commit

Add instructions to checkout a specific cairo-vm commit. Old instructions don't work with the newest cairo-vm code.
Fixes https://github.com/starkware-libs/stone-prover/issues/22
Also the following small doc fixes:

Fix the path for the verifier
Fix the path for the prover
Add annotation generation for the prover. This is required by some verifiers (Integrity)

Thanks, but we feel it's better to always rely on cairo-vm's latest commit and just fix the instructions accordingly.

Very well. Should I separate the other fixes to a different PR?


Mock Auto Increment ID Not Working for Postgres Backend Complaining About Null

Description
When mocking my database I am attempting to mock the creation of a instance.
pub struct Model {
    #[sea_orm(primary_key)]
    pub id: i32,
    pub status: Option<Status>,
    pub date_initiated: DateTime,
    pub date_responded: Option<DateTime>,
}

let mock_db = MockDatabase::new(DatabaseBackend::Postgres)
            .append_query_results(vec![]);

   let request = friendships::ActiveModel {
        status: Set(Some(Status::Pending)),
        date_initiated: Set(Utc::now().naive_utc()),
        ..Default::default()
    };

    request.insert(db).await.map_err(|err| {
        log::error!("{:?}", err); // Assuming log crate is used
    })?;

I keep getting
Type("A null value was encountered while decoding \"id\"")

I am not sure what is the issue and why I keep getting the null. I have tried stack tracing it but not sure where it is happening.
Expected Behavior
Creation of request
Actual Behavior
Null error
Workarounds
I tried creating results and worked around making the id 0 by default.
Versions
├── sea-orm v0.12.12
│   ├── sea-orm-macros v0.12.12 (proc-macro)
│   │   ├── sea-bae v0.2.0 (proc-macro)
│   ├── sea-query v0.30.7
│   ├── sea-query-binder v0.5.0
│   │   ├── sea-query v0.30.7 (*)

After revisiting the SeaORM documentation, I've resolved the issue I encountered with the mock database while trying to mock the creation of an instance. The root cause was a misunderstanding of how the MockDatabase is intended to function, specifically regarding the use of append_query_results and append_exec_results.
To address the Type("A null value was encountered while decoding "id"") error, it was essential to properly simulate the database operations. For the example provided, both the creation of friendships::ActiveModel and the expected insert operation needed to be reflected in the mock setup—append_query_results for the select operations and append_exec_results for the insert/update/delete operations.
This clarification made it evident that the mock database doesn't act merely as a container but requires explicit setup for each type of database operation to accurately test the behavior of the code under different conditions.
I recommend enhancing the documentation to more clearly explain the interaction between append_query_results and append_exec_results, especially for new users of SeaORM. This guidance could prevent similar misunderstandings in the future. The documentation at https://www.sea-ql.org/SeaORM/docs/write-test/mock/ would be a great place for such detailed examples and explanations.
I'm closing this issue as it was resolved through a better understanding of the documentation and the intended use of SeaORM's mocking capabilities. Thank you.


Create filter to turn default youtube embed links into noocookie ones

Source: https://github.com/jsoxford/jsnotoxfordsite/pull/13#pullrequestreview-588041785
Turn
https://www.youtube.com/embed/m8iMGFjVgGg

into
https://www.youtube-nocookie.com/embed/m8iMGFjVgGg

Make a filter for it per https://www.11ty.dev/docs/filters/

Also handle these sort of links:
https://www.youtube.com/watch?v=m8iMGFjVgGg


Inline field keys cannot contain hyphens (kebab case)

From what I can see, inline kebab case fields e.g. imdb-rating do not seem to work in a query such as
table imdb-rating as "Rating"

This does work if the field is present in the YAML front matter, but not inline.
Version: 0.2.14

Fixed in next release. Totally forgot.


Vacation status

The dashboard should allow us to get/set vacation status

Individual editor vacation status (ideally read off of editor Slack status)
Project-level vacation status (such as turning off for holiday periods, etc.)

This probably interfaces with other tools, such as

Making the editorial bot respond with org/editor vacation status
Changing repo submission issue templates or otherwise (look at how Will Landau sets this for {targets}

The first of these is done, with results visible at https://ropensci-review-tools.github.io/dashboard/editors.html. The second can be directly adapted from current individual-level code.


Remove unsupported Python versions from Readme

I missed these from my other pull request

I wouldn't say works anymore. Maybe change it to "is supported with", since the older python versions should technically work with it, nothing is wrong, they just can't be tested anymore so future additions may break it.

Hey Jamie, I'd like to merge this PR but I agree with Stein's comment about the wording. Would you mind changing "works with" to "is supported on" or something to that effect? Obviously the original wording isn't your fault but now's a great time to change it.
Thanks again, documentation updates are always needed.

No worries, I've updated the wording.

Awesome!


[Question]:Support of onPress event under the ResumableZoom?

Summary
Hello, may I ask can I use component like Button which will have a onPress event under the component wrapped under ResumableZoom?

Hi there, no you can not use any pressable component within any of the components exposed by this library, you gotta use onTap callback property if you need some sort of touch handling, anyways I get this question asked frequently, but no one ever details their use case properly in order for me to give a possible solution.
Expanding on this one, you can not use them because of Gesture Handler will take over any touch events, nonetheless I've tried solutions to this issue but none of them have proven to be achievable to me, some simply do not work and other ones require me to break features I value more than this one.

@cwy11111 After a lot of testing I've managed to get it working, however I do not have an iOS device to test whether it works properly or not on such system, in case you've got one could you please run this gist? If you can, let me know if it works like the lib does.
The gist tis the pinch implementation that should make it to the lib in the next release if everything works fine.

onPress support has been added in version 3.0.0


ssl, and parsing of urls

Extended ssl support for the rest of the functions, also found a bug where you could not access a job if it has spaces in it, so modified the uri to fix that. Also broke out the http request to a hudson_request with the ssl logic, to avoid repetition.

Thanks Jai! I merged and released your changes.


Complete Checkout

Header.elm

Sign-in button now scrolls to and focuses the email field of Checkout
Uses an outbound port to execute the DOM functions from JavaScript

Catalog.elm

Show purchase state of items when signed-in
List gets class signed-in, items either class paid or unpaid

New Store/Content.elm

Queries issue's content from Firebase
Code moved from Stage.elm to its own module

Checkout.elm

Form validation executed immediately (by updating dependency etaque/elm-simple-form to verion 2.0.1)
Possible intents (of the user): signIn, signUp, resetPw, signUpAndBuy, newCardBuy, existingCardBuy
There is one Form (using etaque/simple-form) for all cases
The form has optional groups for those fields
Form is aware of customer model and issue model
The validation function checks all the cases
Effects for all intents
Simulate purchase for debugging purposes

Stripe

Talks to Stripe.js via ports
Validation of card data fields
Generation of a credit card token
Further implementation needs some server-code

Simpler way of passing down data

Shop name is now passed within a context to sub-components

Memo to myself:
The model of Checkout should probably use a ADT instead of a record.

@ThomasWeiser Thank you!
@denisborovikov Let's review this today.

Stripe - Further implementation needs some server-code
@ThomasWeiser what would you recommend for hosting of the gateway? Heroku, AWS EC2, something else?

I like that Heroku can be deployed from CLI
https://devcenter.heroku.com/articles/getting-started-with-nodejs#set-up

I wasn't into back end hacking for some time. So I cannot give a recommendation right now.


Spinner fix

Correct the file upload spinner when using the project properties/'media and quota' page.
The PR contains a second commit just for some typos in comments.
The last 2 commits correct the error msg when a file is too big to upload.

Thanks @jayaich, much appreciated...


13 add a template doc for describing the projects high level architecture

Proposing a diagram template placed in /docs/architecture.md
Currently theres no link from the README.md ...

Discussed the review with @zorp...
Came up with these suggestions:

We should add why Mermaid is the chosen format
Link to getting started with - mermaid guides...
Intro explaining what is this diagram delivering (business value)

@zorp: Changes implemented... ready for merge if you can accept the implemented changes. ➡  https://github.com/OS2offdig/os2-docs-template/blob/13-add-a-template-doc-for-describing-the-projects-high-level-architecture/docs/architecture.md


Why StaticArrays = "=1.0.0"?

Why can't we use HybridArrays alongside StaticArrays v1.0.1, for example?

HybridArrays does some type piracy of StaticArrays and heavily uses its internals so I decided to be on the safe side and require exactly the version I've verified. Maybe I'm too cautious here because so far I think only one patch release of StaticArrays broke HybridArrays.

For a long time there was no breakage from StaticArrays so HybridArrays 0.4.9 has a less strict version bound :slightly_smiling_face: .


expect.falsy error message typo

In nester the function expect.falsy has the error message
error('expected expression to be true, but got true', 0)

but it should be
error('expected expression to be false, but got true', 0)

Thanks for reporting, I've fix this and some leaks in nester that I've noticed.


Hardcoded paths

There are hardcoded fonts paths in X11 driver. For example, on Archlinux truetype fonts are installed in /usr/share/fonts/TTF, not /usr/share/fonts/truetype. Also there is per-user ~/.fonts that can also contain some fonts to use.
Also I've received this message while executing go run:
2019/05/04 07:42:51 kit.GoSrcDir: unable to locate directory ("github.com/goki/gi/icons") in GOPATH/src/ ("/data/gopath") or GOROOT/src/pkg/ ("")

Which just isn't right because in that case you should use something like https://github.com/UnnoTed/fileb0x to embed icons into Go code as separate package. Looks like due to that error OpenGL context isn't initialized properly and my application isn't working.

Thanks for the tip for file embedding -- will definitely need to get that done and if you have any experience and could contribute at PR that would be great!
Those initial font prefs can be overwritten in the GoGi Prefs panel, FontPaths, so you can add / fix etc there.
I don't think either is going to be the source of the openGL issues which may either have been fixed by now due to a lot of updates I've been doing, or are due to your driver not being sufficiently up-to-date, or something else.  anyway if you can include any output that might help diagnose.

finally fixed embedding of icons.


Themes not found when run with SUDO.

When I launch micro normally (without sudo), I can access my theme collection located in ~/.config/micro/colorschemes. However when I run micro in combination with sudo, I am greeted with the default color scheme and am unable to switch it to the ones located in ~/.config/micro/colorschemes .
And thank you in advance!

When you run with sudo, your normal home directory isn't used for configuration (you are running as root). You can set the config directory manually with the -config-dir flag, or by setting the MICRO_CONFIG_HOME environment variable.

When you run with sudo, your normal home directory isn't used for configuration (you are running as root). You can set the config directory manually with the -config-dir flag, or by setting the MICRO_CONFIG_HOME environment variable.

Thank you so much!

I'm sorry but how can I set the $MICRO_CONFIG_HOME?

In the shell, you can run export MICRO_CONFIG_HOME=/path/to/directory. You may want to place this in a configuration script like ~/.bashrc so that it runs every time the shell starts.

@lominoss-git, following @zyedidia's explanation, run the following:
sudo sh -c "echo export MICRO_CONFIG_HOME=$HOME/.config/micro >> ~/.bashrc"

You should close this issue, as it's not really an issue with micro.

@lominoss-git, following @zyedidia's explanation, run the following:
sudo sh -c "echo export MICRO_CONFIG_HOME=$HOME/.config/micro >> ~/.bashrc"

You should close this issue, as it's not really an issue with micro.

Thanks!


DST should be array of bytes.

Regarding the parameters of hash_to_field:
DST: string,
p: bigint,
m: number,
k: number,
expand: 'xmd' | 'xof',
hash: H,

DST must be an array of bytes.
There should be a way to validate that H is conforming with the expander, so it avoid to call expander = "xof" and hash = "sha-256" for example.
https://github.com/paulmillr/noble-curves/blob/0163b635324dbf503d4ff2670e23ec2fb55e1620/src/abstract/hash-to-curve.ts#L121-L140

There should be a way to validate that H is conforming with the expander, so it avoid to call expander = "xof" and hash = "sha-256" for example.

Don't understand, can you clarify this?

xmd only applies to Merkle-Damagard type of functions (SHA family for example)
xof are only extendable output functions (SHAKE for example).
it should be not possible to call expander='xof' with H = 'sha-256'

Non-shake Sha3 (which is not Merkle Damagard) is also allowed, right?

Yes.

Have you seen any case where dst is bytes? Glancing over spec it seems ALL dsts there are human readable strings (even if they are converted to bytes then).

From the spec:

The example tags given above are assumed to be ASCII-encoded byte strings without null termination, which is the RECOMMENDED format. Other encodings can be used, but in all cases the encoding as a sequence of bytes MUST be specified unambiguously.

Thinking twice, strings in Javascript are Unicode, not sure if this will be an issue. Maybe not.

Fixed in 6bc4b35. For xof stuff we'll try to fix it later once we get types in place.


Road to v0.4

Hi there,
We already have a bunch of new things ready (or close to). So I'd suggest we release a v0.4 in the near future (like in 2-3 weeks or so).
Here is a list of the new things to come:

[ ] Early classification method developed in #198 (should be ready in 2-3 weeks I think)
[x] DTW with custom ground metric developed in #219 (it's already in a good shape, a few minor changes are required) EDIT: TO BE MERGED
[ ] Better checks for test data in #223  and bugfix for related #220 issue (looks like it could be done in a short time, but I might be wrong)
[ ] I also think #211 should be merged to deal with both recent and old versions of the sklearn API
[x] EDIT: #222 that adds a new kmeans++ that is supposed to draw better seeds for kmeans when DTW/softDTW is used

There are also the things that are already merged in dev.
Also, I changed some stuff in the docs so that all categories are directly accessible in the top menu bar (and the examples in the gallery are organized into categories), let me know if you have comments on this.
Finally, this v0.4 could be the occasion to change a few things in the organization of the project. Here is a list of what I have in mind:

[ ] Drop Python2 support (should it be dropped for this version already or just warned that it will be dropped in version XX to come?) -> this refers to #191
[ ] Have better branch names and a default branch that makes sense (I think we should have branch names for past versions -- already pushed to PyPI -- and keep master as the default branch that stores changes that are not yet deployed on PyPI) -> this refers to a discussion by @rth in #190  )
[ ] Maybe we should move the docs to docs/ rather than tslearn/docs so that we do not have to exclude this path from the tests -> idea by @rth once again

Finally, you may have noticed that we now have automatic wheel generation using GitHub Actions. This is not really related to v0.4 since I already tested it on the current version, but we should now be able to distribute wheels for a wide range of platforms.
OK, so the idea of this Issue is to discuss these points that we should include in the next release, all your ideas are welcome as soon as they can be implemented in a short amount of time :)
Cc @GillesVandewiele @johannfaouzi

And maybe it would be time to move from rtavenar / tslearn to tslearn / tslearn

I agree with all of the following suggestions:

Drop Python2 support (should it be dropped for this version already or just warned that it will be dropped in version XX to come?) -> this refers to #191

Have better branch names and a default branch that makes sense (I think we should have branch names for past versions -- already pushed to PyPI -- and keep master as the default branch that stores changes that are not yet deployed on PyPI) -> this refers to a discussion by @rth in #190 )

Maybe we should move the docs to docs/ rather than tslearn/docs so that we do not have to exclude this path from the tests -> idea by @rth once again

Also, on this one:

And maybe it would be time to move from rtavenar / tslearn to tslearn / tslearn

I don't have a strong opinion, I think it could stay here. But I think that it may be ill-timed with the JMLR submission (we can still make changes to the submission though).

Yep, for the last point, the idea was: if we want to do it, we should do it before providing a camera-ready version, so maybe doing it soon would be a good idea.
Also, about Python 2 support, so you have an opinion, does it feel ok to drop it starting from tslearn v0.4 (and hence stop testing it / delivering wheels & conda packages for it)?

It could perhaps be a bit too drastic to remove the support straight away. Perhaps we could try to detect whether python2 or python3 is used and raise a deprecation warning for python2 (stating that it will be removed in a later version).
Side note: I didn't manage to review your PR yesterday Romain, I hope I can do it today!

It could perhaps be a bit too drastic to remove the support straight away. Perhaps we could try to detect whether python2 or python3 is used and raise a deprecation warning for python2 (stating that it will be removed in a later version).

PyPi stats are not too reliable (bots etc), but they currently show that the vast majority of usage is in Python 3. https://pypistats.org/packages/tslearn

So I don't think it would be too unexpected to drop it in 0.4 considering that most of other main packages in the python ecosystem already did it. Or in 0.5 if you prefer to wait one more release. Note that CI is not running python 2 now I think.

Ok then we could definitely drop it! And perhaps we could still raise a warning for python2 users (that we do not support it and that they better use python3).

we could still raise a warning for python2 users (that we do not support it and that they better use python3).

Recent versions of pip already raises a deprecation warning when one installs anything on Python 2. E.g. with pip 19.3.1,
$ pip install numpy
DEPRECATION: Python 2.7 will reach the end of its life on January 1st, 2020. Please upgrade your Python as Python 2.7 won't be maintained after that date. A future version of pip will drop support for Python 2.7. More details about Python 2 support in pip, can be found at https://pip.pypa.io/en/latest/development/release-process/#python-2-support
[...]

I think the correct way to do this is to specify python_requires=">=3.5" in setup.py. Then Python 2 users can still install tslearn without error (it will just not be the last version, since pip will not select it). We also have to remember to update the conda recipe with an equivalent apporach. If we don't do this, running pip install tslearn would break for Python 2 users after a Python 3 only release.

OK, so I think we can drop python 2 compatibility for tslearn v0.4. I will follow your guidelines @rth , thanks a lot for that.
And the plan is then to do these things sequentially (what follows is mainly a note for myself):

merge #211 and #223 to dev
create a branch v0.3 from master and setup RTD to generate docs for this branch rather than master
merge dev to master that would then become the development branch
merge  #198 and #219 to master + a PR that would drop Python 2 support when possible
Move the docs/ folder
Release v0.4 (ie create a branch v0.4 + setup RTD to generate docs for this branch + all the usual release process etc.)

We also have to remember to update the conda recipe with an equivalent apporach.

If I am correct, we only provide conda packages for Python 3 so it should not be an issue.

If I am correct, we only provide conda packages for Python 3 so it should not be an issue.

yes, we just have to rember to skip python 2 during build with e.g. https://github.com/conda-forge/scikit-learn-feedstock/blob/3ac704288b5a47d66dbe8b27369b5b917014b230/recipe/meta.yaml#L14

Now that we have a camera-ready version of the tslearn paper to prepare, I will move item number 7 on the top of the list :)

I have released v0.4 on PyPI!
I forgot to remove python 2.7 builds before uploading to PyPI. But these should be skipped next time.


Add sorting for sql panel query time.

Sorting added for SQL query time to quickly identify which query costing more. Any suggestions?

Hmm, I don't like this too much.
If you have so many queries on a page that it's not visible at a glance which queries took longest you should probably spend some time optimising the query count before spending developer time on individual queries.
Also, I fear the maintenance burden of introducing sorting here, and later everywhere.

Thanks for the response. I understand there will be maintenance and improvement burden. I'll look into some other improvement. If you have any suggestion let me know.


⚠ Bofrost.es has degraded performance

In 325971d, Bofrost.es (https://www.bofrost.es) experienced degraded performance:

HTTP code: 200
Response time: 1651 ms

Resolved: Bofrost.es performance has improved in 6c534ab after 8 minutes.


CPU inference?

Hi, thanks for your work, the ssm architecture is very interesting!
I am using some tiny variants of mamba blocks in my work and would appreciate the possibility to have an option for CPU inference. If I understand correctly things break on device="cpu" due to causal_conv1d, and perhaps it is not too much to ask to make it fall back to F.conv1d for example? Would be much appreciated if CPU inference had an in-house implementation!

Do you want to send a PR for the conv1d?
The selective_scan operation is also implemented in CUDA, but there's a reference implementation in Pytorch (probably quite slow).

I guess it makes sense to do a PR for both conv1d and selective_scan in the forward; there seems to be a faster than sequential implementation of the selective scan in here and perhaps this is the way to go, it would however add dependence on pscan. I'll see if I bring myself to do that.

Hi, I have a fork here with a CPU-only version using a reference scan loop. It runs decent enough with small models, perhaps a compiled loop would speed it up a bit
https://github.com/proger/mamba-cpu/commits/main/

@proger I've been trying to make use of your fork to do inference on a CPU-only device, but I'm not sure if it's configure correctly. When I build and run it out of the box, using pip install with MAMBA_SKIP_CUDA_BUILD=TRUE and MAMBA_FORCE_BUILD=TRUE, selective scan is still trying to call the cuda version of causal_conv1d. Is your fork meant to be a drop in replacement or do I need to modify my existing code to call the CPU-only version of MAMBA.

it's now available on llama.cpp (supporting Mamba GGUF files since february)


Eqy check

This PR will fail since CI/CD does not have yosys/eqy etc but it is to provide a general idea of how we can add equivalency checks to our unit tests.  The scripts etc need to be made more flexible to handle different top modules and some more cells would probably need to be added to cells.v but we at least have a couple of regressions where it is already working (provided the machine has yosys and eqy installed correctly ... and available on the path).
cc: @tspyrou @maliberty @QuantamHD

@gadfort Can you help review this as well

Do you actually have the implementation of run_equivalence_test done, or is this just a sketch?

I think we'd need to see the eqy scripts to be able to review properly. Why are the FFs empty in the cells.v? What happens if they are resized? Would eqy be able to verify that?

Perhaps you need to 'git add' some new files?

Perhaps you need to 'git add' some new files?

@maliberty you are right :). I needed to "git push" some files.
@gadfort I will look into adding the the body of the FFs and other info.
@QuantamHD I will push the equivalence script. I need to add some code around it so we can run on different top cells (right now hardcoded to one cell name) etc.. Please note that to run this script you need to do the following:
https://github.com/YosysHQ/yosys
sudo make install
https://github.com/YosysHQ/eqy
sudo make install
I tried running equivalence on some of the smaller designs we have in ORFS and at least from my experience, these tools are not ready for anything other than toy designs. On jpeg, using the same netlist twice to do equivalence checking, the run took 2 to 15 hours (depending on the recipe you use for equivalence) and created roughly 10 million files. At the end, during the report generation step, the tool error-ed out because there were too many files. Here is a summary of the various strategies used. Please note that other tools may need to be installed to get some of these to work
#=======================================================
[strategy A]   # 15 hours
use sat
depth 10
#=======================================================
[strategy B] # 10+ hours
use sby
engine abc pdr
depth 10
#======================================================
[strategy C] # 15 hours.
use sby
depth 2
engine smtbmc bitwuzla
#======================================================
[strategy basic] # 3 hours.
use sat
depth 10
#======================================================

All these runs failed with too many files to consolidate for reporting. Other tools that may need to be installed (again just the standard yosys way since they don't support any other paths easily):
https://github.com/YosysHQ/sby
https://bitwuzla.github.io/download.html # Place binary in /use/local/bin

@openroadie I think that there's probably some optimization required to use these tools optimally on larger designs, but I think we should actually take a different tact that just running our CI designs through resizer, and seeing if they're equivalent.
I think it would be more effective to generate random netlists with ABC or another tool of some reasonable size, and running 100-1000s through the resizer, and check their equivalence in parallel. Essentially fuzzing the resizer.
We should still develop a strategy for larger blocks, but I think the strategy above is more likely to be successful in the short term.

@QuantamHD are you saying that running equivalence check on unit tests as a first cut is not worth doing?
As I already explained, I had no luck so far running the eqy check on the jpeg design with 54000 cells (post synthesis).
Do we have any data that would indicate that the yosys equivalence checks have been sucessfully used for 10k+ sized netlists?
Our unit tests do have a couple of hundred instances and since they were designed to test various transforms .... I am not entirely sure that starting with them is all that bad.

I think a first pass of the until tests is totally fine, but running it on significantly larger designs like JPEG should be more rare.
My hypothesis is that we can find more bugs with stochastically generated netlists of a more reasonable size.

@QuantamHD Agreed on real library (easier in some ways since I do not have to write cell verilog). Let me see if we have any sky
Larger designs == more bugs is also correct and inevitable as we add more complex transforms. It should be noted that the one bug we found would have been caught by a few dozen of our unit tests if we were doing equivalence checking. So adding the checks there makes everybody's life easier instead of debugging some large design.
We need to figure out a strategy for larger blocks but we do not have enough data at this point to set the size bar under which the open source equivalence checking tools work reasonably well. The limits right now are 300-500 (works fine) and 55000 (more or less unusable in it's current state).
One last thing to figure out is whether we want OR dev environment dependent on one or more yosys repos @tspyrou @maliberty or should we have an option to run equivalence checks (then we either need to have two sets of ok files or put in a fake "equivalence checks passed" for the case where we are not running them). If we go with this approach we may have issues slip in from the developer end and only be caught in CI/CD (which might be ok). In short.... a lot of logistical details are not clear at this point (none of them is a blocker for now).

@openroadie @QuantamHD  it's not clear to me that you would want to run this on every test (if it's fast then it might be okay to add to the tools that might modify the designs). If there was a way to trigger the gate cloning and undo logic, then a specific set of tests could be used there to ensure it doesn't modify the logic.
I suspect the issue with undo in the rsz are more pronounced on larger designs, so those are where it would be the most interesting.
Maybe running some of these as part of the secure- or nightly CI's might make sense to ensure some coverage on larger tests without being a burden on initial CI's.

@QuantamHD : I took a look at the sky130hd functional verilog for cells. We do have some unit tests which use this library. A few caveats/issues that need resolution:

the eqy/yosys verilog reader is not the most bulletproof piece of code. I had to to significant hand editing of the verilog definitions for ASAP7 to get it into a working condition. The same may be needed for sky130hd.
Once we copy/hand modify these files as needed, we run the risk of the functional verilog we are using for equivalence being out of sync with the source controlled version. For now I think this is acceptable.

@gadfort This test is fast enough that it is worthwhile to do it on all unit tests at least for sky130hd and Nangate45 (which is what most unit tests seem to be using). Gate cloning had the bug that you found but I don't think I can make the claim that all the other transforms (or any combination thereof) have no issues especially since we end up using "undo" pretty heavily.
I also found a small enough test (aes) which only takes about 30-40m to run equivalence checking on (but I still have the problem with the final reporting code which is going something like "ls *" in a directory and errors out with "list of arguments too large"). I will take a look at the code to see if we can fix this.

@QuantamHD do you have any pointers on how to scholastically generate a netlist that has clocks (so the resizer is actually called). I will start taking a look at that as well while we work on getting nangate45 and sky130hd based unit tests working.

@openroadie This abc command generates combinatorial netlists. https://github.com/berkeley-abc/abc/blob/master/src/base/abci/abc.c#L13541
I think it would be easy enough to put random registers in these netlists to get the sequential bits as a starting point.

The same may be needed for sky130hd.

Note that the EQY repository already has a sky130 example that comes with a script to pre-process the simulation models to make them suitable for formal verification (including equality checking): https://github.com/YosysHQ/eqy/blob/main/examples/spm/formal_pdk_proc.py
If you run into any sky130 gate level netlists that do not work with it, feel free to file an issue on the EQY repository, even if it's not strictly part of EQY but rather used as an example.

@openroadie I ran a pretty large test with just the ABC cec commands, and I found that they're very fast. 33k nodes proved equivalent in 0.39 seconds. I think we just need to figure out how to best leverage the commands from OpenROAD either through eqy or a custom solution.
abc 02> &ps
Multi64  : i/o =    128/    128  and =   33078  lev =  383 (226.45)  mem = 0.38 MB
abc 02> &cec booth.aig
Networks are equivalent.  Time =     0.39 sec

@vvbandeira  We need the same thing for the container that runs the CI/CD code in OR and ORFS
https://github.com/The-OpenROAD-Project/OpenROAD-flow-scripts/pull/1447#issuecomment-1710704690
To repeat the info here:
The CI/CD container needs these repos installed as the default (sudo make install). Please follow the order the repos are mentioned in:
https://github.com/YosysHQ/yosys
https://github.com/YosysHQ/eqy
https://github.com/YosysHQ/sby

@maliberty @tspyrou @QuantamHD : This PR with 13 unit tests enabled for eqy is now ready for merge.
@QuantamHD We are using sky130hd for two of the tests.
Thanks to @jix for all the help with using eqy and supplying us a equivalency checking verilog for sky130hd and to @vitor for enhancing the docker container to get all this to work :+1:


Added citizen role for different case statuses

Does this PR introduce a breaking change? (check one with "x")
[ ] Yes
[x ] No

CRUD? Not even caseworkers have D


Merge develop to master.

Add badge support for develop and master.
Add default models.
Add basic exemple for firebase database.

Coverage remained the same at 0.0% when pulling 9b519141fa48a07f435358f422376e71bdc5a1cf on develop into 2c69992a3af7346f780585dd83a90e7406c87c79 on master.


fix: use absWorkingDir as root if provided. fixes #114

This PR fixes #114 by using initialOptions.absWorkingDir as the root directory for module resolution, if provided to the esbuild config. See https://github.com/glromeo/esbuild-sass-plugin/issues/114#issuecomment-1367395679 for details on and cause of the bug.

Thank you @shellscape not only for identifying the issue and reproducing it but also fixing it!


Release 2.5.1

We would like to release a patch version to quickly fix some critical issues, please take a look and approve if you feel good.

Seems some fixes are missing:

https://github.com/apache/kvrocks/commit/d839d163284a7cda61127a285587a489d243812e
https://github.com/apache/kvrocks/commit/46862ea559976d50ba6996942f2c962774dfc5e9
https://github.com/apache/kvrocks/commit/53b7e879e395653651680f76e29c9e4a63b72f10

Seems some fixes are missing:

d839d16
53b7e87

Yes, I don't bring those two commits since they won't affect users, so maybe we can release them in the next minor release.

i see mosts of the commits are mine LOL

I think you're the best bug hunter in our community for sure.

Seems that VERSION.txt is not changed.
You can run ./x.py package ... to append a new commit.

And I think squash merge is not a good idea for this PR. But I don't know how to change it.

Seems that VERSION.txt is not changed. You can run ./x.py package ... to append a new commit.

Yes, I think we can propose commits and get approved first, then merge them into 2.5 and append the version commit.

And I think squash merge is not a good idea for this PR. But I don't know how to change it.
So maybe you can just push these commits rather than merge the PR.

ummm... Looks like it has no way to enable the rebase button for some special branches only: https://cwiki.apache.org/confluence/display/INFRA/git+-+.asf.yaml+features#Git.asf.yamlfeatures-Mergebuttons

in the repo's settings, maybe it is https://github.com/apache/kvrocks/settings
there is a Pull Requests section, we can enable the Allow merge commits
then do a plain merge for this PR (release)
also, we can update the top comment to reflect the changes of this version (somewaht similar to release notes)

@enjoy-binbin The merge/rebase button is controlled by: https://github.com/apache/kvrocks/blob/unstable/.asf.yaml#L32 and it seems no way to open for some branches only.

ohh, in this way, maybe we can also enable the merge button? i think we can go beyond some PRs.
we can control it (when we are doing merge, usually squash is used, and in some cases we need to keep commits we use merge)
that is, the choice of squash or merge is the responsibility of the person for merging the PR

Yes, I think we can enable the merge button and the merger should know when to use the merge button.

i raise a PR to enable the plain merge in #1624, we can move the discussion there

we need to update the VERSION.txt as well

@enjoy-binbin Thanks for your warm reminder. The package source will change and change version and I plan to do it when creating the release tarball. But it's also good to append the version  change now.

i see the tag we made is v2.5.1, we used to tag it without v. see https://github.com/apache/kvrocks/releases
but in here it is 2.5.1, so https://github.com/apache/kvrocks/releases/tag/2.5.1 is a 404 link

I think it is a bug in GitHub. Our release tag is v2.5.1, and our release note title is 2.5.1.
No problem here for ourselves.


#3245 Feature: Display session details of applicants in CodeTrek.

Targets #3245
Description for the Session page
Sometimes we conduct sessions related to engineering practices and concept in CodeTrek which are given by CodeTrek candidates and sometimes ColoredCow employees. For CodeTrek Candidates as this data related to their presented sessions is something  that can help in their evalutaion, so we want a functionality to store the presentration data like date, topic and, presentation link and additional information in portal.
The data should be stored in the database which enables efficient retrieval and management of candidate of this data.
Breakdown & Estimates
Expected Time and Approach

[x] Create a table in database and define its structure. 1-2 Hours
[x] Define relationship between codetrek_applicant_sessions table and codetrek_applicant table. 1-2 Hours
[x] Create a route. 0-1 Hour
[x] Define Controller and define function for each task like adding new data, edit, and delete the data. 2-3 Hours
[x] Create view file to implement presentation details page. 0-1 Hour
[x] Implement add new presentation - Create  a form. 2-3 Hour
[x] Read about implementing backend validation (Form Requests). 0-1 Hour
[x] Add backend validation. 0-1Hour
[x] Show appropriate error in frontend incase any validation rules gets failed. 1-2 Hours
[x] Implement edit feature - by adding form. 1-2 Hours
[x] Implement sorting. 0-1 Hours
[x] Implement delete functionality. 1-2 Hours

Total Time : 20-21 Hours
Actual Time and Approach
Designing

[x] Create design of Session page in Figma.  2-3 Hour
[x] Create database schema : Many to Many (Polymorphic) relationship and create a presentation on google slides. 2-3 Hour

Coding

[x] Create 'sessions' table.
[x] Create 'model_has_sessions' table.
[x] Create Model and Resource Controller for the 'session' table. 0-1 Hour
[x] Learn the concepts of  Polymorphic relationship. 3-4 Hour
[x] Define Polymorphic relation between Session, CodeTrekApplicant and pivot table 'model_has_session'. 1-2 Hour
[x] Create view file to implement presentation details page. 0-1 Hour
[x] Implement add new presentation - by creating modal and form. 0-1 Hour
[x] Implement edit feature - by creating modal and form. 0-1 Hours
[x] Implement sorting. 0-1 Hours
[x] Implement delete functionality. 1-2 Hours
[x] Read about implementing backend validation (Form Requests). 0-1 Hour
[x] Create SessionRequest validation.  0-1 Hour
[x] Show appropriate error in frontend incase any validation rules gets failed. 1-2 Hours
[x] Learn the concepts of ajax to implement the toast message for creation, updation, deletion and for validation without reloading the page.4-5 Hours

Total Time :  6 Hours Designing + 21-22 Hours Coding
Checklist:

[x] The PR title follows this syntax: <#IssueID>
[x] I have linked the issue id in the PR .
[x] I have performed a self-review of my own code.
[x]  I have added comments on my code changes where required.

This is obsolete. The requirement needs to be revisited


Add Fortigate exporter project to list

The exporter works, even though the number of metrics exported are low right now.
I hope this is fine for inclusion to make it discoverable for others to help out with it.

Thanks for your PR. We try to avoid duplication in this list, does this exporter do anything notable beyond what the SNMP exporter does?

Thanks, good question. Are you referring about end user experience, technical underlying protocol, or something else?
Given that this exporter uses the REST API, it comes with the usual security improvements like TLS, and the usage of Admin Profiles for token authentication allows more fine-grained access delegation that I believe the SNMP integration does not offer (granted, I haven't looked at it as I try to avoid SNMP at all costs these days).
From an end-user perspective, this exporter is also easier to set up given that it's tailored to the specific device. Give it a target and a token and you're good.

Primarily the metrics, as having a separate exporter listed for every device that implements SNMP but also exposes the exact same information via a bespoke API is not likely to end up as a great experience overall.

Fortigate does not expose everything useful through standard interfaces. In
a previous life we needed to SSH for full backups.
I didn't verify SNMP, but I would not be surprised if SNMP had less than
their "own" stuff.
Sent by mobile; please excuse my brevity.
On Sun, May 24, 2020, 18:35 Brian Brazil<EMAIL_ADDRESS>wrote:

Primarily the metrics, as having a separate exporter listed for every
device that implements SNMP but also exposes the exact same information via
a bespoke API is not likely to end up as a great experience overall.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/prometheus/docs/pull/1640#issuecomment-633256931, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AAFYII23K3IFW3DJ7EB6ZY3RTFEFLANCNFSM4NI4KIBA
.

I find this "SNMP first" stance surprising. Basically all network devices implement it differently, and having to support SNMP in a secure manner in any infrastructure is painful.
Anyway, feelings aside - to provide some additional data on why the API is better fit-for-purpose.
One critical feature that seems to be a pain to use with SNMP seems to be VDOMs (like namespaces or virtual firewalls):

[How-to for SNMPv3[(https://kb.fortinet.com/kb/documentLink.do?externalID=FD47703)
How-to for SNMPv1/v2

Arguably having to set up separate users/communities for every VDOM, while the API has support for querying all VDOMs in single requests (...?vdom=*) would make the implementation faster and less error-prone (no drift in timing etc).

Having exporters for network devices that don't involve SNMP is a huge bonus in my book. SNMP should only be used in anger.

It's not an SNMP-first stance per-se, it's a stance of avoiding over-specialised exporters when a more generic exporter already exists that can provide the same metrics. If someone proposed to add an exporter that exposed e.g. S3 metrics that'd not be listed, as there is already the Cloudwatch exporter.
If this exporter isn't providing significant metrics beyond what is possible with SNMP, then it is unlikely to be listed here.

What about the UX part? For my home Fortigate I would have to create 4x SNMPv3 users to be able to use snmp_exporter to monitor my full device for example. Alternatively, 1x REST API user that has monitoring access for all VDOMs. I know of companies that have hundreds of VDOMs, having to create one SNMP user per VDOM seems like a convincing property, at least to me.

I have always seen the SNMP exporter as a stop gap before there are proper exporters/or the manufacturers propose metrics endpoints themselves.

What about the UX part?

I don't consider that relevant, otherwise we'd have to accept every single bespoke exporter because the proposer happened to prefer the particular way it was configured/hardcoded - at which point there's no point in this list existing. I also note that no attempt was made to work with the existing exporter on this (and speaking as the SNMP exporter maintainer this is one of the weirdnesses I was actually expecting to come up at some point, so I'm honestly surprised it has taken this long).
To be clear my stance here is not anything to do with SNMP, I'm holding this PR to the same standard that any other PR proposing to add an exporter with an obvious overlap with an existing listing is held to.

Not all OID are supported with this method due to design limitations.

Can you expand on this? Are any of the relevant OIDs significant from a metrics standpoint?

Can you expand on this? Are any of the relevant OIDs significant from a metrics standpoint?

@brian-brazil It's a quote from the earlier linked documentation, I sadly don't have more context.

What about the UX part?

I don't consider that relevant

:(

otherwise we'd have to accept every single bespoke exporter

We could still use our best judgement IMO, not everything has to be a 100% strict rule to follow.
I agree that SNMP is arcane and painful enough that it's preferrable to have (and list) separate exporters for devices where an alternative exists.

I've had a look at the code now, and this exporter only has a single info metric with data which is almost certainly exposed via SNMP. While I am fine listing young exporters to encourage a community to build around them, this is a bit too young - before even considering overlap.
What I'd suggest you do is announce this on -users and -developers, develop it further, and if it turns out there are significant metrics missing come back and we can talk about listing it then. Keep in mind that this is only one curated list, there's no rule saying that users can only use exporters on this list.
In terms of the exporter itself, the metric should end in _info and it would be better to fail the scrape when something goes wrong.

I agree that SNMP is arcane and painful enough that it's preferrable to have (and list) separate exporters for devices where an alternative exists.

I strongly believe that we shouldn't proliferate new exporters with all their constituent code merely because someone is unwilling to find/write a configuration file. From my standpoint this is no different from someone proposing an exporter that tails the application logs of one particular binary, when we already list the grok exporter.

I've had a look at the code now, and this exporter only has a single info metric

That is fair, and that feedback I was honestly prepared for. That argument is fair, and if you have a litmus test I should consider, I'm happy to do so.

[..] and if it turns out there are significant metrics missing come back and we can talk about listing it then

This seems like you're just rehashing the SNMP-first argument, TBH. It seems like you will never accept my exporter with that mind-set. SNMP has loads of metrics that likely nobody is likely to look at, which my exporter will not have (e.g, the subnet mask for IP interfaces and stuff like that). My exporter will have first-class citizen support for VDOMs, which is an important feature of these firewalls, something that I've provided official sources that claim they will never have equivalent SNMP support for.
The metric you claim to offer me as a bar to climb is unfair.
Honestly, this is pretty discouraging from a contributor perspective.

if you have a litmus test I should consider, I'm happy to do so.

This is an unusual case, but in normal circumstances I'd expect at least a handful of key metrics from whatever API is in use.

SNMP has loads of metrics that likely nobody is likely to look at, which my exporter will not have (e.g, the subnet mask for IP interfaces and stuff like that).

It's not required to have every metric of the existing exporter, as it's not the size of the overlap that matters - it's what new metrics the exporter brings to the table. However if it were being positioned as a substitute in its docs and was missing something important (e.g. ifInOctets) that would raise questions.

The metric you claim to offer me as a bar to climb is unfair.

The relevant bar for adding an exporter is basically that it's exposing important metrics that no other listed exporter can. So if you'd said for example that this exporter exposed some metrics that weren't in SNMP and exposed no metrics that were available in SNMP, that would be fine. If there happened to be a significant overlap with SNMP on top of the new metrics, that would also be fine.
I think that's a reasonable bar to help build sustainable communities around exporters, as it's unfortunately quite common that a duplicate exporter is created from scratch with no attempts to engage with existing exporters and their communities. That has even happened multiple times for the exact same piece of software.

So if you'd said for example that this exporter exposed some metrics that weren't in SNMP and exposed no metrics that were available in SNMP, that would be fine.

You're being vague, and I can't help but to feel I'm fighting a moving finishing line. But, I'll give you the benefit of the doubt.
Fortigate SNMP does not appear to export the policy name of the firewall policies. Exporting the drop/accept etc. counters with the name as label - is that considered good enough? The metric itself (as in, the packet counters) are in SNMP, but joining on the human-readable name is not possible in SNMP alone from what I can tell. Is such "feature add" considered enough to pass the bar?
Another key function is VPN, and the stats on SNMP appears to be quite lacking as well. If I were to create a metric that e.g. exports all the imported certificates and their expiry date - would that pass the bar?

You're being vague, and I can't help but to feel I'm fighting a moving finishing line.

Things are rarely black and white, but I do try to be consistent. Previous duplicate exporters whose primary argument was that they save you providing configuration didn't get listed.

is that considered good enough?

They're not much individually, but if there's a good few of them that could do it. Something more systemic makes it easier, as any individual item can usually be worked around.
I'd be a bit surprised if at least the first wasn't there though. Often things are spread across tables, did you try a full dump of the device?
Keep in mind also that the ssl_exporter exists. Certs themselves aren't metrics - that's more a config management thing - but expiry dates are something you could alert on.
I note that this exporter doesn't currently expose any of these (and gauges shouldn't end in _total, that's for counters). An exporter should be motivated to add metrics because they are useful, not so it can be listed here.
I'd suggest developing your exporter further and then coming back, as hopefully the answer will be much clearer at that point.

To prevent somebody from starting another fortigate_exporter for some silly reason like not finding the one I'm working on.

In this case if they asked to be listed I'd remember that you'd put in a PR and point them in your direction, but I'll often do a search if I suspect one might already exist.

I'd be a bit surprised if at least the first wasn't there though. Often things are spread across tables, did you try a full dump of the device?

Yes, it was a full dump. You're welcome to disprove me, but if you look at MIB listings[1, 2] you will see that neither the UUID nor the name is part of the exported data. Looking at this telegraf configuration it seems name is also not added, which seems like people would if they could figure out a way to join it in.
If you want to try for yourself, you can spin up a Fortigate-VM in any of the big cloud providers with a pay-as-you-go license and do SNMP walks to confirm what my research is showing.

Keep in mind also that the ssl_exporter exists. Certs themselves aren't metrics - that's more a config management thing - but expiry dates are something you could alert on.

ssl_exporter can only probe certs that are in use for server sockets, correct? And not things like CAs stored on the device.

I note that this exporter doesn't currently expose any of these (and gauges shouldn't end in _total, that's for counters).

You're welcome to add issues to my project as you find them, but I find your stance to bring those up here in this issue as poor professionalism. It's 100% beside the point and just petty.

An exporter should be motivated to add metrics because they are useful, not so it can be listed here.

sigh. I linked you an issue, didn't I? These are metrics I want to add and I have planned to add, I'm not writing an exporter to be added to your website. The project started 2 days ago, so give me some slack for not having implemented all my road map, will you? The only reason I brought them up to make the point that there are functions that the API are just simply better suited for.

In this case if they asked to be listed I'd remember that you'd put in a PR and point them in your direction, but I'll often do a search if I suspect one might already exist.

Well, you see - at that point they would have already started on an exporter by definition, a bit too late in other words.

ssl_exporter can only probe certs that are in use for server sockets, correct? And not things like CAs stored on the device.

That's my understanding, but that line of argument gets into if what you're doing is really metrics at that point. Which isn't the sort of argument a listed exporter should even have to be involved with.

You're welcome to add issues to my project as you find them, but I find your stance to bring those up here in this issue as dubious. Is it relevant for being listed?

Best practice issues are not generally relevant for a brand new listing. Providing feedback in passing is part of the listing process in the hope that the exporter will get around to improving its metrics at some point - which they usually do.

The project started 2 days ago, so give me some slack for not having implemented all my road map, will you?

I am giving you slack in suggesting you do that and come back when the exporter is more substantial, as speaking frankly this currently looks like yet another in a long line of not-invented-here duplicate exporters. To be clear I'm not claiming that you have anything other than good intentions, but I'm also not getting any of the sense of ambiguity/confusion/sighing I had with previous seemingly duplicate exporters which turned out not to be.
If this were not a duplicate it would already be merged, as the bar for listing is quite low. However that low bar also means that the baseline granularity of duplicate here is "can monitor fortigate devices".

@brian-brazil Since SNMP-ness isn't a blocker anymore (https://groups.google.com/forum/#!topic/prometheus-developers/pbtrw_m9U48), and you mentioned that the exporter has evolved since your last comments, is it ok to add now, or are there still outstanding metrics/features it should have before merging?

The remaining issue at this point is if the docs of this exporter should point users towards the SNMP exporter, due to lacking key metrics.
The last change to this exporter was about a month ago and added interface metrics which would obviously fall into that category. So the question is are there other key metrics that a typical user would be surprised/disappointed that this exporter does not expose but which are available via SNMP? If either such metrics don't exist, are added, or a link is added to the SNMP exporter from the readme then this could be merged.

@bluecmd Is the exporter ready to be used instead of SNMP exporter in full? If yes, please confirm. If no, mentioning its relation to and intended use relative to SNMP exporter would make sense.

@RichiH I'm using it as my only exporter for my Fortigates and it has metrics for everything I need - but I am not using all the features that all the beefier Fortigates' have.
I think the place it has is a young replacement of SNMP exporter of Fortigate, and given feature requests for metrics I'm definitely willing to help add them.
I'm happy to add a note to the docs linking towards SNMP exporter as an alternative if that makes the decision easier.

Thanks!
In terms of general feedback to help you improve your exporter:
fortigate_policy_hit_count_total is a counter so should have type counter, and similarly with the two below it. The _count there also seems redundant, I'd suggest just hits.
fortigate_vdom_current_sessions and fortigate_policy_active_sessions seem inconsistent in active vs current - though in general I'd suggest removing the current/active as that appears to be implied from the rest of the name.

Thanks! I filed https://github.com/bluecmd/fortigate_exporter/issues/5 and https://github.com/bluecmd/fortigate_exporter/issues/6 to track those suggestions.


[New Feature]: Assign PRs to an enginner automatically (Author-Not-Authorized label)

Description of the new feature/enhancement
Pull requests which encounter Internal-Error are automatically assigned to an engineer. Same way, PRs with the Author-Not-Authorized label should also be assigned automatically.
Proposed technical implementation details (optional)
No response

@denelon Please implement auto-assign logic for Author-Not-Authorized label since they don't get assigned aitomatically.


Breadcrumbs outline should collapse element if the corresponding range is folded

After folding a JSON file, the overview bar (underneath the tabs) should reflect the fold. Similarly, if the JSON file has been unfolded, the bar should reflect this.
E.g:
The menu displayed below should collapse when the overall JSON has folded.

I assume you are referring to the breadcrumps tree.

Folding regions and outline aren't the same thing and while there might be some overlap in some cases there is no guarantee.

@jrieken What do you mean? Are you saying that the text itself may not be the same as the outline representing it?

No, I am saying that folding regions (e.g collapse/expand triangles next to your text) aren't the same as outline items.
⬇ folding regions

⬇ outline items

Got it. So, I think there are two cases:

The breadcrumbs outline does match the folding regions, in which case folding in either should fold the other
The outline doesn't match the regions - maybe we only fold the uppermost level where the headers match?


find something wrong to use the docker command：logout

I find someting wrong，when i use docker client to push or pull。
First，i login into a registry "hub.c.163.com"，i can push or pull images。
but when i am logout，some magical happen，i can use
the "push" and "pull" cmd to handle the images 。

@RichardScothern , At that time ,not only the registry,I have try some registry ,but i find the same answer. in ~/.docker i find my login info in the config.json file. I use the logout cmd many time,but it exist.

If i understand correctly, when you docker logout the credentials are not removed from config.json.
Can you ensure that you are using the exact endpoint as is found in config.json.  If the problem still exists, can you upgrade your engine version (1.7 is quite old).  Finally, this issue is not in distribution, docker/docker is the correct github repo for engine issues.

Thanks！

Closing, as it's outdated and missing followup. This is more likely an issue with the cli and remote registry end than with the code in this repo, anyway.


Is this usable in conjunction with cargo-zigbuild / cargo-xwin?

See:

https://github.com/rust-cross/cargo-zigbuild
https://github.com/rust-cross/cargo-xwin

Those are both already wrapper around cargo — I haven't looked into the implementation details of either (or cargo auditable itself), but before I did, I just thought I would check if you've experimented with that before / have any thoughts on the matter.

I have invested a lot of time into getting sccache working, but I haven't tried combining it with other Cargo subcommands.
cargo auditable zigbuild should probably work, and if not, it shouldn't be hard to get working. cargo auditable doesn't do anything particularly complicated in the cargo layer, it simply sets a few environment variables and then calls cargo.
cargo auditable relies on passing a flag to the linker, which may be different under these particular subcommands. But as long as the CLI interface of the linker is the same as it usually is for the target triple, everything should work fine.
So please try it and let me know how it goes, I'm curious too!

I've opened  #177 to fix an incompatibility with cargo c, but I've also confirmed that Cargo subcommands in general should work with cargo auditable zigbuild and such. Feel free to open an issue if some don't.


update all deps including typescript 3.7

update deps and run tests all at once since greenkeeper was kinda broken
also closes https://github.com/jaredpalmer/tsdx/issues/341
and closes https://github.com/jaredpalmer/tsdx/issues/348

ugh why is this Error: Cannot find module '../package.json' on windows


RDS Oracle support

Hi,
Does this module support Oracle RDS? I tried using it but as Oracle needs "license_model" to be provided, so when I checked in Terraform documentation, it supports it but upon checking the module code, it does not have this parameter available so I get below error everytime I run terraform plan:
1 error(s) occurred:
module root: module db: license_model is not a valid parameter
Please advise.

Done. New version has been released - v1.1.0

@antonbabenko  : Thanks for fixing it so fast.


[XR] Camera get higher when re-entry

Repro

Bug repro on https://playground.babylonjs.com/#B123IQ:
Expected result: 1.6
Current result: when re-enter WebXR the Y of camera keep add 1.6, like 3.2, 4.8 ...

Desktop:

OS: [e.g. macOS]
Browser [chrome w/ WebXR Simulator]
Version [96]

Smartphone:

Device: [Oculus Quest]
Browser [Oculus Browser]
Version [16.2]

Please use the forum first as stated in the issue template


It does not work

Compiling your Hello World example with GCC 5.4.
dev@ubuntuserver:~# g++ -m64 -std=c++1y -O2 strobfs.cpp -o strobfs && strip strobfs && strings strobfs | grep Hello
Hello, World!
Still shows the string "Hello, World!" when dumped with strings command.
What am I doing wrong?

g++ -std=c++14 -O2 main.cpp -o test
All right. Version 6.1.1.

Works but highly depends on compiler and parameters.
For example my tests on clang++ 3.6
clang++-3.6 test.cpp --std=c++14 -> all strings visible
clang++-3.6 test.cpp --std=c++14 -O2 -> some string paritially obfuscated
clang++-3.6 test.cpp --std=c++14 -O3 -> "Hello, World!" string completely obfuscated, but still some tests strings visible completely or partially.
Maybe make it less dependent on compiler and parameters?


Guzzle Client injected

Q
A

Branch?
"master"

Bug fix?
no

New feature?
yes

BC breaks?
no

Deprecations?
no

Tests pass?
yes

Fixed tickets

License
MIT

Doc PR
reference to the documentation PR, if any

Guzzle Client is now injected to make customization of the GuzzleClient possible.

Great improvement, thank you @tobias-nitsche.

Thanks you :)


about green_screen example

In /examples/green_screen/main.cpp line 226,
Transformation tr_secondary_depth_to_main_color=tr_secondary_depth_to_secondary_color.compose_with(tr_secondary_color_to_main_color);
I think it should be,
tr_secondary_depth_to_main_color=tr_secondary_color_to_main_color.compose_with(tr_secondary_depth_to_secondary_color);.
Due to the perivious rotation also effects next translation, the order of matrix multiplication can`t changed here. If changed, it will cause some problem like https://github.com/microsoft/Azure-Kinect-Sensor-SDK/issues/803 demonstrated.
In this green_screen example, point transformation to secondary color camera coordinate first, so it should multiply tr_secondary_depth_to_secondary_color first.

My transformation (matrix) skills are rusty, but I think you are effectively saying that in our compose_with structure that H1 * H2 != H2 * H1. Is that correct? That would effectively be the change you are suggesting, correct?

In this green_screen example, point transformation to secondary color camera coordinate first, so it should multiply tr_secondary_depth_to_secondary_color first.

Can you share more detail on this? A link would be fine. Are you able to test this and confirm it improves the results? Due to COVID testing from home is tricky.

My transformation (matrix) skills are rusty, but I think you are effectively saying that in our compose_with structure that H1 * H2 != H2 * H1. Is that correct? That would effectively be the change you are suggesting, correct?

Yes,that is all I mean.

Can you share more detail on this? A link would be fine. Are you able to test this and confirm it improves the results? Due to COVID testing from home is tricky.

In the comment of line 226，it said
        // We now have the secondary depth to secondary color transform. We also have the transformation from the         // secondary color perspective to the main color perspective from the calibration earlier. Now let's compose the         // depth secondary -> color secondary, color secondary -> color main into depth secondary -> color main
so the point transformates to secondary color camera coordinate first.
And then make X the point (x,y,z),

as you can see, the order can`t be exchanged. So we should mutiply the tr_secondary_depth_to_secondary_color first.
And I rewrite green_screen to show an point cloud.

the order in your sample show like this. It make an small angel error with two point cloud.

and when I change the order of mutiplication, the angel disapear.
Sorry, English is not my native language and this paragraph may be difficult to understand.


Context support for solidjs

and a minor bug fix
for the solidjs SDK (cc @davedbase)

Sweet! Any docs or where should I started having a go with it? :-)
This is exciting for me, thanks for making it happen.

None yet - this is just progress toward that sdk and wanted to give you a heads up that things are in motion, will follow up when the SDK is done and usable which I hope will be next week

Steve Sewell
Founder, CEO | Builder.io ( http://builder.io )
@steve8708 ( https://twitter.com/steve8708 )
On Fri, Apr 22 2022 at 6:29 AM, David D. < @.*** > wrote:

Sweet! Any docs or where should I started having a go with it? :-)
This is exciting for me, thanks for making it happen @steve8708 (
https://github.com/steve8708 )
—
Reply to this email directly, view it on GitHub (
https://github.com/BuilderIO/mitosis/pull/300#issuecomment-1106518035 ) ,
or unsubscribe (
https://github.com/notifications/unsubscribe-auth/AAGOEA22ZPWNWBYKIO3HWUTVGKSUNANCNFSM5UA3LTKA
).
You are receiving this because you authored the thread. Message ID: <BuilderIO/mitosis/pull/300/c1106518035
@ github. com>

Ok great :-)


Add a flag for configuring IP masquerade chain name

Add a command line flag --chain-name for configuring IP masquerade chain name.
We would like to be able to override rules injected here (by changing chain name to IP-MASQ): https://github.com/kubernetes/kubernetes/blob/6afd783dd94b5c8da876e85c6fd59056d9f9f4fe/cluster/gce/gci/configure-helper.sh#L71-L80.

/lgtm
/approve

/approve


🐛 Bug Report: Should have renderNode and renderLabel prop to CatalogGraphPage

📜 Description
CatalogGraphPage does not have option to pass renderNode and renderLabel as props.
So not able to render custom node and label on /catalog-graph route.
As the child component have those options to render custom node and label but CatalogGraphPage is not accepting those props.
👍 Expected behavior
It should accept renderNode and renderLabel prop and pass it down to EntityRelationsGraph component, this is what I feel.
Please check this draft PR
👎 Actual Behavior with Screenshots
CatalogGraphPage

👟 Reproduction steps
Try passing prop asrenderNode and renderLabel to CatalogGraphPage it wont accept, though the child component can accept those props.
👀 Have you spent some time to check if this bug has been raised before?

[X] I checked and didn't find similar issue

🏢 Have you read the Code of Conduct?

[X] I have read the Code of Conduct

Are you willing to submit PR?
Yes I am willing to submit a PR!

Yep we can forward the props to the internal graph component from the page, just as was done in #16126 for the card 👍

Closing this, as it's already merged !

Created PR : https://github.com/backstage/backstage/pull/17097

@Rugvip Are all of the initialState props changeable? Might be out of scope of this request, but could see it being beneficial to move some initialState props to a graphCardProps props instead.
Current,
props: {
  initialState?: {
      selectedRelations?: string[];
      selectedKinds?: string[];
      rootEntityRefs?: string[];
      maxDepth?: number;
      unidirectional?: boolean;
      mergeRelations?: boolean;
      direction?: Direction;
      showFilters?: boolean;
      curve?: 'curveStepBefore' | 'curveMonotoneX';
    };
}

Proposed,
props: Partial<EntityRelationsGraphProps> & {
initialState?: {
    selectedRelations?: string[];
    selectedKinds?: string[];
  },
}

This would then remove the duplication
              <EntityRelationsGraph
                rootEntityNames={rootEntityNames}
                maxDepth={maxDepth}
                ...
                mergeRelations={mergeRelations}
                unidirectional={unidirectional}
                onNodeClick={onNodeClick}
                direction={direction}
                relationPairs={relationPairs}
                zoom="enabled"
                curve={curve}
                />

with
<EntityRelationsGraph
                ...
                {...props}
                kinds={
                  selectedKinds && selectedKinds.length > 0
                    ? selectedKinds
                    : undefined
                }
                relations={
                  selectedRelations && selectedRelations.length > 0
                    ? selectedRelations
                    : undefined
                }
                />

@sennyeya , do you mean I should update this as part of this PR

Gonna close since this was fixed in #17186


Add tutorial for using Hadrian from Java

You have tutorial for Scala - what about one for Java? Or is no one using Hadrian embedded in Java yet?
It would also be nice to add something to the Hadrian FAQ - for example, my previous question - does it work well in Java?
(thanks!)

This would be really nice to have as I am currently researching a way to convert Pmml to PFA using Hadrian in Java. However, there is very little documentation on java support.

We would like to integrate PFA into KNIME and are currently also struggling to use PFA in Java. Even calling the "static" PFAEngine.fromJson() function does not work. Could you provide some hints how we can create an instance of PFAEngine from a JSON file in Java?

We are currently integrating PFA, and the work around I found to this is to use the Engine factory from antinous.
PFAEngineFactory factory = new PFAEngineFactory();
engine = factory.engineFromJson(pathToPFAFile);
engine = factory.engineFromYaml(pathToPFAFile);

However this requires that you use the entire hadrian-standalone, which is quite large.  A better way would be greatly appreciated.