[SUGGESTION] Provide an option to capture_ methods that guarantee a frame after the request is made

This is related to the discussion in issue #787 but is more of a feature request. It's probably relevant for projects requiring synchronising the camera to outside events or machine movement.  I found myself with a problem where a photo has to be taken after some motors have stopped moving.
No matter what settings of buffer_count and queue=False sometimes an old frame that was taken while the motors were running is being supplied even when the request is made after the motors stop, leading to blurred images. Although this happened to some extent on the Pi4, it seems more frequent with the Pi5 and/or recent libcamera/picamera2 updates. Possibly related to the greater speed of the system?
With information from #787, my workaround is to store the time of the capture request using time.monotonic_ns() which is compared to SensorTimeStamp in the metadata of the request. If SensorTimeStamp is earlier, then another capture_request is made. Some partial code from my camera control object - the do_capture method is called when the motors stop:
    def do_capture(self):
        self.capture_timestamp = time.monotonic_ns()
        self.picam2.capture_request(signal_function=self.raw_captured)

    def raw_captured(self, job):
        r = self.picam2.wait(job)
        img_buf = r.make_array(name='raw')
        m = r.get_metadata()
        r.release()
        if m['SensorTimestamp'] < self.capture_timestamp:
            # Libcamera has delivered a frame prior to capture request
            self.picam2.capture_request(signal_function=self.raw_captured)
        else:
            # start processing img_buf
            ...

Although the above seems to do the job, it would be nice to incorporate an option into the capture_ methods so that picamera2 can be told to always return a frame at or after the time of the request, and saves having this hacky workaround code in the signal_function.

Hi, thanks for that, I think that's an interesting idea. Are you thinking of maybe a timestamp argument for capture_request(), so that you could do something like
request = picam2.capture_request(timestamp=time.monotonic_ns())

and you'd be guaranteed to get a frame where the 'SensorTimestamp' is >= the timestamp passed in?
Just as a note, even that doesn't seem fully correct, you probably want to subtract the exposure time from the SensorTimestamp. Otherwise some of (even all) the pixels have started being exposed before the time in question. Presumably you'd prefer it that nothing gets exposed beforehand?

Thanks, David.
It's preferable if nothing is exposed before the capture request. I was thinking about something along the lines of a simple flag like:
request = picam2.capture_request(from_now=True)

the capture would simply skip frames with a timestamp earlier than the system time of the call to capture_request.
The analogy is with a stills camera shutter - you press the button and the shutter fires. You wouldn't expect an image from before you pressed the button - which is what appears to be happening due to some latency in the camera system. :smile:
In my use case the motor controller signals the pi  via a gpio pin that the motors have stopped, so it is safe to grab an image.
For info, it's not happening every time, and appears to need to skip only one frame if it's caught. When I put something like the following into my capture code:
sensor_timestamp =  m['SensorTimestamp']
print(f'Frame before capture - diff: {self.capture_timestamp-sensor_timestamp}')

I get results like:
Frame before capture - diff: 59891897
Frame before capture - diff: 18285219
Frame before capture - diff: 27011932
Frame before capture - diff: 16928185
Frame before capture - diff: 12854275
Frame before capture - diff: 25012663
Frame before capture - diff: 16019137
Frame before capture - diff: 30893324
Frame before capture - diff: 6676741

A range of 6 to 60mS. In this case the shutter speed is 10495, but not factored in the above check.

I quite like the idea of being able to specify a timestamp, I could imagine some code being informed that some event happened "a short while ago", and you might want to use a timestamp that you're given. Or if it's not a single capture, and you're trying to pipeline your captures and synchronise them with other (asynchronous) events.
Maybe one could have a "flush" parameter, where flush=True means use the current time (the system will fetch it), or flush=my_timestamp if you want a different time (or flush=None for the existing behaviour, which is obviously the default).
I'm still thinking that you really want "SensorTimestamp - ExposureTime >= timestamp", though - would you agree?

The flush=True option seems fine by me as it would appear to achieve the desired effect. I'm trying to simplify things for my particular usercase and simplify my terrible Python code. 😄 The comparision with current time should be from when the frame capture started, so yes SensorTimestamp - ExposureTime >= timestamp is valid if SensorTimestamp is the time when the frame capture has ended.

The SensorTimestamp is the time when the capture of the first pixel has happened. These are (mostly) rolling shutter sensors, so the rest of the frame is either still being exposed, or possibly hasn't even started being exposed yet!
But anyway, here's a first attempt at something: https://github.com/raspberrypi/picamera2/pull/851

Thanks, David! That was a quick implementation! :thumbsup:
As far as I can tell, this is perfect. I just did a quick and dirty test (by copying picamera2 from #851 and putting it into /usr/lib/python3/dist-packages/picamera2/ (backed up the original, first).
It appears to be working for my code at least. With the line self.picam2.capture_request(signal_function=self.raw_captured, flush=True) , the frame check in self.raw_captured isn't being triggered.
With luck this feature will be included in the official release, soon.

I was looking for this feature exactly. Thanks.
but also was using image = picam2.capture_array("main")
How do I obtain image in the format capture_array("main") returned it from request in request = self.picam2.capture_request(flush=True)

I haven't added this feature to the other capture methods as the parameter lists are getting quite cluttered already. I took the view that folks who were sufficiently advanced to care about these details would be able to do
request = picam2.capture_request(flush=True)
array = request.make_array('main')
request.flush()

but I'm always open to persuasion on this kind of thing.
One thing to note is that this doesn't really help in capturing a frame when the exposure has changed. It takes several frames for the exposure to change even after you've sent the command to change it, so the only way to know that it has happened is to sit in a loop and watch the image metadata (at which point the sleep would be redundant).


...it would be nice(tm) if soundcloud links were also supported

http://reddit.tv/#/r/classicalguitar/ ... we've got quite a few people who post links to soundcloud of themselves playing instead of videos.  I don't know if that necessarily matches the core competency of reddit.tv but it seems like it would make sense for our specific use case.  Just don't know if you'd considered it before or not.
Thanks!

Reddit.tv is specifically for watching videos.


VXLAN doc tweaks.

Description

Todos

[ ] Tests
[ ] Documentation
[ ] Release note

Release Note

None required

Deploy preview for calico ready!
Built with commit e776e6fb9ae008e7b2a9ec9324620a451052c4bb
https://deploy-preview-2554--calico.netlify.com


Vue 2

Doesn't work for me on Vue 2.0. Is this version supported?

Sorry I'm a fool

It's OK! Glad you solved whatever problem you had. Clickout-Event works for both Vue 2 and Vue 3. Help me spread the words if you've found it helpful!


Authenticate against a server without Basic HTTP auth

Our Confluence server does not have Basic HTTP authentication enabled.  Setting the requests.Session user and password allows authentication with our server to work.
I also found that our Sphinx-generated html  was multi-line, so I added DOTALL to the regexp.
In order not to change the existing code structure too much, I ended up returning either a string (the base64 encoded user:pass), or the requests.Session object from parse_authentication().  Not sure if this is too weird or not.
I've only lightly tested against our Confluence server, and not against a server with Basic HTTP auth.

@hojalot can you check is auth working in you case now?

I see that the refactoring of my changes removed the --auth-type option, so I ran just with "conf_publisher publish.yml -v -U $USER", but I get this error:
Publishing attachments...
Publishing attachment: /path/to/my/doc/dir/_build/html/_images/image.svg (parent_id: 88869910)
Traceback (most recent call last):
File "/usr/local/bin/conf_publisher", line 9, in
load_entry_point('confluence-publisher==1.2.2', 'console_scripts', 'conf_publisher')()
File "build/bdist.linux-x86_64/egg/conf_publisher/publish.py", line 195, in main
File "build/bdist.linux-x86_64/egg/conf_publisher/publish.py", line 126, in publish
File "build/bdist.linux-x86_64/egg/conf_publisher/publish.py", line 139, in _publish_attachments
File "build/bdist.linux-x86_64/egg/conf_publisher/publish.py", line 143, in _publish_page_attachement
File "build/bdist.linux-x86_64/egg/conf_publisher/confluence.py", line 186, in publish
TypeError: list object is not an iterator
I added 'print "filter:",filter(lambda x: x.title == attachment_file.filename, attachments)' in AttachmentPublisher publish() and get:
filter: [<conf_publisher.confluence.DownloadAttachement object at 0x7f34220d7e90>]
Can next() be done on a DownloadAttachement?
BTW, I am using Python 2.7.12.

I see that the refactoring of my changes removed the --auth-type option, so I ran just with "conf_publisher publish.yml -v -U $USER"

Yea, you'r right, just there isn't any reason to extend cli interface. Fix that you submit just reuse cookies, but it still basic auth, so now publisher must work with more configurations without any actions from user-side.
And about this error, it part of code not test covered and I'm not run it in Python 2.7, but it error happens because in py2.7 filter returns list, in py3 filter returns generator; I fix it incompatibility in 981f766.

After pulling your filter fix, my publish works fine.
Thank you!


Add a note that you can't set the tab color from the commandline

Closes #249

Docs Build status updates of commit 455aa2f:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

TerminalDocs/tips-and-tricks.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel


[improve][build] Upgrade Testcontainers to 1.18.3

Motivation

keep the dependency up-to-date

Modifications
Upgrade Testcontainers to 1.18.3
Documentation

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

Matching PR in forked repository
PR in forked repository: https://github.com/lhotari/pulsar/pull/149

@lhotari you have to upgrade docker-java as well


Climate+Banking: Atmos Financial

Resource title
Climate+Banking: Atmos Financial
URL
https://www.joinatmos.com/
Relevant tags (1 per line)
🍞 Rollie's Choice
Finance
location/US
Resource Summary
Atmos is the world's most sustainable checking and savings accounts. All deposits are used for climate positive projects like solar for all. FDIC insured, climate cash back, high-yield savings, and solar loans.
Relevance
Atmos is funding the transition to a climate positive future and away from fossil fuel funding traditional banks support.
Other comments
No response

I updated the tags and removed the image (the image is manually customisable in the hub, instead pulling the thumbnail image set by the website creators). Looks great!

Thanks so much!
On Tue, Jun 27, 2023 at 8:19 AM Vecko @.***> wrote:

I updated the tags and removed the image (the image is manually
customisable in the hub, instead pulling the thumbnail image set by the
website creators). Looks great!
—
Reply to this email directly, view it on GitHub
https://github.com/ClimateTown/knowledge-hub/issues/286#issuecomment-1609606317,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AXJ4QAF35I33WX4AMWD7FDTXNLTYPANCNFSM6AAAAAAZRZFK3Q
.
You are receiving this because you authored the thread.Message ID:
@.***>


[Snyk] Upgrade axios from 1.6.8 to 1.7.2

This PR was automatically created by Snyk using the credentials of a real user.![snyk-top-banner](https://github.com/andygongea/OWASP-Benchmark/assets/818805/c518c423-16fe-447e-b67f-ad5a49b5d123)
Snyk has created this PR to upgrade axios from 1.6.8 to 1.7.2.
:information_source: Keep your dependencies up-to-date. This makes it easier to fix existing vulnerabilities and to more quickly identify and fix newly disclosed vulnerabilities when they affect your project.

The recommended version is 6 versions ahead of your current version.

The recommended version was released on 2 months ago.

[!IMPORTANT]

Check the changes in this PR to ensure they won't cause issues with your project.
This PR was automatically created by Snyk using the credentials of a real user.

Note: You are seeing this because you or someone else with access to this repository has authorized Snyk to open upgrade PRs.
For more information:

🧐 View latest project report
📜 Customise PR templates
🛠 Adjust upgrade PR settings
🔕 Ignore this dependency or unsubscribe from future upgrade PRs

This was opened in error


mod(es/minifier): relax function inline requirement

Description:
There's no need to check use_above_decl for function
BREAKING CHANGE:

Related issue (if exists):

Seems like currently ref_count is always equal to usage_count

Hmm... Then I think it's a bug of the analyzer.
It should be different in some cases...

Can you update the tests?

Can you update the tests?

Not now. This pr needs a major overhaul.

I see, thanks


Please read this before submitting an issue!

Hi guys.
There is a lot of issues were submitted to this project, however most of them are NOT a kind of why "issues" exists on Github. Just take a quick look at closed issues with "invalid" label, probably you'll understand. People didn't learn how to use umodel, and asking their questions here. Asking directly to myself, not to community. The "issues" section on github is not a "customer service", this is a really technical discussion board. For everything else, PLEASE USE FORUM.
Really, guys - sometimes I'm so annoyed with "issues" which were posted here (can't print this word without quotes), so I'm about to completely disable this feature on umodel's github page. Some people are too lazy to find information themselves, to read or learn. If you've registered at github, you HAVE TO be a developer and clever enough to understand that this place is NOT for simple questions. I can't guide everyone who use the software, tell to everyone "this was answered in readme.txt" or "here's a forum link with the answer". Please respect developer's time and behave accordingly.
P.S. Umodel is intended to work with Unreal engine games. Not with all, but probably with most of them. Most of games requires special settings to be openable with umodel. When you're using different settings, or opening a game which is not supported, you'll get a crash. This is NOT AN ISSUE with umodel, this is an issue with incorrect use of program.

More things.
Never ask me about AES keys for UE4 games. Every key posted on the forum obtained by different people, and I have no idea who did they do that.
Also, there's too many people from Fortnite community posting here. I can't say about everyone from that community, but it's very very large, and I suppose at least 0.01% of them aren't happy with trying to search stuff themselves and feeling that it's easier to ask. Well, for those of them, forum has 2 threads, where ALL possible questions were already asked and answered. Look here:
General Fortnite discussion
Fortnite key (put it separately long time ago because of very long discussion, which was stripped down now).

Another thing to mention.
If you have a problem with some particular game, please use forum again. It is often happens that some game (especially UE4 and/or online game) worked before, and suddenly stops working after the game's update. If UModel's update broke the compatibility - that's a bug, and it could be posted here. However if game's update broke the compatibility - then may be you should use different settings, may be find an older version of the game, may be something else. I can't respond to all of the questions, and I can't test all games myself. Usually people who active enough on the forum may help you much more that I.

Incomplete list of things which will cause immediate closing of the issue with "invalid" tag:

a kind of asking about "how do I insert a custom texture with my name into a game"
anything about Fortnite (use forum for that)
anything about PUBG (not supported, and will not be)
questions about any unsupported game

Things which are GOOD here:

if something did work before, but stopped working, and this wasn't caused but game update - in other words, regression in UModel
crashes in "ConvertMesh" function
crashes happened in viewer or exporter (not in "Serialize" function).

If you're posting an issue at Github, I'm expecting that you have some programming skills for being able to understand "yes" and "no" above. If not - please better use forum.

Hello. How can i get 3d models of the game called "Days Gone". Im tried but this is error: ERROR: Memory: bad allocation size ......... bytes


Is their any plan to support python 3.x?

Hi,
The documentation said it only support python 2.6+ without python 3.X included.
Is there any plan to consider supporting 3.X?
Thanks!

Hi! See #363


Feat: RSA with SHA1

Partially resolves #38
Implemented RSA with SHA1 verifier circuit

Closing because does not compile, moving to https://github.com/zk-passport/proof-of-passport/pull/121


Pool API bugs

In the pool API when you goto the links.
/api/pools/coinname/miners
It doesnt pull up anything.
Another one
/api/pools/coinname/payments
It shows "[ ]"
We're to get a API bot working but the API itself isnt showing status.
/api/pools/coinname/
Shows all the info like it should.

/api/pools/coinname/blocks?page=0&pageSize=100
/api/pools/coinname/miners?page=0&pageSize=100
/api/pools/coinname/payments?page=0&pageSize=100
/api/pools/coinname/miners/wallet/payments?page=0&pageSize=100

It some what worked for afew days. Now all the api's i get a 404 page not found and the front end doesnt display anything. Server reboot did not fix the problem.

As @Konstantin35 suggested, it has a required &pageSize parameter that you're missing.

Api is fully down. It worked for 2 weeks.
Even adding &pagesize at the end.

API is still broken as hell.

Can you give me more information about what's not working?


Add setOnce API to android. Add support for notifications on Android/iOS.

This should fix https://github.com/davodesign84/react-native-mixpanel/issues/38

My branch now has support for push tokens on Android and iOS as well. Sorry I didn't jump through all the hoops for proper branches for all this, but let me know if you want me to do it to get it submitted.
This original simple fix was left pending for 3+ months, and well, I wanted my 'master' branch back so I could keep going with my project. :)

