Regarding the quality issues of the DRR image.

Dear author,
I used this code to generate DRR images, but I found that the generated DRR image is very different from the real X-ray image. The generated DRR image is very blurry, while the real X-ray image is much clearer. Could you please help me understand what might be causing this issue? Below are the generated images and the code.
    subject = read(volume='./data/11Spine10B30s')

    # Make a mesh from the CT volume
    ct = drr_to_mesh(subject, "surface_nets", threshold=225, verbose=True)
    SDD = 2000
    HEIGHT = 256
    DELX = 7.1942
    # Initialize the DRR module for generating synthetic X-rays
    drr = DRR(subject, sdd=SDD, height=HEIGHT, delx=DELX).to(device)
    # Make a pose
    rot = torch.tensor([[0.0, 0.0, 0.0]], device=device) / 180 * torch.pi
    xyz = torch.tensor([[0.0, 600.0, 0.0]], device=device)
    pose = convert(rot, xyz, parameterization="euler_angles", convention="ZXY")
    img = drr(pose)
    plot_drr(img)
    plt.savefig("drr_image_plot.jpg")
    plt.show()

Additionally, in the DRR image, the area I marked in red appears abnormal. What could be causing this issue?
Lastly, I have attached the real X-ray image below:

Hi @linquanxu, a few things I would try:

Try to look up the pixel spacing in the real X-ray image (if you have it in DICOM format, this is easy to find).
Also change the height, width, and SDD (all embedded in DICOM) so that the field of view of your DRR matches your X-ray.
What's the dimensions / voxel spacing of your CT? if the CT is not very high resolution, the rendered DRR won't be hi-res either.

Hope that helps, let me know if you have further questions!

Hi, @eigenvivek,
Thank you for your quick response.

The real X-ray image has a PixelSpacing of 0.139 and a DistanceSourceToDetector of 2000.

In the CT DICOM, the PixelSpacing is 0.373, the DistanceSourceToDetector is 1085.6, the DistanceSourceToPatient is 595, and the SliceThickness is 1.0.

How should I set the parameters to make the generated DRR image as close as possible to the real X-ray image? Should I fully follow the parameters of the real X-ray equipment in this case?

Yes, follow the parameters of the real X-ray for your DRR.
diffdrr.data.read should exactly extract the parameters from the CT DICOM.
Real X-rays are very large, and rendering a DRR that big will likely use more memory than you have on your GPU. To overcome this, you can downsample the detector (diffdrr.DRR.rescale_detector_) or use the patch_size argument.

Thank you for your help, I'll try again.


