Removing rotation estimation decreases accuracy

I used the code in the current master branch to predict the bbox and joints for an image:

Works as well as expected.
Then I used the hand_tracker2 code in the other branch, which supports multiple hands detection and joints prediction, and got this:

Notice that the second hand from right (the one detected in both tests) - seems to get better joints prediction when the rotation is predicted.
I'm not sure if there is any other thing going on here, or if this is just a bad, sample size of 1 example, but should be taken into consideration.
Code:
palm_model_path = "./models/palm_detection.tflite"
landmark_model_path = "./models/hand_landmark.tflite"
anchors_path = "data/anchors.csv"

img = cv2.imread('data/hands.jpg')[:, :, ::-1]

# box_shift determines
detector = HandTracker(palm_model_path, landmark_model_path, anchors_path, box_shift=0.2, box_enlarge=1.3)
hands = detector(img)

f, ax = plt.subplots(1, 1, figsize=(10, 10))
ax.imshow(img)
for hand in hands:
    ax.scatter(hand["joints"][:, 0], hand["joints"][:, 1])
    ax.add_patch(Polygon(hand["bbox"], color="#00ff00", fill=False))

f.savefig("data/hands_out.png")

what do you mean "when the rotation is predicted". It's predicted in both cases. which is evident looking at the bounding boxes.
I've changed the anchor selection mechanism a bit to deal with exp overflow, but that's about it.

Ah I expected the title:

HAND TRACKER WITHOUT ROTATION ESTIMATION AND JOINT DETECTION

To be without rotation, but you are right, there obviously is rotation.
What do you think is the reason for the rotation to be predicted differently then?

So if you look here, you'll notice that I pick the detection with the largest bounding box.
In the case of multiple hands I pick the detection with the largest score .
Guess the first option worked better for that one hand, but one would have to test the model on some data with compatible ground truth to know which approach works best generally.

check out the new multihand branch. It's a bit cleaner than optical_flow. Accuracy could be better in some cases but I believe it's due to simplistic aggregation.

I've opened a clean new issue for this problem.


Function updates (description, env vars) are not applied if the ImageURI also changed in an update

Describe the bug
Updating other things than ImageURI in one update makes only the ImageURI to be updated. Other changes (like description, env variables) are not updated.
Steps to reproduce

Make a function using ACK based on Docker image with some description
Change the Docker ImageURI and description and trigger the update with ACK

Expected outcome
All changes made to the function gets eventually applied to the AWS Lambda function
Actual outcome
The ImageURI is properly updated in the function but other parts of the update are not.
Environment

Kubernetes version 1.28
Using EKS (yes/no), if so version? yes - eks.5
AWS service targeted (S3, RDS, etc.) - AWS Lambda

Additional notes
Initial function:
apiVersion: lambda.services.k8s.aws/v1alpha1
kind: Function
metadata:
  name: "adamtest1"
  annotations:
    services.k8s.aws/region: "us-east-1"
spec:
  name: "adamtest1"
  role: "arn:aws:iam::123:role/k8s/dev/k8s-dev-LambdaManagement"
  packageType: Image
  code:
    imageURI:  "123.dkr.ecr.us-east-1.amazonaws.com/registry:105"
  imageConfig:
    command:
      - "co.example.Lambda::handle"
  description: "Test function v105"

Function update:
apiVersion: lambda.services.k8s.aws/v1alpha1
kind: Function
metadata:
  name: "adamtest1"
  annotations:
    services.k8s.aws/region: "us-east-1"
spec:
  name: "adamtest1"
  role: "arn:aws:iam::123:role/k8s/dev/k8s-dev-LambdaManagement"
  packageType: Image
  code:
    imageURI:  "123.dkr.ecr.us-east-1.amazonaws.com/registry:106"
  imageConfig:
    command:
      - "co.example.Lambda::handle"
  description: "Test function v106"

ACK Logs:
ack-lambda-controller-lambda-chart-7b47cc5647-4ftdl controller {"level":"info","ts":"2023-12-20T08:33:31.179Z","logger":"ackrt","msg":"created new resource","account":"123","role":"","region":"us-east-1","kind":"Function","namespace":"default","name":"adamtest1","is_adopted":false,"generation":6}
ack-lambda-controller-lambda-chart-7b47cc5647-4ftdl controller {"level":"info","ts":"2023-12-20T08:34:20.513Z","logger":"ackrt","msg":"desired resource state has changed","account":"123","role":"","region":"us-east-1","kind":"Function","namespace":"default","name":"adamtest1","is_adopted":false,"generation":7,"diff":[{"Path":{"Parts":["Spec","Code","ImageURI"]},"A":"879130378853.dkr.ecr.us-east-1.amazonaws.com/registry:106","B":"123.dkr.ecr.us-east-1.amazonaws.com/registry:105"},{"Path":{"Parts":["Spec","Description"]},"A":"Test function v106","B":"Test function v105"}]}
ack-lambda-controller-lambda-chart-7b47cc5647-4ftdl controller {"level":"info","ts":"2023-12-20T08:34:21.227Z","logger":"ackrt","msg":"updated resource","account":"123","role":"","region":"us-east-1","kind":"Function","namespace":"default","name":"adamtest1","is_adopted":false,"generation":7}

An interesting and potentially related part is that when image gets updated, lambda function goes into some "update pending" state (when you go to it just after the update, you can see the blue bar saying that):

This suggests that maybe the bulk updates (with image + other things) are not working because maybe AWS does not allow for updates while it's in pending state (because of the image state?)

cc @aws-controllers-k8s/lambda-maintainer

@Vandita2020 Can we add an e2e test case for this bug?


Fix sip disallow

Hi for the last time ;)
I had to swap allow/disallow parameters in the SIP device configuration, mostly because I use "disallow all" and putting it after "allows" resulted in a device with no active codecs.
Of course YMMV, this is just a quick-n-dirty hack.
Bye, Ugo

Hi,
I would suggest you to fork the repository out.

Hi Cezary. I actually did that. In my setup I use my patched code from my own fork, where all my PRs lives together


[WIP] Sketch of Stream Consumption API

Note: Depends upon #526
This includes some inline-teletype to inline-doc-link updates which are all within #526.

Note that I haven't updated the doc RST files yet :)

@dkolas @douglas-reid I'm going to close this PR because I think it's overcome by events. 🚢


Severity of message ID changed via set_severity_id_override() not adjusted internally in uvm_report_handler

It seems that uvm_report_handler's set_severity_id_override() and thus subsequently uvm_report_object's set_report_severity_id_override() does not work as expected if multiple severity adjustments are attempted. Specifically the severity is changed only inside report messages, but not for report handler internals. Thus if code below is run, second override will not work using new severity as cur_severity, resulting in retaining UVM_ERROR severity.
    r.set_report_severity_id_override(UVM_WARNING, "TESTW", UVM_ERROR);
    `uvm_warning ("TESTW", "Test error report. Escalated.")
    r.set_report_severity_id_override(UVM_ERROR, "TESTW", UVM_WARNING);
    `uvm_warning ("TESTW", "Test error report. Second override.")

It seems that it cur_severity is set to original value, the second override will start working.
    r.set_report_severity_id_override(UVM_WARNING, "TESTW", UVM_ERROR);
    `uvm_warning ("TESTW", "Test error report. Escalated.")
    r.set_report_severity_id_override(UVM_WARNING, "TESTW", UVM_WARNING);
    `uvm_warning ("TESTW", "Test error report. Second override.")

This does not correspond to standard where no such message upgrade/downgrade limitations are mentioned (also name cur_severity implies overridden value not original):
6.3.7 Override configuration
set_report_severity_override and set_report_severity_id_override
function void set_report_severity_override(
uvm_severity cur_severity,
uvm_severity new_severity
)
function void set_report_severity_id_override(
uvm_severity cur_severity,
string id,
uvm_severity new_severity
)
These methods provide the ability to upgrade or downgrade a message in terms of severity given the severity and
id. These functions call the underlying report handler set_severity_override or set_severity_id_override,
respectively (see 6.4.6).

Thanks for submitting this issue.
The UVM WG will open an issue on IEEE 1800.2 to clarify that cur_severity is the original severity when the message is created and not any severity caused by an override

We opened https://accellera.mantishub.io/view.php?id=8477 on IEEE 1800.2 and will close this issue.  Thanks again for the submission.


Add mergify

So we approved PRs get automerged and deployed automatically, like we have for our other open source sites

@repi Do we want this config from the Ark repo? https://github.com/EmbarkStudios/ark/tree/main/.github/workflows
If so shall I also add this to to the opensource-template and the other repos that lack this?

Nope that is internal action, and not https://mergify.io/ which we use for our public open source repos

Ah, thanks!


(documentation) How do I know if generate.py is running on GPU / GPU configuration

Hi, I have a NVidia Quadro P5200 with 32GB of VRAM, yet when I run the codes for a test they perform extremely slowly and in the task manager the GPU's used ram stays near 0. I think the code is not using my GPU. Is there special configuration to do beyond pip install -r requirements.txt to get this running on GPU?

In general, if you start a new Python session, does
import torch
print(torch.cuda.is_available())

show True?


GitHub CI actions

I have never utilized any GitHub CI actions, but would love for this project to utilize then as I believe they are extremely helpful for maintainers.
I do not know the extent of how useful they could be, but I do currently have two ideas for actions I would like to see added:

[ ] 1: Running unit tests
[ ] 2. Checking if all source files have our copyright header

The first one to run the unit tests should not be difficult as we are using Google Test for our unit tests, which when we build the projcect using the GESTALT_BUILD_TESTS & GESTALT_FETCH_GOOGLETEST flags it should build our tests and then all we would have to do is run the executable, and check if they passed.
The second one seems a bit harder because we got a few questions to think of before we do it. First, can we specify for the script to only search in *.h and *.cpp (im sure we can), but then do we only check the files be updated in a PR for the header? Do we check all files? Would this mean we would have to change the year of the copyright for all files when its a new year so our action doesn't fail? I'm not sure.

Hi!
I’d like to work on setting up GitHub Actions for this.
Could you assign this issue to me?"

Yeah, I'd be happy too! This was the one I was honestly not sure where to start, so thanks for taking it on.
I may need some help in setting them up, outside of writing the scripts if you're up for that additional challenge lol.

Closing this issue. Great work on adding this to Gestalt!
mirzaim implemented this into branch release/0.6.2 which will be included in the version release of Gestalt 0.6.2 (which I plan to release tomorrow 11/3). Now whenever a push or pr is made to main or a release branch the unit tests we implement will be ran. This will give maintainers and contributors more assurance that new additions are at least passing our unit tests.


