remove nav links for repositories and remotes for insights users

Issue: AAH-2334
Removing the repositories and remotes nav links for insights CRC users.
As for https://issues.redhat.com/browse/AAH-2133 for removing/disabling repositories:
Feature flag PULP_GALAXY_FEATURE_FLAGS__display_repositories=false) should be added to the oci-env/compose.env / galaxy_ng/.compose.env in dev mode; for actual console.redhat.com, it probably lives somewhere in the deploy config .

Is there a corresponding https://github.com/RedHatInsights/chrome-service-backend PR to update the menus?
(This only removes the routes, not the menu items)

I think we want to continue allowing the ability for the user to manually type the URL https://console.stage.redhat.com/ansible/automation-hub/ansible/repositories (to support when we need to edit the validated repo to make it pipeline=approved). But we don't want the "Repositories" menu item since that will be confusing to all other users.
For "Remotes", RBAC already keeps most users from accessing that functionality when they click on the menu item. So we may not need to remove the route.
So maybe keep the routes and only remove the menu items, which sounds like needs to be done in a separate repo: https://github.com/RedHatInsights/chrome-service-backend

OK @awcrosby - Do I understand that the changes on this pr are no longer relevant and I can close this out? And I'll remove the menu items from https://github.com/RedHatInsights/chrome-service-backend.

@ShaiahWren yeah sounds like this PR can be closed

Closing this pr; see https://github.com/RedHatInsights/chrome-service-backend/pull/139.


Clicking Help > Examples in GUI results in nothing

Upon clicking Help > Examples I get this error in the command line:
python madbyte_gui.py
MADByTE is loading...
Multithreading with maximum 16 threads
/bin/sh: Documentation/MADByTE_Quick_Start_Tutorial.pdf: Permission denied

Clicking Help > Documentation results in a similar error:
/bin/sh: Documentation/MADByTE_User_Manual.pdf: Permission denied

I'm running madbyte v1.2.0 on macOS Catalina (10.15.7) on a MacBook Pro (16" 2019)

Hi Shaurya,
Could you verify that in the MADByTE directory> Documentation the PDF files are there?
It is possible that your permissions settings may be keeping MADByTE from accessing your default pdf program, which is used to launch the files. If this is the case, it would be helpful to know what program you use for PDF viewing so we can solve this.

They are indeed present and readable by user, group and others. The PDF viewer is the default "Preview" found on macOS.
A quick solution might be to amend the Launch_Documentation and Launch_Example functions in madbyte_gui.py as follows:
subprocess.call(["open", os.path.join('Documentation','MADByTE_User_Manual.pdf')])
subprocess.call(["open", os.path.join('Documentation','MADByTE_Quick_Start_Tutorial.pdf')])

Not sure about Windows though. Would you like me to fork and submit a PR?

That sounds like a great plan. After looking around, it seems the subprocess.Popen does have problems on Mac - great find.

