Collision normal not evaluated after compute collisions

I am trying to re-do the tutorial 4 (contact simulation) using FCL -- it is yet implemented with capsules only and with the distances computed manually. However, I am not able to obtain properly the collision point and normals. I believe it is do to my lack of understanding of FCL, or to an unproper implementation in Pinocchio. I would appreciate some advices.
When using computeCollisions, the collision results should implement the contact points and normals, but these values are not initialized. By the way: each collision pair automatically defines a number of contact points numcontact, with a list of contact points, but this list does not have the proper size or the accessor allows the user to go beyond the list size.
When using computeDistances, the closest witness points on both objects are implemented and their values properly filled, but the normal are not given (which I believe is normal).
Am I missing something before accessing the normal of the collision? Is there a way to access the normals of the distance?

@nmansard Ping. Do you want to maintain this issue opened?

yes sorry, i did not resolved this problem yet.

I wish to know how long will this correction take?

somebody should investigate. I guess it should be me. But I cannot put that as an active task in my todolist yet ... sorry.
Do you want guidance to investigate?

I re-start on this issue. I just checked that it is still pending.
pio.computeCollisions(rmodel,rdata,gmodel,gdata,q,False)
res = gdata.collisionResults[1]
assert(res.isCollision)
contact = res.getContact(0)
print(contact.normal.T,contact.pos.T)

This outputs (matrix([[nan, nan, nan]]), matrix([[nan, nan, nan]]).
As suggested by @jmirabel this should come from an improper setting of my gmodel.collisionRequest. Any idea of what I should set to have FCL computing the position and normal.
NB: I could compute the position with the computeDistance function (this works, I checked), but will not give me the normal. I need the normal as well.

The example is not clear. Could you provide a full example to reproduce it?

You should enable the contacts. Something like gmodel.collisionRequest.enable_contact=True.

It is
import hppfcl
geom_data.collisionRequest.enable_contact=True

@nmansard Does this solve your issue?

@nmansard Is it working now since @jmirabel's update?

Sorry, my time to work on this is limited.
I am following both suggestions. Trying to make a self-contained example for @jcarpent , I saw that the normal seem to be computed on the UR-5 robot, but they were not with my capsule-based robot. Following @jmirabel I tried to switch to the newest hpp-fcl, which caused other problems that the new release by @nim65s should fix.
I will come back with a confirmation that the proposition by @jmirabel works, or with a self-contained example to discuss it.

So I confirm the proposition of @jmirabel works. Here is an example using example-robot-data.
There is maybe two pending questions:

first, the normals were properly computed for the meshes of the UR5, but not for the capsules (check in the code, the patch of @jmirabel is only set after the normals of the UR5 collisions were computed). Is this normal?
second: should we set gdata.collisionRequest.enable_contact to True in the construction of the pinocchio::GeometryData object?

import pinocchio as pio
pio.switchToNumpyMatrix()
from example_robot_data import loadUR
from pinocchio.utils import rotate
import numpy as np

def Capsule(name,joint,placement,radius,length,gv=None,gvroot='world/pinocchio/visuals/'):
    '''Create a FCL capsule object and add the corresponding mesh in gepetto viewer. '''
    caps = pio.GeometryObject.CreateCapsule(radius,length)
    caps.name = name
    caps.placement = placement
    caps.parentJoint = joint
    if gv is not None and hasattr(gv,'viewer'):
        gv.viewer.gui.addCapsule(gvroot+name, radius,length, [1.,0.,0.,1.])
    return caps

robot = loadUR()
robot.initViewer(loadModel=True)

q = robot.q0.copy()
q.flat[:] = [-1.25,  1.16,  2.94, -2.41,  1.73,  0.9 ]

rmodel = robot.model
rdata  = rmodel.createData()
gmodel = robot.visual_model

gmodel.addCollisionPair(pio.CollisionPair(1,4))
idx1=gmodel.addGeometryObject(Capsule('test1',0,pio.SE3(rotate('y',-1.),np.matrix([1.,1.1,.7]).T),.1,1.,robot))
idx2=gmodel.addGeometryObject(Capsule('test2',0,pio.SE3(rotate('y',0.),np.matrix([1,1,0]).T),.1,1.,robot))
gmodel.addCollisionPair(pio.CollisionPair(idx1,idx2))

gdata  = gmodel.createData()
robot.rebuildData()

import hppfcl
gdata.collisionRequest.enable_contact=True

assert(pio.computeCollisions(rmodel,rdata,gmodel,gdata,q,False))

res = gdata.collisionResults[0]
assert(res.isCollision())
contact = res.getContact(0)
print(gmodel.collisionPairs[0],contact.normal.T,contact.pos.T)

res = gdata.collisionResults[-1]
assert(res.isCollision())
contact = res.getContact(0)
print(gmodel.collisionPairs[-1],contact.normal.T,contact.pos.T)

first, the normals were properly computed for the meshes of the UR5, but not for the capsules (check in the code, the patch of @jmirabel is only set after the normals of the UR5 collisions were computed). Is this normal?

For some pairs of primitives, computing the contact points does not add any computational overhead. For others, it does. When enable_contact is false, you get the contact point for the first set of pairs of primitives.

When enable_contact is false, you get the contact point for the first set of pairs of primitives.

this is the theoretical behavior that is intended. Obviously, it may not be respected for all pairs of primitives.

for the first set of pairs of primitives

What do you mean?

When enable_contact is false, you get the contact point for pairs of primitives for which computing them does not add any computational overhead.

OK. Thanks. I think we can close this issue as it seems to be solved now.

Hi, I'm also having the problem that no contact normal is returned. I have set enable_contact as true. However, the contact results returned contain only the contact position but not the contact normal.
collision_result.getContact(0).pos.transpose() this gives me the contact position.
collision_result.getContact(0).normal.transpose() this gives me only (nan,nan,nan).
Do you have any idea why this is happening?
Thanks!

Please, provide a bit of context. What geometries ? Are they truly in collision ? ...

Please, provide a bit of context. What geometries ? Are they truly in collision ? ...

Oh sorry here are the details. I'm trying to push a box using a one DOF(prismatic) rod with a ball at the tip. Here is the code segment:
GeometryModel geom_model, box_geom_model;
pinocchio::urdf::buildGeom(model, urdf_filename, pinocchio::COLLISION, geom_model, PINOCCHIO_MODEL_DIR);
pinocchio::urdf::buildGeom(model, box_filename, pinocchio::COLLISION, box_geom_model, PINOCCHIO_MODEL_DIR);
pinocchio::SE3::Identity(), fused_model, fused_geom_model); pinocchio::appendGeometryModel(geom_model, box_geom_model);
geom_model.addAllCollisionPairs();
pinocchio::srdf::removeCollisionPairs(model, geom_model, srdf_filename);
Data data(model);
GeometryData geom_data(geom_model);

Eigen::VectorXd q = randomConfiguration(model);

// box is placed at (1.5, 0, 0)
q << 1.25, 1.5, 0, 1, 0;
forwardKinematics(model,data,q);
updateFramePlacements(model,data);

// I'm only intersted in the contact between the ball and the box
GeomIndex tip_id = geom_model.getGeometryId("tip_0");
GeomIndex box_id = geom_model.getGeometryId("box_0");
geom_data.collisionRequest.enable_contact = true;

computeCollisions(model,data,geom_model,geom_data,q);
computeDistances(model, data, geom_model, geom_data, q);

CollisionPair cp = CollisionPair(tip_id, box_id);
PairIndex cp_index = geom_model.findCollisionPair(cp);
hpp::fcl::CollisionResult cr = geom_data.collisionResults[cp_index];
hpp::fcl::DistanceResult dr = geom_data.distanceResults[cp_index];

std::cout << "collision pair: " << cp.first << " , " << cp.second << " - collision: ";
std::cout << (cr.isCollision() ? "yes" : "no");
std::cout << " - nearest point: " << dr.nearest_points[0].transpose() << "," << dr.nearest_points[1].transpose() << "\n";
std::cout << " - distance: " << dr.min_distance << std::endl;
std::cout << " contacts number: " << cr.numContacts() << "\n";
std::cout << " - normal: " << cr.getContact(0).normal.transpose() << ", " << cr.getContact(0).pos.transpose() << "\n";

Here is the output I got:
collision pair: 2 , 4 - collision: yes - nearest point: 1.5   0   0,1.5   0   0
 - distance: -0.02
 contacts number: 1
 - normal: nan nan nan, 1.5   0   0

The collision result shows the ball and the box are actually in collision and I also get the contact position (which looks right to me since the box is placed at 1.5, 0, 0). However, I only get Nan for the contact normal (which supposes to be (1,0,0) in my opinion).
Just in case you need the urdf model, drive link
Thank you!

box.urdf looks wrong. The collision and visual boxes do not have the same origin.
Could you check that the collision pair exists with existCollisionPair ?
Could you provide the pose of both geometry objects ? They are in geom_data.oMg.
DistanceResult has a normal field. Could you provide it ?

Hi Joseph,
Thanks for noticing the error in my model.
Here is the additional information and I noticed that the contact normal is only returned when the min_distance (or penetration depth) is small enough.
Here are the results for  q = 1.215, 1.5, 0, 1, 0, where 1.215 is the pusher's joint value and 1.5 is the box's position along the pushing direction:
Collision pair exist: 1
Contact normal: 1 0 0
Contact pos: 1.475     0     0
Penetration depth: 0.01
Pose of tip:
  R =
1 0 0
0 1 0
0 0 1
  p = 1.465     0     0

Pose of box:
  R =
1 0 0
0 1 0
0 0 1
  p = 1.5   0   0

Normal from DistanceResult: 1 0 0

Here are the results for  q = 1.225, 1.5, 0, 1, 0:
Collision pair exist: 1
Contact normal: nan nan nan
Contact pos: 1.475     0     0
Penetration depth: 0.02
Pose of tip:
  R =
1 0 0
0 1 0
0 0 1
  p = 1.475     0     0

Pose of box:
  R =
1 0 0
0 1 0
0 0 1
  p = 1.5   0   0

Normal from DistanceResult: nan nan nan

As you can see, the normal is returned as Nan when penetration depth is 0.02 but returned correctly when the depth is 0.01. Is this designed to be so?
Thanks!

I am able to reproduce your issue. I think you hit a bug.

I confirm this is a bug in hpp-fcl. I will provide a PR in the next days.

Thanks for the thorough feedback.

The bug is fixed on the devel branch of hpp-fcl.


pod install failed

Currently, pod 'Simcoe' generates the following error on pod install,
[!] Unable to find a specification for Simcoe
Until this issue is resolved, simply add the following to Podfile
pod 'Simcoe', :git => 'https://github.com/prolificinteractive/simcoe'

Hey @sp71, Simcoe has just been submitted to Cocoapods. Please retry and let me know if it works for you.

Works perfectly now


python310Packages.sphinxcontrib-plantuml: 0.23 -> 0.24

