Cannot obtain natural images when using mutiple GPUs

Thanks for releasing the code of this excellent work.
I meet some problems while sampling from the pre-trained model by running the provided example commands.
The command and its corresponding output is as follows
python main.py --config cifar10.yml --model Diffusion --exp cifar10-orig-fid --image_folder samples-cifar10-and-t1000-long-new --doc cifar10 --sample --fid --timesteps 1000 --eta 0 --ni --method anderson --use_pretrained

Could you give any advice to solve the problem？
Thank you!

python main.py --config church.yml --model Diffusion --exp church-orig-fid --image_folder time-church-and-t25 --doc church --sample --fid --timesteps 25 --eta 0 --ni --method anderson --use_pretrained

Hello, Thank you for your interest in our work. I just cloned a fresh copy of this repository and was able to sample images.
Few examples of generated images for LSUN -Churches generated with the following command:
 python main.py --config church.yml --model Diffusion --exp church-orig-fid --image_folder time-church-and-t25 --doc church --sample --fid --timesteps 25 --eta 0 --ni --method anderson --use_pretrained

Few examples of generated images for CIFAR-10:
python main.py --config cifar10.yml --model Diffusion --exp cifar10-orig-fid --image_folder samples-cifar10-and-t1000-long-new --doc cifar10 --sample --fid --timesteps 100 --eta 0 --ni --method anderson --use_pretrained --skip_type quad

I am not very sure what could be going wrong if you haven't modified the existing codebase. Could you please verify the following?

Are you able to generate samples with simple DDIM sampler ?
The command would be python main.py --config cifar10.yml --model Diffusion --exp cifar10-orig-fid --image_folder fid-cifar10-seq-t1000 --doc cifar10 --sample --fid --timesteps 1000 --eta 0 --ni --method simple-seq --use_pretrained --skip_type quad

Ensure that you are using  --use_pretrained as this would ensure that the checkpoint is getting loaded correctly.

Are you using the same config file as in the repository?

Also, if you are using newer versions of PyTorch, you might run into a Runtime Error in Anderson solver as PyTorch has deprecated torch.solve in favor of torch.linalg.solve.
In that case, the call will look slightly different:
alpha = torch.linalg.solve(H[:,:n_+1,:n_+1], y[:,:n_+1])[:, 1:n_+1, 0]
instead of
alpha = torch.solve(y[:,:n_+1], H[:,:n_+1,:n_+1])[0][:, 1:n_+1, 0]
I will push this update for newer versions of PyTorch. Let me know if the issue still persists.

Thanks for your prompt reply!
I find I can get the correct results when only using one GPU.
While using multiple GPUs, the bug occurs. The generated result when using two GPUs is as follows (it seems better than using 3 GPUs as I previously updated)

I am currently unable to replicate this bug. Following are the generated images when I am using multiple GPUs. Is the number of GPUs the only quantity that is changed?
Results for sampling with multiple GPUs (with same commands listed above)- LSUN-Church:
2 GPUs

3 GPUs

4 GPUs

Results for sampling with multiple GPUs - CIFAR10:
2 GPUs:

3 GPUs

4 GPUs

I will look deeper into the code and maybe I can solve the problem. I will update the info if I make some progress.
Thanks for your reply！

Just in case it is relevant, I tested this on Nvidia GTX 1080 Ti with CUDA version 11.7. Please feel free to email me if the issue persists. Thanks!


Drop Support for Node v4

According to the Node.js LTS schedule Node v4's maintenance period ended March 31st, 2018. We should be safe to remove the checks from the build process.

See #94


How to run this Sentieon DNAseq in GCP

HI @DonFreed
I tried this pipeline https://cloud.google.com/life-sciences/docs/tutorials/sentieon from my local to GCP . It works well. But  I want to run this from GCP .  Can you please guide me on this?
Thanks!
Rokshan

Hi Rokshan,
I'm glad you are having a good experience with the pipeline!
When you launch the pipeline from your local machine, most of the computation is actually run on the GCP. After starting the job on your local machine you can track the launched job from the Life Sciences and Compute Engine dashboards.
-Don

@DonFreed I want to run it from GCP , e.g GKE or data fusion . Is it possible?

This repository runs the Sentieon pipelines using the GCP's Life Sciences API.
You can launch these Life Sciences pipelines from other GCP offerings (such as GCE or GKE). For example, it is possible to launch the pipeline from a standard virtual machine running on the Google Compute Engine (GCE). Just follow Google's documentation to create and start a small virtual machine, ssh into the new instance and then follow the Sentieon tutorial to setup the instance and launch the pipeline(s). The pipeline will launch from the GCE instance but the computation will be handled by the Life Sciences API.
You could also run Sentieon DNAseq outside of the Life Sciences API. I'm not too familiar with data fusion, but it is possible to run the Sentieon DNAseq software on top of other GCP offerings (such as GKE). Please feel free to send us a message on our support page if you want to run the Sentieon software on the Google Cloud Platform outside of the Life Sciences API.

@DonFreed  Thanks for the information. I will try to deploy it in


find path enters an infinite loop.

Hi,
My test input as bellow,

float start[3] = { -22.636648178101, 12.46023273468, -123.88012695313 };
float end[3] = { -12.93, 12.08, -110.27 };
float speed = 0.77999997138978;

And the target test navmesh binary as bellow,

all_tiles_navmesh.zip
If i am trying find a smooth path use these data, i will enter an infinite loop from a iteration. From smooth_path_count_ = 17, the loop keeps give me bad point (-14.4847, 12.4086, -113.422).

Is there any hints for me?

Thanks

same problem

I have been unable to get your navmesh file to load correct, it seems like it is corrupt in some way. When loading it fails to load any tiles because all tile-refs are 0.

I can also confirm I had this several times, very rare though. It happens for me when I set the additional HScale value of the pathfind algorightm too high.  I was unable to completely fix it on my end, added a hacky failsafe, but afaik it happens because the node weights are using not only the 'already traveled distance' as costs but in addition such a HScale value. This kinda made the pathfinding rotate between a few nodes until you run out of available nodes...

I have the same issue, with detour entering an infinite loop in getPathToNode() looping through nodes with circular reference (A -> B -> C -> A) https://github.com/recastnavigation/recastnavigation/blob/master/Detour/Source/DetourNavMeshQuery.cpp#L1212

dtNavMeshQuery::getPathToNode (this=0x7ffefeeebce0, endNode=0x7ffefe5688a0, path=0x7ffefdbe1810, pathCount=0x7fff029fae10, maxPath=71) at /dep/recastnavigation/Detour/Source/DetourNavMeshQuery.cpp:1212
dtNavMeshQuery::findPath (this=0x7ffefeeebce0, startRef=13510831094374714, endRef=13510831094374726, startPos=0x7fff029fae14, endPos=0x7fff029fb3f0, filter=0x7ffefdbe1ac0, path=0x7ffefdbe1810, pathCount=0x7fff029fae10, maxPath=71) at /dep/recastnavigation/Detour/Source/DetourNavMeshQuery.cpp:1193

Some guard check should be added, either max number of iterations, a hashset checking for pidx or some check in the m_nodePool so that there is no circular reference.
I will try to setup a case in recastdemo.

Are the recast team able to reproduce the infinite loop or at least identify the degenerated triangle generation case?
Because the actual workaround is not really enough as the polygon at those places looks abnormally strange and so the path generated.

I was able to identify the issue in my project:
Line https://github.com/recastnavigation/recastnavigation/blob/master/Recast/Source/RecastRasterization.cpp#L133 gives priority to area types with higher id, making ground with very shallow water be handled as water.
This is how area types are defined:
NAV_EMPTY   = 0x00,
NAV_GROUND  = 0x01,
NAV_MAGMA   = 0x02,
NAV_SLIME   = 0x04,
NAV_WATER   = 0x08,

In a particular region we have terrain data from 2 different sources, one has ground and one has liquid. The way the overlap made recast mark some parts as ground and some part as liquid, creating a lot of small polys

If I change the way the flags are prioritized, making ground win against water, I get a clean result.

This is also why I couldn't reproduce the issue in RecastDemo as the .obj file doesn't have any area flag data.
This issue wasn't spotted before it didn't cause any issue as noticeable as the recent infinite loop.

I think it is very possible that one voxel wide ideas inside another area collapses into a degenerate polygon. Should be avoided, but sometimes tricky.
These sliver areas tend to create heaps of other problems too, even if well behaving with triangulation. Like weird paths because very uneven tesselation.
Some of the degenerate problems are caused by contour simplification. Especially at the tip of an area. One solution would be to disallow two turns in same direction. So a straight segment would need to be staircase like.
I once experimented using filtering to solve these issues and it works some times too. There's area median filter to try out.

Adding rcMedianFilterWalkableArea() gave some interesting results (but ofc it's not a panacea)
Code without rcMedianFilterWalkableArea():

Code with 1 rcMedianFilterWalkableArea() call (after rcErodeWalkableArea(), before rcBuildDistanceField() and rcBuildRegions())

Code with 2 rcMedianFilterWalkableArea() (because why not :) )

Thanks for the tip 👍  now just some tries/tuning to go :)

@jakobbotsch did you have any idea about how to deal with dtClosestHeightPointTriangle() having denom = 0 ?
In that case dtClosestHeightPointTriangle() will return true but assign nan(ind) to "h". Should "h" be checked for std::isfinite() at https://github.com/recastnavigation/recastnavigation/commit/3a619d773deb7e3a15ee215217c825995fe71312#diff-bfede56e0b8a23a1d49e7ce910195ee6R709 ?

No, dtClosestHeightPointTriangle should change to handle degenerate triangles.
My previous idea was to interpolate along the line segments in this case, but there can be multiple choices of line segments, so that does not really make sense. It should maybe just return false. @memononen what do you think?

dtNavMesh::closestPointOnPoly should always return a value of the poly ID is valid. So it definitely should deal with degenerate triangles, but dtClosestHeightPointTriangle might not need to.
The epsilon is there because the closest might not be over any detail triangle because of floating point accuracy. The floating point accuracy starts to be an issues when coordinates are > 1000. The problem should only happen at the triangles at polygon edges, but I have vague memory of having problems within the poly too.
Potential solutions:

go over all detail triangle edges, if no hit were found using  dtClosestHeightPointTriangle
take max (or min) height of faces and edges (in which case remove the epsilon from dtClosestHeightPointTriangle.

Pt 2 could be something like this:
bool dtClosestHeightPointSeg(const float* pt, const float* p, const float* q, float size, float& h)
{
	float t;
	float d = dtDistancePtSegSqr2D(pt, p, q, t);
	if (d > size*size)
		return false;
	h = p[1]+(q[1]-p[1])*t;
	return true;
}

...

float edgeSize = walkableRadius * 0.1f;  // Size of the edge
float maxh = -FLT_MAX;
float h;

if (dtClosestHeightPointTriangle(closest, v[0], v[1], v[2], h))
	maxh = dtMax(maxh, h);
if (dtClosestHeightPointSeg(closest, v[0], v[1], edgeSize, h))
	maxh = dtMax(maxh, h);
if (dtClosestHeightPointSeg(closest, v[1], v[2], edgeSize, h))
	maxh = dtMax(maxh, h);
if (dtClosestHeightPointSeg(closest, v[2], v[0], edgeSize, h))
	maxh = dtMax(maxh, h);

if (maxh > -FLT_MAX)
{
	closest[1] = h;
	break;
}

Pt 1 could traverse all edges, pick nearest edges first and then calculate height. That way you would not need edges size, which makes things nicer.
Bonus points for figuring out how to traverse the detail mesh edges only once :)

Number 2 is essentially what I wanted to do initially, but it can be done inside dtClosestHeightPointTriangle (then we don't need to make changes in multiple places).
The problem we have right now is that dtClosestHeightPointTriangle returns true for degenerate triangles and assigns a height of NaN. But I think making it just return false in this case should be ok -- if there is a degenerate triangle in a poly then the poly should have a non-degenerate triangle where the point will succeed (because of how they are triangulated).

IIRC there's only one call to dtClosestHeightPointTriangle so the change is very contained anyway.
I'm suggesting to following:

remove epsilon tricks and check for zero denom in dtClosestHeightPointTriangle:

bool dtClosestHeightPointTriangle(const float* p, const float* a, const float* b, const float* c, float& h)
{
	const float EPS = 1e-6f;
	float v0[3], v1[3], v2[3];

	dtVsub(v0, c,a);
	dtVsub(v1, b,a);
	dtVsub(v2, p,a);

	// Compute scaled barycentric coordinates
	float denom = v0[0] * v1[2] - v0[2] * v1[0];
	if (fabsf(denom) < EPS)
		return false;

	float u = v1[2] * v2[0] - v1[0] * v2[2];
	float v = v0[0] * v2[2] - v0[2] * v2[0];

	if (denom < 0) {
		denom = -denom;
		u = -u;
		v = -v;
	}

	// If point lies inside the triangle, return interpolated y-coord.
	if (u >= 0.0f && v >= 0.0f && (u+v) <= denom) {
		h = a[1] + (v0[1]*u + v1[1]*v) / denom;
		return true;
	}

	return false;
}

track nearest edge height and use it in case raycasts fail in dtNavMeshQuery::closestPointOnPoly()

float dtLerp(float a, float b, float t)
{
	return a + (b - a) * t;
}

...

	// Find height at the location.
	float dmin = FLT_MAX, d, t;
	float safeHeight = closest[1];

	for (int j = 0; j < pd->triCount; ++j)
	{
		const unsigned char* t = &tile->detailTris[(pd->triBase+j)*4];
		const float* v[3];
		for (int k = 0; k < 3; ++k)
		{
			if (t[k] < poly->vertCount)
				v[k] = &tile->verts[poly->verts[t[k]]*3];
			else
				v[k] = &tile->detailVerts[(pd->vertBase+(t[k]-poly->vertCount))*3];
		}
		float h;
		if (dtClosestHeightPointTriangle(closest, v[0], v[1], v[2], h))
		{
			closest[1] = h;
			break;
		}

		// Track nearest extrapolated height in case we fail raycast.
		d = dtDistancePtSegSqr2D(closest, v[0], v[1], t);
		if (d < dmin)
		{
			dmin = d;
			safeHeight = dtLerp(v[0][1], v[1][1], t);
		}
		d = dtDistancePtSegSqr2D(closest, v[1], v[2], t);
		if (d < dmin)
		{
			dmin = d;
			safeHeight = dtLerp(v[1][1], v[2][1], t);
		}
		d = dtDistancePtSegSqr2D(closest, v[2], v[0], t);
		if (d < dmin)
		{
			dmin = d;
			safeHeight = dtLerp(v[2][1], v[0][1], t);
		}
	}

	// We failed to recast any of the detail triangles, use extrapolated value of nearest edge instead.
	closest[1] = safeHeight;
...

And one more thing:

as long as the polyref is valid, dtNavMeshQuery::closestPointOnPoly() should return "nearest" height to the polygon. I think you could fail also with bad input if pos is not finite.
detail mesh can have all kinds of nasty triangles, the triangulation algorithm is not very robust

Thank you, that is pretty clear. What I'm wondering is whether it is possible for an internal point in the polygons to fail all the dtClosestHeightPointTriangle tests? Internal as in a point that was not interpolated along the (non-detail) edges of the polygon.
What I mean is: can we replace this part with just finding the nearest edge for all detail triangles, and then keep the loop the same when dtDistancePtPolyEdgesSqr succeeds?

Also I am a little perplexed at what the difference between closestPointOnPoly and getPolyHeight is supposed to be. I would have thought the first was 3D, but it does not seem to be the case with how dtClosestHeightPointTriangle is implemented?

@jakobbotsch
I think I have seen the raycast (that is, dtClosestHeightPointTriangle) fail on internal edges on far away coordinates. In addition I think it is possible to have T-junction like cases if there is a degenerate triangle.
I think closestPointOnPoly initially used the nav polygons (not detail mesh), and 3D distance (not raycast down). And getPolyHeight was essentially raycast down to detail mesh. Little by little, one issue at time, they converged into essentially the same thing.

I believe this was fixed by #381.


Fix a panic when sorting geo fields represented by strings

This issue fixes #3927 by retrieving and parsing the original string values into f64s. I also added a test to ensure we don't break it in a future version.

Thank you for the review 🚴
bors merge

Nice


Issues with different time zones

Currently if you significantly change time back while the app is running, time ago method returns wrong value like you're doing something in future time. :) Is there any way to avoid such behavior?

+1


TSC minutes

Signed-off-by: Nick Avramoussis<EMAIL_ADDRESS>

Does that also disable the merge check?  (If so, that seems like a Mack truck-sized hole in the merge check mechanism.)
Do Circle and Azure have some equivalent of a .gitignore file to which we could add the tsc/ directory and the .md files?

Does that also disable the merge check? (If so, that seems like a Mack truck-sized hole in the merge check mechanism.)

I'm not sure, I'd have to experiment with it.

Do Circle and Azure have some equivalent of a .gitignore file to which we could add the tsc/ directory and the .md files?

Azure does have the concept of path filters, which I think we can make use of:
https://docs.microsoft.com/en-us/azure/devops/pipelines/build/triggers?view=azure-devops&tabs=yaml#paths
Let's attempt to complete the transition to Azure then we can talk about stuff like this. I agree this is a nice feature to have.

Sure, it can wait until we make the transition.

Stopping unnecessary CI build would be good to solve for sure. I agree with @danrbailey that the notes will most likely be more visible in the repo but it would be nice to have them on the website too. My main concern with them here is that I don't think people will generally want them checked out for development. I'm not really a fan of git sub modules for development, but perhaps the tsc folder is a good use for them.

I prefer them in the repo.  Thought I do agree the CI check could best be skipped.


Feature Request: Add support for using uuids as primary keys.

I just discovered Orator last night.  I'm a Rubyist that needs to mingle Python3 and Ruby in a project with a shared PostgreSQL database hosted locally.  I use uuids as primary keys in the database.  I haven't found a way to do this, so I am opening a feature request.  Also, I haven't been able to find a discussion forum for Orator.  Does one exist yet?

It looks like addition of this type would need to be included in the body of the following method:
orator.dbal.PostgresSchemaManager._get_portable_table_column_definition() which is defined in orator/dbal/postgres_schema_manager.py.

There is a Slack for Orator. So if you want to to be added to it drop me a DM on twitter with your email address and I will gladly do it.
Regarding UUIDs in Orator, if you only need to read and write to the database, you can easily do it since UUIDs can be inserted and retrieved as strings.
Now, if you want to create a column with the UUID type from Orator this is not currently supported but I will see if I can add it.

Thank you.   I was looking for binary UUID support because I think it would make indexing on UUIDs more efficient when being used as a primary key for a table.  Looking at the source, it doesn’t seem like this would be a trivial feature to add, so I completely understand if it gets a low priority.  Thank you for your consideration!
Byron

On Dec 17, 2016, at 9:22 PM, Sébastien Eustace<EMAIL_ADDRESS>wrote:
There is a Slack for Orator. So if you want to to be added to it drop me a DM on twitter https://twitter.com/SDisPater with your email address and I will gladly do it.
Regarding UUIDs in Orator, if you only need to read and write to the database, you can easily do it since UUIDs can be inserted and retrieved as strings.
Now, if you want to create a column with the UUID type from Orator this is not currently supported but I will see if I can add it.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub https://github.com/sdispater/orator/issues/127#issuecomment-267802643, or mute the thread https://github.com/notifications/unsubscribe-auth/AA-opMwd1dq_MqbR_Ch0zJ2koi_vwBb_ks5rJLUOgaJpZM4LP9oW.

I am not sure I understand. What's the type of your column in PostgreSQL?

The column type for the primary key is “uuid" with modifiers “not null default uuid_generate_v4()"
Here is an example:

On Dec 17, 2016, at 9:52 PM, Sébastien Eustace<EMAIL_ADDRESS>wrote:
I am not sure I understand. What's the type of your column in PostgreSQL?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub https://github.com/sdispater/orator/issues/127#issuecomment-267803462, or mute the thread https://github.com/notifications/unsubscribe-auth/AA-opE6sBQ_SuAvUlIyxI0LzyCxPqxBLks5rJLwfgaJpZM4LP9oW.

So, yes, you can pass a string to Orator as your ID and it will automatically be converted to a uuid. If you have a binary uuid column you can also pass a string and it should work.

Maybe I am missing something, but the major advantage of uuid support (coming from Ruby/ActiveRecord) is that the database will generate its own uuid values automatically.  If I used Orator with an auto-incrementing big integer as the primary key, it does not randomly generate a new uuid.  That’s why I’m thinking that adding this feature would not be trivial.  If I understand the situation correctly, it is currently possible to read and update records from tables that use uuids as the primary key, but creating a primary key for uuids would require using the big_integer type when defining the column type for the id column.  It would also make sense to define a subclass of Model that overrides init() to generate a uuid upon initialization
BTW, thank you for taking the initiative to create an ORM package that makes it possible for a Rubyist ActiveRecord/Rails user to share an ORM database with a Python3 application/server.  I really appreciate it.  I’m still learning to use your package.

On Dec 18, 2016, at 11:50 AM, Sébastien Eustace<EMAIL_ADDRESS>wrote:
So, yes, you can pass a string to Orator as your ID and it will automatically be converted to a uuid. If you have a binary uuid column you can also pass a string and it should work.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub https://github.com/sdispater/orator/issues/127#issuecomment-267838671, or mute the thread https://github.com/notifications/unsubscribe-auth/AA-opGeG9ESI2lzOmxzGkv3V2nCqCXg5ks5rJYB5gaJpZM4LP9oW.

Okay. I understand now, sorry for being so slow. So, you are right it's not possible to create a uuid type from the schema builder without making it database backend dependent.
I will look into it but, as you said, it will not be trivial.
And, thanks for the kind words, I really appreciate it 😃

+1

I know it's a rough start but for use in my internal projects I implemented postgres uuid and overrode default to detect a gen_random_uuid() and not encapsulate it as a string. You can see the branch here: https://github.com/inventionlabsSydney/orator/tree/feature/PostgresGrammarSupportUuid
I'd like @sdispater if you could provide me a list of things to do in order that we could merge this support into the actual project.
I completely don't think the override I have currently in place is a long term solution...

👍


Close specific tab of a site

I have a website that opens a secondary page after selecting a specific button. The point is, I would like to close this page through rpa without needing to use keyboard commands. Something like r.close(url=address), I think it's more assertive. Thanks

Hi @Fugimura, I'm afraid that there isn't a direct function to allow closure of a tab, but there is a frame() function to explicitly interact with a tab and the dom() function which you can combine to issue tab closure without using keyboard().
See this example:
r.init()
r.url('https://tebel.org')
r.click('About')
r.wait()

# specify a unique part of the URL that you want to interact with, so rpa package knows which tab you want
r.popup('about_tebel')

# use javascript close() command and dom() function to send custom javascript code to browser to close tab
r.dom('close()')


BUILDING.md: add osusergo for static build

Go 1.11 includes a fix to os/user to be working in a static binary
(fixing https://github.com/golang/go/issues/23265). The fix requires
osusergo build tag to be set for static binaries, which is what
this commit documents.

Codecov Report

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

@@           Coverage Diff           @@
##           master    #2476   +/-   ##
=======================================
  Coverage   44.73%   44.73%
=======================================
  Files          93       93
  Lines        9490     9490
=======================================
  Hits         4245     4245
  Misses       4562     4562
  Partials      683      683

Flag
Coverage Δ

#linux
48.93% <ø> (ø)
:arrow_up:

#windows
41.03% <ø> (ø)
:arrow_up:

Continue to review full report at Codecov.

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

Also related: https://github.com/moby/moby/pull/37500.

LGTM

LGTM


DO NOT MERGE Fix #2862: Disallow @JSExport on non-members

Refer to this link for build results (access rights to CI server needed):
https://scala-webapps.epfl.ch/jenkins/job/scalajs-pr/3869/
https://scala-webapps.epfl.ch/jenkins/job/scalajs-matrix-build/5109/
Test FAILed.

Refer to this link for build results (access rights to CI server needed):
https://scala-webapps.epfl.ch/jenkins/job/scalajs-pr/3871/
https://scala-webapps.epfl.ch/jenkins/job/scalajs-matrix-build/5111/
Test FAILed.

Rebased and updated.

Rebased

Refer to this link for build results (access rights to CI server needed):
https://scala-webapps.epfl.ch/jenkins/job/scalajs-pr/3875/
https://scala-webapps.epfl.ch/jenkins/job/scalajs-matrix-build/5116/
Test FAILed.

Refer to this link for build results (access rights to CI server needed):
https://scala-webapps.epfl.ch/jenkins/job/scalajs-pr/3878/
https://scala-webapps.epfl.ch/jenkins/job/scalajs-matrix-build/5119/
Test FAILed.

Updated. I think I found a reasonable solution with the error messages.

Refer to this link for build results (access rights to CI server needed):
https://scala-webapps.epfl.ch/jenkins/job/scalajs-pr/3886/
https://scala-webapps.epfl.ch/jenkins/job/scalajs-matrix-build/5128/
Test FAILed.

 I admit I did this a bit in a hurry to finish it :S

Refer to this link for build results (access rights to CI server needed):
https://scala-webapps.epfl.ch/jenkins/job/scalajs-pr/3889/
https://scala-webapps.epfl.ch/jenkins/job/scalajs-matrix-build/5131/
Test PASSed.

🎉


New logo for Hammer

Hello, i am a graphic designer. I wanted to contribute to Hammer and i designed a logo for Hammer. If you like it, i can send a pr. We can also organize a logo together.

e.g. readmefile view

If you like it, which one do you prefer?

Looks good!
Could we see a variation in purple?

Of course, here you are;

Nice, I think the lower-right is the best. Really great work!

Okay, I think you are choose  option 2.   ? :)

Yes, 2 :)