I could potentially open a PR with my changes mentioned above but pytest still fails and produces the same errors regardless (#10).


silence unnecessary javadoc output

https://jira.duraspace.org/browse/FCREPO-1656

Resolved with: https://github.com/fcrepo4-labs/fcrepo-camel-toolbox/commit/a7545cce6a1e04c1a61976506a23d97ecebd400d


Return Flask errors as JSON instead of HTML (mentioned in issue #561)

Linked Issue(s) https://github.com/middlewarehq/middleware/issues/561
Acceptance Criteria fulfillment
Changed app.py to change such that flash returns errors as JSON instead.

Further comments
May want to check to see if it works, I was having trouble running some of the program.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

Hey @dominicghizzoni, thank you so much for your PR.
We will however need you to go ahead and sign the CLA shared by the bot in the comment above.
Thanks! :)

Please also update the PR title to reflect the nature of the change.

what must i change to pass all the checks

what must i change to pass all the checks
Hey @dominicghizzoni Please read   Contributions Guide It will help you.

@samad-yar-khan the point I was trying to convey was errors like 404(all errors less than 500) should be handled in the business logic itself right? There won't more than 2-3 error possibility for any endpoint. I can observe that most of the api view are already checking for errors and returning the json error as well.
For the 404 page not found related to false routes or redirections, should be handled with the frontend routing.
So imo there will be some endpoints where something unexpected will occur, and for that flask returns with a html error file. So can't show that file in front end where we are expecting a simple object/string.
To avoid this we want to respond with a json. For debugging concerns these error can be logged to db or something like we can leverage certains tools like Sentry. But the error that is return as json should be hardcoded.
Please let me know if I am misunderstanding it, my knowledge is very limited after all.

Hey @dominicghizzoni, are you considering continuing this PR?

Someone else in the issue thread said they would try to complete it


fix: remove check for batch len

Remove check for batch len
Description
Remove the < 2 check for batch len. Now we only check that the batch is not empty.
Type of change

[x] Bug fix

Checklist

[ ] “Hotfix” to testnet, everything else to staging
[ ] Linked to Github Issue
[ ] This change depends on code or research by an external entity

[ ] Acknowledgements were updated to give credit

[ ] Unit tests added
[ ] This change requires new documentation.

[ ] Documentation has been added/updated.

[ ] This change is an Optimization

[ ] Benchmarks added/run

[ ] Has a known issue

Link to the open issue addressing it

[ ] If your PR changes the Operator compatibility (Ex: Upgrade prover versions)

[ ] This PR adds compatibility for operator for both versions and do not change batcher/docs/examples
[ ] This PR updates batcher and docs/examples to the newer version. This requires the operator are already updated to be compatible

Solved in https://github.com/yetanotherco/aligned_layer/commit/a847c5f684a0b071c3bb1dae29542261291574d1


Lavamoat Webpack

Hi! I'm trying to integrate Lavamoat in my project. I'm using webpack. Is there any webpack specific document or example available ?
Thank you!

This is tracked in #253


How to access the x, y, z co-ordinates 'separately' in PoselandmarkerResult?

How to access the x, y, z co-ordinates 'separately' in PoselandmarkerResult?

Thanks for the suggestion! I've documented it and will forward it along.


Support server to server query

Thanks kadirahq's good work.
Just like we can do server to server ddp publish / subscribe. Is it possible to export server side lokka client for query from other Graphql server / meteor-graphql server ?

I think my question (https://github.com/kadirahq/meteor-graphql/issues/18) is related to this too...


Adding evaluation mode disclaimer and documentation

This PR adds a disclaimer for evaluation mode to quickstart.sh along with some documentation updates to include "officially" talking about it.

LGTM.


On MacOS, "workbench.startupEditor": "readme" does not fallback to welcomePage

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

VS Code Version: 1.77.3 704ed70d4fd1c6bd6342c436f1ede30d1cff4710 arm64
OS Version: macOS 13.3.1

Steps to Reproduce:

in user preference, set "workbench.startupEditor": "readme"
open an empty workbench (or a new window), or a folder without readme.

Expected: it should fallback to "welcomePage" and open the welcome page.
Actual: no startup editor opened.

https://github.com/microsoft/vscode/blob/682afdd61dd66e83cfdbefdf6b8214dbbc65e135/src/vs/workbench/contrib/welcomeGettingStarted/browser/startupPage.ts#L129-L152
Either the description of the "readme" option is wrong or the above code needs an else block to run openGettingStarted() when no readmes were found.


HHH-18496 Add support for JSON functions

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license
and can be relicensed under the terms of the LGPL v2.1 license in the future at the maintainers' discretion.
For more information on licensing, please check here.

https://hibernate.atlassian.net/browse/HHH-18496

Superseded by https://github.com/hibernate/hibernate-orm/pull/8979


Do playlists support spotify playlists?

I'm not sure if I should be able to, but I can't get a Spotify playlist to play using this skill.
If I say "Alexa, ask Sonos to play playlist Discover Weekly in Living Room", it responds with "queued and started Discover Weekly", but then just plays whatever was previously queued up.
If I check the output on my server, it has said:
2017-03-14T20:23:11.915Z ERROR
  Error: Playlist not found
    at /home/ubuntu/node_modules/sonos-discovery/lib/prototypes/Player/replaceWithPlaylist.js:13:15
    at process._tickDomainCallback (node.js:411:9)

It looks for a sonos playlist. To add support for spotify playlist this feature would need to be added to https://github.com/jishi/node-sonos-http-api please create an issue there.


Flat Accent: A theme that follows the windows theme color

By getting the Windows's theme color through the method that I've explained here, this theme is pretty much the Flat theme, but with the addition of the theme color as a highlight for certain things.
By using a MarkupExtension, I've implemented the Opacity attribute in order to change the Opacity of the SolidColorBrush that the class returns (So that we can have different tones of the same color, such as in the Taskbar or the different button states)

The issue:
As there is not listener to any theme changes, an user might have to restart Cairo to change to a new hue

Nice! I'd like to get this merged with some improvements:

Adding a listener for changes, caching the value, and read from the cache. You could monitor the registry key HKCU\Software\Microsoft\Windows\DWM\AccentColor.
On Windows 7, the color ends up black. EnvironmentHelper should be used to check the OS, and it should probably fall back to the current Flat theme color for now since that OS doesn't have a similar concept of an accent color.

Honestly, this should probably be the default Flat theme; we could append 'Blue' or something similar to the current theme's name. We should also move much of the accent color code into ManagedShell so that other shells can benefit.

Checking for changes can be done through SystemEvents.UserPreferenceChanged
I'll look for a way to get it to work on windows 7.

By using power toys and checking registry values
The colorizationColor hex value should represent the actual colorization
accentColor returns a darker value

Also another thing
Is setting the UserPreferenceChanged listener in CairoApplicationThemeService's constructor okay?
In the event by calling SetThemeFromSettings() it changes the color accordingly


How to fake user_agent and the id paired with it

Is your feature request related to a problem? Please describe.
How to change the user_agent in the seesion.json file in the code. If user_agent is changed, does the android_device_id need to be changed? If so, how to forge these IDs?
Describe the solution you'd like
Able to forge multiple user_agent corresponding to different accounts

You can use uuid to change device id


Example App have Error 403

when i pressed the [Process Recorded Audio] button. I had Error 403
{
  "error": {
    "code": 403,
    "message": "Requests from this ios client application \u003cempty\u003e are blocked.",
    "status": "PERMISSION_DENIED",
    "details": [
      {
        "@type": "type.googleapis.com/google.rpc.Help",
        "links": [
          {
            "description": "Google developer console API key",
            "url": "https://console.developers.google.com/project/662893261214/apiui/credential"
          }
        ]
      }
    ]
  }
}

Then i found that populate the header with the bundle identitfier. It worked.
[request addValue:[[NSBundle mainBundle] bundleIdentifier] forHTTPHeaderField:@"X-Ios-Bundle-Identifier"];

@thequan1 Thanks for debugging and clarifying this. In my testing I didn't set the bundle identifier when I created the API key. I'll update the sample to send the bundle identifier in the header.

The speech samples are updated in this commit: https://github.com/GoogleCloudPlatform/ios-docs-samples/commit/f30aa34521d8f0ec966e11434fd266e6f01ae218


Fix the "reset filters" button

In previous releases of ember-submission-form-fields each field had both an "edit" and "show" version. We could (mis)use this behaviour to reset the form fields by temporarily switching the @show argument value.
Since a different component was being rendered in the read only mode, Ember throws away the edit component instances and recreates them when the @show flag was turned off. This had the effect that all form fields would reset.
When we deduplicated all of the form fields this trick no longer works since Ember doesn't destroy the component instances.
As a quick workaround we can temporarily render a new RdfForm instance so that all the components will be destroyed and recreated.

The main downside (other than the inneficiency) is that it flickers when rendering the different forms because internally we use run.next before rendering which causes an empty panel to be displayed for a couple of frames.


Current models like Gpt4o-mini are not supported.

Current models like Gpt4o-mini are not supported. And since ChatCompletionModel  is a sealed class it seems that I cannot even create a ChatCompletionModel("gpt-4o-mini") on the fly?
https://github.com/softwaremill/sttp-openai/blob/5492e74c8d5a0e5ed372891c0193be83aac7ee4c/core/src/main/scala/sttp/openai/requests/completions/chat/ChatRequestBody.scala#L113

I guess https://github.com/softwaremill/sttp-openai/blob/5492e74c8d5a0e5ed372891c0193be83aac7ee4c/core/src/main/scala/sttp/openai/requests/completions/chat/ChatRequestBody.scala#L146 is something you're looking for.

@benzwreck ah yes, thanks!
Using model = ChatCompletionModel.CustomChatCompletionModel("gpt-4o-mini") works for me until the next release.

@nemoo maybe you could create a PR which would update the constants that we have? Maybe we should amend the docs as well to cover this :)

@adamw sure, I will provide a PR

PR for the new model and hint in docs: https://github.com/softwaremill/sttp-openai/pull/189
I was not able to test it though, because I cannot get the sbt build to run under Windows unfortunately.

merged and available as of release 0.2.1


[Epic] - Refactor Miranum Platform

[ ] Description created
[ ] Reviewed by peer:
[ ] Prioritised

Description
We want to refactor the miranum-connect and miranum platform repository.
Things to care about:

use miranum connect when interacting with the engine

there is no direct camunda dependency usage in the engine or task service (engine-neutral)
create adapter modules for engine/technologie dependencies

Sub-Tasks

### Tasks
- [ ] https://github.com/Miragon/miranum/issues/297
- [x] Remove pagination from process
- [ ] https://github.com/Miragon/miranum/issues/296
- [ ] https://github.com/Miragon/miranum/issues/289
- [ ] https://github.com/Miragon/miranum/issues/265
- [ ] https://github.com/Miragon/miranum/issues/294
- [ ] create e2e testing module
- [ ] add example for domain service
- [ ] create example tasklist frontend
- [x] introduce seperate versions for connect and platform
- [x] merge the connect and platform repo
- [ ] add jsonforms with minimalistic ui to the domain service example
- [ ] Implement a usertask example using json forms and json schema
- [ ] https://github.com/Miragon/miranum/issues/253
- [ ] https://github.com/Miragon/miranum/issues/255
- [ ] https://github.com/Miragon/miranum/issues/260
- [ ] https://github.com/Miragon/miranum/issues/263
- [ ] https://github.com/Miragon/miranum/issues/254
- [ ] https://github.com/Miragon/miranum/issues/291
- [ ] https://github.com/Miragon/miranum/issues/370
- [ ] https://github.com/Miragon/miranum/issues/371
- [ ] https://github.com/Miragon/miranum/issues/369
- [ ] https://github.com/Miragon/miranum/issues/368
- [ ] https://github.com/Miragon/miranum/issues/367

Stakeholder

Acceptance

@dominikhorn93 @DaAnda97 FYI I added the issues we have discussed to the epic


Added domain mojasiodemka.pl

Fixed PR against #13178.
School's homepage - https://mojasiodemka.pl/.

@devqore Thank you for the request.
Please provide us with a proof, which shows that the school recognizes the domain mojasiodemka.pl as an official email domain for the students.
You can provide us with any of the following:

A copy of instruction (a hard-copy or electronic one) given to you by the school that tells you to use an email address in this email domain
An URL of a page at the official school website that says that students use this email domain
A reference to a recognized journal where an article was published by someone from the school, with explicit affiliation to the school, and e-mail address from the email domain
A WHOIS data that link the email domain to the school somehow
A copy of official letter from the school representative saying that the school provides e-mail addresses in this domain to the students
Anything else that can prove this fact in similar way, i.e. can be verified independently.

Thanks, @philipto for your interest. There is an article on the school's webpage https://sp7poz.nazwa.pl/nowa/2020/03/29/nauczanie-zdalne-w-siodemce-komunikat/ (article only in polish language) where is the sentence:

Uczniowie otrzymali konta dostępowe w domenie mojasiodemka.pl

This means something like "Students got accounts in the domain mojasiodemka.pl".
Also in the tab Kontakt there is an email to web page administrator in the same domain<EMAIL_ADDRESS>To ensure that page sp7poz.nazwa.pl is not a fake page might be checked at the BIP (Public Information Bulletin) page of a Poznań City Consul https://bip.poznan.pl/bip/szkola-podstawowa-nr-7-im-erazma-z-rotterdamu,1154/ where is information about the address (listed as www.sp7poz.pl) which belongs to the school.
 Pull request merged.


Add pallet-ddc-staking to the cere runtime

Can this be merged immediately or does it need to wait until we reach a specific substrate version?

It is better to close this as we will need to re-configure the cere runtime

needs to wait for https://github.com/Cerebellum-Network/blockchain-node/pull/159

@aie0 #159 is merged. Do we still need this PR?

@rakanalh, @aie0 guys, it is better to close this PR as its reason is to deliver the Staking Pallet to the Blockchain Testnet environment.
We need to update the Blockchain Testnet not only with the Staking Pallet, but also with Nodes, Clusters, Customers, and Payouts Pallets in order to launch the production. It will be easier to add all these pallets for the cere runtime in 1 single PR.
A lot of things have changed since this PR was opened

Closed due to #189


Updated the path for actions from query param to extension in the request path

Associated with the issue: kms/kpcp#249
Changes included in the PR:
Updated the internal method from a query param to an extension in the request path.
Updated the unit tests accordingly.


WIP: Added new Lupio-RNG device

Change-Id: If9800d1e05b4c28299c2a7ade51a21762d52a40e

Does lupio/main really need to be rebased onto develop?

If no, then undo the rebase and just push the two new commits on top of the former lupio/main branch.
If yes, then I would suggest pushing the updated lupio/main branch directly without a PR, and then submitting a PR that only contains the two new commits.

Bottom line, this PR is difficult to review because it contains a rebase in addition to the actual commits.


Update dist build, commit and tag for v0.9.0 release

I've updated the dist build to include the rawModel additions from the last PR. I've also updated all outdated NPM dependencies to their latest stable versions on the same major line of releases. I ran all tests to ensure everything still passed: looks good 👍
Lastly, I created a commit and tag to mark the 0.9.0 release. We should be good to do a fresh npm publish now.

Merging and pushing to npm.


Set AMQP strategy to modified-failed

This strategy keeps accepting new messages even if one failed, therefore without closing the connections at first failure.

Fixes Issue
Fixes https://github.com/Hyperfoil/Horreum/issues/2103
Changes proposed
The default messaging fail strategy is fail which stops the application from receiving messages at first failure, as stated here https://quarkus.io/guides/amqp-reference#failure-management

[x] Change the strategy to modified-failed which put the failed message in DLQ but keeps processing all the others without disconnecting the connections

Check List (Check all the applicable boxes)

[x] My code follows the code style of this project.
[ ] My change requires changes to the documentation.
[ ] I have updated the documentation accordingly.
[ ] All new and existing tests passed.

I couldn't find a proper way to add a unit test, any guidance is really appreciated.
On the other hand I did a manual test by forcing a message processing to fail, here the result:
2024-10-22 15:46:36,229 ERROR [io.sma.rea.mes.provider] (horreum.dataset.pool-7) SRMSG00200: The method io.hyperfoil.tools.horreum.svc.ServiceMediator#processDatasetEvents has thrown an exception

Exception in ServiceMediator.java:169
	   167      @WithRoles(extras = Roles.HORREUM_SYSTEM)
	   168      public void processDatasetEvents(Dataset.EventNew newEvent) {
	-> 169          throw new RuntimeException("Forced!!");
	   170          // datasetService.onNewDatasetNoLock(newEvent);
	   171          // validateDataset(newEvent.datasetId);

Exception in RolesInterceptor.java:75
	   73          Throwable t1 = null;
	   74          try {
	-> 75              return ctx.proceed();
	   76          } catch (Throwable t) {
	   77              t1 = t;

: java.lang.RuntimeException: Forced!!
	at io.hyperfoil.tools.horreum.svc.ServiceMediator.processDatasetEvents(ServiceMediator.java:169)
	at io.hyperfoil.tools.horreum.svc.ServiceMediator_Subclass.processDatasetEvents$$superforward(Unknown Source)
	at io.hyperfoil.tools.horreum.svc.ServiceMediator_Subclass$$function$$6.apply(Unknown Source)
	at io.quarkus.arc.impl.AroundInvokeInvocationContext.proceed(AroundInvokeInvocationContext.java:73)
	at io.quarkus.arc.impl.AroundInvokeInvocationContext$NextAroundInvokeInvocationContext.proceed(AroundInvokeInvocationContext.java:97)
	at io.hyperfoil.tools.horreum.server.RolesInterceptor.intercept(RolesInterceptor.java:75)
	at io.hyperfoil.tools.horreum.server.RolesInterceptor_Bean.intercept(Unknown Source)
	at io.quarkus.arc.impl.InterceptorInvocation.invoke(InterceptorInvocation.java:42)
	at io.quarkus.arc.impl.AroundInvokeInvocationContext.proceed(AroundInvokeInvocationContext.java:70)
	at io.quarkus.arc.impl.AroundInvokeInvocationContext.proceed(AroundInvokeInvocationContext.java:62)
	at io.quarkus.arc.impl.ActivateRequestContextInterceptor.invoke(ActivateRequestContextInterceptor.java:129)
	at io.quarkus.arc.impl.ActivateRequestContextInterceptor.aroundInvoke(ActivateRequestContextInterceptor.java:33)
	at io.quarkus.arc.impl.ActivateRequestContextInterceptor_Bean.intercept(Unknown Source)
	at io.quarkus.arc.impl.InterceptorInvocation.invoke(InterceptorInvocation.java:42)
	at io.quarkus.arc.impl.AroundInvokeInvocationContext.perform(AroundInvokeInvocationContext.java:30)
	at io.quarkus.arc.impl.InvocationContexts.performAroundInvoke(InvocationContexts.java:27)
	at io.hyperfoil.tools.horreum.svc.ServiceMediator_Subclass.processDatasetEvents(Unknown Source)
	at io.hyperfoil.tools.horreum.svc.ServiceMediator_ClientProxy.processDatasetEvents(Unknown Source)
	at io.hyperfoil.tools.horreum.svc.ServiceMediator_SmallRyeMessagingInvoker_processDatasetEvents_ebe511ee548f91c634de3d182c814a6da94b30b1.invoke(Unknown Source)
	at io.smallrye.reactive.messaging.providers.AbstractMediator.lambda$invokeBlocking$15(AbstractMediator.java:191)
	at io.smallrye.context.impl.wrappers.SlowContextualSupplier.get(SlowContextualSupplier.java:21)
	at io.smallrye.mutiny.operators.uni.builders.UniCreateFromDeferredSupplier.subscribe(UniCreateFromDeferredSupplier.java:25)
	at io.smallrye.mutiny.operators.AbstractUni.subscribe(AbstractUni.java:36)
	at io.smallrye.mutiny.groups.UniSubscribe.withSubscriber(UniSubscribe.java:51)
	at io.smallrye.mutiny.groups.UniSubscribe.with(UniSubscribe.java:110)
	at io.smallrye.mutiny.groups.UniSubscribe.with(UniSubscribe.java:88)
	at io.vertx.mutiny.core.WorkerExecutor$1.handle(WorkerExecutor.java:105)
	at io.vertx.mutiny.core.WorkerExecutor$1.handle(WorkerExecutor.java:103)
	at io.vertx.core.impl.ContextImpl.lambda$executeBlocking$1(ContextImpl.java:191)
	at io.vertx.core.impl.ContextInternal.dispatch(ContextInternal.java:270)
	at io.vertx.core.impl.ContextImpl.lambda$internalExecuteBlocking$2(ContextImpl.java:210)
	at org.jboss.threads.ContextHandler$1.runWith(ContextHandler.java:18)
	at org.jboss.threads.EnhancedQueueExecutor$Task.doRunWith(EnhancedQueueExecutor.java:2516)
	at org.jboss.threads.EnhancedQueueExecutor$Task.run(EnhancedQueueExecutor.java:2495)
	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1521)
	at org.jboss.threads.DelegatingRunnable.run(DelegatingRunnable.java:11)
	at org.jboss.threads.ThreadLocalResettingRunnable.run(ThreadLocalResettingRunnable.java:11)
	at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
	at java.base/java.lang.Thread.run(Thread.java:840)

2024-10-22 15:46:36,230 WARN  [io.sma.rea.mes.amqp] (vert.x-eventloop-thread-4) SRMSG16226: A message sent to channel `dataset-event-in` has been nacked, ignoring the message and marking the AMQP message as modified with `delivery-failed`
2024-10-22 15:46:36,242 WARN  [io.sma.rea.mes.amqp] (vert.x-eventloop-thread-4) SRMSG16226: A message sent to channel `dataset-event-in` has been nacked, ignoring the message and marking the AMQP message as modified with `delivery-failed`
2024-10-22 15:46:36,242 WARN  [io.sma.rea.mes.amqp] (vert.x-eventloop-thread-4) SRMSG16226: A message sent to channel `dataset-event-in` has been nacked, ignoring the message and marking the AMQP message as modified with `delivery-failed`
2024-10-22 15:46:36,243 WARN  [io.sma.rea.mes.amqp] (vert.x-eventloop-thread-4) SRMSG16226: A message sent to channel `dataset-event-in` has been nacked, ignoring the message and marking the AMQP message as modified with `delivery-failed`
2024-10-22 15:46:36,243 WARN  [io.sma.rea.mes.amqp] (vert.x-eventloop-thread-4) SRMSG16226: A message sent to channel `dataset-event-in` has been nacked, ignoring the message and marking the AMQP message as modified with `delivery-failed`
2024-10-22 15:46:36,243 WARN  [io.sma.rea.mes.amqp] (vert.x-eventloop-thread-4) SRMSG16226: A message sent to channel `dataset-event-in` has been nacked, ignoring the message and marking the AMQP message as modified with `delivery-failed`
2024-10-22 15:46:36,243 WARN  [io.sma.rea.mes.amqp] (vert.x-eventloop-thread-4) SRMSG16226: A message sent to channel `dataset-event-in` has been nacked, ignoring the message and marking the AMQP message as modified with `delivery-failed`

and all the messages have been processed and since all of them failed, they have been moved to DLQ

Actually we can also use reject as fail strategy, not sure which one is better for our use case 🤔

if I understand the documentation, reject transitions the message into a terminal state and prevents it from being processed in the future.

I agree with you, that was my understanding as well


Rapid target position changes cause some AI to miss update trigger.

When updating path many times some AI will continue to follow their existing path rather than update. The issue is always resolved in the next update of the target but this could result in odd behavior.

The issue only reproduces when there are 2 or more AI in the scene


Usage message on error seems odd

This has surfaced in #851, and I'm opening another issue to start a more specific discussion.
Consider this output:
>  helm install alpine
/Users/ilya/Code/.gopath/src/k8s.io/helm/docs/examples/alpine/.helmignore
Error: release braided-cow failed: pods "silly-cow-alpine" already exists
Usage:
  helm install [CHART] [flags]

Flags:
      --dry-run         simulate an install
  -n, --name string     the release name. If unspecified, it will autogenerate one for you.
  -f, --values string   path to a values YAML file

Global Flags:
      --debug              enable verbose output
      --home string        location of your Helm config. Overrides $HELM_HOME. (default "/Users/mattbutcher/Code/helm_home")
      --host string        address of tiller. Overrides $HELM_HOST.
      --namespace string   kubernetes namespace

It seems as if there is a problem with flags I've passed in, and it's not at all. Clearly we parsed and accepted all the flags by the time we got to the error.

For comparison, kubectl does this:
⇒  k get po idontexist
Error from server: pods "idontexist" not found

Printing out the entire help message has also led us to backpedal on other cases where we might have otherwise returned a non-zero exit code. (like search and get)

+1 this has always bothered me

Excellent!
On Tue, 28 Jun 2016, 19:47 Adam Reese<EMAIL_ADDRESS>wrote:

Closed #864 https://github.com/kubernetes/helm/issues/864 via #900
https://github.com/kubernetes/helm/pull/900.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/kubernetes/helm/issues/864#event-706771039, or mute
the thread
https://github.com/notifications/unsubscribe/AAPWSxr4V_M426W2yk-YyWgCAYJvz_zWks5qQWwlgaJpZM4I7SHh
.


Treat first crictl stats argument as filter ID

The first argument supplied to crictl stats can be taken as the filter
ID of the container, whereas --id gets precedence.

/lgtm

/lgtm

Rebased on top of the latest master branch to get the travis changes in.


Create an Issue from browsing through code

what i do:

i read the current code at Github and like to comment on some thing

what i see:

i can not comment (like in PullRequests or Commits with the blue plus sign)
i have to go to blame and find the last commit to this code and there i can comment

what i expect:

select a line (or range), get an blue plus sign.
when i click on plus sign i get an textfield for an comment
when i save the comment then a new issue should be created
the issue should include a link with a range (#L12-L14) and my comment

Example URL:
example how issue could be expected:
https://github.com/bvlktech/GatsbyFinds/issues/1
current work around (comment on commit):
https://github.com/bvlktech/GatsbyFinds/commit/6e87f1ad2af2b8ba2e0ddd17f983ee50856a59e5#diff-b9e136416b90437fa1dac910280b45fcR17

It's there natively

great !

mhh - just not work with "choose a template"

Yeah I reported that on May 3rd, they confirmed the bug but not fixed yet


Make it clear how to find the clientid and what it refers to

The instruction to run the Grant-AdfsApplicationPermission Powershell cmdlet does not explain how to find the id of the adfsclient. This should be included.
Also, since this is in the IFD section, does the command need to be run for every organization identifier (the deployment might have several organizations) or one of the auth or dev URLs?

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 7c8a915c-061a-b396-4495-1c073f84bcd3
Version Independent ID: f2ad6c9e-911c-6ff2-d19b-6d009e2dca99
Content: Configure the AD FS server for claims-based authentication
Content Source: ce/customerengagement/on-premises/deploy/configure-the-ad-fs-server-for-claims-based-authentication.md
Product: crm-2016
GitHub Login: @Mattp123
Microsoft Alias: matp

@feridunkadir Thanks for your feedback. We are closing this issue because we are unable to find relevant information for this issue. If you're still experiencing the issue described here, please reopen or create a new issue.


PR bot should generate diffs for generic Smithy clients

I believe this is done now, or at least I see diffs for generic clients now.


Pod health probes are not passing through the proxy

If a pod declares a pod health probe using HTTP GET method, then the proxy drops the health check. The problem is that the pod health probe can use any port on the pod, not necessarily defined by the associated service or by the pod container ports. The ideal solution would be to simply not trap health probes, but it is not clear how to identify health check packets.
The probes are defined per pod, meaning the services model does not have to be extended with the information about each service instance health ports - a service instance will never need to know about another instance's health port.
Therefore, I suggest we simply add a flag to the proxy agent to open specific ports and populate this flag in kube-inject script. For example, if the pod defines livenessProbe on port 3333, we will need to pass "3333" to the proxy, and the proxy can open this port if it is not already opened.

Thoughts? @ayj @andraxylia @rshriram

It seems we cannot identify the health probes easily. These are sent by node agent (kubelet) here: https://github.com/kubernetes/kubernetes/blob/master/pkg/probe/http/http.go#L61

Looks like we would need to pass  path as well as `port and do so for both liveliness and readiness probes, right?
I'm assuming "open this port" means updating envoy configuration to pass through HTTP health checks? If so, how do we reconcile path/port combinations with existing routes from RDS that are coming from remote discovery service?

We don't need path in the probe. In fact, there are TCP liveness checks as well. If there is already a service port used for health checking, then it should work as-is since the HTTP route adds POD_IP:POD_PORT as one of the possible hosts. Am I missing something?

I was thinking health checks needed to be HTTP (not HTTPS), but maybe I'm confusing that with L4 health checks for GCLB. But assuming HTTPS, how does that work with mTLS and Istio CA? Also, do we need to exclude health checks from things like quota/access checks?

Good point. I'll file an issue regarding auth + health probes problem.
Without auth, if the port is not used by the service, then we will use tcp_proxy on that pod_ip, port combination. If the port is already used, then we do not do anything, and trust that the port is handled correctly (e.g. if the port is declared to be HTTP port, then the liveness probe will not attempt to use non-HTTP probes).
The app has to handle the path in the probe correctly, we just need to let the packets through the proxy.
If the port is used for quota, then it should not matter who initiates the connection. That means the kubelet probes will count towards the quota, and that needs to be documented (e.g. do not use service ports for health checks guideline). @mandarjog

#479

do they neec to pass thru proxy? if pod has 3 containers, can't I define multiple probes (one per component), such that a pod gets registered only when all components (app, proxy, etc) come up ?


feat(FN-2051): allow numeric months in filename

Introduction :pencil2:
We want to allow uploaded utilisation reports to use a numeric representation for the report period month that the report is being submitted for.
Resolution :heavy_check_mark:
Changes the validator regex pattern to also search for the numeric representations.

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

Comparison is base (91637c1) 17.31% compared to head (c3b0a26) 0.48%.
 Consider uploading reports for the commit b33436d to get more accurate results

Additional details and impacted files
@@                 Coverage Diff                 @@
##           main-stbr-tfm-5   #2588       +/-   ##
===================================================
- Coverage            17.31%   0.48%   -16.84%
===================================================
  Files                 1120     104     -1016
  Lines                25591    1452    -24139
  Branches              4101     360     -3741
===================================================
- Hits                  4432       7     -4425
+ Misses               18423    1231    -17192
+ Partials              2736     214     -2522

Flag
Coverage Δ

api-test
0.48% <ø> (ø)

ui-test
?

unit-test
?

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

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


Format hover_data. Is this possible?

Hello,
I couldn't seem to find this in the docs. Is it possible to format hover_data as a string for display purposes only? My use case comes from displaying dollar amounts, but the original data is float.64 so hovering over a data point does not look appealing.
My current fix requires an extra column to be added to a data frame, then that column is passed to the hover_data argument:
df['hover_text'] = df['revenue'].apply(lambda x :'${0:,.0f}'.format(x))

However, this is not a great solution. My knowledge is pretty limited with plotly so there may be better solutions I haven't been able to find currently. Perhaps with hovertemplate?
Best,
Indiana

Your solution is probably what I would go with, to be honest. The way hover_data is injected into the figure is via hovertemplate, and you can override hovertemplate with .update_trace(hovertemplate="whatever") if you like, but it's likely to be a bit finicky.

Okay thank you for your quick response! Are there plans to expose this when creating a plot?
Eg.
px.bar(
   df,
   x="Revenue",
   y="Year",
   hover_data={
      "Revenue": "${0:,.0f}",
      ...
   })

Sidenote: Since discovering this plotting library, it's hard to go back to anything else!

I'm glad you like it! The API you suggest above is pretty interesting, I'll think about it. The formatting strings would have to be D3.js-compatible rather than Python-compatible as the formatting happens in Javascript but other than that this seems like a nice extension.

Will be completed in https://github.com/plotly/plotly.py/issues/1774


Feature/dummy gameloop

@lreissmueller I would recommend merging main into your branch to get the most recent updates for integration this week. Katherine can probably help as needed there


Joystick recognized but unable to use

Guys, sorry for just getting to this topic, but I'm having this little problem when running the project locally. The joystick is recognized as shown in the image, but it's not available for use. How can I test it in the application?
Windows 11 with Firefox and Chrome

@ThiagoProg37,
that was a bug, now it's fixed. Get the latest version from the master branch (or try cloudretro.io) and clear the cache of the app in your browser (it caches frontend for 3 days).
Also, those weird joystick button mappings can only be changed manually in the joystic.js file.

@sergystepanov
Thanks for responding. It worked perfectly!
Indeed, the buttons have a random configuration but, I must say, just by being available, it deserves all the respect.
Congratulations on a job well done.
I have a random question, it's not related to the topic but if you could give some direction I would appreciate it.
I would like, when two players connect to play, to first know if it would be possible to record the game between them.
If so, could this recording be generated in the format of the emulator itself (snes9x)?

@sergystepanov
cool, it worked :) and Sorry for using this space for random questions, I promise they will be the last.
I loaded the application using the "make dev.run" command and started it normally in the browser, but I noticed that it is only possible to create one instance at a time, that is, if I am already running the application and open another browser, it sends me the message that the slots are busy and the second instance does not load the game list. Is there any setting that disables this behavior?
The second observation is: when I share a room, the guest player always connects using controller 1 and the default should be to connect with controller 2. Is this a bug or is it on purpose? Thank you very much for your attention and keep up the great work

I loaded the application using the "make dev.run" command and started it normally in the browser, but I noticed that it is only possible to create one instance at a time, that is, if I am already running the application and open another browser, it sends me the message that the slots are busy and the second instance does not load the game list. Is there any setting that disables this behavior?

By design, only one person can connect to a free worker at a time, while any number of people can connect to a worker running a shared game. You can simply spin up multiple worker instances if needed. On CloudRetro.io, there are currently four workers, which you can check by clicking the 'W' symbol under the options button in the app's interface.

The second observation is: when I share a room, the guest player always connects using controller 1 and the default should be to connect with controller 2. Is this a bug or is it on purpose? Thank you very much for your attention and keep up the great work

This is not a bug. It's a design decision by the author, or rather something unimportant that might be 'fixed' later.


Graceful shutdown

Currently the shell scripts don't handle graceful shutdown so the programs are forcefully exited.
I recommend adding exec and interrupt handlers.

closes #61


[Distributed] Update initializer semantics

Some updates following up the review period of the distributed actor runtime proposal

This is work in progress, yeah I'll update the body.


Pass timeout parameter

Hi Saša,
Thank you for this great library! I'm using it in multiple projects already.
What's the best way to pass a user-defined timeout parameter if the call is not made from another ExActor (where I could use timeout_after(:timer.seconds(10))), but from somewhere else?
Currently I have to fall back to the original GenServer implementation of Elixir and cannot use the ExActor API when making a call with a custom timeout. Example:
{:ok, pid} = CSVImporter.start_link
GenServer.call(pid, {:import, path}, :infinity)

What I would prefer is something like this:
{:ok, pid} = CSVImporter.start_link
CSVImporter.import(pid, path, :infinity)

The last parameter is currently not handled as a separate timeout parameter, but translated to CSVImporter.import(pid, path, :infinity) which is not what I want. Is there a way to make timeout calls using the ExActor API?
Thanks,
Florian

Hi Florian, and thank you for the feedback. It's nice to learn that the library is being used :-)
Yes, this is indeed a shortcoming currently. I'm also facing it in my own library, as can be seen for example here.
I have in fact developed a fix for this a few months ago, but due to some sidetrack (mostly the work on the book) I didn't publish it yet. I just pushed those commits to the 2.1.0 branch. You can see the doc here. Please let me know if this would suit your needs.
I'd still like to sleep on this. The timeout fix seems fine to me, but in the process I also discovered another bug, which causes a slight change in the interface. See breaking changes section in the changelog.
I'm mostly leaning towards publishing this, but if you have some comment, now is the good time to share it :-)

The parameterizable timeout fix is exactly what I was looking for and would certainly solve my “problem” ;-)
However, I also noticed the breaking changes that 2.1.0 brings and I would argue that it makes using ExActor more difficult. Pattern-matching on the state of an actor is quite a powerful language feature and I would prefer if ExActor created the headless interface function specification automagically in the background.

Thank you for the comment. I have cherry picked only the timeout improvement, and pushed 2.1.0 (also available on hex). Let me know if this works for you.
Pattern matching on the state currently works by chance, but as the consequence, documentation source links for client libraries are not properly generated. I'll leave the doc bug as it is for the moment, and try to see how can I resolve it without breaking state pattern matching.
We're hitting some limitations here, since defcall should define two functions, and we need to decide whether an interface function needs to be generated based on the pattern. I need to think about this problem some more, and see what can be done about it.


Update handler.php

Hi @rnicholus,
I created a pull request for the sizeLimit fix, hope it helps.

Hey, thanks for this. I'd also think a check when combining the chunks is needed as well, since the qqtotalfilesize param comes from the client and therefore can be spoofed. To account for this, the actual size of the chunks on the server should be calculated and compared with the mandated file size limit. This check could be added to combineChunks.


[Improved][dist][connector-v2] Add fake and console connectors to binary package for demo

Purpose of this pull request

Check list

[ ] Code changed are covered with tests, or it does not need tests for reason:
[ ] If any new Jar binary package adding in your PR, please add License Notice according
New License Guide
[ ] If necessary, please update the documentation to describe the new feature. https://github.com/apache/incubator-seatunnel/tree/dev/docs

update https://github.com/apache/incubator-seatunnel/blob/dev/config/plugin_config

fixed

We'd better update the startup documentation for dev-brach binary packages.
This can be reflected in quick start.

We'd better update the startup documentation for dev-brach binary packages. This can be reflected in quick start.

The documentation is being changed on a separate branch, or I can merge into one commit


Use {var} format for parameters in docs instead of $var

In the new scanner docs I used $plugin while in other parts of the docs we had {...} aready. Switch to use the already established format for consistency. Though, I personally, think $plugin reads a tiny bit better than {plugin}.

Thanks to @big-r81 for pointing out the inconsistency!


Replace test/support/github_formatter with rspec-github gem

[x] Have you followed the guidelines in our Contributing document?
[x] Have you checked to ensure there aren't other open Pull Requests for the same change?
[x] Have you added an explanation of what your changes do and why you'd like us to include them?
[ ] Have you written new tests for your changes? Here's an example.

[x] Have you successfully run brew typecheck with your changes locally?
[x] Have you successfully run brew tests with your changes locally?
[x] Have you successfully run brew man locally and committed any changes?

This was a TODO in test/support/github_formatter.rb and the PR it referenced had been merged.
Will mark as not-draft when CI passes - Xcode is updating on my local machine and taking forever.

Review period will end on 2020-12-23 at 18:14:40 UTC.

Review period ended.


How to access nested sequences from config file?

Data present in config.yaml is as below:
objects:
  - eatables:
    - pineapple
    - coconut
  - things:
    - umbrella
    - raincoat

I tried using $log($data("config").objects[i][j]) in for loop of script action, it's printing 'null'.
Is there any way to access this nested sequence? where [i = eatables,things, j = pineapple,coconut,umbrella,raincoat]

If you really need that $data("config").objects[i][j] access pattern, you must organize your data file like this instead:
objects:
  - [pineapple, coconut]
  - [umbrella, raincoat]

Structuring your data like this can be a bit confusing, though. I'm sure there's a better way to solve the problem you're trying to solve. If you need assistance, please provide more information about your specific use case.


Unable to search the word if there are special characters in it

Hi, I have the following array of objects: I want to search the word Powai (case insensitive). But when I search the word I am not getting the results with the word (Powai) with parenthesis. I have attached the code below the JSON. Please help.
[
{
      "id": 31,
      "name": "Powai",
    },
  {
      "id": 3474,
      "name": "Powai Chowk Mulund",
   },
  {
      "id": 3475,
      "name": "Powai Vihar Complex",
    },
  {
      "id": 2428,
      "name": "Forest Club Powai",
    },
  {
      "id": 2635,
      "name": "Hiranandani Powai Bus Station",
    },
  {
      "id": 3561,
      "name": "Ramda Hotel (Powai)",
    },
  {
      "id": 2244,
      "name": "Crisil House (Powai)",
    },
  {
     "id": 2662,
      "name": "I.R.B.Complex(Powai)",
    },
  {
      "id": 2890,
      "name": "Kingston Sez (Powai)",
  },
  {
      "id": 3972,
      "name": "Tatapower Centre (Powai)",
 },
  {
      "id": 2362,
      "name": "Dr.Ambedkar Udyan (Powai)",
  },
  {
      "id": 2389,
      "name": "E.S.I.S.Local Office Powai",
 },
]

match-sorter version:  ^4.1.0
node version: 12.14.0
npm (or yarn) version: 6.14.4

Relevant code or config
matchSorter(options, inputValue, {
	keys: ["name"],
	threshold: rankings.WORD_STARTS_WITH,
	keepDiacritics: true,
});

This is because the threshold is set to rankings.WORD_STARTS_WITH but the word for (Powai) starts with ( not Powai. You'll probably want to change it to rankings.CONTAINS.
Alternatively, you could use the function form (see "Property Callbacks" in the README.md file) and return the name with the parentheses removed.
Good luck!


Introduce StrNode extension

This pull-request will introduce StrNode extension, and refactor heredoc mixin.
First, this pr will add StrNode extension for str, dstr and xstr node types.
It only contains heredoc? method now, and I will use the method in another change.
Second, this change refactors Heredoc mixin. The mixin was defined at top level, but it should be defined under the RuboCop namespace.

Before submitting the PR make sure the following are checked:

[x] Wrote good commit messages.
[ ] Commit message starts with [Fix #issue-number] (if the related issue exists).
[x] Used the same coding conventions as the rest of the project.
[x] Feature branch is up-to-date with master (if not - rebase it).
[x] Squashed related commits together.
[x] Added tests.
[ ] Added an entry to the Changelog if the new code introduces user-observable changes. See changelog entry format.
[x] All tests(rake spec) are passing.
[x] The new code doesn't generate RuboCop offenses that are checked by rake internal_investigation.
[x] The PR relates to only one subject with a clear title
and description in grammatically correct, complete sentences.
[x] Updated cop documentation with rake generate_cops_documentation (required only when you've added a new cop or changed the configuration/documentation of an existing cop).

👍

Thanks for starting this out, @pocke! It's been on my list for way too long. 🙂


Potential incorrect handling of sub-delim characters

According to RFC 3986 (https://tools.ietf.org/html/rfc3986#section-3.3), there are certain special characters that are not needed to be encoded. Therefore, these characters should not be decoded either in the URL path section. These characters include "!" / "$" / "&" / "'" / "(" / ")"
/ "*" / "+" / "," / ";" / "=" / ":" / "@"
UrlEncoder.encode("! $ & ' ( ) * + , ; =")
// Yields: %21%20%24%20%26%20%27%20%28%20%29%20%2A%20%2B%20%2C%20%3B%20%3D

The encoding requirements are different for different parts of the URL, this library focuses on the query parameters which those characters you mention should be encoded as I understand it in RFC-3986. That being said, maybe we need to include support for other URL components also.


Not all Messages are Unsent - Skips All

How impactful is the issue

(Write your answer here.)
on the first run it unsent some messages, skipped few and unsent some...till it said done.
when i try to rerun it, it goes through the other person messages, option menu appear and skip( cause ofc it can't unsend the other person's messages)
when my messages appear, it skips them and the whole chat and says successfully unsent 1 message when it is done

doesn't unsend all my messages
How to reproduce the bug

(Write your answer here.)
Logs

www.instagram.com-1733310985722.log
Screenshots

(Write your answer here.)
Desktop (please complete the following information):

(Write your answer here.)
Additional context

(Write your answer here.)

tried it on chrome, worse
www.instagram.com-1733311963758.log

Hello,
Could you give me the following details:

The version of idmu and your browser
The steps to reproduce the issue

what do you mean by idmu? if it is the monkey it is Violentmonkey 2.29.0,
Brave Version 1.73.91 Chromium: 131.0.6778.85 (Official Build) (64-bit)
how to reproduce the issue:
login to instagram web> go to messenger> chat of the person> Monkey extension gives a hint (purple 1) > i click it > chat scrolls automatically>chat go from most recent message from the other person> every message is selected> weird timers appear on every message> too much messages from the other person> it crashes ig> chat scroll automatically without changing> and close after certain time (assuming timeout)

@thoughtsunificator i got this issue too, latest version at 0.5.20
basically, when i run it on a chat, it goes up the messages and deletes some until they stop unsending, but IDMU still goes up the message chain, just that they don't unsend.
i'm not sure why, but maybe because instagram doesn't allow users to unsend so many and IDMU's requests get blocked in the background.
at the same time, idk if related but at the top when it scrolled all the way to the top and says its done (even only the lower messages were deleted) it says deleted 1 msg

also that fact that the program also considers the messages sent by the other person is extremely time inefficient especially if part of your messages are already deleted but theirs are still there
i tried editing it by changing
const elements = [...root.querySelectorAll("div[role=row]:not([data-idmu-ignore])")];
to
const elements = [...root.querySelectorAll('div[role="row"] div[aria-label="You sent"]')].map(el => el.closest('div[role="row"]'));
then
const elements = [...root.querySelectorAll('div[aria-label="You sent"]')].map(el => el.closest('div[role="row"]'));
but there were glitches, i'm not sure if they were because of my changes or something else like a time out because the program scrolled up for like 30 seconds (the remaining messages were high up) and stopped running before it could get to new messages and said deleted 0

also that fact that the program also considers the messages sent by the other person is extremely time inefficient especially if part of your messages are already deleted but theirs are still there
i tried editing it by changing const elements = [...root.querySelectorAll("div[role=row]:not([data-idmu-ignore])")]; to const elements = [...root.querySelectorAll('div[role="row"] div[aria-label="You sent"]')].map(el => el.closest('div[role="row"]')); then const elements = [...root.querySelectorAll('div[aria-label="You sent"]')].map(el => el.closest('div[role="row"]'));
but there were glitches, i'm not sure if they were because of my changes or something else like a time out because the program scrolled up for like 30 seconds (the remaining messages were high up) and stopped running before it could get to new messages and said deleted 0

Does it occur with all threads? Not all threads are the same, some have images, emoticons etc… Sometimes there are multiple consecutive messages. I need to have an example thread in order to reproduce.

trying to analyze the network requests but i think actions are sent in real time streams

This is how it goes for me :

Unless I have an example thread where IDMU fails to unsend, it will be quite hard for me to do anything.

because the thread you have is short in comparison to long chats we are reporting , i tried to record the chat i am having issue with, but i failed to blur the messages contents without blurring the menu chat. my take is, the script is going on the other person's messages for so long that it breaks after 6-10 minutes without unsending a message from my end. my question is why it has to open menu for the other person's message  without initially skipping it if it isn't my message?

because the thread you have is short in comparison to long chats we are reporting , i tried to record the chat i am having issue with, but i failed to blur the messages contents without blurring the menu chat. my take is, the script is going on the other person's messages for so long that it breaks after 6-10 minutes without unsending a message from my end. my question is why it has to open menu for the other person's message without initially skipping it if it isn't my message?

What version of IDMU and browser are you using? And what's your OS?


Segmentation faults — tracking issue

I'm creating this issue to track segmentation fault issues that we have run into while working on pydantic or pydantic-core.
Obviously it is a major problem if users are at risk of hitting segmentation faults thanks to using pydantic. So far it seems that when we've hit segmentation faults during development, other potential culprits have been at least tangentially involved, but we should keep an eye out for patterns in case there is anything we can do to minimize the potential for this.
Some cases where we've had segmentation faults:

pydantic: MacOS/PyPy 3.9 — note that the segmentation fault is hit very early, potentially before any pydantic_core code has been executed?
pydantic-core: CPython3.7 with nightly Rust, and again -- note this appears to have happened after the tests finished running but not before the final testing report was generated
Running code in the pycharm debugger — I have frequently had issues where the mere presence of debug points in certain locations in pydantic-internal code has caused a segfault to occur until I moved the debug point/points. (Usually I can get to the line I wanted to break by moving the debug point appropriately and manually stepping, but not always.)

Please add comments on this issue if you run into any new sources of segmentation fault, or discover new patterns in their occurrence, so we can investigate and resolve any issues.

https://github.com/PyO3/pyo3/discussions/2781 is also relevant.

getting this lots more on https://github.com/pydantic/pydantic-core/pull/465, seems to be happening every time.

Okay, I've tried to investigate this, but I'm not finding much.
Steps I took, added
      - uses: mxschmitt/action-tmate@v3
        if: failure()

To ci.yml, then ssh'd into the ci machine and ran the following:
> ls /var/crash
... one file showing "coverage" showd
> pytest
... segfaults again - the problem is not with the python coverage package, but instead with rusts "-C instrument-coverage"
> ls /var/crash
... new file "_opt_hostedtoolcache_Python_3.11.2_x64_bin_pytest.1001.crash" shows
> apport-unpack /var/crash/_opt_hostedtoolcache_Python_3.11.2_x64_bin_pytest.1001.crash  crash-files
> cd crash-files
> ls -lh
total 102M
-rw-r--r-- 1 runner docker    5 Mar 24 11:39 Architecture
-rw-r--r-- 1 runner docker 102M Mar 24 11:39 CoreDump
-rw-r--r-- 1 runner docker   24 Mar 24 11:39 Date
-rw-r--r-- 1 runner docker   12 Mar 24 11:39 DistroRelease
-rw-r--r-- 1 runner docker   49 Mar 24 11:39 ExecutablePath
-rw-r--r-- 1 runner docker   10 Mar 24 11:39 ExecutableTimestamp
-rw-r--r-- 1 runner docker   53 Mar 24 11:39 InterpreterPath
-rw-r--r-- 1 runner docker    5 Mar 24 11:39 ProblemType
-rw-r--r-- 1 runner docker   99 Mar 24 11:39 ProcCmdline
-rw-r--r-- 1 runner docker   45 Mar 24 11:39 ProcCwd
-rw-r--r-- 1 runner docker  113 Mar 24 11:39 ProcEnviron
-rw-r--r-- 1 runner docker  84K Mar 24 11:39 ProcMaps
-rw-r--r-- 1 runner docker 1.4K Mar 24 11:39 ProcStatus
-rw-r--r-- 1 runner docker    2 Mar 24 11:39 Signal
-rw-r--r-- 1 runner docker   30 Mar 24 11:39 Uname
-rw-r--r-- 1 runner docker   19 Mar 24 11:39 UserGroups
> sudo apt install gdb
> gdb CoreDump
...
> bt
shows something with "??" in it

To try and get symbol information, I changed RUSTFLAGS: '-C instrument-coverage' to RUSTFLAGS: '-C instrument-coverage -g' in ci.yml and ran again.
Again segfault, followed the above, but still no useful information from gdb, here's the output:
> gdb CoreDump
GNU gdb (Ubuntu 12.1-0ubuntu1~22.04) 12.1
Copyright (C) 2022 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Type "show copying" and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<https://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
    <http://www.gnu.org/software/gdb/documentation/>.

For help, type "help".
Type "apropos word" to search for commands related to "word"...
"/home/runner/work/pydantic-core/pydantic-core/crash-files/CoreDump": not in executable format: file format not recognized
(gdb) bt
No stack.
(gdb) list
No symbol table is loaded.  Use the "file" command.
(gdb) file
No executable file now.
No symbol file now.

I really don't know where to go from here - on #465 the coverage run seg faults every time, runs without RUSTFLAGS: '-C instrument-coverage' are always passing. Google is not finding other people with issues like this with instrument-coverage.
@messense @davidhewitt would love your help on this one. Any ideas?

Got a Python traceback after it crashes
Current thread 0x00007f0961223000 (most recent call first):
  File "/root/code/pydantic-core/tests/validators/test_datetime.py", line 185 in test_tz_comparison
  File "/root/code/pydantic-core/.venv/lib/python3.11/site-packages/_pytest/python.py", line 195 in pytest_pyfunc_call
  File "/root/code/pydantic-core/.venv/lib/python3.11/site-packages/pluggy/_callers.py", line 39 in _multicall
  File "/root/code/pydantic-core/.venv/lib/python3.11/site-packages/pluggy/_manager.py", line 80 in _hookexec
  File "/root/code/pydantic-core/.venv/lib/python3.11/site-packages/pluggy/_hooks.py", line 265 in __call__
  File "/root/code/pydantic-core/.venv/lib/python3.11/site-packages/_pytest/python.py", line 1789 in runtest
  File "/root/code/pydantic-core/.venv/lib/python3.11/site-packages/_pytest/runner.py", line 167 in pytest_runtest_call
  File "/root/code/pydantic-core/.venv/lib/python3.11/site-packages/pluggy/_callers.py", line 39 in _multicall
  File "/root/code/pydantic-core/.venv/lib/python3.11/site-packages/pluggy/_manager.py", line 80 in _hookexec
  File "/root/code/pydantic-core/.venv/lib/python3.11/site-packages/pluggy/_hooks.py", line 265 in __call__
  File "/root/code/pydantic-core/.venv/lib/python3.11/site-packages/_pytest/runner.py", line 260 in <lambda>
  File "/root/code/pydantic-core/.venv/lib/python3.11/site-packages/_pytest/runner.py", line 339 in from_call
  File "/root/code/pydantic-core/.venv/lib/python3.11/site-packages/_pytest/runner.py", line 259 in call_runtest_hook
  File "/root/code/pydantic-core/.venv/lib/python3.11/site-packages/_pytest/runner.py", line 220 in call_and_report
  File "/root/code/pydantic-core/.venv/lib/python3.11/site-packages/_pytest/runner.py", line 131 in runtestprotocol
  File "/root/code/pydantic-core/.venv/lib/python3.11/site-packages/_pytest/runner.py", line 112 in pytest_runtest_protocol
  File "/root/code/pydantic-core/.venv/lib/python3.11/site-packages/pluggy/_callers.py", line 39 in _multicall
  File "/root/code/pydantic-core/.venv/lib/python3.11/site-packages/pluggy/_manager.py", line 80 in _hookexec
  File "/root/code/pydantic-core/.venv/lib/python3.11/site-packages/pluggy/_hooks.py", line 265 in __call__
  File "/root/code/pydantic-core/.venv/lib/python3.11/site-packages/_pytest/main.py", line 349 in pytest_runtestloop
  File "/root/code/pydantic-core/.venv/lib/python3.11/site-packages/pluggy/_callers.py", line 39 in _multicall
  File "/root/code/pydantic-core/.venv/lib/python3.11/site-packages/pluggy/_manager.py", line 80 in _hookexec
  File "/root/code/pydantic-core/.venv/lib/python3.11/site-packages/pluggy/_hooks.py", line 265 in __call__
  File "/root/code/pydantic-core/.venv/lib/python3.11/site-packages/_pytest/main.py", line 324 in _main
  File "/root/code/pydantic-core/.venv/lib/python3.11/site-packages/_pytest/main.py", line 270 in wrap_session
  File "/root/code/pydantic-core/.venv/lib/python3.11/site-packages/_pytest/main.py", line 317 in pytest_cmdline_main
  File "/root/code/pydantic-core/.venv/lib/python3.11/site-packages/pluggy/_callers.py", line 39 in _multicall
  File "/root/code/pydantic-core/.venv/lib/python3.11/site-packages/pluggy/_manager.py", line 80 in _hookexec
  File "/root/code/pydantic-core/.venv/lib/python3.11/site-packages/pluggy/_hooks.py", line 265 in __call__
  File "/root/code/pydantic-core/.venv/lib/python3.11/site-packages/_pytest/config/__init__.py", line 167 in main
  File "/root/code/pydantic-core/.venv/lib/python3.11/site-packages/_pytest/config/__init__.py", line 190 in console_main
  File "/root/code/pydantic-core/.venv/lib/python3.11/site-packages/pytest/__main__.py", line 5 in <module>
  File "/root/code/pydantic-core/.venv/lib/python3.11/site-packages/coverage/execfile.py", line 211 in run
  File "/root/code/pydantic-core/.venv/lib/python3.11/site-packages/coverage/cmdline.py", line 859 in do_run
  File "/root/code/pydantic-core/.venv/lib/python3.11/site-packages/coverage/cmdline.py", line 682 in command_line
  File "/root/code/pydantic-core/.venv/lib/python3.11/site-packages/coverage/cmdline.py", line 972 in main
  File "/root/code/pydantic-core/.venv/lib/python3.11/site-packages/coverage/__main__.py", line 8 in <module>
  File "/usr/lib/python3.11/runpy.py", line 88 in _run_code
  File "/usr/lib/python3.11/runpy.py", line 198 in _run_module_as_main

Extension modules: black.const, black.mode, black.cache, blib2to3.pgen2.token, blib2to3.pgen2.grammar, blib2to3.pytree, black.strings, blib2to3.pgen2.tokenize, blib2to3.pgen2.parse, blib2to3.pgen2.pgen, blib2to3.pgen2.driver, blib2to3.pygram, black.nodes, black.comments, black.handle_ipynb_magics, black.brackets, black.lines, black.numerics, black.rusty, black.trans, black.linegen, black.parsing, black, pydantic.typing, pydantic.errors, pydantic.version, pydantic.utils, pydantic.class_validators, pydantic.config, pydantic.color, pydantic.datetime_parse, pydantic.validators, pydantic.networks, pydantic.types, pydantic.json, pydantic.error_wrappers, pydantic.fields, pydantic.parse, pydantic.schema, pydantic.main, pydantic.dataclasses, pydantic.annotated_types, pydantic.decorator, pydantic.env_settings, pydantic.tools, pydantic, pydantic._hypothesis_plugin (total: 47)
Aborted (core dumped)

Finally got a backtrace in C!
collected 3134 items / 3133 deselected / 1 selected

tests/validators/test_datetime.py
Program received signal SIGABRT, Aborted.
__pthread_kill_implementation (no_tid=0, signo=6, threadid=140737350287360) at ./nptl/pthread_kill.c:44
Download failed: Invalid argument.  Continuing without source file ./nptl/./nptl/pthread_kill.c.
44	./nptl/pthread_kill.c: No such file or directory.
(gdb) bt
#0  __pthread_kill_implementation (no_tid=0, signo=6, threadid=140737350287360) at ./nptl/pthread_kill.c:44
#1  __pthread_kill_internal (signo=6, threadid=140737350287360) at ./nptl/pthread_kill.c:78
#2  __GI___pthread_kill (threadid=140737350287360, signo=signo@entry=6) at ./nptl/pthread_kill.c:89
#3  0x00007ffff7c97476 in __GI_raise (sig=sig@entry=6) at ../sysdeps/posix/raise.c:26
#4  0x00007ffff7c7d7f3 in __GI_abort () at ./stdlib/abort.c:79
#5  0x00007ffff7c7d71b in __assert_fail_base (fmt=0x7ffff7e32150 "%s%s%s:%u: %s%sAssertion `%s' failed.\n%n", assertion=0x77bda9 "!_PyErr_Occurred(tstate)", file=0x78fc93 "../Objects/typeobject.c", line=1068, function=<optimized out>)
    at ./assert/assert.c:92
#6  0x00007ffff7c8ee96 in __GI___assert_fail (assertion=assertion@entry=0x77bda9 "!_PyErr_Occurred(tstate)", file=file@entry=0x78fc93 "../Objects/typeobject.c", line=line@entry=1068,
    function=function@entry=0x790510 <__PRETTY_FUNCTION__.30> "type_call") at ./assert/assert.c:101
#7  0x000000000052a1c8 in type_call (type=0xa21640 <_PyExc_ResourceWarning>, args=('Object of type pydantic_core._pydantic_core.SchemaValidator is not untracked before destruction',), kwds=0x0) at ../Objects/typeobject.c:1068
#8  0x00000000004b8b15 in _PyObject_MakeTpCall (tstate=tstate@entry=0xb46058 <_PyRuntime+166328>, callable=callable@entry=<type at remote 0xa21640>, args=args@entry=0x7fffffffbba8, nargs=<optimized out>, keywords=keywords@entry=0x0)
    at ../Objects/call.c:214
#9  0x00000000004b8e91 in _PyObject_VectorcallTstate (tstate=0xb46058 <_PyRuntime+166328>, callable=<type at remote 0xa21640>, args=args@entry=0x7fffffffbba8, nargsf=<optimized out>, nargsf@entry=9223372036854775809,
    kwnames=kwnames@entry=0x0) at ../Include/internal/pycore_call.h:90
#10 0x00000000004b8f4e in PyObject_CallOneArg (func=<optimized out>, arg=<optimized out>) at ../Objects/call.c:376

#11 0x000000000058e1fd in warn_explicit (tstate=0xb46058 <_PyRuntime+166328>, category=<type at remote 0xa21640>,
    category@entry=<error reading variable: Dwarf Error: Cannot find DIE at 0x1c9 referenced from DIE at 0x3de638 [in module /root/code/pydantic-core/pydantic_core/_pydantic_core.cpython-311-x86_64-linux-gnu.so]>,
    message=message@entry='Object of type pydantic_core._pydantic_core.SchemaValidator is not untracked before destruction', filename=filename@entry='gc', lineno=lineno@entry=0, module=module@entry='gc', registry=0x0, sourceline=0x0,
    source=0x0) at ../Python/_warnings.c:671
