Hotfixes, Quality of life changes and Upgrade to Unity 2019.4

Changes:

Improvements to the Scene Understanding Manager.
- The color section in the inspector can now be hidden
- Unity Layers are now customizable per Scene Understanding Object, section can be hidden too
- Added GetLayer() and GetMaterial() Functions to the SceneUnderstandingManager, the material is now cached and shared
among Scene Understanding Objects, vastly improving performance
- Display Data coroutine is now awaitable

InputManager and SceneUnderstandingManagerEditor updated to sustain changes to the SceneUnderstandingManager

Fix GUID collision for Standard Shader when adding MRTK

PR incorporates HotFixes added to Main:
- Remove SceneUnderstandingProperties from the Project and Related References
- Fix a Bug when Querying Scenes when the Hololens was in inhibited mode

Removed unused GestoreRecognizer from the InputManager

Upgrade to Unity 2019.4

Co-Authored by Jared Bienz @jbienzms

I've tested this on device on Nov 25 2020
I noticed no issues.

Tested this again on Dec 12 2020,
I'm merging the request


Divide HTML exports into separate pages

Describe the feature you'd like
At the moment, when exporting a HTML book all the pages are included in one continuous scroll. In keeping with the book theme of BookStack, an export where there is a separate HTML page for each BookStack page, with a link at the bottom of each to go backwards and forwards.
Describe the benefits this feature would bring to BookStack users
Would provide improved readability and better alignment with the book theme that shapes BookStack.

Hi @maggie0002,
My thinking here very my mirrors my comments on your PR here.
I'd rather leave specific use-cases to the API otherwise we can easily get dragged into need to support a variety of further customizations on the output.
This might possibly be of interest: https://github.com/BookStackApp/api-scripts/tree/main/php-book-to-static-site
It's a very simplistic, quickly created example but creates a little static site of a book using the API.

I'd rather leave specific use-cases to the API otherwise we can easily get dragged into need to support a variety of further customizations on the output.

Indeed, this is one I hesitated on posting as I probably would have said the same thing. Glad I posted though as that referral link to the static site generator is of great help.
Thanks


(maint) Pin net-ssh to 5.2.0

The recent release of net-ssh 6.0 has caused issues with corrupted
HMACs, resulting in some tests occasionally failing. This pins net-ssh
to the most recent working version.
Related issue: https://github.com/net-ssh/net-ssh/issues/728
!no-release-note

CLA signed by all contributors.

The corrupted hmac issue seems to have been fixed in net-ssh 6.0.1.


Missing battery level reader

There's no circuitry to measure battery level right now, so it needs to be added along with the code that would report the level and shut the robot down on low battery.

Possible solution: https://github.com/aboudou/picheckvoltage


Outbound mail config error

The mail auto send for reset password, form submission propose is sent by<EMAIL_ADDRESS>and how to change the smtp config??

Look in your .env file:
# email setup
<EMAIL_ADDRESS>EMAILS_FROM_NAME='Thomas Rexton'
IS_SMTP=false
SMTP_HOST=smtp.mailserver.com
SMTP_PORT=25
SMTP_AUTH=true
SMTP_USERNAME=username
SMTP_PASSWORD=password
SMTP_SECURE=tls
SMTPENC_KEY=iloverespond


Html output retargeting for godoc

The godoc tool generates documentation for a local server that hosts the docs and builds them on a developer’s personal machine. Is there a way to point this generated HTML to a not-localhost server so we can directly use it as input for rtd?
Acceptance criteria:

[ ] HTML outputs are adjusted so that they are able to be hosted in a non-local server
[ ] HTML outputs are workable to be later stylized/manipulated

I think this question - answer provides the needed information on how to do this:
https://stackoverflow.com/questions/13530120/how-can-i-generate-html-documents-using-godoc


Improve English grammar and syntax in backend docs

Closes https://github.com/plone/volto/issues/3287

Meh a couple of test runs do not pass. @sneridagh would you please let me know how to fix those? Thank you!

on it https://github.com/plone/volto/pull/3285


Add Jest testing

Overview
Add Jest testing capabilities
Changes Made

Created ArticleFactory and PublicationFactory in order to create fake Articles and query Publications for testing
Added FactoryUtils from Resell to have utility functions for Factory classes
Added test cases for getAllArticles, getArticle(s)ByID(s), getArticlesBySlug(s)
Added  a test database connection to volume-test database
Added pre-commit hook to npm run jest

Test Coverage
Ran jest test cases, ran to completion
Next Steps (delete if not applicable)
Add more test cases for the rest of the ArticleRepo functions as well as PublicationRepo and MagazineRepo functions
Screenshots (delete if not applicable)

Jest test script output

love these tests

I can see the precommit hook change in the .github folder


Ex3

Thiếu 3i

@PhucLe1725 xem cách commit --amend nhé :))) Đừng commit như kia =))))

Personels' start and end must follow normal distribution as well (Check 2e and 2f)

Also, walkability needs to follow normal distribution as well (Check 2d)


Native YAML support