[SMP-2350] SMP increase PV size for StatefulSets

SMP increase PV size for StatefulSets
For reviewers, a preview is available.
What Type of PR is This?

[ ] Issue
[x] Feature
[ ] Maintenance/Chore

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

Issue(s)

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

[x] Tested Locally
[ ] Optional Screen Shoot.

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

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

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

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

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


Why token digits should only be 6 and 8

I found that the Digits should only be 6 and 8.
However I have changed Token.java to accept 7 as Digits.
Every thing is working fine.
Can you please let me know why the Digits should be only 6 or 8.

Impossible to add an OTP with 7 digits... any new on this issue ?

7 digits token was added in the FreeOTP fork  https://github.com/helloworld1/FreeOTPPlus/


uwuwiw

https://github.com/aiexz/itosbot/assets/169506610/9c2abe77-5595-4ff1-8242-3f12dff13f01

g1h1

hh21y1u

Thanks, I will try to figure out what breaks the video pack creation process

Problem is fixed now. Thank you for the bug report!


Build a classic snake game where the player controls a snake to eat food and grow.

hey, can i work on this?

i have made the game and sent a pull request

@Swapnil-Singh-99 please check i have created a new PR with only snake game

@Swapnil-Singh-99 was facing some issue with the old PR i have made a new PR without the story.py and only snake game.
Please review it. Thank you

Hey @Swapnil-Singh-99 ,
If no one is working on this issue then can I get assigned?
Thanks.

@amanmakhija Go for it


Implement Snowflakes algorithm for token generation

Snow flakes algorithm is designed for distributed systems and can handle millions of unique IDs per second. The generated Id was then converted into base62 string to shorten the length of the final link. inspiration was taken from this implementation https://www.c-sharpcorner.com/article/generate-a-snowflake-id-whose-length-is-16/

Snowflake algorithm is designed for distributed systems and can handle millions of unique IDs per second, the generated id was then converted into a base62 string to make it shorter. The final link would look like this (https://thisisnabi.dev/comments/approve?link=Ex9DFPAa)


SIGSEGV when running Bevy code.

Bevy version
This is happening on the latest commit (7cb4d3c) and the latest 0.7 on crates.io
Operating system & version
I am running on EndeavourOS (Arch derivative) latest updates.
What you did
I ran graphical examples (3dscene.rs) and my own code.
What you expected to happen
It runs and works normally.
What actually happened
After the window initialises the program crashes and gives a SIGSEGV error. I have encountered this running through shell and by clicking on the elf file in thunar file manager.
Additional information
I am running an RTX3060-maxQ inside my Asus Tuf A15 (Ryzen 7 5800H). I am unsure of whether the new Nvidia drivers could have caused this.
It only happens on graphical applications. I made a quick looping hello person program copied from the bevy book tutorial and it worked as normal. It has only recently started happening and all other graphical applications on my desktop are working normally.

We depend on https://github.com/gfx-rs/wgpu to provide our graphics
Are you able to run their examples successfully?
Unfortunately, this issue is likely to be unactionable on our side if wgpu's examples don't crash, since it's a result of your environment misbehaving in some way.

Is this still happening with the latest released Bevy?


Add LogicMonitor helm charts repo

Signed-off-by: vkumbhar94<EMAIL_ADDRESS>I, Vaibhav Kumbhar, am a member of LogicMonitor Github organisation. On behalf of LogicMonitor org., I would like to list LogicMonitor's helm charts on helm hub.
More about LogicMonitor: https://www.logicmonitor.com

@vkumbhar94 Can you please add this repo to the Artifact Hub before we merge it here. The Helm Hub is migrating to the Artifact Hub. You can find details at https://github.com/helm/hub#artifact-hub-migration

@vkumbhar94 Can you please add this repo to the Artifact Hub before we merge it here. The Helm Hub is migrating to the Artifact Hub. You can find details at https://github.com/helm/hub#artifact-hub-migration

Thanks @mattfarina I have added this repository to Artifact Hub - https://artifacthub.io/packages/search?page=1&org=logicmonitor


Provide standalone CRD yaml

Provide standalone CRD yaml that could be referenced using a URL to avoid needing to clone the repo and do make install because of the kustomize, which itself requires many other dependencies. (hat tip @jkremser for flagging this 🎉 )

Hi @lauralorenz
Seems the CRD yaml is already there.
https://github.com/kubernetes-sigs/about-api/blob/master/clusterproperty/config/crd/bases/about.k8s.io_clusterproperties.yaml


philipprochazka.github.io does no update

deployment of publications do not update,
The also not have a source of inside the test page and they still do fail

I did manage to force an Update by creating a new github action

But no content did update

I am pushing up (branch main )with a gh action
but My main branch does look completely different as has been ported to the new
GH-Action "Deploy Jekyll with GitHub Pages dependencies preinstalled"

I desided building it on localhost again
and it does look different on booth scenarios
1st scenario)  npm run install/npm run build / npm run start

2nd scenario) npm install / npm build /npm start

I did solve it by Making a GH-Pages branch myself, and did manual copies of dist directory from master later on I should write a script to move to files periodicaly propably, it depends how faw i will decide to tweak the CV website


Rstudio pm public readme

Attempts to give similar treatment to RSPM as was done for RSW in regards to the README.
I am not very familiar with running/administering RSPM, so I probably missed something. Let me know if I should add anything for required settings, and let me know if I should add any recommended settings as well.
Associated with https://github.com/rstudio/sol-eng-helm/issues/64

@jonyoder @colearendt Updated to make the volume wording more accurate and also add a blurb about S3 storage for RSPM. Please have a look.