#12 0x000000000058fe92 in PyErr_WarnExplicitFormat (category=<type at remote 0xa21640>, filename_str=<optimized out>, lineno=0, module_str=<optimized out>, registry=0x0, format=<optimized out>) at ../Python/_warnings.c:1286

This is amazing, thank you so much.
Next question - any idea what's actually causing this error? I'm still unclear on how to dig deeper.
Also, I'd love to know what you did to get this traceback.

Any idea why the test_tz_comparison test in particular is causing this?

No idea yet, maybe fix the ResourceWarning will help?

Related:

https://github.com/apache/arrow/issues/33765#issuecomment-1406325427
https://github.com/PyO3/pyo3/issues/1623

Turns out this is not just a 3.11 thing, see #473 and this ci run.

Reported the ResourceWarning to pyo3: https://github.com/PyO3/pyo3/issues/3064

Thanks, I did a bit of digging and the resource warning happens everywhere, so I don't think that's the cause of the seg fault.

Further digging, I tried:

removing the no_coverage tags
using rust stable (we were using nightly to support the no_coverage tags)

In both cases we still get the seg fault :disappointed:.

Since the segfault happens in LLVM, IMO it's better to debug it with a debug build of Rust and report to Rust or LLVM project.

Honestly, I've tried pretty hard to reproduce this locally, but can't.
How did you get the seg fault to happen locally?