Handle unnamed default exports like anonymous functions (fixes #3040)

PR checklist

[X] Addresses an existing issue: #3040
[X] ~New feature,~ bugfix, ~or enhancement~

[X] Includes tests

[ ] Documentation update

Overview of change:
This PR applies options for anonymous functions expression to default exports of function declarations without name.
Is there anything you'd like reviewers to focus on?
With this change there are no distinction between function declarations and function expression, therefore this two cases were combined.
There is no addition check for default in modifiers for FunctionDeclaration because other cases with omitted name are errors in TS/JS.
Optionally behavior for unnamed functions as default export might be controlled with separate options, however this is likely an overkill.

CHANGELOG.md entry:
[bugfix] space-before-function-paren Handle default exports of functions without names like anonymous functions (fixes #3040)

Thanks @IllusionMH  and @ajafff!


Issue when creating a new route object locally

When creating a new route object locally that doesn't exists in the RIPEDB the script fails with the following error:
Traceback (most recent call last):
  File "/bin/ripe", line 280, in <module>
    ripe_create(args.db, pwd, json_output, key, type, args.dryrun)
  File "/bin/ripe", line 17, in ripe_create
    for i in object_entries:
NameError: global name 'object_entries' is not defined

I guess this issue is solved and can be closed?

I guess this issue is solved and can be closed?


Inconsistent license specification

There is an inconsistent license specification on the github repo, the documentation
http://pymodaq.cnrs.fr/ and setup.py file. The last two specify a MIT licensing while
on github repo one can read GPLv3 (screen capture below)
there also an GPL LICENSE file  (https://github.com/CEMES-CNRS/PyMoDAQ/blob/master/LICENSE)

This doc might help : https://help.github.com/en/articles/adding-a-license-to-a-repository

Choose to publish this code now as a CECILL-B License  https://cecill.info/


Fix defer trace calls

Mainly wanted the UnboxBytes32Any one fixed, but found a few others.
r? @maxtaco

(found debugging https://keybase.atlassian.net/browse/KBFS-1101)

👍

:mag_right: No visual changes found as a result of these commits.

:mag_right: No visual changes found as a result of these commits.


Added randomization of request url and response/request code

The background traffic now has randomized request and response codes corresponding to the selected protocols. Http, now implemented random URL retrieved from SimilarWeb top 10.

  Also, please expand the unit test to the new types.  Otherwise, it looks good.


Revert "Feature: add loading indicator when ReconnectApp is running"

Reverts Expensify/App#48772 as deploying this to staging will break HybridApp and prevent testing.

No need anymore, this is being handled here.


[Feature]: AQLM quantization

🚀 The feature, motivation and pitch
Existing weight-only quantization algorithms could technically quantize model weights down to the 2-bit range. However, they failed at effectively preserving model accuracy. AQLM is a new weight-only post-training quantization (PTQ) algorithm that sets a new state-of-the-art for the 2 bit-per-parameter range. It also provides smaller benchmark improvements compared to existing methods for the 3-bit and 4-bit ranges. Specifically, AQLM outperforms popular algorithms like GPTQ as well as more recent but lesser known methods such as QuIP and QuIP#. AQLM authors also claim that their quantization algorithm pushes the Pareto frontier of the tradeoff between model accuracy and memory footprint below 3 bits per parameter for the first time.
While quantization can sometimes reduce inference latency compared to FP16, this is not guaranteed. In benchmarks, AQLM-quantized models showed moderate latency improvements, with speedups ranging from 1.2x to 2x in most cases, and up to 3.05x in the best case. However, latency reduction was not the focus of AQLM’s designers. Their priority was maximizing accuracy within a target model size, rather than optimizing for speed. Consequently, the latency gains from AQLM quantization are noticeable but not as dramatic as the improvements from other existing quantization algorithms.
Alternatives
No response
Additional context
Here's a really great article on AQLM: https://towardsdatascience.com/the-aqlm-quantization-algorithm-explained-8cf33e4a783e
Here's their GitHub: https://github.com/Vahe1994/AQLM
I just loaded Mixtral 8x7B on a 4090, y'all. I'm going to take a stab at this myself, but would love the help of someone more capable!

It seems there is already a PR: https://github.com/vllm-project/vllm/pull/3287

Wow. I should learn to read. haha. @jaemzfleming has made incredible progress. Closing this issue.


wrong type hint for clojurewerkz.cassaforte.uuids/unix-timestamp

using that function can sometimes lead to the Error Unable to resolve classname: clojure.core$long
(when I use it in the repl, it works fine, but I cant compile my project when I call that function)
I didn't really understood it but you can read it here:
http://dev.clojure.org/jira/browse/CLJ-1753
http://dev.clojure.org/jira/browse/CLJ-1674
https://github.com/jonase/eastwood#wrong-tag
somehow for clojure primitives the typehint should be after the function name
(defn unix-timestamp ^long ...) instead of (defn ^long unix-timestamp ...)

fixed in 003586dde64034280bd1f96b876079946bde927e


Propegate opcode for create in Client module

Signed-off-by: Fredrik Eriksson<EMAIL_ADDRESS>

Thanks for the contribution!  It's going through internal code-review currently, and I'm going to try to write a test or two.  I'll reach out if we need anything else!


Create 0000-01-02-ashlins.md

created a branch, created a file and made a commit, and opened a pull request


API: how to work with fresh type literal or literal type?

With all the type freshness recently added, is there a way to actually use it through the public API?
ts.TypeFlags.FreshLiteral is internal, so that's not an option.
Last time I checked none of the TypeChecker.getType* methods returned a type with the freshness flag set, even though is should definitely be there.
Is freshness a concept that is not intended for API users to know and care about?

Is freshness a concept that is not intended for API users to know and care about?

I want to say this is the answer, however I'll defer to @RyanCavanaugh and @weswigham. Is there any reason you need to know about freshness?

It's intended to be internal. Consumers should just be aware that there can be multiple variants of a literal type with different triple-equals assignability that are still essentially identical types, so generally speaking, using triple equals to check for the presence of a specific type is a bad idea. A relationship like isIdenticalTo or isAssignableTo is almost always more correct.

Is there any reason you need to know about freshness?

Admittedly there are not many use cases and the one I'm presenting here may not be too useful either:
I have a lint rule to detect useless assertions. Currently I have to ignore assertions with literal types as they are used to prevent widening (remove freshness).
declare function identity<T>(p: T): T;
identity('foo' as 'foo'); // assertion is not necessary because identity functions make fresh literal type non-widening
const wideningFoo = 'foo';
const nonWideningFoo = wideningFoo as 'foo'; // assertion is necessary to remove freshness

'foo' as 'foo'; // assertion is necessary to remove freshness
nonWideningFoo as 'foo'; // assertion is not necessary on a non-widening type

The last case in the above example cannot be detected right now.

A relationship like isIdenticalTo or isAssignableTo is almost always more correct.

I wish one of these functions was exposed as part of the public API. Currently I can only compare type identity using triple equals or compare the output of typeToString

I have another use case: I have a rule to detect useless initializers (in ObjectBindingPattern).
It works by looking at the initializer of the VariableLikeDeclaration and check if the destructured property is optional or allows undefined.
Unfortunately the type checker adds SymbolFlags.Optional to properties of fresh object literals if the destructuring has a default initializer:
let {a = '', b = ''} = {a: 1, b: Boolean() ? 'foo' : undefined};

In the above example properties a and b are both marked as optional (even though they will always be present). I could simply ignore that flag if I knew that I'm dealing with a fresh object literal. But there's no way for me to find out that the containing type is a fresh object literal (besides looking at the AST).


The Operator should support TLS for observatorium-api

The operator should allow passing a secret in CR, to be used in observatorium-api pod args.

I do not have permissions to assign a myself, but I'm working on that.

closed in https://github.com/observatorium/deployments/pull/329


Figure out the right Dart solution for InjectedScriptCanvasModuleSource.js

This file has lots of good Canvas and WebGL debugging functionality. It isn't clear the best way to share it with Dart.

Right solution is to not do anything with this file.


Allow lightning.qubit to skip C++ compilation and provide a Python-only binary

Context:
PennyLane-Lightning can now be installed without compiling its C++ binaries and will fall back
to using the default.qubit implementation. Skipping compilation is achieved by setting the
SKIP_COMPILATION environment variable, e.g., export SKIP_COMPILATION=True. This feature
is intended for building a pure-Python wheel of PennyLane-Lightning as a backup for platforms
without a dedicated wheel.
Possible Drawbacks:
Users installing the non-compiled version will obviously have a device that is as fast as default.qubit. A warning has been added for this eventuality.

[ch8104]


Temporary Certificate Should not be issued for DNS01

Bugs should be filed for issues encountered whilst operating cert-manager.
You should first attempt to resolve your issues through the community support
channels, e.g. Slack, in order to rule out individual configuration errors.
Please provide as much detail as possible.

Describe the bug:
I have a GCE ingress with a pre-shared certificate that I want to migrate to cert-manager. According to the GCE a pre-shared certificate should override any certificates stored in secrets. Doesn't seem to actually be true. (Source)
Since I added the TLS secret to my ingress, cert-manager issued a temporary certificate for my DNS01 validated domain, configured the GCE load balancer to use the certificate, and this led to some general mayhem I would like to avoid.
Expected behaviour:
Just don't issue a temporary certificate or at least don't do it by default. If no certificate had been issued the pre-shared certificate would have continued to be used until a correct certificate was issued.
I know there's a lot of context I am not aware of, but skimming through tickets I can't see why the temporary certificate solution came about?

ACME Issuer
How the Temporary Certificate might help

http01
You're going from HTTP to HTTPS. You need GCE to give you a route to your service for validation. Only really necessary if you don't allow HTTP.

dns01
Never

Steps to reproduce the bug:
Steps to reproduce the bug should be clear and easily reproducible to help people
gain an understanding of the problem.
Anything else we need to know?:
Generally ❤ ❤  the work the jetstack team does here! It's just that mean nasty ol' Google Cloud that's getting me down.
Environment details::

Kubernetes version (e.g. v1.10.2): v1.12.10-gke.17
Cloud-provider/provisioner (e.g. GKE, kops AWS, etc): GKE
cert-manager version (e.g. v0.4.0): v0.9.1
Install method (e.g. helm or static manifests): helm

/kind bug

https://github.com/jetstack/cert-manager/blob/ba354e40784fbed5a25e7796aa54472a3d38a058/pkg/controller/certificates/sync.go#L329-L357

Can you share a copy of your Certificate and Issuer resource? From v0.11 onwards, we no longer issue a temporary certificate by default unless the annotation mentioned above (certmanager.k8s.io/issue-temporary-certificate) is present on the Certificate resource.
This annotation is added to Certificate resources automatically by ingress-shim iff acme.cert-manager.io/edit-in-place: "true" is present on the Ingress resource (which should only be the case if you are using ingress-gce with HTTP01)

You're going from HTTP to HTTPS. You need GCE to give you a route to your service for validation. Only really necessary if you don't allow HTTP.

It's actually also required even if you do allow HTTP. See https://github.com/kubernetes/ingress-gce/pull/388 for more context 😄


⚠ GitLab Server has degraded performance

In 998d795, GitLab Server (https://gitlab01.its-telekom.eu) experienced degraded performance:

HTTP code: 200
Response time: 16936 ms

Resolved: GitLab Server performance has improved in 903f846.


Correctly parse '->foo=' (ProcPointer with '=' suffixed method)

Fix #4889

Anyone else want to merge this?

Thank you!


Evict stale VRPs if (buildtime+24h < now() || expired)

The following snippet prevents us from loading a stale VRP file: https://github.com/bgp/stayrtr/blob/master/cmd/stayrtr/stayrtr.go#L269-L278
However, this check does not clear the previous state. The check helps prevent loading new stale data, but does not guard against VRPs in the current cache which became stale.
Two checks should probably be added to help prevent routing based on stale data:

All VRPs should be removed if metdata.buildtime + 24 hours lays in the past
Individual VRPs should be removed if their expires moment has been reached

I have one question about this approach: Do we have an estimate about how close to each other VRPs from the same CA expire?
In the following situation:

A ROA with AS0 for a /16 on the certificate
A ROA with the actual AS for the /24s in use

The VRPs from the second ROA expiring could cause downtime. I think with routinator this is called "unsafe VRPs".
Do we want these VRPs to expire at their 'natural' time? I'm torn.

It is up to the CA to decide when products expire. If a CA chooses to sign things in such a way that one ROA expires at moment X, and another ROA expires at moment Y, all we can do is honor their wishes precisely.

True. It is what was published at some point in time - so it is CA intent.

I've had lots of time to think about the timing..
If the interval is based on calculation, it needs to be an offset thing. Otherwise, we will end up with absurd result like:
a) VRPs {x} expires at time t0, removed at t0
b) VRPs {y} expire at t1 = t0 + 1, removed at t1 + min_interval
Only VRPs {x} will get nuked, then minimum interval has to pass to get around for VRPs {y}.
Because I don't want to expire early, I'm proposing the initial expiry time at
t0+min_interval such that everything is delayed by min_interval.

Only VRPs {x} will get nuked, then minimum interval has to pass to get around for VRPs {y}.
Because I don't want to expire early, I'm proposing the initial expiry time at
t0+min_interval such that everything is delayed by min_interval.

This may be a cause for very interesting outages. In practice objects are generated with timestamps that are really close to each other.
If there are multiple ASNs for a specific prefix they will be different ROA files with expire within seconds (system created) or longer (user creates the individual objects).
The json input does not contain the information needed to batch objects per CA and grouping their expiry that way (only implicitly assuming one prefix has one CA).
Ideally you would expire all VRPs for one prefix and the less specifics of that prefix at once if "close enough to each other". If they are a meaningful time apart (let's say bigger than half the interval between input updates) I would expire them at separate moments (and accept the potential loss of visibility).
"if a VRP for the same prefix or a less specific expires within [time threshold] of this VRP, expire them all at the same time".
"but it is the CA intent" implies "extremely tricky to debug outages that last a very short interval".

It still is CA intent. An RP should not attempt to "fix up" data. The CA is in full control to avoid "tricky to debug outages", by for example re-issuing manifests and CRLs in a timely manner, or by automatically renewing ROAs.

A basic version of this is done, where entries that have expired will be removed every refresh time, even if the backend file/URI data has not changed.
It could be improved later on to check expiry more often, but for now I figure this works good enough


ProcessList native resource

PR Summary
Cross-platform native DSCv3 resource that returns running processes for the current user.
This resource will be used in testing Export functionality, so it is pretty limited at this point.
PR Context
Example on Windows:
C:\DSCv3\bin\debug\process.exe list
{"pid":29016,"name":"Microsoft.SharePoint.exe","cmdline":"\"C:\\Program Files\\Microsoft OneDrive\\23.174.0820.0001\\Microsoft.SharePoint.exe\""}
{"pid":7332,"name":"smartscreen.exe","cmdline":"C:\\Windows\\System32\\smartscreen.exe -Embedding"}
{"pid":27660,"name":"Notepad.exe","cmdline":"\"C:\\Program Files\\WindowsApps\\Microsoft.WindowsNotepad_11.2306.15.0_x64__8wekyb3d8bbwe\\Notepad\\Notepad.exe\" "}
{"pid":10192,"name":"process.exe","cmdline":"\"C:\\DSCv3\\bin\\debug\\process.exe\" list"}
...

Example on Linux:
PS /home/andrew/DSC-3> /home/andrew/DSC-3/bin/debug/process list
{"pid":55140,"name":"pulseaudio","cmdline":"/usr/bin/pulseaudio --daemonize=no --log-target=journal"}
{"pid":55192,"name":"gvfsd-fuse","cmdline":"/usr/libexec/gvfsd-fuse /run/user/1000/gvfs -f -o big_writes"}
{"pid":55320,"name":"gvfsd-metadata","cmdline":"/usr/libexec/gvfsd-metadata"}
{"pid":55341,"name":"pwsh","cmdline":"./PS734/pwsh"}
{"pid":69967,"name":"process","cmdline":"/home/andrew/DSC-3/bin/debug/process list"}
...

@anmenaga in the future, you'll need to submit PRs from a fork rather than a branch from this repo


Maybe need optimization

When I move the cell up and down a few times, duplicate cell appears and order is not correct!
Can you figure it out and fix it?

Maybe you are issuing this: https://github.com/lxcid/LXReorderableCollectionViewFlowLayout/pull/110
Pull the latest code add them to your project manually to check if it helps.


Use Resolvers Instead of Async Imports

Which scope/s are relevant/related to the feature request?
create-analog
Information
Now that we know Zoneless is coming sooner than later as experimental, I think Analog needs to prepare for it. I actually wrote the waitFor function that was later implemented in Analog trying to avoid resolvers, when I didn't really understand that we definitely need to use them instead. Get rid of it. Get rid of all importing directly into the component, as this is not how Angular works, or should work.
It will break Analog when we go Zoneless!
I think this is the problem I keep going back to with Analog from different directions. The markdown components have a bug keeping SSR working correctly. Importing routes doesn't work as expected. We need transfer state for resolvers (provideClientHydration) so that we don't double fetch. This all seems to be problems related to not using resolvers. I have a few solutions.
import { TransferState, inject, makeStateKey } from "@angular/core";
import { ActivatedRoute } from "@angular/router";
import { map } from "rxjs";

// put in resolver for async operations
export const useAsyncTransferState = async <T>(
    name: string,
    fn: () => T
) => {
    const state = inject(TransferState);
    const key = makeStateKey<T>(name);
    const cache = state.get(key, null);
    if (cache) {
        return cache;
    }
    const data = await fn() as T;
    state.set(key, data);
    return data;
};

// put in resolver for non-async operations
export const useTransferState = <T>(
    name: string,
    fn: () => T
) => {
    const state = inject(TransferState);
    const key = makeStateKey<T>(name);
    const cache = state.get(key, null);
    if (cache) {
        return cache;
    }
    const data = fn() as T;
    state.set(key, data);
    return data;
};

// idea accidently came from Brandon
export const injectResolver = <T>(name: string) =>
    inject(ActivatedRoute).data.pipe<T>(map(r => r[name]));

export const injectSnapResolver = <T>(name: string) =>
    inject(ActivatedRoute).snapshot.data[name] as T;

You can see an example of useAsyncTransferState() in my Analog Firebase Repo.
We can use resolvers easier thanks to Brandon's accidental idea trying to understand my though process. I use them, they work great!
Problems to Solve

The .md files should be loaded in the resolver on the server and transferred to the client. The JS bundle for importing them should not even be on the client.
The server-only routes should be automatically injected into the browser with TransferState inside the resolver.
After the regular gets fixed, there should be dependency tracking so that it only gets reran when necessary similar to SvelteKit.

I think my functions above could be added to the framework as utility functions anyone could use.
This has been the only thing I have seen that holds back Analog.
Thanks,
J
Describe any alternatives/workarounds you're currently using
Obviously if Angular adds a way to resolve things in the component with Zoneless, that way would be an option too.
I would be willing to submit a PR to fix this issue

[ ] Yes
[ ] No

Obviously if Angular adds a way to resolve things in the component with Zoneless, that way would be an option too.

This will happen and likely as soon as 18.1 or 18.2. We use the PendingTasks service internally and this is actually how everything contributes to application stability, including ZoneJS. Having a public api for this is a blocker for zoneless becoming stable and  also likely a blocker for graduating from experimental to developer preview.

@atscott - Well when you guys do look at it, perhaps you could look at server only routes (APP_INITIALIZER, except similar to ROUTE_INITIALIZER --- if that existed)...
Glad to know these things are evolving so quickly!
J


Timeline Timestamp Tooltips

The timeline does not tell the user what the exact start and end dates are of the file.
Add a tooltip that displays this.

Gonna also add the improved timeline help toolip.


Allow adding additional libraries to APK

This change adds the additional libs parameter to package.metadata.android.
I added this so specifically address edge cases where my final library did not link against a particular object, but it was still required at run-time - eg. vulkan validation layers.
I tried to go with the "most obvious" approach, but if you have something else in mind, please just let me know. I tested this with my Android device and it seemed to work quite well.
I've added some simple documentation to README.md but if you need anything further, I'd be happy to add it.

Oh, comedy. I didn't see https://github.com/rust-windowing/android-ndk-rs/pull/141 ! Never mind. :)


Wave Sorting of an array

Sorting an array in wave form

Have created a new folder "Array" and placed code there.
Kindly review it and let me know if anything else needs to be changed


Number to roman number generator

Script Title -
what will change -
Instructions

Create a new folder for your script and file/folder name should be appropriate.
Create a README.md in your folder for program Instructions
add requirements.txt if needed

Please add/delete options that are not relevant.

[x] Adding New Code
[x] Improving Code
[x] Improving Documentation
[x] Bug Fix

Programming Language

[x] Python

Happy Coding,

Hi! I would like to work on that for Java and Python :D

Can I work on this? I have my code ready with linting also

I'm already working on this

Does that mean you created this issue for submitting your code?

nope someone else gave me idea for this issue so thought of writing a script and submitting here 😄

Sorry to say but it doesn't add any kind of automation.


Register version 0.4.7

@JuliaRegistrator register()

Registration pull request created: JuliaRegistries/General/67496
After the above pull request is merged, it is recommended that a tag is created on this repository for the registered package version.
This will be done automatically if the Julia TagBot GitHub Action is installed, or can be done manually through the github interface, or via:
git tag -a v0.4.7 -m "<description of version>" 5c8acffcc9b10c36a8023ea7e8b067729f14ffa5
git push origin v0.4.7


Hidden columns can cause crash

Currently using Virtual Schema columns only in ORDER BY but not in the select list can cause a database crash.
Example:
SELECT ID FROM BOOKS ORDER BY PRICE;

Workaround:
Avoid having such columns only in ORDER BY by adding them to the select list in a nested statement.
SELECT ID FROM (SELECT ID, PRICE FROM BOOKS ORDER BY PRICE);

Root cause:
This is caused by SPOT-11018 (internal). Once this is fixed, activate the relevant test marked with SPOT-11018.

@jakobbraun, SPOT-11018 is resolved. I am unblocking this issue.

Retested with 7.1.10. Seems solved. I'll include the newly enabled test with the new version of common documents

I'll close the ticket, the re-enabled test will be included in the eventual csv support release.


Problem 491 was fixed.

The problem was the lack of linking of necessary libraries for Windows. The problem occurred during the construction of the tests, at least there it was noticed.

Great, thanks.


mitigate manifest name with hyphens

What type of PR is this?
kind/bug
What this PR does / why we need it:
Manifest object name  is formed by the namespaced name key. This will lead to resources declared in different namespaces map the same Manifest object.
For example,
A resource foo defined in below 2 namespaces,

resource name lovely-panda in namespace bar
resource name panda in namespace bar-lovely

will map a same Manifest object with name foos-bar-lovely-panda.
Which issue(s) this PR fixes:

Fixes #
Special notes for your reviewer:

Codecov Report

Merging #83 (bb70a24) into main (40fe10b) will increase coverage by 0.26%.
The diff coverage is n/a.

:exclamation: Current head bb70a24 differs from pull request most recent head 066d966. Consider uploading reports for the commit 066d966 to get more accurate results

@@           Coverage Diff            @@
##            main     #83      +/-   ##
========================================
+ Coverage   7.77%   8.03%   +0.26%
========================================
  Files         29      29
  Lines       3780    3806      +26
========================================
+ Hits         294     306      +12
- Misses      3464    3477      +13
- Partials      22      23       +1

Impacted Files
Coverage Δ

...et/clusternet/pkg/registry/shadow/template/rest.go
2.74% <0.00%> (+2.74%)
: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 40fe10b...066d966. Read the comment docs.


PBR: Fix crash when enabling/disabling anisotropy

See https://forum.babylonjs.com/t/inpsector-switching-anisotropic-does-not-have-an-effect-its-only-enables/39637

Snapshot stored with reference name:
refs/pull/13705/merge
Test environment:
https://babylonsnapshots.z22.web.core.windows.net/refs/pull/13705/merge/index.html
To test a playground add it to the URL, for example:
https://babylonsnapshots.z22.web.core.windows.net/refs/pull/13705/merge/index.html#WGZLGJ#4600
Links to test babylon tools with this snapshot:
https://playground.babylonjs.com/?snapshot=refs/pull/13705/merge
https://sandbox.babylonjs.com/?snapshot=refs/pull/13705/merge
https://gui.babylonjs.com/?snapshot=refs/pull/13705/merge
https://nme.babylonjs.com/?snapshot=refs/pull/13705/merge
To test the snapshot in the playground with a playground ID add it after the snapshot query string:
https://playground.babylonjs.com/?snapshot=refs/pull/13705/merge#BCU1XR#0


Could TaskQueue be implemented with heapq?

I have a hypothesis that the big reason why Task and TaskQueue are implemented in C are because the task queue's pairing heap implementation in C is far more performant than implementing it in native python.
Because the entire TaskQueue is in C, with the way it's written it needs to reference the tasks themselves - so then the Task class has to be written in C as well.  This leads to troubles when - for example - we want to reference other errors, make changes to the Task class, etc.  (Okay, so maybe it's just me that has been feeling this pain!)
Something I was poking at is rewriting the TaskQueue to use the heapq implementation.  The big question I have and why I opened this issue is to ask "Is this a path forward?"

Code snippet of a first pass of implementation:

from heapq import heappush, heappop

class TaskQueue:
    def __init__(self):
        self._heap = []
        self._entries = {}
        self._counter = 0

    def peek(self):
        while self._heap:
            task = self._heap[0][-1]
            if task is not None:
                return task
            heappop(self._heap)

        return None

    def push(self, task: Task, key=None):
        if key is None:
            key = core.ticks()

        task.ph_key = key
        task.data = None
        self._counter += 1

        entry = [
            key,
            self._counter,
            task
        ]

        self._entries[task] = entry
        heappush(self._heap, entry)

    def pop(self):
        while self._heap:
            key, _, task = heappop(self._heap)

            if task is not None:
                del self._entries[task]
                return task

        return None

    def remove(self, task: Task):
        # Find the task and tombstone it
        if not task in self._entries:
            return

        entry = self._entries.pop(task)
        entry[-1] = None

    # Compatibility aliases, remove after they are no longer used
    push_head = push
    push_sorted = push
    pop_head = pop

Checking out the additional bin size when enabling heapq it seems smaller than the change introduced by adding _asyncio.  However, I'm not sure on if this is comparable during runtime to the pairing heap implementation.
What should I be measuring during runtime?  Memory usage?  CPU time?  How would I measure these kinds of things?

We have not turned on heapq for CircuitPython, but it probably works
You can see a discussion in the MicroPython PR about a revamp of uasyncio:
https://github.com/micropython/micropython/pull/5332
https://github.com/micropython/micropython/pull/5332#issuecomment-571133960 (choice of queue implementation)
https://github.com/micropython/micropython/pull/5332#issuecomment-598173856 (addition of _uasyncio)
Damien tends to be quite thorough and thoughtful about these kinds of things, so I would not be inclined to second-guess him about the queue implementation. uheapq has been around for a long time and I think he would have used it if it seemed worthwhile. But I have not asked him this specifically.

We are trying not to stray too far from MicroPython on core things, and also would like to contribute things back. So if we can do that without a complete revamp, they are more likely to take it back.

We have not turned on heapq for CircuitPython, but it probably works
You can see a discussion in the MicroPython PR about a revamp of uasyncio: micropython/micropython#5332 micropython/micropython#5332 (comment) (choice of queue implementation) micropython/micropython#5332 (comment) (addition of _uasyncio)
Damien tends to be quite thorough and thoughtful about these kinds of things, so I would not be inclined to second-guess him about the queue implementation. uheapq has been around for a long time and I think he would have used it if it seemed worthwhile. But I have not asked him this specifically.

This is some perfect context, I'll spend some time reading through that thread.  I was looking at heapq just because it was an alternative - definitely not because it'd be the best alternative or even a "good" alternative.


Adding Tests for the repo

Currently we are missing important part of the repo i.e the tests. I believe this couldn't be done in 1 PR. So multiple small PRs could be made. This could be tested by pytest. Then this could be merged with travis-ci.

Can you tell what exactly the test scripts should contain and also one script for one function test or multiple functions?

As per my understanding, I can make a test folder inside MLib and then a loss folder inside the test folder and then different test scripts for all loss functions, right?

@parva-jain I guess I will first initialise test and write an example, so that there would be no confusion. The basic structure would be like for activation.py we can create a file in MLlib/Tests named test_activation.py. Each subfolder could have another sub folder inside it named Tests where tests can be added.

Alright...looking forward to contributing to it.

@parva-jain i have made pr for initialising pytest, after getting merge you could see that I have made a folder tests in which test_activations.py is there, we will mantain same hierarchy.

Alright.

Thanks to @hiteshidudeja , for adding the remaining Test modules for activation Functions. Closing this Finished Issue.


Implement Hough Line2D/Ray2D detection

the voting part is unimplemented for now because i couldn't figure it out 🙃
this is an important part of the library, and needs to be implemented asap

Progress: a simple version of the hough transform works pretty nicely, might need some tweaking, but that's still progress :)

Another progress note: hough transform works, but needs to filter garbage rays and turn them into line segments. Will probably try implementing a RANSAC-style filter for that.

 Will probably try implementing a RANSAC-style filter for that.

RANSAC-style filter? Could you tell me what does it do?

RANSAC is a method of detecting patterns within a data set, by using random samples from the set, and searching for a predetermined wanted pattern
RANSAC implementation here is:

taking a ray, selecting n random points on it
checking along the ray of this point is withthin a line, if so, add a line segment to an array
repeat that t times with different randomization of n points until we find the set of points whithin an array, and return these lines for the array
repeat for the rest of the detected rays

Pretty interesting…

Impelemented - will close this soon🙏


Create performance baseline with latest HH+EJS release

The measurements are very noise due to differing failures between EDR and EJS when replaying RPC calls from scenarios. The increased number of failures with EJS favors EJS as it runs fewer transactions/calls. For this reason I don’t think we should add the baseline to our dashboard.
I can say with relative confidence that we’re ~2x faster on smaller scenarios
Variance in EJS mode and EDR + Rust is a lot lower than in EDR + JS which suggests that the garbage collection of NAPI objects is significantly slower
neptune-mutual stands out which is slower in EDR mode for some reason in the benchmark while it was faster when running the test suite (https://github.com/NomicFoundation/edr/issues/33)
Notebook: https://github.com/NomicFoundation/hardhat/blob/582f49cbc5cf0f697eaab722c676057aeb739a46/crates/tools/python/ejs-baseline.ipynb


Create Eloquent models.

Added following models:
server/app/Abbreviation.php
server/app/Alphabet.php
server/app/Author.php
server/app/Card.php
server/app/Definition.php
server/app/Dictionary.php
server/app/Letter.php
server/app/User.php
server/app/Word.php


bump rustdoc-types to 0.15.0

aha, #135 uses this, closing this pr for that one

Yep, I have prepared for https://github.com/rust-lang/rust/pull/101386 and https://github.com/rust-lang/rust/pull/100762, but would be more than happy to let you take care of the rustdoc JSON format change that comes after that.


feat: install parsers

evergreen should be able to easily download, compile and possibly update parsers for all supported languages. this would be a very convenience feature, akin to lspinstall for lsp

has been added


Unique Groups not working properly

I've copied the UniqueGroups code from DBStructure and after building, the unique groups do not appear in the UniqueModel$Adapter.getCreationQuery() generated code.
If I set each column as unique = true in the @Column annotation it does append the groups at the end however it also puts UNIQUE by the column definition - which wouldn't be what we want.

can you send me your model class here to see what the issue is. Thank you.

did you assign the same uniqueGroups value for both?

I copied the code from here https://github.com/Raizlabs/DBFlow/blob/master/usage/DBStructure.md#unique-groups
(fixing the closing brackets at the end of the @Table annotation)

ok Ill check it out within next couple days and see what's wrong.


fix allocations of P4estMesh2D BCs

Closes #1635

Maybe it makes sense to adapt the 3D case
https://github.com/trixi-framework/Trixi.jl/blob/27d4fd190bd7a8c76a56f9fefd062169a2682d46/src/solvers/dgsem_p4est/dg_3d.jl#L357-L359
also correspondingly (also allocations are not yet observed)
function calc_boundary_flux!(cache, t, boundary_condition::BC, boundary_indexing,
                             mesh::P4estMesh{3},
                             equations, surface_integral, dg::DG) where {BC}

Similarly, one could also add this to
https://github.com/trixi-framework/Trixi.jl/blob/27d4fd190bd7a8c76a56f9fefd062169a2682d46/src/solvers/dgmulti/dg_parabolic.jl#L211-L212
https://github.com/trixi-framework/Trixi.jl/blob/27d4fd190bd7a8c76a56f9fefd062169a2682d46/src/solvers/dgmulti/dg.jl#L463-L464
https://github.com/trixi-framework/Trixi.jl/blob/27d4fd190bd7a8c76a56f9fefd062169a2682d46/src/solvers/dgsem_unstructured/dg_2d.jl#L316-L318

Thanks for your quick review! I checked the places you mentioned before submitting this PR. They do not need any treatment since they don't trigger Julia's heuristic to avoid specialization.


Inconsistent auth header in code sample

Code of Conduct

[X] I have read and agree to the GitHub Docs project's Code of Conduct

What article on docs.github.com is affected?
https://docs.github.com/en/rest/apps/apps#create-an-installation-access-token-for-an-app
What part(s) of the article would you like to see updated?
Create an installation access token for an app
Code sample section:

Additional information

@andyliau Thanks so much for opening an issue! I'll triage this for the team to take a look :eyes:

Thank you for opening this issue! Updates to the REST/GraphQL API description must be made internally. I have copied your issue to an internal issue, so I will close this issue.


Split Second: game doesn't want to boot.

When i try to boot up the game in Windows XP (32bit), using d3d9.dll, it gives me this error message.
I use a Windows XP computer to run Windows XP games. Computer is a Dell Vostro 230, with a Core 2 Duo E8600, 4gb DDR3, Geforce GTX 745 4gb. The game run without the d3d9.dll in the game folder. But supposedly, according to PCGamingWiki, it run much better with DXVK, but even with the steps explained to make it work with DXVK (putting the 32bit d3d9.dll in the game's root), it doesn't boot at all.
Software information
Split Second. Highest details, full screen mode
System information

GPU: Geforce GTX 745
Driver: last Windows XP drivers released for the card
Wine version: N/A
DXVK version: 2.4.1

Windows XP does not support Vulkan and therefor cannot use dxvk.

If you're on Windows XP, you're already in an ideal situation for the vast majority of d3d8/d3d9 games. Even if dxvk could be used in such scenarios (but, as @Blisto91 mentioned above, it certainly can not, since Vulkan came out 15 years after Windows XP), there would be little point to it.

2001 called and wants its operating system back.
Seriously though, not sure what the expectation is here but running any sort of modern software on an OS that has been EOL for over a decade now is a losing proposition.

DXVK is made for older games running on modern OSes such as Windows 10 and 11.

Actually it's made for use on Linux, but happens to help performance in a few scenarios on Windows 10/11 as well.

DXVK is made for older games running on modern OSes such as Windows 10 and 11.

Actually it's made for use on Linux, but happens to help performance in a few scenarios on Windows 10/11 as well.

alright, thanks for the clarification.

2001 called and wants its operating system back.
Seriously though, not sure what the expectation is here but running any sort of modern software on an OS that has been EOL for over a decade now is a losing proposition.

Ok, but there are still more modern solutions made for retro computers, like CuteMouse which is a mouse driver for DOS that takes only like 2 or 3kb of memory, instead of the drivers from back then which used 20-40kb of conventional memory which is A LOT especially when those DOS game require you to have 580kb+ of free conventional memory.
I just though DXVK was one of those modern solutions for older computers, when it's pretty much the other way around, to help running older games on newer computers with modern OSes.


Remove legacy context from styletron plugin

At this point we will stop supporting legacy context for our plugins

!merge


Disable "Events" in attach menu if there are no events

Store the events data in redux so it can be shared between components.

Override failing test not related to this change:
/override "Red Hat Konflux / ols-enterprise-contract / lightspeed-console"


[Bug]: Error installing sysinternals

Prerequisites

[X] I have written a descriptive issue title.
[X] I have searched all issues/PRs to ensure it has not already been reported or fixed.
[X] I have verified that I am using the latest version of Scoop and corresponding bucket.

Package Name
sysinternals
Expected/Current Behaviour
Expecting the package to install.
I get the following error: Can't shim 'ctrl2cap.exe': File doesn't exist.
Steps to Reproduce
scoop install sysinternals

Possible Solution
no!
Scoop and Buckets Version
Current Scoop version:
859d1db5 (HEAD -> master, tag: v0.5.2, origin/master, origin/HEAD) chore(release): Bump to version 0.5.2 (#6080)

'main' bucket:
5c7b94e5d (HEAD -> master, origin/master, origin/HEAD) wakatime-cli: Update to version 1.107.0

'extras' bucket:
371a32481 (HEAD -> master, origin/master, origin/HEAD) texteditorpro: Update to version 31.1.0

Scoop Config
last_update                       aria2-warning-enabled scoop_repo                              scoop_branch
-----------                       --------------------- ----------                              ------------
2024-12-18T17:48:06.2473511+01:00                 False https://github.com/ScoopInstaller/Scoop master

PowerShell Version
Name                           Value
----                           -----
PSVersion                      5.1.19041.1237
PSEdition                      Desktop
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0...}
BuildVersion                   10.0.19041.1237
CLRVersion                     4.0.30319.42000
WSManStackVersion              3.0
PSRemotingProtocolVersion      2.3
SerializationVersion           <IP_ADDRESS>

Additional Softwares
No response

Yep, just experienced the very same issue.
In cache the downloaded archive sysinternals#2024.7.23#709d6d3.zip does not include the 'ctrl2cap.exe' in question.


Addition of the PostActionAttribute

PostActionAttribute
This addition will allow users to use attributes to for code that would have previously been put into the AfterExecute module method. Overriding this method will apply it to every command in the module. Providing command specific behavior is much more complicated, and requires dealing with the CommandInfo argument with runtime checks.
Furthermore, if the same AfterExecute method is to be reused in several different modules, code repetition is inevitable. By using attributes, it provides the user with much more flexibility and control. This feature essentially boils down to the Precondition counterpart.
Usage
Attribute:
public class Cooldown : PostActionAttribute
{
    public override Task ExecuteAsync(ICommandContext context, CommandInfo command,
                                      IResult result, IServiceProvider services)
    {
        if (result.IsSuccess)
            return ApplyCooldownAsync(context.User, command);

        return Task.CompletedTask;
    }
}

Command:
[Cooldown]
[Command("Claim")]
public Task ClaimAsync() => Task.ComletedTask;

Additions
All additions made to the library have mimicked the Precondition class in every way, with the exception being when the ExecutePostActionsAsync method was called in the CommandService. No breaking changes have been made in this PR.

After discussion in the Discord the other day, this is more likely to get done by implementing a duplex pipeline instead (just like what ASP.NET Core does) which is (in most our opinion) a much better design to solve the underlying problem.

I think you said you're okay with that (feel free to rebut if that isn't the case). Still, thanks for getting the ball rolling on the topic or we might not have started thinking about solving it this way.


Updates from dev before new version release

Some minor bug fixes to be added before the MoorDyn release:

Fixed typos across a number of areas, including references to the documentation
Fixed an error that prevented outputs from being written when writelog flag was disabled
Added a missing axial drag coefficient that was also added to MoorDynF discussed in OpenFAST/openfast#1727
Made the internal Eigen the default flag for compiling
Fixed the catenary solver and added support for anchors and fairleads reversed

The tests are failing.
Can this maybe wait for 2.2.2 release? (2.2.2 is also a patch release, it should not take long until we do that)

@sanguinariojoe it can wait, as long as the patches come relatively soon. A few of the bug fixes are significant.

@sanguinariojoe it can wait, as long as the patches come relatively soon. A few of the bug fixes are significant.

Otherwise you can fix the tests. I suppose it is not be a big deal actually

@sanguinariojoe I updated all the tests to have a more accurate gravity value, the same as what is in MoorDynF and OpenFAST. All the tests pass so I am merging this into dev


Mobile-Friendliness Scraper

[ ] Use Google url testing tools API to gather mobile friendliness of agency url

working on this

fixed the mobile friendly test
branch lighthouse_updates is ready to be merged with code updates


Problem masking the consensus sequence

Dear all,
With our latest batch of data, I was running into several problems.
I am running this:
nextflow run nf-core/viralrecon --input $base/samples.csv --protocol 'amplicon' --amplicon_bed $base/primer/Eden_primers.bed --amplicon_fasta $base/primer/Eden_primers.fa --genome 'MN908947.3' --skip_assembly  --outdir $base/results -profile singularity -c dcgc.config -r 1.1.0

I am getting this log:
Caused by:
  Process `BCFTOOLS_CONSENSUS (Lib1)` terminated with an error exit status (2)

Command executed:

  cat MN908947_nCoV_2019_Wuhan.fa | bcftools consensus Lib1.vcf.gz > Lib1.consensus.fa

  bedtools genomecov \
      -bga \
      -ibam Lib1.trim.mkD.sorted.bam \
      -g MN908947_nCoV_2019_Wuhan.fa \
      | awk '$4 < 10' | bedtools merge > Lib1.mask.bed

  bedtools maskfasta \
      -fi Lib1.consensus.fa \
      -bed Lib1.mask.bed \
      -fo Lib1.consensus.masked.fa
  sed -i 's/MN908947_nCoV_2019_Wuhan/Lib1/g' Lib1.consensus.masked.fa
  header=$(head -n1 Lib1.consensus.masked.fa | sed 's/>//g')
  sed -i "s/${header}/Lib1/g" Lib1.consensus.masked.fa

  plot_base_density.r --fasta_files Lib1.consensus.masked.fa --prefixes Lib1 --output_dir ./

Going into the respective work directory causing the issue, I can find this:

The link Lib1.vcf.gz is broken. The directory it is linking to, contains Lib1.vcf, but not Lib1.vcf.gz.
.command.err shows:

terminate called after throwing an instance of 'std::out_of_range'
  what():  basic_string::replace: __pos (which is 29902) > this->size() (which is 29899)
<ourpath>/nfcore/work/73/cf65520a401d66d99182767d1315e4/.command.sh: line 13:  2759 Aborted                 (core dumped) bedtools maskfasta -fi Lib1.consensus.fa -bed Lib1.mask.bed -fo Lib1.consensus.masked.fa
SIGABRT: abort

2a. cat Lib1.mask.bed
MN908947.3	0	39
MN908947.3	4442	6299
MN908947.3	15230	18918
MN908947.3	29847	29869
MN908947.3	29902	29903
2b. cat Lib1.consensus.fa.fai
MN908947.3	29899	12	60	61
After digging a bit, I see that the problem is this. The first command might generate a consensus that is different in length to the original genome due to indels (this has happened in our case). The second command tries to mask the consensus based on coordinates that come from the original genome. Now that the length of the consensus is shorter, there is a clash.
Would you be able to fix this one?
Many thanks in advance
Katrin

Running viralrecon with --callers varscan2,ivar we get the following log:
Caused by:
  Process `VARSCAN2_CONSENSUS (Lib1)` terminated with an error exit status (2)

Command executed:

  cat MN908947_nCoV_2019_Wuhan.fa | bcftools consensus Lib1.AF0.75.vcf.gz > Lib1.AF0.75.consensus.fa

  bedtools genomecov \
      -bga \
      -ibam Lib1.trim.mkD.sorted.bam \
      -g MN908947_nCoV_2019_Wuhan.fa \
      | awk '$4 < 10' | bedtools merge > Lib1.AF0.75.mask.bed

  bedtools maskfasta \
      -fi Lib1.AF0.75.consensus.fa \
      -bed Lib1.AF0.75.mask.bed \
      -fo Lib1.AF0.75.consensus.masked.fa
  header=$(head -n 1 Lib1.AF0.75.consensus.masked.fa | sed 's/>//g')
  sed -i "s/${header}/Lib1/g" Lib1.AF0.75.consensus.masked.fa

  plot_base_density.r --fasta_files Lib1.AF0.75.consensus.masked.fa --prefixes Lib1.AF0.75 --output_dir ./

So it looks very similar.

It looks like the pipeline requires a liftOver at different places.
You can run bcftools consensus with --chain to write a chain file for liftOver, and then run liftOver for the *.mask.bed file.

@saramonzon @svarona have you come across anything like this? What's the best fix?

This should have been fix in https://github.com/nf-core/viralrecon/pull/146. Be great if you can test the code on dev and close this issue if that's the case @ktrns 🙂 Apologies for the delay in getting around to merging.

I assume this is now fixed @saramonzon?

Ping @saramonzon

Yes, this is the fix included in dev, for bcftools consensus as varscan has been dropped!


ListTile widgets when added as a children in ListView widget is scrolling outside its predefined space

Steps to reproduce

Add a column widget
In the column widget created above add a Container followed by expanded ListView widget having listTile widgets as its children
Scroll the listView widget

Expected results
List view widget should scroll in its expanded space only without scrolling outside
Actual results
List view widget is scrolling out and beneath the other widgets.
Code sample
Code sample
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';

void main() {
  runApp(const MyApp());
}

class MyApp extends StatelessWidget {
  const MyApp({super.key});

  // This widget is the root of your application.
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      debugShowCheckedModeBanner: false,
      home: Scaffold(
          body: SafeArea(
        child: Column(
          children: [
            Padding(
              padding: const EdgeInsets.all(50.0),
              child: Container(
                height: 100,
                color: Colors.blueGrey,
              ),
            ),
            Expanded(
              child: ListView(
                children: const [
                  Padding(
                    padding: EdgeInsets.all(19.0),
                    child: ListTile(
                      tileColor: Colors.red,
                      title: Text("Bug"),
                    ),
                  ),
                  Padding(
                    padding: EdgeInsets.all(19.0),
                    child: ListTile(
                      tileColor: Colors.red,
                      title: Text("Bug"),
                    ),
                  ),
                  Padding(
                    padding: EdgeInsets.all(19.0),
                    child: ListTile(
                      tileColor: Colors.red,
                      title: Text("Bug"),
                    ),
                  ),
                  Padding(
                    padding: EdgeInsets.all(19.0),
                    child: ListTile(
                      tileColor: Colors.red,
                      title: Text("Bug"),
                    ),
                  ),
                  Padding(
                    padding: EdgeInsets.all(19.0),
                    child: ListTile(
                      tileColor: Colors.red,
                      title: Text("Bug"),
                    ),
                  ),
                  Padding(
                    padding: EdgeInsets.all(19.0),
                    child: ListTile(
                      tileColor: Colors.red,
                      title: Text("Bug"),
                    ),
                  ),
                  Padding(
                    padding: EdgeInsets.all(19.0),
                    child: ListTile(
                      tileColor: Colors.red,
                      title: Text("Bug"),
                    ),
                  ),
                  Padding(
                    padding: EdgeInsets.all(19.0),
                    child: ListTile(
                      tileColor: Colors.red,
                      title: Text("Bug"),
                    ),
                  ),
                  Padding(
                    padding: EdgeInsets.all(19.0),
                    child: ListTile(
                      tileColor: Colors.red,
                      title: Text("Bug"),
                    ),
                  ),
                  Padding(
                    padding: EdgeInsets.all(19.0),
                    child: ListTile(
                      tileColor: Colors.red,
                      title: Text("Bug"),
                    ),
                  ),
                  Padding(
                    padding: EdgeInsets.all(19.0),
                    child: ListTile(
                      tileColor: Colors.red,
                      title: Text("Bug"),
                    ),
                  ),
                  Padding(
                    padding: EdgeInsets.all(19.0),
                    child: ListTile(
                      tileColor: Colors.red,
                      title: Text("Bug"),
                    ),
                  ),
                  Padding(
                    padding: EdgeInsets.all(19.0),
                    child: ListTile(
                      tileColor: Colors.red,
                      title: Text("Bug"),
                    ),
                  ),
                  Padding(
                    padding: EdgeInsets.all(19.0),
                    child: ListTile(
                      tileColor: Colors.red,
                      title: Text("Bug"),
                    ),
                  ),
                  Padding(
                    padding: EdgeInsets.all(19.0),
                    child: ListTile(
                      tileColor: Colors.red,
                      title: Text("Bug"),
                    ),
                  ),
                  Padding(
                    padding: EdgeInsets.all(19.0),
                    child: ListTile(
                      tileColor: Colors.red,
                      title: Text("Bug"),
                    ),
                  ),
                  Padding(
                    padding: EdgeInsets.all(19.0),
                    child: ListTile(
                      tileColor: Colors.red,
                      title: Text("Bug"),
                    ),
                  ),
                ],
              ),
            )
          ],
        ),
      )),
    );
  }
}

Screenshots or Video

Screenshots / Video demonstration
Screen_recording_20240521_010823.webm

Logs
Logs
[Paste your logs here]

Flutter Doctor output
Doctor output
[!] Flutter (Channel stable, 3.22.0, on macOS 14.5 23F79 darwin-arm64, locale en-IN)
    • Flutter version 3.22.0 on channel stable at /Users/kareenajain/sdk/flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 5dcb86f68f (11 days ago), 2024-05-09 07:39:20 -0500
    • Engine revision f6344b75dc
    • Dart version 3.4.0
    • DevTools version 2.34.3
    ✗ Downloaded executables cannot execute on host.
      See https://github.com/flutter/flutter/issues/6207 for more information.
      Flutter requires the Rosetta translation environment on ARM Macs. Try running:
        sudo softwareupdate --install-rosetta --agree-to-license

    • If those were intentional, you can disregard the above warnings; however it is recommended to use "git" directly to perform update checks and
      upgrades.

[!] Android toolchain - develop for Android devices (Android SDK version 34.0.0)
    • Android SDK at /Users/kareenajain/Library/Android/sdk
    ✗ cmdline-tools component is missing
      Run `path/to/sdkmanager --install "cmdline-tools;latest"`
      See https://developer.android.com/studio/command-line for more details.
    ✗ Android license status unknown.
      Run `flutter doctor --android-licenses` to accept the SDK licenses.
      See https://flutter.dev/docs/get-started/install/macos#android-setup for more details.

[!] Xcode - develop for iOS and macOS (Xcode 15.4)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Build 15F31d
    ✗ CocoaPods not installed.
        CocoaPods is used to retrieve the iOS and macOS platform side's plugin code that responds to your plugin usage on the Dart side.
        Without CocoaPods, plugins will not work on iOS or macOS.
        For more info, see https://flutter.dev/platform-plugins
      To install see https://guides.cocoapods.org/using/getting-started.html#installation for instructions.

[✗] Chrome - develop for the web (Cannot find Chrome executable at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome)
    ! Cannot find Chrome. Try setting CHROME_EXECUTABLE to a Chrome executable.

[✓] Android Studio (version 2023.3)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 17.0.10+0-17.0.10b1087.21-11572160)

[✓] Connected device (4 available)
    • sdk gphone64 arm64 (mobile)     • emulator-5554                        • android-arm64 • Android 14 (API 34) (emulator)
    • iPhone 15 Pro Max (mobile)      • 9246B5C2-A955-42C9-9516-C572BB05DD59 • ios           • com.apple.CoreSimulator.SimRuntime.iOS-17-5 (simulator)
    • macOS (desktop)                 • macos                                • darwin-arm64  • macOS 14.5 23F79 darwin-arm64
    • Mac Designed for iPad (desktop) • mac-designed-for-ipad                • darwin        • macOS 14.5 23F79 darwin-arm64

[✓] Network resources
    • All expected network resources are available.

! Doctor found issues in 4 categories.

Hi @kareenajain12, this is a known issue which is being tracked in
https://github.com/flutter/flutter/issues/86584
https://github.com/flutter/flutter/issues/73315
Your workaround for now should be either wrapping the ListView with a Material or wrapping the ListTile with a Material (going the route of the latter might lead to performance issues so take that under consideration).
Closing this since it is already being tracked in other issues


Question : how to render texture applied colormatrix to CanvasRenderer?

I'd like to render texture which is applied colormatrix to CanvasRenderer.
const resources = PIXI.loader.resources;

const texture = new PIXI.Texture(resources['faces'].texture, new PIXI.Rectangle(1, 1, 6, 6));
const userFaceSprite = new PIXI.Sprite(texture, new PIXI.Rectangle(0, 0, 24, 24));
tint && (userFaceSprite.tint = tint);

userFaceSprite.scale.x = this.props.screenScale;
userFaceSprite.scale.y = this.props.screenScale;

let colorMatrix = new PIXI.filters.ColorMatrixFilter();
userFaceSprite.filters = [colorMatrix];
colorMatrix.blackAndWhite();

if (!this.renderer) {
    this.renderer = new PIXI.WebGLRenderer(12, 12, {
        backgroundColor: 0x000000,
        antialias: false,
        view: this.userFace
    });
}
this.renderer.render(userFaceSprite);

how to render texture in webglRenderer to canvasRenderer?
if is not possible , I just want to get texture applied colormatrix.

Filters are a WebGL-only feature.

The reason is I use The texture as a message Icon(html element) so I had to make many webgl renderer.
when I make many webgl renderer, warning occurred  "createContext.js:14 WARNING: Too many active WebGL contexts. Oldest context will be lost."
Is it possible that just make one WebGL renderer then render to many canvas elements?

But you don't have to make many renderers. You only need to make one.

Create a renderer
Render an icon
Use the extract API to pull out the image
Goto step 2

No need to create a new renderer for each icon if you are just rendering an icon once, then putting it in an html element.

Thanks for helping me.


Add support for multible contact points.

Get multiple contact points between objects and their 3d positions.

https://github.com/user-attachments/assets/169325da-6c07-4057-9ed8-2394e7085593
It's finished, please pull the main branch and command
./build_multiverse.sh --only-modules connectors

To test the functionality, run
multiverse_launch path/to/Multiverse/multiverse/resources/muv/empty.muv

and try this

Thanks :smiley:

Update: I included normal in the contact point. Now the result will be a list of vectors, each vector contains 6 numbers, first 3 are the position of the contact point, last 3 are the normal vector of the contact point. Adding the first 3 and last 3 will give you the tip of the contact vector starting from the position of the contact point with length 1.


Lint infinite jukebox code

OH GOD.

...unsure if I need to do this, or if I just need to make it v. clear what the modern parts are?


Webcamize says gphoto2 didn't detect any cameras, but it did

/Downloads/motion$ webcamize
/usr/local/bin/webcamize: gphoto2 didn't detect any cameras
upstairs:~/Downloads/motion$ gphoto2 --summary
Camera summary:
Manufacturer: Nikon Corporation
Model: D3100
Version: V1.01
Serial Number: 3301069
Vendor Extension ID: 0xa (1.0)
Vendor Extension Description: microsoft.com: 1.0
Capture Formats: JPEG Undefined Type
Display Formats: JPEG, Undefined Type, Association/Directory, DPOF, Script, Apple Quicktime
Device Capabilities:
File Download, File Deletion, File Upload
Generic Image Capture, No Open Capture, No vendor specific capture
Storage Devices Summary:
store_00010001:
StorageDescription:
VolumeLabel: NIKON D3100
Storage Type: Removable RAM (memory card)
Filesystemtype: Digital Camera Layout (DCIM)
Access Capability: Read Only with Object deletion
Maximum Capability:<PHONE_NUMBER>8 (15185 MB)
Free Space (Bytes):<PHONE_NUMBER>0 (15181 MB)
Free Space (Images): 1854
Device Property Summary:
Battery Level(0x5001):(read only) (type=0x2) Range [0 - 100, step 1] value: 100% (100)
Image Size(0x5003):(readwrite) (type=0xffff) Enumeration [
'4608x3072',
'3456x2304',
'2304x1536'
] value: '4608x3072'
Compression Setting(0x5004):(readwrite) (type=0x2) Enumeration [0,1,2,4,5] value: JPEG Fine (2)
White Balance(0x5005):(readwrite) (type=0x4) Enumeration [2,4,5,6,7,32784,32785,32787] value: Automatic (2)
F-Number(0x5007):(read only) (type=0x4) Enumeration [400,450,500,560,630,710,800,900,1000,1100,1300,1400,1600,1800,2000,2200,2500] value: f/4 (400)
Focal Length(0x5008):(read only) (type=0x6) Range [1800 - 5500, step 1] value: 24 mm (2400)
Focus Mode(0x500a):(read only) (type=0x4) Enumeration [1,32784,32785,32786,32787] value: AF-A (32786)
Exposure Metering Mode(0x500b):(readwrite) (type=0x4) Enumeration [2,3,4] value: Multi-spot (3)
Flash Mode(0x500c):(readwrite) (type=0x4) Enumeration [2,4,32784] value: Auto (32784)
Exposure Time(0x500d):(read only) (type=0x6) Enumeration [50,62,80,100,125,166,200,250,333,400,500,666,769,1000,1250,1666,2000,2500,3333,4000,5000] value: 0.0017 sec (166)
Exposure Program Mode(0x500e):(read only) (type=0x4) Enumeration [1,2,3,4,32784,32785,32786,32787,32788,32789,32790,32791] value: Auto (32784)
Exposure Index (film speed ISO)(0x500f):(readwrite) (type=0x4) Enumeration [100,200,400,800,1600,3200,6400,12800] value: ISO 200 (200)
Exposure Bias Compensation(0x5010):(readwrite) (type=0x3) Enumeration [-5000,-4666,-4333,-4000,-3666,-3333,-3000,-2666,-2333,-2000,-1666,-1333,-1000,-666,-333,0,333,666,1000,1333,1666,2000,2333,2666,3000,3333,3666,4000,4333,4666,5000] value: 0.0 stops (0)
Date & Time(0x5011):(readwrite) (type=0xffff) '20230808T101105'
Still Capture Mode(0x5013):(read only) (type=0x4) Enumeration [1,2,32785,32790] value: Single Shot (1)
Burst Number(0x5018):(readwrite) (type=0x4) Range [1 - 99, step 1] value: 1
Focus Metering Mode(0x501c):(readwrite) (type=0x4) Enumeration [2,32784,32785,32786] value: Closest Subject (32785)
UseDeviceStageFlag(0xd303):(read only) (type=0x2) 1
Property 0xd406:(readwrite) (type=0xffff) 'Windows/6.0.5330.0 MTPClassDriver/6.0.5330.0'
Property 0xd407:(read only) (type=0x6) 1

Can you give me some more details?
What camera model, distro, etc. are you using?
Also, can you show me the outputs of gphoto2 --autodetect as well as gphoto2 --summary?

Thanks for fixing the bug! Unfortunately it looks like the Nikon D3100 doesn't support LiveView, which probably means it can't be used as a webcam.

Ah, that sucks! I was just thinking "wow, a modern camera that isn't supported?" because I literally remember the D3100 coming out what felt like really not that long ago—what I didn't realize is that it's been out for 13 years already...

Yeah, I got the camera second hand about five years ago. I'm just trying to come up with a better solution than using a crappy $50 webcam. I was also unable to get my phone (Samsung Galaxy A50) or an older phone (Galaxy Note 8) to work.  Got 'Sorry, your camera does not support generic capture' for both. Looks like the problem is with Gphoto2...

Seems to be more of an exception than a rule that smartphones support the PTP features required for live casting, which is weird because afaik android's implementation of PTP supports live view by default. Probably disabled on most phones for security reasons, but oh well. Could be worth buying a second hand Canon Powershot off of eBay, as most of them seem to support live view.
I'm going to add a list of supported devices in a few minutes when I get home from lunch.

You can check out that list here: https://github.com/weebney/webcamize/blob/master/assets/supported.md


DMX512

How can I set which DMX port (0 to 512) should be listened to.  the DMX port in line 32 of the example script is probably not the right one which I assumed and therefore got an error.  to make it short I can only read port 1 all other ports don't work.
Yours sincerely,
Johannes Fürst

Thanks for reaching out!
You can change the port number to either 0, 1, or 2 depending on what type of ESP32 you have. Some ESP32s don't have a third DMX port, so they can only use port 0 or 1. Typically, port 0 is used to transmit data back to the Serial Monitor on your computer so by default you should use either 1 or 2.
Hope this helps!

sorry i mistold it, where can i set the dmx address for each device, i think that was my question
Am 10. Mai 2023 00:17:35 MESZ schrieb Mitch Weisbrod @.***>:

Thanks for reaching out!
You can change the port number to either 0, 1, or 2 depending on what type of ESP32 you have. Some ESP32s don't have a third DMX port, so they can only use port 0 or 1. Typically, port 0 is used to transmit data back to the Serial Monitor on your computer so by default you should use either 1 or 2.
Hope this helps!
--
Reply to this email directly or view it on GitHub:
https://github.com/someweisguy/esp_dmx/issues/63#issuecomment-1540959698
You are receiving this because you authored the thread.
Message ID: @.***>
Johannes Fürst
Birkkarspitzstr.19
81671 München
Tel.: 089/74664234
Fax.: 089/74664235
Mo.: 0163/6303622

sorry i mistold it, where can i set the dmx address for each device i can only read the adress number one, i think that was my question

This library offers a few different functions for reading DMX. Firstly, the function dmx_receive() can be used to block until a new packet of DMX data is received. It is recommended to call this function before attempting to read data so that you can ensure a new packet of data has actually been received.
After receiving a new packet of DMX, you can use the function dmx_read(), dmx_read_offset(), or dmx_read_slot() to read DMX data. dmx_read_slot() allows you to read a single DMX address by providing the DMX address you want to read. For example:
const dmx_port_t dmx_num = DMX_NUM_1;
const int address = 5;

int value = dmx_read_slot(dmx_num, address);  // Read DMX address 5 into "value"

The readme has information on reading DMX here which may be helpful. If not, let me know if you have any more questions!

Can you Tell me more about the Funktion of "dmx_write_slot()"
Wehren can I set the dmx-address and the dmx-value and for WhatsApp is the return value?
For what I need the "dmx_send()" Funktion I don't know this exactly?
Please send me an codeexample!
When I have finished my work you are interestet about the Sourcecode to test?

I have two integer variable (once for the address and once for the value) are the value of "dmx_write_slot()" compatible?

Can you Tell me more about the Funktion of "dmx_write_slot()"

Sure! This function writes a single slot (or address) of DMX data. For example, if you would like DMX address 5 to be set to value 128, you can use dmx_write_slot(dmx_num, 5, 128);. It returns the value that was written to the DMX address or -1 on error.

For what I need the "dmx_send()" Funktion I don't know this exactly? Please send me an codeexample!

The dmx_send() function is for sending DMX data out to your DMX devices. There are two steps to transmitting DMX data. The first step is to write data. This can be done with functions such as dmx_write() or dmx_write_slot(). Writing data writes to a buffer stored within the DMX driver. The second step is to send the data. This is done with dmx_send(). Here is an example of writing and sending DMX data.

When I have finished my work you are interestet about the Sourcecode to test?

Absolutely! I am not sure if I will be able to do much testing, but I would love to see what you are working on! :)
Let me know if that answers your questions!