Resolve #132
My implementation is a bit primitive so any comments are welcome!
(For example, maybe it'd be better if I create a new Template class and make it have template body and format.)

Looks good! 👍

Can I get merged? Or need additional reviews?
Thanks!

I've released 0.8.0 with these changes. Thanks @skatsuta!


Add headless functional testing option using phantomjs

What is the context of this PR?
Using phantomJS as the browser for running selenium tests. This decreases test execution time.
How to review

yarn compile to install new dependencies
run selenium tests locally to ensure via yarn test_functional_headless

Build times are looking a lot more reasonable now!

Squash rebase merge?

This is failing on the timeout tests as they are dependent on session storage (which isn't supported by phantomjs). The phantomjs tests have been reworked so they no longer rely on session storage in #970


fix the develop container image build

chore:	Fix the following issue while tring to build the develop container,
(reproducible locally with: make build):
	go: downloading gopkg.in/yaml.v3 v3.0.1
	/root/go/pkg/mod/github.com/grpc-ecosystem/grpc-gateway/v2@v2.15.0/protoc-gen-grpc-gateway/main.go:18:2<EMAIL_ADDRESS>missing go.sum entry for go.mod file; to add it:
        	go mod download github.com/golang/glog

/lgtm

/lgtm

Thanks.


Add codecov and git hooks configuration.

Some functionality to add to the project. This should help in maintaining good quality of the code across all CTI repos.

I'm not sure why the builds are now failing. I'll check to see if some updated dependency caused a regression, since I don't see anything specifically in this PR that would cause problems.

I excluded xml and json files from the checks of the pre-commit tools.

@gtback, do you have any idea why codecov is generating reports using the wrong file?
https://travis-ci.org/oasis-open/cti-stix-elevator/jobs/278656657#L1061

I think it might be related to the fact that we don't have coverage data on the master branch. Since you fixed the recursion thing, I'll go ahead and merge this in, then update the other PRs to use it.


Add create folder icon

Adds the missing "create folder" icon and replaces the "Create folder" text buttons of the FileDialog, the EditorFileDialog, and the ProjectDialog to an icon button.
New icon (click for better preview):
I opened the folder icon in Inkscape ( editor/icons/Folder.svg), traced the margin around the plus sign from the new file icon ( editor/icons/New.svg), did a difference operation on the folder with the trace, exported it to SVG, then I optimized it with SVGOMG.

Before
After

As you can see, the top bar occupies now less real estate and it makes the file dialogs more intuitive to use.
Relates to #88827

Desirable it would seem like. Although I would keep both the name AND the icon for the Create New Project popup.

I don't agree. The button would be even larger than usual. And there's a tooltip if the user doesn't know what the icon does.
No objection in modifying the icon tooltip though.

Even with the current UI, there is enough space for many more buttons without getting in the way of project names of realistic size.

Even with the current UI, there is enough space for many more buttons without getting in the way of project names of realistic size. Turning text into simple buttons is a compromise used to simplify complex UI and get more space, neither of which is a problem here. The compromise is that it reduces discoverability and clarity

Again, I don't agree. Either we keep the text only button (which is quite ugly), or we set the icon only button. Especially since icon only buttons are flat and text buttons aren't. Why having redundancy for such a small action?
No, icons aren't just to simplify complex UI and get more space. It's about UX. I think the button as it is is way too verbose for it's own good.
There's a reason shy road panels are using pictograms instead of text.

As discussed on the Godot Developer Chat:

I think the problem here is the fact that "Create folder" doesn't belong here.
What does it have to do with "Project Name"?

@KoBeWi then pointed out #56420

I'm also concerned about this change to the Create Project dialog.
The current UX is bad, and creating a folder is almost always required. Otherwise, it's very easy to inadvertently create a project in a folder with pre-existing contents (e.g. your home/documents folder), leading to importing all your personal images, etc. and littering things with .import files and hidden folders.
So I wouldn't make this button smaller before we fix the current UX issues we have.
The changes to FileDialog are fine on the other hand.

I'll remove the icon replacement for the Create Project UI.

I'll remove the icon replacement for the Create Project UI.

Removed!

Thanks!

@Mickeon @MewPurPur  @akien-mga Seems that I was wrong. My friend, who is a UX designer, sent me this article on icon usability from the Nielsen Norman Group (UX research group):

To help overcome the ambiguity that almost all icons face, a text label must be present alongside an icon to clarify its meaning in that particular context. (And even if you’re using a standard icon, it’s often safer to include a label, especially if you slightly altered the icon to match your aesthetic preferences or constraints.)

[...] stripping these icons of text labels renders them completely meaningless and is counterproductive to the goal of providing easy access to content.

So yeah, maybe we should add the folder icon next to the "Create Folder" button.


keil projects build unexpected big executable

By some investigation, keil projects build will link about 83KB unwanted C++ library objects, including the largest locale.cpp.o (~55KB).
I've already found the inclusion of below files will cause keil (ARM AC6) to link them:

Which are included or indirectly included by kernel_utils.cc.
It seems  is not required, but  is required for succesful build.

While the TFLM library does contain many unused symbols, when linking the final executable, all unused symbols will be dropped by the linker. We observe this behavior with the various tests, examples and benchmark binaries in the TFLM repository when using arm-gcc and various other toolchains (e.g. Xtensa and Hexagon).
It appears from your description that that is not what you are observing with your Keil project. Tagging @freddan80 to answer this specifically for Keil projects.

Thanks Advait, that's true.
From further investigation, I found kernel_util.cc indirectly included

If these two headers are included, keil will link extra about 83KB (AC 6.14 in KEIL 5.34) or even 160KB (AC 6.12 in KEIL 5.27) C++ libraries.
The keil projects are generated by the tflm makefile, I used the helloworld example, and the size information is from the helloworld.map generated by keil..

@RockySong you're correct. We observed this issue about a month back, and there is a fix that will be a part of the upcoming release of Arm compiler 6, most likely in August. Please check this page for updates. Sorry for the inconvenience.

Tagging @MatthiasHertel80

Noted with thanks!


What's the difference between adding Lcontrast to all other losses and making Lcontrast alone?

In paper :"Lcontrast is added to all other losses (e.g., supervised source-domain detection loss, unsupervised target-domain detection loss) in the mean-teacher self-training method."
What's the difference between adding Lcontrast to all other losses and making Lcontrast alone?

Hello @Bradly-s ,
In this sentence, we mean that we add up the contrastive loss and the detection loss terms all together, and optimize the total loss.
Best,
Shengcao


very high pitch on linux

hi, regardless of process method and model, the result of the process is like this https://vocaroo.com/1j5ffZvu2rj5, very high pitch
I tried on windows 10 pc and it worked fine
OS: Linux Mint 21.1 x86_64
CPU: Intel i7-8750H (12) @ 4.100GHz
GPU: NVIDIA GeForce GTX 1050 Ti Mobile

Had the same problem when working with mp3 files. It just worked right with WAVs.
Also runing Linux Mint, Intel and Nvidia


docs: Update porting cheat sheet to include mention of backward incompable connection string changes

docs: Update porting cheat sheet to include mention of backward incompatible connection string changes
Issue #2974

/azp run
... probably unnecessary, but just for safety sake

/azp run

@azure-pipelines you are a goofball

Wow, I'm impressed by the quick turnaround on reviewing this and merging it in. Thanks!


Question about onLayoutChange and layout props

Hi, thanks for the amazing plugin!
I want to make something like your add / remove grid items example.
But I don't really understand the use of onLayoutChange and layout props.

What should I write in onLayoutChange function?
How can I get the current layout props? Or do I need to keep track of it myself? How should I update it (like when resizing, dragging or adding new items)?

Sorry, this is really open-ended. If you need more help please go to IRC.


Update to 1.7

[x] merge #48
[x] close #36
There are a few more issues with milestone 1.7 that are not so critical and can be potentially moved back

Closed by #52


centile labels

Requests for centile labels from colleagues in Scotland and also DCHW.

Pretty sure we've got centile labels in our storybook branch at least, right @eatyourpeas ? We should consider merging that into the live component once we're happy and have some more testing etc


Q1  180 degree misaligned  in pick and place file

Great board :) , noticed an error in CPL file. Q1 needs to be rotated 180 degrees

Thanks for reporting. Will fix that.
JLCPCB corrects this automatically, but still good to have the PnP files correct.


[Parent] UI polish

[x] https://github.com/jbx-protocol/juice-interface/issues/2608
[x] https://github.com/jbx-protocol/juice-interface/issues/2607
[x] https://github.com/jbx-protocol/juice-interface/issues/2605
[x] https://github.com/jbx-protocol/juice-interface/issues/2604
[x] https://github.com/jbx-protocol/juice-interface/issues/2593
[x] https://github.com/jbx-protocol/juice-interface/issues/2592
[x] https://github.com/jbx-protocol/juice-interface/issues/2591
[x] #2610
[x] #2611
[x] #2613
[x] #2615
[x] #2618
[x] #2620
[x] #2624
[x] #2637
[x] #2640
[x] #2646
[x] #2649
[x] #2693

ooooh is this done now?

@peripheralist it is, let's close it! 🍻


WebID Profile Work Item

To introduce WebID Profile as a Work Item and continuing with the development:
PR updating https://github.com/solid/specification/blob/main/index.html to include an entry for the WebID Profile spec to appear at https://solidproject.org/TR/
The link to the work item can either be https://github.com/solid/webid-profile/blob/main/notes/pre-final-draft.md or URL of a document that uses a spec template / formatted as such with "Editor's Draft" (ED) status. Later on it can be the link to the Technical Report (TR) version (once approved).
At some point, there should be a ED URL (e.g., https://solid.github.io/webid-profile/ or perhaps more specific like https://solid.github.io/webid-profile/discovery if the group finds small related specs will be published in different documents. Alternatively, if the group prefers to publish the ED at https://solidproject.org/ED/webid-profile , that's also possible but then the work will have to continue in https://github.com/solid/specification . I suggest working on the ED in this solid/webid-profile repo for the time being but the group can decide.)
To propose a versioned release of the spec, there needs to be a PR to https://github.com/solid/specification so that it can be published at e.g., https://solidproject.org/TR/webid-profile . See https://github.com/solid/specification/blob/main/CONTRIBUTING.md for mode details on that. Happy to fill in gaps here/gitter etc.. and update the guide as necessary.
The links in https://github.com/solid/specification/blob/main/index.html can be changed any time e.g., when going from ED URL to TR URL.

Can we close this as done?

Currently using https://solid.github.io/webid-profile/ as the ED and it is listed as a Work Item at https://solidproject.org/TR/ .


RFE: Promote Datadog Integration Service to the contrib repository

As discussed at the community meetings, we would like to have the Datadog service a part of the Keptn LTS package, See KEP-86 for the full proposal https://github.com/keptn/enhancement-proposals/pull/86
To do so, some changes are needed in the project
https://github.com/keptn-sandbox/datadog-service/issues/105#tasklist-block-2c00f098-3db0-43d5-a3a3-46fdfe002db6

Confirm the intent for a long-term support with maintainers . Confirmed with <gh:user-mention login="vadasambar"></gh:user-mention>

I think we can mark this one as done

0.20 does not seem to be released yet.


Introducing Zuul.d as a backend to the Zuul source

Prototype for a solution that will make Zuul.d a content provider to the Zuul source instead of being a source of its own. This will allow us to reuse all the tools that were built for Zuul on this source.
Code on this PR is pretty rough. My intention was just getting something out there to see if the idea could be performed. From the PR I will build smaller ones that increasingly implement the functionality.
Feedback is welcome.


[Bug]: Missing Fundamentals/Taints provisioning

Installation method
Own AWS account
What happened?
Taints group is not provisioned, also $EKS_TAINTED_MNG_NAME  variable seems to be not set.
ec2-user:~/environment $ eksctl get nodegroup --name $EKS_TAINTED_MNG_NAME --cluster $EKS_CLUSTER_NAME  Error: operation error EKS: DescribeNodegroup, https response error StatusCode: 404, RequestID: 9b6c7596-087a-4ccc-917d-9a0b8b2d6aa1, ResourceNotFoundException: No node group found for name: taint-mng.
What did you expect to happen?
Have taint nodegroup provisioned and $EKS_TAINTED_MNG_NAME var set properly
How can we reproduce it?
Execute step https://www.eksworkshop.com/docs/fundamentals/managed-node-groups/taints/ from workshop
Anything else we need to know?
No response
EKS version
ec2-user:~/environment $ eksctl version
0.144.0

Hi @reuser , thanks for reporting this it was an issue with not passing the correct name of the branch in our CFN instructions. This has been patched in the main branch.
To fix your environment you can edit the file ~/.bashrc.d/repository.bash in Cloud9 and change the REPOSITORY_REF entry to stable. Then restart the lab with prepare-environment. Please let me know if this resolves your issue.


Why is the text formatting not persisted on the following lines?

Steps for Reproduction

Run the 'Custom font and formats' example from the playground
Delete the existing text and change the font family from 'Aref Ruqaa' to 'Roboto'
Adding a new line of text will reset the selected font from the previously selected 'Roboto' to 'Aref Ruqaa'

Expected behavior:
I am expecting that the selected font will be persisted and not reset to the default one every time the user adds a new line.
This was the behavior Quill v1.3.7 used to have and no breaking change warning has been added in Quill v2 release notes.
Actual behavior:
The selected font is reset to the default one.
Platforms:
Include browser, operating system and respective versions
Version:
v2.0.2

@gjulivan
It seems this was done on purpose in Quill v2 and they didn't mark it as a breaking change. The behaviour was changed in pull request #3428
To get it working as it used to in Quill v 1.3.7, I did the following (note that my project is using ngx-quill, which is an Angular wrapper for Quill)

I used the onEditorCreated event handler to get all the keyboard bindings associated with the Enter key
I looped over the Enter bindings and removed the default empty binding and the handleEnter binding.
I added a new Enter key binding which contains the old handleEnter logic which was changed in the abovementioned pull request.
Hope this helps!

thanks for the PR, I see that the changes occurs on keyboard module,
i'll try to simply extend and override the module first.
@dumitrascuSorin

I am able to reproduce the same issue on Quill 1.3.7. Deleting the text or adding a new line reverts formatting to default font format.
https://github.com/user-attachments/assets/3cc73a50-9953-457b-bbb1-72c1ee22c617


Fix to remove extra spaces in cookie manager intervenes other components

Particularly, https://github.com/Schluca/streamlit_tree_select will break as the iframe was first initialized with height=0
While this is partly due to other component's behavior (in this example, its height is dynamically determined by dynamic data), the fix is impacting other components, I wonder if it is possible to pinpoint the impact to cookie_manager iframes.

We also have a similar issue on our end. This particular commit is hiding all the elements of our Streamlit components.
https://github.com/Mohamed-512/Extra-Streamlit-Components/commit/1fa9839ced525ad82f288afa21083431bdcee0b3


Health & Safety Injection issue.

In Part 4, Section II, step 6, you direct the readers to copy FBI_inject_with_banner.app to the root of the SD card.
However in the latest release of Decrypt9WIP, this file needs to be placed in the \decrypt9\ folder on the SD card (the same place that the hs.app file is placed during the dumping step) in order to be discovered by Decrypt9.
It might also be worth updating step 4 of the same section to inform readers that the hs.app file is located in said folder to avoid confusion.

I actually modded a n3ds xl not so long ago, 3 days ago to be exact and I can say that hs.app is in the root. And also, Decrypt9WIP looks for .app files on the root. Are you sure you're using the latest Decrypt9WIP? It was released on June 27 as per Github, https://github.com/d0k3/Decrypt9WIP/releases/

I did download and copy the new files over, overwriting the existing ones. Maybe it saved there for me because the /decrypt9/ folder existed on the root?

Yes, that's probably the reason.

One it finishes doing the One Time Setup thing and I get my sysnand back to 9.2 and emunand back to 11.0, I will play around with it and see what happened.

Ok so I just finished the a9lh/luma initial setup and tried dumping hs.app again after removing `\decrypt9\ from the root of the sd card. The file was dumped to the root of the sd card as the guide expects.
In light of this, perhaps a better suggestion (instead of my initial one) would be a disclaimer directed at existing CFW users reminding them to remove all preexisting files/folders related to Decrypt9WIP prior to starting that part of the guide? (A similar disclaimer exists in Part 5 informing readers to delete any pre-existing files related to Emunand9 before continuing)

fixed


[1.15.2] Tools not showing in JEI

Tried searching for something similar but wasnt able to find anything. JEI does not have the tools one requires for cooking, listed in its menu. On top of that, I have no idea how to make any of the tools, to see if its just a JEI issue, or if CFBs tools simply dont exist for my server.
Pertinent information: I am running a server with 62 mods on it, JEI and CFB among them.
Version: 1.15.2
Forge:  31.2.33
If you need the modlist I can provide it. I appreciate any input on this, if its even an issue (also where in the world are the recipes for the tools?)

I may be stupid here, and be expecting something to show that doesnt unless Pam's is installed (friend of mine explained to me what that was).

Cooking for Blockheads only adds the cooking books and kitchen blocks. All food and cooking utensils are by third party mods like Pam's.

Thank you for answering!


Add a plugin api for extracting back out the descriptor proto.

Modeled after the C++ Copy*To() apis, this should provide the building blocks for what is needed now and might be needed in the future.
Fixes #1678

@glbrntt fyi


Bump versions

Coverage remained the same at 92.271% when pulling 7eca98d01d2bb84446e7cda4d6a4533237aefc53 on dev into 64424d5d59b94a5bc3cfdc920e9ab5ba1fe71328 on master.

closes #40


Camera controls shift when Builder left panel loads

Describe the bug
When the builder screen first loads the left side panel flexes from 0 to a width that fits its contents. When the width of the left panel changes the camera controls are shifted.
To Reproduce
Steps to reproduce the behavior:

Open any scene
Click on View mode, then click back to Build mode.
Notice how the controls move from left to right on panel load.

Expected behavior
Camera controls should not move around on mode change.
Screenshots
Loading:

Loaded:

Browser (please complete the following information):
Edge
Additional context
N/A

@pasanchMSFT I think this is fixed now with the latest style updates. Can you confirm?

@msnyder-msft The width of the panel still changes but scrollbar is gone, not sure if that means resolved.

Style updates left this in an ok state, closing because we won't make more changes.


[Bug]: Can't create a task from timer page if no tasks have been created yet

Summary of the bug:
If you try to create a task for the first time from the timer page, nothing happens when you click the start button. No task is added and the timer doesn't start. This error pops up in the console:
Uncaught TypeError: allTasks is null
Steps to reproduce the bug:
Go directly to timer page without creating any tasks. Click start. Enter a task name and pomo count and hit start.
Expected Behavior:
A new task should be created, the timer should switch to that task, and the timer should start.
Current Behavior:
Nothing happens. Error message.
Additional Context If Applicable:

Seems that this bug was fixed. Not sure who or what did it.


Integration tests for Organization /meta-attribute GET API

Purpose
$Subject
Main Tests

testGetOrganizationsMetaAttributesWithInvalidOperator()
testGetOrganizationsMetaAttributesWithUnsupportedAttribute()
testGetOrganizationsMetaAttributes(String filterQuery, boolean isRecursive, boolean expectEmptyList)

Support Tests

testOnboardChildOrganization()
testDeleteChildOrganization()

Related Issues

https://github.com/wso2/product-is/issues/20611

Merge After

https://github.com/wso2/identity-organization-management-core/pull/144
https://github.com/wso2/identity-api-server/pull/628

PR builder started
Link: https://github.com/wso2/product-is/actions/runs/10073863796

PR builder completed
Link: https://github.com/wso2/product-is/actions/runs/10073863796
Status: success


⚠ Bofrost.lu has degraded performance

In a7c6cd7, Bofrost.lu (https://www.bofrost.lu) experienced degraded performance:

HTTP code: 200
Response time: 1088 ms

Resolved: Bofrost.lu performance has improved in 45530d7 after 9 minutes.


Key value store runtime config WIP

Was using this to test #1365 and it works great! Given that PR is in draft now, does it make sense to include the following configuration here in this PR or a follow up?
#[derive(Debug, Default, Deserialize)]
pub struct RedisKeyValueStore {
    pub url: String,
}

does it make sense to include the following configuration here in this PR or a follow up?

Follow-up


Listen to PUSH_ACTIVITY for specific accounts

Amazon stopped sending NOTIFICATION_UPDATE messages (at least for specific accounts, discussion in #1971)
This PR also adds a small delay in order to get updated data from the API.
These changes are proposed to the following accounts:

amazon.it
amazon.de
amazon.com.au

The only current limitation is that Alexa commands must be sent ~10 seconds apart in order to update the sensors, but feedback is greatly appreciated.

I replaced the command required to update the sensors since everyone should get at least one PUSH_ACTIVITY message. However, for certain requests PUSH_ACTIVITY is received twice, triggering a useless double request which is now ignored.

Thanks. I think you could've left the legacy code in. Amazon sometimes reverts changes and even if it's not used now, it could be useful.

I'd prefer to keep it as is for two reasons:

The path for the serial number is different based on the message, resulting in more logic that increases latency
This solution triggers the update even if notification_update is supported since all the accounts receive push_activity messages

People don't really test so it's not something we have historically relied on. Your edits shouldn't break anything and solves broken behavior so I'll just push a release and people can roll back if there is an issue. Thanks!

I just installed 4.6.5, doesn't work, timers still not updating. I would put this in the original issue but it's closed...

Timers going from  to  instantly get picked up. HOWEVER:

Snooze events no longer update the time sensor
Stopping a timer no longer changes the "Status" attribute from ON to OFF (it just stays on until HA restarts)

@alandtse

Don't tag people. It's rude. Amazon removed this feature. The fix is a stop gap but can only trigger on voice events. Any non voice interactions will not be picked up anymore.

Apologies.
The thing is, "Alexa, snooze timer" and "Alexa, stop time" are both "voice events," right? So I should expect those events to keep working... or am I misunderstanding something?

Any chance you could add the fix for the UK as well.  My timers are not working, or at least they feed in correctly when started but do no go away when stopped.

Don't tag people. It's rude. Amazon removed this feature. The fix is a stop gap but can only trigger on voice events. Any non voice interactions will not be picked up anymore.

how an we go about doing this?


Documentation/specification of precursor charge range

Hi @lazear
one thing we were struggling with when comparing with other search engines is to define/report the precursor charge range that is searched by sage.
I saw this:
https://github.com/lazear/sage/blob/master/crates/sage/src/scoring.rs#L301
So I assume it is hard-coded to 2-5.
For everything I did so far this would be fine, so I do not necessarily need to specify it (although others might).
Anyway, my main concern is that I did not find this in the documentation. If I missed something, please close, otherwise it would be nice to find it somewhere outside of the code. If you tell me where, I can also add a sentence but you will know the internals better.
Thanks!!

Thanks for the catch - I will update the docs accordingly. I can also add it as a configuration option for the next release!

I have updated the docs, and added a "precursor_charge": [2, 4] option to the configuration file as well.


Can't load SDK-v2 to the page

Describe the bug

Error: GET https://sdk.mercadopago.com/js/v2 net::ERR_TOO_MANY_REDIRECTS

To Reproduce

Add SDK-v2 to the page

Code sample that fails

      script.src = 'https://sdk.mercadopago.com/js/v2';
      script.id = 'mercado-pago-sdk-script';
      document.body.appendChild(script); ```

**Expected behavior**
- Expect script successfully added to the page;

**Environment (please complete the following information):**
- Version 89.0.4389.114 (Official Build) (x86_64)

Hi @denisglindep
We are experiencing some problems in our infrastructure and we are working to resolve this issue as soon as possible.
Thank you for reporting this issue.

Hi,
we are online again.
Thanks


Supporting mTLS in EaseMesh

Background

As a mesh product, security between micro-services is essential in production-ready requirements.
Popular mesh products, e.g., Istio, Linkerd, OSM[0], use mTLS to secure micro-service communications.
mTLS[1] is used for bi-directional security between two services where the TLS protocol is applied in both directions.[2]

Requirements

Introducing a communication security level for MeshController, which is default and strict.
Enhancing controller plane for assigning and updating certificates periodically for every micro-services inside EaseMehs at the strict level.
Enhancing sidecar's proxy filter by adding TLS configuration in strict level.
Adding Sidecar Egress/Ingress' HTTPServer TLS configuration in strict level.

Design

MeshController Spec

kind: MeshController
...
model: "default"          // "strict" is the enabling mTLS
refreshInterval: "48h" // refreshing certificates for one service every 48 hours

Service spec, adding a certificates structure

serviceName: order
lastUpdateTimestamp:  1000000
certBase64: xxxxx===
keyBase64: 339999===

And storing it into /mesh/service-tls/%s // + servicename layout.

MeshController's control plane creates and signs x509 certificates[3] for every newly added service and updating them according to the refreshInterval.

Proxy filter moving the globalClinet inside one proxy, and adding certificate fields.

kind: proxy
name: one-proxy
...
certBase64: xxxxx===
keyBase64: 339999===
...

References

https://github.com/openservicemesh/osm/blob/main/DESIGN.md
https://en.wikipedia.org/wiki/Mutual_authentication#mTLS
https://kofo.dev/how-to-mtls-in-golang
https://medium.com/@shaneutt/create-sign-x509-certificates-in-golang-8ac4ae49f903
https://venilnoronha.io/a-step-by-step-guide-to-mtls-in-go

My suggestion is to refer to other mesh products. No matter Istio or OSM, an extra component certificate-manager (Citadel in the istio, Valt in osm) be introduced, but I don't see it in your design.  What do you think about it? A certificate-manager is at least responsible for providing a common trust root to allow sidecar to validate and authenticate each other.

My suggestion is to refer to other mesh products. No matter Istio or OSM, an extra component certificate-manager (Citadel in the istio, Valt in osm) be introduced, but I don't see it in your design. What do you think about it? A certificate-manager is at least responsible for providing a common trust root to allow sidecar to validate and authenticate each other.

The rootCA can be signed in the control plane's MeshController.
OSM also supports an internal cert-manager, which is Tresor implemented by Golang. So I assign this function to MechContoller's master role too.

The name of model and refreshInterval is too general for mTLS. Please make them specific such as securityLevel and certRefreshInterval, or move them under section security.
And do we support both automatically generating certs by the control plane(only refresh this by control plane), and manually config from users?

About the name, I will update it.
About the certs, among popular mesh products, they can introduce certs from outside products, such as Valt. So I am working on figuring out the OSM's design. We should also support outer certs providers here. Let me update this design later.


Add support for Avalonia 11.0.0-preview5

Avalonia just released Avalonia 11.0.0-preview5. Any plans to support it?

Markdown.Avalonia.Tight 11.0.0-a9 has been released as a package for preview5.
Note that Markdown.Avalonia.SyntaxHigh has not been released because the dependent library for preview5 has not yet been released.


Linear systems using cholesky decomp

While standard linear systems seem adequately supported, there seems to be no way to differentiate expressions involving the cholesky decomposition. I believe the decomposition itself might be supported, but the cho_factor, cho_solve and solve_triangular functions in scipy are not, and without them it's hard to take advantage of it.

We have the solve_triangular grad, so you can use that with np.linalg.cholesky. With that, you can write cho_solve in terms of two solve_triangular calls (the LAPACK routine dpotrs does the same thing, calling dtrsm twice).
However, that might have significant overheads (I think I've benchmarked this kind of thing before). So we should probably look into wrapping cho_solve and cho_factor as you suggest.


Implement ipcvisor to support breaking upgrades

From @fridrik01
As we keep developing Fendermint and IPC we need to develop standard processees when deploying future breaking changes of the codebase to already running fleet of nodes.
An already established process is cosmovisor which is a process manager for Cosmos SDK application binaries. It supports replacing binaries at certain block height either from governance  proposal or for a manual emergency coordinated upgrades.
In this issue, we should research cosmovisor, check if the same or similar design works for our usecase and then devise an implementation plan. What we do here could be even to fork cosmovisor and adjust it to our usecase, or write our own.
Notes:

Our usecase is a bit more complex as we require two binaries (fendermint, cometbft) and we may want to update one or both of them at the same time.
The cosmovisor is written in Go, which if we base our implementation on a fork of that would complicate our toolchain, build requirements and overall software stack. Given that the cosmovisor code is relatively small and simple, I would propose we write our own implementation in Rust.

Test cases:

adding a new syscall
upgrading FVM version

From @fridrik01
Update on this issue after discussing with @aakoshh  last week (great summary here):
ipcvisor as described in the issue summary does not align well with the infra setup in Fluence.
Instead of managing binaries and replacing them with new versions, we should let ipcvisor run certain callbacks which the node operator (fluence in this case) can hook into and respond to (ie. send notification email/slack when new upgrade is added, replace running container, etc).
We will focus on the callback version first but abstracting it so that adding the binary switching later will be supported.
We aim to let the ipcvisor run on a separate machine than fendermint/cometbft. To do this we need to add to fendermint certain rpc endpoints: get_all_upgrades, add_upgrade, frozen_requires_new_version. Alternatively, we would download the upgrade file from somewhere, but that does not work once we add upgrades through governance.
We will update fendermint's upgrade scheduler to work directly on app versions instead and not rely on block heights. Instead, fendermint manages an upgrade_scheduler.json file which maps which block heights should run which app version migrations.
fendermint applies these upgrades by looking at its hardcoded upgrade scheduler migration. If fendermint does not know how to apply these upgrades, it should halt/freeze allowing the ipcvisor to execute the script callback that notifies the operator to replace the container with the newest version (or switch binaries when that is enabled).


fix(header): add tracking to search recommendations

Preview environments are getting posted here, as soon as they are ready!


Proxier and LB are not namespace aware #4288

The overall goal of this rather large PR is to serve identically named services in different namespaces on different external IP addresses, to address bug #4288.
Logically there are several parts to solving the problem, which in retrospect I should have split into separate pull requests.

Write an e2e test to repeatably demonstrate the bug (test/e2e/service.go)
Add a new general purpose type NamespacedName, with explicit Namespace and Name components, and associated split, join etc utilities.
Fix pkg/proxy/.... to do away with using strings as names, as it is ambiguous as to whether the strings include a namespace or not (the origin of this bug).
Also fix unit tests for the above on the basis of those changes.

The code currently works, but there is still some further refactoring that I know needs to be done. In the mean time, please take a look, as I'm sure there's additional stuff that I've missed.

Google Inc has signed the CLA on my behalf.

@quinton-hoole-google : let me track you down f2f to get some more context about is going on here.

Let's talk about map keys as structs vs strings, then I will resume review :)

Replaced by PR #5192.


feat: Add support for TypeScript version 5

Solved on #97.
Thanks for your contribution @mfeltscher. 🙏


Significant test flakiness after upgrading to grpcio 1.66.0

What version of gRPC and what language are you using?
1.66.1
What operating system (Linux, Windows,...) and version?
Linux, varies
What runtime / compiler are you using (e.g. python version or version of gcc)
Python 3.8
What did you do?
In https://github.com/apache/beam/issues/32324 we have a test suite of ~60 tests. After upgrading to grpc 1.66.x, the suite became perma-red with random tests failing.
The symptoms are such that two processes that are expected to connect to each other over gprc, don't connect. In one case we see errors like:
control.Recv failed\n\tcaused by:\nrpc error: code = Unavailable desc = error reading from server: EOF\n'

In another case, test suite gets stuck and there are many logs like
2466 2024-09-12T19:56:32.0179123Z I0000 00:00:1726170991.935883   56889 fork_posix.cc:77] Other threads are currently calling into gRPC, skipping fork() handlers during stuckness,

but we also see the latter logs in successful runs.
In some cases, the error might be swallowed within our processes and we just see the test failure.
Setting the upper bound to grpcio<1.66.0 appears to resolve the issue.
What did you expect to see?
What did you see instead?
Make sure you include information that can help us debug (full error message, exception listing, stack trace, logs).
See TROUBLESHOOTING.md for how to diagnose problems better.
Anything else we should know about your project / environment?

Also seeing the same issue. If there was a way to configure the logger to not write to stderr, that would also work.

@pratikmallya what is the issue you see on 1.65.5? It might be a different one, since my issue has been resolved after a downgrade to 1.65.5 https://github.com/apache/beam/pull/32449

Hi, thanks for reporting this, can you tell us more about this issue? Like what's gRPC Pythons role in the tests?
And also is it possible for us to reproduce the issue without using testing framework from Beam?

Like what's gRPC Pythons role in the tests

Inter-process communication.

And also is it possible for us to reproduce the issue without using testing framework from Beam?

I don't have better a repro at this time.

If it helps, we collected new logs after upgrading to 1.66. We downgraded to 1.64.1, and the logs, along with our issues, have disappeared. Here are the logs:
I0000 00:00:1726678172.728387      33 call_credentials.c:168] GRPC_PHP: call credentials plugin function - begin
I0000 00:00:1726678172.728472      33 call_credentials.c:171] GRPC_PHP: call credentials plugin function - end