I'm simply using a normal Python 3.11 with the following commands running at the root of the project.
ulimit -c unlimited
python3.11 -m venv .venv
.venv/bin/pip install -r tests/requirements.txt
maturin develop --release
gdb --args .venv/bin/python -m coverage run -m pytest -k test_tz_comparison

and run in gdb.

BTW, remove strip = true in here before running maturin develop:
https://github.com/pydantic/pydantic-core/blob/40b72a37908ce352b5e8efb6d8a22bfb2a48be60/Cargo.toml#L63

so turns out we don't get the seg fault on either macos or ubuntu-20.04, so I've switched to 20.04 for coverage for now as I don't have time to debug this further.

Haven't had this issue in forever so I'm going to close this now.

I recreate this issue with Ubuntu 22, Windows/WSL and Docker ubuntu:latest by creating a python-module called datetime (folder with init, python file)...
Python 3.12, 3.11, 3.10
pydantic==2.5.2
pydantic_core==2.14.5
Commands and returns without datetime module
(venv) » tree -I '__pycache__' utils
utils
├── config.py
└── date
    └── __init__.py

1 directory, 2 files

(venv) » more utils/date/__init__.py

(venv) » more utils/config.py
from pydantic import BaseModel

(venv) » python3 utils/config.py
(no errors, import successfull)