If you have another request, you can say. Please check it :)
https://github.com/ExHammer/hammer/pull/26

Merged, thanks!


Remove the temporary hack to purge legacy PyPI

@dstufft do we need to wait for legacy to be shut down? actually thinking about it... are these purges even working right now?

They aren’t working right now unless we’ve changed the legacy domain in the env vars to the new legacy url.
Sent from my iPhone

On Apr 17, 2018, at 1:06 PM, Ernest W. Durbin III<EMAIL_ADDRESS>wrote:
@dstufft do we need to wait for legacy to be shut down? actually thinking about it... are these purges even working right now?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or mute the thread.


[doc] add comments to the header file - [merged]

In GitLab by @perarnau on Mar 28, 2018, 18:14
Merges header-doc -> master
Note that several comments are still missing, specifically for the
area's acquire()/release()/available() routines, the function of which
is not clear to me.
Related to #1.

In GitLab by @perarnau on Mar 29, 2018, 10:22
merged
By Swann Perarnau on 2018-03-29T15:22:49 (imported from GitLab project)

In GitLab by @perarnau on Mar 29, 2018, 10:22
added 5 commits

c32fbf4b...1e1f1ced - 4 commits from branch master
62df1333 - [doc] add comments to the header file

Compare with previous version
By Swann Perarnau on 2018-03-29T15:22:29 (imported from GitLab project)

In GitLab by @perarnau on Mar 29, 2018, 10:24
changed the description
By Swann Perarnau on 2018-03-29T15:24:19 (imported from GitLab project)

In GitLab by @perarnau on Mar 29, 2018, 10:21
Couple of comments, from reading the new doc:

arena_init, with generic type: sounds wrong that we ask the user to provide a pointer to the data element and not the entire arena...
area_linux inner objects are not initialized like the rest of the API, maybe we should change it
tiling_get should probably just return the tileid. The variadic version is leftover from a previous version of the code.
top-level dma/scratch API doesn't need variadic arguments.
the amount of variadic functions would make any user code difficult to write, we should think about something easier to deal with...

By Swann Perarnau on 2018-03-29T15:21:10 (imported from GitLab project)


I rewrote it entirely.

Thanks for your quick reply. I have rewritten the entire code to be small as possible. Don't Worry it's still easy and simple. The input handling is separated into another script. The controller is the main script. the positioner script is responsible for positioning the camera when the player is crouching.

I am not looking for a full rewrite, it isn't what I asked for in response to your issue, and not what the point of this repo is. Simple single script and prefab + unity input system generated code is the point, simple as possible for learning and hacking on for folks. I also think it's bad form to completely remove / rewrite all the code in a repo / by a maintainer. It seems like you have your own implementation that would be better suited to its own repo here. Best of luck if you decide to do that.

Okay. I will think of that.


Re-upload build artifacts

At the moment the artifact upload is disabled in the workflow here:
https://github.com/bjorn3/rustc_codegen_cranelift/blob/5f5a2f262f1d73355c8d782ec65f3774db728a4d/.github/workflows/main.yml#L155-L162
This might be a leftover of the Windows build.
Any chance we can re-enable the upload and trigger a new build? This would greatly help newcomers get started with cranelift as they wouldn't have to compile it on their machines first.

Artifact upload is enabled for linux and macos. Windows support is currently subpar, but I can try enabling artifact uploads for windows.

