Implement AI-powered Task Breakdown Feature using OpenAI GPT-4

Summary of Changes
This pull request implements the AI-powered Task Breakdown Feature as requested in the related issue. The changes include:

Adding the 'requests' library to requirements.txt for API calls.
Updating app.py with a new route '/ai_breakdown/int:task_id' to handle AI breakdown requests.
Implementing an OpenAI API call function in app.py.
Modifying the update_description route in app.py to handle AJAX requests.
Updating index.html to add an onclick event to the AI button.
Adding JavaScript to handle the AJAX response and update the textarea.

Reasoning
These changes enable users to generate task breakdowns using OpenAI's GPT-4 API, enhancing productivity and task management within our application. By implementing this feature, we provide users with AI-assisted guidance in breaking down complex tasks into manageable steps.
Impacts and Considerations

API Usage: This feature relies on the OpenAI API, which may incur costs based on usage. Reviewers should consider implementing rate limiting or usage tracking.
Security: The API key is stored in an environment variable for security. Reviewers should ensure this is properly configured in production environments.
Performance: The AI breakdown process may introduce a slight delay. Consider adding a loading indicator for better user experience.
Error Handling: Robust error handling for API failures or unexpected responses should be implemented.

Issue Resolution
This pull request directly addresses the related issue "task breakdown" by implementing the requested feature. Users can now click the AI button (class "ai-button") to generate a 3-8 step breakdown of their task using GPT-4, which is then stored in the task description field.
Testing Instructions

Ensure the OpenAI API key is set in the environment variables.
Run the application and navigate to a task.
Click the AI button next to a task description.
Verify that the task description is updated with a 3-8 step breakdown without page reload.

Please review and test thoroughly before merging.
This PR fixes #96

I'm getting this error message, please fix it:
ImportError: cannot import name 'url_quote' from 'werkzeug.urls' (/Users/lucas/Todo-App3/.venv/lib/python3.12/site-packages/werkzeug/urls.py). Did you mean: 'unquote'?