@florentinchaussoy Thanks for sharing the logs. but these logs are not enough to debug this, we'll need steps to repro this issue.


enum WIP

Thank you for contributing to pyo3!
Here are some things you should check for submitting your pull request:

Run cargo fmt (This is checked by travis ci)
Run cargo clippy and check there are no hard errors (There are a bunch of existing warnings; This is also checked by travis)
If applicable, add an entry in the changelog.
If applicable, add documentation to all new items and extend the guide.
If applicable, add tests for all new or fixed functions
If you changed any python code, run black .. You can install black with pip install black)

You might want to run tox (pip install tox) locally to check compatibility with all supported python versions. If you're using linux or mac you might find the Makefile helpful for testing.

@stillinbeta many thanks for kicking this off, I'm thrilled to see this! With respect to your comment on the other thread:

I made an attempt (#1045), but I got frustrated by the amount of boilerplate and traits required.

If we were to work together to design this functionality, have you got interest in continuing onwards with this PR?
If you've lost interest that's also fine, I'll pick this up eventually when I get round to thinking about this feature harder.
Reading through what you've started here, I have a few initial thoughts:

The variant parsing code you've written looks clean and straightforward for these "C-style" enums, which is nice to see. 👍
I'm wondering whether we need to implement PyClass and all its gubbins for #[pyenum], or whether we should go down a different direction.

I don't think that we'll need either inheritance or being able to have &mut self receivers in #[pymethods] for these "C-style" enums. These are two of the main reasons PyClass is so messy, so maybe we can design something leaner here.
On the other hand, at the moment the #[pyproto] implementations are heavily coupled to PyClass. That's not necessarily an issue, but it does mean that if we want to use #[pyproto] with #[pyenum] then we're either forced to use PyClass, or we'll have to do some refactoring...

It would likely be nice to add each enum variant as a #[classattr] automatically.

Thanks!

I don't think that we'll need either inheritance or being able to have &mut self receivers in #[pymethods] for these "C-style" enums.

Yeah, but I don't think both inheritance and &mut self don't contribute the code complexity here.
I think what we need is just to use the common code as pyclass.

My initial intent was to inherit from enum, but that blocked on #991. I
agree that modularizing the pyclass macro is probably the way forward,
since we're definitely going to need some of it (EnumName.EnumVariant was
the UX I was going for, a la the enum modules, and I think that basically
necessitates a class)
On Sat, 18 Jul 2020, 09:00 Yuji Kanagawa<EMAIL_ADDRESS>wrote:

Thanks!
I don't think that we'll need either inheritance or being able to have
&mut self receivers in #[pymethods] for these "C-style" enums.
Yeah, but I don't think both inheritance and &mut self don't contribute
the code complexity here.
I think what we need is just to use the common code as pyclass.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/PyO3/pyo3/pull/1045#issuecomment-660479766, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AAD724CBE7DAMNMQN7L4N5DR4GME7ANCNFSM4O63GGYA
.

Agreed. Perhaps if I drafted up a solution to #991, we could get that merged which would pave the way for inheriting from enum.Enum in this PR?
I guess we can continue building out the other elements of this PR in the meanwhile!

EnumName.EnumVariant was the UX I was going for, a la the enum modules, and I think that basically necessitates a class

If you haven't seen it yet, you should check out the #[classattr] annotation we support in #[pymethods] blocks. We already went through a lot of trouble to allow that to safely support attributes that are instances of the containing class, so you should definitely be able to re-use that to expose the variants.

I took a stab at getting rid of all the PyClass constraint, but it's going to require a slot of boilerplate on its own:
We need a Layout, and the only blanket implementation is for PyClass: https://docs.rs/pyo3/0.11.1/pyo3/type_object/trait.PyLayout.html#impl-PyLayout<T>
So does Initializer, which is only implemented in for PyClass and native types (which this definitely isn't). https://docs.rs/pyo3/0.11.1/pyo3/pyclass_init/struct.PyClassInitializer.html
I managed to get enough of the traits in there to compile (was just missing one, it turns out), but it feels... janky. We don't actually need the Inventory or the ProtoRegistry, but the constraints on PyClass mandate them. Do we think we could loosen some of those constraints, or would that break other things?

Thanks for continuing to iterate on this!
Regarding the layout, I think that we could try adding a new struct like this:
struct PyEnumLayout<T> {
    base: PyAny,
    value: T
}

This new type could get a new blanket layout?
As for the initializer, I think that we can use PyClassInitializer by adding a new function similar to create_cell_from_subtype. The new function would instead return PyResult<*mut PyEnumLayout<T>>.

We don't actually need the Inventory or the ProtoRegistry

I actually think we probably do want to support #[pymethods] and #[pyproto] for enum classes? So I think we do actually need the inventories.

I took a stab at getting rid of all the PyClass constraint, but it's going to require a slot of boilerplate on its own:

I really don't think we should do so.
So now we're going to introduce new lots of boilerplates for reducing boilerplates for pyclass?
I don't think it's so meaningful and believe that reusing all pyclass components is the simplest way and also easy to maintain.

I think what we really need here is to provide a nice API for our Rustic enum. How to implement it does not matter so much. So I recommend to implement it just as pyclass.

I keep wondering if another way to think about enums is if we supported static getters on pyclasses? That would look from the python side very similar esp if we could subclass Enum...

I actually think we probably do want to support #[pymethods] and #[pyproto] for enum classes? So I think we do actually need the inventories.

I'm not sure I agree with this. Do we have examples of Enums in python with methods on them? It seems like usually they're just sigils in Python.

I'm not sure I agree with this. Do we have examples of Enums in python with methods on them? It seems like usually they're just sigils in Python.

Example:
https://git.libre-soc.org/?p=ieee754fpu.git;a=blob;f=src/ieee754/div_rem_sqrt_rsqrt/core.py;h=9f925b871493a6885d92366d648ea6c57bb39c20;hb=HEAD#l28
class DivPipeCoreOperation(enum.Enum):
    """ Operation for ``DivPipeCore``.

    :attribute UDivRem: unsigned divide/remainder.
    :attribute SqrtRem: square-root/remainder.
    :attribute RSqrtRem: reciprocal-square-root/remainder.
    """

    SqrtRem = 0
    UDivRem = 1
    RSqrtRem = 2

    def __int__(self):
        """ Convert to int. """
        return self.value

    @classmethod
    def create_signal(cls, *, src_loc_at=0, **kwargs):
        """ Create a signal that can contain a ``DivPipeCoreOperation``. """
        return Signal(range(min(map(int, cls)), max(map(int, cls)) + 2),
                      src_loc_at=(src_loc_at + 1),
                      decoder=lambda v: str(cls(v)),
                      **kwargs)

oh yep, fair enough. In that case, I think PyClass is the way to go. Though I think perhaps initially I'll try to land the change without pymethod support, then we can add it.

Any luck @stillinbeta ?

Sorry, I don't have a lot of time during the week to work on this (day job
drains my programming energy). Will give it a shot tomorrow!
On Fri, 24 Jul 2020 at 12:53, Squirrel<EMAIL_ADDRESS>wrote:

Any luck @stillinbeta https://github.com/stillinbeta ?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/PyO3/pyo3/pull/1045#issuecomment-663633525, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AAD724BCC2Y2TR2A43LXN4DR5G4AFANCNFSM4O63GGYA
.

Don't worry, that’s the order of OSS

Made some progress this weekend! You can see that you can now return enums from pyfunctions, and they'll be Python-ified properly. However, I ran into issues when trying to pass one back:
error[E0119]: conflicting implementations of trait `pyo3::FromPyObject<'_>` for type `MyEnum`:
 --> tests/test_enum.rs:6:1
  |
6 | #[pyenum]
  | ^^^^^^^^^
  |
  = note: conflicting implementation in crate `pyo3`:
          - impl<'a, T> pyo3::FromPyObject<'a> for T
            where T: pyo3::PyClass, T: std::clone::Clone;
  = note: this error originates in an attribute macro (in Nightly builds, run with -Z macro-backtrace for more info)

Any ideas how to get around this? Should be implementing a different trait, like PyTryInto?

How does this work without impl FromPyObject?

Do you mean “does it compile without that part?”
If so, yes, and the appropriate test cases pass
On Mon, 27 Jul 2020, 03:28 Yuji Kanagawa<EMAIL_ADDRESS>wrote:

How does this work without impl FromPyObject?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/PyO3/pyo3/pull/1045#issuecomment-664170939, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AAD724BATAES6E4KG4T4GETR5UUDRANCNFSM4O63GGYA
.

Nice work @stillinbeta ! As an extension I wonder if it would be possible to use enums where the numeric value is not specified? I know on the rust side you could access the https://doc.rust-lang.org/std/mem/fn.discriminant.html but whether that helps at all I'm less certain.

If so, yes, and the appropriate test cases pass

Then why should we need that impl?

Then why should we need that impl?

+1. Like for #[pyclass], I think this impl gets derived automatically if you have #[derive(Clone)].

The impl is because I want passing the class in to rust to turn into the
enum variant, not the a type object. I don't think that'll work
automatically
On Sat, 1 Aug 2020, 04:41 David Hewitt<EMAIL_ADDRESS>wrote:

Then why should we need that impl?
+1. Like for #[pyclass], I think this impl gets derived automatically if
you have #[derive(Clone)].
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/PyO3/pyo3/pull/1045#issuecomment-667496587, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AAD724F32SVXBUIATXBO7QDR6PILXANCNFSM4O63GGYA
.

the test_enum_arg behaviour doesn't work right now, that's the problem:
Traceback (most recent call last):
  File "<string>", line 1, in <module>
TypeError: Can't convert <class 'Variant'> to MyEnum
test test_enum_arg ... FAILED

There's no way to automatically determine that I want the class Variant to map to MyEnum::Variant, I need to produce that code myself.

Oh, I see what you mean now! I don't think that MyClass.Variant should be a separate type? I've marked that code in the comment above.

Ah yeah, that makes sense. I misinterpreted how Enum was architected.
On Sun, 9 Aug 2020 at 17:04, David Hewitt<EMAIL_ADDRESS>wrote:

Oh, I see what you mean now! I don't think that MyClass.Variant should be
a separate type? I've marked that code in the comment above.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/PyO3/pyo3/pull/1045#issuecomment-671100781, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AAD724CWL5W5LZX2NUNYEMTR74FMDANCNFSM4O63GGYA
.

The one advantage of every variant having its own class is it made mapping the variants to their classes fit better into the model of struct -> class. I think to create instances of Variant, I need to make some use of IntoPython, any ideas what that would look like? I'm a little lost in the type system right now.

I think MyClass::Variant.into_py(py) should already do the into-python conversion you're asking for?
FWIW if you rebase on master I just merged some simplifications to the type system, which hopefully will help!

impl pyo3::IntoPy<pyo3::PyObject> for #enum_ {
            fn into_py(self, py: pyo3::Python) -> pyo3::PyObject {
                self.into_py(py)
            }
        }

is definitely not going to do it, that's just recursion.

Oh heh I see what you're asking 😄
You probably want to use the same implementation as #[pyclass], which uses Py::new
https://github.com/PyO3/pyo3/blob/bcb90775b43659a58f44755d3fbaf92ac493d8c2/pyo3-derive-backend/src/pyclass.rs#L379

Given https://github.com/PyO3/pyo3/pull/1065 is merged in, do we want to also try and get this landed so they can be in 0.12 together or does that PR also make it possible to convert simple rust enums to python enums so this PR is now not needed?

#1065 enables the Python -> Rust direction, but it doesn't really solve the case of data enums like we see here (afaik).
I'm now thinking that this new macro #[pyenum] makes sense to land in 0.13, with #[pyexception]. That should also give time for this to be finished off.

Still keen on using this and having proper python enums! What's left to do?

Same here, I'm definitely looking forward to this and I'm happy to help.

I think at this point it's reasonable to assume the original PR author has unfortunately not been able to find the time to finish this off, so I guess they wouldn't mind if anyone is interested in copying this branch and reopening it as a new PR.
I think that rebasing it on master, applying the review changes I've made here, and then fixing any subsequent test failures would be a great starting point. I don't think there's particularly far to go for us to merge this!

Yeah, I've mostly moved onto other projects, sorry for not un-licking this
particular cookie sooner. Go forth with my blessing, and I'll try to answer
questions about my code if they come up.
On Tue, 10 Nov 2020, 01:46 David Hewitt<EMAIL_ADDRESS>wrote:

I think at this point it's reasonable to assume the original PR author has
unfortunately not been able to find the time to finish this off, so I guess
they wouldn't mind if anyone is interested in copying this branch and
reopening it as a new PR.
I think that rebasing it on master, applying the review changes I've made
here, and then fixing any subsequent test failures would be a great
starting point. I don't think there's particularly far to go for us to
merge this!
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/PyO3/pyo3/pull/1045#issuecomment-724498647, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AAD724CGGUIBTJESOMBJ5U3SPDOSZANCNFSM4O63GGYA
.

Hey, I'll take this.

This is now superseded by #2002. Thanks again for kicking this off.


Mention db-postgres/async-postgres in the docs

See this hn thread: https://news.ycombinator.com/item?id=27238671
People seem to think that threaded Rails isn't worthwhile because pg is blocking, but you have solved the problem with async-postgres (which is awesome!).
Since falcon isn't too useful with rails if you're using a blocking db driver, it might be worth mentioning their use in the rails integration guide (along with any other async versions of common libraries needed to make threaded ruby worthwhile).

I have archived async-postgres and async-mysql and linked to the respective db- gems.
I'll follow up with further changes/improvements to the documentation.

Oh ok great!

I just read this comment on HN:

On this topic, a warning for anyone trying to implement async rails with postgres: beware. Connections are per-thread in the ‘pg’ gem (and every other driver I’ve used), so one client’s connection may commit/abort another client’s transaction, and they end up stomping all over each other. Which you will only observe under load.

Is this a problem for falcon, too?

I would not recommend combining AR and Falcon at this time, because AR connection state is per-thread. There is work to correct this deficiency. https://github.com/rails/rails/issues/42271
I would recommend using the db gem: https://github.com/socketry/db which is as fast if not slightly more efficient than AR.

Bit of an aside, I imagine people visiting the db readme/homepage might want to be able to get an idea at a glance of how it compares to AR, or other existing gems. My impression is "it's a totally different thing: you get none of the AR abstractions, you just connect to the db and write sql" but I may be way off.

For data modelling we have https://github.com/socketry/db-model I will cross link these projects. For migrations we have https://github.com/socketry/db-migrate
Both projects are immature and require more work but they both do work and I'm using them in production.