After renaming the folder date to datetime:
(venv) » tree -I '__pycache__' utils                                                                                130 ↵
utils
├── config.py
└── datetime
    └── __init__.py

1 directory, 2 files
(venv) » python3 utils/config.py
[1]    7836 segmentation fault (core dumped)  python3 utils/config.py

Return from faulthandler enabled:
Fatal Python error: Segmentation fault

Current thread 0x00007f0488364000 (most recent call first):
  File "<frozen importlib._bootstrap>", line 241 in _call_with_frames_removed
  File "<frozen importlib._bootstrap_external>", line 1176 in create_module
  File "<frozen importlib._bootstrap>", line 571 in module_from_spec
  File "<frozen importlib._bootstrap>", line 674 in _load_unlocked
  File "<frozen importlib._bootstrap>", line 1006 in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 1027 in _find_and_load
  File "/venv/lib/python3.10/site-packages/pydantic_core/__init__.py", line 6 in <module>
  File "<frozen importlib._bootstrap>", line 241 in _call_with_frames_removed
  File "<frozen importlib._bootstrap_external>", line 883 in exec_module
  File "<frozen importlib._bootstrap>", line 688 in _load_unlocked
  File "<frozen importlib._bootstrap>", line 1006 in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 1027 in _find_and_load
  File "/venv/lib/python3.10/site-packages/pydantic/main.py", line 11 in <module>
  File "<frozen importlib._bootstrap>", line 241 in _call_with_frames_removed
  File "<frozen importlib._bootstrap_external>", line 883 in exec_module
  File "<frozen importlib._bootstrap>", line 688 in _load_unlocked
  File "<frozen importlib._bootstrap>", line 1006 in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 1027 in _find_and_load
  File "<frozen importlib._bootstrap>", line 1050 in _gcd_import
  File "/usr/lib/python3.10/importlib/__init__.py", line 126 in import_module
  File "/venv/lib/python3.10/site-packages/pydantic/__init__.py", line 372 in __getattr__
  File "<frozen importlib._bootstrap>", line 1075 in _handle_fromlist
  File "/src/utils/config.py", line 3 in <module>