I have two integer variable (once for the address and once for the value) are the value of "dmx_write_slot()" compatible?

Yep! This is correct!

Yes this helps me a lot!!!
I send you the Compleetly sketch:
You can use it to create a dmx radio bridge, which means you send the data from the receiver to the transmitter via WiFi!!!


Images in posts not responsive

First off I think you have done a great job with Voyager!
I'm wondering if it would be possible to add the img-responsive class to images in the post body. Or failing that if you know where I can add this in so all my images have this class?

I think this should be do for all images, i will try do this for us.

Voyager can not be responsible for the styling of content you create with it, especially in reference to how it's displayed on your site.  Closing.

Pretty easy fix in the end. It's definitely not a voyager issue though. There's something that needs to be set for the editor, I think that it would be beneficial for a lot of people if it were included in a fix. Can't remember off the top of my head what the fix was right now but as soon as I'm at a computer I'll find it and post it here.


[1.6] Bump go-winio package to v0.6.2

go-winio breaks on go1.22 (at runtime) due to alignment issues. This prevents an error while extracing layers:
Invalid access to memory location
See:

https://github.com/golang/go/issues/65069
https://github.com/moby/moby/pull/47743
https://github.com/microsoft/go-winio/pull/312

Related:

https://github.com/kubernetes-sigs/cri-tools/pull/1387#issuecomment-2120481609