I would not recommend combining AR and Falcon at this time, because AR connection state is per-thread. There is work to correct this deficiency. rails/rails#42271
I would recommend using the db gem: https://github.com/socketry/db which is as fast if not slightly more efficient than AR.

Thanks for the answer. Guess the I am not migrating a bigger legacy Rails app to falcon then yet, since I'm stuck with active record and therefore cannot us the db gems (until active record has support for them afaik).

Yes, well if AR support for fibers is important you should voice your support on the relevant issue :)

Does Falcon work well with Jeremy Evans' Sequel?
A question that's bit of an aside, but not too far off what's being discussed here. 🙂
I took a look at Sequel's default connection pool implementation, and it seems to use thread locals, which should also be fiber locals, but figured maybe someone has tried it and had proper confirmation.


tour: Strange results with appending to slice...

Context: https://tour.golang.org/moretypes/11
I typed the exact code in my editor and didn't get the result the go tour gives....
Here's the output on my install of Go :
a len=0 cap=0 []
a len=1 cap=1 [0]
a len=2 cap=2 [0 1]
a len=5 cap=6 [0 1 2 3 4]

Here's the go tour output with the same code :
a len=0 cap=0 []
a len=1 cap=2 [0]
a len=2 cap=2 [0 1]
a len=5 cap=8 [0 1 2 3 4]

Finally, here's the code:
package main

import "fmt"

func main() {
	var a []int
	printSlice("a", a)

	// append works on nil slices.
	a = append(a, 0)
	printSlice("a", a)

	// the slice grows as needed.
	a = append(a, 1)
	printSlice("a", a)

	// we can add more than one element at a time.
	a = append(a, 2, 3, 4)
	printSlice("a", a)
}

func printSlice(s string, x []int) {
	fmt.Printf("%s len=%d cap=%d %v\n",
		s, len(x), cap(x), x)
}

This is not a bug.  The exact way that append affects the capacity of the returned slice can vary between Go releases.  The contents and length of the slice must match.  The capacity need not.

I believe the effect you are observing is because int is 64 bits on your local implementation and 32 bits on the tour.

:+1:  Thanks for the feedback @ianlancetaylor and sorry for the newbie question :-)


Adding C++ code for issue #1505

What have you Changed(must)
Added C++ code for 217. Contains Duplicate
Issue no.(must) - #1505
Self Check(Tick After Making pull Request)

[x] This issue was assigned to me if not it will be marked as spam.
[x] My file is in the proper folder
[x] I am following clean code and Documentation.
[x] I have added the title and what program will do first in the file
[x] I have named the file as (Problem #). (Problem Title(in Camel Case)).(extension)
ex. 2. AddToNumbers.py

README - How to Contribute

I have added this solution with necessary comments. Please merge this.


Inconsistencies in the Ignore() method

Minor issue.
This code ignores a property
modelBuilder.Entity("Foo").Ignore(...);
Adding a lambda as the argument will make it ignore the type only. At least from the inline documentation.
modelBuilder.Entity("", p => { }).Ignore();
I would have expected the same options for Ignore.

Hey,
This is by design...
There are two patterns on the Fluent API. The first one drills down on each method call, so you end up with multiple lines of code to configure each entity.
modelBuilder.Entity<Blog>().Property(b => b.Name).HasMaxLength(200);

modelBuilder.Entity<Blog>().Ignore(b => b.DisplayName);

The lambda overload of Entity that you mentioned is designed so that you do all the config for the entity in the lambda:
modelBuilder.Entity<Blog>(blog =>
{
    blog.Property(b => b.Name).HasMaxLength(200);

    blog.Ignore(b => b.DisplayName);
});

The return type of this is the top level ModelBuilder, so you can keep chaining things together. Therefore Ignore after this overload is an Ignore at the ModelBuilder level (i.e. ignoring a type) rather than an ignore at the entity level (which you would do inside the lambda):
modelBuilder
    .Entity<Blog>(blog =>
    {
        blog.Property(b => b.Name).HasMaxLength(200);

        blog.Ignore(b => b.DisplayName);
    })
    .Entity<Post>(post=>
    {
        post.Property(b => b.Title).HasMaxLength(500);
    })
    .Ignore<Tag>();


Only modifying policies when configured to support it

NIFI-2421:

Only attempting to clone policies when NiFI supports a configurable authorizer.

+1
Visually verified code and did a contib check build. In standalone and clustered environments I did various tests involving copy/paste and policies and it worked as expected. Thanks @mcgilman, I will merge it in.


Memory leak due to key dependencies never being removed

Vue version
3.3.4
Link to minimal reproduction
https://play.vuejs.org/#eNqNU01v2zAM/SuCLnWQxM7QndK06Fbk0AH7wLqjL5pMx+psSZDkJEDg/z5Kqh3XDYoKMESTj3yPNH2iX7RO9y3QNd1YboR2xIJr9V1ucikarYwjJ2KAcSf2sECrXJADc7zaliVwRzpSGtWQK6xxdeOT/MOVtKEQuR1yEwkH8gQumc0CLmK4amVElckqBvwzYkiSGbm9IyfvJnhCRrpndQsB7n39XSpDkhppBZZc3eC1IZ9WeNCcz2fnIv6gvLRiNvnOXJUaJgvV9Np8uPNGd1mSkg81MNnqiTLfkZAODMpDBcjw+PI27WLSyXx+5j1T+teB6mIFDJmBomce9RDNl2uTxS8cvi1dUGdRcSl26bNVEhfg5JNyylWjRQ3mp3YCO8rpGknjmCmra3X4FnzOtLDo/bwC/u+C/9kevS+nvwxYFAc5HWKOmR24GN4+/YAj2kOwUUVbI/qd4G+wqm69xgj72soCZY9wQe1jWGIhd3/s9uhA2r4pL9Qju4DPKW7wwzutn+Vep9chDweLU4w/ybJhejLHGHhdBDmi2Mo5bddZxguJaQXUYm9SCS6TusnuEZYZXA7RwBLX8h4Z089ZIawbu1OwzfKvUQecLBYZNe7zw7jN0oAswPixfIx2kjamnoTe0A9D6f4D9x1umQ==
Steps to reproduce
Inside the callback of a reactivity hook (e.g. watchEffect, computed), read a reactive value from a key-based data structure (e.g. set.has(key), map.get(key), object[key]).
Then allow it to rerun an arbitrarily large number of times with different keys.
What is expected?
I would expect this to not result in arbitrarily large memory usage.
One solution worth considering is that a dependency should be removed as soon as the callback runs the next time and no longer uses the dependency from its previous run. But if this can be demonstrated to necessarily result in other performance drawbacks (e.g. every key-based access becoming O(n) rather than the semantically expected O(1)), then that solution may not be viable.
Ideally, it should additionally be ensured that, even if the callback never runs again (thus never expiring the unused deps), the memory for the unused deps is eventually freed by the time the callback (or computed ref) is garbage-collected, but I understand this may not be possible in JS (at least without very complex compile-time behavior).
What is actually happening?
In this minimal reproduction, one of two things eventually occurs after some time (depending on various factors):

The page runs out of memory and crashes.

The following error occurs due to the reactive value having too many deps that are never cleaned up:

RangeError: Map maximum size exceeded
    at Map.set (<anonymous>)
    at track (vue.runtime.esm-browser.js:501:15)
    at Proxy.has (vue.runtime.esm-browser.js:821:5)
    at <anonymous>:26:13
    at callWithErrorHandling (vue.runtime.esm-browser.js:1550:18)
    at callWithAsyncErrorHandling (vue.runtime.esm-browser.js:1558:17)
    at ReactiveEffect.getter [as fn] (vue.runtime.esm-browser.js:3092:16)
    at ReactiveEffect.run (vue.runtime.esm-browser.js:428:19)
    at job (vue.runtime.esm-browser.js:3134:14)
    at callWithErrorHandling (vue.runtime.esm-browser.js:1550:32)

System Info
No response
Any additional comments?
As a side note, when developing in Vue I often find that I have to think about memory leaks, which I really don't enjoy since how Vue's reactivity system manages memory should be an abstracted implementation detail. I often manually test if various things result in memory leaks, and this is one which did. This is one of the (few!) things I dislike about Vue: frequently having to reason about implementation details. In this case, I have to think about whether reactive values, callbacks, and/or dependencies can be garbage-collected after certain conditions occur. I'm not sure if Vue can be blamed for this problem (whether it's a problem inherent to Vue's design or to JS), but I figured it was worth noting that I believe it is a problem that has a significant negative impact on Vue's DX in my experience.
I ran into this because we generate new IDs client-side and read them from various reactive sets and maps. Our clients can easily trigger this by copying and pasting a large selection of items in the UI, for example, generating large amounts of new IDs for the new items, which Vue internally adds as reactive dependencies. Even if they undo their paste, the dependencies for the new IDs stay in memory. It doesn't help that our application is a SPA.
And even if this happens not to be a significant problem for our particular use case, the same cannot necessarily be said in general, and this is still an issue which fixing would reduce the mental model required to use Vue's reactivity. I don't want to constantly have to think about whether memory leaks are a problem just because I'm using a reactive key-based data structure in Vue. And not to mention, I never want to have to comment why certain code is necessary to avoid these memory leaks!

This is not a "memory leak", you just created millions of (valid) deps for a single set's has method. And all of these deps are required, since the effect should be re-run as soon as you do set.add("an existing dep") somewhere else in the code. So as long as that effect exists, we need to keep these deps, and they can't be "cleaned up". Vue has no way of realizing that these deps are no longer required in the context of your business logic. How would it know that 1) the user removed the list of ids that they pasted and 2) interpret that as guaranteeding that "these ids will not reappear in the set later in the effects lifecycle"?
It's however a great demo of the overhead that fine-grained reactivity such as ours comes with, and a reminder that there are edge cases, usually involving large data sets, where the overhead is becoming a problem and switching to an immutable data approach makes sense.
I'd be interested in better understanding how this happened in an actual app. Did you in fact hit that RangeError in a production scenario or is this just a result of this demo (max size of a Map is upwards of 16-20 Million entries)?
I'd also be interested in examples for those other types of situations where you need to think about implementation details because of memory.
Maybe we need a way to manually reset an effect's deps for certain edge cases? Not sure on the spot.

Some further thoughts: While my above explanation is valid for the code in the example, which used strings for the values, we might have an optimization opportunity for Map/Set keys that are objects?
Technically, there would be a way to track these in an additional WeakSet and - after a Scheduler flush? - purge any depsMap's keys that are 1) not primitive types and 2) no longer in that WeakSet. Though we would need to see how that impacts performance for more common scenarios.
@johnsoncodehk You worked a lot on some (yet unmerged) reactivity optimizations recently. Do you have any thoughts on this?