[1]    7878 segmentation fault (core dumped)  python3 utils/config.py

@SrGitQ can you please open that as a new issue with a full repro of instructions how to observe this (including the source code)? I would be happy to investigate.


Particle update

In the current update of Particle, the SYSTEM_MODE(SEMI_AUTOMATIC) did not work and the Boron 404X was still searching for signal (green light was flashing). It can be fixed by replacing it with SYSTEM_MODE(MANUAL) and having #include "Particle.h" at the top of the code. There may be other solutions to this issue but this is the one I found to work.

Likely related to the updates described here: https://community.particle.io/t/new-particle-project-template/65629. Note that adding the #include statement is due to the shift from using a .ino file as default to .cpp. #include was invisible "under the hood" when we used to use .ino. Not sure about SEMI_AUTOMATIC yet but investigating this further...

Issue not with code and has been resolved. Closing/no commit needed.


Make clicking the search button highlight the text area

Make clicking the search button highlight the text area so that we can start typing right away. I don't see a downside to this. Even if you are coming back to the search page and you are not there to do a new search, having it automatically select it doesn't affect you in any way. And for when you do want to type, it saves you one whole mouse click!

Related: https://github.com/xou816/spot/issues/32#issuecomment-1012908809

I think it's been fixed on the development branch and in the very last release, if I unerstand what you mean!