Automatic update generated by nixpkgs-update tools. This update was made based on information from passthru.updateScript.
meta.description for python310Packages.sphinxcontrib-plantuml is: "Provides a Sphinx domain for embedding UML diagram with PlantUML"
meta.homepage for python310Packages.sphinxcontrib-plantuml is: "https://github.com/sphinx-contrib/plantuml/"
meta.changelog for python310Packages.sphinxcontrib-plantuml is: ""
Updates performed

Ran passthru.UpdateScript

To inspect upstream changes
Impact

Checks done (click to expand)

built on NixOS
Warning: a test defined in passthru.tests did not pass
found 0.24 with grep in /nix/store/a7zv02dsx8gjlj81yhmi1m9lxddk2y19-python3.10-sphinxcontrib-plantuml-0.24
found 0.24 in filename of file in /nix/store/a7zv02dsx8gjlj81yhmi1m9lxddk2y19-python3.10-sphinxcontrib-plantuml-0.24

Rebuild report (if merged into master) (click to expand)

4 total rebuild path(s)

2 package rebuild(s)

2 x86_64-linux rebuild(s)
2 x86_64-darwin rebuild(s)

First fifty rebuilds by attrpath
python310Packages.sphinxcontrib-plantuml
python39Packages.sphinxcontrib-plantuml

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/a7zv02dsx8gjlj81yhmi1m9lxddk2y19-python3.10-sphinxcontrib-plantuml-0.24 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A python310Packages.sphinxcontrib-plantuml https://github.com/r-ryantm/nixpkgs/archive/fb609df70883e1612aacc618e8a96586f62da307.tar.gz

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/a7zv02dsx8gjlj81yhmi1m9lxddk2y19-python3.10-sphinxcontrib-plantuml-0.24
ls -la /nix/store/a7zv02dsx8gjlj81yhmi1m9lxddk2y19-python3.10-sphinxcontrib-plantuml-0.24/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review run on x86_64-linux 1

2 packages built:

python310Packages.sphinxcontrib-plantuml (python310Packages.sphinxcontrib_plantuml)
python39Packages.sphinxcontrib-plantuml (python39Packages.sphinxcontrib_plantuml)

Maintainer pings

Result of nixpkgs-review pr 180392 run on x86_64-linux 1

2 packages built:

python310Packages.sphinxcontrib-plantuml
python39Packages.sphinxcontrib-plantuml


Flow: copy type of produce for produceWithPatches with adjustments inspired by the TypeScript types

Thanks!

:tada: This PR is included in version 7.0.6 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:

:tada: This issue has been resolved in version 7.0.7 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


fix: update package.json fabric8-runtime-console to 1.0.15

Can one of the admins verify this patch?

Closing as the runtime pipeline has used an old git tag to use as the new version.


unexpected requests in log

Hi!
 And,I set auth_basic_user_file, But these requests still exist.

Could you post your configuration?

Hello this is my profile
right_proxy.conf
server {
listen                         3128;
 # dns resolver used by forward proxying
 resolver                       <IP_ADDRESS>;

 # forward proxy for CONNECT request
 proxy_connect;
 proxy_connect_allow            443 563;
 proxy_connect_connect_timeout  10s;
 proxy_connect_read_timeout     10s;
 proxy_connect_send_timeout     10s;

 # forward proxy for non-CONNECT request
 location / {
     proxy_pass http://$host;
     proxy_set_header Host $host;

     proxy_buffers 256 4k;
     proxy_max_temp_file_size 0;
     proxy_connect_timeout 30;

     auth_basic "Please enter your password";
     auth_basic_user_file /usr/local/nginx/conf/htpasswd;
 }

}