Thanks. On that note, would it be feasible to use Github releases for the artifacts in the future? Asking because the binaries from CI expire after a while and can then no longer be downloaded. See here for example, which is the last successful build from a month ago. (Artifacts don't get attached to failing builds.)

I enabled artifact uploads. I had to disable compression as xzip isn't supported by windows tar and bzip2 hangs. I hope to finish https://github.com/rust-lang/rust/pull/81746 soon. This will cause cg_clif to be distributed with rustup, so rustup component add rustc_codegen_cranelift-preview will be enough to install it. Somewhat ironically it is currently stuck on the windows installer failing to find a file though.

Thanks a lot!

This will cause cg_clif to be distributed with rustup

Oh wow that would be amazing!


RE seizures

request child of
seizures [MP:0002064]
partial seizure
def
restricted uncontrolled electrical activity resulting when abnormal electrical disturbances occur in a limited area of the brain
syn focal seizure
Reported by: llw2
Original Ticket: obo/mammalian-phenotype-requests/2062

New term added
focal seizures  MP:0014120


[ci skip] adding user @SeanLeRoy

Hi! This is the friendly automated conda-forge-webservice.
I've added user @SeanLeRoy as instructed in #30.
Merge this PR to add the user. Please do not rerender this PR or change it in any way. It has [ci skip] in the commit message to avoid pushing a new build and so the build configuration in the feedstock should not be changed.
Please contact conda-forge/core to have this PR merged, if the maintainer is unresponsive.
Fixes #30

Looks good to me! Thanks @toloudis


DDL: Standardize spaces around colon, coma... with namespaces

This rule is adding spaces around the slashes of namespaces, converting this
define root view entity /RHP/C_DocumentDefTP
  provider contract transactional_query
  as projection on /RHP/R_DocumentDefTP

into
define root view entity / RHP / C_DocumentDefTP
  provider contract transactional_query
  as projection on / RHP / R_DocumentDefTP

Hi Jaime,
that's not good… thanks for reporting this, will fix asap!
Kind regards,
Jörg-Michael

Hi Jaime,
thanks again for reporting this bug so quickly – this should now be fixed with version 1.19.2, which was just released! I tried to create some extreme (but syntactically correct) examples to ensure that the distinction between using / as an arithmetic operator and using it for a namespace (or between using - as a sign and using it as an operator) is now correctly made:

Kind regards,
Jörg-Michael

Thank you for the quick fix!


get-help command that pings all the important kode people

Pings the important people  for getting help, and allows users to assign themselves as "helpers". Help can be asked for specific teams, such as ^get-help kode or ^get-help mechanical

Thats a good idea i like dis, I have a mariadb entry as part of the server so ill keep this in mind


fix: fix wrong modification of the 'cache_file_name' -related paramet…

…ers values in 'train_test_split' + fix bad interaction between 'keep_in_memory' and 'cache_file_name' -related parameters (#5699)

Have you tried to set the cache file names if keep_in_memoryis True ?
- if self.cache_files:
+ if self.cache_files and not keep_in_memory

This way it doesn't change the indice cache arguments and leave them as None

Regarding what you suggest:
The thing is, if cached files already exist and do correspond to the split that we are currently trying to perform, then it would be a shame not to use them, would it not? So I don't think that we should necessarily bypass this step in the method (corresponding to the reading of already existing data), if 'keep_in_memory' = True. For me, 'keep_in_memory' = True is supposed to mean "don't cache the output of this method", but it should say nothing regarding what to do with potentially already existing cached data, should it?
Besides, even if we do what you suggest, and do only that (so, not the modifs that I suggested), then, assuming that 'keep_in_memory' = False and that there exist cached files, if the following check on the existence of cached files with specific name fails, we will still have ended up modifying an input value which will be then used in the remaining of the method, potentially altering the behavior that the user intended the method's call to have. Basically, the issue with what you suggest is that we can't guaranty that we won't continue with the remaining of the method even if this condition is met. Because of that, in my opinion, the best way to not have to worry about potential, unwanted side effects in the rest of the code is to not modify those variables in place, and so, here, to use other variables.
So, I'm sorry, but for those two reasons, I don't think that what you are suggesting addresses the problems which are described in the opened issue.

The docs for this PR live here. All of your documentation changes will be reflected on that endpoint.

Makes sense ! Therefore removing the ValueError messages sounds good to me, thanks for detailing.
Then I think it's fine to keep using the same variables for the cache file names is enough instead of defining new ones - it doesn't alter the behavior of the function. Otherwise it would feel a bit confusing to have similar variables with slightly modified names just for that

Ok for the removing the ValueError exceptions, thanks.
That said, it seems to me like we should still find a way not to modify the values input by the user, insofar as they can be used elsewhere down the line in the program. Sure, here, by removing the raising of those ValueError exceptions, we have fixed one use cases were allowing this modification actually caused an issue, but maybe there are other use cases where this would also caused an issue? Also, maybe in the future we will add other functionalities which will depend on the values of those input parameters, with then new risks of such an issue occurring?
That's why, in order not to have to worry about that, and in order to make the code a bit more future -proof, I suggest that make sure those input values are not modified.
One way that I did this is to create different but similar looking variable names. If you find this confusing, we can always add a comment.
Another way would be to not store the result of the conditional definition of the values (the '_cache_file_name = (... if condition else ...)' in my proposition of code), and to use it every time we need. But since we use those new variables at least twice, that creates code redundancy, which is not great either.
Finally, a third way that I can imagine would be to put all this logic into its own method, which would then encapsulate it, and protect the remaining of the 'train_test_split' code from all unintended side effect that this logic can currently cause. This one is probably best. Also, maybe it could be used to remove some code redundancy elsewhere in the definition of the Dataset class? I have not checked if such a code redundancy exists.

We're already replacing the user's input by default values automatically in other methods, it's fine to do it here as well and actually fits the library's style.

I think the fact that it's a style of the library is not really an argument in itself; however, after thinking through it several times, I think I know see why your solution is acceptable: as soon as the user specifies that 'keep_in_memory=True', they should not care anymore about the value of the '_indices_cache_file_name' variables, since from their point of view those are now irrelevant. So it's "fine" if we allow ourselves to modify the value of those variables, if it helps the internal code being more concise.
Still, I find that it's a bit unintuitive, and a risk as far as future evolution of the method / of the code is concerned; someone tasked with doing that would need to have the knowledge of a lot of, if not all, the other methods of the class, in order to understand the potentially far-reaching impact of some modifications made to this portion of the code. But I guess that's a choice which is the library's owners to make.

Note that the case where it would reload the cache even if keep_in_memory=True is not implemented though

I'm not sure what you mean here:
Within the current code trying to load up the potentially already existing split data, there is no trace of the 'keep_in_memory' variable. So why do you say that 'the case where it would reload the cache even if keep_in_memory=True is not implemented' (I assume that you mean 'currently implemented')? Surely, currently, this bit of code works regardless of the value of the 'keep_in_memory' variable', does it not?


b-wav mime type support added

Summary: b-wav mime type support added
Type: Feature
Test Plan: UT/CT/YT Conformance, YT Codec
Jira: RIALTO-592

build-rpi4-ipstb-oss Console Log uploaded to Gist URL: https://gist.github.com/rdkcmf-jenkins/7fce84946ed09f5935e85a1ff12ae652

build-rpi-refapp2 Console Log uploaded to Gist URL: https://gist.github.com/rdkcmf-jenkins/1880cef73d5ad1ff7d3cd6cc53e99a7b

Sanity tests for ['BCM 7216OTT Refboard VA'] added.
https://jenkinsrdkm.cmf.code.rdkcentral.com/job/test-components-flow/55508/

build-rpi4-ipstb-oss Console Log uploaded to Gist URL: https://gist.github.com/rdkcmf-jenkins/24054bbeb84e16783da11300a2b617fe

build-rpi-refapp2 Console Log uploaded to Gist URL: https://gist.github.com/rdkcmf-jenkins/be56eb73b12f0ead7ae58a1afef00c98

Sanity tests for ['BCM 7216OTT Refboard VA'] added.
https://jenkinsrdkm.cmf.code.rdkcentral.com/job/test-components-flow/55522/

build-rpi-refapp2 Console Log uploaded to Gist URL: https://gist.github.com/rdkcmf-jenkins/5c61dbb4385ca1fb3447a02f36890d2d

Sanity tests for ['BCM 7216OTT Refboard VA'] added.
https://jenkinsrdkm.cmf.code.rdkcentral.com/job/test-components-flow/55629/

Job for AI/job/AI_BUILDS/job/AI-Trigger-PR-Builds started: https://pv-jen015.uk2.scp.bskyb.com/job/AI/job/AI_BUILDS/job/AI-Trigger-PR-Builds/26/

Sanity tests for ['RPI4 IPSTB'] added.
https://jenkinsrdkm.cmf.code.rdkcentral.com/job/test-components-flow/56122/


Bug with SwiftUI  binding passed features(TextEditor, TextField)

Describe the bug 🐛
when using Binding, it cause some issues.
For instances, TextEditor and Textview always cursor jump to end thus developer must use @State rather than Reducer.State
https://github.com/DevYeom/OneWay/assets/47838132/d2020c36-0520-433d-bbc2-4cdcff4a3646

import SwiftUI
import Combine
import OneWay

struct TextEditorTest: View {
    @State var text1: String = ""

    // Oneway
    @StateObject var store1: ViewStore<OneWayEditorReducer1> = .init(reducer: .init(), state: .init())

    // Sample Oneway
    @StateObject var store2: SimpleStore<OneWayEditorReducer1> = .init(reducer: .init(), state: .init())

    var body: some View {
        VStack {
            HStack {
                // ✅ Works
                Text("1 state")

                TextEditor1(tag: 1, text: $text1)
            }
            .background(Color.red)

            HStack {
                // ❎ Not Works
                Text("2 oneway")

                TextEditor1(tag: 3, text: .init(get: {
                    store1.state.text
                }, set: { value in
                    store1.send(.setText(value))
                }))
            }
            .background(Color.yellow)

            HStack {
                // ✅ Works
                Text("3 modified oneway")

                TextEditor1(tag: 2, text: .init(get: {
                    store2.state.text
                }, set: { value in
                    store2.send_return_state(.setText(value))
                }))
            }
            .background(Color.orange)

        }

    }
}

struct TextEditor1: View {
    var text: Binding<String>
    init(tag: Int,text: Binding<String>) {
        self.text = text
        print("💡 init tag:\(tag)")
    }

    var body: some View {
        TextEditor(text: text)
    }
}

class SimpleStore<R: Reducer>: ObservableObject {
    public typealias Action = R.Action
    public typealias State = R.State
    private let reducer: any Reducer<Action, State>
    @Published var state: State

    init(
        reducer: @Sendable @autoclosure () -> R,
        state: State
    ) {
        self.reducer = reducer()
        self.state = state
    }

    func send_return_state(_ action: Action) {
        if let reducer = reducer as? OneWayEditorReducer1 {
            self.state = reducer.reduce2(state: self.state as! OneWayEditorReducer1.State, action: action as! OneWayEditorReducer1.Action) as! R.State
        }
    }

}

class OneWayEditorReducer1: Reducer {
    enum Action {
        case setText(String)
    }

    struct State: Equatable {
        var text: String = ""
    }

    func reduce(state: inout State, action: Action) -> AnyEffect<Action> {

        switch action {
        case let .setText(value):
            state.text = value
            return .none
        }
    }

    func reduce2(state: State, action: Action) -> State {
        var newState = state
        switch action {
        case let .setText(value):
            newState.text = value
        }

        return newState
    }
}

To be honest, using inout function to modify state is my guess to this problem.
To Reproduce ✨

Use TextEditor and make custom Binding using initializer to use store.send
move cursor on TextEditor or TextField and type again, cursor moved to end

Expected behavior 🌈

Environments ⚙

Mac OS: Every os
Device or Simulator OS: Every Device and simulaor
Xcode Version: 15.0.1
Library Version: 2.1.0

This is not an inout issue. It can be reproducible as follows.
It seems that there is a problem when using an await statement in the setter of Binding.
It would be good to report this to Apple and find out the cause. I will also look for other ways to solve this issue.
Thank you for reporting it.
struct TextEditorTest: View {
    @StateObject var store = TestStore()

    var body: some View {
        TextEditor(
            text: Binding(
                get: { store.state.text },
                set: { text in
                    Task { @MainActor in
                        await store.setText(text)
                    }
                }
            )
        )
    }
}

@MainActor
final class TestStore: ObservableObject {
    struct State: Equatable {
        var text: String = ""
    }

    var state: State = State() {
        didSet {
            objectWillChange.send()
        }
    }

    func setText(_ text: String) async {
        state.text = text
    }
}

This issue doesn't occur in the case of TextField.

Thanks!

A band-aid solution.
In the case of a TextEditor, a separate @State is required.
We can maintain the state of the ViewStore by implementing a Binding as follows.
struct TextEditorView: View {
    @State private var text: String = ""
    @StateObject var store = ViewStore(
        reducer: TextReducer(),
        state: TextReducer.State(text: "")
    )

    var body: some View {
        TextEditor(
            text: Binding(
                get: { text },
                set: {
                    text = $0
                    store.send(.setText($0))
                }
            )
        )
    }
}


Question/Feedback: Ensure both connections of an ExpressRoute circuit are configured in active-active mode - How does this query check if you are forcing active\passive via advertising more specific routes and BGP AS path prepending?

Question/Feedback
I am not sure if the query, Ensure both connections of an ExpressRoute circuit are configured in active-active mode query is working as expected.  The query is checking if the primary and secondary peerings have address prefixes like so:
| where not(properties.peerings[0].properties.primaryPeerAddressPrefix != "null" and  properties.peerings[0].properties.secondaryPeerAddressPrefix != "null")
But if I was doing the following as described in the docs, would this condition catch that?
"However, through your route advertisements, you can force the redundant connections of an ExpressRoute circuit to operate in active-passive mode. Advertising more specific routes and BGP AS path prepending are the common techniques used to make one path prefer over the other."
Looking for confirmation from an ExpressRoute\Networking SME before creating a bug report.  Thanks.
Possible Answers/Solutions?

I believe there are 2 interpretations of active here. One is "is the connection itself configured and enabled", the other is "is one link passive in the sense that routing techniques direct traffc to the other connection". The intent of this original was to address the first, but not the second. The ARG query does not seem to be working to address even the first. I suggest we determine what we are trying to accomplish with this recommendation. I would think both are important. The second one interpretation is more difficult to write an ARG query for. @judyer28 - what are your thoughts?

If the ARG query is not returning accurate results, it should be removed from the recommendation.

cc @JefferyMitchell

@fguerri Would you review the points the team has made here and provide your thoughts. I did not think we were completed with sign off that recommendation ID's in ARG would be the path forward. Feature 34450 in Reliability backlog.

@cshea-msft Could you help us with team member who created the ARG Query?

@JefferyMitchell reached out to the PG contact, she mentioned she did not create the query but "Instead today there's no way to query using ARG to get Active Active\Active Passive" she is working on a Kusto equivalent for Advisor but security issues have taken precedence. Hope this helps.


Improved error when running an action in readonly mode

You mean give a better message when you run an action when browsing a member?
image](https://github.com/codefori/vscode-ibmi/assets/180969/fb723ebb-d290-4d73-9a54-2dc0aa5f1270)

@wimjongman Exactly that :)


Strange Filezilla behavior

Traversing directories in Filezilla is not working properly.
Here is the log.
The correct path is: "/templates/dynamic/DirectoryItem"
Somehow I end up with "/templates/templates/dynamic/templates/dynamic/DirectoryItem"
Am I doing anything wrong? Or this is an issue with Filezilla.
Status:	Resolving address of localhost
Status:	Connecting to [::1]:21...
Status:	Connection attempt failed with "ECONNREFUSED - Connection refused by server", trying next address.
Status:	Connecting to <IP_ADDRESS>:21...
Status:	Connection established, waiting for welcome message...
Response:	220 FTP Server Ready
Command:	AUTH TLS
Response:	234 Enabling TLS Connection
Status:	Initializing TLS...
Trace:	TLS Handshake successful
Trace:	Protocol: TLS1.2, Key exchange: ECDHE-SECP384R1-RSA-PSS-RSAE-SHA256, Cipher: AES-256-GCM, MAC: AEAD, ALPN:
Status:	TLS connection established.
Command:	USER scutarug@gmail.com:72
Response:	331 User scutarug@gmail.com:72 logged in, needs password
Command:	PASS *********
Response:	230 Password ok, FTP server ready
Command:	SYST
Response:	215 UNIX Type: A
Command:	FEAT
Response:	211-Extensions supported:
Response:	 AUTH TLS
Response:	 EPRT
Response:	 EPSV
Response:	 HOST
Response:	 LANG en*
Response:	 MDTM
Response:	 MFCT
Response:	 MFF modify;create;
Response:	 MFMT
Response:	 MLST type*;size*;perm*;modify*;create*;
Response:	 PBSZ
Response:	 PROT
Response:	 REST STREAM
Response:	 SITE BLST
Response:	 SIZE
Response:	 UTF8
Response:	211 END
Command:	OPTS UTF8 ON
Response:	200 Command okay.
Command:	PBSZ 0
Response:	200 Protection buffer size set to 0.
Command:	PROT P
Response:	200 Data channel protection level set to P.
Status:	Logged in
Trace:	Measured latency of 5 ms
Status:	Retrieving directory listing of "/"...
Command:	CWD /
Response:	250 Successful (/)
Command:	PWD
Response:	257 "/"
Command:	TYPE I
Response:	200 Binary transfer mode active.
Command:	PASV
Response:	227 Entering Passive Mode (127,0,0,1,238,123).
Trace:	Binding data connection source IP to control connection source IP <IP_ADDRESS>
Trace:	Trying to resume existing TLS session.
Command:	MLSD
Response:	150 Opening data connection.
Trace:	TLS Handshake successful
Trace:	TLS Session resumed
Trace:	Protocol: TLS1.2, Key exchange: ECDHE-SECP384R1, Cipher: AES-256-GCM, MAC: AEAD, ALPN:
Response:	226 Closing data connection.
Listing:	perm=el;type=cdir; .
Listing:	perm=el;type=dir; fonts
Listing:	perm=el;type=dir; images
Listing:	perm=el;type=dir; scripts
Listing:	perm=el;type=dir; styles
Listing:	perm=el;type=dir; templateItems
Listing:	perm=el;type=dir; templates
Listing:	perm=r;size=0;type=file; FullMasterPage.html
Listing:	perm=r;size=0;type=file; settings.json
Status:	Directory listing of "/" successful
Status:	Retrieving directory listing of "/templates"...
Command:	CWD /templates
Response:	250 Successful (//templates/)
Command:	PWD
Response:	257 "//templates"
Command:	PASV
Response:	227 Entering Passive Mode (127,0,0,1,238,132).
Trace:	Binding data connection source IP to control connection source IP <IP_ADDRESS>
Trace:	Trying to resume existing TLS session.
Command:	MLSD
Response:	150 Opening data connection.
Trace:	TLS Handshake successful
Trace:	TLS Session resumed
Trace:	Protocol: TLS1.2, Key exchange: ECDHE-SECP384R1, Cipher: AES-256-GCM, MAC: AEAD, ALPN:
Response:	226 Closing data connection.
Listing:	perm=el;type=cdir; .
Listing:	perm=el;type=pdir; ..
Listing:	perm=el;type=dir; dynamic
Listing:	perm=el;type=dir; section
Listing:	perm=el;type=dir; static
Status:	Directory listing of "/templates" successful
Status:	Retrieving directory listing of "/templates/dynamic"...
Command:	CWD /templates/dynamic
Response:	250 Successful (//templates//templates/dynamic/)
Command:	PWD
Response:	257 "//templates//templates/dynamic"
Command:	PASV
Response:	227 Entering Passive Mode (127,0,0,1,238,136).
Trace:	Binding data connection source IP to control connection source IP <IP_ADDRESS>
Trace:	Trying to resume existing TLS session.
Command:	MLSD
Response:	150 Opening data connection.
Trace:	TLS Handshake successful
Trace:	TLS Session resumed
Trace:	Protocol: TLS1.2, Key exchange: ECDHE-SECP384R1, Cipher: AES-256-GCM, MAC: AEAD, ALPN:
Response:	226 Closing data connection.
Listing:	perm=el;type=cdir; .
Listing:	perm=el;type=pdir; ..
Listing:	perm=el;type=dir; DirectoryItem
Listing:	perm=el;type=dir; DirectoryList
Listing:	perm=el;type=dir; DirectoryListSelect
Listing:	perm=el;type=dir; Property
Listing:	perm=el;type=dir; PropertyList
Listing:	perm=el;type=dir; PropertyListSelect
Status:	Directory listing of "/templates/templates/dynamic" successful
Status:	Retrieving directory listing of "/templates/templates/dynamic/DirectoryItem"...
Command:	CWD /templates/templates/dynamic/DirectoryItem
Response:	550 Not a valid directory.
Error:	Failed to retrieve directory listing
Status:	Retrieving directory listing of "/templates/templates/dynamic/DirectoryItem"...
Command:	CWD /templates/templates/dynamic
Response:	550 Not a valid directory.
Error:	Failed to retrieve directory listing

It's bad custom file system, issue resolved.


Small issues & requests.

For the friends list on Youtube, can you change the "Notifications" to "Inbox" if that is possible?
Also, the Youtube spacing thing doesn't work. It shows it being spaced, but one something is posted, it will not be spaced as typed in on the comment or post.

sorry, I don't think those are in scope of this project


Weird geometry after second coplanar subtraction of cubes

Absolutely love this package and think its like 95% of the way there, you have done an amazing job with this but I am having one problem with coplanar faces:
Describe the bug
After a second subtraction with Coplanar objects such as two cube you start to get very weird behavior. This is improved after the triangle splitter PR, but not solved. From our experience this only happens when you have coplanar faces, when we shift these objects even slightly all the problems completely go away.
To Reproduce
Here is a fiddle:
https://jsfiddle.net/58yehc2z/28/

const baseGeometry = new BoxGeometry(1,1,1)
const firstSubtract =  new BoxGeometry(1,1,1)
const secondSubtract =  new BoxGeometry(1,1,1)
firstSubtract.translate(0.5,0.5,0);
secondSubtract.translate(0,0.5,0);

const csg = new Evaluator();
const base = new Brush(baseGeometry);
const first = new Brush(firstSubtract);
const second = new Brush(secondSubtract);

let result = csg.evaluate(base, first, SUBTRACTION);

let final_result = csg.evaluate(result, second, SUBTRACTION);

Live example
https://jsfiddle.net/58yehc2z/28/
Expected behavior
I would expect this to continue to be manifold, especially for a case such as simple cubes subtracting from each other
Screenshots
I have a much more complicated setup but the same operation ends up with something like this which is a bit easier to see than the fiddle I set up:

This is after we pulled in the triangle splitter PR which is an amazing improvement, but doesn't solve this case.

With the new triangle splitter this ends up being related to a point being directly on the line
https://github.com/gkjohnson/three-bvh-csg/pull/194#discussion_r1653213399_
And the picture I shared is caused by
https://github.com/gkjohnson/three-mesh-bvh/issues/680

Hello! Thanks for reporting the issue. As you've seen there are some known issues with the existing triangle splitting logic and it's something I would still like to try a new approach for. The approach in #194 was an attempt at trying a new approach but unfortunately it had issues, as well.
When I have time I would like to dive in again and try a new approach. In short, I think it would be best to split triangles into a series of n-sided polygons based on the intersection segments with other triangles. Then these polygons can be triangulated using a constrained delaunay triangulation algorithm. We'd still need to figure out how to handle parallel face intersections more robustly but this would be a good start.
If this is something you're interested in helping with that would be great. A good CDL implementation would be a great first step and is a fairly separably task, I think.

Hmm I am running out of time for how much more I can work on this so I don't think I can try a new triangulation algorithm
I have gotten the earcut to produce generally good results now with a few modifications, I definitely hit a limit with it though and if we intersect with too many faces it will just start to fail.
If you want to try to make earcut work a little better this is my most up to date branch and you might be able to pull the important stuff from there.
Essentially I realized that organizing the faces is an exponential problem, so if I get a case that is too hard, I just split the edge into two and do the split on the half of the edge. This does break down after my like 8th or 9th subtraction because there are just too many faces that even my optimization doesn't work anymore, likely because i'm creating essentially 0 length edges, but its gotten to a place I am happy with it.
https://github.com/ToyboxZach/three-bvh-csg/tree/ImprovedCSG
I did make a few choices that are helpful for our case, but probably not what you want in this package, so I wouldn't directly pull it in.

Definitely understand regarding time. At some point I'll plan to revisit this.

I have gotten the earcut to produce generally good results now with a few modifications

To clarify it doesn't look like your branch is using the earcut algorithm to fill holes. I'm referring to the algorithm implemented here which was then ported to three. But I've found that it breaks down in cases where vertices are to close to eachother.
For future references here's a direct diff of your branch with this one:
https://github.com/gkjohnson/three-bvh-csg/compare/improved-tri-split...ToyboxZach:three-bvh-csg:ImprovedCSG

Ah ok, I misunderstood what earcut was. Yeah my focus was just to use your triangle splitter, find some case it broke and figure out why. My branch would fix this issue, but still eventually fails with more complex faces likely due to floating point errors and just having too many edges to reason about.


provide pagination support instead of requesting the full list

Pagination is supported by the list responses. It should be investigated how to apply pagination to RecyclerView and the MVI architecture
More about the topic here:
https://github.com/typicode/jsonplaceholder/issues/65
Pagination example:
https://jsonplaceholder.typicode.com/posts?_start=0&_limit=5

more examples can be found on the following link: https://github.com/typicode/json-server#paginate


Update cellranger-analysis to run with singularity

Purpose/implementation Section
Type of change

[x] New feature (non-breaking change which adds functionality)

What scientific question/module of analysis is your analysis addressing?
To update cellranger-analysis module to run from the container.
What GitHub issue does your pull request address?
Closes #55.
Closes #56.
Directions for reviewers
Tell potential reviewers what kind of feedback you are soliciting.
Which areas should receive a particularly close look?
Please advise on how to execute singularity for this module. In the current state of the code, singularity exec ${rootdir}/rstudio_4.4.0_seurat_4.4.0_latest.sif was added in the j1.sh and j2.sh scripts where modules were initially loaded.
Please note the script seems to generate all expected files (except the one from waiter.sh). However, there is an error: sh: 1: bsub: not found as reported in the j1.err. This indicates that lsf might need to be added in the container.
Reproducibility Checklist

[x] The dependencies required to run the code in this pull request have been added to the project Dockerfile.

Documentation Checklist

[x] This analysis module has a README and it is up to date.
[x] The analytical code is documented and contains comments.

This might be relevant but I am not sure given the specific error command above, we might be missing LSF configurations: https://www.10xgenomics.com/support/software/cell-ranger/latest/advanced/cr-cluster-mode

@sharonfreshour Please run cellranger-analysis module. We are working on troubleshooting the lsf scheduler with the HPC team. However, @CodyRamirez  and I were wondering if you would be able to run it or reproduce the same error.

@AntoniaChroni  I also get the same error in the j1.err file related to bsub: sh: 1: bsub: not found.
It appears like the correct folder structure is created and the expected .err, .out, .bsub, and .log files are generated. I've attached a screenshot of the tree of the files and folders in /sc-rna-seq-snap/analyses/cellranger-analysis after the failed test run.

In addition to the error for the j1 job, I also see an error for the j2 job related to Python modules. This is the error from j2.err:
Traceback (most recent call last):
  File "/research_jude/rgs01_jude/dept/DNB/core_operations/Bioinformatics/sfreshou/GitHub/sc-rna-seq-snap/analyses/cellranger-analysis/./util/summarize_cellranger_results.py", line 13, in <module>
    import os, sys, argparse, glob, numpy, pandas
ModuleNotFoundError: No module named 'pandas'

In addition to the error for the j1 job, I also see an error for the j2 job related to Python modules. This is the error from j2.err:
Traceback (most recent call last):
  File "../sc-rna-seq-snap/analyses/cellranger-analysis/./util/summarize_cellranger_results.py", line 13, in <module>
    import os, sys, argparse, glob, numpy, pandas
ModuleNotFoundError: No module named 'pandas'

@murfreesboro Please note this additional error reported by @sharonfreshour in the updates for the container.

In addition to the error for the j1 job, I also see an error for the j2 job related to Python modules. This is the error from j2.err:
Traceback (most recent call last):
  File "../sc-rna-seq-snap/analyses/cellranger-analysis/./util/summarize_cellranger_results.py", line 13, in <module>
    import os, sys, argparse, glob, numpy, pandas
ModuleNotFoundError: No module named 'pandas'

@JohnGrime for your reference


Add Deferred

Closes #10147
Summary of changes from submission given to blackrack, waiting for response

Remove the download URL (kref does the same job better)
Change ksp_version_min to ksp_version to make the compatibility fully bounded (this is a warn not an error so doesn't have to be included)
Add explicit install directive (specify it is installing zzz_Deferred)

Hey @LGhassen amd @DeltaDizzy :
Are there known incompatibilities with older versions of other mods? (Tufx, tu, etc).  Might be wise to declare them in here using a conflicts with a max version specifier.

@DeltaDizzy changes sound good.
For the conflicts as suggested by @JonnyOThan I think this should do it:
`conflicts:

name: Parallax
max_version: '2.0.6'
name: TexturesUnlimited
max_version: '<IP_ADDRESS>'
name: KerbalKonstructs
max_version: 'v<IP_ADDRESS>'
name: RasterPropMonitor
max_version: '1:v<IP_ADDRESS>'
name: B9-PWings-Fork
max_version: '3:0.45.1'`

@DeltaDizzy can you add these or do you need me to change the file in the original issue? Also I think you can remove Harmony from dependencies, it's only a depency of Shabby so having it as a dependency should cover it.

I think it’s wise to explicitly declare dependencies (assuming deferred does indeed directly use Harmony) rather than relying on transitive dependencies as those may change over time. Unlikely in this case, but just as a general policy.

@LGhassen I can change it, thanks!

Hi @LGhassen, a question about Deferred.cfg. If CKAN installs this, then it will be overwritten every time the user upgrades to a new version of the mod. Will that be an issue?

At the moment it shouldn't be, there is not enough meaningful settings to warrant separate mods for the configs. Everyone should be fine with the defaults.

Thanks a lot for this!


fix: check run_ends_view->length before accessing its values

This PR should fix the issue where run_ends_view->length is not checked if equals to 0 before attempting to access run_ends_view's values. Many thanks to @WillAyd.

Wow that was fast - great work @cocoa-xu !
Unfortunately Valgrind still doesn't like something with how this is set up:
https://github.com/apache/arrow-nanoarrow/actions/runs/9468487196/job/26084953378?pr=483#step:7:308
I haven't been able to reproduce locally or boil it down to an MRE. Just sharing in case you have any other ideas what might have gone awry.
Thanks again for the contributions

I think I was able to find some more information when running meson with -Db_sanitize=address,undefined:
../src/nanoarrow/array.c:753:11: runtime error: signed integer overflow:<PHONE_NUMBER>854775807 + 7 cannot be represented in type 'long int'
../src/nanoarrow/array.c:892:9: runtime error: signed integer overflow:<PHONE_NUMBER>854775807 + 7 cannot be represented in type 'long int'

It looks like the offsets value for the RUN_END_ENCODED parent array_view is a junk value, but ArrowArrayViewValidateMinimal does not expect this
https://github.com/apache/arrow-nanoarrow/blob/e92c364f65f9d6fb029d918b9ff31a8a39b3a1df/src/nanoarrow/array.c#L752
So that is definitely problematic. Haven't quite pieced together the link between that and what valgrind is giving us, but maybe there is one


Feat/rebase action

/rebase

/rebase

/rebase

It didn't rebase automatically, but perhaps it needs to be merged first?

It didn't rebase automatically, but perhaps it needs to be merged first?

Yes I think so, will test on other branches.


Temporarily disable travis test jobs

This PR disables (almost) all of the travis test jobs.
Please note that the 'imgtool' test is not disabled, as in case of an empty matrix the CI seem to report failure.

imgtool does the publishing to pypi.org, it was not migrated to workflows yet, so it's better to leave it here.

Ah, OK. Then the chang should be Ok.


language: optional and required field names are inaccessible under iteration

What version of CUE are you using (cue version)?

$ cue version
cue version v0.6.0-alpha.1

go version go1.20.3
      -buildmode exe
       -compiler gc
       -trimpath true
     CGO_ENABLED 0
          GOARCH amd64
            GOOS linux
         GOAMD64 v1

Does this issue reproduce with the latest stable release?
N/A (required fields)
What did you do?
I tried to iterate over a Definition that contains normal, required, and optional fields.
What did you expect to see?
I expected the iterator to see all field names.
What did you see instead?
The iterator only saw the normal field names:
exec cue export in.cue --out cue -e y
cmp stdout expected.cue
-- in.cue --
#x: {
  a!: int
  b?: string
  c:  bool
}

y: {
  for k,v in #x {
    (k): "exists"
  }
}
-- expected.cue --
a: "exists"
b: "exists"
c: "exists"

Here, running this testscript results in the following:
$ testscript foo.txtar
> exec cue export in.cue --out cue -e y
[stdout]
c: "exists"
> cmp stdout expected.cue
--- stdout
+++ expected.cue
@@ -1,1 +1,3 @@
+a: "exists"
+b: "exists"
 c: "exists"

FAIL: /tmp/testscript993681934/invisible-fields.txtar/script.txtar:2: stdout and expected.cue differ
error running invisible-fields.txtar in /tmp/testscript993681934/invisible-fields.txtar

By definition, a required field does not exist. But it could be an error when attempted to iterate over a required field.

Also noting per our conversation that this could/should be a struct-like builtin (package TBC).

Failing on required fields is addressed in
https://review.gerrithub.io/c/cue-lang/cue/+/555951
Moving this out of the v0.6 milestone accordingly.


Specify concurrency semantics

I don't believe IAVL is currently concurrency-safe. We should document this, and also specify whether e.g. an ImmutableTree is safe for reads while the corresponding MutableTree is mutated. See e.g. #240.
Related to https://github.com/tendermint/tm-db/issues/62.

Here's a follow-up question. I understand that, as per https://github.com/tendermint/iavl/issues/240#issuecomment-625738226, it's non-safe to do a tree.Set concurrently with a tree.ImmutableTree.Get.
However, is it safe to do those calls concurrently if we use GetImmutable instead of directly accessing the same ImmutableTree pointer?
immTree := tree.GetImmutable(currentVersion)
go tree.Set(...) // concurrent write
go immTree.Get(...) // concurrent read

I see that GetImmutable doesn't return the same *ImmutableTree, though I understand it does share data underneath. So I'm not sure if the last bit of sample code would still be considered racy or non-safe.

However, is it safe to do those calls concurrently if we use GetImmutable instead of directly accessing the same ImmutableTree pointer

I think that's true. MutableTree.ImmutableTree probably shouldn't have been exported, I think it's just an unfortunate side-effect of Go's type embedding. I ran some tests here with the Go race detector, and the tree returned by GetImmutable() does appear to be safe for concurrent use, at least in the cases I tried (simple set/get with version saving).

Thanks :)


Config file input box visibility fix

This PR fixes #3013
https://user-images.githubusercontent.com/59086855/119398042-9f902c00-bcf4-11eb-8c10-b527af896c1d.mov

[x] Yes, I signed my commits.

@Ayush-Khandelwal-007, you're on a roll. 🙂

Thank you😀

Nice Work @Ayush-Khandelwal-007  🎉

Thanks @adithyaakrishna


Merge of lists of project from Nic30/* repositories

Hello,
I would like to remove the lists from my projects and replace them with a link on your awesome page.
There is a problem however, the awesome lists are not supposed to be junkyard but it is hard to judge the projects and I do not have an authority to do so. That is why it would be nice to have some place (possibly section in this awesome list) where any link can be posted.
Originally I was thinking that the things will get merged to drom/awesome-hdl @drom (I had the impression that others did agree.), can someone enlighten me to the current situation?

Hi @Nic30! Nice to see you around!

There is a problem however, the awesome lists are not supposed to be junkyard but it is hard to judge the projects and I do not have an authority to do so.

While this is true, I believe that issue is partially less relevant in this case. Precisely, the idea of using a file for each item instead of putting everything in the same single markdown list, was allowing having metadata about each project. Each item is linked to a discussion in the repo, so that users can react and "vote" on the projects. That is not integrated in the frontend yet, but you can see the prototype in vhdl.github.io/news.
In practice, many projects do only have the minimal information. That is because the initial and still main motivation of this site is that the maintainers/developers/authors of each tool should be interested in having the information about their projects updated and in the descriptions being attractive as well as accurate. We didn't get as many as we'd like engaged yet, but some have already contributed interesting info and cross-relations.
So, this repository is a reflection of the interest that the (open source) hardware community puts into building bridges and sharing knowledge with each other. It is not the duty of a few people to have a detailed and perfectly organised site. In other words: there is "junk" in the community, but some junk is actually useful albeit not attractive.
Nevertheless, I agree with the difficulty for judging projects. None of us have any authority for deciding and, at the same time, all of us have authority to do so. Personally, I won't oppose to almost any project being added. However, I suggest the following:

Try not to add your own projects. Wait for some other to do it.
If some project is too small/new, I suggest grouping them per author/organisation/community.

Avoid each RISC-V core or small bunch of HDL cores to be added as independent items. There are OpenCores, LibreCores, etc. for that. But I would not like those refs to be lost. So, it's ok to e.g., have a single item which is a list of open source RISC-V/OpenPower cores (CPUs, or CPU based SoCs).

The criteria I use is waiting until some other people (2-3) which are not in my closest bubble do also like a project. Then, it's awesome enough.

That is why it would be nice to have some place (possibly section in this awesome list) where any link can be posted.

It's ok to create either Discussions or Issues for those items which you don't feel strong enough to be added as items to the site, but which you would like to have a place for. In fact, in vhdl.github.io/news the items are created from the issues in the repository. Anyone can post a new by opening an issue and tagging it. We might apply that same strategy in this repository. That is, have an specific section in the site which lists "other items", meaning the issues with some specific tag.

Originally I was thinking that the things will get merged to drom/awesome-hdl @drom (I had the impression that others did agree.), can someone enlighten me to the current situation?

I/we did not have explicit feedback/communication with Aliaksei. For context, this organisation and repository were created a year ago, as an extension of vhdl/awesome-vhdl, after some discussions in the gitter channels of the open source vhdl group. For several months, it didn't get much attention. Last autumn, we decided to move containers, add MSYS2 packages, move Conda repos, etc. Since then, we use the items as the single entrypoint to the content about each tool. So, we've been adding items as we needed to have them referenced somewhere (some docs, slides for presentations, etc.). Precisely, @rodrigomelo9 contributed a lot because he gave some talks in february and then used this site as a posterior reference for attendees to use.
Since this repository grew in the last months, Patrick and I decided to archive vhdl/awesome-vhdl some days ago. You can see he opened some issues here for tracking the remaining items which are still to be added as independent markdown files. Therefore, I think this might be a good time to suggest @drom considering the "migration" of drom/awesome-hdl here. Yet, I would understand if he wants to maintain the simpler and more common format of awesome lists.

Thank you for an explanation, this project is a little different than I was originally thinking. Thankfully it is better, which surprises me considering it is 2021.
I am using these lists to monitor similar projects and help them. That is why I am adding everything related which does at least something.
Also I see another problem which could be potentially solved by this project.
There is lack of information about new projects which significantly reduces the possibility that the useful things will ever see the light of day.
One of my personal experiences:
The probability that the project appears in the list corresponds to a number of users. Which naturally favors the strongest players and obliterates small unique projects. I do represent only 3 PhD students and working programmers from ruins of soviet union (CZ) we do not have any money nor the time for marketing and our publications are not focused on this topic. Which means we are short on possibilities and any of our projects can never dream of being in this list because no one else even knows about it. Naturally we are working on our projects because we did not find any equivalent which we could use. And it usually happens that after some period of time someone else do exactly the same thing and he/she convinces whole community to contribute and  then only a fragment of functionality which we had year ago is implemented and then the development suddenly stops. So we are practically forced to maintain our library and other is still missing something important which can not be implemented in other library because of API change which is not acceptable as the library is widely used.
For an example back in 2018 I did not know about netlistsvg and I wrote d3-hwschematic, When I found netlistsvg it did not have support for hierarchical components so I was not able to use it. Then things like interactivity, support for hierarchical interfaces, filters etc. were added  into d3-hwschematic which made netlistsvg entirely deprecated and I was thinking that the project is dead.
But then people from SymbiFlow and others started pushing into the project and they are slowly getting it on the level of d3-hwschematic. But that is just the beginning, they are working on netlistsvg because they are working on sphinxcontrib-hdl-diagrams but sphinx-hwt does even more for 3 years. And so on...
With previous two paragraphs I would like to say that knowledge about projects in progress is very important.
In our case the knowledge about our project is maybe not so important because we traditionally have the worst doc imaginable but for other projects and community cooperation this could be very well be the most important thing.
Actually, maybe we should add something like badges or some other branch of taxonomy which describes the development state of a project, or even better some visuals which will describe the state of CI, last commit etc.


Setup CodeClimate

Todo

[ ] Decide whether go lint should be kept enabled
[x] Hook Repository Up With codeclimate.com
[x] Report Test Coverage to codeclimate

Related Links

https://docs.codeclimate.com/docs/github-pull-requests
https://github.com/marketplace/actions/code-climate-coverage-action

Checklist

[x] Keep pull requests small so they can be easily reviewed.
[ ] ~Update the documentation.~
[ ] ~Update tests.~
[x] Link this PR to related issues.

There's one feature in this PR to discuss: go lint
Shall I remove it from the code climate static analysis report or are we committing to follow its suggestions in the future – at least, where they make sense?

Can we somehow ignore the current issues?
Also, I noticed that the integration tests are not currently run just make test, but there's an make integration_test target. That should increase coverage

Can we somehow ignore the current issues?

No. But they won't show up as blocker in further PRs, because codeclimate only reports the new issues. And since this time all are new, it reports them all.

Also, I noticed that the integration tests are not currently run just make test, but there's an make integration_test target. That should increase coverage

I suggest to look at this in a separate issue.


Colourful logging and print version for helpers update

Currently the update script is rather verbose and so useful information can easily lost.
E.g. it appeared that astropy-healpix is not receiving helpers updates as it had a "newer" version than v2.0.6 in the form of of a 6 month old v3.0.dev. It would be useful that in cases like this a final logfile was created with name of package and current version of helpers.
Alternatively a the Repository astropy-healpix already has an up-to-date astropy-helpers message could be printed to stdout with a distinctive colour, and also provide the version number rather than just a hash.

This can be closed now without further action.


CMakeLists file error

CMake Error at CMakeLists.txt:40 (set_target_properties):
set_target_properties called with incorrect number of arguments.
CMake Error at CMakeLists.txt:45 (compile_glsl):
Unknown CMake command "compile_glsl".
Is my environment configuration wrong? It uses Visual Studio 2019.
The specific command line return is as follows:
CMake Warning (dev) in CMakeLists.txt:
No project() command is present.  The top-level CMakeLists.txt file must
contain a literal, direct call to the project() command.  Add a line of
code such as
project(ProjectName)

near the top of the file, but after cmake_minimum_required().
CMake is pretending there is a "project(Project)" command on the first
line.
This warning is for project developers.  Use -Wno-dev to suppress it.
-- The C compiler identification is MSVC 19.29.30147.0
-- The CXX compiler identification is MSVC 19.29.30147.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: C:/Program Files (x86)/Microsoft Visual Studio/2019/Community/VC/Tools/MSVC/14.29.30133/bin/Hostx64/x64/cl.exe - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: C:/Program Files (x86)/Microsoft Visual Studio/2019/Community/VC/Tools/MSVC/14.29.30133/bin/Hostx64/x64/cl.exe - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
CMake Error at CMakeLists.txt:40 (set_target_properties):
set_target_properties called with incorrect number of arguments.
CMake Error at CMakeLists.txt:45 (compile_glsl):
Unknown CMake command "compile_glsl".
CMake Warning (dev) in CMakeLists.txt:
No cmake_minimum_required command is present.  A line of code such as
cmake_minimum_required(VERSION 3.25)

should be added at the top of the file.  The version specified may be lower
if you wish to support older CMake versions for this project.  For more
information run "cmake --help-policy CMP0000".
This warning is for project developers.  Use -Wno-dev to suppress it.
-- Configuring incomplete, errors occurred!
See also "D:/projet/DT/OpenXR-SDK-Source-main/src/tests/hello_xr/build/win64/CMakeFiles/CMakeOutput.log".

You have to build the entire source tree, you can't just point to the hello_xr subdirectory.  If you want to see what a standalone project containing a version of hello_xr looks like, see: https://github.com/rpavlik/hello_xr_hpp

Thank you for your answer. The problem has been solved.

@qpmg  how did you solve it?
I moved to the root directory  : OpenXR-SDK-Source and ran below command :
mkdir build\win64
cd build\win64
cmake -G "Visual Studio 17 2022" -A x64 ....
then what next? Do i need to do the same step by entering inside the "\OpenXR-SDK-Source\build\win64\src\tests\hello_xr" which is formed? but it reports missing cmakelist.txt

there is no sln just for hello_xr, it's for the entire project.  This is a very standard CMake project, see https://cmake.org/cmake/help/latest/guide/user-interaction/index.html#guide:User Interaction Guide
A runtime should come with your headset: see https://www.khronos.org/conformance/adopters/conformant-products/openxr for a listing of conformant products that include a runtime.

There is no sln just for hello_xr, it's for the entire project. This is a very standard CMake project, see https://cmake.org/cmake/help/latest/guide/user-interaction/index.html#guide:User Interaction Guide
A runtime should come with your headset: see https://www.khronos.org/conformance/adopters/conformant-products/openxr for a listing of conformant products that include a runtime. There are multiple runtimes available for Windows, the right one to use depends on your headset.

Sorry , this is not clear. To run it on windows why it needs to depend on headset? I want to run it on windows not headset currently.

OpenXR is an API for using immersive software, which is mainly on headsets. Windows Mixed Reality (which implements OpenXR) has a simulator mode that does not require a headset, as does Monado.


Updating existing  Schema for respondent and witness

Hi @suresh12  @atulgupta2024  @manimaarans This changes will be pickup in sprint 12 moving ticket to sprint 12


Deploy cEUR activation governance proposal on Mainnet

This governance proposal should include:

Set cEUR as a fee/gas currency
Set stableTokenEUR as reserveExchangeSpender
Unfreeze stableTokenEUR and exchangeEUR
Set parameters for exchangeEUR (if any)

Proposal is ready to be submmited when we're ready: `https://github.com/celo-org/celo-proposals/blob/master/CGPs/0024/mainnet.json

Executed Thursday Apr 22. Closing this one out.


Implementation with EF in separate project

Have you done any work to implement this with EF, optionally, in another project? I'm looking for a way to decouple the identity implementation from the persistence choice, but still be able to swap between different persistence options with just a change to the dependency injection options.

I haven't investigated something like that yet, but it's a pretty good idea. I'll look into it when I get some time. Or, if you come up with something, please let me know because I'd love to see how other people do it!

Thanks. You might be interested in this discussion: https://github.com/aspnet/Identity/issues/883


deps!: upgrade release-please to v16

Blocked on https://github.com/googleapis/release-please/pull/2117
Towards #857

Since the blocker issue is merged, can the checks in this PR be rerun with release-please version 16.3.0?


contam_screen_param "combination;{text"

contam_screen_param

field
value

Structured comment name
contam_screen_param

Item   (rdfs:label)
contamination   screening parameters

Definition
Specific   parameters used in the decontamination sofware, such as reference database,   coverage, and kmers. Combinations of these parameters may also be used, i.e.   kmer and coverage, or reference database and kmer

Expected   value
enumeration;value   or name

Value   syntax
[ref   db|kmer|coverage|combination];{text|integer}

Example
kmer

Section
sequencing

migs_eu
-

migs_ba
-

migs_pl
-

migs_vi
-

migs_org
-

mims
-

mimarks_s
-

mimarks_c
-

misag
X

mimag
X

miuvig
-

Preferred   unit

Occurence
1

MIXS   ID
MIXS:0000073

MIGS   ID (mapping to GOLD)

something nicely structured or anything

implemented with ^(ref db|kmer|coverage|combination);.+, requiring at least one character after the semicolon


Empty function bodies should be single line

-        pub mod posix01 {}
-        pub mod posix08 {}
-        pub mod bsd44 {}
+        pub mod posix01 {
+        }
+        pub mod posix08 {
+        }
+        pub mod bsd44 {
+        }

I implemented this, but apparently not very well.
See also https://github.com/nrc/rustfmt/issues/460

and empty modules too.

This is fixed for function bodies, but not modules


fix auto-generated GDN API header for C compilers

The new GDNative API structs have a little C semantic error. This struct does not compile, unless you are using a C++ compiler:
typedef struct godot_gdnative_api_struct { // [1]
	unsigned int type;
	godot_gdnative_api_version version;
	const godot_gdnative_api_struct *next; // [2]
} godot_gdnative_api_struct; // [3]

The problem is that for C, every variable of type struct S has to be written out as struct S, unless re-defined using a typedef. Now, the declaration of godot_gdnative_api_struct is at line [1], a variable of that type is declared at line [2], and finally, the actual typedef happens at line [3]. As C and C++ must have forward declarations for historical reasons, line [2] does not compile in C.
In Rust, the automatic binding generator for C headers uses clang as a C compiler by default, resulting in that compilation error when trying to generate bindings for the new gdnative_api_struct.gen.h:
   Compiling gdn_api v0.1.0 (file:///.../gdn_api)
error: failed to run custom build command for `gdn_api v0.1.0 (file:///.../gdn_api)`
process didn't exit successfully: `/.../gdn_api/target/debug/build/gdn_api-b922c00fd671dcdf/build-script-build` (exit code: 101)
--- stderr
/.../godot/modules/gdnative/include/gdnative_api_struct.gen.h:24:8: error: must use 'struct' tag to refer to type 'godot_gdnative_api_struct'
/.../godot/modules/gdnative/include/gdnative_api_struct.gen.h:24:8: error: must use 'struct' tag to refer to type 'godot_gdnative_api_struct', err: true
thread 'main' panicked at 'Unable to generate GDNative API bindings: ()', /checkout/src/libcore/result.rs:906:4
note: Run with `RUST_BACKTRACE=1` for a backtrace.

This tiny PR fixes that error.

Wouldn't it be enough to just add a forward declaration? It's already typedef'd so using struct seems a little off

Might do the job as well. I just thought that adding struct would be much simpler.

So, tests ran and passed. What's the next step?

Merge this?
Let me change the fix into using a forward-declaration? This will take some hours, as I'm currently not at home.
Some of you guys make the forward-declaration change and close this?

I think it should be done using a forward declaration. 👍

Good, will do as soon as I'm home. =)

I did a thing. °^°

Looks fine, could you squash the commits together?

Wtf, now it is one commit in my working directory even when cloning and 4 on GitHub? Probably forgot a step, never had to squash commits before. Know a way to fix this? Otherwise, apparently, you guys can auto-squash commits on merging with a click of a button.

See http://docs.godotengine.org/en/latest/community/contributing/pr_workflow.html#mastering-the-pr-workflow-the-rebase
@karroffel We don't use this feature..

We usually don't use that GitHub feature because it's a bit limiting and ugly 😄
I did it anyway to get it done. In the meantime you could read about interactive rebase and force push so you can do it properly next time.

Did, thanks for the read. =)
I used git reset --soft HEAD~2 for the squashing, guess I found the culprit.


Bump Go 1.5.3

Bump to Go-1.5.3
Security update: https://groups.google.com/forum/#!topic/golang-announce/MEATuOi_ei4
Just to be sure :wink:.
Signed-off-by: Vincent Demeester<EMAIL_ADDRESS>

LGTM! Fixes #163


[Xamarin Forms] Issues with iOS and Android

🐛 Bug Report
On iOS, animations do not play properly. On Android, they do not load at all. Note that the iOS issue seems to happen with specific files as I was able to get other json files to play as expected.
Expected behavior
Animations should play as expected on both platforms. The attached animation should look like this: https://www.lottiefiles.com/983-rejection
Reproduction steps
Run the attached repro on iOS and Android
Platform:

[x] :iphone: iOS
[x] :robot: Android
[ ] :checkered_flag: WPF
[ ] :earth_americas: UWP
[ ] :apple: MacOS
[ ] :tv: tvOS
[x] :monkey: Xamarin.Forms

LottieTest.zip

Same here, I tried using older versions but they error out (parsing error)
Tested with Android (9), Pixel 2

After downgrading Lottie from 2.7.0 to 2.6.3, Android works fine for me, see #204. Maybe this helps?

Try 2.7.1

@martijn00 just tried 2.7.1, when HorizontalOptions & VerticalOptions are set to "FillAndExpand" animation does not display anymore. Need to set a Width & HeightRequest which brings a non-responsive animation. I'm trying to debug and see what could cause this behavior, seems the containing layout matters.

@martijn00 This needs to be re-opened. I tried 2.7.1 and was unable to play https://www.lottiefiles.com/983-rejection properly on iOS. This file works on Android but not iOS.


Example in README is broken.

Should be:
tcinput.Textbox(p.State, p.Sidebar, "What's your name?")

Solve at v0.1.1 release


xcode 12 problem

after updating to xcode 12
dckit no longer work and buttons inherit dckit are shown as red alerts in story board.
also i'm unable to modify buttons from the right button option bar.

I'm sorry, but I don't do native iOS development anymore. Switched to Flutter a year ago.