How can we get this merged in?

@davodesign84 , any concerns you have or want me to address?

@mikelambert also, if you're feeling adventurous and giving.. cause I see you clearly know how to fix up this stuff in Android.. maybe you would take a stab at a fix for https://github.com/davodesign84/react-native-mixpanel/issues/56?


Move default timeouts from request to client configuration.

The current implementation does not allow the configuration of custom timeouts since they are set to 20s/10s for each request. Passing in a custom client with specified timeouts does not change the timeout since they are overridden. In some scenarios, it is desirable to have shorter timeouts to avoid stalling the processing of requests/jobs.
This change should not modify the library's default behaviour but moving the timeouts into the client configuration allows the customization of the values by providing a different instance of the Guzzle client.

Good catch! Thank you @claude-vessaz-hs


Fixed login/logout for Django 2.1.

In django.contrib.auth.views, the login and logout funcs are removed as of Django 2.1 so django-helpdesk version 0.2.9 will prevent Django 2.1 from starting up. Modifying urls.py to use the LoginView/LogoutView classes instead of the login/logout funcs fixes the problem. The classes were introduced in Django 1.11 (when the funcs were deprecated) so this fix will work for all versions of Django supported by django-helpdesk.

Codecov Report

Merging #632 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #632   +/-   ##
=======================================
  Coverage   62.22%   62.22%
=======================================
  Files          38       38
  Lines        3561     3561
  Branches      562      562
=======================================
  Hits         2216     2216
  Misses       1191     1191
  Partials      154      154

Impacted Files
Coverage Δ

helpdesk/urls.py
70.83% <ø> (ø)
:arrow_up:

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 73f1135...4526d7c. Read the comment docs.


Hotfix 1.6.1: helm incubator repo change (develop)

Hotfix merged in PR #175.
NOTE: The hotfix was merged using another branch to avoid polluting the develop branch commit history.

Hotfix merged in PR #175.
NOTE: The hotfix was merged using another branch to avoid polluting the develop branch commit history.


[Backend] Accept BROOD_API_URL and SPIRE_API_URL environment variables

These should be used to configure the Bugout client in settings.py.

Resolved by https://github.com/bugout-dev/moonstream/pull/48


Typo in willUnmount lifecycle hook

The typo is causing timers to continue even when the component is unmounted.

Thanks!

Thank you!


Avatar via SSO

Enhancement Proposal
It is possible to use picture_template to set the default avatar from SSO. Would be great if we could import this.

Closing this issue since no longer apply, thanks for the input!


Linear classifier fine-tuning

Thank you releasing the code. I am trying to navigate through the code to understand how embeddings are passed from the specifically for DinoV2 foundation model to the linear layer. I have the following questions regarding that:
If my understanding is correct, first in DINOWRAPPER, a linear layer is added to DinoV2 by calling the Classifier
https://github.com/joanaapa/Foundation-Medical/blob/a7aa194f0643583f29fc9d32f211e2815400709b/defaults/wrappers.py#L461
After that Ymodel_DINO is called where the embeddings are first passed to a linear projector before passing it to the linear layer (termed as classifier in the paper) for classification as follows:
https://github.com/joanaapa/Foundation-Medical/blob/a7aa194f0643583f29fc9d32f211e2815400709b/defaults/models.py#L469
https://github.com/joanaapa/Foundation-Medical/blob/a7aa194f0643583f29fc9d32f211e2815400709b/defaults/models.py#L470
These linear_proj are passed to the final linear layer which was added in DINOWRAPPER for classification? Can you please pin point where are you fine-runing the linear layer for final classifciation?
Moreover, why not all the embeddings were extracted by using:
  found_embeds = self.foundation_model(x).mean(dim=1)
why the cls tokens were removed:
  found_embeds = self.foundation_model(x)[:,1:,:]
Questions from the paper:
"In all cases, integrating a classifier model on top of the foundation model involves extracting patch representations from the foundation models, adding a projection layer, bypassing the patch embedding layer of the stacked classifier, and transmitting
the patch representations to the classifier for the fine-tuning process."
Here classifier model means a linear layer for final classification:
https://github.com/joanaapa/Foundation-Medical/blob/a7aa194f0643583f29fc9d32f211e2815400709b/defaults/models.py#L57
Projection layer is added before it refers to this one:
linear_proj = self.linear_projector(found_embeds)
bypassing the patch embedding layer of the stacked classifier -> what does it mean?

Thank you for the clarification, that means that for the linear layer classification, first  embeddings are extracted from the models, and these embeddings are passed to the linear layer for classification as done here:
https://github.com/joanaapa/Foundation-Medical/blob/a7aa194f0643583f29fc9d32f211e2815400709b/defaults/wrappers.py#L570C17-L570C27
https://github.com/joanaapa/Foundation-Medical/blob/a7aa194f0643583f29fc9d32f211e2815400709b/defaults/models.py#L51
both embedding and cls_token is used in linear layer classification, right?

For the classification only the cls_token is used

Thanks for you response.

It is the base version


Remove unused ec configmap keys

The ec-defaults ConfigMap in the enterprise-contract-service namespace contains values for which policy and data refs to use when creating a new EnterpriseContractPolicy resource. However, we have moved away from using this ConfigMap for this purpose. Although the values still exist, they are no longer updated by automation.
The automation now keeps a few EnterpriseContractPolicy resources up to date. This commit removes the values from the ConfigMap in order to avoid confusion.
NOTE: The ConfigMap is still useful for determining the most up to date ref for the ec Tekton Task. There are no plans to change this.
https://issues.redhat.com/browse/HACBS-2315

/lgtm

/approve


Esc'ing rename prompt renames to empty string

:slightly_smiling_face:

Hey @non25 how is it going.. sorry for the late reply!
Oh, so you're suggesting to have the name of the node as a default value when trying to rename?


Add numerical support of other real types (helper)

Extra part of #1909. Better saved as draft as it may take longer time.
Tasks:

[ ] auxiliary/math - check todo