(accidentally delete my comment so here's a re-write)
Thinking further about this, I think we might have a potential for optimzation when it comes to Map keys / Set content that are objects.
My previous explanation holds true for keys that are primitive types, but if we look at objects, those could be held in memory unnecessily if the only think keeping them from being garbage collected is the fact that they serve as a key in a reactive Map's depsMap.
Technically, I think it should be feasable to track Map keys that are objects in a WeakMap instead of a normal Map?
@johnsoncodehk maybe you have thoughts on this as you went quite deep into reactivity optimizations recently.

@LinusBorg Perhaps I've misunderstood, but I think the scenario you're describing involving object keys is the same problem I tried to fix in #7827. I will need to redo that PR once Johnson's reactivity optimizations are merged.

Yep, that seems to be exactly it.

This is not a "memory leak", you just created millions of (valid) deps for a single set's has method. And all of these deps are required, since the effect should be re-run as soon as you do set.add("an existing dep") somewhere else in the code. So as long as that effect exists, we need to keep these deps, and they can't be "cleaned up".

Perhaps the deps are required given the way Vue is designed currently, but in my opinion that ideally shouldn't be necessary. I'll use an analogy to attempt to justify this: Suppose an effect watches ref A on its first run. Then ref A's value changes, so it reruns, but in its second run it doesn't read the value of ref A and instead only reads the value of ref B. Then ref A's value changes again. This does not trigger the effect to rerun.
The same is true of values in a set or keys in a map/object for example. If it watched one key change in a previous run but no longer reads that key in a later run, changing the value of the key from before does absolutely nothing--it doesn't rerun any effect. So the dep is there for no reason.
Hope that makes my perspective clearer!

This is not a "memory leak", you just created millions of (valid) deps for a single set's has method. And all of these deps are required, since the effect should be re-run as soon as you do set.add("an existing dep") somewhere else in the code. So as long as that effect exists, we need to keep these deps, and they can't be "cleaned up".

@LinusBorg Perhaps the deps are required given the way Vue is designed currently, but in my opinion that ideally shouldn't be necessary. I'll use an analogy to attempt to justify this: Suppose an effect watches ref A on its first run. Then ref A's value changes, so it reruns, but in its second run it doesn't read the value of ref A and instead only reads the value of ref B. Then ref A's value changes again. This does not trigger the effect to rerun.
The same is true of values in a set or keys in a map/object for example. If it watched one key change in a previous run but no longer reads that key in a later run, changing the value of the key from before does absolutely nothing--it doesn't rerun any effect. So the dep is there for no reason.
Hope that makes my perspective clearer!

Yeah, I'm actually already convinced since looking at @skirtles-code 's fix,  which would do what you ask for, for object keys and normal string based ones.

Fixed by #5912


[feature] Rocketmq producer side supports idempotency

In the current process of rocketmq producing messages, there is uncertainty in the network call itself, that is, the so-called processing state, so there will be repeated situations. This problem is also encountered by many other MQ products. The usual method is to require the consumer to deduplicate when consuming messages. The idempotent basis should be generated by the message producer. When sending a message, we can pass the key of the message. Set the id, the corresponding API is org.apache.rocketmq.common.message.setKeys(String keys) The logic of this part should be optimized by the producer
FEATURE REQUEST

Please describe the feature you are requesting.

Provide any additional detail on your proposed use case for this feature.

Indicate the importance of this issue to you (blocker, must-have, should-have, nice-to-have). Are you currently using any workarounds to address this issue?

If there are some sub-tasks involved, use -[] for each sub-task and create a corresponding issue to map to the sub-task:

sub-task1-issue-number: sub-task1 description here,
sub-task2-issue-number: sub-task2 description here,
...

@duhenglucky please assign to me

@duhenglucky please assign to me

It's a big feature, do you have any plan or proposal if you want to pick up this issue?

The details are still being sorted out and other Rocketmq issues are still in progress

@complone It's a great improvement proposal. hope to see your detailed design. we'd better discuss it in the community first, @ltamber and me are willing to join in and complete this feature together.

The real existence of this function I think I am referring to kafka's inbox, etc. to send the rId that implements mq。

@complone It's a great improvement proposal. hope to see your detailed design. we'd better discuss it in the community with RIP first, @ltamber and I are willing to join in and complete this feature together.

May I ask where is the corresponding RIP discussed? Can you give me a link

阿

@azhsmesos I think I need to investigate the implementation mechanism of rocketmq transactions first. I am currently sorting out the related method call timings of kafka and rocketmq transactions. After sorting out, I will establish a RIP discussion

Hello everyone, the problems we need to solve at this stage are:
In order to improve the accuracy of data and ensure the consistency between the source and the target in the end-to-end transmission process, it is necessary to do idempotent at the producer or consumer
However, if consumers cannot connect to the nameserver to obtain partition information temporarily due to network jitter, they need to implement idempotent mechanism in the producer
For this reason, our goal is to align the produerId and transactionId of kafka. There are three points to note at this stage by following the code

First, before sending data, you need to manually create a transaction coordinator to control the one to many relationship between PID and transcationId. To this end, you need to ensure that the consumption progress of offset is notified to the tc in a timely manner and that the messages of submitted but unsettled transactions will not be deleted by mistake during the simultaneous process of the scheduled deletion task
Whether it is necessary to judge the progress of the current offset and the global PID visible transaction offset in PullLiteProductor in order to enable PID ->transactionid to achieve cross partition transaction consistency
When downstream consumers consume, they need to ensure that messages marked as transactionId in the upstream market are perceived by downstream consumers

see RIP-47 : https://docs.google.com/document/d/1nResLevPbeGmKwSQiId_jw0tfBhJtoPZTduOQL3qxNg/edit?usp=sharing


Conda build for head/headless x with bullet/without bullet, CI test, issues fixed

Motivation and Context

Made Linux binaries build for head / headless x with bullet / without bullet
Improved Conda build readme
Use Frozen conda-build lib version that works with current setup
Added conda binaries build step to CI without upload to Anaconda upload for testing purposes.
Next Conda workflows are supported now:

How Has This Been Tested

Built v0.1.5 binaries.
Added CI build step

Types of changes

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

I added the CI step that build conda package (headless + with bullet) for each PR, it takes 10 minutes and validates that all updates to meta.xml are there and our nightly build is running ok:

The CI jobs that builds all 4 binaries (head/headless x with bullet/without bullet) for Linux added to master only nightly runs (I will add filters) and finished successfully:

Made Linux binaries build for head / headless x with bullet / without bullet
Improved Conda build readme
Use Frozen conda-build lib version that works with current setup
Added conda binaries build step to CI without upload to Anaconda upload for testing purposes.


feat(Interactive): Reuse compiled native lib for same physical plan

Add a server-side query cache on hqps engine.

Add plan_id field in PhysicalPlan.
Maintain the mapping between plan_id between compiled dynamic lib path.
Avoid unnecessary recompilation for same physical plan.
Each shard in hqps engine will have exactly one actor handling codegen request, which is actually delegated to hiactor::thread_resource_pool. And the thread will not be blocked.

Codecov Report

Merging #3301 (01e5978) into main (2d19869) will not change coverage.
The diff coverage is n/a.

Additional details and impacted files

@@           Coverage Diff           @@
##             main    #3301   +/-   ##
=======================================
  Coverage   41.39%   41.39%
=======================================
  Files         107      107
  Lines       11203    11203
=======================================
  Hits         4637     4637
  Misses       6566     6566

Continue to review full report in Codecov by Sentry.

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


Edit: Boing (Spain)

Channel ID (required)
Boing.es
Channel Name
No response
Alternative Names
No response
Network
No response
Owners
No response
Country
No response
Subdivision
No response
City
No response
Broadcast Area
No response
Languages
No response
Categories
No response
NSFW
None
Launched
No response
Closed
No response
Replaced By
No response
Website
No response
Logo
https://des98fz5jsos4.cloudfront.net/boing/static/base/images/refresh-logos/logo_es_es.webp
Notes
No response

Dupe (issue)


Feature Request: Add a way to temporarily pause the plotter

I know about Ctrl+C to cancel after the current plot, but it would be great if there were a way to pause the program mid-way without losing the current plot.
This would be useful for when I want to set the plotter to go for a while, but I need to use my computer quickly but don't want it to be painfully slow.

On Linux you can use
To pause:  kill -SIGSTOP [pid]
To resume:  kill -SIGCONT [pid]
As spooky as it sounds, those commands neither kill, not stop the process. Pause and resume.

Amazing! Is there a way to do this on Windows?
This should be more prominent in the documentation, imo. This is such a useful feature!

This should be more prominent in the documentation, imo. This is such a useful feature!

Unfortunately, this is not possible in Windows (afaik), which is why a Pause/Resume feature wasn't implemented into the Chia GUI- per Hoffman (I think in Keybase, months ago).

https://www.howtogeek.com/199976/how-to-pause-or-resume-a-windows-application-using-process-explorer/ says you can do it with ProcessExplorer and the Python psutil package says it works with Windows.  I don't know if there's a builtin way in the Windows UI or not.

If someone with windows wants to test this and see if it is able to complete a plot that is also valid, please update us here!

For Linux CLI Ctrl-z works to suspend and using fg to resume.
For Windows you can use the Resource Monitor to select the plotter processes, right click and select suspend. You can right click and select resume to continue (not tested on this plotter, but used successfully on many other applications)


Webhooks Support

Sorry if this exists and I'm not seeing it, but webhooks is a feature that would enhance the mod greatly, is largely the draw of DiscordSRV, and would make the mod generally much better.

I second this.
If this is implemented in a similar way to disfabric (image) that would be good.

DisFabric does not have a license and All Rights Reserved on Curseforge...
But Discord-Fabric Link also implements webhooks under CC0, which means we may be able to integrate it.

DisFabric does not have a license and All Rights Reserved on Curseforge...
But Discord-Fabric Link also implements webhooks under CC0, which means we may be able to integrate it.

If this is implemented in a similar way to disfabric

Implemented in 0.8.0 :smile:


Add Maya Chain Support - Wallet functions only

Description
Add Mayachain
Send and Receive only, e.g. wallet function only.

Looking to add price and deposit functions but see how we go in this release.


builtin/Valtrace fails periodically for Windows debug builds

I don't see this failure anywhere else. But from time to time, Windows debug builds are failing on builtin/Valtrace:
---- 256 tests ran.
�[92m---- Passed: 255�[0m
�[91m**** FAILED: 1 test, listed below:�[0m
�[91m**** FAILED: builtin/Valtrace�[0m
grammar original hash:  0F1D8ED730FB20A6DCFD3C59D4625420AECCCDD488E2E778F241F2F9D5DB64A4
grammar generated hash: 0F1D8ED730FB20A6DCFD3C59D4625420AECCCDD488E2E778F241F2F9D5DB64A4
Test suites run: 5, num failed: 1
Test suites failed: (stdlib-release)
The above is from https://cirrus-ci.com/task/5474829369344000
A full log is attached.
test.log.txt

Has anyone else seen this happen lately?


Get Lidar rays without hit

Is it possible to get the vectors of all rays cast by a Lidar, even if there was no hit within the maximum range? While I can use point cloud data to determine which areas are occupied, I also would like to know which areas are certainly empty.

Hi, although not directly possible this modification would be very easy, you just need to modify the sensor file (Unreal/CarlaUE4/Plugins/Carla/Source/Carla/Sensor/RayCastLidar.cpp)
Inside this file you have a function that shoots the ray and tests if there was a blocking hit, I think modifying it like this it should work
  if (HitInfo.bBlockingHit)
  {
    if (Description.ShowDebugPoints)
    {
      DrawDebugPoint(
        GetWorld(),
        HitInfo.ImpactPoint,
        10,  //size
        FColor(255,0,255),
        false,  //persistent (never goes away)
        0.1  //point leaves a trail on moving object
      );
    }

    XYZ = LidarBodyLoc - HitInfo.ImpactPoint;
  }
  else
  {
    XYZ = LidarBodyLoc - EndTrace;
  }
    XYZ = UKismetMathLibrary::RotateAngleAxis(
      XYZ,
      - LidarBodyRot.Yaw + 90,
      FVector(0, 0, 1)
    );

  return true;


Prepare v0.77.4 changeset

Describe your changes
This PR backports several fixes for inclusion in the 0.77.x release series, as v0.77.4.
Issue ticket number and link
Specifically, the relevant PRs are:

https://github.com/penumbra-zone/penumbra/pull/4615
https://github.com/penumbra-zone/penumbra/pull/4652
https://github.com/penumbra-zone/penumbra/pull/4657

Checklist before requesting a review

[x] If this code contains consensus-breaking changes, I have added the "consensus-breaking" label. Otherwise, I declare my belief that there are not consensus-breaking changes, for the following reason:

Careful attention was paid to selecting only non-breaking changes, for compatibility with the running testnet chain and its nodes.

lgtm


Math Highlighting is Buggy

Math highlighting is very buggy.

In fact, if you check README.md, the math syntax highlighting is incorrect even in the demo.

Thanks for reporting this. I think this has something to do with how we are embedding the math rules. I will take a closer look at this later on this week.

Okay, this is now resolved in v1.22.0. Thanks again for reporting!


Lashof cleanup

Resolved issue #17 and updated example notebook.

@jhamman – can we check base sometime soon to resolve the failing test?

@freyac - I don't think there's anything wrong here. If this is all done, I think we can merge as is.


Introduce s3 upload method

Amazon S3 Upload method
http://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/S3.html
It was difficult with my skills to get arguments from /ingress-ice and /ingress-ice.cmd.
Only the methods provided.

Thank you! I'll merge it when i have enough time to rewrite /ingress-ice(.cmd) for it.

Implemented an interface for this function, thank you.


Add b/c test for Python API client

Verify that the generated Python API client continues to work:

When an optional property is added to a server response.
When an optional parameter is added to an API query.

This is not a complete test of codegen!  It is a smoke test that backwards compatibility (old clients with new lakeFS versions) will be possible.

@Jonathan-Rosenberg I think you did this; can we close with details, rather than "as not planned"?


Error fetching models in use-package but otherwise it works

Hi there!
I'm not sure why robby attempts to access the api immediately before I use any command (I guees it might be llm library [?]...
But still... this fails all the time, even though robby-chat works as expected afterwords
(use-package! robby
  :custom
  (robby-api-url "https://api.together.xyz/v1/chat/completions")
  (robby-openai-api-key "xxxxxx")
  (robby-chat-model "mistralai/Mistral-7B-Instruct-v0.2")
  :config
  (robby-mode))

Also this, when calling robby-chat the first time only.
(use-package! robby
  :custom
  (robby-api-url "https://api.together.xyz/v1/chat/completions")
  (robby-openai-api-key "xxxxx")
  (robby-chat-model "mistralai/Mistral-7B-Instruct-v0.2")
  :commands (robby-chat))

Debugger entered--Lisp error: (error "Error fetching models: \"Incorrect API key provided...")
  error("Error fetching models: %S" "Incorrect API key provided: xxxxxx**************...")
  robby--get-models()
  byte-code("\300\301\302\303#\210\300\301\304\305#\210\300\301\306\307\310\301\311\312$#\210\300\301\313\314\315\316\317\320D\315\321\322\323\317\324\325\326\310\300\327\302\303#\210\300\327\330..." [put robby-api-options interactive-only t function-documentation "Chat API option transient." transient--prefix transient-prefix :command :init-value robby--init-api-options transient--layout vector 1 transient-column :description "Chat API Options" transient-option :key "m" "model" :argument "model=" transient:robby-api-options:model= completion-predicate transient--suffix-only defalias transient--default-infix-command :always-read :choices robby--get-models "t" "max tokens" "max-tokens=" transient:robby-api-options:max-tokens= :reader transient-read-number-N+ "e" "temperature" "temperature=" transient:robby-api-options:temperature= robby--read-temperature "p" "top p" "top-p=" transient:robby-api-options:top-p= robby--read-top-p "n" "n=" transient:robby-api-options:n= ...] 28)
  require(robby-transients)
  load-with-code-conversion("/home/uri/.config/emacs/.local/straight/build-29.3..." "/home/uri/.config/emacs/.local/straight/build-29.3..." nil t)
  require(robby nil nil)
  (progn (let ((custom--inhibit-theme-enable nil)) (if (memq 'use-package custom-known-themes) nil (custom-declare-theme 'use-package 'use-package-theme nil (list)) (enable-theme 'use-package) (setq custom-enabled-themes (remq 'use-package custom-enabled-themes))) (custom-theme-set-variables 'use-package '(robby-api-url "https://api.together.xyz/v1/chat/completions" nil nil "Customized with use-package robby") '(robby-openai-api-key "6f42180af007c79699ab1beb1b6e63507a76136dbb72e79a99..." nil nil "Customized with use-package robby") '(robby-chat-model "mistralai/Mistral-7B-Instruct-v0.2" nil nil "Customized with use-package robby"))) (require 'robby nil nil) (robby-mode) t)
  (progn (progn (let ((custom--inhibit-theme-enable nil)) (if (memq 'use-package custom-known-themes) nil (custom-declare-theme 'use-package 'use-package-theme nil (list)) (enable-theme 'use-package) (setq custom-enabled-themes (remq 'use-package custom-enabled-themes))) (custom-theme-set-variables 'use-package '(robby-api-url "https://api.together.xyz/v1/chat/completions" nil nil "Customized with use-package robby") '(robby-openai-api-key "6f42180af007c79699ab1beb1b6e63507a76136dbb72e79a99..." nil nil "Customized with use-package robby") '(robby-chat-model "mistralai/Mistral-7B-Instruct-v0.2" nil nil "Customized with use-package robby"))) (require 'robby nil nil) (robby-mode) t))
  elisp--eval-last-sexp(nil)
  eval-last-sexp(nil)
  eros-eval-last-sexp(nil)
  funcall-interactively(eros-eval-last-sexp nil)
  command-execute(eros-eval-last-sexp)

BTW, same error appears when trying to call the robby-commands transient menu... even though most commands are already able to access the alternative API as customized above... could it have something to do with the hard coded URL in robby--get-models?

Thanks for the report. It looks like I have an auto-loading / early-loading problem re the API key. I'll sort that out.
Also, I missed the hard-coded API URL in the get models call. I'll fix it. I might also provide an option to turn off the fetching of the models and just let the user type in a string.
It may be a day or two

OK, I figured out the issues and have a partial fix in #3. Use the fix-2 branch to try it out.
See #3 for details: it's a temporary, WIP workaround. The issues look easy enough to fix but I won't have time today. This should get you going in the meantime though.
Thanks again for the feedback.

Thanks, @stevemolitor, I'll take a look.
Also, thanks for starting this project. I love how streamlined and integrative the experience is. I'm yet to explorer the "builder" and custom commands infrastructure, which sounds exceptionally useful.


No Commit Message Icon in Primary Bar tab

Verify it's not a duplicate bug report

[X] I searched for similar bugs reported on GitHub and nobody has reported a similar issue. Search all issuees.
[X] I read Troubleshooting guide on Readme and there is not a guide on how to solve my problem.

Describe the Bug
Description:
I see no "Generate Commit Message" Icon in "Source Control" Primary Bar tab - forced to use command "Generate Commit Message."
Before today, the Icon was there and fully functional.
Steps to reproduce the bug

Stage a commit

Please tell us if you have customized any of the extension settings or whether you are using the defaults.
Settings changed:

Personalized Name: Liara-1106
Model: gpt-3.5-turbo-1106
Temperature: 0.25
Max Tokens: 1024
Top P: 0.8
Organization: org-...
Find Problems: Analyze the code for logical errors and any problems. If you find any, list then out using bullet points.
Add Comments: This code may need inline comments, comments, and docstrings. Choose which and where to add each, if at all, only where they are necessarily helpful.
Show Notification: True
Telemetry(Disable): False

Additional context

Command "Generate Commit Message" via Shift+Ctrl+P is functional.
I tried disabling the extension and reloading
I tried reinstalling the extension
I tried disabling other extensions that had the same Commit Message Generation functionality

I have the same problem. I use Code-Server. V 4.20.1 works. V4.21.0 it does not work.

Same problem here since I've updated VSCode to latest version in Windows 11.

Visual Studio Code has disabled their API to inject Genie AI generate commit message button in the textbox unfortunately. But I added a menu item in the source control like the following. Will keep this issue open until VS Code opens their up again


ARROW-13544 [Java]: Remove APIs that have been deprecated for long (Changes to Vectors)

See https://issues.apache.org/jira/browse/ARROW-13544
According to the discussion in #10864 (comment), we want to split the task into multiple parts.
This PR is for the changes related to vectors

Generally looks good, it looks like a lot of null literals where added in, it would be nice to comment those.  Thanks for the cleanup!

Generally looks good, it looks like a lot of null literals where added in, it would be nice to comment those. Thanks for the cleanup!

Comments added. Please check. Thanks.

@emkornfield Thanks for reviewing this PR. Do you have any more comments?

Nope looks OK to me.

+1