Cross-compilation for 2.11.x and 2.12.x

Many libraries that we're making using of in other projects are still stuck on 2.11.  This PR addresses #122 by reverting to the use of scala.concurrent.forkjoin.ForkJoinPool for thread-limited parallelization in these two places within thelearning package:

https://github.com/clulab/processors/blob/ef9bd61d23fde39707da313ed2cfa683b8a26dc6/main/src/main/scala/org/clulab/learning/Datasets.scala#L179
https://github.com/clulab/processors/blob/ef9bd61d23fde39707da313ed2cfa683b8a26dc6/main/src/main/scala/org/clulab/learning/RFClassifier.scala#L97

This change produces a (seemingly innocuous) warning under  2.12, where use of scala.concurrent.forkjoin.ForkJoinPool is deprecated and aliased to java.util.concurrent.ForkJoinPool.
It is my understanding that the implementations for ForkJoinPool differ in 2.11 and 2.12. (see https://github.com/akka/akka/issues/18262).  Based on the benchmarks posted in that akka issue, we might want to consider using the monix FJP instead:

https://github.com/monix/monix-forkjoin

I also changed the travis configuration to test on 2.12.4 and 2.11.11.
You can publish both 2.11 and 2.12 versions locally with sbt +publishLocal.

Sorry, @kwalcock, that may have been an accident.  I would like to hear opinions about opting to instead switch to the monix FJP, though.  I hesitate to switch mostly because it feels like processors main/core already has too many dependencies.
I kind of wish we could move sequences and learning (the FJP stuff is only here) into its own subproject, but it isn't easy to extricate at this point, as CluProcessor lives in main and depends on sequences (and sequences depends on learning).
Regarding the warnings in Eidos, those were fixed by #235.  Here is the dependency graph for eidos :

These are the conflicts in eidos that I believe are generating warnings:

netty version conflict originating from processors (edu.washington.cs.knowitall.nlptools vs. akka)

xml-apis version conflict originating from processors (ai.lum.common vs edu.washington.cs.knowitall.nlptools)

I made a few fixes, and made sure travis is actually running tests for both scala versions.
The deprecation warning @myedibleenso mentioned is still there, but I would suggest we keep it for now and we can add monix-forkjoin in a future PR if needed.

closes #122


Fix creating Nodes by DoubleClick from Recent list

resolve #51632
related to #51808 and #59498
supersedes #66198
This bug stems from two problems.

CreateDialog::_score_type never scores the search string against Node, because Node is not in the list, that is used to make the comparison. This patch adds Node to the comparison list.

CreateDialog::_score_type gives a higher score to some preferred types, which interferes with search results. This patch gives search matching a higher weight than preferred types.

See also #51808 which aims at fixing the same issue (+ more), though with a different approach. (CC @hinlopen)

As far as I can tell this PR is compatible with #51808 in the sense that the other one will overwrite all changes. So this PR can be seen as a quick fix until there the other PR replaces the current system.

@nathanfranke it looks like your PR-approval got removed after my update. May I ask you to have another look at the changes?

Thanks!

I'm not a maintainer, so my reviews are never blocking. Thanks for merging, though, akien!


Pull Requests: develop branch what files need to be updated in ...opencm904_release?

Again sorry in advance.  You probably have already answered this.
I am looking to maybe issue a new Pull request for some of the Serial updates and again wondered what files need to be updated in the opencm9.04_release directory.   I know that the lib_f103.a file needs to be updated.  But I also thought all updated header files?  What about Library source files?  and the  like.
What about if I created a keywords.txt (I have), which include some of the things that are not currently showing up as special things in the arduino ide?
Currently mine looke like:
# OpenCM specific functions
printf	KEYWORD2
flushRx	KEYWORD2
transmitterEnable	KEYWORD2
setDxlMode	KEYWORD2
getBaudRate	KEYWORD2
getRxCnt	KEYWORD2
getTxCnt	KEYWORD2

# Arduino constants

# advanced pin states
OUTPUT_OPEN	LITERAL1
INPUT_PULLDOWN	LITERAL1
INPUT_ANALOG	LITERAL1

(The transmitterEnable is new in my stuff)
I tried running WinMerge to see which files are different.  First on my current code and updated all of the header files I had changed, But there are several other files I have not touched, so I looked at the files in my clone of your fork/branch and it too shows several files different.
Things like UARTClass.h, variant.h drv_uart.h , but in addition there are other source files, like:
port_handler_arduino.cpp, variant.cpp,  that is also different,
And many of the example sketches where mostly the changes are changing the comment about
changing comments:
http://support.robotis.com/ -> http://emanual.robotis.com/
But also a few with actual changes.
So mainly just wondering which types of these files should be updated with a Pull request.
Thanks
Kurt

@KurtE,
Sorry for late reply you.
PullRequest requires the following:

develop firmware in opencm9.04 folder
update lib_f103.a in opencm904_release folder
update include files in opencm904_release folder (For changes only)

port_handler_arduino.cpp, variant.cpp, that is also different,

These files will be applied to the .a file through the build if you have modified them in the opencm9.04 folder. Therefore, if these files have been modified, you can leave them in the opencm9.04 folder and do PullRequest.

What about if I created a keywords.txt (I have), which include some of the things that are not currently showing up as special things in the arduino ide?

I think it's a good idea :)
And... since our code structure does not distinguish between include and src folders, it is inconvenient to copy the modifications one by one.
We plan to separate the include and src folders in the future.

Hi, @KurtE.
Has this issue been resolved?

Yes, good time to close


[Misc] Simplify code and fix type annotations in conftest.py

As in title
@rkooo567 after this is merged, I'll edit #5017 to enable type checking under tests/ directory.

@rkooo567 if you're free, can you review this PR first? Otherwise the original PR which this is based on (#4197) may get merged first xD


Add dpnp implementation for npbench

Provides basic implementation for dpnp based on numpy implementation. Only imports were changed.

[x] Have you added a test, reproducer or referred to an issue with a reproducer?
[x] Have you tested your changes locally for CPU and GPU devices?
[x] Have you made sure that new changes do not introduce compiler warnings?
[ ] If this PR is a work in progress, are you filing the PR as a draft?

Have a look @antonwolfy @oleksandr-pavlyk


Style Dictionary extension generators override existing files

Current Behavior
When the extensions generator is executed and the custom extension property does not exist in the project.json but the files are present in the file system, the generators still writes the extension path to the file.
Expected Behaviour
The extension generators should check for the file to be written that there is no file under the target path.
Github Repo
No response
Steps to Reproduce

nx g @nxkit/style-dictionary:lib tokens
nx g @nxkit/style-dictionary:extension --project tokens --extensions actions
Delete the customActions option in the project.json file build target
Modify the libs/tokens/src/extensions/actions/index.ts file
nx g @nxkit/style-dictionary:extension --project tokens --extensions actions
Changes made before were overwritten

Nx Report
>  NX   Report complete - copy this into the issue template

   Node : 18.13.0
   OS   : darwin arm64
   pnpm : 7.24.3

   nx : 15.5.1
   @nrwl/angular : 15.5.1
   @nrwl/cypress : 15.5.1
   @nrwl/detox : Not Found
   @nrwl/devkit : 15.5.1
   @nrwl/esbuild : Not Found
   @nrwl/eslint-plugin-nx : 15.5.1
   @nrwl/expo : Not Found
   @nrwl/express : Not Found
   @nrwl/jest : 15.5.1
   @nrwl/js : 15.5.1
   @nrwl/linter : 15.5.1
   @nrwl/nest : 15.5.1
   @nrwl/next : 15.5.1
   @nrwl/node : 15.5.1
   @nrwl/nx-cloud : Not Found
   @nrwl/nx-plugin : Not Found
   @nrwl/react : 15.5.1
   @nrwl/react-native : Not Found
   @nrwl/rollup : 15.5.1
   @nrwl/schematics : Not Found
   @nrwl/storybook : Not Found
   @nrwl/web : 15.5.1
   @nrwl/webpack : 15.5.1
   @nrwl/workspace : 15.5.1
   @nrwl/vite : 15.5.1
   typescript : 4.8.4
   ---------------------------------------
   Local workspace plugins:
   ---------------------------------------
   Community plugins:
         @nxkit/playwright: 2.0.1
         @nxkit/style-dictionary: 2.0.1

Failure Logs
No response
Additional Information
No response
Code of Conduct

[X] I agree to follow this project's Code of Conduct

This behavior is expected. Checks in the build targets should be enough to prevent unwanted overrides. Version control is always there to revert changes if required.


Support playing programmed music upon startup

Target workflow:

Start up Raspberry Pi (w/touch screen)
When desktop displays, touch icon for a particular MIDI sequence
Open terminal, run undermidi, start LFE REPL
Execute sequence associated with desktop icon
When finished, keep terminal open
Provide function for listing all sequences on desktop (icons)
Provide function for selecting and playing one of the sequences

Dev tasks:

[x] Create new playlist gen_server
[x] Update it to accept an "add file" message
[ ] Add a function that will read a sequence file and play the notes
[x] Add client support and the ability to send an "add file" message
[ ] Create some sequence files
[ ] Ensure that they play correctly when their names are passed via the client
[ ] Experiment with a Desktop shortcut that starts an undermidi/LFE node and sends a message (e.g., via -- -<flag> file)

There are many ways to support a workflow like this, but there's one solution that intrigues me most:

have a desktop icon that just brings up undermidi + the LFE REPL, but executes no sequence
add a new "playlist" gen_server
have "sequence" desktop icons that set an ENV variable for a sequence file and start up a new LFE node, sending a "play file" request, passing the value set in the ENV var
the main undermidi LFE node receives this message, adds the sequence to the queue, with the "playlist" gen_server playing sequences in order
once the "sequence" desktop icon's process has sent the file message, it closes down

Right, I forgot: when using rebar, erl and lfe are not called; rather, the shells are invoked in code, so there is not passing of args directly to either. Will have to explore the ENV route ...

Well, I guess we don't have to use the ENV route, since we do have rebar3 lfe run ...

Okay, I've created a main script in priv/scripts/playlist-add.lfe that takes kv pairs as args on the CLI and turns them into a map.
rebar.config profile section:
{profiles, [
    ...
    {'playlist-add', [
        {lfe, [{main, "priv/scripts/playlist-add.lfe"}]}
    ]}
]}.

Using this profile:
rebar3 as playlist-add lfe run -- name seq1 file priv/seqs/basic.lfe

Output of the script after a couple of calls:
Playlist state: #M(opts #M(repeat f)
                   queue
                     (#M(name "seq1" file "priv/seqs/basic.lfe")
                      #M(name "seq1" file "priv/seqs/basic.lfe"))
                   played ())

That's basic infrastructure experiments done; next is the hard part of determining the best short-term solution for actually playing these files (a longer term solution can't be worked on until this epic work is nearing completion).