Gitlab auto assignee: Dangerfile file: undefined method `[]' for nil:NilClass

Report
What did you do?
I run danger in Docker within gitlab-ci.yml and I want to assign MR to random project group member.
I'm trying to use example "Select a random group member as assignee if no assignee is selected" from this file
I've set local variables in Dangerfile
project_id = ENV['CI_PROJECT_ID']
mr_id = ENV['CI_MERGE_REQUEST_IID']
There is 2 approvals required in my project settings and about of 5 members with 'developer' permissions and higher.
What did you expect to happen?
I expect that script will assign MR to random member of my Gitlab project group
What happened instead?
I have an error when run
bundle exec danger --fail-on-errors=true

 bundler: failed to load command: danger (/usr/local/bundle/bin/ruby/2.5.0/bin/danger)
 Danger::DSLError:
 [!] Invalid `Dangerfile` file: undefined method `[]' for nil:NilClass
  #  from Dangerfile:20
  #  -------------------------------------------
  #  unless gitlab.mr_json["assignee"]
  >    reviewer = gitlab.api.group_members(gitlab.api.merge_request_approvals(project_id, mr_id).to_hash["approver_groups"].first["group"]["id"]).sample
  #    if gitlab.api.group_members(gitlab.api.merge_request_approvals(project_id, mr_id).to_hash["approver_groups"].first["group"]["id"]).length > 1
  #  -------------------------------------------
   Dangerfile:20:in `eval_file'
   /danger/lib/danger/danger_core/dangerfile.rb:307:in `eval'
   /danger/lib/danger/danger_core/dangerfile.rb:307:in `eval_file'
   /danger/lib/danger/danger_core/dangerfile.rb:200:in `block in parse'
   /danger/lib/danger/danger_core/dangerfile.rb:197:in `instance_eval'
   /danger/lib/danger/danger_core/dangerfile.rb:197:in `parse'
   /danger/lib/danger/danger_core/dangerfile.rb:283:in `run'
   /danger/lib/danger/danger_core/executor.rb:29:in `run'
   /danger/lib/danger/commands/runner.rb:73:in `run'
   /usr/local/bundle/bin/ruby/2.5.0/gems/claide-1.0.3/lib/claide/command.rb:334:in `run'
   /danger/bin/danger:5:in `<top (required)>'
   /usr/local/bundle/bin/ruby/2.5.0/bin/danger:23:in `load'
   /usr/local/bundle/bin/ruby/2.5.0/bin/danger:23:in `<top (required)>'

Your Environment

Which CI are you running on?
Gitlab 12.8.1-ee
Are you running the latest version of Danger?
Yes: 7.0.1
What is your Dangerfile?

project_id = ENV['CI_PROJECT_ID']
mr_id = ENV['CI_MERGE_REQUEST_IID']

unless gitlab.mr_json["assignee"]
  reviewer = gitlab.api.group_members(gitlab.api.merge_request_approvals(project_id, mr_id).to_hash["approver_groups"].first["group"]["id"]).sample
  if gitlab.api.group_members(gitlab.api.merge_request_approvals(project_id, mr_id).to_hash["approver_groups"].first["group"]["id"]).length > 1
    while reviewer.to_hash["id"] == gitlab.mr_json["author"]["id"] do
      reviewer = gitlab.api.group_members(gitlab.api.merge_request_approvals(project_id, mr_id).to_hash["approver_groups"].first["group"]["id"]).sample
    end
  end
  message "Reviewer roulete rolled for: #{reviewer.to_hash['name']} (@#{reviewer.to_hash['username']})"
  gitlab.api.update_merge_request(project_id, mr_id, { assignee_id: reviewer.to_hash["id"] })
end

I'm new with Ruby, please, help me to debug my problem.

Hi, this looks like an issue with your dangerfile code and not a bug with Danger which is what we use issues for.
You're welcome to use the support forum for that: http://spectrum.chat/danger


Make Auto complete work during note move.

Please select if your request is either something new or an enhancement

[x] Enhancement of an existing Feature.
[ ] Request of a new feature.

Please select the area your request applies to. (Multiple selections are Possible. You can leave blank if you're not sure.)

[ ] Workspace - VSCode workspace, vaults, Intellisense/autocomplete, Dendron settings
[x] Lookup - Dendron's Lookup Command
[ ] Views - Dendron Preview, Tree View, Side Panels in the UI
[ ] Schema - Dendron Schemas
[ ] Pod - Data import from / export to Dendron
[ ] Publish - External Site Publish
[ ] Markdown - Markdown features, such as syntax support and features

Is your feature request related to a problem? Please describe
When Move Note is used Tab completion does not appear to be activated, making it harder to refactor notes.
Describe the solution you'd like
Make Tab completion work similar how it does during lookup.
Describe alternatives you've considered
Typing things out.
Additional context
Add any other context or screenshots about the feature request here.

I think we can dupe to https://github.com/dendronhq/dendron/issues/405


Redis: add to existing Index

I am having a hard time understanding how I can add documents to an existing Redis Index.
This is what I do: first I try to instantiate rds from an existing Redis instance:
rds = Redis.from_existing_index(
    embedding=openAIEmbeddings,
    redis_url="redis://localhost:6379",
    index_name='techorg'
)

Then I want to add more documents to the index:
rds.add_documents(
    documents=splits,
    embedding=openAIEmbeddings
)

Which ends up with the documents being added to Redis but not to the index:
In this screenshot you can see the index "techorg" with the one document "doc:techorg:0" I had created it with. Then, outside of the techorg hierarchie you can see the documents that were added with add_documents

I have the same problem. Seems like a limitation/bug that will need to be fixed.
The following trick worked for me: pass a list of keys (one for each doc) where a key consists of the index name followed by ":" and an id:
rds.add_documents(docs, keys=[f"{ctx}:{hashid}"])

I believe this PR should have fixed the issue: https://github.com/hwchase17/langchain/pull/2311
As there was a logic error in the underlying add_texts method. If you grab the latest version @ayalpani does this fix the issue for you? Can you reproduce?

Hey @tylerhutcherson I think I'm having issues with the add_texts method too, even after updating to 0.0.132.
embeddings = OpenAIEmbeddings()
rds = Redis.from_existing_index(embeddings, redis_url="redis://localhost:6379",  index_name='test')

print(rds.add_texts(["this is a test"])) # prints 'this is a test'

query = "test"
results = rds.similarity_search(query)
print(results[0].page_content) #

This gives me the following error saying the index doesn't exist.
ResponseError                             Traceback (most recent call last)
Cell In[7], line 2
      1 query = "test"
----> 2 results = rds.similarity_search(query)
      3 print(results[0].page_content)

File [c:\Users\Hunter\Downloads\pinecone\venv\Lib\site-packages\langchain\vectorstores\redis.py:91](file:///C:/Users/Hunter/Downloads/pinecone/venv/Lib/site-packages/langchain/vectorstores/redis.py:91), in Redis.similarity_search(self, query, k, **kwargs)
     88 def similarity_search(
     89     self, query: str, k: int = 4, **kwargs: Any
     90 ) -> List[Document]:
---> 91     docs_and_scores = self.similarity_search_with_score(query, k=k)
     92     return [doc for doc, _ in docs_and_scores]

File [c:\Users\Hunter\Downloads\pinecone\venv\Lib\site-packages\langchain\vectorstores\redis.py:165](file:///C:/Users/Hunter/Downloads/pinecone/venv/Lib/site-packages/langchain/vectorstores/redis.py:165), in Redis.similarity_search_with_score(self, query, k)
    158 params_dict: Mapping[str, str] = {
    159     "vector": np.array(embedding)  # type: ignore
    160     .astype(dtype=np.float32)
    161     .tobytes()
    162 }
    164 # perform vector search
--> 165 results = self.client.ft(self.index_name).search(redis_query, params_dict)
    167 docs = [
    168     (
    169         Document(
...
    881 if isinstance(response, ResponseError):
--> 882     raise response
    883 return response

ResponseError: test: no such index

Maybe I'm misunderstanding what an index is? I looked in Redis and the doc:test key was there. I even tried changing it to just test.
I noticed when following the notebook in the docs that everything it shows works, but I'm thinking that it's because link was created as an index with multiple keys already when you get to the add_texts section.

Hey! Thanks for sharing this info.
"from_existing_index" method assumes that you've already uploaded
documents + created an index in Redis. One thing I can already see is that
we could improve the checks here
https://github.com/hwchase17/langchain/blob/master/langchain/vectorstores/redis.py#L314.
Nothing here in the code validates that you in fact already have created
the index (it assumes you have). So the error you get makes sense so far.
So to work around this, try the following:

Flush redis
use the "from_texts" method passing in the same index_name
then try the "from_existing_index" approach?

In the meantime, I will work up a PR that addresses this a a few other
issues. LMK how that goes :)
On Wed, Apr 5, 2023 at 4:44 PM Hunter Meloche @.***>
wrote:

Hey @tylerhutcherson https://github.com/tylerhutcherson I think I'm
having issues with the add_texts method too, even after updating to
0.0.132.
embeddings = OpenAIEmbeddings()
rds = Redis.from_existing_index(embeddings, redis_url="redis://localhost:6379",  index_name='test')
print(rds.add_texts(["this is a test"])) # prints 'this is a test'
query = "test"
results = rds.similarity_search(query)
print(results[0].page_content) #
This gives me the following error saying the index doesn't exist.
ResponseError                             Traceback (most recent call last)
Cell In[7], line 2
1 query = "test"
----> 2 results = rds.similarity_search(query)
3 print(results[0].page_content)
File [c:\Users\Hunter\Downloads\pinecone\venv\Lib\site-packages\langchain\vectorstores\redis.py:91](file:///C:/Users/Hunter/Downloads/pinecone/venv/Lib/site-packages/langchain/vectorstores/redis.py:91), in Redis.similarity_search(self, query, k, **kwargs)
88 def similarity_search(
89     self, query: str, k: int = 4, **kwargs: Any
90 ) -> List[Document]:
---> 91     docs_and_scores = self.similarity_search_with_score(query, k=k)
92     return [doc for doc, _ in docs_and_scores]
File [c:\Users\Hunter\Downloads\pinecone\venv\Lib\site-packages\langchain\vectorstores\redis.py:165](file:///C:/Users/Hunter/Downloads/pinecone/venv/Lib/site-packages/langchain/vectorstores/redis.py:165), in Redis.similarity_search_with_score(self, query, k)
158 params_dict: Mapping[str, str] = {
159     "vector": np.array(embedding)  # type: ignore
160     .astype(dtype=np.float32)
161     .tobytes()
162 }
164 # perform vector search
--> 165 results = self.client.ft(self.index_name).search(redis_query, params_dict)
167 docs = [
168     (
169         Document(
...
881 if isinstance(response, ResponseError):
--> 882     raise response
883 return response
ResponseError: test: no such index
Maybe I'm misunderstanding what an index is? I looked in Redis and the
doc:test key was there. I even tried changing it to just test.
I noticed when following the notebook in the docs
https://python.langchain.com/en/latest/modules/indexes/vectorstores/examples/redis.html
that everything it shows works, but I'm thinking that it's because link
was created as an index with multiple keys already when you get to the
add_texts section.
—
Reply to this email directly, view it on GitHub
https://github.com/hwchase17/langchain/issues/2181#issuecomment-1498128757,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AE25HTGUSWXNP2ZSBNZSA43W7XKR3ANCNFSM6AAAAAAWM4THIM
.
You are receiving this because you were mentioned.Message ID:
@.***>

--
Tyler C. Hutcherson
Senior Applied AI Engineer
Email: @.***
Phone: 1.804.929.6354
Twitter https://twitter.com/redisinc  LinkedIn
https://www.linkedin.com/company/redisinc  Facebook
https://www.facebook.com/redisinc/
Disclaimer
The information contained in this communication from the sender is confidential. It is intended solely for use by the recipient and others authorized to receive it. If you are not the recipient, you are hereby notified that any disclosure, copying, distribution or taking action in relation of the contents of this information is strictly prohibited and may be unlawful.
This email has been scanned for viruses and malware, and may have been automatically archived by Mimecast Ltd, an innovator in Software as a Service (SaaS) for business. Providing a safer and more useful place for your human generated data. Specializing in; Security, archiving and compliance. To find out more visit the Mimecast website.

Hey, so I realized pretty much immediately after commenting what I was doing wrong and deleted my comment.  (from_EXISTING_index lol) I actually went on to do what you described and it works. More checks for clueless people like me would be good, haha.
One thing I noticed, is that when I use "add_texts" on an existing index, it creates "doc:example" in the same index as "doc:example:0", "doc:example:1", and so on, instead of incrementing it as the next key in the sequence. It would be amazing if that worked.
Thanks for the support!! You guys are making the next big thing.

Good catch. Fixing that too.

yeah, it would be ideal if new keys can be added without overwriting the existing ones.

Yep. This should now be fixed in the latest on master. @ayalpani  @frazur @vinvcn @hunter-meloche can you all confirm this fixes for your use case? Then we can close this one

@tylerhutcherson add_documents now works as expected.

@tylerhutcherson yes, feature was added. I think I'm also looking for another use case. let's just say that I proceed similar or even the same documents again, the chunk will always be added to the index. What if I could deduplicate it before adding more similar vectors?

@tylerhutcherson yes, feature was added. I think I'm also looking for another use case. let's just say that I proceed similar or even the same documents again, the chunk will always be added to the index. What if I could deduplicate it before adding more similar vectors?

I have a similar use case that I may insert the same documents multiple times, especially during the development process and the deployment process in general, and I don't want to duplicate the same or very similar vectors. I could achieve it by providing manual IDs like ids in this implementation:
https://api.python.langchain.com/en/latest/modules/vectorstores.html?highlight=index#langchain.vectorstores.AnalyticDB.from_documents
Maybe langchain VectorStore should support that in general? I'd love to see that for Redis at the least.
Maybe a separate Issue for this discussion?

Actually realized that Redis uses keys instead of ids https://github.com/hwchase17/langchain/blob/master/langchain/vectorstores/redis.py#L190. Maybe something to unify at the langchain level.


Compare the strings by frequency of the smallest character.

💥 Proposal
Let the function f(s) be the frequency of the lexicographically smallest character in a non-empty string s. For example, if s = "dcce" then f(s) = 2 because the lexicographically smallest character is 'c', which has a frequency of 2.
You are given an array of strings words and another array of query strings queries. For each query queries[i], count the number of words in words such that f(queries[i]) < f(W) for each W in words.
Return an integer array answer, where each answer[i] is the answer to the ith query.

Hi
I would like to work on this as part of crossWoc'21. I can do it in Python. Please assign it to me in Python

@ankitapuri can I work on this in C++ under CrossWoc


[surface code] Azure model and new AlgorithmSummary

This PR builds on #1154 and migrates the azure model to use GateCounts via a new AlgorithmSummary that uses GateCounts.

@NoureldinYosri ptal


Add setup guide

@seabornlee is there any way to make the github tokens optional, or to give an explicit error message directing the prospective developer via a link to the part where you outline how to create the github tokens?

@seabornlee is there any way to make the github tokens optional, or to give an explicit error message directing the prospective developer via a link to the part where you outline how to create the github tokens?

Awesome idea! Let me write a Gradle task to check the configuration before building.

@JamesSmartCell I am done.


General Issue: dplyr::transmute() is superseded

Background Information
@manciniedoardo , noticed that dplyr::transmute() is superseded in favor of mutate(.keep = "none").
We should update all admiral functions which are using it.
admiral-package.R:#'   rename_with row_number select slice semi_join starts_with transmute ungroup
derive_param_tte.R:    data[[i]] <- transmute(
derive_var_dthcaus.R:        transmute(
derive_var_extreme_date.R:    add_data[[i]] <- transmute(
duplicates.R:    transmute(!!!by_vars)

Definition of Done
No response

Hi @gg106046,
just checking in on progress for this issue.  Do you think you can finish in the next week or so?

Hi @gg106046,
just checking in on progress for this issue. Do you think you can finish in the next week or so?

Hi Ben! Yes, it'll be done by end of this week


Enable Django Admin

I will take it

Django admin has already been enabled here https://github.com/CodeForPoznan/pah-fm/pull/20/files.

Actually it was done in #21 (as #20 was closed, not merged), but You're right, that's done.


Add test coverage

Figure out if it's possible to keep track of test coverage using coveralls or codecov.
Stack does support test coverage reports with stack test --coverage

https://github.com/guillaume-nargeot/hpc-coveralls


Revise internal array creation operations

JerryScript-DCO-1.0-Signed-off-by: Robert Fancsik<EMAIL_ADDRESS>

Note: This PR is a preparation for extending the API with property name listing/enumeration support in a memory efficient way.

@zherczeg @galpeter Thanks for the reviews, I've updated the PR according to them. Thanks to this suggestions the internal array creation methods have been reduced by 2.

@zherczeg Thanks for the review, I've simplified the PR according to it.


No data

Hello,
i followed the instructions and activated the JSON Interface. Got the JSON password and the IP and entered everything in the integration. But i can´t get any data.
I installed everything and tried it again, but it still doesn´t work.

hi, what software version do you have of okofen? consider that you should have at least 4.01

Il giorno 18 mag 2024, alle ore 11:02, BobMoran88 @.***> ha scritto:
Hello,
i followed the instructions and activated the JSON Interface. Got the JSON password and the IP and entered everything in the integration. But i can´t get any data.
I installed everything and tried it again, but it still doesn´t work.
32cbfb5c34a3073c6891c5ab8800918e.png (view on web) https://github.com/dominikamann/oekofen-pellematic-compact/assets/121692910/e1f0b32d-4e65-4518-bc91-a6b5835b6231
966872d6a983832a836894cb27fbad26.png (view on web) https://github.com/dominikamann/oekofen-pellematic-compact/assets/121692910/e1c4d350-5804-4808-bf1a-a68961258147
—
Reply to this email directly, view it on GitHub https://github.com/dominikamann/oekofen-pellematic-compact/issues/52, or unsubscribe https://github.com/notifications/unsubscribe-auth/A2LNND7GRPWZKLSEA276XM3ZC4KLBAVCNFSM6AAAAABH5JOADOVHI2DSMVQWIX3LMV43ASLTON2WKOZSGMYDGOJUGQZTINY.
You are receiving this because you are subscribed to this thread.

What happens if you open the URL directly in Browser?

Hello and thanks for your help!
I don´t know what solved the problem, but now everything works fine.  I didn´t change anything, though.

Bonjour,
ayant ce problème je me permet d'intervenir sur cette conversation.
Lorsque j'ouvre l'URL dans le navigateur cela ne fonctionne pas.
Merci


unix: uv_get_free_memory return allocable memory

uv_get_free_memory returns the allocable memory.

uv_get_free_memory returns the free memory.
However, the allocable memory more reasonable to the user.
This link can be refered:
http://blog.scoutapp.com/articles/2010/10/06/determining-free-memory-on-linux

An alternative is to provide another API for detailed memory information.
total, used, free, shared, buffers, cached.

Hi @zhangzifa,
I think this will be rejected as it is. Opening a process and parsing output it's not reliable.
It's a better approach to use directly the syscalls (and faster)
Take a look at what meminfo does.
http://lxr.free-electrons.com/source/fs/proc/meminfo.c
seems like two syscalls (I did just a fast look)

si_meminfo
si_swapinfo (maybe not necessary)

Thanks @llafuente.
In fact, I pay more attention to free or allocable memory should be provided. Could you help comment this?
Yes, it is no double a better approach to use syscalls.
If you have a look at uv/src/unix/linux-core.c, uv_cpu_info has the same approach Opening a process and parsing output. :-)

si_meminfo
si_swapinfo (maybe not necessary)

above two, only can be used in kernel space,
in user space, do you mean sysinfo ?

Hi @zhangzifa! What @llafuente said is basically correct. There are two things at play here:

Parsing /proc/foo should only be used as a last resort option
This changes the behavior of the API, which we cannot do in v1.x
If we change this on Linux, we need the same change on other platforms, the API has to be consistent

@yjhjstz It's a pity that sysinfo does not provide cache memory.

@saghul Thanks for your clarifications.
Maybe this API update, or new API can be added in v2.x.
Or do you think it's necessary to add a new API to 1.x?

Maybe this API update, or new API can be added in v2.x.

Yeah, I'd discuss it for v2.

Or do you think it's necessary to add a new API to 1.x?

I wouldn't add it to v1.x.

Ok, got it. Thanks.

Since this PR was targetted at v1.x, I'm going to close it. Please reopen it targetting master once you have it ready for discussion, thanks!


Added service provider for java.sql.Driver

This file is required for auto detection, like on Wildfly and Wildfly Swam included.

Thanks! Would it be possible to do a new release at your earliest convenience?

yes, already released :)
it will be available in maven central in several hours


clickInList fails with multiple lists

From<EMAIL_ADDRESS>on June 29, 2011 03:51:45

Create a view with multiple lists.
Attempt a clickInList on any list except the first.

No click event occurs.
The problem is on line 369 of the Clicker.java class. Where it calls viewFetcher.getView it passes zero instead of index. This used to work correctly in version 2.1 but is broken in 2.2 and 2.3.
I'll submit a pull request for this fix shortly.
Original issue: http://code.google.com/p/robotium/issues/detail?id=124

From<EMAIL_ADDRESS>on June 29, 2011 03:58:25
I've submitted a pull request for this fix. Here is the commit URL for anyone else that's interested. https://github.com/louth/robotium/commit/78600568eca1bcdf4e04236d23221e78b8ea6a2b

From<EMAIL_ADDRESS>on June 29, 2011 04:13:25
Thanks for this. The fix will be merged in the coming days.
Status: Accepted
Owner<EMAIL_ADDRESS>

From<EMAIL_ADDRESS>on July 13, 2011 10:26:45
This has been corrected in Robotium 2.4.

From<EMAIL_ADDRESS>on July 13, 2011 10:26:59
Status: Verified


Validation message for greaterThanOrEqualTo on computed property

When I use the greaterThanOrEqualTo validator on a computed property, the validation message comes out as: "must be greater than or equal to computedPropertyName". I tried setting the messages: { greaterThanOrEqualTo: 'custom message' }, but it will not pick up the custom message. You can see it in action here (enter 1 in the text field):
http://emberjs.jsbin.com/uCAbiJEM/3/edit

I am going to close this issue for now, feel free to reopen this issue if you feel like it's still relevant and we should take a look at it.


TC Changes - Cheaper and more defined pricing

About the PR
All Traitor and Detective Items are either 1TC, or increments of 2TC.
Why / Balance
My basis for this is that 1 TTT Credit is equivalent to the amount of chaos and power that 2TC provides. Each traitor spawns with 2 Credits (4TC) and Detectives 1 Credit (2TC).
In TTT, Credits are earned every 35% of innocents dead. In SSS, it is every kill.
This is to help going forward adding more items. I would greatly appreciate feedback for how chaotic high pop rounds can be if it is too much.
Technical details
Changed sss_uplink.yml with Telecrystal Changes
Media
N/A
Requirements

[X] I have read and am following the Pull Request and Changelog Guidelines.
[X] I have added media to this PR or it does not require an ingame showcase.

Breaking changes
N/A
Changelog
:cl:

tweak: TC costs for almost all Traitor Items have been reduced.

Had a massive brain wave. I think 2 kills per gadget is probably too easy for traitors. Making it 3 kills per gadget, 6 per major gadget might be a better idea.
I really just need some time to balance on high pop servers. Ia it possible to test merge this at all to see how 2TC per gadget fairs? Or can we not test merge like in SS13?

sus, will be reverted or not based on how chaotic things get


dev into master

Bear in mind that this PR shouldn't be merged via GitHub in order to avoid the git submodule f-up. Just do it manually.

@floriansipp can you take this one?


ERROR: Paired-end mapping found, but not supported!

Hi, I tried running this command:
tectool --annotation GRCh38.87_support_level_1/*gtf  --polyasites GRCh38.87_support_level_1/*bed --bam SRR1290424.Aligned.sortedByCoord.out.bam --genome GRCh38.87_support_level_1/*fa --verbose
And I got the following error:
Counting feature regions |                                | 1/83227ERROR: Paired-end mapping found, but not supported!
Your manuscript suggests paired end reads can be analyzed by this program - could there be another issue with my BAM file (i.e. supplemental alignments, etc) that causes this error?
Thanks!
Nate

Hi @nungerleider
Sorry, at the moment you have to use one of the two mates in case of paired-end reads. Maybe it was not clear the way we wrote it.
Best
Foivos

Can you recommend the best way to do this? Do we have to re-map with just one read mate fastq file?

Hi @langkilfeather. Yes, you need to re-map one of the two mates.


LUN Assignment Conflict on Dell ME5024 with Seagate Exos-X CSI Driver Leading to PersistentVolume Failures

Describe the bug
When deploying PVCs using the Seagate Exos-X CSI driver on Dell ME5024 storage, the CSI driver repeatedly assigns the same LUN (LUN 1) to each PersistentVolume (PV) on different Kubernetes nodes. This results in the failure of subsequent deployments if another PVC already uses LUN 1 on the same node. The issue seems to occur when the driver does not increment or manage LUN assignments properly, leading to LUN conflicts.
To Reproduce
Steps to reproduce the behavior:

Set up Dell ME5024 storage with Seagate Exos-X CSI driver and Fibre Channel (FC) connectivity.
Deploy a Kubernetes cluster using Rancher RKE2 with multiple workers.
Create two PVCs that get successfully assigned LUN 1 on different worker nodes.
Attempt to create a third PVC on another node.
The PVC creation fails due to a "LUN overlap" error on LUN 1.

Here is my stoage-class.yml
apiVersion: storage.k8s.io/v1
kind: StorageClass
provisioner: csi-exos-x.seagate.com
allowVolumeExpansion: true
metadata:
  name: storageclass-seagate
parameters:
  csi.storage.k8s.io/provisioner-secret-name: secret-seagate
  csi.storage.k8s.io/provisioner-secret-namespace: seagate
  csi.storage.k8s.io/controller-publish-secret-name: secret-seagate
  csi.storage.k8s.io/controller-publish-secret-namespace: seagate
  csi.storage.k8s.io/controller-expand-secret-name: secret-seagate
  csi.storage.k8s.io/controller-expand-secret-namespace: seagate
  fsType: ext4 # Desired filesystem
  pool: A # Pool for volumes provisioning
  volPrefix: stx # Desired prefix for volume naming, an underscore is appended
  storageProtocol: fc # The storage interface (iscsi, fc, sas) being used for storage i/o

Here is a sample of pvc file
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: xxxx-pvc
  namespace: default
spec:
  accessModes:
    - ReadWriteOnce
  resources:
    requests:
      storage: 1Gi  # Adjust the size as needed
  storageClassName: storageclass-seagate

Expected behavior
The Seagate CSI driver should assign unique LUNs for each PVC deployment to avoid conflicts, even across multiple nodes.
Screenshots
N/A (logs provided instead)
Storage System (please complete the following information):

Vendor: Dell
Model: ME5024

Environment:

Kubernetes version: RKE2 1.30.4
Environment: 3 workers and 1 control plane
Host OS: Ubuntu 24.04 LTS
seagate-exos-x-csi library: version 1.9.0

Additional context
Log output from the third deployment that fails:
rpc error: code = AlreadyExists desc = lun overlap for lun: 1 volume="stx_cf249e94fa5b2c3b1f6edd10ad1" initiator="2100f4c7aa9a3168"

The first two PVCs are successfully assigned LUN 1 on different nodes, but any further deployments fail due to LUN conflicts on the same node. The expectation is that the driver should handle LUN management dynamically to avoid these conflicts.
 Sorry to hear this isn't working as expected.
The ControllerPublishVolume routine attempts to find existing LUNs for the current initiators being mapped and then selects the next highest unused LUN number.
I suspect the issue you are seeing is that LUN selection isn't functioning correctly when initiators have been configured with nicknames and/or host groups. Can you confirm that your array has initiator nicknames or hosts defined? This can be viewed with 'show initiators' in the array CLI, or in the Hosts section of the web interface.
I will be looking into a bug fix. If you do see nicknames/hosts defined, a potential workaround in the interim would be to delete any initiator nicknames/hosts defined on your array and see if LUN selection works properly with them removed.
Thanks,
Dave

I do not use nicknames or host groups and I'm getting this error. By the way this is working great outside of this issue.
# show initiators
Nickname       Discovered Mapped Profile  Host Type  ID
-----------------------------------------------------------------------
initiator0001  Yes        No     Standard SAS
initiator0002  Yes        No     Standard SAS
initiator0003  Yes        No     Standard SAS
initiator0004  Yes        No     Standard SAS
-----------------------------------------------------------------------
Success: Command completed successfully. (2024-10-09 12:19:)

I'm attempting to map two PVCs that are block devices on a single VM one maps properly the other one does not.
VM Pod logs
  Type     Reason                  Age               From                     Message
  ----     ------                  ----              ----                     -------
  Normal   Scheduled               32s               default-scheduler        Successfully assigned default/virt-launcher-openmanage-vm-v2zkv to
  Normal   SuccessfulAttachVolume  25s               attachdetach-controller  AttachVolume.Attach succeeded for volume "pvc-2fbd1367-68fc-44cc-8227-cbc736b8a1d3"
  Normal   SuccessfulMountVolume   11s               kubelet                  MapVolume.MapPodDevice succeeded for volume "pvc-2fbd1367-68fc-44cc-8227-cbc736b8a1d3" globalMapPath "/var/lib/kubelet/plugins/kubernetes.io/csi/volumeDevices/pvc-2fbd1367-68fc-44cc-8227-cbc736b8a1d3/dev"
  Normal   SuccessfulMountVolume   11s               kubelet                  MapVolume.MapPodDevice succeeded for volume "pvc-2fbd1367-68fc-44cc-8227-cbc736b8a1d3" volumeMapPath "/var/lib/kubelet/pods/52783a99-efba-4725-a49a-69aa5b035aa3/volumeDevices/kubernetes.io~csi"
  Warning  FailedAttachVolume      5s (x6 over 24s)  attachdetach-controller  AttachVolume.Attach failed for volume "pvc-a7d3dfe9-8dea-4041-b9c1-e2058a937e2f" : rpc error: code = Unknown desc = error mapping volume (blo_fe98dea4041b9c1e2058a937e2f), no initiators were mapped successfully

Controller logs
I1009 12:25:19.652164       1 volumes.go:334] "trying to map volume" volume="blo_fe98dea4041b9c1e2058a937e2f" initiator="5f4ee0802357e100" lun=1
I1009 12:25:19.697586       1 volumes.go:340] "status" ReturnCode=-3177
E1009 12:25:19.697628       1 volumes.go:446] "mapping error" err="rpc error: code = AlreadyExists desc = lun overlap for lun: 1" volume="blo_fe98dea4041b9c1e2058a937e2f" initiator="5f4ee0802357e100" LUN=1
I1009 12:25:19.697659       1 volumes.go:334] "trying to map volume" volume="blo_fe98dea4041b9c1e2058a937e2f" initiator="5f4ee0802357e101" lun=1
I1009 12:25:19.742606       1 volumes.go:340] "status" ReturnCode=-3177
E1009 12:25:19.742654       1 volumes.go:446] "mapping error" err="rpc error: code = AlreadyExists desc = lun overlap for lun: 1" volume="blo_fe98dea4041b9c1e2058a937e2f" initiator="5f4ee0802357e101" LUN=1
E1009 12:25:19.742700       1 driver.go:147] error mapping volume (blo_fe98dea4041b9c1e2058a937e2f), no initiators were mapped successfully
I1009 12:25:19.742721       1 driver.go:137] === [ROUTINE END] [0] /csi.v1.Controller/ControllerPublishVolume (3767c170d9eb) <190.801251ms> ===

I'm experiencing the same issue. If I manually add host inside a storage interface (DELL ME5012), driver cannot assign right LUN. Always trying to assign LUN 1.
Deleting a host from a storage helps.
But if I want to assign a volume to a host manually (the same time while using seagate-exos-x-csi), I need to a host to have a nickname. So, it's impossible to use both methods simultaneity.
Hope this issue will be fixed in next release

Exact same issue on HPE MSA 2060 with latest firmware.

Just confirmed indeed if you remove all of the hosts and host groups and let the csi driver handle the hosts initiator mapping this works fine. This apparently needs to be modified to check for in use lun numbers that are in use by static hosts initiator mappings. I'm fine with the work around.


chore: import utility modules from gcc-conversational_ai_analytics

docs: add information about agent performance dashboard to the readme and some formatting (#3)
chore: import utility modules from gcc-conversational_ai_analytics

New PR was created to address CCAI changes.


Set profile in newer firefox/geckodriver versions

Fixes #12

I messed up the original pull request (I have committed with the wrong username and wasn't able to sign the CLA).
So here is my second try.


Typecast a Value?

Is it possible to typecast a value when overriding or globally?

Unfortunately, that's not possible but PRs are welcomed.


Mark types for schema generation

Feature description
I think it would be useful to have a way to mark only certain types for zod schema generation.
I have many cases of files that have several exported types but only some types actually need zod schemas. The current workaround for this is to split out the types that need schema generation into a separate file nearby but at the sacrifice of code colocation.
I imagine this could be done via some addition JSDoc directive on the type declaration, as those are already parsed and used for adding refinements.

I like the idea, will see what I can do 😃

@MarcPorciuncula As workaround, you can also use nameFilter in the config:
diff --git a/ts-to-zod.config.js b/ts-to-zod.config.js
index 00380ed..2189a13 100644
--- a/ts-to-zod.config.js
+++ b/ts-to-zod.config.js
@@ -8,6 +8,9 @@ module.exports = [
     name: "example",
     input: "example/heros.ts",
     output: "example/heros.zod.ts",
+    nameFilter: (name) => {
+      return ["Enemy"].includes(name);
+    },
   },
   { name: "config", input: "src/config.ts", output: "src/config.zod.ts" },
 ];

A little JSDoc tag will definitely be better, I think I will just add a JSDocTagFilter with the same pattern, so the user can choose their convention about the filter.

I tried to achieve this by having a file that re-exports only the types I want to have validation-schemas for:
// types.ts

export type LoginInput = {
  email: string
  password: string
}

// input.ts
export { LoginInput } from './types'

// or even

export type { LoginInput } from './types'

and then use input.ts as input for ts-to-zod. This does not seem to work the types physically need to be in the file. But I could not determine why. But maybe it could serve as another idea how this feature could be supported.

Hi @luhmann
For now ts-to-zod doesn’t support multiple files, so it can’t follow the type definition. If you want to have a list of exported types, you have the previous workaround (https://github.com/fabien0102/ts-to-zod/issues/30#issuecomment-851304469)
But indeed, I like the idea of the barel pattern to select what you want to export / generate with ts-to-zod 👌


remove old node version from actions

Applied mkpr on .github/workflows/*.yml
sed /\- 20.12.0/d

Pull Request Test Coverage Report for Build<PHONE_NUMBER>
Details

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 94.501%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
909

Relevant Lines:
963

💛  - Coveralls


TypeError: invalid 'instanceof' operand KeyObject

Description
TypeError: invalid 'instanceof' operand KeyObject
Reproduction
import { verify } from 'jsonwebtoken';

const jwtSecret = 'fooSecret';

export const JwtDecode = (token: string): Nullable<IJwtSignModel> => {
  if (!token) return null;
  return verify(token, jwtSecret) as IJwtSignModel;
};

// *Unhandled Runtime Error
TypeError: invalid 'instanceof' operand KeyObject

Environment

Please provide the following:
typescript: 5.2.2
jsonwebtoken:  9.0.2
@types/jsonwebtoken:  9.0.5  //tried with 9.0.2 too
Next js 14

Also facing the same issue.

Same issue after updating to v9

I might take a look

Yes I am also facing the same issue

I am also facing the same issue in my Vue2 app. It works with version 8.5.1 but not with 9.0.0.

this issue is mentioned here , as after update they added some additional parameter to sign an 'ordinary' or 'illegal' string.
Checkout here - https://stackoverflow.com/a/75033994/19933510

this issue is mentioned here , as after update they added some additional parameter to sign an 'ordinary' or 'illegal' string.
Checkout here - https://stackoverflow.com/a/75033994/19933510

I hope this works well for guys and maybe can close this thread.

this issue is mentioned here , as after update they added some additional parameter to sign an 'ordinary' or 'illegal' string.
Checkout here - https://stackoverflow.com/a/75033994/19933510

I hope this works well for guys and maybe can close this thread.

In my Vue2 application I only use the jwt.verify method. The proposed fix does not work for me.

this issue is mentioned here , as after update they added some additional parameter to sign an 'ordinary' or 'illegal' string.
Checkout here - https://stackoverflow.com/a/75033994/19933510

I hope this works well for guys and maybe can close this thread.

In my Vue2 application I only use the jwt.verify method. The proposed fix does not work for me. My tokens are signed in the backend with version 9

As per code example you are using an string 'fooSecret' which may not be correct as per v9 they added some strict rules for generating token so when we use older method it's breaking. Please if you got any lead help me out also about how this works as they demands more of proper values and their types as per docs.
Check this out at - https://github.com/auth0/node-jsonwebtoken/wiki/Migration-Notes:-v8-to-v9

this issue is mentioned here , as after update they added some additional parameter to sign an 'ordinary' or 'illegal' string.
Checkout here - https://stackoverflow.com/a/75033994/19933510

I hope this works well for guys and maybe can close this thread.

In my Vue2 application I only use the jwt.verify method. The proposed fix does not work for me. My tokens are signed in the backend with version 9

As per code example you are using an string 'fooSecret' which may not be correct as per v9 they added some strict rules for generating token so when we use older method it's breaking. Please if you got any lead help me out also about how this works as they demands more of proper values and their types as per docs.
Check this out at - https://github.com/auth0/node-jsonwebtoken/wiki/Migration-Notes:-v8-to-v9

I don't see any answer to the problem in the documentation.
In the backend my token is signed with version 9 of jsonwebtoken in the following way:
jwt.sign(payload, this.privateKey, {expiresIn: '1h'})
In Vue2 frontend the token is decoded with version 8.5 of jsonwebtoken in the following way:
jwt.verify(token, publicKey)
And it works.
But if I upgrade to version 9 I get the error invalid 'instanceof' operand KeyObject

this issue is mentioned here , as after update they added some additional parameter to sign an 'ordinary' or 'illegal' string.
Checkout here - https://stackoverflow.com/a/75033994/19933510

I hope this works well for guys and maybe can close this thread.

In my Vue2 application I only use the jwt.verify method. The proposed fix does not work for me. My tokens are signed in the backend with version 9

As per code example you are using an string 'fooSecret' which may not be correct as per v9 they added some strict rules for generating token so when we use older method it's breaking. Please if you got any lead help me out also about how this works as they demands more of proper values and their types as per docs.
Check this out at - https://github.com/auth0/node-jsonwebtoken/wiki/Migration-Notes:-v8-to-v9

I don't see any answer to the problem in the documentation.
In the backend my token is signed with version 9 of jsonwebtoken in the following way:
jwt.sign(payload, this.privateKey, {expiresIn: '1h'})
In Vue2 frontend the token is decoded with version 8.5 of jsonwebtoken in the following way:
jwt.verify(token, publicKey)
And it works.
But if I upgrade to version 9 I get the error invalid 'instanceof' operand KeyObject

So issue is when you're verifying, is it generating token perfectly. If you sign any illegal key in v9 it'll show same error. As i used it in next.js not tried in vue.

As I have understood jsonwebtoken package is not designed for browsers and you should use packages that designed for client-side as such jwt.io javaScript libraries

That's what I did. I opted for jwt-decode and jwt-encode


vm/vmss: full support for caching mechanism of managed disks

We should support

[ ] For vm/vmss create: expose caching on data disks, as it become clears that data disk needs different caching from os disk
[ ]  Support no caching
[ ] For vm/vmss disk attach, expose caching argument as well

Currently we use the --storage-caching argument. With this change it will be unclear what this refers to without reading the help. I would recommend the following for VM/VMSS create:

Expose --storage-caching, --os-caching for the OS cache and --data-caching for the data disk cache. This will allow either alias to work for the OS caching.
At some point in the future, retire --storage-caching

@yugangw-msft @johanste thoughts?


Remote setup MSI

Bundle is coming next in RTVS-pr

Since this is mostly just setup authoring, merging as I need to try and build this in the lab.


Drop the Interact button

👋 @PaulJWright @Brandonleighpanos @rmcgranaghan @cdiazbas
@jmason86 and I are thinking of dropping the Interact button in the HelioML book. What do you think of this idea?
Here are our reasons for dropping the button:

We secure the compute for this project via Google Cloud Platform research credits. To date, GCP kindly gifted us up to six months of credits every time we applied. However, since this project doesn't have any funding, we ultimately depend on Google Cloud to bestow us with credits every six months. We have no way of buying credits if we fail to secure GCP research credits.
It is not actually feasible to do real analysis via the Binderhub interface (whether it is via our custom Binderhub or the free BinderHub). It would take an incredibly long time to run an entire notebook from start to finish multiple times, which is what it takes to tweak a machine learning model. Even if a user wanted to make a trivial change (say, change the cost function a little bit), it would take a lot of time and effort to run the whole notebook on the cloud, change one thing, and re-run through the notebook again. Also, users would lose all their changes as soon as they disconnect from BinderHub, forcing them to re-download all the input data if they want to re-connect at a later date.
As a result, we were thinking of asking contributors to make some kind of toy notebook for the book and link to the full notebook in the introduction or something. But this creates more work for contributors. Furthermore, they may not want to do it as creating a toy model will give poor results compared with using the full data set.
At some point, we're going to start running into problems with the environment file. Say I used scikit-learn version X and you used a newer version of the package, scikit-learn version Y. We don't necessarily want to run scikit-learn version Y on my notebook, because it may change my results. However, the jupyter-book infrastructure does not allow us to maintain multiple environment files.

These are all the reasons we think we should drop the Interact button. Instead, we can have a setup chapter telling users exactly how to run any given notebook on their local machine (or how to run it on some other cloud-based resource). Setup would basically consist of two steps:
Step 1: Create an environment, e.g.: conda env create --file=myfile.yaml
Step 2: Fire up Jupyter Lab, i.e.: jupyter lab
If we drop the Interact button, we don't have to rely on Google Cloud, users will not have to re-download data all the time and can run through the notebook multiple times pretty quickly (or much faster, to say the least), we don't have to ask contributors to do extra work, we can attach a different environment file to each notebook, and we don't have to spend so much time wrangling with Kubernetes.
What does everyone think?

This sounds good! I agree.

Thanks for laying out the case - I'm in agreement, too.

Hi Monica,
Sounds good to me too.
Cheers,
Brandon
On 2/20/20 2:24 AM, Monica Bobra wrote:

👋 @PaulJWright https://github.com/PaulJWright @Brandonleighpanos
https://github.com/Brandonleighpanos @rmcgranaghan
https://github.com/rmcgranaghan @cdiazbas https://github.com/cdiazbas
@jmason86 https://github.com/jmason86 and I are thinking of dropping
the Interact button in the HelioML book. What do you think of this idea?
Here are our reasons for dropping the button:

We secure the compute for this project via Google Cloud Platform
research credits
https://edu.google.com/programs/credits/research/?modal_active=none%3Fmodal_active%3DnoneBlogsocial&utm_campaign=2018-edu-gcp-research-credits.
To date, GCP kindly gifted us up to six months of credits every
time we applied. However, since this project doesn't have any
funding, we ultimately depend on Google Cloud to bestow us with
credits every six months. We have no way of buying credits if we
fail to secure GCP research credits.
It is not actually feasible to do real analysis via the Binderhub
interface (whether it is via our custom Binderhub or the free
BinderHub). It would take an incredibly long time to run an entire
notebook from start to finish multiple times, which is what it
takes to tweak a machine learning model. Even if a user wanted to
make a trivial change (say, change the cost function a little
bit), it would take a lot of time and effort to run the whole
notebook on the cloud, change one thing, and re-run through the
notebook again. Also, users would lose all their changes as soon
as they disconnect from BinderHub, forcing them to re-download all
the input data if they want to re-connect at a later date.
As a result, we were thinking of asking contributors to make some
kind of toy notebook for the book and link to the full notebook in
the introduction or something. But this creates more work for
contributors. Furthermore, they may not want to do it as creating
a toy model will give poor results compared with using the full
data set.
At some point, we're going to start running into problems with the
environment file. Say I used scikit-learn version X and you used a
newer version of the package, scikit-learn version Y. We don't
necessarily want to run scikit-learn version Y on my notebook,
because it may change my results. However, the jupyter-book
infrastructure does not allow us to maintain multiple environment
files.

These are all the reasons we think we should drop the Interact button.
Instead, we can have a setup chapter telling users exactly how to run
any given notebook on their local machine (or how to run it on some
other cloud-based resource). Setup would basically consist of two steps:
Step 1: Create an environment, e.g.: |conda env create --file=myfile.yaml|
Step 2: Fire up Jupyter Lab, i.e.: |jupyter lab|
If we drop the Interact button, we don't have to rely on Google Cloud,
users will not have to re-download data all the time and can run
through the notebook multiple times pretty quickly (or much faster, to
say the least), we don't have to ask contributors to do extra work, we
can attach a different environment file to each notebook, and we don't
have to spend so much time wrangling with Kubernetes.
What does everyone think?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/HelioML/HelioML/issues/43?email_source=notifications&email_token=AIRXEEXCSYNESWUFUEI5NWDRDXLV7A5CNFSM4KYFC4MKYY3PNVWWK3TUL52HS4DFUVEXG43VMWVGG33NNVSW45C7NFSM4IO23RSQ,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AIRXEEQFH4QWZ5VJTUFEESTRDXLV7ANCNFSM4KYFC4MA.

Hi Monica, I also agree! It sounds better. Cheers, Carlos.

Addressed by #51


Not sure I agree with PIE807

When I say lambda: {}, it is clear that this callable takes no arguments, and I will raise an error if you pass me arguments. When you transform this into dict, now I could potentially take arguments, and I can only rely on an appropriate type signature to prevent people from inappropriately feeding arguments into this lambda.
cc @Skylion007

Could you provide a full example so people know what this looks like in context?

Sure thing:
def trace_structured(
    name: str,
    # NB: metadata expected to be dict so adding more info is forward compatible
    # Tuple[str, int] is a special case for string interning
    metadata_fn: Callable[[], Union[Dict[str, Any], Tuple[str, int]]] = dict,
    *,
    payload_fn: Callable[[], Optional[Union[str, object]]] = lambda: None,
    suppress_context: bool = False,
):
    """
    metadata is an arbitrary JSON compatible struct, but it's expected to not be
    too long (e.g., less than 1MB)

    payload is an arbitrary string, which can be arbitrarily long (but expected to have
    newlines so no lines are too long)
    """
    assert "name" not in ["rank", "frame_id", "frame_compile_id", "attempt"]
    assert callable(
        metadata_fn
    ), f"metadata_fn should be callable, but got {type(metadata_fn)}"
    assert callable(
        payload_fn
    ), f"payload_fn should be callable, but got {type(payload_fn)}"
    if trace_log.isEnabledFor(logging.DEBUG):
        record: Dict[str, object] = {}
        record[name] = metadata_fn()

metadata_fn default is the relevant spot.

Playground for the provided example: link

Hmm...I don't think it changes the inferred type. lambda: {} vs dict is TMU basically the same from the type checker's point of view. You can verify this using reveal_type (mypy).
In an untyped Python code base you can do whatever you like, until it crashes or not at runtime.

Interestingly, lambda: {} seems, if anything, to be slightly faster, even though it's a pure-Python function whereas the dict constructor is written in C? I assume this is because the dict constructor has to do some pretty complex argument parsing, whereas lambda: {} does not.
% py -m timeit -n 50000000 -s "x = dict" "x()"                            ~/dev
50000000 loops, best of 5: 18.8 nsec per loop
% py -m timeit -n 50000000 -s "x = lambda: {}" "x()"                      ~/dev
50000000 loops, best of 5: 18.2 nsec per loop

I still feel like I prefer dict and list from an aesthetic point of view to lambda: {} and lambda: [], and these are often options that Python programmers forget. So I do feel like PIE807 provides some value here. The performance difference is absolutely tiny, and I'm guessing the difference in the callback signature is probably only going to matter to you if you're the kind of person who's already using type annotations -- in which case, the transformation is likely safe, since if you want to enforce a narrower signature for the callback function, you can easily use type annotations to do so.
That's my opinion -- but the points raised here were definitely interesting to think about. I can see the argument that lambda: {} is more explicit to readers of the code that you should never pass any arguments to the callback function.

As a Haskeller, I don't mind doing eta reduction as long as the expressions actually mean the same thing... which they don't in this case. I am sympathetic to the defaultdict(lambda: []) case though, which I do agree is far more idiomatic as defaultdict(list). When the lambda is a default argument for the function, I feel matters are different, since it's in a contravariant position rather than a covariant position.

I disabled PIE807 in my codebase for a similar reason: lambda: {} and lambda: [] are clear ways of indicating that I'm providing a callable that returns an empty (mutable) object.  In places like Marshmallow schemas (load_default=lambda: [] etc.) this is much clearer than load_default=dict which this rule would want me to use.

It's only faster on Python 3.12; on 3.11:
$ python3.11 -m timeit -n 50000000 -s "x = dict" "x()"
50000000 loops, best of 5: 45.5 nsec per loop
$ python3.11 -m timeit -n 50000000 -s "x = lambda: {}" "x()"
50000000 loops, best of 5: 48.3 nsec per loop

On 3.12, it is a bit faster:
$ python3.12 -m timeit -n 50000000 -s "x = dict" "x()"
50000000 loops, best of 5: 49.4 nsec per loop
$ python3.12 -m timeit -n 50000000 -s "x = lambda: {}" "x()"
50000000 loops, best of 5: 44.7 nsec per loop

It might be taking advantage of the fact that {} is about twice as fast as dict() as it avoids the function lookup overhead (like how f"{x}" is faster than str(x)), it seems 3.12 optimizes on the lambda just a bit better, perhaps. Also benchmarks at this level are pretty tricky.
For fun, I checked 3.13a3 with nogil and JIT enabled, and it seems the dict one has gone up:
$ PYTHON_CONFIGURE_OPTS='--enable-optimizations --with-lto --enable-experimental-jit --disable-gil' PYTHON_CFLAGS='-march=native -mtune=native' pyenv install 3.13.0a3
$ ~/.pyenv/versions/3.13.0a3/bin/python -m timeit -n 50000000 -s "x = dict" "x()"
50000000 loops, best of 5: 62.9 nsec per loop
$ ~/.pyenv/versions/3.13.0a3/bin/python -m timeit -n 50000000 -s "x = lambda: {}" "x()"
50000000 loops, best of 5: 49.1 nsec per loop

I like "dict" better (once you get used to functions as objects), just was curious when I saw the perf comparison.

Is the open question here whether we should reduce the scope of PIE807? What specific case would we no longer enforce?


Notebook Doesnt Scroll To Newline

When you enter a new line at the bottom of the screen, it doesnt auto scroll the notebook so you have to manually scroll to see what you are doing.

Notice i typed "ma" but its off the screen one line below
Repro steps:
1., scroll notebook to very bottom
2. Press "enter" to create new line
3. cursor goes off screen
Note: when you press backspace it does auto scroll

This seems like a regression. I recall adding code to handle just this case.

cc @greazer not sure if you want to add to must fix april due to regression

Validated. Looks good now.


CLI interface for working with non-default resource configurations

Create a command line interface so a user can specify/create a resource_in file before an experiment runs.
I think we should use typer
Things needed:

[ ] allow to specify all opentrons supported hardware, and tell us what is present/not present/used/not used (some clean way of doing this would be great too, not quite sure what that would mean though, files?)
[ ] allow user to specify where to save the new file

I no longer endorse typer for this, thinking of something like this: pytermgui, or the good old PyQT6


[1.1.x] Consider aligning request body handling behavior with 1.0.x

https://github.com/aspnet/Security/issues/1121#issuecomment-290253827 for explanation and context.
1.0.x behavior:
https://github.com/aspnet/KestrelHttpServer/blob/rel/1.0.3/src/Microsoft.AspNetCore.Server.Kestrel/Internal/Http/MessageBody.cs#L130
1.1.x behavior:
https://github.com/aspnet/KestrelHttpServer/blob/rel/1.1.1/src/Microsoft.AspNetCore.Server.Kestrel/Internal/Http/MessageBody.cs#L245
Let's argue whether this is a regression fix or a breaking change 😄 But we're likely to see more people having issues like the one above.
It doesn't help that nginx's own guidance is to force the Connection: upgrade header:
http://nginx.org/en/docs/http/websocket.html
I don't know why that's the case since just forwarding the client's Connection header using the $http_Connection variable seems more reasonable than that.
cc @muratg @Eilon @davidfowl

We should try out a few servers to see what their behavior is here.

@natemcmaster please ping @halter73 for context on this issue.

Discussed with team. Let's leave this for 2.0. Doesn't seem urgent enough for a 1.1.x patch. As noted https://github.com/aspnet/Security/issues/1121, this bug only appears when the client is sending an unusual combination of Upgrade and Content-Length.


Dungeons Gear Crash on Start up [1.16.5-3.2.5]

The latest version of Dungeons Gear crashes on start up without producing a crashlog, not even when I look in the crash log folder in files, so here is the latest log after I removed every mod besides required dependencies (couldn't find any guidelines or formats for writing issues so sorry in advance):
latest.log

Please check Dungeons Gear 3.2.6, which has just been added to CF. Should fix the issue.


Crash on timerElapsed function

Hello there,
i've implement your library, and its work great but i have problem, i call my function every 100 ms for test, and i have a popasync when my count is equal to 10 , so, 10 tick and my view back to parent !
But when i want to pop i have crash !
My code below :
	public async void updateChrono(object sender, EventArgs e)
	{

		minuteLeftPoc++;
		System.Diagnostics.Debug.WriteLine(minuteLeftPoc);

		if (minuteLeftPoc == ((10))){

					timer.stopTimer();
					await APISession.closeSession(qrcode);
					await APIPoc.closePoc(qrcode);

			System.Diagnostics.Debug.WriteLine("Temps écoulé");
			await Navigation.PopAsync();
		}
	}

It may be a threading problem.
Timer is working on another thread and I am not sure if you are permitted to Pop from that thread.
You may use MessagingCenter for notifying the main thread for Navigation Pop.

you're right!  My problem is solve i using  : Device.BeginInvokeOnMainThread

It is an option but not the best practice ;)

Yes you're right, with MesseagingCenter it's more clean :) !


expose hibernateCore dep in misk-hibernate

This patches two breaks introduced in #1699. Consumers of this library rely on it to publish the javax.persistence:javax.persistence-api:2.2 artifact, which this library gets from hibernateCore. Consumers also rely on misk-jdbc. Changing implementation to api means that the dependencies are transitively published, like they were before #1699

Thank you!


Word wrap fails on lines with breakpoints in debug mode

VSCode Version: 1.40.1
OS Version: Windows 10, Version 1909, OS Build: 18363.476

Steps to Reproduce:

Open any code file in VSCode ( I tried it only with JS files).
Enable word wrap.
Put breakpoints on some lines of code, not all, in the file and enter debug mode (hit F5).
Open the side bar and extend it until the editor window becomes narrow enough for the lines to start breaking and wrapping into more lines.

Output:

As you keep extending the side bar panel, the LOC (lines of code) which have breakpoints don't break on time and go under the minimap for a while before starting to break onto newer lines.
LOC without breakpoints wrap correctly.

Note: Happens only while debugging.

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

Attaching a gif for reference:

Let's track in #32856


CipherHelper:59-60 assumes read will read full array

If wrapped input stream (legally) decides to read less than the length of the array decryption will fail although everything is working properly.
This doesn't happen often because the array to read is short but theoretically it could happen (more if what we are reading is part of a bigger stream and read in chunks from I/O dependent sources like file).
Solution is to do ByteStreams.readFully(...) or an equivalent implementation.

Solved with #123


Make ratings live actualisation

In GitLab by @erdzan on Dec 8, 2020, 23:36

Location:
Description:
Expected behaviour:
Steps to reproduce:

In GitLab by @erdzan on Dec 26, 2020, 18:54
changed title from {-checkout existing rating impl-} to {+Make ratings live actualisation+}

In GitLab by @lakhoune on Dec 28, 2020, 12:28
Implemented at latest release


Materials on skydome geometry

Just noticed when I tried to apply an emissive material to a skydome model, it crashes the game. Is this a bug or does the sky just not support custom materials?

All the current rendertypes only implement the shaders for lit surfaces and the SP is programmed to fast fail if a custom material attempt to use an unimplemented shader. So the crash itself happening isn't bug, however it not printing a message to the log when it happens is.
But I've actually been thinking about adding in rendertypes for custom materials. Specifically so people could use sky box textures in the game if they so desired. Obviously your use case sounds different to that so this is a great opportunity for me to ask what you would like to see from such a feature.
I gather you'd like to be able to just keep the same sky texture and overlay an emissive texture on top? Is there anything else you'd be looking for in addition to that?

Well basically I was trying to make an emissive material for a dome model (the static models defined in .sky files) just the same as you'd do for any other object so I guess that's it. I mean it's perfectly doable with the stock shaders already, but I could use the extra control over its emissive power because the stock material gives room for only one alpha channel that has to work for both transparency and the glow map.

Ah right, I misunderstood sorry! So you'd like just the ability to just have an unlit material with a diffuse map + emissive map? That should be doable without too much fuss.

Yeah that's pretty much it.

Added in latest release, see basic_unlit.


implement zremrangebyscore

Hello Filipe @fppt ,
Hope you are doing great!
Thank you very much for this awesome framework, it's simplified testing and dramatically improved speed for our application!!
One thing to be good to have is zremrangebyscore command support(looks like this command will be useful for others as well https://github.com/fppt/jedis-mock/issues/83 )
Could you please have a look at my PR when you have time?
Your feedback is much appreciated!
Thank you very much.

Thanks @etolbakov for your contribution. I fixed it a bit (we use comparision tests in order to be sure that the mock  behaves the same way the 'real' Redis does). Sorry for the long wait. I'm merging your PR.

Thanks, Ivan @inponomarev,
that's very good news(especially closing 2 tickets with 1 PR)!
I will go through your changes to understand better what I missed
Regards, Eugene


Why mongodb cdc not support errors.tolerance connector options at 2.3?

Is your feature request related to a problem? Please describe.
I noticed mongodb cdc 2.2 has errors.tolerance option, why removed it at 2.3?
How to deal with processing messages if an error is encountered?
Describe the solution you'd like
None.
Describe alternatives you've considered
None.

The "errors.tolerance" and "exactly-once" semantics conflict with each other, so it has not been exposed.


More bundles changes

Adds some misc methods and functions which are required for migrating the code in mt-bundles repo

@ashishmax31 can you rebase this PR with main? (fixes the CI failures)

Thanks for the continued refactoring @ashishmax31 . Another objective for this code migration was to add more testing. Can we think of a plan to test this mtbundles code, ideally as part of pr_check.sh?
There is the issue of exposing credentials in ci.ext, which we can't do in pr_check.sh. Our request to add an OCM_TOKEN was rejected: https://gitlab.cee.redhat.com/service/app-interface/-/merge_requests/28706
Should we move to ci.int? I would really like to see us building and pushing an index image as part of pr_check.sh. quay.io/mt-sre-test/dummy-addon-<index|bundle>:<tag>

@sugarraysam Yep we need tests for this package. I've created a ticket to track this https://issues.redhat.com/browse/MTSRE-212. (I've left some thoughts on how to go about pushing images build during the tests, would love to see your thoughts as well.)
As for the ci-int move, i think we only move when the interaction environment with OCM is fixed, meaning, Are we going to get a new OCM environment to interact with during our tests? (We can't interact with OCM stage in our test code)

Are we going to get a new OCM environment to interact with during our tests?

This is highly unlikely because of the number of other resources OCM depends on: Hive, DB, telemeter, etc.


Uart is dropping characters when writing and sometimes overruns and resends up to 1K of previously sent data.

Toolchain: xtensa-esp32-elf-osx-1.22.0-73-ge28a011-5.2.0.tar.gz
Platform: OSX
Esp-idf: commit e6afe28bafe5db5ab79fae213f2e8e1ccd9f937c
ESP32: DFRobot FireBeetle https://www.dfrobot.com/product-1590.html
When continuously writing single characters  to stdout in a short loop, at unpredictable intervals I am experiencing either:

dropped characters, often around 120 consecutive characters are dropped
some kind of buffer overrun/loopback resulting in the previous 900-1024 characters being retransmitted

I can easily reproduce the dropped character result, and the same thing occurs if I

use the uart driver or use non-blocking mode
use the uart driver in non-blocking mode (using fcntl(...O_NONBLOCK...) )
enable or disable software flow control
(hardware flow control is not an option as I am using a the USB<->serial interface on my dev board

I have not successfully written an isolated test case that reproduces the overrun/loopback, but it happens every time I run my project code and will occur 3-6 times during writing around 45Kb I am using as a test case.

Hi @dmcnaugh ,
Thanks for the detailed bug report.

I have not successfully written an isolated test case that reproduces the overrun/loopback,

If a simple test case won't trigger this, is there anything else that you can tell us about your project that may help us reproduce this? ie what peripherals are in use, what kind of load, etc?

The DFRobot FireBeetle is Revision 0 silicon, so I wondered if the known hardware bug identified by
Section 3.3 When the CPU accesses peripherals and writes one address
repeatedly, random data loss occurs.

might apply. But I've looked through the source and see that in ...soc/uart_reg.h
#define REG_UART_AHB_BASE(i)  (0x60000000 + (i) * 0x10000 + ( (i) > 1 ? 0xe000 : 0 ) )
#define UART_FIFO_AHB_REG(i)  (REG_UART_AHB_BASE(i) + 0x0)

so unless this bug persists despite the recommended workaround then we can rule this out.
My application is reading a file from an sdcard using the VFS FAT via sdmmc_host which is configured in 4wire mode based on the SD Card example code using:
        sdmmc_host_t host = SDMMC_HOST_DEFAULT();
        // To use 1-line SD mode, uncomment the following line:
        // host.flags = SDMMC_HOST_FLAG_1BIT;
        sdmmc_slot_config_t slot_config = SDMMC_SLOT_CONFIG_DEFAULT();

With the Uart I am effectively writing an ASCII based HEX dump of the file, while polling for input on the Uart in non-blocking mode with the following code:
	int ch = fgetc(stdin);
	if(ch != EOF) {
		ungetc(ch, stdin);
		status = RX_AVAILABLE;
	}

All the documentation suggests that my writes should be blocking while the FIFO is full, so I am not expecting to have to do anything other than
        fputc(ch, stdout);

to write one character at a time to the Uart.
I am also using the SPI master peripheral on VSPI_HOST as follows:
#define PIN_NUM_MISO 19
#define PIN_NUM_MOSI 23
#define PIN_NUM_CLK  18
#define PIN_NUM_CS   -1
spi_bus_config_t buscfg={
	.miso_io_num=PIN_NUM_MISO,
	.mosi_io_num=PIN_NUM_MOSI,
	.sclk_io_num=PIN_NUM_CLK,
	.quadwp_io_num=-1,
	.quadhd_io_num=-1
};
    ESP_ERROR_CHECK( spi_bus_initialize(VSPI_HOST, &buscfg, 1) );

Along with 8 x GPIOs as follows:
#define PIN_NUM_LED_LAT	21
#define PIN_NUM_SW_INT	22
#define PIN_NUM_SW_LAT	16
#define PIN_NUM_SW_OE	17
	gpio_set_direction(PIN_NUM_LED_LAT, GPIO_MODE_OUTPUT);
	gpio_set_direction(PIN_NUM_SW_LAT, GPIO_MODE_OUTPUT);
	gpio_set_direction(PIN_NUM_SW_OE, GPIO_MODE_OUTPUT);
	gpio_set_direction(PIN_NUM_SW_INT, GPIO_MODE_INPUT);
#define PIN_NUM_DISKA	25
#define PIN_NUM_DISKB	26
#define PIN_NUM_DISKC	27
#define PIN_NUM_DISKD	5
	gpio_set_direction(PIN_NUM_DISKA, GPIO_MODE_OUTPUT);
	gpio_set_direction(PIN_NUM_DISKB, GPIO_MODE_OUTPUT);
	gpio_set_direction(PIN_NUM_DISKC, GPIO_MODE_OUTPUT);
	gpio_set_direction(PIN_NUM_DISKD, GPIO_MODE_OUTPUT);

And a hardware timer on TIMER_GROUP_1, TIMER_0.
   timer_config_t config = {
            .alarm_en = true,
            .counter_en = false,
            .intr_type = TIMER_INTR_LEVEL,
            .counter_dir = TIMER_COUNT_UP,
            .auto_reload = true,
            .divider = 8000   /* 8000 * 12.5 = 100000 ns per tick : 10000Hz */
    };

    timer_init(TIMER_GROUP_1, TIMER_0, &config);
    timer_set_counter_value(TIMER_GROUP_1, TIMER_0, 0);
    timer_set_alarm_value(TIMER_GROUP_1, TIMER_0, timer_period_us);
    timer_enable_intr(TIMER_GROUP_1, TIMER_0);
    timer_isr_register(TIMER_GROUP_1, TIMER_0, &timeout_isr, NULL, 0, &timer_handle);

    timer_start(TIMER_GROUP_1, TIMER_0);

I think that is everything.

Hi, I think you can close this issue now.
I have the following resolution:
As noted above I am using the DFRobot FireBeetle. This board does not use the CP2102 for USB-Serial but instead uses a STM32F042F6P6 and must be running some firmware to perform the USB-Serial conversion as this chip is a general purpose microcontroller, not a dedicated protocol converter.
I thought to eliminate this element by using an off-the-self USB-Serial board based on the FT232RL connected directly to the ESP32 Uart0 TX/RX (GPIO1/3) pins.
Using this interface I get no dropped characters and I get no buffer overrun/loopback as described above.
I must conclude there is a bug in the DFRobot firmware on the STM32F042F6P6.
I will raise this with DFRobot directly.
Sorry to waste your time.

Have you tried slowing down the serial baud rate to 115200?

Hello
Same problem on OS X 10.12.6
Upload sometimes only
OK on windows same module
To Upload on OSX, I use a 3,3V serial adapter and i Force GPIO to 0V before restet and after reset I remove it. Its the procedure to program on ESP32

Seems the same or similar problem never got resolved: https://github.com/espressif/esp-idf/issues/1075

It’s a problem with the DFRobot firebeettle board UART implementation.


JS Breaking Change Tool Failed to Detect Union Enum Breaking Change for Some Case

Failed to detect breaking change: export type ProvisioningState = "succeeded" | "provisioning" | "failed -> export type ProvisioningState = "Succeeded" | "Provisioning" | "Failed"
Issue: https://github.com/Azure/azure-sdk-for-js/pull/30014#discussion_r1690855320

Pull request: https://github.com/Azure/azure-sdk-tools/pull/8708

@wanlwanl can you close this issue if it has been fixed?