Redo #1929 to keep consistency.
I may start my project soon so the whole type issue here may slow down (but won't stop). Let me know if you consider this urgent, and I may adjust my priority :)

What do you mean by other things happening in real life?

I can't spend as much time on this open-source project as I would like since I also have to other things

I thought it means something more abstract and high level, but if you are talking about this, no worries.
Does that mean I have total control over my project? As I was always thinking about making this a totally separate package within the ecosystem, like https://github.com/SciML/DiffEqGPU.jl, instead of integrating it directly into the original package.
At least keep an eye on my project - sometimes it moves fast.

Does that mean I have total control over my project? As I was always thinking about making this a totally separate package within the ecosystem, like https://github.com/SciML/DiffEqGPU.jl, instead of integrating it directly into the original package.

This is open-source software, so we can not disallow this (as long as you respect the license). We would, of course, be happy if you continued contributing to the main Trixi.jl repo - in particular with fixes for floating point types like in this PR.

Will try my best as I work full time during daytime.

This is also offensive. This implies that you already consider the possibility that I may not respect the license. Would you say something like this to your colleagues? Probably no. I'm feeling a sense of inequality and hierarchy from you. Please mind your words even if you don't mean that way. I need some time to adjust myself - sorry for that

I seldom feel a sense of inclusion here. Decisions are made by people who are not actually doing the work, instead of through an open and transparent vote. I feel like I’m just doing tasks that are assigned to me, and independent thinking and open-mindedness are discouraged. Maybe I chose the wrong place - this is not a school but makes me feel like a school

I'm sorry if my words above sound aggressive to you - that was not my goal. Please do whatever you like to do and work on the open-source projects that you enjoy


TagBot trigger issue

This issue is used to trigger TagBot; feel free to unsubscribe.
If you haven't already, you should update your TagBot.yml to include issue comment triggers.
Please see this post on Discourse for instructions and more details.
If you'd like for me to do this for you, comment TagBot fix on this issue.
I'll open a PR within a few hours, please be patient!

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/25403

Triggering TagBot for merged registry pull request
This extra notification is being sent because I expected a tag to exist by now, but it doesn't.
You may want to check your TagBot configuration to ensure that it's running, and if it is, check the logs to make sure that there are no errors.


The result error

Thanks a lot ！！！
I record a rosbag and play it，but the Gyro z of the result was error，and I dont know how to solve that.
here is a part of my result.(ps: Please forgive my bad chinglish :) )
Gyro X
C -28945.1   194378  7.23339  139.054 -3.53494
Bias Instability 0.00484778 rad/s, at 0.104268 s
White Noise 2.94973 rad/s
bias -1.88767 degree/s
Gyro y
C -3460.61  44971.8  457.603   -18.87 0.130777
Bias Instability 0.00373774 rad/s, at 3416.76 s
White Noise 0.676594 rad/s
bias 1.82403 degree/s
Gyro z
C 0 0 0 0 0
WARNING: Logging before InitGoogleLogging() is written to STDERR
W0509 10:56:09.249119 25327 residual_block.cc:131]
Error in evaluating the ResidualBlock.
There are two possible reasons. Either the CostFunction did not evaluate and fill all
residual and jacobians that were requested or there was a non-finite value (nan/infinite)
generated during the or jacobian computation.
Residual Block size: 1 parameter blocks x 1 residuals
For each parameter block, the value of the parameters are printed in the first column
and the value of the jacobian under the corresponding residual. If a ParameterBlock was
held constant then the corresponding jacobian is printed as 'Not Computed'. If an entry
of the Jacobian/residual array was requested but was not written to by user code, it is
indicated by 'Uninitialized'. This is an error. Residuals or Jacobian values evaluating
to Inf or NaN is also an error.
Residuals:             -nan
Parameter Block 0, size: 5
       0 |         -nan
       0 |         -nan
       0 |         -nan
       0 |         -nan
       0 |         -nan

E0509 10:56:09.249228 25327 trust_region_minimizer.cc:72] Terminating: Residual and Jacobian evaluation failed.
Bias Instability 0 rad/s, at 3416.76 s
White Noise 0 rad/s
bias 0 degree/s

seems that data you collected is not suitable for the Ceres Solver. Can you provide your data for debug?

alright...this error just because of my c++program，it didn't read the last data。
anyway,thank you for you reply

Hi, I meet the same problem. Do you solve it? Thank you!

Hi, I meet the same problem. Do you solve it? Thank you!

seems that data you collected is not suitable for the Ceres Solver. Can you provide your data for debug?

Hello, I also encountered the above problems. This is my bag. How can I solve them? Thank you very much.
https://drive.google.com/file/d/1if5WapgQ524ZZpxdT1di73sIZxgrIq_n/view?usp=sharing

seems that data you collected is not suitable for the Ceres Solver. Can you provide your data for debug?
Hello, I also encountered the above problems. This is my bag. How can I solve them? Thank you very much.
https://drive.google.com/file/d/1if5WapgQ524ZZpxdT1di73sIZxgrIq_n/view?usp=sharing


add newrelic gRPC adapter

Add a gRPC mode mixer adapter for New Relic backend.

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by:
To fully approve this pull request, please assign additional approvers.
We suggest the following additional approver: ozevren
If they are not already assigned, you can assign the PR to them by writing /assign @ozevren in a comment when ready.
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

mixer/OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

Hi @sharkaz. Thanks for your PR.
I'm waiting for a istio member to verify that this patch is reasonable to test. If it is, they should reply with /ok-to-test on its own line. Until that is done, I will not automatically test new commits in this PR, but the usual testing commands by org members will still work. Regular contributors should join the org to skip this step.
I understand the commands that are listed here.

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

/ok-to-test

@sharkaz: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/istio-unit-tests.sh
74309dee31463adbb6e6574760de35c5d47cbfdc
link
/test istio-unit-tests

prow/e2e-mixer-no_auth.sh
74309dee31463adbb6e6574760de35c5d47cbfdc
link
/test e2e-mixer-no_auth

prow/e2e-bookInfoTests-v1alpha3.sh
74309dee31463adbb6e6574760de35c5d47cbfdc
link
/test e2e-bookInfo-envoyv2-v1alpha3

prow/istio-pilot-e2e-envoyv2-v1alpha3.sh
74309dee31463adbb6e6574760de35c5d47cbfdc
link
/test istio-pilot-e2e-envoyv2-v1alpha3

prow/e2e-dashboard.sh
74309dee31463adbb6e6574760de35c5d47cbfdc
link
/test e2e-dashboard

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

@sharkaz: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/istio-unit-tests.sh
74309dee31463adbb6e6574760de35c5d47cbfdc
link
/test istio-unit-tests

prow/e2e-mixer-no_auth.sh
74309dee31463adbb6e6574760de35c5d47cbfdc
link
/test e2e-mixer-no_auth

prow/e2e-bookInfoTests-v1alpha3.sh
74309dee31463adbb6e6574760de35c5d47cbfdc
link
/test e2e-bookInfo-envoyv2-v1alpha3

prow/istio-pilot-e2e-envoyv2-v1alpha3.sh
74309dee31463adbb6e6574760de35c5d47cbfdc
link
/test istio-pilot-e2e-envoyv2-v1alpha3

prow/e2e-dashboard.sh
74309dee31463adbb6e6574760de35c5d47cbfdc
link
/test e2e-dashboard

prow/e2e-simpleTests.sh
74309dee31463adbb6e6574760de35c5d47cbfdc
link
/test e2e-simple

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

@sharkaz: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/istio-unit-tests.sh
74309dee31463adbb6e6574760de35c5d47cbfdc
link
/test istio-unit-tests

prow/e2e-mixer-no_auth.sh
74309dee31463adbb6e6574760de35c5d47cbfdc
link
/test e2e-mixer-no_auth

prow/e2e-bookInfoTests-v1alpha3.sh
74309dee31463adbb6e6574760de35c5d47cbfdc
link
/test e2e-bookInfo-envoyv2-v1alpha3

prow/istio-pilot-e2e-envoyv2-v1alpha3.sh
74309dee31463adbb6e6574760de35c5d47cbfdc
link
/test istio-pilot-e2e-envoyv2-v1alpha3

prow/e2e-dashboard.sh
74309dee31463adbb6e6574760de35c5d47cbfdc
link
/test e2e-dashboard

prow/e2e-simpleTests.sh
74309dee31463adbb6e6574760de35c5d47cbfdc
link
/test e2e-simple

prow/istio-pilot-multicluster-e2e.sh
74309dee31463adbb6e6574760de35c5d47cbfdc
link
/test istio-pilot-multicluster-e2e

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

cc @geeknoid for input.  Do we have guidance published for mixer adapter developer on what adapters should istio repo accept with the new gRPC adapter model?

@linsun
We haven't established specific rules about what should and should not be in the Istio repo.
We have a good idea of what should be built in to the Mixer binary. We'll only include the simple adapters like list checker in the binary. All adapters for independent backends will eventually be packaged as external gRPC adapters.
Once we have gRPC adapters, there is very narrow coupling between the adapters and the rest of the Istio project; they can be developed completely independently in separate repos. So where we put the code is no longer a technical issue, it's more about perception/responsibility kind of thing. My inclination is to put all gRPC-based adapters in the contrib repo and allow non-Istio folks to add their own adapters there as well. Each adapter would carry its own license within the repo. Since gRPC adapters can be written in any language, we wouldn't be able to have a standard build process for all these adapters, so we'd need to settle on sharing containers I suppose.
Then there's the issue of which adapters are included in the standard Istio installation files. I don't know how we decide that.
There's how we advertise adapters & templates on istio.io. Do we make a difference between adapters written by the Istio team vs. others?
And finally there's the issue of certification. I really don't know what that means in this context. Given the backends are all different, I'm not clear what we could certify in a systematic way.
The point here is that there is a lot of stuff to figure out to get and end-to-end story worked out.

Agreed, lots of stuff to figure out. Thank you for opening https://github.com/istio/istio/issues/8620.
@geeknoid - I like the idea of having it in istio/contrib repo for gRPC adapters.   It would be great if the istio team can give out guidance on how each adapter in the contrib repo should be built and tested as part of the process of contributing an adapter to the contrib repo.

@linsun my consistent advise to all new adapter authors is, We don’t want any new adapters in the istio repo. New tenmplates are ok, since it is not new code. I do not like the idea of contrib for vendor adapters either, who is going to code review those PRs, what about it rot there, What about CI?
We can already include documentation about these adapters at istio.io.
Grpc adapters enable decoupling and it is best that authors host their own repos.
Even the adapters that are already checked in will move out in due course of time.
There are a few things that need to be clarified, for example some adapters that istio considers part of the core like Prometheus will remain in an istio repo.
Certification process is TBD.

It was decided in the last TOC meeting that vendor adapters should be held externally in vendor repositories. You may use the existing mechanism to include your documentation at isio.io.
Closing this PR.

@mandarjog thanks!  Could you link the existing mechanism here if it exists?  I don't see it in @geeknoid 's proposal either:  https://docs.google.com/document/d/1V5NQ2juGnBS7dNACU6M5VUGSqkItf23P3m8KVBvGnBs/edit
I was under the impression it is not avail yet.

At present you have to open a PR against the istio.io repo and update this line.
https://github.com/istio/istio.io/blob/master/scripts/grab_reference_docs.sh#L19
mtail is working on a better version for import.


[qt5-webengine] Build error C2976: 'absl::lts_20240116::strings_internal::Splitter': too few template arguments

Context:

Windows 10 up-to-date, Visual Studio 2022 up-to-date.

Console trace:

Installing 7/7<EMAIL_ADDRESS>Building<EMAIL_ADDRESS>-- qt5-webengine requires a lot of free disk space (>100GB), ram (>8 GB) and time (>2h per configuration) to be successfully build.
-- As such qt5-webengine is currently experimental.
-- If qt5-webengine fails post build validation please try manually reducing VCPKG_MAX_CONCURRENCY and open up an issue if it still cannot build.
-- If it fails due to post validation the successfully installed files can be found in C:/vcpkg/packages/qt5-webengine_x64-windows
-- and just need to be copied into E:/dk/x64-windows
-- Downloading https://sourceforge.net/projects/gnuwin32/files/gperf/3.0.1/gperf-3.0.1-bin.zip/download -> gperf-3.0.1-bin.zip...
-- Downloading https://www.python.org/ftp/python/2.7.18/python-2.7.18.amd64.msi -> python-2.7.18.amd64.msi...
-- Found external ninja('1.11.0').
CMake Warning at scripts/ports.cmake:167 (message):
Unexpected READ_ACCESS on variable WIN32 in script mode.
This variable name insufficiently expresses whether it refers to the target
system or to the host system.  Use a prefixed variable instead.

Variables providing information about the host:
CMAKE_HOST_
VCPKG_HOST_IS_

Variables providing information about the target:
VCPKG_TARGET_IS_
VCPKG_DETECTED_ (using vcpkg_cmake_get_vars)

Call Stack (most recent call first):
ports/qt5-webengine/portfile.cmake:2147483647 (z_vcpkg_warn_ambiguous_system_variables)
ports/qt5-webengine/portfile.cmake:32 (if)
scripts/ports.cmake:191 (include)
-- Downloading https://download.qt.io/archive/qt/5.15/5.15.14/submodules/qtwebengine-everywhere-opensource-src-5.15.14.tar.xz;https://mirrors.ocf.berkeley.edu/qt/archive/qt/5.15/5.15.14/submodules/qtwebengine-everywhere-opensource-src-5.15.14.tar.xz -> qtwebengine-everywhere-opensource-src-5.15.14.tar.xz...
-- Extracting source E:/d/qtwebengine-everywhere-opensource-src-5.15.14.tar.xz
-- Applying patch common.pri.patch
-- Applying patch gl.patch
-- Applying patch build_1.patch
-- Applying patch build_2.patch
-- Applying patch 0001-Support-ICU-74-in-LazyTextBreakIterator.patch
-- Applying patch workaround-protobuf-issue.patch
-- Applying patch 0001-Fix-jumbo-build-error-due-to-ResolveColor-redefiniti.patch
-- Using source at E:/b/qt5-webengine/src/5.15.14-55225c1f0f.clean
-- Getting CMake variables for x64-windows
-- Using cached msys2-mingw-w64-x86_64-pkgconf-1~2.2.0-1-any.pkg.tar.zst.
-- Using cached msys2-msys2-runtime-3.5.3-3-x86_64.pkg.tar.zst.
-- Using msys root at E:/d/tools/msys2/1e74ca60daa10104
-- Configuring x64-windows-rel
-- Configuring x64-windows-rel done
-- Configuring x64-windows-dbg
-- Configuring x64-windows-dbg done
-- Package build-x64-windows-dbg
CMake Error at scripts/cmake/vcpkg_execute_build_process.cmake:134 (message):
Command failed: E:/d/tools/jom/jom-1_1_4/jom.exe -j 9
Working Directory: E:/b/qt5-webengine/x64-windows-dbg
See logs for more information:
E:\b\qt5-webengine\package-build-x64-windows-dbg-out.log
E:\b\qt5-webengine\package-build-x64-windows-dbg-err.log
Call Stack (most recent call first):
scripts/cmake/vcpkg_build_qmake.cmake:3 (vcpkg_execute_build_process)
scripts/cmake/vcpkg_build_qmake.cmake:76 (z_run_jom_build)
E:/dk/x64-windows/share/qt5/qt_build_submodule.cmake:11 (vcpkg_build_qmake)
E:/dk/x64-windows/share/qt5/qt_submodule_installation.cmake:9 (qt_build_submodule)
ports/qt5-webengine/portfile.cmake:69 (qt_submodule_installation)
scripts/ports.cmake:191 (include)
error: building qt5-webengine:x64-windows failed with: BUILD_FAILED
Elapsed time to handle qt5-webengine:x64-windows: 1.6 h
Please ensure you're using the latest port files with git pull and vcpkg update.
Then check for known issues at:
https://github.com/microsoft/vcpkg/issues?q=is%3Aissue+is%3Aopen+in%3Atitle+qt5-webengine
You can submit a new issue at:
https://github.com/microsoft/vcpkg/issues/new?title=[qt5-webengine]+Build+error+on+x64-windows&body=Copy+issue+body+from+E%3A%2Fdk%2Fvcpkg%2Fissue_body.md
FAILED COMMAND: $VCPKG_DIR/vcpkg ${VCPKG_COMMON_OPTIONS[@]} install qt5-webengine

Errors from log:

E:\b\qt5-webengine\src\5.15.14-55225c1f0f.clean\src\3rdparty\chromium\third_party/abseil-cpp/absl/strings/str_split.h(491): error C2976: 'absl::lts_20240116::strings_internal::Splitter': too few template arguments
E:\dk\x64-windows\include\absl/strings/internal/str_split_internal.h(278): note: see declaration of 'absl::lts_20240116::strings_internal::Splitter'
E:\b\qt5-webengine\src\5.15.14-55225c1f0f.clean\src\3rdparty\chromium\third_party/abseil-cpp/absl/strings/str_split.h(501): error C2976: 'absl::lts_20240116::strings_internal::Splitter': too few template arguments
E:\dk\x64-windows\include\absl/strings/internal/str_split_internal.h(278): note: see declaration of 'absl::lts_20240116::strings_internal::Splitter'
E:\b\qt5-webengine\src\5.15.14-55225c1f0f.clean\src\3rdparty\chromium\net/quiche/common/platform/impl/quiche_text_utils_impl.h(148): error C2440: 'return': cannot convert from 'absl::lts_20240116::strings_internal::Splitter' to 'std::vector<quiche::QuicheStringPiece,std::allocatorquiche::QuicheStringPiece>'
E:\b\qt5-webengine\src\5.15.14-55225c1f0f.clean\src\3rdparty\chromium\net/quiche/common/platform/impl/quiche_text_utils_impl.h(148): note: 'std::vector<quiche::QuicheStringPiece,std::allocatorquiche::QuicheStringPiece>::vector': no overloaded function could convert all the argument types
C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.40.33807\include\vector(650): note: could be 'std::vector<quiche::QuicheStringPiece,std::allocatorquiche::QuicheStringPiece>::vector(std::initializer_listabsl::lts_20240116::string_view,const _Alloc &)'
with
[
_Alloc=std::allocatorquiche::QuicheStringPiece
]
E:\b\qt5-webengine\src\5.15.14-55225c1f0f.clean\src\3rdparty\chromium\net/quiche/common/platform/impl/quiche_text_utils_impl.h(148): note: 'std::vector<quiche::QuicheStringPiece,std::allocatorquiche::QuicheStringPiece>::vector(std::initializer_listabsl::lts_20240116::string_view,const _Alloc &)': cannot convert argument 1 from 'absl::lts_20240116::strings_internal::Splitter' to 'std::initializer_listabsl::lts_20240116::string_view'
with
[
_Alloc=std::allocatorquiche::QuicheStringPiece
]
E:\b\qt5-webengine\src\5.15.14-55225c1f0f.clean\src\3rdparty\chromium\net/quiche/common/platform/impl/quiche_text_utils_impl.h(148): note: No user-defined-conversion operator available that can perform this conversion, or the operator cannot be called
C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.40.33807\include\vector(623): note: or       'std::vector<quiche::QuicheStringPiece,std::allocatorquiche::QuicheStringPiece>::vector(_Iter,_Iter,const _Alloc &)'
with
[
_Alloc=std::allocatorquiche::QuicheStringPiece
]

Logs files are attached to this report.

qt5-webengine-log.zip
Best regards
Gilles Caulier

Please try with latest vcpkg.
Duplicate with #34452

Hi @WangWeiLin-MV,
This issue should be reopened. My PR #37044 incorrectly listed #34452 as fixed. I overlooked at the time that there were two issues in #34452 - the protobuf issue and an abseil-issue. I have now created #39530 to also fix the abseil-cpp issue.

@tsondergaard I just updated VCPKG and try to rebuild qt5webengine : same error....


Disable parallel RPC fetching of events

Sequencial calls should be fast enough and will prevent hanging the nodes

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

2 of 2 (100.0%)  changed or added relevant lines in 2 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage decreased (-0.02%) to 88.603%

Totals

Change from base Build<PHONE_NUMBER>:
-0.02%

Covered Lines:
5947

Relevant Lines:
6712

💛  - Coveralls


Error for loading user_emb.pkl

Great work! But there is an error I encountered when running your code XRec\explainer\main.py, it seems that there is a problem for pickle.load() the file user_emb.pkl. The python version I used is python 3.11.8 and requirements are the same as the listed in requirements.txt.

Thank you for your interest in XRec! The issue was related to Git LFS, and I have resolved it by replacing LFS-tracked files with actual files. You can now re-download this repo. Thanks for bringing this to my attention.

Thank you for your interest in XRec! The issue was related to Git LFS, and I have resolved it by replacing LFS-tracked files with actual files. You can now re-download this repo. Thanks for bringing this to my attention.

Thanks a lot! It really helps.


Do Monitoring in a background process

@kanhaiyanathani How about this issue? Here, the problem is that the monitoring by the UpTrain framework is happening on the main thread (i.e., the thread used to make model predictions). Instead, we want the model predictions to happen on the main thread and monitoring to move to a background thread invisible to the user.

yes @vipgupta this also looks interesting, can you please help me in finding the file

where we are executing the monitoring function in the main thread
Any example file where we are running something on a background thread

Monitoring is currently always on the main thread (when we do framework.log, monitoring happens automatically on the main thread). Example, see the for loop in block 11: https://github.com/uptrain-ai/uptrain/blob/main/examples/2_cyber_attack_classification/uptrain_concept_drift.ipynb
I don't think we currently have any such case. @sourabhagr am I missing something?

Yes, unfortunately, we don't an example where a background thread is implemented.
Essentially what needs to be done is below:

Block 11 in the file shared by Vipul, we have:
# Log model inputs and outputs to monitor concept drift
ids = framework.log(inputs=inputs, outputs=preds)
As soon as the data is logged, the framework saves it in a database and does all the analysis (data drift checks, edge cases, etc.)
One way to do this could be - we have a background thread running. Whenever we do  framework.log, it pushes the inputs to be logged to that background thread which in turn saves the data to DB and run all the checks.

Key benefit is that it would decouple observability from monitoring, resulting in faster and more reliable systems

Okay I can see here: https://github.com/uptrain-ai/uptrain/blob/c4b0b107850c6a13f0d683f9f872459a3d5567a3/uptrain/core/classes/framework.py#L382
This function does many things like data anomaly checks, smart(edge) data addition for retraining and at last retraining model with smart data

Basically requirement is to run this function in a background process, right?
now for multiple calls to framework.log(), should we call multiple process OR run in the same(single) process sequentially?
Am thinking of using multiprocessing package, do you want me to try any other package first?
Is there any existing driver code in this repo from where I can benchmark latency(before vs after)?

Hello @vipgupta, am trying to run test files
can you please provide the cmd to run setup.py?

Hi @kanhaiyanathani , to install uptrain package from local changes, run python setup.py install
To run the test files, go to the tests folder and run pytest .