Key required behaviours:

the Erlang that plays these files cannot block the gen_server (playing these files will (in the short term) involve sleeps between notes, which is a blocking operation)
if nothing is in the queue when a file is added, the file should be played immediately
if a file is already being played, the incoming file should be placed into a queue
all files that are placed in the queue should be played on a FIFO basis
when a file is sent to the playing process, it should be removed from the queue, and all of its associated data/metadata passed to the playing process
the gen_server should get a message whenever the "playing" Erlang process finishes playing a file, and that message should also contain all of the song's associated data/metadata
when the gen_server receives the "played" message, it should spawn an Erlang process to play the next song in the queue
when the gen_server receives the "played" message, the song data/metadata should be appended to the played list
the the play queue is empty and the last song has finished playing, if the gen_server's "repeat" option is "true" then the "played" list should be moved to the "to-play queue"

Phew! That's the most involved OTP I've done in a while ...


Profile Fields for New Users

When new users are imported to shifts by csv, they don't have any Profile Fields
(without doing a rake task?)

NB [ACR]  in the above is the DEPARTMENT name, not the instance name. They're the same for ACR, but different for APPS2!

So how to actually do this:
ssh into weke, sudo su -, You should now be root.
cd /var/www/rails/shifts/apps2/current/
RAILS_ENV=production bundle exec rake db:repair_profiles[STC]
for apps2

better to run as the rails and mysql user:
sudo su - deploy
cd /var/www/rails/shifts/apps2/current
RAILS_ENV=production bundle exec rake db:repair_profiles[STC]

I'm guessing the CSV user import fails due to associated database elements not being properly established within the import function. Assuming the import function is this one, it appears that the rake task is needed to populate UserProfile data points.


Add hw_counters for infiniband device.

This change adds hw_counters to the existing infiniband class so that additional counter information for infiniband devices can be obtained.
In preparing this PR, I have confirmed that hw_counters for Infiniband devices can be obtained from the mlx5_core kernel module included in multiple Linux distributions and multiple OS versions.
I have also confirmed that it is possible to get hw_counters from the mlx5_core kernel module included in the OFED driver.
However, I have not checked for other cases (e.g. mlx4_core), so this implementation is limited to mlx5 only.

Which release of the node-exporter will include this change?

Which release of the node-exporter will include this change?

The next one, we'll release a new version probably soon