[#354] syncing with the new Atom DB

Closes #354
Relates to https://github.com/singnet/das-atom-db/issues/247
Must be reviewed and merged with https://github.com/singnet/das-atom-db/pull/248
Requires an update on the Remote Integration Tests server.
It's expected to not pass green through the CI pipeline (tests will break).
All tests passed on my dev env with a locally-updated OpenFaaS, including unit and integration tests.

I think the user guide should be changed with this new usage of NoteT and LinkT in add_node() and add_link()

I presume that the user guide will be completely revisited once we finish all refactorings that are currently in progress. @andre-senna ?

I think the user guide should be changed with this new usage of NoteT and LinkT in add_node() and add_link()

I presume that the user guide will be completely revisited once we finish all refactorings that are currently in progress. @andre-senna ?

Right.


Documentation is missing

https://www.rubydoc.info/gems/gitlab/frames is returning a 404. Tried with other versions, too, and got the same problem.

I noticed this too and found it at https://rubydoc.info/github/NARKOZ/gitlab which works for me now. I'm unsure why the normal gem doc URL isn't working.

Duplicate of #589


[Bug]: The docs of config for plugins is not consistent in different language version.

Version
System:
    OS: macOS 14.0
    CPU: (8) x64 Intel(R) Core(TM) i5-1038NG7 CPU @ 2.00GHz
    Memory: 282.30 MB / 16.00 GB
    Shell: 5.9 - /bin/zsh
  Browsers:
    Chrome: 118.0.5993.117
    Edge: 118.0.2088.76
    Safari: 17.0
  npmPackages:
    rspress: ^1.2.1 => 1.2.1

Details
If it involves adding and removing a plugin, you need to implement it through addPlugin and removePlugin:

The above content is in the Chinese version, but not in the English version
Reproduce link
https://rspress.dev/plugin/system/plugin-api.html#config
Reproduce Steps

go to https://rspress.dev/plugin/system/plugin-api.html#config
go to https://rspress.dev/zh/plugin/system/plugin-api.html#config

I guess I should keep the above content and translate it, is that right?

I guess I should keep the above content and translate it, is that right?

Yeah.


Pagination of the calls list

Closes #21

Looks good. Only remark is that it's more code than I was expecting.


_processRandomnessFulfillment in ERC721PsiRandomSeed missing virtual keyword

Not sure if it is intentional or not, but _processRandomnessFulfillment in ERC721PsiRandomSeed can't be overwritten because it's missing the virtual keyword. Is there any sample code to show the expected use of the seed extension function? Since the seed function reverts if the randomness hasn't been fulfilled, how will we know when to call seed without the ability to access _processRandomnessFulfillment?
Example use case: User mints 2 NFTs, and once randomness is fulfilled the seed is used to assign a random trait on-chain.

@estarriolvetch Yeah sure thing. Is the idea to use the seed function from within _processRandomnessFulfillment?
Curious to know if you have any example implementations you could share.

I  never use _processRandomnessFulfillment  myself
I add this function as a hook in case someone wants to do something when the randomness is fulfilled.
Mostly, I use seed to derive the traits of the token. Here is an example.
https://rinkeby.etherscan.io/address/0x7c0044396b9c77499baea85698b74350de7b8733#code


Compatibility with Rust 2018 paths

I'm trying to update ruma-events to Rust 2018 and the code generated by serde_derive seems to be using old-style paths that are resulting in compiler errors.
My crate has code like this (snippet from inside a decl macro expansion):
        #[derive(Clone, Debug, serde_derive::Deserialize, serde_derive::Serialize)]
        pub struct $name {
            /// The event's content.
            pub content: $content_type,

            /// The type of the event.
            #[serde(rename="type")]
            pub event_type: $crate::EventType,

But compiling results in errors like this:
error[E0412]: cannot find type `EventType` in the crate root
  --> src/macros.rs:81:32
   |
81 |         #[derive(Clone, Debug, serde_derive::Deserialize, serde_derive::Serialize)]
   |                                ^^^^^^^^^^^^^^^^^^^^^^^^^ not found in the crate root
help: possible candidate is found in another module, you can import it into scope
   |
3  | use crate::EventType;
   |

I see this in the output of cargo expand:
                            let __field2 = match match _serde::de::SeqAccess::next_element::<
                                ::EventType,
                            >(&mut __seq)

My understanding is that this should be:
                            let __field2 = match match _serde::de::SeqAccess::next_element::<
                                crate::EventType,
                            >(&mut __seq)

Is this something that needs to be fixed within serde or is there something I'm doing wrong here?
I'm using rustc 1.32.0-nightly (14997d56a 2018-12-05), serde v1.0.81, serde_derive v1.0.81.
Thanks!

Thanks! Closing in favor of a compiler issue because I believe serde_derive is doing it correctly: https://github.com/rust-lang/rust/issues/56622.


Add support for use of DSL when specifying the pattern for $brooklyn:formatString()

Previously, the $brooklyn:formatString() didn't accept nested DSL for its pattern, i.e. the first parameter of the function. This fixes it.

Great, thanks @iuliana. Merging...


CDRW-686 Fake OpenId Authorisation Server Url in Mock Server for initial client redirection

Exposes a mock OpenID Config endpoint. This endpoint is found here /openid/config/:id. It provides links to:

/token endpoint.
/authorize endpoint.

Also, updated the ASPSP payloads to include a OpenIDConfigEndPointUri. This points to the above path.

Do we want to update readme as we go? Or update readme as a batch job at end of sprint?

Prob update README as we go. I'll have a look at it.

Having looked at the README, I think beyond the scope of this PR. Especially, if we want small succinct PRs.


Adding tests for commands in fpm sync features

This PR is redundant since new feature (cr) and other things have been added in the latest fpm, and it's been re-done with latest fpm as base.


FUSETOOLS2-721 - outline of Camel endpoints for XML

it has kind of redundant imbrication for route/from but I preferred to
keep it as-is. It stays closer to Java outline. I think it is
interesting in outline, it allows to have different details. it is not
very nice with Ctrl+shift+O as it highlights the whole content route and
not just the from. That said, there is also the "from" highlighting only
the from line with the xml Document symbol which is usually also
installed. I do not clear advantages for one or the other option. So
picked the one easiest to maintain and better for the outline instead of
the Document symbol search which is a less visible feature.

Question: Does this change handle a case where there are multiple routes in a single XML? See https://stackoverflow.com/questions/11192743/multiple-camel-route-processing-same-file

Does this change handle a case where there are multiple routes in a single XML?

yes, it is
this test https://github.com/camel-tooling/camel-language-server/pull/469/files#diff-bab2da2f6cae8e96dcf4a8bcdcce31068445ec526c117a90bb6ef3cc90936a11R154 is covering this case
visually, for instance:


Feature Request: Add support for reacting with Emoji

Like slack: https://get.slack.help/hc/en-us/articles/206870317-Emoji-reactions

this isn't just a trivial thing, i'm in a group right now that uses these for polling, temperature taking, etc.
plus it's cool and fun.

Pleeease! :angel:  :pray:

No news :(


Opening a new window should read the user environment all over again

From the discussion in #10876

/duplicate https://github.com/Microsoft/vscode/issues/6333


Readonly input

Hi,
the  picker does not work on a readonly input field. I want the user Input is forced to the picker and not allow text Input.

     <input type="text" class="form-control" readonly>

        <button class="btn btn-default btn-sm" type="button">

        </button>

According to https://github.com/Eonasdan/bootstrap-datetimepicker/issues/969 for readonly to work you need to create the datepicker with
.datetimepicker({
    ignoreReadonly: true
});


PHOENIX-6751 Force using range scan vs skip scan when using large IN clause

@gjacoby126 I have rebased this PR for the 5.1 branch. Can u approve this?


Provide a sample header file for export

Make it even simpler for everyone to export data fast.

I guess, much easier is to allow to omit the template and then we export everything.
Only problem is the languages to use.

With 1e68ecb08946c4ec2979d0c65ff4bdb37c72abc5 the template is optional. If not provided we will export as much as possible.


SAPUI5 - Open the SAP Web IDE in SAP Cloud Platform stuck in 0%

Hello,
In the Create App from Prototype with SAP Web IDE tutorial, the 2nd step : SAPUI5 - Open the SAP Web IDE in SAP Cloud Platform get stuck in 0ù even after I have completed ! Do you have an idea on how to fix this issue ?
regards,
Khalil


Mazda: better alert when LKAS is manually disabled

The LANE_LINES signal in CAM_LANEINFO can be used to determine this. Currently, this shows up as an EPS fault, but we can show a more actionable alert in this case.

When looking at how to resolve this issue. I found where exactly to use the LANE_LINES signal, but when it comes to wanting to show an error that isn't *EPS Fault" are you referring to showing it on the comma device itself? Wasn't aware that it showed these kinds of errors on the device.

@adeebshihadeh, do you want to add a new alert or just override the stock setting so that lkas is always enabled when using OP?

Let’s make a new alert for this

Good, I prefer that route; being consistent with the stock system and what the driver expect in this case when they press the button to manually disable lkas.
Isn't this something other cars have as well? At least some of them? Regardless of having a physical button or just an option in car settings

Isn't this something other cars have as well? At least some of them? Regardless of having a physical button or just an option in car settings

I haven't seen this on other cars.
This should be pretty simple to implement. Just add a new EventName in cereal/car.capnp like lkasDisabled, make an alert in selfdrive/controls/lib/events.py, and add the event in Mazda's car interface.


fix: reduce the bundle size of remark-image-size

Why
Most of the bundle size is probe-image-size, but it is too much for this library.
How
Replace it with imaeg-size

this issue has been resolved to use plaiceholder

this issue has been resolved to use plaiceholder

this issue has been resolved to use plaiceholder


Token filters - kstem [DOC]

What do you want to do?

[ ] Request a change to existing documentation
[x] Add new documentation
[ ] Report a technical problem with the documentation
[ ] Other

Create a separate page for Token filter: kstem
Part of META issue: https://github.com/opensearch-project/documentation-website/issues/1483
*Version: all

Skipping this for now, as it needs to reference stemmer and porter_stem token filter, which are not yet completed


gui: display aliases on installer final step

This is to resolve #436.
For the alias, I'm selecting the element from context.keys that has the same fingerprint as hw / context.signer and then displaying the name of this key. This logic could possibly be extracted to a function.
I haven't yet been able to test with a hardware device, but will try to get my Specter DIY up and running soon :)

Thanks, @darosior. Once all comments & changes have been finalised, I'll squash my commits (and rebase).
I've just managed to get my Specter DIY working and when using this device, the alias is appearing on the "specter" row as expected, but is no longer being displayed for "This computer". I'm not sure why that is so perhaps I should investigate that a bit more as part of this PR.

Yes. Before investing too much time in it make sure it is indeed a regression introduced in this PR and not something that's already present on master. :)

It seems to be working fine now with both aliases being displayed. I can't reproduce what I saw before so I think the review of this PR can proceed. Thanks

Few nits and it is good for me


Option to make mouse button drag scrolling not a toggle

Thanks for the great app, loving it so far.
Feature request: I'd love to make the mouse button drag scrolling able to be set to not a toggle.

I hacked together this since i don't want toggle (or rather toggle is built into my qmk firmware for my trackball)
https://github.com/chrishoage/drag-scroll/commit/3378e498704e14c7e8e63f11317349b53a58f6ed
You can build this and it will work as you would like.
Note: I hacked in "natural scroll" as well, so if you don't want that you'll need to revert line 44


Finalization logic seems incorrect

I'm looking at this logic here:
https://github.com/knative-sandbox/net-kourier/blob/48320f242b9a2a8fd09d4c5ca29a0f0bfd447046/pkg/reconciler/ingress/ingress.go#L95-L110
The use of finalizers here seems both overkill and buggy, I'll try to elaborate on both facets of this below.
The use of finalizers here is overkill because we're just trying to make sure that the in-memory index is updated to note the removal of the kingress.  Finalizers are generally needed when state outside of the controller process needs cleaning up, and that's not the case here.
The use of finalizers here is buggy because only the "main" controller is guaranteed to process the deletion (since it removes the finalizer itself).
My recommendation here would be that since both the informer cache and the envoy configuration index are both in-memory, that it is both necessary and sufficient to directly delete the configuration in the DeleteFunc informer event and drop the use of finalizers here.  We (@vaikas) made a similar change to the in-memory channel in eventing relatively recently for similar reasons.

Sounds fair enough!

Actually, this go me thinking: If we add a Deletion handler, we are not guaranteed to not race already running reconciles, right? I.e. an update immediately followed by a delete could cause the update to be slower than the delete, because the delete doesn't go via the queue :thinking:.
Moreover: Should we remove the ObserveFinalize function if it's not guaranteed to observe the finalization?

So I think there's two potential "races":

Update queues a key, which is deleted before it is processed (should be ok because when we fetch from lister it will be missing and elide processing).
Update queues a key, we start to process it and while processing it the key is deleted (potentially problematic if clearing / updating the programming happen in the wrong order).

One option would be to pass a callback to UpdateInfoForIngress where it could ensure the continued existence of a kingress while the programming lock (which I'm assuming exists 😅 ) is held.
Some other options come to mind (e.g. a non-Finalizer-based delete flow), but I'm not sure any of those are particularly easy given a variety of the assumptions our reconciliation framework is based around (e.g. queue the key and refetch from the lister cache).

Should we remove the ObserveFinalize function if it's not guaranteed to observe the finalization

🤷  I think you are probably right, and this was a tad overzealous in the original design.  With the benefit of hindsight, I think that basically anyone using these methods is probably using them incorrectly, which is a great reason to remove them.  Do you want to open an issue for 0.22 in pkg?

Can do (re opening an issue for 0.22).
Maybe we can also offer similar callbacks for the "get-but-not-found-so-i-guess-deleted" flow? I.e. an Deleted/ObserveDeleted set of functions that determine deletion via the mechanism we're after here? That'd remove the potential races I think.

Let's discuss in the other issue 😇


Codesniff update - config.php.dist -> PSR2

No functionality updates, just style

No need for this as the current file passes phpcs --standard=PSR2


"pull from" mouse gesture

This really is a 'feature request', but using the scroll wheel from the mouse should initiate a swipe for the direction rolled. This would enable things like expanding the notification area, etc.

Mouse scrolling must scroll (for example in your browser).
It could simulate swipe on Shift+scroll, but it would only be vertically. It is not obvious what should be the swipe increment.

This would enable things like expanding the notification area, etc.

What else?
(Btw, Ctrl+n opens the notification panel.)

Hi, does the app allow zooming in and out?. I do have a touchpad which allows gestures. If so, may I please have the full command list.

does the app allow zooming in and out?

In most apps, you can pinch to zoom. But scrcpy does not support multitouch yet (see #22 and #24).


Detect Prototype.js and use CustomEvent if detected

This change simply checks for Prototype.js and, if found, uses the logic that creates a CustomEvent instead of using jQuery's event logic.
This addresses the issue that I reported in #244

Cool - thanks for the PR.  I'll get this one in when I get the chance.


Add basic N64 support on Mac

Note: mupen64plus lib unload is not working properly on Mac, so stopping and restarting N64 emulation will cause a crash

Hi 88hcsif,
Thank you very much for your contribution. I won't be available for the next few days, so it might take time to review your pull requests. Sorry for that :(

No worries and thanks for the heads up!
I might send some more PRs over if I make some progress but I will keep things separate.


add rbac etc

add rbac for 2 deploy and 1 job
update grafana and prometheus version
change kube-state-metrics replicas to 2
set storage.local.retention=12h

owner can pick some to merge or give a answer to someone who want a clean 'readonly' permission

Ah, damn, didn't see this earlier, sorry about that, but it's just a minor thing as I updated to 1.6.3 today. Will take care of this, thanks for your PR!

@Slahser 你是中国人吧？看了你的博客，其实不是懒，就是太忙了。谢谢你的PR，下次直接ping我就会快点。

@puja108 ok~


Latest version of phpcbf executed

Any chance you can change the commit message to be a bit more descriptive? I assume Fixer is a tool? I've never heard of it. But yeah, this is a CS issue that needs fixing 👍

Sorry @dshafik

No problem @Webysther, thanks for your contribution! 👍


IsURL marks valid url starting with subdomain as invalid

package main

import "github.com/asaskevich/govalidator"

func main() {
	println(govalidator.IsURL("http://m.abcd.com/test.html"))
	println(govalidator.IsURL("http://abcd.com/test.html"))
}

as in the example,
http://m.abcd.com/test.html would be marked as invalid, http://abcd.com/test.html is valid.
any explanation? thanks.

IsURL uses regexp that omits some valid urls, take a look at #150

Please, check added tests, hope issue fixed:
https://github.com/asaskevich/govalidator/commit/7b3beb6df3c42abd3509abfc3bcacc0fbfb7c877#diff-bf215ece4e5166da723b1e19a0d6b1cdR639


[Feature] Project name Vind?

Hi all,
Does it make sense to shorten the project name from win-vind to just vind? I think it sounds much better, and brands the project better.
Just a thought.
Best!

If we want to name it vind, we will start it in a separate repository as a cross-platform after we have accumulated more technical knowledge.
I don't think win-vind has achieved comfortable operation yet.

Thanks!
I appreciate the forward-looking thinking.
Best


Implementation of authentication for proxy server

Changes required on the client side if proxy has authentication enabled. Older clients will continue working if authentication is disabled in the proxy.

@stomita Please review.

@vergara What is the use case of this functionality ? Is there any implementation that accepts authentication in ajax proxy ?


docs: switch upcoming version to regular

Prerequisites checklist

[x] I have read the contributing guidelines.

What is the purpose of this pull request?

Updates "Upcoming Version" on eslint.org to v9.0.0

What changes did you make? (Give an overview)
Updated upcomingVersionPrereleaseType to null (which means a regular version) and ran the fetch-stats script.
Related Issues
In today's TSC meetings, we decided to release the v9.0.0 final tomorrow.
Is there anything you'd like reviewers to focus on?

Versions look good in the preview, so I'm going to merge this.


Onboarding Widget - QR Code scanner not working

Lead: @sonle-geekyants
Describe the bug
The QR Code scanner was working in atmosphere pro v 1.0.2(21) but it is no longer working in 1.0.2(22)
To Reproduce
Steps to reproduce the behavior:

Click activate on an atsign in the dashboard
Open atmosphere pro on mobile, version 1.0.2(22) in testflight and attempt to scan the QR Code
The QR Code screen will display a spinning icon and remain like that until you close the screen

Smartphone (please complete the following information):

Device: iphone 11

Were you using an @application when the bug was found?
-@mospherePro Mobile 1.0.2(22)

QR scanner fix is published in at_onboarding_flutter ^4.0.0

@tinashe404 This can be tested in the latest wavi app.

This is now working, could we please address the fact that the camera square doesn't fit in the UI element?

This has been resolved


Does spring-plugin-sync test case contain spring-concurrent-util?

If you didn't test on async scenario, I think you didn't use the spring-concurrent-util plugins.
If so, please remove it from test report.
And, do you use spring boot in this test case?

fix it. close it


Children-Parent component events crashing after mutating the array

Version
2.2.6
Reproduction link
https://jsfiddle.net/diferno/9pwzjfhd/5/
Steps to reproduce
Either uncomment one of the commented lines that mutate the array of elements that create the children
// this.rows.splice(i,1)
// this.rows.pop()
// this.rows.splice(0,1)
And press RUN
What is expected?
Each children, upon creation, has a timeout where it kills itself.
They should all die after the time is set
What is actually happening?
Some elements are not killed. The parent stops receiving the events after the array has been mutated a couple of times.

If we don't mutate the array but simly log the element to be spliced, all the events are received ok.
If we alter the array (pop or splice), the events stop being received

Use :key="row" (look at the console)


Incorrect unescaping of HTML entities

With input containing < and > (in the escaped form), we end up having incorrect HTML.
Example input: <wrongTag>
Output HTML: <wrongTag>
Not sure, but the same problem may be with & (in the escaped form)
The reason is in what EntityConverter#replaceEntities(text: CharSequence, processEntities: Boolean, processEscapes: Boolean) does when called with true values of arguments.

The following test:
private val replacements: Map<Char, String> = mapOf(
            '<' to "<",
            '>' to ">"
    )

println("${replacements[60.toChar()]} ${60.toChar().let {replacements[it]}} ${60.toChar()?.let {replacements[it]}}")

prints < < null.
I'll rewrite code in another way.

Fixed in 55dcc1b0ff57378891d9fc8ef718d09a414e1c65, JS-only problem.
Available in kotlin-js-clean branch, 0.2.0-pre-7 is published as well


EthersDB::new() returning None in single-threaded environment (tokio::test)

Hi! I am trying to update from version 8.0.0 to the latest and I started to get None when running the integration tests.
Context
Our main application runs using #[tokio::main] without any issues with both libraries (8.0.0 and 12.1.0). The application spawns a new thread for every transaction in the block to perform different kind of simulations, we create a new instance of EthersDB in each thread.
Additionally, we use some channels to communicate different processes of the application
Problem
We also run a suite of  integration tests using #[tokio::test] that try to avoid mocking so that we can have as closely as possible real environments. We only mock calls to the web3 provider, the rest remains the same as the production code.
Since each thread runs as tokio::runtime::RuntimeFlavor::CurrentThread when using tokio::test macro, we started to get None responses from EthersDB::new() due to the check added here.
pub fn new(client: Arc<M>, block_number: Option<BlockId>) -> Option<Self> {
    let rt = match Handle::try_current() {
        Ok(handle) => match handle.runtime_flavor() {
            tokio::runtime::RuntimeFlavor::CurrentThread => return None,
            _ => HandleOrRuntime::Handle(handle),
        },
        Err(_) => return None,
    };

    // rest of the code
}

Challenge
Even though there is an alternative to create an instance of EthersDB from a tokio::runtime (EthersDB::with_runtime(...)), that implies using different building mechanisms depending whether it is a test or the real application, which will require quite a
significant amount of refactoring.
Additionally, since we also use some Channels to send events between different parts of the application, it would also force us to refactor parts of the application not strictly related to EthersDB usage just for testing purposes.
Maybe we are not using it correctly at all.
Open questions

What is the reason behind the validation to prevent single-threaded scenarios?
What is the best way to use EthersDB to simulate transactions?
What is the best way to use EthersDB for integration testing like mine?

Working example
#[tokio::test]
async fn demo_test() {
    let provider = "https://eth-mainnet.g.alchemy.com/v2/{API_KEY}";
    let client = Arc::new(Provider::<Http>::try_from(provider).unwrap());
    let mut set = JoinSet::new();

    // This process simulates how a transaction is executed. For each transaction
    // we spawn a new task that executes the transaction against a fresh EthersDB.
    for _transaction in 1..4 {
        let cloned_client = client.clone();
        set.spawn(async move {
            // Select a specific block for simulation
            let block_id = Some(BlockId::Number(
                ethers_core::types::BlockNumber::from_str("latest").unwrap(),
            ));
            let db = EthersDB::new(cloned_client, block_id);

            assert!(db.is_some(), "Failed to create EthersDB");
        });
    }

    while let Some(res) = set.join_next().await {
        assert!(res.is_ok());
    }
}

Thanks a lot for the help!

In Future, I am thinking of removing EthersDb and moving AlloyDb to examples, so as not to be confused with the main db crate.


Feature Request - Remote Control/Usage

Why?
Our microscopes (mostly NikonTi Eclipse) are controlled by computer just next to them running windows not always on the most up-to-date version and sometimes even air-gapped form the internet. Therefore, we usually try to touch these machines as little as possible, install as little software as possible and let them only interface with the microscope.
What?
We would like to run the napari-micromanager on any other computer in our lab or institute and attach remotely to the running microscope control computer. This would allow us to much easier maintain/develop software, control imaging loops easier, and maybe even work remotely from our labs and dial into running image acquisitions from all over the world...
How?
Not sure yet. I imagine a solution with as little programming overhead as possible but keeping the same functionality as right now. So the developer should not feel that everything goes through a remote connection (Though speed will possibly slower).
There is for example, pyRO that allows to execute functions remotely. Maybe we could turn every device in the pymmcore python api into such a remote object. And then the python code just uses calls that are executed remotely. On the microscope computer then a pyro server would run initiated from a micromanager configuration. I never used the framework though.
So, there might be also be better opportunities to implement that. Any ideas?
Hint: We also discussed that on the EPFL Symposium for Smart Microscopy 2024

hey @JojoDevel, if it's ok with you, I'm going to move this issue to the pymmcore-plus repo, since ultimately most of the changes to make this possible would need to happen there.
We actually did have a pyro-backed remote communication setup in the beginning, but removed it (in this PR: https://github.com/pymmcore-plus/pymmcore-plus/pull/208) due to excess and unused complexity.  However... it shouldn't be too hard to get some sort of proof of principle back up and working again, and it would be great if you could test it a bit to let me know if it is a step in the right direction for your needs.


PLAT-1012: fixed a crash occuring when connections are unexpectedly c…

…losed in certain cirscumstances

For the record, it happened when the server closed the connection after sending its full reply, but while there was more requests queued for that connection in the http client.


Custom input with two inputs? prepended inputs?

I would like to have an input that have a prepended select. So, it's two inputs. I can't find it in docs so I would make a custom input and have my logic inside it.
the problem is. how would manage, validate, read two inputs inside my custom input component?

@SH1R3F 👋
The real question here is how do you want your data structured. You can have as many inputs as you want be part of a custom input, but they can only contribute 1 value. That value can be any type (object, array, string etc).
For example, this guide shows how to use 4 inputs to produce a single number: https://formkit.com/guides/create-a-custom-input
So perhaps more details on what you are trying to build would be helpful. The most helpful would be if you could take a stab at it in the playground and then share that playground back here — or ideally hop into discord and continue the conversation there.
Thanks!


Fix: Avoid path in the template import

Summary
Investigating this comment, I made some tests.
It seems like we can simply use #import <RCTAppDelegate.h> instead of the #import <React-RCTAppDelegate/RCTAppDelegate.h> in both setups:

default setup
use_frameworks! :linkage => :static

Changelog
[iOS] [Fixed] - Support use_framework! :linkage => :static in template
Test Plan

Manually tested with a new app
CircleCI
Sandcastle

You somehow managed to break the entire android build with this (I'm joking, of course it didn't, but that is ironic is it not?)
Looks like it worked!

/rebase


Tweet Analysis of Indian Political Parties

Deep Learning Simplified Repository (Proposing new issue)
:red_circle: Project Title : Tweet Analysis of Indian Political Parties
:red_circle: Aim : Create a deep learning project which will identify the scenarios of tweets of the political parties in India using NLP.
:red_circle: Dataset : https://www.kaggle.com/datasets/aryansingh0909/indian-political-party-tweets-daily-updated
:red_circle: Approach : Try to use 3-4 algorithms to implement the models and compare all the algorithms to find out the best fitted algorithm for the model by checking the accuracy scores. Also do not forget to do a exploratory data analysis before creating any model.

📍 Follow the Guidelines to Contribute in the Project :

You need to create a separate folder named as the Project Title.
Inside that folder, there will be four main components.

Images - To store the required images.
Dataset - To store the dataset or, information/source about the dataset.
Model - To store the machine learning model you've created using the dataset.
requirements.txt - This file will contain the required packages/libraries to run the project in other machines.

Inside the Model folder, the README.md file must be filled up properly, with proper visualizations and conclusions.

:red_circle::yellow_circle: Points to Note :

The issues will be assigned on a first come first serve basis, 1 Issue == 1 PR.
"Issue Title" and "PR Title should be the same. Include issue number along with it.
Follow Contributing Guidelines & Code of Conduct before start Contributing.

:white_check_mark: To be Mentioned while taking the issue :

Full name :
GitHub Profile Link :
Email ID :
Participant ID (if applicable):
Approach for this Project :
What is your participant role? (Mention the Open Source program)

Happy Contributing 🚀
All the best. Enjoy your open source journey ahead. 😎

Full name : Om Ramesh Achrekar
GitHub Profile Link : https://github.com/achrekarom12
Email ID<EMAIL_ADDRESS>Participant ID (if applicable):
Approach for this Project : A sentiment analysis can be done using various NLP techniques to understand underlying trends and patterns. The dataset contains tweets of three major national political parties. A detailed study can be done for these three parties.

Issue assigned to you @achrekarom12


Replace deprecated builder

@now/node-server has been deprecated in favor of @now/node

You can also remove a great portion of your configuration file from:
{
  "version": 2,
  "name": "djproducerbot",
  "alias": [
    "djproducerbot.now.sh"
  ],
  "public": true,
  "builds": [
    {
      "src": "index.js",
      "use": "@now/node-server",
      "config": {
        "includeFiles": [
          "binaries/**",
          "audios/**"
        ]
      }
    }
  ],
  "routes": [
    {
      "headers": {
        "Access-Control-Allow-Origin": "*",
        "Access-Control-Allow-Methods": "GET, POST, PUT, DELETE, OPTIONS",
        "Access-Control-Allow-Headers": "X-Requested-With, Content-Type, Accept"
      },
      "src": "/.*",
      "dest": "/index.js"
    }
  ]
}

to
{
  "name": "djproducerbot",
  "public": true,
  "functions": {
    "api/index.js": {
      "includeFiles": ["../binaries/**", "../audios/**"]
    }
  },
  "rewrites": [
    { "source": "/(.*)", "destination": "/api/index.js" },
  ]
  "headers": [
    {
      "headers": {
        "Access-Control-Allow-Origin": "*",
        "Access-Control-Allow-Methods": "GET, POST, PUT, DELETE, OPTIONS",
        "Access-Control-Allow-Headers": "X-Requested-With, Content-Type, Accept"
      },
      "source": "/.*"
    }
  ]
}

How:
1-   "version": 2, this is already the default version of the platform.
2- "alias":[]: You can use https://zeit.co/docs/v2/custom-domains
3-  "builds": [: You can use Zero Config and refactor your code a little bit. Just move your entrypoint to api/ and Now will understand your intention.
4- routes has been deprecated in favor of rewrites, redirects and headers: https://zeit.co/docs/configuration#project/redirects


Google Topics API - Research

Topics API
Third-party cookies are being phased out. Collects too much data.
With the Topics API, the browser observes and records topics that appear to be of interest to the user, based on their browsing activity. This information is recorded on the user's device.
The browser infers topics for a user based on their browsing activity during a period of time known as an epoch, currently one week. To further enhance privacy and ensure that all topics may be represented, there is a 5% chance the topic is randomly selected from all possible topics in a taxonomy of interests.
Topics are selected from a taxonomy consisting of hierarchical categories such as /Arts & Entertainment/Music & Audio/Soul & R&B
For 10,000 top sites, the Topics API implementation in Chrome uses a manually curated, publicly available override list to map hostnames to topics.
For other sites, the Topics API uses a machine learning model to infer topics from hostnames.[1]
A design goal of the Topics API is to enable interest-based advertising without sharing information with more entities than is currently possible with third-party cookies. The Topics API is designed so topics can only be returned for API callers that have already observed them, within a limited timeframe.
[1] https://developer.chrome.com/en/docs/privacy-sandbox/topics/overview/#manually-curated


Use -source-release.tar.gz instead of -src.tar.gz

We do some crazy things in our maven build to relocate our source tarball from the root of the project into a child module with a different classifier. This isn't necessary if we're not strongly tied to the current file naming convention and the build can be simplified.
If we stop doing this, the binary tarball and source tarball will be located at slightly more divergent maven coordinates, and the filenames (to keep consistent with maven file naming conventions) will reflect this.
Instead of:
accumulo-2.0.0-bin.tar.gz # with top level directory /accumulo-2.0.0
accumulo-2.0.0-src.tar.gz # with top level directory /accumulo-2.0.0

They would instead be something like:
accumulo-2.0.0-bin.tar.gz # with top level directory /accumulo-2.0.0
accumulo-project-2.0.0-source-release.tar.gz # with top level directory /accumulo-project-2.0.0

The latter is the naming convention established ASF-wide with the Apache parent POM default build. It doesn't really matter that they have the same name.
See
https://github.com/apache/accumulo/blob/0b34e30c34b7c31ebb84ca6b3b686c1b3e7b19af/pom.xml#L1468-L1487
and
https://github.com/apache/accumulo/blob/0b34e30c34b7c31ebb84ca6b3b686c1b3e7b19af/assemble/pom.xml#L501-L529
for where all this craziness is being enshrined in our build.
We can just delete these sections of the POM and discard our strict adherence to these particular directory and file naming conventions... since they don't really matter... to simplify our build process.
A simpler build makes it easier to maintain the build process, so that it's not dependent on the expertise of a single (or a small few) individual(s) if something breaks.
I noticed this when reviewing the 2.0.0-rc2, and I think we missed our opportunity, but we can make this change in 2.1 or 3.0. Only the source assembly would be affected (which isn't as critical, because it doesn't affect most users, only developers... who probably more often just check out the git tag anyway if they want the source).

After discussion, concluded ticket no longer needs to be addressed.

See #3125


TNT-33101 - ensure sessionId is passed in event for data fetching and data collection

Personalization sessionId should be passed in event -> meta, to ensure data collection request is properly processed by our backend.
Description
Session ID used to be passed at the request level and it was working OK for data fetching, but it was failing for data collection. To ensure that both data fetching and data collection requests have the session ID details, the session ID has been moved to onBeforeEvent and we make sure that both data fetching and data collection request have a session ID.
As part of this PR I have also added an utility named deepAssign. This utility was required since our event.mergeMeta() was misbehaving in situations like when we try to merge:
{
  "meta": {
     "personalization": {
         "notification": {"a": 1, "b": 2}
     }
  }
}

And
{
  "meta": {
     "personalization": {
         "sessionId": "......."
     }
  }
}

Related Issue
NONE
Motivation and Context
Ensure that data collection requests are not failing on our backend
Types of changes

[ ] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Checklist:

[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.
[x] All tests pass and I've made any necessary test changes.
[x] I have run the Sandbox successfully.

@artur-ciocanu It looks like the build failure might be legit. Here's the test that is failing:
Allows other components to hold up the event

@jfkhoury it's interesting since travis-ci/push was OK, but travis/ci-pr failed. Also as far as I can tell it fails again on IE 11 in data collector and promise polyfill related code.

FYI I'm working on a fix here: https://github.com/adobe/alloy/pull/144. I wouldn't let it hold up the merge once the PR gets approved.


Time Sensor related recipe not working

Machine: https://pastebin.com/8B130sCn
For some reason this recipe won't get registered :
https://pastebin.com/8SzpGCWb
But when I remove the time requirement, it works fine:
https://pastebin.com/0EQM5uEg
I think this is an issue in your mod, not my script.

Did you find a fix for this by any chance?

yes, remove the time hatch from your machine


Add articles of incorporation

The articles include our addresses, so we need to consider how we feel about those being on the site.


stopMocking doesn't call because of retain cycle while stubbing

This issue happens all the time when I stub a mock object and use andReturn with this mock object or use OCMArg with reference to this mock object.
Example with singleton stubbing:
id singletonClassMock = OCMClassMock([Singleton class]);
OCMStub(ClassMethod([singletonClassMock shared])).andReturn(singletonClassMock);

dealloc is never called as well as stopMocking
Example with OCMArg stubbing:
OCMStub([mock methodWithBlock:([OCMArg invokeBlockWithArgs:mock, nil])]);

So we have memory leaking here and should manually call stopMocking to prevent unexpected behavior.
Is there any way to fix this problem?
Thanks!

I'm pretty sure once you stub a class method you have to manually stop mocking.

Although, I don't really know why you have to manually call -stopMocking the more I look at it. Even if you do, the mock object still doesn't appear to deallocate, maybe there's a leak hiding here somewhere?

I think this is fixed by #363, which is released in OCMock 3.5. Can you double-check, please?

Closing due to inactivity. Assume fixed.


Ant Test Build Failed

Hi,
I am doing some experiments by using EvoSuite and Defects4J. When I generated tests for ant projects like Chart1b then move the generated test file to the directory containing the proper project cloned by defects4j. It fails to compile the tests:
Running ant (compile)...................................................... OK
Running ant (compile.tests)................................................ FAIL
Executed command:  cd /home/ehsan/Workspace/java/trace4j/projects/chart_1b && /home/ehsan/Workspace/java/defects4j/defects4j/major/bin/ant -f /home/ehsan/Workspace/java/defects4j/defects4j/framework/projects/defects4j.build.xml -Dd4j.home=/home/ehsan/Workspace/java/defects4j/defects4j -Dd4j.dir.projects=/home/ehsan/Workspace/java/defects4j/defects4j/framework/projects -Dbasedir=/home/ehsan/Workspace/java/trace4j/projects/chart_1b -Dbuild.compiler=javac1.7  compile.tests 2>&1
OpenJDK 64-Bit Server VM warning: ignoring option MaxPermSize=1G; support was removed in 8.0
Buildfile: /home/ehsan/Workspace/java/defects4j/defects4j/framework/projects/defects4j.build.xml

initialise:

compile:
    [javac] /home/ehsan/Workspace/java/defects4j/defects4j/framework/projects/Chart/Chart.build.xml:57: warning: 'includeantruntime' was not set, defaulting to build.sysclasspath=last; set to false for repeatable builds

compile-experimental:
    [javac] /home/ehsan/Workspace/java/defects4j/defects4j/framework/projects/Chart/Chart.build.xml:106: warning: 'includeantruntime' was not set, defaulting to build.sysclasspath=last; set to false for repeatable builds

compile.tests:
    [javac] /home/ehsan/Workspace/java/defects4j/defects4j/framework/projects/Chart/Chart.build.xml:121: warning: 'includeantruntime' was not set, defaulting to build.sysclasspath=last; set to false for repeatable builds
    [javac] Compiling 390 source files to /home/ehsan/Workspace/java/trace4j/projects/chart_1b/build-tests
    [javac] warning: [options] bootstrap class path not set in conjunction with -source 1.4
    [javac] /home/ehsan/Workspace/java/trace4j/projects/chart_1b/tests/org/jfree/chart/renderer/category/AbstractCategoryItemRenderer1_ESTest.java:9: error: static import declarations are not supported in -source 1.4
    [javac] import static org.junit.Assert.*;
    [javac]        ^
    [javac]   (use -source 5 or higher to enable static import declarations)
    [javac] /home/ehsan/Workspace/java/trace4j/projects/chart_1b/tests/org/jfree/chart/renderer/category/AbstractCategoryItemRenderer1_ESTest.java:38: error: annotations are not supported in -source 1.4
    [javac]   @Test(timeout = 4000)
    [javac]    ^
    [javac]   (use -source 5 or higher to enable annotations)
    [javac] /home/ehsan/Workspace/java/trace4j/projects/chart_1b/tests/org/jfree/chart/renderer/category/AbstractCategoryItemRenderer1_ESTest.java:135: error: generics are not supported in -source 1.4
    [javac]       ArrayList<Integer> arrayList0 = new ArrayList<Integer>();
    [javac]                ^
    [javac]   (use -source 5 or higher to enable generics)
    [javac] 3 errors
    [javac] 1 warning

Since I am using JAVA1.8 and the JAVA_HOME and PATH variable are set. Would you please help me why it does not work?

Hi @EhsanMashhadi,
The test-generation script produces an archive containing the generated tests. To run/analyze these generated tests, you should call, e.g., defects4j test -s or use the test-execution framework.
Merging the generated test files with the developer-written test files results in all files being compiled/run with the developer-written build file, which in this case specifies a particular source and target version.
Hope this helps.

I am closing this issue. Feel free to reopen it (or open a new issue) if you have further questions.


Publish latest changelog.md file from react-charting package to docusaurus

Pull latest changelog.md file from react-charting package folder, break it up by minor versions and publish to docsite. The current changelog file is not getting indexed for searching due to large size.

@Shubhabrata08


A minimal boilerplate of koa v2.

https://github.com/geekplux/koa2-boilerplate
This is a minimal boilerplate of koa v2.
It may be a good try and example for koa2 project. Welcome PR :)
Dependencies

Watcher and hot-reload: nodemon
Test:

mocha
should
supertest

Build: babel

tools: babel-cli, babel-register
presets: babel-preset-es2015, babel-preset-es2015-node5, babel-preset-stage-3
plugins: babel-runtime, babel-plugin-transform-runtime

Lint: standard

add babel-eslint for ES6/ES7 support

Reference
#533
#596

Hi, I don't understand why everyone wants to add all babel-stage-3 for koa, the only things you need in koa context for v2 is to add async/await so the only package you need is:
{
    plugins: [
        'transform-async-to-generator',
        'syntax-async-functions'
    ]
}

I understand to add all other stuff in project when you use babel, but in koa context it is not necessary, no?

feel free to add it to the wiki!

Thanks.


2.1.4 Plug Gaia Node into Pipeline

Integrate the Gaia node with the data pipeline. The connection should enable seamless data flow between the pipeline and the node, ensuring that the processed data can be embedded and stored efficiently. Successful integration is essential for maintaining the integrity and performance of the entire system.

Some progress on this has already been done at the data pipeline level in #12

@santteegt would recommend using phi3-mini-4k-instruct as output model, its the most available model on gaianet
See here


melpo: use Tokio to run simulator services (sleeps)

This builds on PR #5, but instead of spawning a separate OS thread for
every Sleepy future, we instead change the simulator to run in a
single-threaded Tokio runtime, with each sleep driven by a task spawned
on that runtime. This way, we only need a single thread to drive all of
the simulator services.
In the future, we can also use the same runtime to drive any simulator
services that use I/O (e.g. implementing a simulated serial port using a
host TCP socket). We may also want to use Tokio synchronization
primitives to block the simulator rt on kernel initialization, instead
of the current spin loop, but I'll address that in a separate PR.

As of now, this causes the tracing-modality library to panic:
     Running `/home/james/tosc/mnemos/source/target/debug/melpomene`
   0.026588434s TRACE Melpo: mio::poll: registering event source with poller: token=Token(0), interests=READABLE | WRITABLE
========================================
   0.027037127s  INFO Melpo: melpomene: Kernel started.
thread 'main' panicked at 'Cannot start a runtime from within a runtime. This happens because a function (like `block_on`) attempted to block the current thread while the thread is being used to drive asynchronous tasks.', /home/james/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-1.19.2/src/runtime/enter.rs:39:9
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
   0.027277799s TRACE Melpo: mio::poll: deregistering event source from poller
   0.051888647s  INFO Kernel: kernel: Initializing heap start=0x7f396400ffd0 size=196608

Following up with folks on the Modality team to see what the best approach for getting this sorted is.

Now that #16 has landed, we can merge this. Thanks @hawkw !


Any plan to support DETR？

Yes, I have a plan to support transformer-based network.
But I have no time to do it lately, this work will be involved some tough questions about channel-changed.
And so welcome your PR.


No error is returned from trash::delete if deleting file fails because the file or folder is opened by another process on windows

On windows, deleting file can be fail because another process is opening the file. (this is windows-specific behavior)
In such a case, this crate should return error but this crate returns without any error information.
Downstream issue: vrc-get/vrc-get#682

Thanks for reporting.
I think it should be easily possible to reproduce this issue on Windows in a test, and then (possibly) fix it, assuming that this crate squelches an error that it should propagate.

https://github.com/Byron/trash-rs/blob/35b549f158428f0016a26c23249c76c6795ba9c3/src/windows.rs#L71-L71
I think second parameter of [IFileOperationProgressSink::PostDeleteItem] can be used but I'm not familiar with windows so I don't know this is true and safe to wait for it synchronously.
It looks implementation of IFileOperationProgressSink can be passed as second parameter of DeleteItem


Add an "Are you sure?" button

I'm unsure (ironically) on how to best implement this, but I wanted to drop a feature request before I complain about it too much more.
When publishing a CVE from a logged-in session through the CVE portal, I find it odd that there's no "are you sure?" kind of button, since it takes what you have and immediately posts it to cve.org.
I'd like a review step in there. Maybe move the button, actually, to the preview page? Or offer the user a choice? If there was a publish button on the preview page, I would feel far more confident about publishing a change. Today, I hit "Publish" without being able to see the entire record, which feels off.
If you're a weirdo who just wants to yolo your publishing, maybe have a savable checkbox preference of "Yes I'm always sure" or something?
Not a blocker. Not a bug. Just a feature request to enable my cowardice. I just feel like a web/editor front end wants an "Are you sure," while something like a command line utility (that I'm likely to script out) would not.

Having nearly encountered this behavior, +1 to a confirmation dialog or other accident reduction feature.
When I reserve a CVE ID and draft content to save for later because the vulnerability has not yet been publicly disclosed, I really don't want to blow the entire coordinated disclosure with an errant button click.

I suggest we try this user workflow:
---> Create/Edit a CVE Record in the Editor tab
---> Once all required fields are good, some nudge to bring the user to the Preview Tab (Next button?)
---> User previews the entry as it would show on the CVE.org site
---> Clicks Post to CVE.org button on the preview Tab
---> Results and pointers to successfully published CVE record.

While updating an existing record, showing a diff i.e list of changes before final posting would be helpful in preventing un intended overwrite of existing data.
Both the capabilities exist in Vulnogram (json diffs via jsonpatch and a Pug template for rendering changes rendering).


Consider a way to turn off generating prefixes for model state keys for [FromBody] parameters

Consider the action
public IActionResult PostValue([FromBody] Person postedPerson)
The Json payload that might get posted to this action would look like:
{ name: "Person Name", Age: -13 }
In the event of model validation errors, we prefix the value of the parameter to the property name, so the dictionary would look like:
{ "postedPerson.Name": "The field Name should have a length of at most 8" },
{ "postedPerson.Age": "Age must be a positive integer." }

The generated key names are consistent with 5.2. However for a client to consume this ModelState as is, it needs to be aware of the parameter name. In 5.2, the parameter name isn't documented as part of the help page, so it's not particularly discoverable.
We should consider making the prefix behavior changeable or have FromBody use IModelNameProvider so a user could change it on a per parameter basis.

@kirthik Could you please investigate what the impact of this behavior is on when doing a JSON serialized jQuery POST to an action that renders a partial view? Do you not get validation errors in that case?

We get do validation errors from ModelState in partial view but validation errors(ModelState keys) are prefixed with parameter name(ex : cat.CategoryName). So if user wants to get validation error on a particular property, he needs to know the parameter name or loop through all validaton errors in modelstate.

I believe we got similar feedback re api-description from @domaindrivendev. The parameter names in user code often aren't relevant.

@kirthik what was the decision here? I see a PR out for review but I don't get what it's supposed to do. Is this behavior configurable? How?

I hope it's configurable somehow, in my Web Api the parameter names are used as key names in request, so they are meaningful.

@rynowak - the decision was to remove prefix.

Fix checked in - 2b246e7acc50a4a3fc19d5e36578e194d1bd94e3

Hi,
In which version of MVC is this fixed. I'm suing 5.2.3 and I can still see the prefix coming for the Model objects in the params.
Thanks

@gravikrishna This is ASP.NET Core 1.0 MVC. It's not the same thing as MVC 5.x. This repository is for .NET Core, not .NET Framework.

@davidfowl  Thanks a lot for the update. Can you please let me know if this feature is available in MVC 5.x ? I'm having this issue here and am not sure how to go about this.

This fix was specific to [FromBody] in ASP.NET Core 1.0 MVC. Please file MVC 5.x bugs at http://aspnetwebstack.codeplex.com/workitem/list/basic

Thanks @dougbu


Improve documentation in various components

Description
Some code comments and docstrings should be added, especially for resource_manager.py, data_loader.py, client_manager.py, etc. Also, some model diagram on what each component would be helpful for people new to the codebase.

Thank you for this feedback. Can you @dywsjtu  please work on this asap, which may involve code cleanup? Thanks!


Drupal API doesn't expose all participant info (eg. history)

The Drupal API expose the participant, but only some of the content. This is essential to have for the country pages. Ex: http://cms-api.gbif-dev.org/api/v1/gbif_participant/8513

This is due to a content massaging error. Will fix it.

The gbif_participant endpoint now uses participantId from Directory API for calling node information, e.g. http://cms.gbif-dev.org/api/v1/gbif_participant/2
And now the history, vision & mission as well as other textual contents are shown.


Integer version of XrExtent2D is signed

Negative extents make no sense.  XrExtent2Di should be XrExtent2Du and contain unsigned integer types.

Hi @jherico,
This is the repository for various implementations of OpenXR functionality and code samples. The repository for the OpenXR specification itself is at https://github.com/KhronosGroup/OpenXR-Docs.
To bring your point to the attention of the spec authors, please submit it as an issue in the OpenXR-Docs repo.  Thanks!


Wording of lock automation triggers is inverted

Home Assistant release with the issue:
0.103.0
Last working Home Assistant release (if known):
unknown
Operating environment (Hass.io/Docker/Windows/etc.):
python venv
Integration:
https://www.home-assistant.io/integrations/binary_sensor/
Description of problem:
The wording of the lock based automation triggers seems to be inverted.
I have a fix for it but want someone else to double check.
My setup - Zigbee Xiaomi Aqara Door sensors connected via zigbee2mqtt.
They are marketed as door sensors, but in my setup, they are used as lock sensors (i.e. detecting whether a lock is locked or not).
In the standard 'door' usage: magnet touching=closed.
This shows up correctly on the lovelace UI with a door open/closed symbol.
I used configuration>customization, selected the entity for the sensor, and changed the device class from 'door' to 'lock'
In my non-standard 'lock' usage: magnet touching=locked.
This also shows up correctly on the lovelace UI with a padlock open/closed symbol and "Locked"/"Unlocked" text.  Works correctly when I move the magnet.
All working fine so far.  Nothing wrong with the icons or text for either lock or door.
The problem is only with the automation screen.

Create a new automation
Select the Trigger type 'Device'
Select my Device: aqara_door3
Select the trigger: 'aqara_door3_contact unlocked'
Add a debug action: Call service, persistent notification.create, message: Door3 automation triggered
Save the automation
Observe the lovelace UI
Move the magnet away

What I expected to happen:

Lock icon changes from locked to unlocked padlock
Lock text changes from 'locked' to 'unlocked'
Notification is triggered.

What actually happens:

Lock icon changes as expected
Lock text changes as expected
Notification is not triggered.

Then when I touch the magnet back to the lock, the notification is triggered.
This does not happen when I configure the sensor as a door - the trigger happens as expected.
Summary:
With a lock sensor, on the lovelace automation editor, selecting a trigger to occur when 'unlocked', results in an automation that happens when the device is locked.
Additional information:
My reading of https://github.com/home-assistant/home-assistant/issues/16052 and https://github.com/home-assistant/home-assistant/issues/15276#issuecomment-402559287 suggests that this was debated in the past, but the consensus and the final code leaves us with:
binary_sensor/device_condition.py:
IS_ON = [
...
    CONF_IS_LOCKED,
...
]

IS_OFF = [
...
    CONF_IS_NOT_LOCKED,
...
]

In any case there is a problem with the wording of the comment in binary_sensor/init.py which doesn't match with the above:
# On means open (unlocked), Off means closed (locked)
DEVICE_CLASS_LOCK = "lock"

There is some discrepancy in the UI as well because the states view on/off shows the opposite of what I expect:

Door
Lock

Magnet
near
near

States view: contact
true
true

States view: state
off
off

UI Image
Closed door
Locked padlock

UI Text
"Closed"
"Locked"

Door
Lock

Magnet
far
far

States view: contact
false
false

States view: state
on
on

UI Image
Open door
Unlocked padlock

UI Text
"Open"
"Unlocked"

I can fix the automation trigger by swapping the CONF_LOCKED and CONF_NOT_LOCKED in https://github.com/home-assistant/home-assistant/blob/8dc57a3700d2154fc31c2082c8c554d828af2bea/homeassistant/components/binary_sensor/device_trigger.py#L87.
Everything seems to work fine.  But... the states view still shows the the opposite on/off.
My solution doesn't feel right.  It feels like the the True/false internal logic needs to be inverted somewhere for a lock.

It looks like possibly the problem is due to inconsistency between the
backend:
https://github.com/home-assistant/home-assistant/blob/dev/homeassistant/components/binary_sensor/device_condition.py
and UI:
https://github.com/home-assistant/home-assistant-polymer/blob/dev/src/components/entity/ha-entity-toggle.ts
The inversion of the UI side happened here:
https://github.com/home-assistant/home-assistant-polymer/pull/1337/files
While putting locks into groups with lights so that they could all be turned ‘off’ together.
I don’t want to get into the “does ‘locked’ mean on or off” debate; I don’t have a preference.  But it should be consistent.
Can at least the logic for the internal state be decided/confirmed? Then I could be confident that I’m fixing the right half of the problem.
It’s too confusing at the moment with comments/code/state contradicting each other.

Having looked again, I think it is only the binary_sensor/device_condition.py and binary_sensor/device_trigger.py files that don't agree with everything else.  I am creating a PR to make them match, which fixes the above issue.
It works perfectly for me but I'd really value someone checking my logic.


Change term - preparations

Term change

Submitter: Material Sample Task Group
Efficacy Justification (why is this change necessary?): The MaterialSample Task Group concluded that dwc:preparations should be organized under MaterialEntity rather than Occurrence, and that developing a MaterialEntity extension -- to rigorously address the things (parts), treatment (preparations), and storage regimes (preservations) -- would be a timely (and overdue) project, but it is out of scope for the MaterialSample project. In the short-term, some clarification of the syntax and examples would be useful.
Demand Justification (if the change is semantic in nature, name at least two organizations that independently need this term): Material Sample Task Group, which includes representatives of over 10 organizations.
Stability Justification (what concerns are there that this might affect existing implementations?):
Implications for dwciri: namespace (does this change affect a dwciri term version)?: No

Current Term definition: https://dwc.tdwg.org/list/#dwc_preparations
Proposed attributes of the new term version (Please put actual changes to be implemented in bold and ~strikethrough~):

Term name (in lowerCamelCase for properties, UpperCamelCase for classes): preparations
Term label (English, not normative): Preparations
Organized in Class (e.g., Occurrence, Event, Location, Taxon): MaterialEntity Occurrence
Definition of the term (normative): A list (concatenated and separated) of preparations and preservation methods for a dwc:MaterialEntityspecimen.
Usage comments (recommendations regarding content, etc., not normative): Recommended best practice is to separate the values in a list with space vertical bar space ( | ).
Examples (not normative): fossil, cast, photograph, DNA extract, skin | skull | skeleton, whole animal (ETOH) | tissue (EDTA)
Refines (identifier of the broader term this term refines; normative):
Replaces (identifier of the existing term that would be deprecated and replaced by this term; normative): None
ABCD 2.06 (XPATH of the equivalent term in ABCD or EFG; not normative): DataSets/DataSet/Units/Unit/SpecimenUnit/Preparations/PreparationsText

Well, I think the "no entailment-generating assertions" is in the sense of machine-reasoning (i.e. asserting a range or domain using OWL). Since the change in definition is from "specimen" to "dwc:MaterialEntity" is human- rather than machine-readable, I don't think the new definition violates this principle any more than the old one. Adding the dwc: namespace is a change that's been made to all DwC terms in the changes covered in the most recent public comment period. Thus the current change simply broadens the range of types of things that preparations can be a property for, since dwc:MaterialEntity encompasses all of the previous specimen types defined by DwC.

Also, since the row source of the Occurrence Core is dwc:Occurrence, you would also not be able to have preparations in a Darwin Core Archive.

Others can probably speak to this better than me, but it is my impression that Occurrence rows often contain terms that would more properly belong to other classes. For example, an occurrence row might use the taxonomy convenience properties, which are organized under the dwc:Identification class. This is a natural consequence of flattening more normalized data models into a single table.
The reorganizing of terms like dwc:preparations under the new material sample class is an attempt to be more sensible about associating properties with the kinds of things that they actually describe. Preparations describe material entities. They don't really describe occurrences (i.e. an organism at a time and place). We don't currently have any kind of "hasEvidence" property, but we will probably have something like that in future models, and in that case, occurrences may have multiple material entities as supporting evidence for them and each of those could have different preparations.

As for the 'Organized in Class' part, all the other types that are used as values for basisOfRecord do not have properties, so I think it is best if MaterialEntity does not get them either.

Aren't dwc:Occurrence and dwc:Event commonly used as values for BasisOfRecord? They have plenty of properties.

I have no problems with changing 'preparation' to 'material entity' (or 'Material Entity') if the consideration is that there are other material entities than specimens that can have preparations. However, putting the curie in the definition is making a domain assertion in the definition, which is really ugly (and I cannot, off the top of my head, think of another place where it has been done). If the definition is supposed to be human-readable, let's keep it human-readable.
I will give up on my other argument (but I still think there is something in it). My objections, or concerns rather, are just with the language.

Just to clarify, it is just the definition that is normative (in this context), right, and not the organizedInClass?

@nielsklazenga Yes, referring to the list of terms, the term IRI and definition are the only normative properties of the terms. As a practical matter, the only thing that "organizedInClass" does is to place the term under a category on the term list and quick reference guide web pages.

However, putting the curie in the definition is making a domain assertion in the definition, which is really ugly (and I cannot, off the top of my head, think of another place where it has been done).

For better or worse, it's going to show up everywhere in DwC definitions on the next release, coming as early as next week. See this draft for a preview. The adding of namespace abbreviations to everything came out of issues that came up in the late stages of Humboldt Core development and in other contexts where lack of the namespace made things ambiguous.

Okay, I am taking it a lot of thought has gone into that, so consider me over my objections.


German Language still has English Text

Where?

No files to list oh

Not an issue, you changed the language from English and you just need to press F5 to refresh for it to apply


In BLAZOR ! How to get the selected range of the content.

Describe the solution you'd like
Getting the range of the selected content from the defined set of contents.
Additional context
Can anyone suggest a solution for it ?

Thanks for contacting us, @indrajjith.
You will need to use JSInterop for this. There is no abstraction available in Blazor for doing this at the moment.

Thanks  @mkArtakMSFT  will try with the JsInterop.


Still issue with keyboard manager where the Shift key remains stuck

Microsoft PowerToys version
0.87.0
Installation method
PowerToys auto-update
Running as admin
No
Area(s) with issue?
Keyboard Manager
Steps to reproduce
I have some key bindings where I connect different keyboard shortcuts to Shift-F10 to open the kontext (mouse right-click menu). I was happy to see a fix in this release (0,87.0) to the bug that (I think) was introduced in 0.86.0.
Nevertheless, the bug still remains and the Shift key still can remain stuck.
Theses are my keyboard bindings - I don't know if they in some way interfere with each other since there are four of them generating the same keyboard sequence. (Shift-F10).
The easiest way to reproduce is setting up these keyboard bindings and then using them for up to 10-20 times and it will be reproduced.
Given that different keyboards has different behaviour, my specific keyboard is the built-in one on a Samsung Galaxy Book 2 laptop computer.

✔ Expected Behavior
Shift key not getting stuck.
❌ Actual Behavior
Shift key getting stuck
Other Software
No response

/bugreport

Check - no problem! Would you like me to generate it when the bug is in play or before it has happened. I usually just turn the keyboard manager off and on to resolve the sticky Shift-key.

After it happens should be fine

Actually took a bit longer than expected this time before the bug occured (started to believe the bug was gone), but eventually it happened again. In the state where the zip-file was created, the left shift-key is not perhaps locked, but rather inverted, i.e. I need to press the left shift-key to have the shortcut work, that is to get the shortcut Ctrl+' to work I need to press and hold the left Shift-key to make it seem not being pressed. Let me know if this wasn't a clear description.PowerToysReport_2024-12-18-23-21-26.zip


docs: Fix installation instructions to not use kubectl edit

We should not be recommending kubectl edit for two big reasons:

It does not work with all editors. With vi on Mac it silently fails OOTB.
If you do it, your remote state differs from your local charts, and every time you update you have to re-set that value or else routing breaks.

The correct method is to edit the chart in the workspace and use kubectl apply to load it back in.
Options for editing are:

Use helm edit, though only the newest version of Helm works well
Edit $(helm home)/workspace/charts/deis/manifest/deis-router-rc.yaml. This is what the first version said, but somebody removed this and I don't know why.

I was the one who changed this, albeit not so deliberately, when I last updated these docs... it did have two lgtms.  Sorry.
I understand editing locally is a better approach and the docs changes I made DO recomend it.  They just don't go into detail on HOW.  Not going into detail on that and mentioning kubectl edit as an alternative are both a response to what feels like a problem with helm...
When I helm up and helm fetch deis/deis, my local changes all get lost anyway... which seems to make it no better than kubectl edit.
Sorry... I wasn't trying to force a certain opinionated way of doing things on anyone.  I was trying to avoid overly documenting the helm workflow in Deis docs while, it seems to me, that the helm workflow is still emerging and being refined.


[fix][broker] Don't allow creating a non-persistent partitioned topic with '-partition-' in name

Motivation
Currently, we can create a non-persistent partition topic contain -partition-. However, we cannot use it as a normal non-persistent partition topic. For example, when we use the partitioned-stats command, we will encounter errors.
Partitioned Topic Name should not contain '-partition-'
Reason: Partitioned Topic Name should not contain '-partition-'
Modifications
We should disable the creation of non-persistent partition topics contain -partition-.
Documentation
Verifying this change
All unit tests passed, not have any behavior change.

[ ] doc
[ ] doc-required
[x] doc-not-needed
[ ] doc-complete

Thanks for the contribution, @hanmz. Would you be able to add a test case to cover this change?

Thanks for the contribution, @hanmz. Would you be able to add a test case to cover this change?

OK, I've added a  test case.

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

Project coverage is 32.15%. Comparing base (bbc6224) to head (fbe1f32).
Report is 699 commits behind head on master.

:exclamation:  There is a different number of reports uploaded between BASE (bbc6224) and HEAD (fbe1f32). Click for more details.
HEAD has 2 uploads less than BASE

Flag
BASE (bbc6224)
HEAD (fbe1f32)

unittests
2
0

Additional details and impacted files

@@              Coverage Diff              @@
##             master   #23488       +/-   ##
=============================================
- Coverage     73.57%   32.15%   -41.42%
+ Complexity    32624       86    -32538
=============================================
  Files          1877     1800       -77
  Lines        139502   139828      +326
  Branches      15299    15388       +89
=============================================
- Hits         102638    44962    -57676
- Misses        28908    88289    +59381
+ Partials       7956     6577     -1379

Flag
Coverage Δ

inttests
27.24% <100.00%> (+2.66%)
:arrow_up:

systests
24.34% <0.00%> (+0.01%)
:arrow_up:

unittests
?

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

Files with missing lines
Coverage Δ

...he/pulsar/broker/admin/v2/NonPersistentTopics.java
29.20% <100.00%> (-32.27%)
:arrow_down:

... and 1627 files with indirect coverage changes

Closing and reopening to trigger a new CI run

/pulsarbot rerun-failure-checks

reopen to trigger ci


Cdxgen does not handle correct containers (SBOM)

Is your feature request related to a problem? Please describe.
Cdxgen does not handle correct containers, in GenerateBom script it does check for licenses
and also sbom format is not complete.
With this issue other tools shall be checked which can handle containers and create sbom entries for them.

Trivy tool was introduced for containers. Issue can be closed.


TP: adds tenant tree to replace flat, hard to visualize tenants table

What does this PR (Pull Request) do?

[x] This PR fixes #5394

Also, added the ability to 'export CSV' so that functionality is preserved:

In addition, this PR provides the ability to view ALL delivery services accessible to a tenant OR only those directly assigned to the tenant.

Which Traffic Control components are affected by this PR?

Traffic Portal

What is the best way to verify this PR?

Run UI tests
Navigate to https://tp.domain.tld/#!/tenants and interact with the tenancy tree (that replaced the flat table). I.e. expand/collapse nodes, add and delete tenants.

The following criteria are ALL met by this PR

[x] This PR includes tests OR I have explained why tests are unnecessary
[ ] This PR includes documentation OR I have explained why documentation is unnecessary
[x] This PR includes an update to CHANGELOG.md OR such an update is not necessary
[x] This PR includes any and all required license headers
[x] This PR DOES NOT FIX A SERIOUS SECURITY VULNERABILITY (see the Apache Software Foundation's security guidelines for details)

rebased so this can benefit from the new TP E2E Tests / E2E_tests GHA. Thanks @shamrickus !


Remove CDS_AWS_CDK from docs

Harness Developer Pull Request
Thanks for helping us make the Developer Hub better. The PR will be looked at
by the CODEOWNERS.
What Type of PR is This?

[ ] Issue
[ ] Feature
[ ] Maintenance/Chore

If tied to an Issue, list the Issue(s) here:

Issue(s)

House Keeping
Some items to keep track of. Screen shots of changes are optional but would help the maintainers review quicker.

[ ] Tested Locally
[ ] Optional Screen Shoot.

Please check the Execution Link of the Pipeline for the Website Draft URL. This is located in the Preview Step behind the Harness VPN and also is available in #hdh_alerts. E.g Website Draft URL: https://unique-id--harness-developer.netlify.app. Current Draft URL is: https://65666bd32df8410a0a32b1dc--harness-developer.netlify.app

Please check the Execution Link of the Pipeline for the Website Draft URL. This is located in the Preview Step behind the Harness VPN and also is available in #hdh_alerts. E.g Website Draft URL: https://unique-id--harness-developer.netlify.app. Current Draft URL is: https://65666c3cfb2c980a2378a6e6--harness-developer.netlify.app

Please check the Execution Link of the Pipeline for the Website Draft URL. This is located in the Preview Step behind the Harness VPN and also is available in #hdh_alerts. E.g Website Draft URL: https://unique-id--harness-developer.netlify.app. Current Draft URL is: https://65666c60215ac60a77c276b0--harness-developer.netlify.app


Add Excludes to WildcardImport rule reusing logic from LateinitUsage

This PR:

Extracts an Excludes class which manages rule parameters containing arguments that should be excluded from the rule.
Uses Excludes in the LateinitUsage rule
Adds excludedImports parameter to WildcardImport rule

Resolves #223
What else should go into the Excludes class?

Looks good, thank you :)


Enable CTRE_FORCE_INLINE when clang or gcc is integrated in MSVC

When other compilers are integrated into the MSVC their compiler macros are defined in addition to _MSC_VER. Which confusingly means _MSC_VER only means the MSVC compiler if and only if no other compiler is detected.

What about ICC and EDG?

What about ICC and EDG?

I'd guess if they're properly integrated it's the same behavior? Is there a way to detect those?

I'd guess if they're properly integrated it's the same behavior? Is there a way to detect those?

Are you sure there is no other way how to detect MSVC without negating other compilers? That seems brittle to me.

Are you sure there is no other way how to detect MSVC without negating other compilers? That seems brittle to me.

Not sure, I honestly just ran into this issue only because I just managed to get clang working for msvc and I only caught it because of debugging the assembly. There may be an easier way, but apparently as is, clang basically ignores __forceinline because it doesn't know what that is.

Not sure, I honestly just ran into this issue only because I just managed to get clang working for msvc and I only caught it because of debugging the assembly. There may be an easier way, but apparently as is, clang basically ignores __forceinline because it doesn't know what that is.

I wouldn't necessarily trust this, _MSC_BUILD seems to be different between whether I'm using MSVC specifically, or another compiler, that might be a short-hand way of checking.

I wouldn't necessarily trust this, _MSC_BUILD seems to be different between whether I'm using MSVC specifically, or another compiler, that might be a short-hand way of checking.

Looks like MSVC might define EDG because it's using EDG as a frontend for intellisense?
https://devblogs.microsoft.com/cppblog/use-any-c-compiler-with-visual-studio/

Looks like MSVC might define EDG because it's using EDG as a frontend for intellisense?
https://devblogs.microsoft.com/cppblog/use-any-c-compiler-with-visual-studio/

Intel's compiler appears to use __forceinline? I'm not sure what the EDG compiler wants, I'm guessing since MSVC uses it __forceinline is what it would expect?

Intel's compiler appears to use __forceinline? I'm not sure what the EDG compiler wants, I'm guessing since MSVC uses it __forceinline is what it would expect?

p1007r1 appears to do this:
#if defined(__clang__) || defined(__GNUC__)
__attribute__((always_inline))
#elif defined(_MSC_VER)
__forceinline
#endif

Which would seem to avoid the weird MVSC issue, but wouldn't handle other compilers the same.
Could rewrite like:
#if defined(__clang__) || defined(__GNUC__)
__attribute__((always_inline))
#elif defined(_MSC_VER)
__forceinline
#else
__attribute__((always_inline))
#endif

To keep everything the same.

p1007r1 appears to do this:
#if defined(__clang__) || defined(__GNUC__)
__attribute__((always_inline))
#elif defined(_MSC_VER)
__forceinline
#endif

Which would seem to avoid the weird MVSC issue, but wouldn't handle other compilers the same.
Could rewrite like:
#if defined(__clang__) || defined(__GNUC__)
__attribute__((always_inline))
#elif defined(_MSC_VER)
__forceinline
#else
__attribute__((always_inline))
#endif

To keep everything the same.

Here's a question, is there a particular reason why CTLL_FORCE_INLINE and CTRE_FORCE_INLINE are defined differently besides
https://github.com/hanickadot/compile-time-regular-expressions/blob/0e646f385295de075729a81d22612a4ea5b6bfaa/include/ctll/parser.hpp#L44
Having inline already in the function signature? Seems CTLL_FORCE_INLINE and CTRE_FORCE_INLINE would be the same thing?

Here's a question, is there a particular reason why CTLL_FORCE_INLINE and CTRE_FORCE_INLINE are defined differently besides
https://github.com/hanickadot/compile-time-regular-expressions/blob/0e646f385295de075729a81d22612a4ea5b6bfaa/include/ctll/parser.hpp#L44
Having inline already in the function signature? Seems CTLL_FORCE_INLINE and CTRE_FORCE_INLINE would be the same thing?

CTLL and CTRE can be used separately.

CTLL and CTRE can be used separately.

Right, I guess my question is about the macro's usage, are CTLL_FORCE_INLINE and CTRE_FORCE_INLINE meant to be different really in any way? It looks as though from the way CTLL_FORCE_INLINE used you're adding an inline before the macro, where for CTRE_FORCE_INLINE you don't?

Right, I guess my question is about the macro's usage, are CTLL_FORCE_INLINE and CTRE_FORCE_INLINE meant to be different really in any way? It looks as though from the way CTLL_FORCE_INLINE used you're adding an inline before the macro, where for CTRE_FORCE_INLINE you don't?

They should be same, but they probably are out of sync.

They should be same, but they probably are out of sync.

Ah, ok was worried I was missing something weird about inlining because of how the signature would end up.

Ah, ok was worried I was missing something weird about inlining because of how the signature would end up.

@hanickadot not having luck on finding anything specific about the intel or edg compilers for force inline. Best I've run into is:
https://software.intel.com/content/www/us/en/develop/documentation/oneapi-dpcpp-cpp-compiler-dev-guide-and-reference/top/compiler-reference/attributes.html and https://www.edg.com/docs/edg_cpp.pdf
I found the attribute always_inline mentioned here for intel:
https://software.intel.com/content/www/us/en/develop/documentation/cpp-compiler-developer-guide-and-reference/top/compiler-reference/compiler-options/compiler-option-details/profile-guided-optimization-pgo-options/p.html
Best I can gauge without having access to either is intel and edg's compiler can parse msvc's attribute syntax. EDG reads as though it might ignore / not implement them. Not found __forceinline for eaither, so both might really use:
#define CTRE_FORCE_INLINE inline __attribute__((always_inline))

@hanickadot not having luck on finding anything specific about the intel or edg compilers for force inline. Best I've run into is:
https://software.intel.com/content/www/us/en/develop/documentation/oneapi-dpcpp-cpp-compiler-dev-guide-and-reference/top/compiler-reference/attributes.html and https://www.edg.com/docs/edg_cpp.pdf
I found the attribute always_inline mentioned here for intel:
https://software.intel.com/content/www/us/en/develop/documentation/cpp-compiler-developer-guide-and-reference/top/compiler-reference/compiler-options/compiler-option-details/profile-guided-optimization-pgo-options/p.html
Best I can gauge without having access to either is intel and edg's compiler can parse msvc's attribute syntax. EDG reads as though it might ignore / not implement them. Not found __forceinline for eaither, so both might really use:
#define CTRE_FORCE_INLINE inline __attribute__((always_inline))

oh no :(


Consensus check

Adds consensus selection logic, skipping:

Comparison of hash state of chains
Sub-window densities retrieval from node

This PR does not integrate consensus check with operator. That will be addressed in another PR.

This should be implemented in o1js and committed to the Mina bridge repo.

Reopening because this won't be implemented in o1js but in Aligned.


friendly editor not refreshing generated warpscript

Hi,
Since we upgrade in Grafana v6.5.1 (5ee01b4a90), the friendly query editor does not refresh until we switch from the friendly to advanced query editor and vice-versa.

Other workarounds are :

refresh manually (refresh button)
open query editor


How to render DirectShow in swapchainpanel?

hi，
I used EVR Presenter to get a buffer pointer. In WPF, I used the SetBackBuffer of d3dimage to render images. What do I do in winui?

Buffer pointer is an IDirect3DSurface9. I need to present IDirect3DSurface9 in SwapChainPanel.

Hi,
Sorry, I don't have any experience with DirectShow/Direct3D9. I also did a quick search, but I don't see any obvious answer.
My understanding is that SwapChainPanel works with IDXGISwapChain, and DXGI was introduced in Direct3D 10. So, it is likely that you can't use it directly with IDirect3DSurface9.
The alternative that I wonder if it could work is if you could copy that D3D9 surface in memory, then put it in a D3D11 surface to render it in the SwapChainPanel. But even then, it might be really slow.

I have found a way to render IDirect3DSurface9 to d3d11, but the effect is not very satisfactory. I may have to modify the C + + code to avoid the overhead of copying memory.


Missing identifier for export. This member will not be included in the barrel

Trying the just published version compatible with TS5, but I'm gettin warnings in existing barrel files. For what I can tell, it happens on the first widlcard export in the barrel file (but existing barrel files should make the plugin skip creating or inspecting one, right?)

Not sure if I understood correctly, so forgive me if I got it all wrong, but in the case of existing barrel files, the plugin doesn't create a virtual one, right? Or does it? I'm confused about that, because having a warning generated by the plugin makes me think it is doing something the the existing barrel file.
And you're right, it's just a warning in the end of the day. But the thing about warnings that can't really be addressed is that they make us too comfortable ignoring warnings...
If it is NOT creating a virtual barrel in case of an existing one, then maybe the warning is unecessary all together. What do you think about that? That would also allow for the introduction of the plugin in existing projects that already have lots of barrel files without generating tons of warnings.
If it IS creating a virtual barrel on top of the existing one, wouldn't it be better if the plugin completely skipped the creation of a virtual one? That would support the case where we actually want to create a barrel manually so we can cherry pick what is exported from the directory.

I'm confused about that, because having a warning generated by the plugin makes me think it is doing something with the existing barrel file.

That makes sense.

then maybe the warning is unecessary all together

I disagree, the warning is necessary because the person might assume that a default function with no identifier might be picked up, but it won't.

If it is NOT creating a virtual barrel in case of an existing one

AFAIK (It's been 8 months since I wrote this code), it is not creating a virtual barrel for existing files. As I said above, it is creating a barrel for the barrel files in the directory, not for nested folders.

That would also allow for the introduction of the plugin in existing projects that already have lots of barrel files without generating tons of warnings.

This is a fair point. I think one option would be to let the user suppress the warning instead. Through the glob matcher idea for example.

🤔
Looking at the screenshot below, knowing that the warning in the existing barrel file points to the wildcard export of the CEP.ts file, which contains only named exports as shown on the top panel, I'm completely lost about what is the warning telling me, to be honest.
Is it because the existing barrel itself exports only wildcards?

@diegovilar, here's how TVB works:

we scan the folder for typescript files
we get the named exports (export const, export function, export class) for the files
we reexport the members by their identifier (const identifier, function identifier, class identifier)

In the case of a wildcard export (export *), we don't have an identifier, so there's no way to include it in the barrel file. That's why you see the warning in existing barrel files, and you'd see the same warning if you tried to do export default function() {} because there would be no identifier for TVB to rely on.
That's why I'm talking about adding an option, or a comment, ignore specific files so that the warning goes away.
The only other option I could think of would be to ignore barrel files, but that would be misleading if you consider the following tree:
- components/
-- buttons/
---- index.ts
---- primary.tsx
---- secondary.tsx
-- inputs/
---- index.ts
---- text.tsx
---- numeric.tsx

Both components/**/index.ts, which already exist, have the same structure:
export * from './primary'
export * from './secondary'

Now, if I wanted to import something with TVB using the following import statement:
import { PrimaryButton } from './components'

That would not work since there are no identifiers specified in the existing barrel files, therefore they would not be included in the generated barrel file. That's why we can't remove the warning from existing barrel files.
One could argue that we could move away from exporting the members by identifier and instead export everything from the file, but I like the control we have by exporting individual members. The existing approach would also let us ignore some members from being picked by TVB once https://github.com/zaguiini/typescript-virtual-barrel/issues/6 lands, so I'm not sure about the refactor.

One could argue that we could move away from exporting the members by identifier and instead export everything from the file, but I like the control we have by exporting individual members. The existing approach would also let us ignore some members from being picked by TVB once #6 lands, so I'm not sure about the refactor.

When we create barrel files, we usually do it to export everything from the location and shorten import statements, right? That's the most frequent reason to do so. If one needs control over what is exported, one usually cherry-picks in the barrel file what to export. That's how we do it normally, right? Recursively.
When I think of a plugin that automates the creation of barrel files, It seems natural to me to expect it to behave as close as possible (if not exactly) to how manually created barrel files would work:

It would automatically create a virtual barrel file in every directory and in each virtually created barrel files it would export * from... all files and subdirectories in that directory.
If a real barrel file is found at some level, instead of exporting directly from other files or directories in that level, it would export * from... that existing barrel file. Here we would have control of what to export in said lavel, if we so desire.

No need to introduce control comments to filter anything. Tha plugin would just do what is natural (export everything) but give us control back where needed by honoring existing barrels.

That makes sense to me, @diegovilar. Wanna go ahead and create a PR with the changes? I have little to no bandwidth right now.

Cool! I was already hacking my way through it, just didn't want to start a new project to go in another direction when you've already done so much. I'll get back to you when I have something working to see what you think 🤘🏻

@diegovilar Hi! Did you make it?


Simulation improvements

@julianoes I'm currently going through all airframes and checking their simulation performance. This one was pretty off. This also fixes the stale baro warning.
Flight still shows oscillation: Must be tuning or an issue with Gazebo physics:
http://review.px4.io/plot_app?log=c53f2a39-943a-43ec-9deb-7d6dce72ff02

This is with roll / pitch rate dropped to 0.1 (from 0.15 in the above link).
http://review.px4.io/plot_app?log=f3b61cc0-a7f0-4d9b-b2f8-47cbf6a18e49
And trying with higher rate gains shows oscillation. I think this is the airframe model @hsu


xxh3 hash generates different result from c xxh3 lib

thank you for porting this lib!!
found this package generates different result from c lib.
dart, this package
xxh3(Uint8List.fromList(utf8.encode('test')), secret:null, seed: 0)
get result:  -7004795540881933248
c lib get result:<PHONE_NUMBER>334414137
is there anything I missed here?

Sorry, used wrong function in C, the result is perferectly matched


Enable single session authentication within Obsidian application

This is very similar to #146, but takes it a step further.
I would imagine most vaults are personal vaults with a single user, and for most people they would want to expose all of the encrypted notes with a single password at the beginning of their session.
Not only would this be a convenience, it would be necessary to protect against accidental encryption with possible data loss. For example, if someone needs to change their password for their encrypted notes, they would need to change it in every instance of encrypted notes. If one note is missed, then that note would have a possibly forgotten password. This would be an especially insidious error if a vault were transferred to a new party, in the case of say an inheritance or when changing employment.

I agree, most would use the convenience of a single password throughout their vault.
In the next release there'll be an option to remember session passwords at the vault level.
Which password is used per selected text or note would still be overridable by the user though.   Using the remember by Vault setting will guide the user into using the same password but won't guaranty they do.
So the up coming change helps but doesn't address the 'change all my passwords' problem... I'm not sure how to address that, perhaps a command line tool would work (like some issues have mentioned)

Vault session remembering will be released in v2.3.7


LOGO

tried to create something, give your views on it

Pretty good logo! 100x better than what i made. The image size isn't appropriate though

ok what size would be appropriate for it??

2:1 aspect ratio

Awesome :rocket:


Firepony segmentation fault

For this command and input files of ~30KB I got Segmentation fault:
firepony --cpu-only -r samples/example_human_reference.fasta -dv -s samples/example_human_known_snp.vcf samples/example_human_Illumina.realigned.bam
Firepony v1.1.0
enabled compute devices:
CPU (Intel Threading Building Blocks, 7 threads)
original command line: --cpu-only -r samples/example_human_reference.fasta -dv -s samples/example_human_known_snp.vcf samples/example_human_Illumina.realigned.bam
computed command line: -r samples/example_human_reference.fasta -s samples/example_human_known_snp.vcf -o - --batch-size 1000 --debug --cpu-only --verbose
loaded index for samples/example_human_reference.fasta
loading variant database samples/example_human_known_snp.vcf...[W::vcf_parse] contig '20' is not defined in the header. (Quick workaround: index the file with tabix.)
[W::vcf_parse] INFO 'RSPOS' is not defined in the header, assuming Type=String
[W::vcf_parse] INFO 'dbSNPBuildID' is not defined in the header, assuming Type=String
[W::vcf_parse] INFO 'SSR' is not defined in the header, assuming Type=String
[W::vcf_parse] INFO 'SAO' is not defined in the header, assuming Type=String
[W::vcf_parse] INFO 'VP' is not defined in the header, assuming Type=String
[W::vcf_parse] INFO 'GENEINFO' is not defined in the header, assuming Type=String
[W::vcf_parse] INFO 'WGT' is not defined in the header, assuming Type=String
[W::vcf_parse] INFO 'VC' is not defined in the header, assuming Type=String
[W::vcf_parse] INFO 'INT' is not defined in the header, assuming Type=String
[W::vcf_parse] INFO 'ASP' is not defined in the header, assuming Type=String
[W::vcf_parse] INFO 'VLD' is not defined in the header, assuming Type=String
[W::vcf_parse] INFO 'GNO' is not defined in the header, assuming Type=String
[W::vcf_parse] INFO 'OTHERKG' is not defined in the header, assuming Type=String
Segmentation fault (core dumped)
Any ideas what went wrong?

It looks like htslib might be having trouble parsing the VCF file.
Is that data public? Would it be possible for you to share the VCF file?

@vladimirkovacevic, did you resolve this issue? Happy to help further if needed.


[DOCFIX] Escape HTML characters in confDocGen

Due to a recent change to conf doc gen a special string with <
and > characters were being added to the descriptions of
property keys. This breaks the reference page.
Fix by escaping all HTML entities before writing to the CSV file.

@apc999

alluxio-bot, merge this please

alluxio-bot, cherry-pick this to branch-2.0 please

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/4593/
Test PASSed.