Answers to your previous questions:

Yes!
That would be your choice. We just need to make sure that any unused threads are not lurking around and taking up valuable compute.
Again, your choice. I am not aware of the state-of-the-art here.
Write now we do not have any latency benchmarks. It's a work in progress :)

Hi @kanhaiyanathani , to install uptrain package from local changes, run python setup.py install
To run the test files, go to the tests folder and run pytest .

am getting below errors when I ran the python setup.py install cmd:
Compiling sklearn/utils/_vector_sentinel.pyx because it changed.
Compiling sklearn/utils/_isfinite.pyx because it changed.
Traceback (most recent call last):
  File "/Library/Developer/CommandLineTools/Library/Frameworks/Python3.framework/Versions/3.9/lib/python3.9/site-packages/setuptools/sandbox.py", line 156, in save_modules
    yield saved
  File "/Library/Developer/CommandLineTools/Library/Frameworks/Python3.framework/Versions/3.9/lib/python3.9/site-packages/setuptools/sandbox.py", line 198, in setup_context
    yield
  File "/Library/Developer/CommandLineTools/Library/Frameworks/Python3.framework/Versions/3.9/lib/python3.9/site-packages/setuptools/sandbox.py", line 259, in run_setup
    _execfile(setup_script, ns)
  File "/Library/Developer/CommandLineTools/Library/Frameworks/Python3.framework/Versions/3.9/lib/python3.9/site-packages/setuptools/sandbox.py", line 46, in _execfile
    exec(code, globals, locals)
  File "/tmp/easy_install-zo3n8i9w/scikit-learn-1.2.1/setup.py", line 669, in <module>
  File "/tmp/easy_install-zo3n8i9w/scikit-learn-1.2.1/setup.py", line 663, in setup_package
  File "/tmp/easy_install-zo3n8i9w/scikit-learn-1.2.1/setup.py", line 597, in configure_extension_modules
  File "/tmp/easy_install-zo3n8i9w/scikit-learn-1.2.1/sklearn/_build_utils/__init__.py", line 98, in cythonize_extensions
  File "/Users/kanhaiyanathani/Library/Python/3.9/lib/python/site-packages/Cython/Build/Dependencies.py", line 1088, in cythonize
    pool = multiprocessing.Pool(
  File "/Library/Developer/CommandLineTools/Library/Frameworks/Python3.framework/Versions/3.9/lib/python3.9/multiprocessing/context.py", line 119, in Pool
    return Pool(processes, initializer, initargs, maxtasksperchild,
  File "/Library/Developer/CommandLineTools/Library/Frameworks/Python3.framework/Versions/3.9/lib/python3.9/multiprocessing/pool.py", line 212, in __init__
    self._repopulate_pool()
  File "/Library/Developer/CommandLineTools/Library/Frameworks/Python3.framework/Versions/3.9/lib/python3.9/multiprocessing/pool.py", line 303, in _repopulate_pool
    return self._repopulate_pool_static(self._ctx, self.Process,
  File "/Library/Developer/CommandLineTools/Library/Frameworks/Python3.framework/Versions/3.9/lib/python3.9/multiprocessing/pool.py", line 326, in _repopulate_pool_static
    w.start()
  File "/Library/Developer/CommandLineTools/Library/Frameworks/Python3.framework/Versions/3.9/lib/python3.9/multiprocessing/process.py", line 121, in start
    self._popen = self._Popen(self)
  File "/Library/Developer/CommandLineTools/Library/Frameworks/Python3.framework/Versions/3.9/lib/python3.9/multiprocessing/context.py", line 284, in _Popen
    return Popen(process_obj)
  File "/Library/Developer/CommandLineTools/Library/Frameworks/Python3.framework/Versions/3.9/lib/python3.9/multiprocessing/popen_spawn_posix.py", line 32, in __init__
    super().__init__(process_obj)
  File "/Library/Developer/CommandLineTools/Library/Frameworks/Python3.framework/Versions/3.9/lib/python3.9/multiprocessing/popen_fork.py", line 19, in __init__
    self._launch(process_obj)
  File "/Library/Developer/CommandLineTools/Library/Frameworks/Python3.framework/Versions/3.9/lib/python3.9/multiprocessing/popen_spawn_posix.py", line 61, in _launch
    with open(parent_w, 'wb', closefd=False) as f:
  File "/Library/Developer/CommandLineTools/Library/Frameworks/Python3.framework/Versions/3.9/lib/python3.9/site-packages/setuptools/sandbox.py", line 453, in _open
    if mode not in ('r', 'rt', 'rb', 'rU', 'U') and not self._ok(path):
  File "/Library/Developer/CommandLineTools/Library/Frameworks/Python3.framework/Versions/3.9/lib/python3.9/site-packages/setuptools/sandbox.py", line 464, in _ok
    realpath = os.path.normcase(os.path.realpath(path))
  File "/Library/Developer/CommandLineTools/Library/Frameworks/Python3.framework/Versions/3.9/lib/python3.9/posixpath.py", line 390, in realpath
    filename = os.fspath(filename)
TypeError: expected str, bytes or os.PathLike object, not int

During handling of the above exception, another exception occurred:

Traceback (most recent call last):

It seems like this is some error in the multiprocessing module you added?


chore: release main

:robot: I have created a release beep boop
baggie: 2.2.4
2.2.4 (2023-11-16)
Bug Fixes

Add missing devdependencies (abde0fc)

core: 1.5.2
1.5.2 (2023-11-16)
Bug Fixes

Add missing devdependencies (abde0fc)

This PR was generated with Release Please. See documentation.

:robot: Release is at https://github.com/saxofonsolo/baggie/releases/tag/baggie-v2.2.4 :sunflower:

:robot: Release is at https://github.com/saxofonsolo/baggie/releases/tag/core-v1.5.2 :sunflower:


Trying to add Google and LWA authentication

I've set up Google and Login With Amazon integration with my Cognito user pool and now I'm trying to get these identity providers reflected in the UI of the sample code to verify that everything is working as expected.  I've added Google with the below code, and while a button shows up in the UI after I execute this code when I click on the button it just seem to post-back rather than re-directing to Google (as indicated here).  Is this the proper way to add additional providers or should I be adding login buttons manually as described here in the LWA docs?
services.AddAuthentication().AddGoogle(options =>                 {                     options.ClientId = Configuration["auth:google:clientid"];                     options.ClientSecret = Configuration["auth:google:clientsecret"];                 });
I'm sure I'm doing something stupid here but any help pointing me in the right direction would be appreciated.

The services.AddAuthentication code should be the right approach.  I need to look into this more, but I think this library is still lacking the support for adding third party authentication.  I'll try to follow up on this soon.

Is there anything that I can do to help get this issue resolved?

+1

I'd really like to get this going?  Can you provide some guidance and perhaps I can make a PR?

?

Hi @slackjawedyokel,
Good afternoon.
I was going through the issue backlog and came across this guidance question. Following articles might be helpful in setting up Google as identity provider using Cognito:

https://developerhandbook.com/aws/how-to-use-aws-cognito-with-net-core/

How do I set up Google as a federated identity provider in an Amazon Cognito user pool?

Please let me know if this helps and if this issue could be closed.
Thanks,
Ashish


Shutdown Implementation

The shutdown methods are not implemented. They are all just printing out the following right now:
**** Requester.shutdown => this should actually do something

Fixed via #107


[iOS] CocoaPods could not find compatible versions for pod "GoogleMaps"

Bug
[!] CocoaPods could not find compatible versions for pod "GoogleMaps":
  In snapshot (Podfile.lock):
    GoogleMaps (= 3.1.0)

  In Podfile:
    GoogleMaps

    react-native-google-maps (from `../node_modules/react-native-maps`) was resolved to 0.24.2, which depends on
      GoogleMaps (= 2.5.0)

It seems like you've changed the constraints of dependency `GoogleMaps` inside your development pod `react-native-google-maps`.
You should run `pod update GoogleMaps` to apply changes you've made.

Environment info
    "react": "16.8.3",
    "react-native": "0.59.9",
    "react-native-maps": "^0.24.2",

React native info output:
React Native Environment Info:
   System:
     OS: macOS 10.14.5
     CPU: (8) x64 Intel(R) Core(TM) i7-4770HQ CPU @ 2.20GHz
     Memory: 248.46 MB / 16.00 GB
     Shell: 3.2.57 - /bin/bash
   Binaries:
     Node: 10.15.0 - /usr/local/bin/node
     Yarn: 1.13.0 - /usr/local/bin/yarn
     npm: 6.9.0 - /usr/local/bin/npm
     Watchman: 4.9.0 - /usr/local/bin/watchman
   SDKs:
     iOS SDK:
       Platforms: iOS 12.2, macOS 10.14, tvOS 12.2, watchOS 5.2
     Android SDK:
       API Levels: 23, 24, 25, 26, 27, 28
       Build Tools: 26.0.1, 26.0.2, 27.0.3, 28.0.2, 28.0.3
       System Images: android-28 | Google APIs Intel x86 Atom, android-28 | Google Play Intel x86 Atom_64
   IDEs:
     Android Studio: 3.3 AI-182.5<IP_ADDRESS>99772
     Xcode: 10.2.1/10E1001 - /usr/bin/xcodebuild
   npmPackages:
     react: 16.8.3 => 16.8.3
     react-native: 0.59.9 => 0.59.9
   npmGlobalPackages:
     react-native-cli: 2.0.1
     react-native-git-upgrade: 0.2.7
     react-native-rename: 2.4.1

Library version: 0.24.2
Steps To Reproduce

Describe what you expected to happen:

npm install --save react-native-permissions

react-native link react-native-permissions

pod install

Quick solution
Update version number from s.dependency 'GoogleMaps', '2.5.0' to s.dependency 'GoogleMaps', '3.1.0' in node_modules/react-native-maps/react-native-google-maps-podspec

Duplicate https://github.com/react-native-community/react-native-maps/issues/2909


Github action failed to pull environment: Error: auth headless is missing the following inputParams facebookAppIdUserPool, facebookAppSecretUserPool, googleAppIdUserPool, googleAppSecretUserPool

Note: If your issue/bug is regarding the AWS Amplify Console service, please log it in the
Amplify Console GitHub Issue Tracker

Describe the bug
My Github Action is failing to pull the environment backend
It is failing on the following command:
    # Setup Amplify
    - name: configure amplify
      uses<EMAIL_ADDRESS>      with:
        amplify_command: configure
        amplify_env: dev
      env:
        AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
        AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
        AWS_REGION: us-xxxx

This command is giving the output:
amplify version Scanning for plugins...
Plugin scan successful
4.23.0
found existing environment dev
- Fetching updates to backend environment: dev from the cloud.
✔ Successfully pulled backend environment dev from the cloud.
✖ There was an error pulling the backend environment dev.
auth headless is missing the following inputParams facebookAppIdUserPool, facebookAppSecretUserPool, googleAppIdUserPool, googleAppSecretUserPool
Error: auth headless is missing the following inputParams facebookAppIdUserPool, facebookAppSecretUserPool, googleAppIdUserPool, googleAppSecretUserPool
    at updateConfigOnEnvInit (/usr/local/lib/node_modules/@aws-amplify/cli/node_modules/amplify-category-auth/provider-utils/awscloudformation/index.js:370:15)
    at /usr/local/lib/node_modules/@aws-amplify/cli/node_modules/amplify-category-auth/index.js:240:28
    at /usr/local/lib/node_modules/@aws-amplify/cli/node_modules/promise-sequential/index.js:16:18
    at process._tickCallback (internal/process/next_tick.js:68:7)

There is a similar issue with the Amplify Console, however, there is a workaround with a custom version of amplifypush: https://github.com/aws-amplify/amplify-console/issues/206
But it doesn't seem to be this case, I imagine that I should pass it to the action, but it doesn't have any documentation regarding it: https://github.com/marketplace/actions/amplify-cli-action
I could also do it manually, but then I'd need to change all my workflow.
There are 2 changes that I have done that could have been the culprit of this error:

Updated amplify-cli to 4.22.0, but it seems that the version running on Github actions is different anyway.
Added more redirect urls to authentication, using a similar solution as the last one listed here

When I run pull/push locally it works fine
I also have seen a recent commit that might be related: https://github.com/aws-amplify/amplify-cli/pull/4684
But I'm not sure.
Looking at the code of the action: https://github.com/ambientlight/amplify-cli-action/blob/master/entrypoint.sh
It looks like it might be needed to add smt similar to what was added to myamplifypush
Something like:
AUTHCONFIG="{\
\"googleAppIdUserPool\":\"${GOOGLE_CLIENT_ID}\",\
\"googleAppSecretUserPool\":\"${GOOGLE_CLIENT_SECRET}\",\
\"facebookAppIdUserPool\":\"${FACEBOOK_APP_ID}\",\
\"facebookAppSecretUserPool\":\"${FACEBOOK_APP_SECRET}\"\
}"

But again, I'm not sure, and I wonder why this error started happening only now?
I thought about also removing the redirect URLs I have added, but the amplify-cli doesn't give an option to remove them, only Add/Edit
Amplify CLI Version
You can use amplify -v to check the amplify cli version on your system
4.22.0
To Reproduce
Steps to reproduce the behavior or terminal output if applicable

Have a project with authentication and social logins (Facebook/Google)
Add different redirect URLs (dev/staging/production) for the oAuth workflow
Create a workflow on Github Action, using<EMAIL_ADDRESS>to pull your environment
Commit/push your changes to Github

Expected behavior
The Github action should run the pull successfully, update the backend and continue to run
Screenshots
If applicable, add screenshots to help explain your problem.
Desktop (please complete the following information):

OS: [e.g. Mac/Windows/Ubuntu] Mac
Node Version. You can use node -v to check the node version on your system
v13.13.0

Additional context
If I pull/push it locally it works fine

Hi @danielfranca, the GitHub action you mentioned is created by the community. This is not something Amplify supports.

@jhockett Thanks for replying
I understand that it is not an official action, but I'm posting to see if it might be something simple related to some recent breaking change on amplify-cli


Highlight that tokens not confirmed yet

Minor one: it's not clear that I can't select tokens because they have not been confirmed yet (e.g. write "(unconfirmed)" near token name)

There's clear indication now for unconfirmed tokens.


Fix (typo) bug in AGAST scoring routines.

This small patch fix an obvious bug in AGAST scoring routine. The bug is due to accidental typo during transcript. AGAST is now verified and produce 1:1 same scoring as the original code.

:+1:


Update docs for dbt-trino v1.2.1

Description & motivation
Update docs for dbt-trino v1.2.1
To-do before merge

Prerelease docs
If this change is related to functionality in a prerelease version of dbt (delete if not applicable):

[ ] I've added versioning components, as described in "Versioning Docs"
[ ] I've added a note to the prerelease version's Migration Guide

Checklist
If you added new pages (delete if not applicable):

[ ] The page has been added to website/sidebars.js
[ ] The new page has a unique filename

If you removed existing pages (delete if not applicable):

[ ] The page has been removed from website/sidebars.js
[ ] An entry has been added to _redirects

@amychen1776 please take a look :) thanks!

@dataders I've addressed the comments.


Request: Ability to blacklist planned items

PlanBuild adds "planned" pieces to the game. It looks like the piece names are suffixed with _planned.
Is there any way we can blacklist all of these?
Or add the ability to use a wildcard in the blacklist.txt (*_planned)

Good suggestion to disable the PlanBuild pieces, they are really cluttering without any real benefit.
This is now added in the latest VNEI update (0.8.3).
For the blacklist, I'm against wildcards as it only makes the detection code more complex which I'm trying to avoid. Wildcards also may unnoticeable disables items when not used carefully.
So I'd say it's better do to this in code, like now, where it can be more granular filtered then just by name.

Makes sense to me! I appreciate the fast response on this.
We just started using VNEI on our server and love it, thanks mate


market.status_today doesn't return the market status in the last 24 hours

Hello all,
First of all, we appreciate you open sourcing this highly valuable project.
market.status_today doesn't return the market status in the last 24 hours, i.e. market.status with 24 hours as the parameter.
Below is an example demonstration:
curl $VIABTC_EXCHANGE_SERVER_URL -d '{"method": "market.status", "params": ["VEOETH", 864
0], "id": 151668174}'
{
    "error": null,
    "result": {
        "deal": "4.3969313012",
        "low": "0.46",
        "period": 86400,
        "volume": "9.03072022",
        "last": "0.49",
        "open": "0.46",
        "close": "0.49",
        "high": "0.55"
    },
    "id": 151668174

curl $VIABTC_EXCHANGE_SERVER_URL -d '{"method": "market.status_today", "params": ["VEOETH"
], "id": 151668174}'
{
    "error": null,
    "result": {
        "open": "0.49",
        "volume": "9.03072022",
        "last": "0.49",
        "high": "0.49",
        "deal": "4.3969313012",
        "low": "0.49"
    },
    "id": 151668174
}