@cpuguy83 I think this change is needed but I think we should update gowinio on hcsshim release/0.9 branch, cut a new tag and vendor in the new tag to update winio in containerd repo. We made this change to fix the exact same issue you are pointing out in https://github.com/microsoft/hcsshim/pull/2117 ,  https://github.com/microsoft/hcsshim/pull/2114 and vendor-ed in new tags in containerd/main and containerd/1.7

Struct alignment changes were backported to go-winio 0.4 (for hcsshim) and 0.5 (for containerd).
This PR is now updated to bump these two deps.

@cpuguy83  could you update the title to reflect upgrade to v0.5.3 instead of v0.6.2?
Thanks!


View all results from CVXR

I am currently using CVXR to develop Lasso results. I am using the “SCS” solver and see that it goes through 5000 iterations. Is it possible to see the results of each of these iterations? I am hoping to develop a plot from the results.
Thanks

You mean something more detailed than what the verbose = TRUE param to solve() provides?
I would think that depends on what the specific solver wants to expose. A crude approach would be set the number of iterations from 1 to 5000 and get the results.


Function Missing a letter & Removed Continue

ball_rect.heigh missing letter t, should be ball_rect.height

continue is removed here to prevent skipping other parts of the loop. In the pygame event loop, using continue immediately after pygame.display.flip() causes the rest of the loop's code to be skipped.

We fixed the typo in an different PR 👍
But let's merge this to remove the continue. Can you include edits to the MDX as well to update the instructions to match first? 🙏

Merged this already, but feel free to submit a new PR for the MDX changes. 😃