First,thanks for your help. I`m so sorry. I have deleted the information about the nginx module before. I used this module again today, using the same configuration. But, I didn`t find an unusual request this time, and user authentication only appears on some pages. I think the big probability should be my own problem.
I don`think I should use nginx as a forward proxy. I have used other tools to do forward proxy.

Thanks for your help again. This is a good module, thank you for your contribution.

for example
"https://www.baidu.com" is a https request, When I use proxy access, I am not asked to enter a username and password.
"http://ip.6655.com/ip.aspx" is a http request, When I use proxy access, I am asked to enter a username and password

Add, I use Alibaba Cloud Server

think it resolved, feel free to reopen if you have any problem.


[WIP] Maui

@inforithmics If we start on MAUI I would like to make a fresh start and not port from the existing MapView.

No Problem, I only do this to see how far i can get and if the Build server will build it. So more an explorative pull request. Which I don't know if it will work.

@inforithmics I think, that using ToNative() all over and only add one function ToForms() and ToMaui() which call this ToNative() would be easier. So many of the #if/#else would be dropped.

Currently the Build won't pass because .NET 6 rc1 is not installed on the Build Server images. (So maybe the images will be upgraded next month with .NET 6 rc1, because it has a go live license).

Starting the Sample I get an exception of a missing Microsoft.UI.Xaml.Controls.ElementAnimator on Windows have to investigate that.

Maui support is only availabe in the next SkiaSharp version 2.88.0.
Maui Windows Support is dependent on WinAppSdk which is currently in preview1.
And it compiles currently only in Visual Studio 2022
It compiles in Visual Studio 2019 with "Use Preview of the .NET Sdks"
So I think I try it out when the next round of updates is released.

It generates nuget packages and the build succeed, but somehow mapsui isn't displayed in the Sample project, I have to investigate that.

What do you mean with this?:

mapsui isn't displayed in the Sample project

I mentioned above that I would like to make a fresh start with MAUI. The MapView has a lot of code and a lot of that code is platform specific. This has all been developed by charlenni, initially outside of the Mapsui repository. When it was integrated into the Mapsui repository the plan was to move functionality gradually into the MapControl. This never happened.
The MapControl design (with the shared MapControl project) is intended to create a component that has as much platform independent code as possible. The MapControl should also allow extensions of platform specific functionality (like platform specific popups) but the idea was to allow this without integrating too much platform specific code into the MapControl.
For MAUI my intention is to start with the MapControl and then add the current MapView functionality step by step. Make it easy to add pins by adding the needed layers and adding the method to add them, but those would be platform independent.
I can see how it is easy to move forward from the current MapView codebase and I assume @charlenni would prefer to continue from that code base because he is very familiar with it. But for me it is important to make a fresh start and move forward in smaller steps.

Yes I agree with you, but for this there ist already a proposal to improve the Situation. https://github.com/Mapsui/Mapsui/issues/1190
With this pull request I wanted to Find out where the Problems are and possible Solutions. What I'm surprised the most that the Build Server can Build it. But unfortunatly Maui ist still a work in Progress, Ranking the wrong dependencies it missing some Hauses it to not Funktion. And things that workend in Xamarin Forms need workarounds

The Samples "Work" now: Following Maui/Skia Problems.

Skia Gpu is currently not working.
Workaround: MapControl.UseGPU = false;
OnSizeChanged Event is not Firing:
Workaround: private void SizeChangedWorkaround()

I guess these things will be fixed until Release of Maui. I will try with next Skia / Maui Preview

No Problem I'll fix the conflicting files. Because Maui is based on Forms with includes and conditional compilation. It is not so much work to keep the Pull request up to date. I think the earlist this can be merged is when the new Skia Sharp Version is released and when Visual Studio 2022 is official released. Which is at the earliest in November.

The migrations might take a while. All that time you need to merge master back into your branch. If there is a way to merge your branch into master without breaking the build we should go for it. Perhaps the project should explicitly not be built somehow. A separate solution with MAUI might also be an option, although my renames and such would not reach the MAUI project either. Not sure what a good option is.

@pauldendulk I thought about it, and have following idea. The problem with merging comes mainly from Mapsui.Forms changes. because I use conditional compilation to compile the same code for forms and Maui. Now my proposal is to make a second pull request where only this changes with the conditional compilation are included. So merging is then almost painless.

I think I'm going with idea 2. I'll introduce a Mapsui.Maui.sln which works with Visual Studio 2022 und the Mapsui.sln will still work with Visual Studio 2019.

When this builds this can be merged, I made Mapsui.Maui.sln project and a mauibuild: Github task.

When this builds this can be merged, I made Mapsui.Maui.sln project and a mauibuild: Github task.

What should I install to build this?

For Mapsui.Maui.sln You need to install Visual Studio 2022 Preview.
https://visualstudio.microsoft.com/de/vs/preview/ With following settings

Then you need

Sometimes Mapsui.Samples.Maui doesn't build reliable so I simply disable the other targets and let it run on Windows.
Commenting out this in the Project File. (Needs Visual Studio Restort to work).
net6.0-android;net6.0-ios;net6.0-maccatalyst


Animation

Hi,
Is there anyway, we can generate animation (.gif) of the predicted results?. Thanks in advance.

There indeed is a very simple way to do so!
You can activate the flag --save_visualisation when running inference. This produces pdb files with frames of all reverse diffusion steps. You can then open these in PyMol and render a video such as a gif.
Please feel free to reopen the issue if that does not clarify everything!


support NaiveDateTime as well

thanks for this library! hope this addition is useful to others :)

It's not clear what happens if there are mixed DateTime and NaiveDateTime, and what to do with timezone in such situation.
I believe it might be more relevant to convert from NaiveDateTime to DateTime before using this lib. I don;t think using NaiveDateTime is a good practice in any case (but I understand there might be some legacy dates with no TZ info here and there).


stream crated from kinesis.create_stream in unit test doesn't exist in lambda handler code

Issue Description
The mocked test stream that I'm trying to create and use doesn't exist in my lambda handler code. This is causing my kinesis.push_records to fail which is making my test fail.
Code Samples
Test Code
init.py
# work-around boto looking for region
UNIT_TEST_REGION = 'us-west-2'
os.environ['AWS_DEFAULT_REGION'] = UNIT_TEST_REGION
os.environ['REGION'] = UNIT_TEST_REGION
os.environ['STREAM'] = 'pytest-stream'
os.environ['SECRET_REGION'] = 'ca-central-1'

import boto3
from moto import mock_apigateway, mock_kinesis, mock_secretsmanager

@mock_kinesis
def setup_kinesis_stream():
    """Generic helper fixture that adds a mocked kinesis stream for a unit test
    to use to see if records are written as outputs.
    """
    # Need to do this import after the test environment variables are setup.
    import boto3
    stream_name = os.environ['STREAM']
    conn = boto3.client('kinesis', os.environ['REGION'])
    conn.create_stream(StreamName=stream_name, ShardCount=1)
    return conn

test_ingestion.py
# work-around boto looking for region
UNIT_TEST_REGION = 'us-west-2'
os.environ['AWS_DEFAULT_REGION'] = UNIT_TEST_REGION
os.environ['REGION'] = UNIT_TEST_REGION
os.environ['STREAM'] = 'pytest-stream'
os.environ['SECRET_REGION'] = 'ca-central-1'

import boto3
from moto import mock_apigateway, mock_kinesis, mock_secretsmanager

@mock_secretsmanager
@mock_apigateway
@mock_kinesis
def test_ingesting_array_data(test_handler) -> None:
    """Regression test for <TICKET_LINK>"""
    # NOTE: Wasn't able to get this to correctly work as a pytest fixture. Kept
    # hitting security token errors. Should open a moto ticket about this.
    kinesis_stream = setup_kinesis_stream()
    test_handler.KINESIS = kinesis_stream
    breakpoint() # First breakpoint to prove handler boto object and test object are the same

    body = copy.deepcopy(VALID_INGESTION_BODY)
    # Test data
    body["body"] = ARRAY_EXAMPLE_ARRAY

    response = test_handler.handler(body, None)
    kinesis_records = get_inserted_records(kinesis_stream)
    # TODO: Generalize this so we can parametrize
    assert len(kinesis_records) == 2
    assert kinesis_records[0] == ARRAY_EXAMPLE_ARRAY[0]
    assert kinesis_records[1] == ARRAY_EXAMPLE_ARRAY[1]

Handler Code
# work-around boto looking for region
UNIT_TEST_REGION = 'us-west-2'
os.environ['AWS_DEFAULT_REGION'] = UNIT_TEST_REGION
os.environ['REGION'] = UNIT_TEST_REGION
os.environ['STREAM'] = 'pytest-stream'
os.environ['SECRET_REGION'] = 'ca-central-1'

from moto import mock_apigateway, mock_kinesis, mock_secretsmanager

def ingestion(event: dict, _context: dict) -> dict:
    # Business logic here
     for signal in payload:
        breakpoint() # Breakpoint referenced in pdb session
        KINESIS.put_record(
            StreamName=STREAM,
            Data=json.dumps(signal),
            PartitionKey=get_partition_key())

PDB Session
(Pdb) kinesis_stream
<botocore.client.Kinesis object at 0x7f538394f080>
(Pdb) kinesis_stream.list_streams()
{'StreamNames': ['pytest-stream'], 'HasMoreStreams': False, 'ResponseMetadata': {'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'amazon.com'}, 'RetryAttempts': 0}}
(Pdb) test_handler.KINESIS == kinesis_stream
True
(Pdb) c

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> PDB continue (IO-capturing resumed) >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> PDB set_trace (IO-capturing turned off) >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
> /home/python/app/lambda/platform_gateway_lambda/handler.py(301)ingestion()
-> KINESIS.put_record(
(Pdb) KINESIS.list_streams()
{'StreamNames': [], 'HasMoreStreams': False, 'ResponseMetadata': {'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'amazon.com'}, 'RetryAttempts': 0}}
*** botocore.errorfactory.ResourceNotFoundException: An error occurred (ResourceNotFoundException) when calling the DescribeStream operation: Stream pytest-stream under account<PHONE_NUMBER>12 not found.

Attempted Solutions

I attempted to move the kinesis create stream call into the inner test function instead of in __init__.py and this did not solve my issue.

Apologies for making this ticket. My own internal test code was setting the test_handler.KINESIS value back to None at the end of a fixture call.


Please merge with Kukiyomi 🥺

Describe your suggested feature
Since Kukiyomi fork is shutting down, i think it's time to implement torrent support on Aniyomi, we definitely need it, please consider add it in the near future. 🙏
Other details
Skibidi
Acknowledgements

[X] I have searched the existing issues and this is a new ticket, NOT a duplicate or related to another open or closed issue.
[X] I have written a short but informative title.
[X] If this is a request regarding an extension, I should be opening an issue in the extension's repository.
[X] I have updated the app to version <IP_ADDRESS>.
[X] I will fill out all of the requested information in this form.

Duplicate of #1771


TLS 1.3 Support?

CloudFlare's DoH implementation seems to support TLS 1.3, this could improve performance if used.

It will as soon as this issue is closed.

Also, connections are reused, so TLS 1.3's 0RTT wouldn't really improve performance.


[Bug] Package Dependencies issue

Checked other resources

[X] I added a very descriptive title to this issue.
[X] I am sure the issue hasn't been already addressed by searching through https://github.com/agiresearch/AIOS/issues.
[X] The usage issue is not resolved by updating to the latest stable version in the main branch.

Describe your current environment
OS - WSL with ubunutu distro
GPU -  NVIDIA GeForce MX130
Cuda_version - 12.5
Describe the bug
I created a virtual python environment and installed the packages using "pip install -r requirements.txt". It installed all the packages without any issues. But when I tried to run it its showing missing packages like chromadb, watchdog, llama-index etc. Kindly update the reqirements.txt.

@subash-19 thanks for the catch! We'll be updating it soon

Hi @subash-19 and @BRama10, I’ve just submitted a PR that addresses the missing dependencies in requirements.txt, adding chromadb, watchdog, and llama-index-embeddings-huggingface. Thanks for bringing up this issue!

Solved with #309


Add Smithery CLI Installation Instructions

This PR adds installation instructions to automatically install YouTube Transcript Server for Claude Desktop using Smithery CLI. This makes it easier for users to install the MCP. Also, it adds a badge to show the number of installations from Smithery.

OK!


talk: DMing yourself doesn't work

Describe the bug, optionally with screenshots

Send a DM to yourself
Observe lots of spam in the dojo and never seeing the message

Sending messages to yourself is a common behavior in other apps to test formatting and keep reminders, users will probably do it and we should probably support it in some form (or at least not break).
I was specifically trying to do it in order to paste an image in there to get it in s3 and get the link for it easily to use as a group cover image. This was for an infra ship that didn't have s3 so required a link. The link workflow for group images also worries me a bit - are these just hotlinks to random websites?

It'd be cool if the front-end recognized this and maybe did something else? Whatever my channels becomes when it migrates may be a good candidate?

Apparently this isn't supported by the back-ends and should be guarded against for the time being. @patosullivan has details on why it's not possible at the moment.

@patosullivan What are the details? Considering taking this one on

Tbh I don't recall what I would have said exactly here. Off the top of my head: dms are ship to ship, so that could be the root of the issue.

IIRC it would start a self-acking loop that was impossible to break.

IIRC it would start a self-acking loop that was impossible to break.

That sounds right

This is related to #1227 — right now it appears that I can DM myself successfully:

Closing


Results with other datasets

Have you tested this method with other datasets?
Does your stereo matching method work if you have objects moving in the scene at different depths?

I tested the proposed method on the TUM-VIE dataset, however there is no
ground truth depth for comparison.
The proposed method can estimate the depth of moving objects with the
initial matching.
However our method cannot properly align the events with estimated camera
poses.
ᐧ
2023년 7월 10일 (월) 오후 10:00, cameralabhw @.***>님이 작성:

Have you tested this method with other datasets?
Does your stereo matching method work if you have objects moving in the
scene at different depths?
—
Reply to this email directly, view it on GitHub
https://github.com/Haram-kim/Hetero_Stereo_Matching/issues/2, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AKRVNOD5TW7RSIPN67RHPFDXPP4H3ANCNFSM6AAAAAA2EQIZQQ
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>


missing the dock in the buttom

My dock is missing, what could be the reason？

You need to install plank, and if you have plank installed, please check if there are any errors by running it through command line

thank you for your reply，when I run plank, I get this:

Are you running the dock from the terminal? Or tty? It cannot detect the Xorg desktop

Are you running the dock from the terminal? Or tty? It cannot detect the Xorg desktop

I run the dock from Kitty. If I execute sudo plank,  the dock can launch but cannot change any settings

You can use XDG_SESSION_TYPE=x11 plank to launch plank, without using root, for some reason it doesn't detect your Server, that would fix it, if you want to make it persistent, edit the + I Exec plankk & to +IExec  XDG_SESSION_TYPE=x11 plank & in your ~/.fvwm/config file. Hope that solves it

I use the BSPWM Edition, so I edit the plank & to XDG_SESSION_TYPE=x11 plank & in .config/bspwm/bspwmrc, it works. thank you so much.


firebase-admin-python: appengine standard configuration required

For the record, this is a traceback from using firebase_adm pyhon sdk on appengine standard with 3rd party libraries google-oauth, and custom oauth2client, amongst others:
Environment:

Request Method: GET
Request URL: <redacted>

Django Version: 1.11.3
Python Version: 2.7.12
Installed Applications:
('django.contrib.admin',
 'django.contrib.auth',
 'django.contrib.contenttypes',
 'django.contrib.sessions',
 'django.contrib.messages',
 'django.contrib.staticfiles',
 'django.contrib.humanize',
  [...])

Installed Middleware:
('django.contrib.sessions.middleware.SessionMiddleware',
 'django.middleware.common.CommonMiddleware',
 'django.middleware.csrf.CsrfViewMiddleware',
 'django.contrib.auth.middleware.AuthenticationMiddleware',
 'django.contrib.auth.middleware.SessionAuthenticationMiddleware',
 'django.contrib.messages.middleware.MessageMiddleware',
 'django.middleware.clickjacking.XFrameOptionsMiddleware',
 'django.middleware.security.SecurityMiddleware',
 'whitenoise.middleware.WhiteNoiseMiddleware',
 'corsheaders.middleware.CorsMiddleware',
 'house.middleware.OAuth2TokenMiddleware')

Traceback:

[...]

File "/base/data/home/apps/[...]/models.py" in user_created_callback
  82.     uid = create_firebase_user_from_google_signin(google_user)

File "/base/data/home/apps/s~[...]/models.py" in create_firebase_user_from_google_signin
  53.         disabled=False)

File "/base/data/home/apps/[...]/v1.404130886528581043/lib/firebase_admin/auth.py" in create_user
  194.         uid = user_manager.create_user(**kwargs)

File "/base/data/home/apps/[...]/v1.404130886528581043/lib/firebase_admin/_user_mgt.py" in create_user
  215.             response = self._request('post', 'signupNewUser', json=payload)

File "/base/data/home/apps/s~[...]/v1.404130886528581043/lib/firebase_admin/_user_mgt.py" in _request
  306.         resp = self._session.request(method, ID_TOOLKIT_URL + urlpath, **kwargs)

File "/base/data/home/apps/[...]/v1.404130886528581043/lib/google/auth/transport/requests.py" in request
  176.             self._auth_request, method, url, request_headers)

File "/base/data/home/apps/[...]/v1.404130886528581043/lib/google/auth/credentials.py" in before_request
  121.             self.refresh(request)

File "/base/data/home/apps/[...]/v1.404130886528581043/lib/google/oauth2/service_account.py" in refresh
  322.             request, self._token_uri, assertion)

File "/base/data/home/apps/[...]/v1.404130886528581043/lib/google/oauth2/_client.py" in jwt_grant
  143.     response_data = _token_endpoint_request(request, token_uri, body)

File "/base/data/home/apps/s[...]/v1.404130886528581043/lib/google/oauth2/_client.py" in _token_endpoint_request
  104.         method='POST', url=token_uri, headers=headers, body=body)

File "/base/data/home/apps/[...]/v1.404130886528581043/lib/google/auth/transport/requests.py" in __call__
  115.             raise exceptions.TransportError(exc)

Exception Type: TransportError at /oauth2/oauth2callback/
Exception Value: ('Connection broken: IncompleteRead(93 bytes read)', IncompleteRead(93 bytes read))

This issue is quickly resolved by following the google-oauth app engine standard-specific installation instructions, notably the addition of the environment variable GAE_USE_SOCKETS_HTTPLIB in app.yaml as follows:
GAE_USE_SOCKETS_HTTPLIB: 'true'

as per https://google-auth.readthedocs.io/en/latest/user-guide.html#the-app-engine-standard-environment.
Since this library is a dependency of firebase-admin-python, would it be appropriate to add a note as to this required configuration in README.md? The reason I am asking is because the traceback is not very descriptive as to what might be causing this and it is currently hard to find the information necessary to make this work.
@salqadri now that I read the library is tested on app engine it makes me think this could be due to something specific to my environment--where can we see how the library is tested on app engine (README.md), if not is this a known quirk?

The additional steps for setting up the google-auth library in App Engine are always required when deploying to GAE. I wrote those steps after testing with Python Admin SDK. GAE also provides some documentation on these requirements, but I personally found their docs a little confusing.
I think it's probably a good idea to add a link to the additional steps somewhere in Firebase devsite, rather than here in the README.

@egilmorez can we find a suitable place in Admin SDK documentation for this information?

Added a link and note adjacent to the code snippet for initializing the Python Admin SDK:
"To use the Python Admin SDK in the Google App Engine standard environment, you'll need some extra configuration."
Brief, but I hope it will help Python users find the required information.

This is live at https://firebase.google.com/docs/admin/setup
Thanks @egilmorez


ErrorHandling should be explicit

Aggregate Do doesn't catch any errors anymore. If you need error handling, use Try and CatchException/CatchFault instead.

Wow, very nice solution. I'll try to combine with the Do method cause nobody knows which method Do or Try have to use. I merge your handling of Exceptions into the Do.
Oh, one point mre. I like your naming CatchException and CatchFault
THX

I've added your changes into my current development and changed some small things.
The Do method returns void, so nobody can catch the exceptions without its own try-catch-construct. Only the Try method is able to catch exceptions and faults.
Take a look into the current solution :)

Excellent, thanks


private-distributors-list: add Platform9

Fixes https://github.com/kubernetes/sig-release/pull/533

/approve
/lgtm

Hey guys, can someone add the lgtm label and commit this to the master? I don't see Platform9 in the list. I think it was committed to the old repo but to the one that the private distribution list has recently moved to. Thanks!
Eric

/lgtm

@philips Sorry for inquiring again. It appears all tests have passed. How long does it typically take for the tie- pending lgtm label to go through?
If you can provide what this step involves right now, that would be great. I appreciate it !
Eric

/hold cancel


Correction for raw affiliation King's University College at Western University

Correction needed for raw affiliation King's University College at Western University
raw_affiliation_name: King's University College at Western University
new_rors: 02grkyz14
previous_rors: 048f5b183;05cgtjz78
works_examples: W4366819300;W4386458302;W4367296517;W4379014927;W4387362260;W4384561123;W4389352341;W4385884103
contact: 5033f7b221f9663ac38289df62678396:411c29e6c1a58a09 @ uwo.ca

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


🪲 MEDIAN is in the docs but not implemented

Describe the bug
A clear and concise description of what the bug is.
SQL statement
Please submit the SQL statement, or a representative example using the sample datasets.

Expected behaviour
A clear and concise description of what you expected to happen.
Additional context
Add any other context about the problem here.

Removed from the docs - but the function should be added.


Update this repo with fixes made by other contributors

Hi, this repo has been very stale and I see that other contributors have forked this project and made some valuable changes. Would you be able to aggregate those changes and update this repository in order to have a more central and trustworthy repository to look for.
Thanks in advance! ;)

The steps to contribute look like this:

fork
commit
submit a pull request
complete an ICLA or CCLA

Good to see, that the last 2 month there is action again here !
It would be great to clean/close some of the 15 issues also 👍
( ps: I'm new here, but motivated to bring my ansible experience to this community too. See also https://github.com/cloudera/cloudera-playbook/issues/21#issuecomment-489639618

Hi @ricardogaspar2 and @lhoss,
You need to first sign and return an ICLA and CCLA before we can accept and redistribute your contribution. Once these are submitted you are free to start contributing to cloudera-playbook. Submit these to<EMAIL_ADDRESS>Here you can find the pdf files:
https://github.com/cloudera/cloudera-playbook/tree/master/icla
Please update this issue (18) if you receive the confirmation from our CLA team.
Thank you!

I'm closing this issue since I have recently taken over as maintainer of this repo and will be actively reviewing and merging improvements. Please send us your PRs!


Define Tags for index

Right now we use ~20 DC metatags to create the index. We have to formalise this.

This issue was moved to consortium/hybrid-publishing-research#4


Check dependent PR

Summary
Github action step to define PR dependencies and block the merging until the PRs it depend on is merged
test
depends on #657

blocked by https://github.com/uber/cadence-web/pull/657

depends on https://github.com/uber/cadence-web/pull/657


Unblock the server destruction process

This is an ugly fix for #17214.
In Python 2, it should be an noop. In Python 3, it frees the main thread from blocked during server destruction.
It is challenging to trace down behavior of CPython. So far I know that, the actual serving thread exits immediately after the exception is raised, but Python 3 failed to notice that, then hung on a lock that was trashed by gc.
Let's see whether our test is happy with this one-line change or not.
There is a unit test suits this scenario but disabled long ago by issue https://github.com/grpc/grpc/issues/7311. It runs script in another process, which is perfect for this bug reproduction, but it requires to know which executable it is using by sys.executable. In cases that gRPC got compiled into binary, there is no way to retrieve sys.executable. If there are better idea to test it, I would love to implement it.

Objective-C binary sizes
*****************STATIC******************
  New size                      Old size
 2,019,964      Total (=)      2,019,964

 No significant differences in binary sizes

***************FRAMEWORKS****************
  New size                      Old size
11,183,082      Total (<)     11,183,085

 No significant differences in binary sizes

Objective-C binary sizes
*****************STATIC******************
  New size                      Old size
 2,019,964      Total (=)      2,019,964

 No significant differences in binary sizes

***************FRAMEWORKS****************
  New size                      Old size
11,183,088      Total (>)     11,183,087

 No significant differences in binary sizes

Known Failure: https://github.com/grpc/grpc/issues/17138

Should be solved by #17444


How to add background, progress bar and custom component like map template?

How to add a background for a template,  change font size, progress bar, and custom components?

You cannot, these are just pre-defined templates from Apple not your own rendering.
Only renderer allowed is in the MapTemplate, and is allowed for Map only, nothing else. But you can still render stuff there :)


Aww shucks

cf push
using this version of the CLI:

	6.12.4-b4b6af1

and that this error occurred:

	runtime error: invalid memory address or nil pointer dereference

and this stack trace:

	goroutine 1 [running]:
main.generateBacktrace(0x0, 0x0)
	/Users/cffadmin/go-agent/pipelines/Mac-OSX-Unit-Tests/src/github.com/cloudfoundry/cli/main/main.go:117 +0xc7
main.handlePanics(0x181b1a8, 0xc2081144b0)
	/Users/cffadmin/go-agent/pipelines/Mac-OSX-Unit-Tests/src/github.com/cloudfoundry/cli/main/main.go:101 +0x1a4
github.com/cloudfoundry/cli/cf/net.Gateway.performRequestForResponseBytes(0x181b5e0, 0xc2082667e0, 0x9051e0, 0x1, 0x12a05f200, 0x0, 0x0, 0x0, 0x181b380, 0xc208286ae0, ...)
	/Users/cffadmin/go-agent/pipelines/Mac-OSX-Unit-Tests/src/github.com/cloudfoundry/cli/tmp/cli_gopath/src/github.com/cloudfoundry/cli/cf/net/gateway.go:253 +0x2f0
github.com/cloudfoundry/cli/cf/net.Gateway.PerformPollingRequestForJSONResponse(0x181b5e0, 0xc2082667e0, 0x9051e0, 0x1, 0x12a05f200, 0x0, 0x0, 0x0, 0x181b380, 0xc208286ae0, ...)
	/Users/cffadmin/go-agent/pipelines/Mac-OSX-Unit-Tests/src/github.com/cloudfoundry/cli/tmp/cli_gopath/src/github.com/cloudfoundry/cli/cf/net/gateway.go:292 +0x309
github.com/cloudfoundry/cli/

Can you provide more details? Is it reproducible? On the latest cf CLI release? Does push always fail no matter what the application is you push, the flags you specify and/or the manifest file entries you set?

Closing this issue. Feel free to reopen when you have more details.

CLI team


Implement an ability to hover on the map icon to get info about a specific marker

Description
Develop hover functionality for map icons that allows users to view detailed information about a specific marker without additional clicks.
Acceptance criteria

Hovering over a map icon displays detailed information about the marker in a tooltip or a small popup.
Information display is responsive and does not cause lag or disrupt other map functionalities.
UI design for the hover information is clear and matches the overall design of the map interface.

Definition of done (DoD)

Component tests have been written and pass
All CI tests passed for the pull request
Code review has been completed and code has been merged into sprint-release branch
All feature branches have been merged and closed
New feature code has been documented

DoD general criteria

Feature has been fully implemented
Feature has been merged into the mainline
All acceptance criteria were met
Product owner approved features
All tests are passing
Developers agreed to release

Discussed with @Lucas-Nan that a click would be better than a hover. Agreed by @op-hub


sets: allow unordered types

This allows us to use Sets for (almost) arbitrary types. The cost is that SortedList must become a function, not a method.
Rewrite done using gofmt -r 'x.SortedList() -> sets.SortedList(x)' -w **/*.go.
The alternative would be to create a duplicate Set type, UnoderedSet; in talking with Rama we both preferred this option.
Please provide a description of this PR:

@howardjohn: The following test failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

unit-tests-arm64_istio
ac83b5d0f971d3d7a0bcc9298599d6b9336b92d4
link
true
/test unit-tests-arm64

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


Added HaloDAO

Hi! What is your PR about?

[x] Add images for your space
[ ] Add custom domain for your space
[ ] Add alias for migrate your space
[ ] Add or edit a skin
~Edit your space with GitHub?~ (deprecated) Please migrate your space to ENS https://docs.snapshot.page/spaces/migrate
~Create your space with GitHub~ (deprecated) Create your space with ENS instead https://docs.snapshot.page/spaces/create

Your space name directory should be similar to your ENS. Follow this example spaces/halodao.eth/logo.png.

Got it. It has been resolved in the latest commit. Thank you


Don't show loading indicator within viewer

☝
Is there a nicer way to do this?

Is there a reason we don't want to show the loading for the canvas?

The url updates when the next page is scrolled into view – this leads to a proliferation of yellow progress bars when you're scrolling to read a book.

@davidpmccormick this PR has been open for too long, can it be closed or merged?


I failed to add sharp to my electron using pnpm

[1] The specified module could not be found.
[1] \?\G:\packages\electron\node_modules\sharp\build\Release\sharp-win32-x64.node
[1]
[1] Possible solutions:
[1] - Install with verbose logging and look for errors: "npm install --ignore-scripts=false --foreground-scripts --verbose sharp"
[1] - Install for the current win32-x64 runtime: "npm install --platform=win32 --arch=x64 sharp"
[1] - Consult the installation documentation: https://sharp.pixelplumbing.com/install
What is the output of running npx envinfo --binaries --system --npmPackages=sharp --npmGlobalPackages=sharp?
System:
OS: Windows 10 10.0.19045
CPU: (4) x64 Intel(R) Core(TM) i5-7400 CPU @ 3.00GHz
Memory: 5.58 GB / 15.89 GB
Binaries:
Node: 18.16.0 - C:\Program Files\nodejs\node.EXE
Yarn: 1.22.19 - ~\AppData\Roaming\npm\yarn.CMD
npm: 9.7.2 - C:\Program Files\nodejs\npm.CMD
pnpm: 8.6.10 - ~\AppData\Roaming\npm\pnpm.CMD
npmPackages:
sharp: ^0.32.6 => 0.32.6

I can see the build, but the run keeps failing

https://github.com/lovell/sharp/issues/3351
I finally solved the issue through this. You must manually enter sharp to install.


Gradle stack

I would like to have a gradle based stack for my java/springboot applications
the alternative is to run the maven stack and run gradle with maven...but personally I don't like that option. If you are a gradle user, you don't mix and match.

@airazabal yes, we would definitely want to add more stacks so users wouldn't have to "mix and match", we just haven't had time to create them ourselves. That said, we would be happy to guide and help you out if you wanted to create this one?

I have created a working one, although it needs some work to make it usable...see here https://github.ibm.com/irazabal/gradle-stack under incubator. I would appreciate some comments.

@airazabal It'd be easier for us to review if you push what you have to a PR and we made the comments there  🙂


[Docs]: can prism be integrated into MkDocs for richer code sample support?

Describe your edit
Is it worth using prism for enhanced code sample support within MkDocs. Investigate what prism provides over the built-in plugins. MkDocs supports the custom inclusion of javascript, so it should be fairly straightforward to include it.
Code of Conduct

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

https://prismjs.com/examples.html


[Android] Unsupported interpolation type : keyboard

As reported in https://github.com/facebook/react-native/issues/23343 and incorrectly closed, LayoutAnimation.configureNext() on Android throw's error when using LayoutAnimation.Types.keyboard as type.

React Native version:
System:
    OS: macOS 10.15.2
    CPU: (4) x64 Intel(R) Core(TM) i5-7500 CPU @ 3.40GHz
    Memory: 12.61 GB / 32.00 GB
    Shell: 3.2.57 - /bin/bash
  Binaries:
    Node: 10.15.3 - /usr/local/bin/node
    Yarn: 1.21.1 - /usr/local/bin/yarn
    npm: 6.13.6 - /usr/local/bin/npm
    Watchman: 4.9.0 - /usr/local/bin/watchman
  SDKs:
    iOS SDK:
      Platforms: iOS 13.2, DriverKit 19.0, macOS 10.15, tvOS 13.2, watchOS 6.1
    Android SDK:
      API Levels: 23, 24, 26, 27, 28
      Build Tools: 27.0.3, 28.0.3, 29.0.2
      System Images: android-28 | Google APIs Intel x86 Atom, android-28 | Google Play Intel x86 Atom
      Android NDK: 19.2.5345600
  IDEs:
    Android Studio: 3.5 AI-191.8<IP_ADDRESS>10548
    Xcode: 11.3.1/11C504 - /usr/bin/xcodebuild
  npmPackages:
    react: 16.9.0 => 16.9.0
    react-native: 0.61.5 => 0.61.5

Steps To Reproduce

On Android run the following code

const animation = LayoutAnimation.create(250, LayoutAnimation.Types.keyboard, 'opacity');
LayoutAnimation.configureNext(animation);
this.setState(...);

Describe what you expected to happen:
App not to throw error
Snack, code example, screenshot, or link to a repository:

I have the same pronlem, UIManager.setLayoutAnimationEnabledExperimental(true); is enabled in the code, the problem is in  LayoutAnimation.configureNext({ duration, update: { duration, type:"keyboard" } }), what is the reason for this error?


Added lbs to prime actual weight

Summary
Prime actual weight (labeled as shipment weight) was missing lbs. Now lbs is added.

Warnings

:warning:
This PR does not include changes to unit tests, even though it affects app code.

:warning:
Please add the JIRA issue key to the PR title (e.g. MB-123)

  Generated by :no_entry_sign: dangerJS against a66fa14d49891a6e51fc15ef1bbbe931b2359067


constant time checksum test in base58

+1 on this --it is needed in so many use cases. makes #563 easier.

this is just making the test always take the same amount of time :) it already has the checksum test


Update using-continue.py

Please fill in this pull request template before submitting
1. This pull request resolves #???
#10
2. Description
Updated using-continue.py and added the challenge as well
3. Fill in checklist by marking [x]

[ ] I've read the CONTRIBUTING.md
[ ] I was assigned to this issue
[x] My code is formatted using required linting
[x] I've run my code locally and checked it works

@L-crypt Please resolve all your other open pull requests first before I can look at this one. Thanks.

@L-crypt Tutorial content looks good but can you add more description to the challenge?
Again mention what the natural numbers are and maybe give an example input and output for the challenge. Thanks!

@L-crypt I made some slight edits to the arrangement of your description in the tutorial but it all looks good now :)


Create Merge_Sort.java

This Java code implements the Merge Sort algorithm, which is a classic example of a divide-and-conquer approach. The code works by recursively splitting the input array into smaller subarrays until each subarray contains only one element. These subarrays are then merged back together in a sorted order. The mergeSort function handles the recursive division of the array, while the merge function combines two sorted subarrays into one. The main function initializes an array, calls mergeSort, and prints both the original and sorted arrays. This algorithm has a time complexity of O(n log n), making it efficient for large datasets.

Please Merge this Merge Sort code written in JAVA


Why does a url with "#" returns 404?

I'm testing these 2 valid urls
http://www.businessinsider.com.au/smartphone-impact-brain-body-sleep-2015-2
http://www.businessinsider.com.au/smartphone-impact-brain-body-sleep-2015-2#ooid=BvMjVqcjoHdZBG6tTpXy8UkhB5_46U_c
Running the code below for both, the first one returns 200 OK, but the second one returns 404.
request = Typhoeus::Request.new(url, followlocation: true)
request.on_headers do |response|
   puts response.code
end
request.run

Cannot have idea of this behavior. Maybe is some escaping problem witth #?
If I make a little replace of the # to ?, it works
http://www.businessinsider.com.au/smartphone-impact-brain-body-sleep-2015-2?ooid=BvMjVqcjoHdZBG6tTpXy8UkhB5_46U_c
Thanks

Well, actually doing some more tests, this problem only occurs no production environment in my case on heroku. What heroku has to do with it?

It probably has another libcurl version.

Yes, probably it is. Found the same problem here https://github.com/typhoeus/ethon/issues/93


Default pagination size

i've extracted pagination size constant from page's and request handlers classes into application configuration and also fixed blogs page where fetching paginated data was broken

Coverage increased (+0.2%) to 68.601% when pulling 67b10f83f2b5a4fe183527af69a261cdeb9d9995 on nikom1337:default_pagination_size into bb50a658f0c48acc1d77ee311dbe8ac893fd9960 on tdziurko:master.

Coverage increased (+2.0%) to 70.406% when pulling b92513275f7ec2a67d9d4b4855e4ad0591a0aefd on nikom1337:default_pagination_size into bb50a658f0c48acc1d77ee311dbe8ac893fd9960 on tdziurko:master.


Adding frontend react app

Add frontend folder that contains react app

working on it

working on it

Frontend folder means to make PWA or a webapp?

Frontend folder means to make PWA or a webapp?

frontend of webapp

frontend of webapp

You mean converting the website into webapp?

You mean converting the website into webapp?

@Amit366 this issue aims to build the frontend of a web app for my library, from scratch.
However, PWA sounds like a nice idea too. If you want to collaborate with @kenkirito on this Issue, you may do so.

@Amit366 this issue aims to build the frontend of a web app for my library, from scratch.
However, PWA sounds like a nice idea too. If you want to collaborate with @kenkirito on this Issue, you may do so.

Yes I would like to collaborate

Yes I would like to collaborate

@kenkirito please collaborate with @Amit366 over Discord.

@kenkirito please collaborate with @Amit366 over Discord.

@kenkirito what's the progress? And what can I do?

@kenkirito what's the progress? And what can I do?

Should I start to do PWA?

Should I start to do PWA?

Should I start with PWA? I didn't get any reply on the progress from @kenkirito .

Should I start with PWA? I didn't get any reply on the progress from @kenkirito .

I am thinking about working in react js

I am thinking about working in react js

can I grab this issue?
@kenkirito can I help you?

@Ashuto7h go on with the issue


How to change the default mappings

like the default mapping / are up/down mvoing, I want to /, How can i do that

vim.api.nvim_buf_set_keymap(0, 't', '<C-e>', '<DOWN>', {nowait = true, noremap = true}) vim.api.nvim_buf_set_keymap(0, 't', '<C-u>', '<UP>', {nowait = true, noremap = true}) vim.api.nvim_buf_set_keymap(0, 't', '<C-t>', '<Enter>', {nowait = true, noremap = true})
Oh i got it

While what you did works it is better to modify the keymap.fzf table, look at the default options in the README to see how.

I'will check it, Thanks for your work


Added compiler directive to expose JsonNavigator and CosmosElement in internal builds

Pull Request Template
Description
Added #if INTERNAL compiler directive to change JsonNavigator and CosmosElement accessibility level to public in internal builds. Having direct access to these classes is a requirement for Gremlin API moving to the V3 SDK.

Do all these API's needed? My understanding is just the top level CosmosElement types are enough.
its an very extensive contract for dependency.

Contract surface is too big for INTERNAL dependency.

Do all these API's needed? My understanding is just the top level CosmosElement types are enough.
its an very extensive contract for dependency.

There may be a few cases in which I can reduce some of the scope. However, in any given set of files containing a partial class (e.g. CosmosString.cs, CosmosString.EagerCosmosString.cs, and CosmosString.LazyCosmosString.cs) I need to maintain the same accessibility modifier on ALL instances of the partial class CosmosString. I am not exposing the private implementations such as EagerCosmosString or LazyCosmosString.

Please create internal/friends UT to cover the usage scenarios.
SDK can guarantee only those in the UT.


Fix contributor reorder concurrency conflict handling #1568

FIXES #1568

This doesn't really fix the concurrency issue. We should first check the snapshot id, and show a conflict error if someone else has modified the record. Checking the lengths is to validate the data posted and avoid out of bounds errors.


MSC2367: Add reason field to all membership events

Rendered
Relates to:

https://github.com/matrix-org/matrix-doc/issues/2339
https://github.com/matrix-org/matrix-doc/issues/1416
https://github.com/matrix-org/matrix-doc/pull/1983

@mscbot fcp merge

FTR, implemented in RiotX here: https://github.com/vector-im/riotX-android/pull/738

We probably don't need a proof of concept implementation for this - moving into the spec writing queue.

oh, it has been implemented but no one linked to it: https://github.com/matrix-org/synapse/pull/6434

Spec PR: https://github.com/matrix-org/matrix-doc/pull/2795

Merged 🎉


fix: minor fixes

Preflight Checklist

[x] I have read the Contributing Guidelines for this project.
[x ] I agree to follow the Code of Conduct that this project adheres to.
[x ] I have searched the pull request tracker for a Pull Request (PR) that matches the one I want to submit, without success.

Issue
This PR Closes #
Pull request checklist
Please check if your PR fulfills the following requirements:

[ ] Tests for the changes have been added (for bug fixes / features)
[ ] Docs have been reviewed and added / updated if needed (for bug fixes / features)

See Review Guidelines for more information what is checked during review process.
Changes
Changes in this pull request:

Browsers
I tested the build on the following browsers:

[ ] Firefox Desktop
[ ] Chrome Desktop
[ ] Edge Desktop
[ ] Safari Desktop
[ ] Chrome Mobile
[ ] Safari Mobile

Screen readers
I tested the build on the following browsers:

[ ] JAWS Firefox Desktop
[ ] JAWS Chrome Desktop
[ ] NVDA Firefox Desktop
[ ] NVDA Chrome Desktop
[ ] VoiceOver Safari Desktop
[ ] VoiceOver Chrome Desktop
[ ] VoiceOver Safari Mobile
[ ] Android Accessibility Suite Chrome Mobile

Pull request type

Please check the type of change your PR introduces:

[ ] Bugfix
[ ] Feature
[ ] Code style update (formatting, renaming)
[ ] Refactoring (no functional changes, no api changes)
[ ] Build related changes
[ ] Documentation content changes
[ ] Other (please describe):

Does this introduce a breaking change?

[ ] Yes
[ ] No

Other information

Codecov Report

Merging #1512 (f0dba8c) into master (ab917b0) will decrease coverage by 0.25%.
The diff coverage is 62.05%.

@@            Coverage Diff             @@
##           master    #1512      +/-   ##
==========================================
- Coverage   54.85%   54.59%   -0.26%
==========================================
  Files          49       75      +26
  Lines        1659     3090    +1431
  Branches      406      875     +469
==========================================
+ Hits          910     1687     +777
- Misses        671     1286     +615
- Partials       78      117      +39

Impacted Files
Coverage Δ

...mponents/sbb-accordion-item/sbb-accordion-item.tsx
0.00% <0.00%> (-37.21%)
:arrow_down:

src/components/sbb-clock/sbb-clock.tsx
0.00% <0.00%> (ø)

src/components/sbb-link/sbb-link.tsx
59.57% <ø> (-31.86%)
:arrow_down:

src/components/sbb-logo/sbb-logo.tsx
0.00% <ø> (ø)

src/components/sbb-menu-action/sbb-menu-action.tsx
61.90% <ø> (ø)

src/components/sbb-menu/sbb-menu.tsx
25.89% <ø> (ø)

...ents/sbb-pearl-chain-time/sbb-pearl-chain-time.tsx
92.30% <ø> (ø)

...in-vertical-item/sbb-pearl-chain-vertical-item.tsx
94.11% <ø> (ø)

...mponents/sbb-checkbox-group/sbb-checkbox-group.tsx
30.61% <30.61%> (ø)

src/components/sbb-alert-group/sbb-alert-group.tsx
33.33% <33.33%> (ø)

... and 57 more

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


Feature Request: Add Chip to UButton

It would be great if we could have the Chip option (that already exists on UAvatar) on buttons - especially in instances such as a notification icon for example.
It's not a high priority thing, and by all means I can add my own little wrapper to UButton, I just thought it would be a nice feature that several people might like and (hopefully) wouldn't be too difficult to implement!

I agree, and also to just UIcon.

I guess we could extract the chip feature from the avatar to put it into a Chip component that could wrap an Avatar, a Button, an Icon, etc.


Other User can disable [ !!!Last!!! ]  Administrator.

Hi! Mr.takezoe.
this is mamemo0823 ( my-dev ).
again, In [_edituser Page].
At [ Disabled: ] section.
Maybe this situation is difficult to find...
(1) Now, [ root ] Login.
(2) Create User [ xxx ] with [ User Type: administrator ].
(3) Change [ root ]'s User Type from [ Administrator ] to [ Normal ].
(4) Edit [ xxx ]'s Disable Flag from [ Off ] to [ On ]
As you are about to see, This system has no Administrator...
Maybe, [ Now gitbucket's version ] contains this problem.
Then i suggest these codes
----------------------------
-------------------------------------------------------
[ src/main/scala/gitbucket/core/service/AccountService.scala ]
define a function
-------------------------------------------------------
def isAdmin(userName: String)(implicit s: Session): Option[Account] =
Accounts filter(t => (t.userName === userName.bind) && (t.isAdmin === true.bind)) firstOption
-------------------------------------------------------
[ src/main/scala/gitbucket/core/controller/UserManagementController.scala ]
modify such like this
-------------------------------------------------------
protected def disableByNotYourself(paramName: String): Constraint = new Constraint() {
override def validate(name: String, value: String, messages: Messages): Option[String] = {
params.get(paramName).flatMap { userName =>
if(params.get("removed") == Some("true")){
if(userName == context.loginAccount.get.userName){
Some("You can't disable your account yourself")
}else{
// [ loginUser ] is not equal [ targetUser ]
if(isAdmin(userName) != "None" && getAdminUsers(false).length == 1) {
Some("Deny!

See #533

Thanks for your proposal. This issue has been closed because duplicated but referenced from #533.

sorry.
i'm sure.

No problem. Your proposed code will help us :+1:


Does't work base on cordova Apps

This module does not work with cordova apps after deploy the app to a device

Please give more details...

@knalli  When I choose angular-translate as my multiple language solution,its works well in the browser,but when i deploy or emulation using xcode emulator,its only display the prop like this
app.title and have not translate

So, we cannot investigate without more details. We cannot debug your application to find out what you have configured and what there happens or not happens.
Perhaps you are using XHR but they failed in your setup.. who knows?
Additional resources: https://github.com/angular-translate/angular-translate/search?q=cordova&type=Issues&utf8=✓

Hi.
Since the other issue was closed I will try here. In iOS running the page on a local server in Safari and also within an iOS app it isn't possible to get translations. So this isn't really a problem of iOS together with Cordova build apps, it seems a problem of in iOS Browser as well.

When I'm running some of the angular-translate.github.io - demos ("Getting started" - just did a quick test) from within my iOS Browser (Safari) - they work. So this is not true that translate will not work on iOS-devices in general!

OK, think we might go a little deeper into some configs here?
My modules are the following:
'ngRoute','ngAria','ngAnimate','ngMaterial','mobile-angular-ui','pascalprecht.translate',	'ui.bootstrap','leaflet-directive'
My setup for the translations in the config is like this one:
...
// german
$translateProvider.translations('de_DE', {
	HEADLINE:  'Eine Überschrift',
	MENU_SETTINGS: 'Einstellungen',
	BTN_BACK: 'Zurück',
	BTN_MENU: 'Menü',
	BTN_CLOSE: 'Schließen',
	BTN_REFRESH: 'Aktualisieren'
});

// english
$translateProvider.translations('en_US', {
	HEADLINE:  'Some Headline',
	MENU_SETTINGS: 'Settings',
	BTN_BACK: 'Back',
	BTN_MENU: 'Menu',
	BTN_CLOSE: 'Close',
	BTN_REFRESH: 'Refresh'
});

$translateProvider.determinePreferredLanguage();
...

Within the template I'm using this for example:
{{ 'HEADLINE' | translate }}

For
This is working great using Chrome browser and also within an Android-App container but it isn't working on other browsers and within an iOS-App container.
I also tried to use something like this definition  shown in the Getting-Started:
...
// german
$translateProvider.translations('de', {
...
});

// english
$translateProvider.translations('en', {
...
});

$translateProvider.determinePreferredLanguage();
...

Something I'm missing?
Regards

Did you also try the directive-approach with sth. like  ? If not: Please check if that is working.

Hi.
I tried this now and it is also not working in other browsers than Chrome. Something broken because of the modules used?

Are you really sure you have not any error in logs?

@knalli no there aren't any errors in the logs. See the attached screenshot.

Then you have to debug (i.e. making Conditional breakpoint actions with console.log see in https://developer.chrome.com/devtools/docs/tips-and-tricks) within the translate directive to verify the actual steps.

So. I cleared all Caches and tried again in Chrome, FF on Windows and Safari on MacOSX debugging some breakpoints using german browser interfaces for now:
Chrome only works this way:
// german
$translateProvider.translations('de_DE', {
...
});

FF after resetting cache works this way:
// german
$translateProvider.translations('de', {
...
});

Safari on MacOSX after resetting cache works this way:
// german
$translateProvider.translations('de_de', {
...
});

So if this isn't that strikt it wouldn't be nice since I would need to add a lot translations to support the one language only.
I also tried running it on iOS (simulator only, devices are on the road today) changing the devices language to german. The local of the call is "en_us" (it isn't "en_US"), the navigator.language of the simulator is "en-us" and so it isn't german and only worked this way to get translations, but since device language is german it isn't correct:
// english
$translateProvider.translations('en_us', {
...
});

For iOS it might be the simulator running into an issue here, I need to try further when the devices are back here. Also to get some Cordova running for test to see if this is also

Did you take a look at http://angular-translate.github.io/docs/#/guide/09_language-negotiation on mapping languages? Might help?!

Never found this until now. Will give this a try for the browsers again and check devices using Cordova when they are back to me.


Feature Request - Right click button to reposition Window in center of screen

For some reason my window is lost, I click on the button to refocus and it says it is focused but it is nowhere on my 2 monitors.
For this purpose, I think it would be useful if you could have a menu option -> Move Window To Center of Display
that could reposition the lost Window

You can try to enable the feature flag EnableContextMenuOnThumbnail in the appsettings.json - this will show the window's system context menu on the right button click to the thumbnail. This context menu is managed by Windows/application but usually contains the positioning commands like Minimize/Maximize/Restore, resize and move. It's standard Windows functionality, but it should help when the window lost on screen.


Cannot read property 'parentElement' of null

Go to https://single-spa.js.org and open browser console.
racial-equity-banner-bottom.js:42 Uncaught TypeError: Cannot read property 'parentElement' of null
    at createBanner (racial-equity-banner-bottom.js:42)
    at start (racial-equity-banner-bottom.js:21)
    at racial-equity-banner-bottom.js:67
    at racial-equity-banner-bottom.js:71

Thx for fixing this. Version 1.0.4 is published.


docs: fix tex formulas rendering for tutorials

Before submitting

[ ] Was this discussed/approved via a Github issue? (no need for typos and docs improvements)
[ ] Did you make sure to update the docs?
[ ] Did you write any new necessary tests?

What does this PR do?
This branch is the one that is pinned for docs.
We will need to update the submodule once this is merged into this branch
related to https://github.com/Lightning-AI/pytorch-lightning/issues/19633
The PR at the main branch which was failing to build:
https://github.com/Lightning-AI/tutorials/pull/316
PR review
Anyone in the community is free to review the PR once the tests have passed.
If we didn't discuss your PR in Github issues there's a high chance it will not be merged.
Did you have fun?
Make sure you had fun coding 🙃

Btw, if this PR is different than #316 please name it to match what it does =)

in fact, here is just generating ipython notebooks so if the rendering via sphinx is the target of this update it needs to live in the PL repo where these notebooks are inputs but the docs generation is happening there... sorry for any eventual confusion :rabbit:


disables internal telemetry of otel collector

By default, port 8888 is used by otel collector to publish its own internal telemetry. This is not needed for us.

Ref: https://opentelemetry.io/docs/collector/internal-telemetry/
GitHub Issue: https://github.com/open-telemetry/opentelemetry-collector/discussions/6547

I checked by restarting otel collector on our runners. It removes the listener on the 8888 port


Code workflow

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


[Issue]: Can't link to functions with vector types between HIP and VS projects

Problem Description
I'm using HIP 6.1.2 on Windows with Visual Studio 2019.
I have a HIP project (converted from CUDA) which creates a static library. The library contains the kernels and shallow functions to call them. I also have a normal executable Visual C++ project which calls the functions which runs the kernel. (It's actually more complex, but that's the gist of it.)
When the calling functions contain a vectory type, such as float2 or int3, linkage fails. It looks like these types are defined on one side as (for example) HIP_vector_type<float,2> and on the other side as union. I'm not sure where this comes from or how to deal with it.
Edit: Looking further into amd_hip_vector_types.h, it looks like both definitions come from there, but I'm not sure how to get one or the other.
Operating System
Windows 11 23H2
CPU
Ryzen 7435HS
GPU
Radeon 7600S
ROCm Version
ROCm 6.1.0
ROCm Component
HIP
Steps to Reproduce
No response
(Optional for Linux users) Output of /opt/rocm/bin/rocminfo --support
No response
Additional Information
Note that the ROCm version I selected is irrelevant. I installed HIP 6.1.2 in Windows.

Hi @ET3D-ET3D. Internal ticket has been created to investigate your issue. Thanks!

Hi @ET3D-ET3D, can you provide the error(s) you're running into, and some code to reproduce this if possible? There are some known issues with HIP vector types, but not sure if your issue matches these.

I wasn't able to easily reproduce it. I will play with it some more. It would be helpful to know how to select either of the two representations or what causes HIP to choose one or the other.

So far what I understand is that this is affected by __has_attribute being defined in clang but not in msvc (though again, I haven't managed to reproduce it in a simple sample yet). If I try to undef __has_attribute, it fails in math_fwd.h, because that assumes that a combination of clang and HIP means that HIP_vector_base exists, rather than checking on _has_attribute . ockl_image.h also assumes that float4::Native_vec exists without checking anything.

Usually the kernels are expected to be launched by HIP programs that are compiled by clang or hipcc.
How do you launch the kernels in a C++ program compiled by MSVC?

Each kernel has a caller function. These are compiled as part of the HIP project. Those functions are then called by the MSVC program. The linkage problem happens when these caller functions have vector arguments, as these are different in the HIP project and MSVC project.

It seems https://github.com/ROCm/clr/tree/amd-staging/hipamd/include/hip/amd_detail needs to be fixed to make the vector type mangling consistent across clang and MSVC. Similar issues also happen between clang and gcc.
Basically for clang float3 is defined as a specialization of template struct HIP_vector_type
template<typename T, unsigned int rank>
    struct HIP_vector_type {};
using float3 = HIP_vector_type<float, 3>;

whereas for MSVC float3 is defined as a union
typedef union {
  struct {
    float x;
    float y;
    float z;
  };
  float data[3];
} float3;

They have different mangling on Windows https://godbolt.org/z/hacGMovv6 https://godbolt.org/z/ehzM9dcEc
As a result, any functions with float3 etc as arguments will have different mangled names in objects generated by clang and MSVC, which causes them not callable across objects compiled by different compilers.
The fix is to make them have the same mangled name for clang, gcc and MSVC. Note using and typedef does not change the mangled name, so the real type has to be consistent. One possible fix might be to use clang's definition for all compilers, with minor adjustment for gcc and MSVC.

I think that the idea of using HIP_vector_type for all compilers is a good one.
Though I want to mention that it did conflict with my use of CUDA's helper_math.h (part of its sample code which I found helpful to use). HIP_vector_type defines some of the operators defined in that header, which I had to make __host__ only, rather than __host__ __device__. Which likely means that I'll have to use different definitions for the NVIDIA and AMD sides. This is not a problem with the union defs. Still, not a big deal, HIP_vector_type feels more expressive and more along the lines of how I personally tend to code things.


Show count of datasets on the project home page/sidebar nav

Thought while I was trying to find a dataset: It might be helpful to show the # of datasets on the project home page, along with number of experiments.
Requested by; Tracy Berman

Added dataset count to sidebar and updated components so that sidebar stays updated


Add error to JsValue conversion and example

This PR adds error conversion for reqwest::Error to JsValue so that consumers of the crate can use the ? operator to propagate reqwest errors.
The PR also adds an example usage of such an operator loosely based off of the example usage of fetch in the wasm-bindgen crate.

Any idea why the CI hasn’t passed yet?

Thanks so much!


baseline_reproduce

Hi,
Thanks for sharing your code.
It seems the baseline experiments(point_defend_cifar_10) code are not complete. Could you check and provide some help for searching in point mode?
Thanks,
Xiang

Hey,
Thanks for your interest on my project!  I am quite sure that I did my experiment using the current code. Could you provide more information about why you think the baseline experiment code is not complete?

Oh. I see, to run the baseline experiment, I need to generate some searching result patterns using the baseline methods before running this baseline experiments, and I did not include that part in this code. Sorry about that, I will upload that part later. Thanks for pointing it out.

Hi Xiang,
I just uploaded something I found helpful. I wish this could help you with your problem.
Best wishes,
Yukun

Hi Xiang,
I just uploaded something I found helpful. I wish this could help you with your problem.
Best wishes,
Yukun

It works well. Thank you for the help Yukun!


how to run the export.py script

We haven't updated the export.py from the original mmdet3d. We are working on ONNX export support.


Add Data Retention Policy option in UI

We should add Data Retention policy which will tell for how long the data will be  stored in the flaker companion app
We should give following options to the user to configure it instead of indefinitely storing the data

1 day
7 days
15 days
30 days

This issue will deal with only UI layer operation. i.e deal with showing this in preference screen and persist this value in this ticket


[Bug] Auto Mouse Layer Sticking

Describe the bug
This is an issue I have while using @drashna's Auto Mouse Layer that I use on my 4x6 Charybdis
My mouse layer gets stuck enabled when I follow the below steps

Activate mouse layer with trackball
Hold down accordion home row modifier (any one of them)
Press any of the following dedicated mouse keys (while mouse layer is still active) from below

bool is_mouse_record_user(uint16_t keycode, keyrecord_t* record) {
    switch(keycode) {
        case KC_WWW_BACK:
        case KC_WWW_FORWARD:
        case KC_BTN1:
        case KC_BTN2:
        case DRAGSCROLL_MODE_TOGGLE:
        case SNIPING_MODE_TOGGLE:
            return true;
        default:
            return false;
    }
    return  false;
}

This will then cause my mouse layer to get stuck
Information
My QMK:
https://github.com/aus10code/QMK-Keymap
This issue was originally discussed on the QMK Discord server.
https://discord.com/channels/440868230475677696/1082712746539352164/1082712746539352164
Do the keys involved use any of the following features?

[X] Achordion (from this repo)
[ ] Auto Shift
[ ] Combos
[ ] Key Overrides
[ ] Mod-tap or Layer-tap keys
[ ] Other custom userspace code:

Specifically, the issue is that accordion.c is (recursively) calling process_record after changing the layers, but hasn't updated the layer cache.

Thanks @aus10code for reporting this and @drashna for those details.
As a quick possible workaround, try bypassing Achordion while the mouse layer is on:
uint16_t achordion_timeout(uint16_t tap_hold_keycode) {
  if (IS_LAYER_ON(MOUSE)) {
    return 0;  // Bypass Achordion while mouse layer is on.
  }

  return 800;  // Otherwise use a timeout of 800 ms.
}

For a deeper fix, I don't know how Auto Mouse Layer or layer caching work and need help. Achordion itself does not use or manipulate the layer state. Granted, it does recursively call process_record(), which complicates things.
Achordion appears to work as intended with other kinds of layer keys. Could you help me understand what is happening differently with Auto Mouse Layer? I see from users/drashna/pointing
/readme.md that "the layer will automatically turn itself off after 650ms". I haven't found the code though that corresponds to that timer. Am I in the right place?
As a first point of troubleshooting, I suggest to confirm the Auto Mouse Layer timer is firing. I can imagine (from experience of debugging my own timers) that timer logic might get thrown off by the recursive process_record() calls or non-monotonic timestamps.
When the timer fires, I guess it calls layer_off(MOUSE). Should Achordion be doing something around its process_record() calls to ensure the layer cache is up to date? If it would help, I'm open to adding a callback to Achordion to customize what happens around these calls.

Thanks for the bypass solution, however I don't want to bypass Achordion!
After some digging I think I found where the 650ms is being set
pointing_device_auto_mouse.h - line 34
also this may help: Auto Mouse Layer ReadMe

The problem is actually not with the layer cache, but with the recursive call to process_record() sending duplicate events to any functions that are called before process_achordion() (which gets called from process_record_user()/process_record_kb().
https://github.com/qmk/qmk_firmware/blob/54634e92634f73a6d9111833adf58214cb4278c3/quantum/quantum.c#L261-L282
Notice that process_record_kb() gets called after process_auto_mouse(), therefore at the time process_achordion() gets called, process_auto_mouse() had already seen the event, and calling process_record() with the same event will cause a duplicate call to process_auto_mouse().  However, the auto mouse code uses a counter (auto_mouse_context.status.mouse_key_tracker) to track the state of various keys that should enable the auto mouse layer, therefore the extra call to process_auto_mouse() (which is done only on press, but not on release) corrupts that counter, so that it does not reach 0 when all auto mouse keys are released, and the auto mouse layer gets stuck.

@sigprof thanks a bunch for this excellent analysis! That dissects what is going on and makes the root cause clear.
Achordion recursively calls process_record() in a few ways. I believe all of them are symmetric in sending both duplicate press and release events, except this one is only on press. It's a bit long winded to explain why this call is made, but FTR here are the details:

Suppose a tap-hold key is down but has not yet been settled (from Achordion's point of view), and the current event is a press on another key "B". The tap-hold key then becomes settled as a tap or a hold according to achordion_chord(). To invoke the effect of this tap or hold, process_record() is recursively called with a saved keyrecord_t (and symmetric press and release events for this are sent).

It is possible the tap or hold action cause a layer change. The typical reason for this is an LT key is being held. I intend Achordion to interoperate with intercepting tap hold events in process_record_user(), so maybe the user has a custom handler that changes layers.

However, the current event for the press on key "B" is still associated with the keycode from before the layer change, and that may now be stale. To fix that, Achordion calls process_record() to reprocess the event with the new layer state, then returns false to block the original event with the stale keycode from further processing.

Concerning Auto Mouse Layer, exactly like @sigprof said, the problem is asymmetrically an additional press event is sent without an additional release event.

AFAICT recursively calling process_record() is the only way to change the keycode on an event from userspace code, but I'd love a different solution to doing that.
Possible solution: Achordion could handle the press and release of "B" symmetrically, in both cases calling process_record() on it and blocking the original events. This seems good in principle. However, Achordion's state logic is nontrivial as it is, and additionally tracking "B" to its release increases the number of edge case situations that may introduce their own problems. I'll have to think through the details.
Possible mitigation: The keycode for "B" is likely still up to date most of the time. Achordion could compare the layer state and resort to recursively calling process_record() only when it has changed. This is easy to do, I'll start with that.

“Late” layer switches are a real problem; the tap dance code does them too, and got a special piece of code inside process_record_quantum():
https://github.com/qmk/qmk_firmware/blob/54634e92634f73a6d9111833adf58214cb4278c3/quantum/quantum.c#L241-L247
But this solution is available only to the core code, and can't be used by something externally plugged into process_record_user().

Possible solution: Achordion could handle the press and release of "B" symmetrically, in both cases calling process_record() on it and blocking the original events.

Even this might not help if the layer state had actually changed, and the original invocation of process_auto_mouse() processed a different keycode.  Instead of the current “B1-press, B2-press, B2-release”, you would get “B1-press, B2-press, B2-release, B2-release” in process_auto_mouse(), so you would still have unbalanced B1-press and B2-release.
Properly fixing this may require actually plugging the feature into the core and making it run earlier, so that the issue with some other functions using wrong keycodes does not happen in the first place.

Mostly just thinking, but it might be useful to use the pre_process_record stuff as returning false there would prevent process_record from being called at all.

I'm currently experiencing this issue with the sticking auto mouse layer... is there a workaround available or any other progress?
Thank you!

For reference, I'm using this ... rather invasive hack:
https://github.com/drashna/qmk_firmware/commit/fd3337bb65badf009d5b5d871f2efb9f4146cdc8
Along with this:
https://github.com/drashna/qmk_userspace/commit/d98481ff2d03472efde9038b694966bf4740e2f2

drashna/qmk_firmware@fd3337b

Have you submitted a PR for that upstream?  I'd love to not have to carry any such patches :-)

Develop has the changes merged in, now.


Map widget - georeferences very difficult to see if small and polygon or custom shape

If I use the polygon tool to plot a georeference, all visualizing maps do not show the georeferences very well. For example, here:

There are five georeferenced collecting events visible within the screenshot, but only one shows up because it used the circle+uncertainty mapping tool. The others have polygons, and are only visible when you zoom in to those places.
ALL georeferences should have a similar icon to this for easy visualization:

Could be plotted from the calculated centroid. Once you zoom in, the polygon uncertainty then shows up. Whatever it is, it needs to be more visible. At first, I thought the filter was broken because none of my visualizations were showing up. This could be a really cool tool showing collecting events on a field trip or day or something, but it needs to look better.

related to #2070

@tmcelrath for other project i used a cluster marker, I dont sure if you mean something like this
https://leaflet.github.io/Leaflet.markercluster/example/marker-clustering-realworld.388.html

That would potentially work.


Not ending the scrobble

when playing, on lastfm shows that are scrobbling the music, but when the music ends, the music not appear on the lastfm.

Have a way to me help debug this? i don't know how to modifier the code and test

This sounds like a Last.FM issue, rather than an issue with this cog.

@vensauro this is happening when you play music with Red's audio cog, right?

@vensauro this is happening when you play music with Red's audio cog, right?

yes,  using the audio cog to play musics from yt/music.yt

This sounds like a Last.FM issue, rather than an issue with this cog.

maybe, but other scrobblers works well, like app scrobbler, or using the fm.bot with some discord bot that has suports

This sounds like a Last.FM issue, rather than an issue with this cog.

maybe, but other scrobblers works well, like app scrobbler, or using the fm.bot with some discord bot that has suports

I am aware of this issue and I haven't found a way to fix it yet without messing up a bunch of other stuff. I'll look into it a little more soon.

@vensauro I am closing this as it should be fixed in the latest release, but feel free to reopen it if you're still running into this issue.


[iterator] add integer interator

Codecov Report

Merging #12 (b2d0e80) into master (cf5d4ce) will increase coverage by 1.40%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master      #12      +/-   ##
==========================================
+ Coverage   69.19%   70.59%   +1.40%
==========================================
  Files          21       20       -1
  Lines         805      789      -16
==========================================
  Hits          557      557
+ Misses        243      227      -16
  Partials        5        5

Continue to review full report at Codecov.

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


IoT Data: delta calculation when desired state adds a new key

Hello, thank you very much for working on the IoT Data and shadow emulation. Really appreciate that you are fixing & improving things in this area.
After updating to 5.0.23, I noticed some of my tests failing, I assume due to #8342. On closer inspection, I guess the behaviour wasn't quite correct before either, but fails more loudly now. :) Basically, delta is not emitted correctly when a key is present in desired and absent in reported.
Test script:
import json
import os

import boto3
import moto

os.environ.pop('AWS_PROFILE', None)
os.environ['AWS_ACCESS_KEY_ID'] = 'testing'
os.environ['AWS_SECRET_ACCESS_KEY'] = 'testing'
os.environ['AWS_SESSION_TOKEN'] = 'testing'
os.environ['AWS_SECURITY_TOKEN'] = 'testing'
os.environ['AWS_DEFAULT_REGION'] = 'ca-central-1'

with moto.mock_aws():
    session = boto3.Session()
    iot = session.client('iot')
    iot_data = session.client('iot-data')

    thing_name = 'test'

    iot.create_thing(thingName=thing_name)

    payload = {
        'state': {
            'desired': {
                'new_key': True,
                'existing_key': True
            },
            'reported': {
                'existing_key': True
            }
        }
    }

    iot_data.update_thing_shadow(thingName=thing_name, payload=json.dumps(payload))

    response = iot_data.get_thing_shadow(thingName=thing_name)
    state = json.load(response['payload'])['state']

    print(json.dumps(state, indent=2))

Expected output:
{
  "desired": {
    "new_key": true
  },
  "reported": {
    "existing_key": true
  },
  "delta": {
    "new_key": true
  }
}

Output with 5.0.21 (missing delta):
{
  "desired": {
    "new_key": true
  },
  "reported": {
    "existing_key": true
  }
}

Output with 5.0.22 and 5.0.23:
Traceback (most recent call last):
  File "test.py", line 37, in <module>
    response = iot_data.get_thing_shadow(thingName=thing_name)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[...]
TypeError: keys must be str, int, float, bool or None, not Symbol

In terms of your test suite, I guess the test cases might be something like this (completely untested):
        (
            {"desired": {"enabled": True}},
            {"desired": {"enabled": True}, "delta": {"enabled": True}},
            {"reported": {}},
            {"desired": {"enabled": True}, "delta": {"enabled": True}}
        ),
        (
            {"desired": {"enabled": True}},
            {"desired": {"enabled": True}, "delta": {"enabled": True}},
            {"reported": {"online": True}},
            {"desired": {"enabled": True}, "reported": {"online": True}, "delta": {"enabled": True}}
        )

Thank you!

Really appreciate that you are fixing & improving things in this area.

Appreciate the kind words @rtandy!  Although I'd argue that introducing TypeError's isn't quite an improvement.. :slightly_smiling_face:
The examples that you've provided pass against AWS, so I've added them to our test and opened a PR to simplify the calculation. This can actually be done without the jsondiff dependency, so at least it doesn't blow up anymore, even if we're still missing any edge cases.


first pass on allowing keys to be templated

The implementation is done but I am thinking we want to have some discussions on some of the implementation decisions before we push this PR through. I made the PR so that we can track some fo the conversations.

not too hot about adding specialized instruction for setting map key. thinking a bit more about this, may be an alternative impl could be turning map item into 2 nodes: map item key and map item value. not sure about the impact, but i think it might be interesting...

That's an interesting idea. It will unify the evaluation for nodes but will probably have a larger cascading impact throughout the code.
I am on the fence though on whether or not it is worth the effort. if a full blown templating of keys is in the picture then sure let's do it (something like what was discussed here), but if it will end up only writing a string value (which I believe will be the primary use case), then the debt it will add to the code may be more than the value we get out of it.

the PR is updated based on the conversation with @cppforlife . we decided to remove an instruction for MapItem.Key and do the casting when setting the value in the evaluation context.

oh huh pushed the first fix too soon. will address the other comments later today.


View all members

Hello,
Thank you for this plugin, it looks very good :)
Is it possible to see all the team activity? (not using the filter at all?)
Thank you for the info

I still want this extension to work on larger accounts with lots of users and lots of data without DOSing the account or triggering throttling of the user running the extension. I could try out allowing filtering by team but I think the size limit on a team is very high. Allowing filtering by multiple users with a cap or allowing filtering by teams as long as they aren't too large might work but that would need to be done without adding too much complexity to the ui.


"in" operation on resp.cookies should not raise CookieConflictError

Hosts which have the same cookie define for multiple domains should not raise
"CookieConflictError: There are multiple cookies with name,"  when performing "in"
It should short cut and return True immediately when found.

So the problem here is that the default implementation of collections.Mapping.__contains__ calls in to __getitem__, which for the RequestsCookieJar requires that there be no duplicate. In this instance, we probably get the most bang for our buck by just overriding __contains__ to call the parent implementation, and then catch CookieConflictError and return True in that instance.
I'm marking this as contributor friendly because the fix is fairly easy, and it'd be a good one for someone to pick up as a first open source change.

I've been using requests for a while and thinking I'd contribute, so I might take a shot at this.

@davidsoncasey Awesome!

I'd like to give this one a go if that's OK.
Cheers.


code fix for hnews

Description
earlier code was attaching duplicate comments for story with deleted comments, this will fix the the issue.
Attach Screenshot

Note 2 code reviewer approval needed. Approach in twitter group & discord channel.

Seems good. Can be merged