We could help fixing this issue later on, after discussing with you.

应该是 86400，你少写一个0吧？

I don't understand Chinese, I tried to learn though :)

86400 is the number of seconds in a day, for most of the days.

Hello, i have same issue, did you solve the problem?


Dead repository ?

Is the repo dead ?

No but there certainly has been little movement. I would be happy to help to keep things moving.
There are a number of key features we need but have been holding of forking as long as possible.

@DelfsEngineering why do you answer "no" I wonder? The last commit is over 2 years old now. How can this be anything but a dead repository then?
I had big hopes for v3 and actually used it for a while but I'd rather move to something that is actively maintained

I mean there is little commit activity, true, but it is still in demand and at the core of my app.
Personally I was hoping the maintainers would put out a request for others to help.
If not we will fork ourselves.
What are your suggestions @vesper8 ?

I have no desire to fork and maintain this package. It's true that it is functional, specially the v3 branch. I think this project is very much dead though.. best to move on to something else.. or just accept it and keep using it.
I've identified a few possible alternatives.
https://github.com/jarvelov/vue-form-json-schema <-- this one seems the most promising IMO
https://github.com/ncform/ncform
https://github.com/GavinZhuLei/vue-form-making
https://github.com/JakHuang/form-generator
https://github.com/woai3c/vue-form-maker
https://github.com/formio/formio.js

No need to fork. If someone wants write access to this repo, and has a history of good work, then I think we can make that happen.

@icebob Thoughts?

Currently there is no active maintainer for this project.


Correction for raw affiliation Junia, Université de Liège, Joint Research Unit, 1158 BioEcoAgro, 59014, Lille, France

Correction needed for raw affiliation Junia, Université de Liège, Joint Research Unit, 1158 BioEcoAgro, 59014, Lille, France
raw_affiliation_name: Junia, Université de Liège, Joint Research Unit, 1158 BioEcoAgro, 59014, Lille, France
new_rors: 032v67m28
previous_rors:
works_examples: W4391277608
contact: 97ca6cd9edc4e7f78a0508312d26b9e0:2a114707eb7f8d873eb36c58826403a6 @ u-picardie.fr

This issue was accepted and ingested by the OpenAlex team on 2024-10-09. The new affiliations should be visible within the next 7 days.


Change sonic-vpp VM interface initialization behavior

When sonic-vpp VM is first booted, user needs to run sonic_vpp_cfg.sh to initialize data ports to the list of interfaces. This step is an overhead to bringup the system. It further complicates the test automation and adds more work to run sonic-mgmt on sonic-vpp platform.
The proposal is making use of config-setup service in sonic to generate the necessary configuration when sonic is booted the first time.
The list of interfaces which is passed via argument to sonic_vpp_cfg.sh will be constructed on demand. eth0 is reserved for management interface. Interfaces from eth1 to eth32, if they are configured when the VM is created, will be used for data ports.

Fixed by PR 106


feat: Make private method and private events more hidden

:tada: This PR is included in version 3.2.0-next.1 :tada:
The release is available on:

npm package (@next dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


docs(compute-samples): added samples and test for windows os image

Added test and samples for windows os image creation

Blocked by https://github.com/GoogleCloudPlatform/java-docs-samples/pull/7071


Adds Refine Admin documentation

Updates the documentation to add configuration information for Refine.

Codecov Report

Merging #585 (4235e63) into main (dc0ac97) will decrease coverage by 0.03%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##             main     #585      +/-   ##
==========================================
- Coverage   86.74%   86.70%   -0.04%
==========================================
  Files         116      116
  Lines        5001     5001
  Branches      793      793
==========================================
- Hits         4338     4336       -2
- Misses        548      551       +3
+ Partials      115      114       -1

Impacted Files
Coverage Δ

ecommerce/discounts.py
78.94% <0.00%> (-3.51%)
:arrow_down:

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update dc0ac97...4235e63. Read the comment docs.

Tested the last round of documentation changes from https://github.com/mitodl/mitxonline/pull/585/commits/3c4c0dfd5488dff49d7088f9497084f8d5117091 in a fresh copy of the app so should have gotten everything this time - please let me know if I've missed anything.

@jkachel I am still getting the error while logged in, I have these configs in .env file.

.env

Oauth Application

Please correct me, If I am missing something else that required to login there ?


Recommended way to save checkpoints from internal compiled model

Description & Motivation
I am compiling the self.model in my LightningModule (compiling the whole LightningModule had some issues for me). I do that in __init__ like
class LightningModel(L.LightningModule):
    def __init__(self, model_config: dict, compile=False):
        super().__init__()
        self.model = _get_model(model_config) # convenience for getting a nn.Module
        if compile:
            self.model = torch.compile(self.model)

        #....continue as usual

When saving checkpoints, the state_dict will have prefixes model._orig_mod, compared to the uncompiled model.  This means I cannot use LightningModel.load_from_checkpoint(checkpoint_path, compile=False) after training with compilation.
Pitch
Compiling self.model internally is recommended in https://lightning.ai/docs/pytorch/latest/advanced/compile.html#limitations.
I tried keeping a reference self.uncompiled_model = self.model in __init__ before compiling, this allows me to save the weights without the prefix, but effectively doubles the checkpoint size. It would be great to have some way to internally compile the model for training, while still having checkpoint saving and loading that works for compiled and uncompiled models.
Is there a user accessibile way to modify load_from_checkpoint to handle conditionally removing the compilation prefix?
Alternatives
No response
Additional context
No response
cc @borda

Just add a hook to your lightningmodule:
def on_save_checkpoint(self, checkpoint):
    # pop the keys you are not interested in
    sd = checkpoint["state_dict"]
    names = list(sd.keys())
    [sd.pop(name) for name in names if "_orig_mod" in name]

And load the model as follows:
incompatible_keys = model.load_state_dict(
    torch.load(ckpt_path, weights_only=True)["state_dict"],
    strict=False,
)

You can also define an on_load_checkpoint hook to use the pl lightning native method, but I find this simpler for my usecase.


Edits to the report

I ran the report through Grammarly and fixed some rendering issues. Also I added the observed vs predicted plot to the report.

looks good to me @Anahita97


New release: Version 0.7.0

Release Checklist
These scripts must pass:

[x] npm run ci:jest-coverage (to fix: add / improve tests!)
[x] npm run ci:npm-outdated (to fix: npx ncu -u, npm install, npm update)
[x] npm run ci:npm-audit (to fix: npx resolve-audit)
[x] npm run frontend:build (to fix: address issues)
[x] npm run docs:build (to fix: address issues)

Manual browser testing:

[x] Chrome
[x] Firefox

Manual browser testing - feature list:

[x] collision directory report
[x] collision tabulation report

Before deployment:

[x] CHANGELOG.md is updated to include details of new release
[x] version bumped to 0.7.0 in package.json using npm version minor
[x] above changes reviewed and merged to master

Deployment:

[x] push to CodeCommit succeeds
[x] deployment to AWS succeeds
[x] #prj_move notified: MOVE back up after new version deployment

Deployed - closing.


[bug]: blinded forwarding: hop encoding / payload decoding inconsistency

To support blinded forwarding in the future, https://github.com/lightningnetwork/lnd/commit/940b491051d2f61225424551e52d8f2118e3d2cf started omitting the amount and timelock TLVs in Hop.PackHopPayload when those values are 0.  However, no matching change was made to the payload decoding logic in NewPayloadFromReader and ValidateParsedPayloadTypes.  As a result, onion payloads along a blinded route will fail to decode due to missing amount or timelock TLVs.
Although blinded forwarding is still a WIP, it would be good to fix this inconsistency at least for the sake of our FuzzPayload test, which currently fails with the following input:
$ cd htlcswitch/hop
$ cat testdata/fuzz/FuzzPayload/2892b85ab66a5aec6ae8f500e357b887f37b1041fd71186d4e541127e01e49b0
go test fuzz v1
[]byte("\x02\x00\x04\x0200")

$ go test -run=FuzzPayload/2892b85ab66a5aec6ae8f500e357b887f37b1041fd71186d4e541127e01e49b0
--- FAIL: FuzzPayload (0.00s)
    --- FAIL: FuzzPayload/2892b85ab66a5aec6ae8f500e357b887f37b1041fd71186d4e541127e01e49b0 (0.00s)
        fuzz_test.go:122:
                Error Trace:    htlcswitch/hop/fuzz_test.go:122

                Error:          Received unexpected error:
                                onion payload for final hop omitted record with type 2
                Test:           FuzzPayload/2892b85ab66a5aec6ae8f500e357b887f37b1041fd71186d4e541127e01e49b0
FAIL
exit status 1
FAIL    github.com/lightningnetwork/lnd/htlcswitch/hop  0.007s

CC: @carlaKC

However, no matching change was made to the payload decoding logic in NewPayloadFromReader and ValidateParsedPayloadTypes

Oo, nice fuzzer catch! Since we're only making those payloads (not receiving them yet) the validation hasn't been updated.

Although blinded forwarding is still a https://github.com/lightningnetwork/lnd/issues/7298, it would be good to fix this inconsistency at least for the sake of our FuzzPayload test, which currently fails with the following input:

I'll lift a commit out of #7298 to allow these payloads in the meantime!


0.1.108

Resolves #963 #993

I really like the download db option! I needed to manually copy this file from my k8s pod whenever I needed a backup.
Maybe we could also add a import feature.

Wooo Playground! 🛝


GitHub Daily Activity Checker

This extension helps you monitor GitHub users' daily activity by distinguishing between real and fake contributions. It checks the activity logs of specified GitHub users and analyzes the nature of their contributions to provide insights into their actual engagement with projects.

@Sulagna-Dutta-Roy please assign me this issue

@Sulagna-Dutta-Roy please assign this to me i am GSSOC'24 contributor with 2+ years of experience in development

@Sulagna-Dutta-Roy Can you give me level 3 for this issue as this extension can find GitHub activity as well as fake and real contributions using the only GitHub username I have worked hard on this


Not working anymore with newer pymodbus, please upgrade to 3.6.6 (the version HA is using)

First a big thanks for this component.

Version of the custom_component
 0.8.0, not using hacs, I have installed the current master branch at commit 513f66264fb7b6c49a6e283bc2c579977d9340f7
Configuration

no yaml config used, one pump configured per config flow
Navigator 2.0, SW: 20.23-58

Describe the bug
Home Assistant currently pins pymodbus==3.6.6
https://github.com/home-assistant/core/blob/2024.3.3/homeassistant/components/modbus/manifest.json
You have pymodbus==3.6.4 in https://github.com/kodebach/hacs-idm-heatpump/blob/v0.8.0/requirements.txt
but still pymodbus==3.5.0 in https://github.com/kodebach/hacs-idm-heatpump/blob/v0.8.0/custom_components/idm_heatpump/manifest.json
so actually idm-heatpump tries to load 3.5.0
After adjusting the version in manifest.json, it loads 3.6.6, and pulls all values from the pump exactly one time, but then all entities from the pump are not updated anymore, they stay at the values from the first run.
Debug log

2024-03-23 08:24:10.824 ERROR (SyncWorker_0) [homeassistant.util.package] Unable to install package pymodbus==3.5.0

after adjusting the version in manifest.json, it loads, and pulls all values from the pump exactly one time, but then:
2024-03-23 08:25:45.025 ERROR (MainThread) [homeassistant] Error doing job: Exception in callback _SelectorSocketTransport._call_connection_lost(None)
Traceback (most recent call last):
  File "/usr/lib/python3.12/asyncio/events.py", line 88, in _run
    self._context.run(self._callback, *self._args)
  File "/usr/lib/python3.12/asyncio/selector_events.py", line 1191, in _call_connection_lost
    super()._call_connection_lost(exc)
  File "/usr/lib/python3.12/asyncio/selector_events.py", line 911, in _call_connection_lost
    self._protocol.connection_lost(exc)
  File "/usr/lib/python3.12/site-packages/pymodbus/transport/transport.py", line 288, in connection_lost
    self.close(intern=True)
TypeError: AsyncModbusTcpClient.close() got an unexpected keyword argument 'intern'

Since 0.8.0, it loads all data from the heatpump after a restart. But then, after a couple of minutes (perhaps this is the next pull):
2024-03-23 08:31:25.557 WARNING (MainThread) [asyncio] socket.send() raised exception.
2024-03-23 08:31:25.557 WARNING (MainThread) [asyncio] socket.send() raised exception.
2024-03-23 08:31:25.557 WARNING (MainThread) [asyncio] socket.send() raised exception.
2024-03-23 08:31:25.557 WARNING (MainThread) [asyncio] socket.send() raised exception.
2024-03-23 08:31:25.557 WARNING (MainThread) [asyncio] socket.send() raised exception.
2024-03-23 08:31:25.559 WARNING (MainThread) [asyncio] socket.send() raised exception.
2024-03-23 08:31:25.559 WARNING (MainThread) [asyncio] socket.send() raised exception.
2024-03-23 08:31:25.559 WARNING (MainThread) [asyncio] socket.send() raised exception.
2024-03-23 08:31:25.559 WARNING (MainThread) [asyncio] socket.send() raised exception.
2024-03-23 08:31:25.559 WARNING (MainThread) [asyncio] socket.send() raised exception.

(several lines more here....)

2024-03-23 08:31:25.559 WARNING (MainThread) [asyncio] socket.send() raised exception.
2024-03-23 08:31:25.560 WARNING (MainThread) [asyncio] socket.send() raised exception.
2024-03-23 08:31:25.560 WARNING (MainThread) [asyncio] socket.send() raised exception.
2024-03-23 08:31:25.560 WARNING (MainThread) [asyncio] socket.send() raised exception.
2024-03-23 08:31:25.560 WARNING (MainThread) [asyncio] socket.send() raised exception.
2024-03-23 08:31:25.560 WARNING (MainThread) [asyncio] socket.send() raised exception.
2024-03-23 08:31:25.560 WARNING (MainThread) [asyncio] socket.send() raised exception.
2024-03-23 08:31:25.560 WARNING (MainThread) [asyncio] socket.send() raised exception.
2024-03-23 08:31:28.561 DEBUG (MainThread) [custom_components.idm_heatpump] got groups
2024-03-23 08:31:28.561 ERROR (MainThread) [custom_components.idm_heatpump] Unexpected error fetching idm_heatpump data: AsyncModbusTcpClient.close() got an unexpected keyword argument 'intern'
Traceback (most recent call last):
  File "/usr/lib/python3.12/site-packages/homeassistant/helpers/update_coordinator.py", line 318, in _async_refresh
    self.data = await self._async_update_data()
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/etc/homeassistant/custom_components/idm_heatpump/coordinator.py", line 49, in _async_update_data
    raise exception
  File "/etc/homeassistant/custom_components/idm_heatpump/coordinator.py", line 41, in _async_update_data
    has_error, data = await self.heatpump.async_get_data()
                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/etc/homeassistant/custom_components/idm_heatpump/idm_heatpump.py", line 303, in async_get_data
    raise next(e for e in groups if isinstance(e, Exception)) or Exception(
  File "/etc/homeassistant/custom_components/idm_heatpump/idm_heatpump.py", line 147, in _fetch_sensors
    result = await self._fetch_retry(group)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/etc/homeassistant/custom_components/idm_heatpump/idm_heatpump.py", line 133, in _fetch_retry
    return await self._fetch_registers(group)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/etc/homeassistant/custom_components/idm_heatpump/idm_heatpump.py", line 125, in _fetch_registers
    return await self.client.read_input_registers(
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.12/site-packages/pymodbus/client/base.py", line 179, in async_execute
    self.close(reconnect=True)
  File "/usr/lib/python3.12/site-packages/pymodbus/client/tcp.py", line 92, in close
    super().close(reconnect=reconnect)
  File "/usr/lib/python3.12/site-packages/pymodbus/client/base.py", line 130, in close
    self.connection_lost(asyncio.TimeoutError("Server not responding"))
  File "/usr/lib/python3.12/site-packages/pymodbus/transport/transport.py", line 288, in connection_lost
    self.close(intern=True)
TypeError: AsyncModbusTcpClient.close() got an unexpected keyword argument 'intern'
2024-03-23 08:31:28.574 DEBUG (MainThread) [custom_components.idm_heatpump] Finished fetching idm_heatpump data in 12.033 seconds (success: False)

All entities from the pump are not updated anymore, they stay at the initially loaded values.
And at this opportunity another question: Is there a reason that version is always "0.0.0" in manifest.json?

Imho, this looks related to https://github.com/pymodbus-dev/pymodbus/pull/2098/files.

confirm, after upgrading to pymodbus 3.6.6 everything works again (Homeassistant-2024.3.3).

Thanks for the detailed bug report and thorough investigation. I couldn't reproduce the issue yet, but I merged #95, which hopefully fixes this. Please confirm the issue is fixed on master, so I can publish a new release.

I have installed the current master branch

While the master branch should work, I generally wouldn't recommend that. If you don't want to use HACS, I would still recommend you stick to the tagged versions.

Is there a reason that version is always "0.0.0" in manifest.json?

AFAIK the field is more or less unused by Home Assistant itself (there seems to be some code related to blocking integrations that entirely break Home Assistant, but nothing else). So for development and testing using 0.0.0 works fine.  And constantly updating the version would create useless noise in the git history.
For releases, there is a GitHub Actions workflow that sets the version field based on the release tag for use in HACS.
If you want to have the proper version in the manifest.json, you can download the idm_heatpump.zip file from the GitHub Releases like HACS does. The direct link should always be https://github.com/kodebach/hacs-idm-heatpump/releases/download/[version]/idm_heatpump.zip where [version] is e.g. v0.8.0.

Yep, thanks. I do not use the (changed by https://github.com/kodebach/hacs-idm-heatpump/pull/95) requirements.txt.
I copied the current master https://github.com/kodebach/hacs-idm-heatpump/commit/ffa981860cc5c7bedba552b5cecdc6a43071b36b again, still everything works on Home Assistant 2024.3.3, with pymodbus-3.6.6, currently I am only reading from the pump.
Updating manifest.json with the current release and requirements is a good idea,
hard pinning the requirement certainly not, I'd suggest you put a minimum version like 'pymodbus>=3.6.6' in your manifest.
In one of my other lifes, I am maintaining https://github.com/onkelbeh/HomeAssistantRepository, an Overlay to run Home Assistant on Gentoo Linux, and I had this discussion many times.
In a nutshell, the only place where requirements should be pinned (for some reason) is Home Assistant Core.
https://github.com/home-assistant/core/blob/dev/requirements_all.txt is generated on every release, collecting all requirements from various places. All other dependants should not pin (unneccesary) version numbers for dependencies.

I can also confirm, that pymodbus 3.6.6 fixes the issue.
Had the same issue after upgrading to homeassistant 2024.3.1 a few days ago, so I downgraded to 2024.5 again.
Today I updated homeassistant to 2024.3.3 and IDM heat pump is still working.
I have v0.8.0 installed via HACS

This pymodbus library is a pain. It destroyed nearly all updates my integration due to "some" changes. Of course everything I have is against the spec, however was working before.
Hope I can upgrade to latest HA, stopped in April due to a lot of issues.

Hi, I updated to beta6 but have issues:
2024-09-07 19:44:30.348 ERROR (MainThread) [homeassistant.components.automation.idm_waermepumpe_pv_schreiben] IDM_Waermepumpe_PV_schreiben: Error executing script. Error for call_service at pos 2: Must acknowledge risk to call set_power
2024-09-07 19:44:30.349 ERROR (MainThread) [homeassistant.components.automation.idm_waermepumpe_pv_schreiben] Error while executing automation automation.idm_waermepumpe_pv_schreiben: Must acknowledge risk to call set_power
2024-09-07 19:45:00.324 ERROR (MainThread) [homeassistant.components.automation.idm_waermepumpe_pv_schreiben] IDM_Waermepumpe_PV_schreiben: Error executing script. Error for call_service at pos 2: Must acknowledge risk to call set_power
2024-09-07 19:45:00.324 ERROR (MainThread) [homeassistant.components.automation.idm_waermepumpe_pv_schreiben] Error while executing automation automation.idm_waermepumpe_pv_schreiben: Must acknowledge risk to call set_power
2024-09-07 19:45:30.324 ERROR (MainThread) [homeassistant.components.automation.idm_waermepumpe_pv_schreiben] IDM_Waermepumpe_PV_schreiben: Error executing script. Error for call_service at pos 2: Must acknowledge risk to call set_power
2024-09-07 19:45:30.325 ERROR (MainThread) [homeassistant.components.automation.idm_waermepumpe_pv_schreiben] Error while executing automation automation.idm_waermepumpe_pv_schreiben: Must acknowledge risk to call set_power
2024-09-07 19:46:00.323 ERROR (MainThread) [homeassistant.components.automation.idm_waermepumpe_pv_schreiben] IDM_Waermepumpe_PV_schreiben: Error executing script. Error for call_service at pos 2: Must acknowledge risk to call set_power
2024-09-07 19:46:00.324 ERROR (MainThread) [homeassistant.components.automation.idm_waermepumpe_pv_schreiben] Error while executing automation automation.idm_waermepumpe_pv_schreiben: Must acknowledge risk to call set_power
I am on HA 2024.7.4 do you think it is related to that? I updated HACS to 2.0.1

I updated now HA to 2024.9.1 and also HA OS to newest version. No change still got this log:
2024-09-08 10:37:30.055 ERROR (MainThread) [homeassistant.components.automation.idm_waermepumpe_pv_schreiben] IDM_Waermepumpe_PV_schreiben: Error executing script. Error for call_service at pos 2: Must acknowledge risk to call set_power
2024-09-08 10:37:30.056 ERROR (MainThread) [homeassistant.components.automation.idm_waermepumpe_pv_schreiben] Error while executing automation automation.idm_waermepumpe_pv_schreiben: Must acknowledge risk to call set_power

Hi, I updated to beta6 but have issues:

Nothing to do with this issue, therefore hidden as off topic. Please see https://github.com/kodebach/hacs-idm-heatpump/issues/123#issuecomment-2336642522 for more.


[ADD] sky_all_in_one_accessibility

Name of plugin (including author prefix)
sky_all_in_one_accessibility
Please complete as much of the JSON template below as is possible/relevant
{
  "name": "skynettechnologies/textpattern-all-in-one-accessibility",
  "repositories": [
    {
      "repoType": "github",
      "repoUrl": "https://github.com/skynettechnologies/textpattern-all-in-one-accessibility"
    },
  ],
  "stable": {
    "version": "1.0.1",
    "datePublished": "2024-04-12",
    "downloadUrlTxt": "https://github.com/skynettechnologies/textpattern-all-in-one-accessibility/releases/download/1.0.1/sky_all_in_one_accessibility.txt",
    "downloadUrlPhp": "https://github.com/skynettechnologies/textpattern-all-in-one-accessibility/archive/refs/tags/1.0.1.zip",
    "phpHasManifest": 1
  },
}

Textpattern min and max compatibility of latest plugin version, if known (x all that apply)
Textpattern version compatibility:

[x] 4.8
[ ] 4.7
[ ] 4.6
[ ] 4.5

Brief description of plugin (optional)
Description
The Textpattern all-in-one accessibility plugin adds one menu item to your admin interface.
ll in One Accessibility™ AI Widget Supports 140 Languages, Screen Reader, Voice Navigation, Dictionary, Virtual Keyboard, Accessibility Profiles, Sign language Libras (Brazilian Portuguese) Custom Widget Color, Icon size, Position, GA4 Tracking and custom accessibility statement link are some of the top features.
Our AI automatically remediates images Alternative text and uses the accessibility interface which handles UI and design related adjustments. All in One Accessibility™ app enhances your Textpattern CMS accessibility to people with hearing or vision impairments, motor impaired, color blind, dyslexia, cognitive & learning impairments, seizure and epileptic, and ADHD problems.
It improves Textpattern CMS ADA compliance and browser experience for ADA, WCAG 2.1 & 2.2, Section 508, California Unruh Act, Australian DDA, European EAA EN 301 549, UK Equality Act (EA), Israeli Standard 5568, Ontario AODA, Canada ACA, German BITV, France RGAA, Brazilian Inclusion Law (LBI 13.146/2015), Spain UNE 139803:2012, JIS X 8341 (Japan), Italian Stanca Act and Switzerland DDA Standards.
Follows the best industry security, SEO practices and standards ISO 9001:2015 & ISO 27001:2013 and complies with GDPR, COPPA regulations. Member of W3C and International Association of Accessibility Professionals (IAAP). It is a flexible & lightweight widget that can be changed according to law and reduces the risk of time-consuming accessibility lawsuits.
Administration reference (submitter to leave as-is)

[ ] JSON added to repo & verified
[ ] Create or verify author on site
[ ] Article published

@Bloke @philwareham ,
Is there any update on our All in One Accessibility Plugin?


Random results

I am seemingly getting random results everytime I execute the script:

System is Arch Linux, running zsh

That's based on your window size. Man reflows based on the width. The line number isn't a constant, it's actually dynamic.

So it's technically "not a bug" I mean I know it's not obvious but I don't think I should change this behavior. Re-open if you feel otherwise!

wait I understand your use case ... you have two windows side by side, one is a reference, the other is a viewer, right? Yes, this thing will go nuts with that approach. I agree.  It's a totally valid concept of a workflow. We're trying to make things easier here. I'll think about how to pull that off.


Vertical Rhythm and width

Hi @steida ,
Was having a look around the latest changes you have managed to pull and have a question regarding width calculations in Box.
 Why so? From my naive understanding rhythm should vertical align all elements based on the typography lineheight. Why does the width matter in this case? With your current approach is not possible to do width=100% in case you want a full width button per example. Or what about vertical panels with media queries?
Any thoughts?

Are you asking about branch code? I believe you can always override anything. As for horizontal rhythm, that's because accidentally rendered border would make Button to jump.

Was thinking about this code in the Box component:
case 'width':
case 'height':
case 'maxWidth':
case 'maxHeight':
case 'minWidth':
case 'minHeight':
  return {
    // We allow only number otherwise it would be easy to break rhythm.
    [prop]: rhythm(theme, value),
  };

In order to re-utilze Box component, doing this you cannot assign % width for a Box component in order to distribute per example panels with media queries.

The branch has new code but the logic is the same. Generally, use flexbox for just styling. For example, Button has default width 100%, but can be changed by parent with flexDirection: 'row'. Maybe I am overlooking something, but I have no time now to make an example. I will, after branch  with universal components will be merged.

Thanks @steida,
I see layout computations a bit more complicated than usual. Let me keep reviewing the existing code in my project and let you know if I find any discrepancies or something acting a bit weird in certian scenarios.


[feat] override the current pattern

say you have this script
"lint": "eslint \"**\" --fix"

and...
"lint-staged":[
  "npm run lint"
]

this causes that eslint runs against all files in the project, to let lint-staged pass the current file only we duplicate the eslint cmd without the pattern portion
"lint-staged":[
 "eslint --fix"
]

this feature request is to allow overriding the pattern portion, so we can reuse the existing npm.
as a suggestion we can use a placeholder like [file]
"lint-staged":[
 "npm run lint -- [file]",]

I tried:
"lint-staged:[
 "npm run lint -- "
]

but didn't work, instead, all files in the project are linted

Personally I split the command into a "base":
  // package.json
  "lint:base": "eslint --config my-config.js"
  "lint": "npm run lint:base -- ."

  // lint-staged config
  "*.js": "npm run lint:base -- --fix"

I don't think it makes sense for lint-staged to try to parse the commands, it sounds like introducing bugs and other issues.


Feature Request: Restore Point Functionality

I would like to suggest the implementation of a restore point feature in your developed by Chris Titus. This feature would allow users to revert any changes made by the tool to a previous state, providing a safety net in case something goes wrong.
Benefits

Adds an extra layer of security for users experimenting with the tool.
Enables quick and easy rollback in case of unintended changes.

I didn't realize this was already in there. Ignore the closed PR.

This was addressed and merged. Can be closed.


(maint) Remove 'create' key for masterhttplog setting

This is the only setting that uses this key, and yet the
webrick setup_logger step already creates the file if needed.
So removing this will allow for some code cleanup in
FileSetting and derived classes.

ping @kylog

Thanks for the reminder. I created https://tickets.puppetlabs.com/browse/PUP-3817. Not sure if I'm going to circle back to this one super soon (although it should be simple), so I'll just close this PR for now.