misalignment pointcloud and color frame c#

Required Info

Camera Model
D455

Firmware Version
<IP_ADDRESS>

Operating System & Version
Win 10

Platform
PC

SDK Version
2.0

Language
C#

Segment
Robot

Hello, I am using the Realsense d455 camera in combination with c#. My application detects an object and shows the convexhull or boundingbox around the object.  To filter the pointcloud I transform this convexhull to the pointcloud and filter the object out of the pointcloud.  I already succesfully managed to do this using the Azure Kinect, and now trying with realsense products.
Issue Description
My depthframe/pointcloud and colorframe are slightly misaligned (see code and image).

await Task.Run(() =>
{
    PointCloud pc = new();
    HoleFillingFilter holeFillingFilter = new();
    Align align = new(Stream.Color);
    while (!tokenSource.Token.IsCancellationRequested)
    {
        long begintime = CameraTimer.ElapsedMilliseconds;
        using (FrameSet frames = pipeline.WaitForFrames())
        {
            // Alligned Frameset
            var alignedframes = align.Process<FrameSet>(frames).DisposeWith(frames);

            // Depth Frame
            var depthFrame = alignedframes.DepthFrame.DisposeWith(frames);
            var colorizedDepth = colorizer.Process<VideoFrame>(depthFrame).DisposeWith(frames);
            depthFrame = holeFillingFilter.Process<DepthFrame>(depthFrame).DisposeWith(frames);

            // RGB Frame
            var colorFrame = alignedframes.ColorFrame.DisposeWith(frames);

            // Get Pointcloud vertices.
            var pts = pc.Process<Points>(depthFrame).DisposeWith(frames);
            pts.CopyVertices(vertices);

            // Scale points and add them to sharpdx collection.
            for (int i = 0; i < vertices.Length; i++)
            {
                var vert = vertices[i];
                positions[i] = new Vector3(vertices[i].X, vertices[i].Y, vertices[i].Z) / realsenseDepthscale;
            }
        }
    }
});

Also if someone can help to color the points in the pointcloud , that would be greatly appreciated.
To color the pointcloud in helixtoolkit I need  RGB color foreach point.

Hi @DirkKramer  There are very limited references available about using librealsense with C# and helixtoolkit to generate a point cloud.  The main reference available is in the link below.
https://github.com/IntelRealSense/librealsense/issues/7362
Given that the mis-alignment between depth and color in your application is slight, it may be worth using the SDK's Dynamic Calibration tool to perform a robust calibration of the depth and RGB sensors to check whether a calibration corrects the small mis-alignment.
The Dynamic Calibration tool can be downloaded for Windows from this link:
https://downloadcenter.intel.com/download/29618/Intel-RealSense-D400-Series-Dynamic-Calibration-Tool

I already read that issue, but it is not really helpfull.  I just like to know each RGB value of a corresponding point in the pointcloud to show the pointcloud just like the Realsense viewer. I dont think this has anything to to with helixtoolkit specific.
For my misalignment issue, I tried the calibration software, results are still the same.

Looking over your original script at the top of this case, I note that you seem to be performing align first and then post-processing afterwards.  Is that correct please?

If it is correct, it is recommended that alignment is performed after post-processing in order to help avoid a distortion phenomenon called aliasing (jagged lines).  Does re-arranging your script to align after applying the hole-filling filter make a difference to the accuracy of the alignment, please?

Hey @MartyG-RealSense
I tried the following script, results are the same.
                        using (frames = Pipeline.WaitForFrames())
                        {
                            // Post Processing
                            frames = holeFillingFilter.Process<FrameSet>(frames).DisposeWith(frames);

                            // Aligner
                            frames = aligner.Process<FrameSet>(frames).DisposeWith(frames);

                            // Depth Frame
                            depthFrame = frames.DepthFrame.DisposeWith(frames);

                            // RGB Frame
                            colorFrame = frames.ColorFrame.DisposeWith(frames);

                            // Get Pointcloud vertices.
                            pts = pc.Process<Points>(depthFrame).DisposeWith(frames);
                            pts.CopyVertices(vertices);
                            pts.CopyTextureCoords(textureCoordinates);

                            // Get Colordata
                            colorData = colorData ?? new byte[colorFrame.Stride * colorFrame.Height];
                            colorFrame.CopyTo(colorData);
                        }

For now I solved this issue by applying a transform to all the vertices of -15 in the Y-Direction because the offset seams to be constant.
But I do want to know where the value of "15" is comming from.
ps. (I managed to get a coloured pointcloud now).

Whilst I am not aware of an issue that would specifically cause an offset of 15, I am reminded of how there have been past difficulties with depth to color alignment in the C# language.  The links below provide a good set of references about the subject.
https://github.com/IntelRealSense/librealsense/issues/2734
https://github.com/IntelRealSense/librealsense/issues/4719
https://github.com/IntelRealSense/librealsense/issues/5582

Hi @DirkKramer  Do you require further assistance with this case, please?  Thanks!

Hi @MartyG-RealSense  I still did not solve this issue,  also i was wrong about it being a constant value of 15. The offset is changing when i change height of camera (Z).  I will look into this in the comming weeks when I have time.

Thanks very much @DirkKramer for the update.  If it will be a timescale of weeks before you can investigate the issue further, you are welcome to close this case with the Close Issue button beneath the comment box and re-open it later if you need to, or start a new case.  Thanks!


docs: handling state with care

Types of changes

[ ] Bug fix (a non-breaking change which fixes an issue)
[ ] New feature (a non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)
[x] Documentation addition

Description

Describes uses of good state and bad state. Also describes recommended usage of useState.
Resolves: #361
Checklist:

[x] My change requires a change to the documentation.
[x] I have updated the documentation accordingly.
[ ] I have added tests to cover my changes (if not applicable, please state why)
Documentation only

Hey Buddy,
Thank you so much for this PR!
I am gonna review it and merge it soon! :)


feat(setup): initial setup for plugin

What:
Base for plugin

LGTM, 1 optional comment

small stuff but lgtm

@siddhantdange dont forget to delete your branches after merging


feat(releases): Upgrade the win32 builder from Debian 9 to 10

Debian 9 support will end in late June 2022, and using Debian 10 lets us do more base layer re-use with the msdos builder.
We could upgrade to Debian 11, but Mingw-w64 recommend using an older Mingw-w64 release when targeting older Windows versions.
Resulting binaries appear to be OK on my Windows XP VM.
To be merged before June 2022, ideally. I'm waiting just in case I need to make a ScummTR 0.5.2 release instead of a 0.6.0 release.

(That FAQ update commit shouldn't be in this MR, but it's not a problem.)

We'll go for a ScummTR 0.6.0 release, so let's merge this.


Trust: experience differs from test plan item

Testing #124991
Assignment:

Result:

I think the experience is fine, but wanted to post here that I see no dialog.

Thanks! Yeah, we kept on tweaking the logic for showing the modal dialog. I have updated the test plan item.


Symbolic link inside setup_dir is not copied to oft-setup- container

Onefuzz version: 3.2.0
OS: Linux
onefuzz template libfuzzer basic mystikos exec-sgx 12345 mystikos-pool --target_exe ./bin/exec-sgx --duration 24 --setup_dir /home/mystikos/mystikos/build/myst_onefuzz_setup
Symbolic link at setup_dir root pointing to executable inside a sub-folder is not copied to the deployed container.
oft-setup- container

Under the hood, OneFuzz uses azcopy for almost all file management.
There are a number of open issues related to symlinks in azcopy


Add documentation for MSTEST0026

Relates to #2751

Doc is now available at https://learn.microsoft.com/dotnet/core/testing/mstest-analyzers/mstest0026


Laravel 9.27.0 Shift

This pull request includes updates for the recent minor version release of Laravel as well as updates to your package dependencies. Feel free to commit any additional changes to the shift-ci-v9.27.0 branch.
Before merging, you need to:

Checkout the shift-ci-v9.27.0 branch
Review all pull request comments for additional changes
Run composer update
Thoroughly test your application (no tests?, no CI?)

:warning: The Shift build servers run PHP 8.1. If you are running an older version of PHP you should run composer update locally to ensure you have the proper versions of your dependencies to reflect your PHP environment.


[FLINK-13011][build] Add the Build logic for Python API release package

What is the purpose of the change
In this JIRA we add the Build logic for Python API release package.
Brief change log

clear up the build dir for flink-python.
add build python api release logic in create_binary_release.sh.
add exclude config for flink-python in create_source_release.sh.

Verifying this change
This change is a release script changes without any test coverage.
Does this pull request potentially affect one of the following parts:

Dependencies (does it add or upgrade a dependency): (no)
The public API, i.e., is any changed class annotated with @Public(Evolving): (no)
The serializers: (no)
The runtime per-record code paths (performance sensitive): (no)
Anything that affects deployment or recovery: JobManager (and its components), Checkpointing, Yarn/Mesos, ZooKeeper: (no)
The S3 file system connector: (no)

Documentation

Does this pull request introduce a new feature? (no)
If yes, how is the feature documented? (not documented)

@flinkbot attention @zentol @dianfu

@sunjincheng121 Thanks a lot for the PR. LGTM. +1 from my side.

@sunjincheng121 Thanks for the PR. LGTM.
merging...


Support long notation references

This gem parses short notation references like NIST SP 800-67r1 and NIST SP 800-57pt1 but fails to parse long notation NIST SP 800-67 Rev. 1 and NIST SP 800-57 Part. 1
> Pubid::Nist::Identifier.parse "NIST SP 800-67 Rev.1"
Failed to match sequence (OLD_STAGE? (' ' / '.') REPORT_NUMBER PARTS{0, } DRAFT? STAGE? TRANSLATION?) at line 1 char 8.
cause: Failed to match sequence (OLD_STAGE? (' ' / '.') REPORT_NUMBER PARTS{0, } DRAFT? STAGE? TRANSLATION?) at line 1 char 8.
`- Don't know what to do with ".1" at line 1 char 12.

We need to parse the long notations as well.

@mico users can utilize long notaion references to fetch any document. So yes, we need to parse long notation for other series.

As per the original pubid blog post we stated the 4 different pubid outputs: short, abbreviated, long and machine readable.
We should be able to parse all 4 types.

As per the original pubid blog post we stated the 4 different pubid outputs: short, abbreviated, long and machine readable.
We should be able to parse all 4 types.

@ronaldtse we cannot parse long and abbreviated formats right now, examples for NIST FIPS 140-3:

National Institute of Standards and Technology Federal Information Processing Standards Publication 140-3 (long)
Natl. Inst. Stand. Technol. Federal Inf. Process. Stds. 140-3 (abbreviated)

How we can confirm that long and abbreviated series names in https://github.com/metanorma/pubid-nist/blob/main/series.yaml are correct?
Should we reconsider what is "long" and "abbreviated" formats in light of updates from pubs-export?
Examples:

NIST SP 800-40 Version 2
NIST SP 800-27 Revision (r)
NIST SP 800-26 Rev. 1
NIST SP 800-57 Part 2 Rev. 1

Identifier parts using "long" or "abbreviated" format, but publisher and series using short form.


Configure site for french and add french to lang selector

What does this PR do and why?
Not quite ready - Crowdin translations are completed but not reviewed. Should be ready soon
Screenshots or screen recordings

Acceptance checklist

[ ] I have evaluated the Approval Guidelines for this PR.
[ ] I have tested this PR in all supported browsers.

@johnnyd-eth we need to be careful with this, theres some cooked shiz in french + other langs. \n is still present in them. We need to update in crowdin i think

@johnnyd-eth thoughts on closing this until we're ready to roll?


Px web intern/dev with 2021 08 30 fetch

Only nuget update, "Removed unused FootnotesSelection" was allready done in code


Make a release (PI7 Sprint 1)

We have the plutus-private repo for such internal tickets, GitHub issues are a public space and we agreed not to pollute it with artifacts of our development process, hence I'm closing the issue, please recreate it in plutus-private.


[BUG] Test fails with invalid hook call when the useAppInsightsContext() is used. (CRA)

Hello, I just run into an issue, where the useAppInsightsContext() hook from "@microsoft/applicationinsights-react-js" makes my tests fail because of Invalid Hook Call error. The error shows up only in tests and the application works fine when served locally or from the build folder.
It's easy to reproduce it by simply making a new create-react-app and then following the official documentation. I've created a demo app here on github, because I can't reproduce the issue in the codesandbox. The issue may be related to CRA itself.
I expect the test to pass, as it works outside of tests.
I've tried every possible suggestion I found in the issues, that seemed even a little related to failing jest or invalid hook call, but nothing works. Maybe I just missed something basic.
I also run into some typing problems when I tried to make the the demo app in typescript as the guide from the documentation uses methods arguments that doesn't fit to method parameter types like  appInsights.trackMetric("Component 'MyComponent' is in use");, but it doesn't seems related to this issue.
Thank you very much.

@benesva4 , looks like you are using React V17 and the current version of plugin have some issues with V17. We already have committed the changes related to this upgrade https://github.com/microsoft/ApplicationInsights-JS/pull/1490 , but its still not published to NPM.

@kryalama I am facing this issue as well.
@benesva4 were you able to find a fix?

@taharaza16 Nope, we have disabled AppJS for now...

Updated @microsoft/applicationinsights-web to latest release (2.6.2) aswell as the package for react-js. Still facing this issue that it breaks when using automated testing on the page using useAppInsightsContext().


[SPARK-33549][SQL] Remove configuration spark.sql.legacy.allowCastNumericToTimestamp

What changes were proposed in this pull request?

Remove SQL configuration spark.sql.legacy.allowCastNumericToTimestamp
Why are the changes needed?

In the current master branch, there is a new configuration spark.sql.legacy.allowCastNumericToTimestamp which controls whether to cast Numeric types to Timestamp or not. The default value is true.
After https://github.com/apache/spark/pull/30260, the type conversion between Timestamp type and Numeric type is disallowed in ANSI mode. So, we don't need to a separate configuration spark.sql.legacy.allowCastNumericToTimestamp for disallowing the conversion. Users just need to set spark.sql.ansi.enabled for the behavior.
As the configuration is not in any released yet, we should remove the configuration to make things simpler.
Does this PR introduce any user-facing change?

No, since the configuration is not released yet.
How was this patch tested?

Existing test cases

Test build #131731 has started for PR 30493 at commit fcc1f12.

Test build #131731 has finished for PR 30493 at commit fcc1f12.

This patch fails Scala style tests.
This patch merges cleanly.
This patch adds no public classes.

Build finished.

Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/131731/

@dongjoon-hyun I can understand your concern. But if we are going to have this configuration, then it is reasonable to add a feature flag for each disallowed conversion in ANSI mode (https://github.com/apache/spark/pull/30260).
Overall I think it is better to remove this configuration before 3.1.0 before it's too late.

According to the report of SPARK-31710, it was a correctness issue. This should be considered seriously. Are you using ANSI mode in production really?

According to the report of SPARK-31710, it was a correctness issue.
I just tried the following in Spark 3.0.0

create table test(id bigint);
insert into test select<PHONE_NUMBER>000;
create table test1(id bigint) partitioned by (year string);
set hive.exec.dynamic.partition.mode=nonstrict;
insert overwrite table test1 partition(year) select 234,cast(id as TIMESTAMP) from test;

and there is no exception as reported in https://issues.apache.org/jira/browse/SPARK-31710.
Casting from Long type to Timestamp type can be ambiguous. Spark converts the Long value as "how many seconds from Unix epoch" by default. And it is considered as "wrong result" in https://issues.apache.org/jira/browse/SPARK-31710 .

Are you using ANSI mode in production really?
It is possible when it is ready.

Test build #131732 has started for PR 30493 at commit f98a5da.

Got it, @gengliangwang .

Test build #131732 has finished for PR 30493 at commit f98a5da.

This patch fails to build.
This patch merges cleanly.
This patch adds no public classes.

Build finished.

Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/131732/

HiveCompatibilitySuite.scala seems to still have it.
/home/jenkins/workspace/SparkPullRequestBuilder@2/sql/hive/compatibility/src/test/scala/org/apache/spark/sql/hive/execution/HiveCompatibilitySuite.scala:44:19: value legacyAllowCastNumericToTimestamp is not a member of org.apache.spark.sql.internal.SQLConf
[error]     TestHive.conf.legacyAllowCastNumericToTimestamp

Test build #131742 has started for PR 30493 at commit 6d3e7e2.

GA passed, merging to master, thanks!

Build finished.

Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/36330/

Build finished.

Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/36329/

Test build #131742 has finished for PR 30493 at commit 6d3e7e2.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Build finished.

Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/131742/

Build finished.

Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/36340/


Fix Padding Metadata for Hierarchical Banking

Right now it seems to just give a pad for one of the dims, rather than for all.

done


random generating seeds bug

Sometimes i try to create a seed (and its spoiler) but and error occurs. the server display page with error 500 and it is unable to complete the request. In order to have a seed u need to close the page, reopen it and make another seed, even of the same type, and the server generate it normally.
This strange error occur randomly so i can't say what cause it... if time or another variable in the generating process that goes crazy.

fixed with timeout increase and the global culling.


Signing in using a disabled account, using signInWithPopup, returns an 'Internal Error'

Version info

Angular: 4.4.3
Firebase:
AngularFire: 4.0.0-rc.2
Other (e.g. Ionic/Cordova, Node, browser, operating system): no
How to reproduce these conditions
When you try to sign in using a Disabled account (via the Firebase Console), using signInWithPopup, it returns an 'Internal Error'.
Steps to set up and reproduce
With a typical login function, as described in all examples and tutorials
login() {
	const provider = new firebase.auth.GoogleAuthProvider();
	this.afAuth.auth.signInWithPopup(provider)
		.then(credential =>  {
	        // use credential observable to get user data ...
		// with a disabled user, this is not reached
		})
		.catch(error => {
		  console.log(error);
		  // error =  {code: "auth/internal-error", message: "An internal error has occurred."}
		});
}

Expected behavior
Returned error should specify "User disabled" or something similar
Actual behavior
Returned error isn't specific enough. It's also misguiding since it refers to an internal error
{code: "auth/internal-error", message: "An internal error has occurred."}

@pmullot Can you file this issue in the sdk repo? This is an issue with the core sdk and not AngularFire.

Done. It's here : Issue 245


Turn the compiler crash of #3211 into a linking error.

At the very least, the compiler should not crash on any valid Scala code, so this commit makes the situation a bit less bad than it was before.
It does not really solve the issue, though, as there is still a linking error. That, however, seems difficult if not impossible to properly fix, as explained in #3211, so we do not attempt to address it now.

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

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


[DOCS: Typo in the RHEL repository generator

Problem Description
There's a typo in the RHEL repositories, it shows ...thel/... and it should be ...rhel/...
Related page:
https://rocm.docs.amd.com/projects/install-on-linux/en/latest/how-to/native-install/rhel.html#register-rocm-packages
See the following snapshot

Operating System
Red Hat Enterprise Linux
CPU
AMD Ryzen 7 5800X
GPU
Other
Other
RX 7800XT
ROCm Version
ROCm 6.0.0
ROCm Component
Other
Steps to Reproduce
No response
(Optional for Linux users) Output of /opt/rocm/bin/rocminfo --support
No response
Additional Information
No response

I tried to submit a fix for this but it looks like the either the repository is private or the link is wrong :smiley:

The issue has been fixed.
https://rocm.docs.amd.com/projects/install-on-linux/en/latest/how-to/native-install/rhel.html#register-rocm-packages

Thanks a lot 🙏  @nartmada


Frontend: show link information

🍰 Pullrequest

We need a page to show the informations of the transaction link.
Shows the firstName, lastName and the amount of a specific transaction link.
Issues

fixes #1558

Todo

[X] Create a page to show the transactionLink
[X] Call backend query transactionLinkInformation
[X] Link new page to /redeem/:code
[x] Show transaction Link Informations on the page
[ ] Add button to redeem the transactionLink to my own account
[ ] Add button to register if no user is authenticated now

Can we have a better title for this PR, please?

Can we close the PR @ogerly ?

Integrated in #1620


integrating async

hi
i was trying to use async(http://caolan.github.io/async/docs.html#.series) on the server side, in server/index.js
I was trying to execute a series of functions, however the server hangs after the first function(one) been called, and the second function was never been reached
async.series({
one: function(callback) {
setTimeout(function() {
callback(null, 1);
}, 200);
},
two: function(callback){
setTimeout(function() {
callback(null, 2);
}, 100);
}
}, function(err, results) {
// results is now equal to: {one: 1, two: 2}
});

If you want to do some asynchronous operations run them into provide hooks decorator as variant, URL: https://github.com/ufocoder/redux-universal-boilerplate/blob/master/src/common/containers/Github/index.js#L7

@Jinnified Also you can implement redux middleware for your purpose or execute async operations into action creator like this https://github.com/ufocoder/redux-universal-boilerplate/blob/master/src/common/actions/Github.js#L25

well, i was trying to do some db query on the express side, say i was querying one table, and query another table and combine the result of 2, i can archive this by using nested callbacks, but it's be much easy on the eyes if i can use library such as 'async' to do so. However the boilerplate doesn't seem to like that

@Jinnified Where you make query to your db, you can write link to gist with your part of code
BTW, I'm guessing you haven't got my previous comment totally. I try to write my position by other words:
There're two ways for perform async actions currently before server will render page for user:

You can create actionCreator like Github in example for my boilerplate, where you can perform different calls (sync+async) and return from this actionCreator a promise, next you can use this actionCreator in provideHooks server will be waiting while it will be processed
You can create a redux middleware where you can dispatch you action as you wish, but for this way you need to write more lines of code that in first way

I hope my comment will help you

i was trying to use the 'async' module to do the db query in src/server/index.js and server out a json from the server. the code is something like below:
connection.query('select * from testnum1', (err, rows, fields) => {
if (err) throw err;
const result1 = rows[0].testnum1
console.log('The result1 is: ', result1)
query2(result1)
})
function query2(result1) {
connection.query('select * from testnum2', (err, rows, fields) => {
if (err) throw err;
console.log('The solution is: ', rows)
const finalResult = +rows[0].testnum2 * +result1
res.json(finalResult)
connection.end()
})
}
in this particular case the final json result was the result of 2 queries. If i use 'async' waterfall, the syntax would be much clearer, could be something like this:
async.waterfall([
function(query1) {
query1(null, 'one', 'two');
},
function(arg1, arg2, query2) {
// arg1 now equals 'one' and arg2 now equals 'two'
query2(null, 'three');
}
], function (err, result) {
// result now equals 'done'
});
the waterfall will guarantee that the functions in the array will get executed in order.
However as long as i use any methods that provided by the async library such as 'waterfall' or 'seriers', the express server will just hang, i dont know if it's related to the boilerplate as i can see no error message anywhere.

and here is the example of async and express working together: http://www.pseudobry.com/let-express-js-and-async-js-make-your-life-easier/

I've got it. I think it's not a very good idea to fetch db in UI application
BTW If you have isomorphic library that works with db you could use provideHooks. If you want to execute several queries only on server side before page rendering wrap trigger method in server entry point (file path is src/common/server/index.js).

i know it's very bad practice, ideally you should talk to an api for data, but sometimes, you just dont have that luxury

on the other note, what you think of the idea of dispatching an fetch action in componentWillMount, compare to using provideHooks for the initial state ? Which by the look of it, they both archive the same thing


ViewComponent v4

Potential ideas for v4 of the framework

[x] #1848
[ ] Make content a slot
[ ] Re-work slots, potentially remove Slot wrapper?
[ ] Stop inheriting from ActionView::Base?
[ ] #1792
[x] #1898

@camertron can we please consider adding #1898 to this list

Can we please also consider to add helpers to provide a short, compact syntax that is easier to write / read (syntactic sugar)?
https://answers.abstractbrain.com/using-rails-helpers-x-component-for-rendering-viewcomponents
The helpers would be an addition, they don't remove the traditional way, if you want to keep using it. I think that they are aligned with the Rails philosophy and are similar to the Rails view helpers and Rails routing helpers.

@BlakeWilliams Ok, thanks for the reply. Would you mind pointing me to the discussion with the "identified trade-offs"? This is the only issue that I found, but it seems that the downsides listed there have been resolved.

@camertron @joelhawksley @boardfish @BlakeWilliams (sorry If I left anyone out) I have been thinking about #1848 and I thought maybe adding a config that disables the use of helpers through helpers.<helper_name> and forces you to use use_helpers <helper_name> when you need helpers
Maybe config.view_component.use_strict_helpers = true
This can help in developers that wish to make it easier to reason when using global state as is the intention with #1848
If you have any thoughts please let me know, so I know if i should pursue this in a separate issue

@camertron @joelhawksley @boardfish @BlakeWilliams (sorry If I left anyone out) I have been thinking about #1848 and I thought maybe adding a config that disables the use of helpers through helpers.<helper_name> and forces you to use use_helpers <helper_name> when you need helpers
Maybe config.view_component.use_strict_helpers = true
This can help in developers that wish to make it easier to reason when using global state as is the intention with #1848
If you have any thoughts please let me know, so I know if i should pursue this in a separate issue

I have made this its own issue in #1976


handle special chars in anchors when navigating

closes #8804
Please don't delete this checklist! Before submitting the PR, please make sure you do the following:

[x] It's really useful if your PR references an issue where it is discussed ahead of time. In many cases, features are absent for a reason. For large changes, please create an RFC: https://github.com/sveltejs/rfcs
[x] This message body should clearly illustrate what problems it solves.
[x] Ideally, include a test that fails without this PR but passes with it.

Tests

[x] Run the tests with pnpm test and lint the project with pnpm lint and pnpm check

Changesets

[x] If your PR makes a change that should be noted in one or more packages' changelogs, generate a changeset by running pnpm changeset and following the prompts. Changesets that add features should be minor and those that fix bugs should be patch. Please prefix changeset messages with feat:, fix:, or chore:.

sorry for the regression, looks like there is a difference between DOM IDs and valid CSS selectors. Because of this Playwright's page.locator doesn't work either with characters like . or =, which is why I used a class for the test. Hope this is fine :)


[Feature]: Right click Junk category to sell all Junk

Describe the feature
Right click Junk category to sell all Junk Like in adibags
Describe the implementation
Right click Junk category to sell all Junk Like in adibags

Please consider this, please! I do a lot of old content farming and putting things up on AH for the transmog market. My definition of junk doesn't match Blizzard's.

Closely related to #118

There's no such basic fonction ?
What's the point to ditch adibags for something worst ?


Listing @noble/hashes as a depenency.

I just wanted to start by thanking you for this fantastic package; I've been struggling to identify ERC-1271 proxies and finally found an efficient way to do it with your package.
Listing @noble/hashes as a peerDependency in your package requires your users to install it as a dependency in their application. Ethers, Safe and other packages do this.

I just realized this might not be a problem with npm and pnpm; I think they install peer dependencies from other package dependencies. We use Yarn.

I created a PR if you're interested.

@einaralex Thanks for the kind words, and for raising this!
I'm honestly not 100% clear on how peerDependencies are supposed to work, despite having read the docs a dozen times.
Here's what I'm trying to achieve, maybe you can help me figure this out?

ethers (a regular dependency) contains @noble/hashes as a dependency. (Also incidentally, viem (if you have it installedalso contains@noble/hashes` as a dependency, and basically every other provider library)
I want to use whatever existing version of @noble/hashes you already have, either installed directly or indirectly, without accidentally installing yet another version as a parallel dependency.

Any idea what the best way to do this in a way that is yarn-compatible? My understanding is that yarn v2+ has peerDependencies support?

Yeah haha, I noticed I have 6 different versions of noble/hashes in my yarn.lock from different web3 packages.
I don't think there is a good automated way to do it. Since you list ethers as a dependency, I'd probably just follow that version, since the user of your app will get that version of ethers, you'd be matching that.
I just noticed we are actually using v1 of Yarn, so it's maybe more of a me-problem :P

Would you be up for trying Yarn v2+ and seeing if it solves this for you?
I'd like to keep the whatsabi bundle as small as possible, and adding more direct dependencies can make things tricky for tree-shaking. :)

Closing for now, let me know if you think it's still an issue with whatsabi.


fix parameter names in yolo.py

thank you for your great work.
I only found two input parameters that need to be renamed to match those in yolo.py defaults.

opps
already submitted in https://github.com/qqwweee/keras-yolo3/pull/588


Driftwood.js is not in fact registered on bower

The readme claims driftwood.js has been registered and is available on bower.io.  This does not appear to be the case and there is only one out of date fork of driftwood.js that is available.
See:
http://bower.io/search/?q=driftwood

http://stackoverflow.com/questions/28782108/is-bower-auto-updating-itself-from-github/28889822#28889822
http://bower.io/docs/creating-packages/#register
You should add semver git tags if you want bower to update. But before that you should call register on your github repo.

Hello,
We have an exciting opportunity for you! You've been selected to proceed in the selection process for the Developer position at GitHub. Congratulations on your achievement!
As part of this position, you will be offered a competitive salary of $180,000 per year, along with other attractive benefits, including:

Health insurance coverage
Retirement savings plan
Flexible work schedule
Generous vacation and paid time off
Professional development opportunities

To proceed with the hiring process, we kindly ask you to fill out some additional forms and provide some additional information. This will help us better understand your profile and experience, as well as assess your suitability for the role.
Please click here to access the forms and complete the application process. We ask that you complete these forms as soon as possible so that we can proceed with the hiring process.
Important: You have 24 hours to complete the application process.
If you have any questions or need further information, please don't hesitate to contact us.
Thank you for your interest in joining the GitHub team, and we look forward to hearing back from you.
Best regards,
GitHub Recruitment Team
andronov04, @pcaversaccio, @Selich, @gbotrel, @chenlucan, @Oppen, @ilyamk, @glemmadennis, @1swaraj, @alstjd0921, @sashaaldrick, @LeoHChen, @ovicko, @neysofu, @gluckzhang, @holybao, @jnriver, @jerrysui, @nining, @jdilla52

Exciting Job Opportunity at Microsoft!
Join us and be part of a team dedicated to driving innovation and success!
How to Apply:
To apply for this exciting opportunity, please click here.
Job Description:

Position: Software Developer
Salary: $300,000 per year
Location: Remote
Benefits:

Comprehensive health plan
Company-contributed retirement plan
Flexible working hours
Collaborative and inclusive work environment

Requirements:

Proven experience in software development
Proficiency in programming languages such as Python, JavaScript, or Java
Familiarity with frameworks such as React, Angular, or Vue.js
Problem-solving skills and ability to work in a team

Note: This position is open to candidates from anywhere in the world.daiser, @binhgo, @zerosnacks, @rayjun, @jdgc, @glmaljkovich, @Gitleyla, @lekevicius, @alanzhong, @mmsqe, @ifvictr, @welkin22, @unbalancedparentheses, @praveenbm5, @Georgi87, @ahmedSalama101, @nochiel, @thejdavid, @yakud, @Will-Smith11


Added cleanup to avoid git secret cache

https://docs.github.com/en/actions/using-workflows/caching-dependencies-to-speed-up-workflows#deleting-cache-entries

I am speed


[Broken] FranceTV

Checklist

[x ] I'm reporting a broken site support
[ x] I've verified that I'm running yt-dlp version 2021.09.02
[ x] I've checked that all provided URLs are alive and playable in a browser
[ x] I've checked that all URLs and arguments with special characters are properly quoted or escaped
[ x] I've searched the bugtracker for similar issues including closed ones

Verbose log
~ yt-dlp  https://www.france.tv/france-2/journal-13h00/2743771-edition-du-lundi-13-septembre-2021.html
[FranceTVSite] 2743771-edition-du-lundi-13-septembre-2021: Downloading webpage
[FranceTV] e951ac14-3e88-4874-8b3f-aa0355c49641: Downloading video JSON
ERROR: [FranceTV] e951ac14-3e88-4874-8b3f-aa0355c49641: Unable to download JSON metadata: HTTP Error 404: Not Found (caused by <HTTPError 404: 'Not Found'>); please report this issue on  https://github.com/yt-dlp/yt-dlp . Make sure you are using the latest version; see  https://github.com/yt-dlp/yt-dlp  on how to update. Be sure to call yt-dlp with the --verbose flag and include its complete output.

Description
The francetv extractor does not work anymore.
A similar issue was opened within the youtubedl repository: https://github.com/ytdl-org/youtube-dl/issues/29956
A patch was made and apparently works: https://github.com/ytdl-org/youtube-dl/issues/29956#issuecomment-918463481

Discussion in the linked issue is all over the place.
The author of patch you linked says this only fix some of the links
So do you have an example link which isn't fixed by this patch?
@sarnoud would you be willing to make a PR for this here?

Discussion in the linked issue is all over the place.
The author of patch you linked says this only fix some of the links
So do you have an example link which isn't fixed by this patch?
@sarnoud would you be willing to make a PR for this here?

This one, for example. In yt-dl, it says “No video formats found”, because this patch only retrieves MPD manifests, but the videos were also available as M3U8 playlists (with audio and video combined in one MP4 file). But some of them (like Murdoch Mysteries/Les enquêtes de Murdoch) are only available as M3U8 playlists, and this early patch is not working with these videos.
Hopefully, a new version of the patch will be made and will fix that, too.

The url you provided requires an account to view, do you have any other url of same type that doesn't require an account?

The url you provided requires an account to view, do you have any other url of same type that doesn't require an account?
Well, it only requires an account if you go to the URL with a browser, but it was not necessary to download videos with youtube-dl (and is still not necessary with the patch, except for such videos without MPD manifests).

I can confirm that many/all sites are broken now with their new backend change and that you absolutely do NOT need an account to download these videos based on past experience.  you do need to be on VPN though for most of them.  The backend api code apparently changed and it just needs to be updated.  It sounds like the patch may have only fixed the mpd manifests and not the m3u8 streams though.   Oddly enough, it noticed that over the last 2 or 3 months, some of the individual audio formats were also not being picked up in the info extraction though they were available if you played the video on the web.
For example many of the foreign series videos that have VO aka verison original audio tracks were available for playback online but you couldn't find them in the -F output.   I'm adding them in because my hope is that if someone fixes the current problem they can perhaps correct these as well since it's tied to an extraction from the manifest in some way.
https://www.france.tv/series-et-fictions/series-dramatiques/la-compagnia-del-cigno/toutes-les-videos/
https://www.france.tv/series-et-fictions/series-comedies/pequenas-coincidencias/toutes-les-videos/
https://www.france.tv/series-et-fictions/series-comedies/arde-madrid/toutes-les-videos/
thanks

The url you provided requires an account to view, do you have any other url of same type that doesn't require an account?

I confirm what @Trit34 said about not needing an account to download, only to view with a browser.
However, I have found that there are some videos (usually aimed at children) which do not need an account to be viewed. In case you need to check with a browser, here is an example (French audio only and French sub, off by default):
https://www.france.tv/france-4/il-etait-une-fois-l-homme/saison-1/2398253-et-la-terre-fut.html
On the plus side, this video is available until 2024 which is way longer than most of the videos on france.tv.

But since the recent change using the patch, I can also confirm that all of the prior videos have NO subtitle extract info though subs are available in the online player video.

In addition to @boulderob information on subtitles, I have identified that the mpd manifest have a section for subtitles but it seems that yt-dlp is not currently able to extract them. Even though issue #656 on extracting subs from an mpd manifest was closed after a commit, maybe not all the cases are covered by the fix?
In case you need to check, the mpd manifest for the video mentioned previously can be found at:
https://cloudingest.ftven.fr/07acb575be606/e3bef677-d575-476a-8dbb-38d759d37a99_france-domtom_TA.ism/ZXhwPTE2MzE4OTU0NzB+YWNsPSUyZjA3YWNiNTc1YmU2MDYlMmZlM2JlZjY3Ny1kNTc1LTQ3NmEtOGRiYi0zOGQ3NTlkMzdhOTlfZnJhbmNlLWRvbXRvbV9UQS5pc20qfmhtYWM9OTBmNTkxMGZlMzU5ZjBmMTZlZDVlODJkMzMzZTAyNzM4OGYzZTNhYTc2OGMwNmFjNTJlNzQ2ZTZkZmQxMDk1NA==/manifest.mpd

I have identified that the mpd manifest have a section for subtitles but it seems that yt-dlp is not currently able to extract them. Even though issue #656 on extracting subs from an mpd manifest was closed after a commit, maybe not all the cases are covered by the fix?

The fix isn't applied to all sites. If subtitles are found, but not properly extracted, yt-dlp will give a warning that subtitles are being ignored. If you are getting the warning, it is a simple fix

The fix isn't applied to all sites. If subtitles are found, but not properly extracted, yt-dlp will give a warning that subtitles are being ignored. If you are getting the warning, it is a simple fix

Sorry, I drew conclusions too quickly regarding yt-dlp support of mpd subtitles for france.tv
Indeed, in the case of the france.tv video I mentioned in https://github.com/yt-dlp/yt-dlp/issues/970#issuecomment-921704337 it seems that subtitles are correctly detected, as shown in the log below (yt-dlp --list-subs https://…/manifest.mpd):
[generic] manifest: Requesting header
WARNING: [generic] Falling back on generic information extractor.
[generic] manifest: Downloading webpage
[generic] manifest: Extracting information
Available subtitles for manifest:
Language Formats
fr       mp4

Extracting subtitles also works and results in an mp4 file. At first, I thought that there was a problem with the extraction but after reading https://github.com/yt-dlp/yt-dlp/issues/656#issuecomment-894868497 I understood that an extraction step is needed in order to get a text file and that the ttml format extracted from the mp4 file is unfortunately not widely supported (e.g. no ffmpeg nor many video players support).
This is a not an improvement for viewers since france.tv previously provided subtitles in webvtt format which is much more usable… but as far as I know, there is no issue at yt-dlp level regarding subtitles extraction for france.tv.
@pukkandan, thank you for your answer and detailed instructions in https://github.com/yt-dlp/yt-dlp/issues/656#issuecomment-894868497

Discussion in the linked issue is all over the place.
The author of patch you linked says this only fix some of the links
So do you have an example link which isn't fixed by this patch?
@sarnoud would you be willing to make a PR for this here?

I just put a reply on the other francetv thread.
Would love to submit a PR but I don't think we have the proper fix yet.

With the help of abolibibelot1980 (https://github.com/ytdl-org/youtube-dl/issues/29956#issuecomment-922241312), I think we have a new way to reconstruct M3U8 links. But for some videos which were only available as M3U8 playlists (like this one: https://www.france.tv/france-3/les-enquetes-de-murdoch/les-enquetes-de-murdoch-saison-14/2743953-rira-bien-qui-rira-le-dernier.html), I just found a 403… I fear that we could not have a so better solution for some videos.

Will an update of yt-dlp fix this issue ?

As I said in https://github.com/yt-dlp/yt-dlp/commit/8026e5015274f3899f5db2d43eaaecdfc7d94ffd#commitcomment-56963247

There is an issue open on francetv with no fix yet #970

Actually, I believe @sarnoud has a partial fix, but there is no PR yet.
Open issues means it hasnt been fixed. When this issue is closed, that means the next update will have a fix

There is a PR (in youtube-dl's repo) https://github.com/ytdl-org/youtube-dl/pull/29996/commits

@boulderob @B0pol According to @sarnoud, the upstream PR is incomplete https://github.com/yt-dlp/yt-dlp/issues/970#issuecomment-921867108, hence why there has been no intiative to merge it here
@boulderob please keep any yt-dlp discussion to this repo and not in youtube-dl

I think PR https://github.com/ytdl-org/youtube-dl/pull/29996 is ready to get merged

@boulderob @B0pol According to @sarnoud, the upstream PR is incomplete #970 (comment), hence why there has been no intiative to merge it here
@boulderob please keep any yt-dlp discussion to this repo and not in youtube-dl
PS: maybe it has been fully fixed since? would like to get an update from @sarnoud

sorry about that @pukkandan.  I'll keep it here going forward.  I asked about merging @sarnoud PR locally into yt-dlp because I'm not sure how much the fork of yt-dlp differs from ytdl-org in terms of the overlapped files in the fix PR.  Based on your last post here my guess is if you're willing to merge it then it probably is pretty safe.
Do you apply PR as patches or fetch the branch and merge into a test branch of your master?
Thanks

You can either apply it as a patch or cherry pick the commits. However, we already have a full hls subtitle downloader in yt-dlp. So most of the code outside the extractor itself is unnecessary and cant be merged with yt-dlp. @fstirlitz has already taken the useful code and made a PR here at #1096. However, since he cannot fully test it, it is kept as draft. I suggest you test it instead

Quick test of current clone of yt-dlp doesn't recognize or extract basic francetv urls so I wasn't able to tell if subtitles work or not.
I fetched and checked out PR #1096 and did a quick test on subs only from videos that I had downloaded earlier with a clone of sarnaud's PR repo but didn't have any subtitles.  I can report that they mostly all work.   There occasionally are a few that are a bit out of synch.  I'm going to test tommorrow if that has to do with the fact that the subtitles are sometimes being used with "qtz" aka mpd media vs m3u8 hls by forcing a complete DL with subtitles.  I just tested cases where the mismatch works fine but the ones that don't synch are always a "crossbreed" between different formats.  I'm not sure if it matters or not but I can give it a look tomorrow.
One thing I did notice is that I used to download .description files but since the new francetv changes, francetv either doesn't support it anymore or the new PRs aren't extracting the info required to output the .description files.


CMake fixes.

Only search for Python when tests are enabled. This avoids a requirement
for Python 3 when tests aren't needed.
Added exports for libraries. External libraries that themselves use
libraries require all dependencies have exports, so not having exports can
cause major problems when used within other projects.
Install paths for exports are now placed in the proper directories expected
by Windows and *nix systems.

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

I've updated my patch and made a couple other fixes to make sure it works properly with find_package().

@akb825 The spir-v header have been updated.  Could you please rebase your change on top of the latest master.  This will allow the tests to pass.


Feat - VirtualScroll - Add support for offline data or scrolling large data sets

Here's the scenario, data has already been download/cached from the server (200+ items). You feed that data to the virtual scroll component and it calculate it's size based on total records. Then as you scroll down, it just appends more offline data to the list, while removing elements above itself (performance).
WinJs 4 has a great example of this with their Listview control. You can throw hundreds of items against it, but it only renders 20 at a time, and still provides the scroll height of all items. Item height must be fixed for it to work.

This is what virtualscroll does now?

@ghenry22
I know what this looks like. It looks like I made a feature request without actually trying this out and going off of assumption....which is exactly what happened!


Accumulate streamed PDF data into array of buffers.

While investigating bug 1410381 I noticed the PDF took much longer to load in the Firefox extension than in the plain web version of PDF.js. After running gecko profiler, I found we spent a lot of time in the stream converter doing append(). What was happening was Firefox was loading the entire PDF before the PDF.js viewer was loaded, which means we were always following this code path, where we create a new typed array to handle the old data + the new chunk and copy it over. For the above PDF that is 27MB, this was called roughly 200 times until the array was expanded to the full 27MB!
With this new code I see the above PDF (hosted locally),  go from 15s to 3s and peak-rss go from 1GB to 300MB.
@yurydelendik We had talked about using blobs, but I don't really see an advantage to that since we have to message across the data anyways. After you review, I'll ping mossop to review as well.

/botio-linux preview


Unable to install tt-flash

Hitting an error following instructions from  https://docs.tenstorrent.com/tenstorrent/add-in-boards-and-cooling-kits/e75-e150/software-setup#install-tt-flash
pip install https://github.com/tenstorrent/tt-flash.git -vvv
Using pip 22.0.2 from /usr/lib/python3/dist-packages/pip (python 3.10)
Defaulting to user installation because normal site-packages is not writeable
Created temporary directory: /tmp/pip-ephem-wheel-cache-z0_o36n3
Created temporary directory: /tmp/pip-req-tracker-v4dgboo5
Initialized build tracking at /tmp/pip-req-tracker-v4dgboo5
Created build tracker: /tmp/pip-req-tracker-v4dgboo5
Entered build tracker: /tmp/pip-req-tracker-v4dgboo5
Created temporary directory: /tmp/pip-install-gw8rvolj
Collecting https://github.com/tenstorrent/tt-flash.git
Created temporary directory: /tmp/pip-req-build-pxzcpdw8
Created temporary directory: /tmp/pip-unpack-0bqkdyyd
Looking up "https://github.com/tenstorrent/tt-flash.git" in the cache
Returning cached permanent redirect response (ignoring date and etag information)
Looking up "https://github.com/tenstorrent/tt-flash" in the cache
Current age based on date: 61
Freshness lifetime from max-age: 0
Starting new HTTPS connection (1): github.com:443
https://github.com:443 "GET /tenstorrent/tt-flash HTTP/1.1" 200 None
Downloading https://github.com/tenstorrent/tt-flash.git
- 98.3 kB 1.8 MB/s 0:00:00  Updating cache with response from "https://github.com/tenstorrent/tt-flash"
etag object cached for 1209600 seconds
Caching due to etag
\ 184.9 kB 2.9 MB/s 0:00:00
ERROR: Cannot unpack file /tmp/pip-unpack-0bqkdyyd/tt-flash.git (downloaded from /tmp/pip-req-build-pxzcpdw8, content-type: text/html; charset=utf-8); cannot detect archive format
ERROR: Cannot determine archive format of /tmp/pip-req-build-pxzcpdw8
Exception information:
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/pip/_internal/cli/base_command.py", line 165, in exc_logging_wrapper
status = run_func(*args)
File "/usr/lib/python3/dist-packages/pip/_internal/cli/req_command.py", line 205, in wrapper
return func(self, options, args)
File "/usr/lib/python3/dist-packages/pip/_internal/commands/install.py", line 339, in run
requirement_set = resolver.resolve(
File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/resolver.py", line 75, in resolve
collected = self.factory.collect_root_requirements(root_reqs)
File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/factory.py", line 506, in collect_root_requirements
req = self._make_requirement_from_install_req(
File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/factory.py", line 468, in _make_requirement_from_install_req
cand = self._make_candidate_from_link(
File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/factory.py", line 215, in _make_candidate_from_link
self._link_candidate_cache[link] = LinkCandidate(
File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/candidates.py", line 288, in init
super().init(
File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/candidates.py", line 158, in init
self.dist = self._prepare()
File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/candidates.py", line 227, in _prepare
dist = self._prepare_distribution()
File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/candidates.py", line 299, in _prepare_distribution
return preparer.prepare_linked_requirement(self._ireq, parallel_builds=True)
File "/usr/lib/python3/dist-packages/pip/_internal/operations/prepare.py", line 487, in prepare_linked_requirement
return self._prepare_linked_requirement(req, parallel_builds)
File "/usr/lib/python3/dist-packages/pip/_internal/operations/prepare.py", line 532, in _prepare_linked_requirement
local_file = unpack_url(
File "/usr/lib/python3/dist-packages/pip/_internal/operations/prepare.py", line 224, in unpack_url
unpack_file(file.path, location, file.content_type)
File "/usr/lib/python3/dist-packages/pip/_internal/utils/unpacking.py", line 258, in unpack_file
raise InstallationError(f"Cannot determine archive format of {location}")
pip._internal.exceptions.InstallationError: Cannot determine archive format of /tmp/pip-req-build-pxzcpdw8
Removed build tracker: '/tmp/pip-req-tracker-v4dgboo5'

python3 --version
Python 3.10.12
pip --version
pip 22.0.2 from /usr/lib/python3/dist-packages/pip (python 3.10)

It looks like the install instructions on the docs website are incorrect.
Try pip install git+https://github.com/tenstorrent/tt-flash.git and let me know if you get better results

Yep that worked beautifully!

Great! Thanks for filing the issue 😄 I'll get the docs updated to stop others form hitting this same problem.

It looks like tt-flash did not get setup in the $HOME/.local/bin/tt-flash location though.
Using a newer version on Ubuntu by the way...
lsb_release -a
No LSB modules are available.
Distributor ID:	Ubuntu
Description:	Ubuntu 22.04.3 LTS
Release:	22.04
Codename:	jammy

Try running pip list -v that'll show you if/where pip installed tt-flash

tt-flash does not show up.

I was able to get tt-flash setup properly after the following steps:

Installing cargo with sudo apt install cargo.
Used pyenv to target version 3.8.10.
pip install git+https://github.com/tenstorrent/tt-flash.git

Docs fixed


Refresh when using BulkProcessor

Which version of Elastic are you using?
[ ] elastic.v2 (for Elasticsearch 1.x)
[ ] elastic.v3 (for Elasticsearch 2.x)
[ ] elastic.v5 (for Elasticsearch 5.x)
[x] elastic.v6 (for Elasticsearch 6.x)
Please describe the expected behavior
Need the ability to wait_for a refresh when using a BulkProcessor
It looks like in bulk_processor.go, line 505, you can brute-force this by changing it to:
res, err = w.service.Refresh("wait_for").Do(ctx)
This seems to get the desired behavior, however after digging into the code I'm not sure if this behavior is already supported in some way? My current initialization code is:
bulker, err := client.
   BulkProcessor().
   BulkSize(5000).
   Workers(10).
   Do(context.Background())

Thank you!

Adding a Refresh in line 505 would have a severe impact on the performance of the bulk processor.
You can set a flush interval, which is not exactly what you want (it re-opens the index reader(s) AND commits changes to disk), but that's what bulk processor has right now. It would of course be possible to add a BulkProcessor.Refresh method to manually refresh. But I think that would defeat the purpose of bulk processor.
If you want fine grained control over your bulk indexing, do not use bulk processor but implement your own indexer with Bulk API. It's not that hard.

I'm not necessarily interested in speed but instead more interested in a guarantee that the data added is available to query. I'll work on my own Bulk API implementation, thank you for the pointers!


implement an openrc-specific version of killall5

If we can use our own version of killall5, this will remove our dependency on sysvinit.

It came in very handy, and sysvinit could be dropped.
My first tests with openrc-init on arch based system went not so well without sysvinit installed.

What issues did you have running it under arch?
I have only tried the openrc-init under lfs and it worked fine.

@cromerc
Its to do with the missig multicall binary for shutdown. Boot wet fine, but shutdown and process termination not so fine, despite compat symlinks
https://github.com/OpenRC/openrc/issues/128

This will also allow me to close http://bugs.gentoo.org/show_bug.cgi?id=376977


Update json-rpc to avoid some breaking changes

This PR updates the casper-json-rpc crate to avoid some breaking changes in the node JSON-RPC server.
Specifically:

it allows the params field to be null, interpreting that as an empty array, or equivalently, a None value
it relaxes the range of error codes for which it supports creating an error response, since we currently use reserved values
it can be configured to ignore extra fields provided in JSON-RPC requests (our usage in node configures the server to ignore extra fields as per current behaviour)

Closes #3175.

bors merge


Fix metadata on suburls

Metadata should work on all suburls eg. /dashboard, /apply, /settings, /apply/hacker, .etc
Same with the favicon (/logo.png)

Looks good to me


Pagination

How to adjust the pagination dot indicator width when it's on active slide?

You want to style this class in your CSS
.carousel__pagination-button--active

 This is my style, I already did the changing of color when the slide is on active but I don't how to make the width of the dot indicator change too.

You can apply this snippet
.carousel__pagination-button.carousel__pagination-button--active {
    width: 100px;
}

You can apply this snippet
.carousel__pagination-button.carousel__pagination-button--active {
    width: 100px;
}

Th

You can apply this snippet
.carousel__pagination-button.carousel__pagination-button--active {
    width: 100px;
}

It worked! Thank you thank you so much Sir. Godbless


Stop on RFID removal

Is it possible to stop playback on rfid-remove instead of additional rfid to stop?

The USB card reader are triggered only once, on entering the RFID card. So the short answer is "no", the long answer would be: "once you figured it out, please share your solution here". It would make a nice feature! Thanks, m

Sorry, my fault. Had to read more about RFID first.
But managed it more with a physical hack. From Wikipedia I learned:
Shielding effectiveness depends on the frequency being used. Low-frequency LowFID tags, like those used in implantable devices for humans and pets, are relatively resistant to shielding though thick metal foil will prevent most reads. High frequency HighFID tags (13.56 MHz—smart cards and access badges) are sensitive to shielding and are difficult to read when within a few centimetres of a metal surface. UHF Ultra-HighFID tags (pallets and cartons) are difficult to read when placed within a few millimetres of a metal surface, although their read range is actually increased when they are spaced 2–4 cm from a metal surface due to positive reinforcement of the reflected wave and the incident wave at the tag.
So wraped the "Stop-RFID" in a one-layer Aluminium foil and stuck a magnet on the top of it. laying both on the RFID-Reader. A second magnet on the "Play-RFID" lifts the "Stop-RFID" out of Range due to the Range-reduction of the foil. The reader now reads the nonshielded RFID. Removing the "Play-RFID" drops the shielded "Stop-RFID" in range stoping playback....

Hi @Luegengladiator
there is an interesting hack in the issues section:
https://github.com/MiczFlor/RPi-Jukebox-RFID/issues/62
Possibly you want to try if this works for you. It will probably not be part of the "default" codebase, but if it works, I will include it in the documentation.


Cron runs twice if specify exact minute

Found weird behaviour, when you specify cronstring like 0 3 * * * job will be executed 2 times:

at 3:00
at 3:01

@Eugeny could you help with it, please?

No, sorry, I'm not one of the core developers.

Guys?? Does anyone supporting this package??

@Eugeny Hi again. I actually found out that the issue is in get_next_sheduled_time method: it calculates cron next scheduled time relative to current time and so if job was enqued 2020-01-01 3:00:00AM it will be scheduled again to 2020-01-01 3:00AM because cron_string not using seconds but now var using it.

now isn't "using" seconds, it's a datetime object.

datetime.utcnow() returns whole time with seconds.

Hello? Could anyone assist with this issue?? Almost 3 weeks have passed since the opening...

@TsimafeiTsykunou please open a PR for this :)


[5.5] Improved mysql drop all tables

Reduce the sql queries when dropping all mysql tables

I think this needs to replicated for PostgreSQL, SQLServer & possibly Sqlite as well.

@srmklive it's already done :)

It already works though and there is no description of how this improves things with examples of the queries.

@taylorotwell Current implementation run N queries when database has N number of tables. This PR only run 2 queries to drop all tables.
Queries:
SHOW FULL TABLES WHERE table_type = 'BASE TABLE
DROP TABLE alpha,beta,gamma


Question: Does this library support similarity search in a local vector db?

Does this library support similarity search in a local vector db (e.g. Chroma) , using embedding model rather than OpenAI (e.g. "sentence-transformers/all-MiniLM-L6-v2") ?
Thanks!

I write a function but the 'import { HuggingFaceTransformersEmbeddings } ' doesn't work in the way I have here:
        static async Task RunEmbedding()
        {
            using var langchainjs = new LangChainJS();

            langchainjs.SetEnvironmentVariable("OPENAI_API_KEY", Configuration["OPENAI_API_KEY"]);

            langchainjs.Setup(@"

                import { HuggingFaceTransformersEmbeddings } from ""langchain/embeddings/hf_transformers"";

                const model = new HuggingFaceTransformersEmbeddings({
                  modelName: ""Xenova/all-MiniLM-L6-v2"",
                });

                globalThis.run = async () => {

                    const res = await model.embedQuery(
                      ""What would be a good company name for a company that makes colorful socks?""
                    );

                    return res.trim();
                }
            ");

            var result = await langchainjs.InvokeAsync<string>("run");

            Console.WriteLine(result);
        }

@iassafc

Does this library support similarity search in a local vector db (e.g. Chroma) , using embedding model rather than OpenAI (e.g. "sentence-transformers/all-MiniLM-L6-v2") ?

HuggingFace transformers embeddings support in LangChain.js rely on an extra peer dependency - a concept that does not translate well to .NET.
I'll look into it and update.
Chroma support should already be included but I've not tested it specifically. Please update if it works as expected.


added some bash aliases for myseld

some of the aliases you have are already there (like creating a virtual environment) using mkvenv virtual

Ooh Okay


Bad method in plugin manager

After updating to version 2.4.9 the code breaks because in the method validatePlugin() is missing.
It seems that validate() must be renamed to validatePlugin() to satisfy the interface.
This is at the develop branch. All unit tests are passing at master branch.

The develop branch is tested against the develop branch of
zend-servicemanager, which introduced this change. The change is correct.
Make sure you're using the develop branch of both projects.
On Dec 24, 2015 8:43 AM, "Chris Blokland"<EMAIL_ADDRESS>wrote:

After updating to version 249 the code breaks because in the method
validatePlugin() is missing
It seems that validate() must be renamed to validatePlugin() to satisfy
the interface
—
Reply to this email directly or view it on GitHub
https://github.com/zendframework/zend-filter/issues/18.

Just as a follow-up: 2.4.9 is based on the master branch; the develop branch represents the upcoming v3, and is not compatible. Updating to 2.4.9 cannot and will not work with the develop branch.

Thanks for the update. I was having minimum stability at development instead of stable, problem solved


Problem with Icons on iPad

Icons on tablet are big on SGGridMenu

This control can't be used for universal apps. Nothing resizes and centers properly when running natively on iPad. It's a shame because other than that it's a great actionsheet.


Suggestion: config to have defaults for target DE and username

I think having DEFAULT_DE and DEFAULT_USERNAME config parameters would be nice :)

Just did my second boot. I now realize that ly stores the last entry you made. This works just as well, my bad!


PGO

As Rust in MSYS2 does not support PGO, I have Rust 1.79 natively installed on Windows 10 and Clang 18.1 via MSYS2.
The general compilation of Viridithas works fine and without errors. But, if someone knows how to do PGO...
If I run these commands there are dozens of warnings with llvm-profdata and there is no merged.profdata.
This how-to with cargo-pgo and rustup component add llvm-tools-preview doesn't help either. Same error
Failed to merge PGO profile(s): warning: d:\Temp\viridithas-master\target\pgo-profiles\default_17648943948358147781_0.profraw: malformed instrumentation profile data: function name is empty
error: no profile can be merged

I find that PGO on linux works perfectly when I do this:
$ mkdir tmp
$ cargo rustc -r --features syzygy,bindgen -- -C target-feature=+crt-static -C target-cpu=<TARGET_CPU> -C profile-generate=tmp --emit link=viridithas-profile
$ ./viridithas-profile bench
$ llvm-profdata merge -o tmp/merged.profdata tmp
$ cargo rustc -r --features syzygy,bindgen -- -C target-feature=+crt-static -C target-cpu=<TARGET_CPU> -C profile-use=tmp/merged.profdata --emit link=viridithas-pgo

I don't know if this is easily replicable on Windows.


[.dev] search links to old guide article urls

Since all the guide articles have been moved to the forum - all the search results for guide articles are linking to 404 pages.

@raisedadead I assume all this will clear up once the search only indexes news articles?

Yes, I am triaging this a bug, but this is essentially going to resolve by not showing up the guide results anymore.


Consider adding set attribute (set_attrs) config file options to the MET statistics tool.

This idea came up during a met_help exchange with Ying Lin at NCEP:

https://rt.rap.ucar.edu/rt/Ticket/Display.html?id=85872

Here's the idea:

There is currently no way to override what Point-Stat writes to the FCST_VAR output column.  There actually is logic for doing this in STAT-Analysis.  You can use the "-set_hdr" option to explicitly specify the contents of the output header columns.  For example, if you run STAT-Analysis to aggregate data where VX_MASK = EAST and VX_MASK = WEST, the output header column will, by default, be written as a concatenation of the unique input strings: VX_MASK = EAST,WEST.  But you can manually override that by setting -set_hdr VX_MASK CONUS.  And then EAST,WEST will be replaced by CONUS.

Perhaps we could add a similar config file option for Point-Stat, Grid-Stat, Ensemble-Stat, Wavelet-Stat, MODE, and MTD to do what STAT-Analysis is already doing:

   set_hdr_column = [ "FCST_VAR" ];

   set_hdr_value    = [ "APCP_24" ];

Data is messy and this would give us an option for cleaning it up.
[MET-1020] created by johnhg

Related to

This really is a way of overriding the metadata for gridded input files.  And this can be useful for tools which compute .stat output files as well as those that don't, like pcp_combine or regrid_data_plane.  Instead of defining how the output columns should be set, just define the metadata, as shown below.  This mirrors the "attr" dictionary used for python embedding.  And these settings can be parsed into the VarInfoBase class so they apply to all derived gridded data file types:
set_attrs = {
valid = "timestring";
init = "timestring";
lead = "timestring";
accum = "timestring";
name = "string";
long_name = "string":
level = "string";
units = "string";
grid = "path to gridded data file or string defining the grid";
is_u_wind = boolean;
is_v_wind = boolean;
is_grid_relative = boolean;
is_wind_speed = boolean;
is_wind_direction = boolean;
is_precip = boolean;
is_specific_humidity = boolean;
}
Only the settings the user would like to override need to be defined.  The boolean flags at the end are needed to enable python embedding to verify vector winds, as requested by NRL via met-help:
https://rt.rap.ucar.edu/rt/Ticket/Display.html?id=93123

Need to specifically test to make sure that these changes enable python-embedding to compute VL1L2 and VCNT output.
Will need to add logic somewhere to handle...
(1) Using U and V to rotate winds from grid to earth relative.
(2) Using U and V and compute vector output stats.

On 5/29/2020, NRL wrote met-help with a question about setting the OBS_UNITS column for Point-Stat output: https://rt.rap.ucar.edu/rt/Ticket/Display.html?id=95402
Adding the "set_attrs" functionality would enable them to do so since there are no unit strings prescribed for point observations.

Add METplus issue to test that something like this works with these changes:
FCST_VAR1_OPTIONS = set_attrs={units='K'; valid=...;}

In the METplus meeting on 6/25/20, @CPKalb mentioned the need to use this with pcp_combine. Add a unit test which runs pcp_combine with set_attrs.set_valid on the -derive option to report the output valid time as the middle of the averaging period rather than the end which is the default behavior.

The changes in feature_1020_set_attrs were compiling and running fine on my Mac laptop. However, testing them on kiowa and dakota both revealed a runtime error:
ERROR  : StringArray::operator const -> range check error!
I ran through the debugger and also added print statements to figure out that this occurs when parsing the "is_..." flags. The parse_set_attrs_flag() function was actually parsing "set_attrs.is_precipitation" and the problem appeared to originate from vx_config when trying to parse those 2 levels from higher and higher levels of context. I was not able to identify/fix the specific problem.
In order to make things easier for both the user and the parsing code, I decided to abandon the "set_attrs" dictionary entirely. Instead, just parse bareword entries, not contained in a dictionary:
set_attr_name = "string"; ->
set_attr_long_name = "string";
set_attr_level = "string";
set_attr_units = "string";
set_attr_valid = "timestring";
set_attr_init = "timestring";
set_attr_lead = "timestring";
set_attr_grid = "path to gridded data file or string defining the grid";
is_precipitation = boolean;
is_specific_humidity = boolean;
is_u_wind = boolean;
is_v_wind = boolean;
is_grid_relative = boolean;
is_wind_speed = boolean;
is_wind_direction = boolean;
is_prob = boolean;


⚠ Bofrost.de has degraded performance

In 448e224, Bofrost.de (https://www.bofrost.de) experienced degraded performance:

HTTP code: 200
Response time: 967 ms

Resolved: Bofrost.de performance has improved in c3e6a6f.


How to get appropriate data type value from mutation in Google Spanner?

In the code below I can get the appropriate data type value.
Map<String, Value> mutationMap = mutation.asMap();
Value locationValue = mutationMap.getOrDefault("location", null);
Long location = locationValue .getInt64();
How to get it within a loop?
new Gson().toJson(mutation.asMap().entrySet().stream().collect(Collectors.toMap(Entry::getKey,e->e.getValue().toString())));
In the above I'm converting everything to string. If the value has data type INT64, how do I get that?

There's no standard method in the Java client library that does this, as Mutation objects are primarily intended for sending mutations to the backend, and not for reading out or sending to other services. The best way to do what you want, would be to add a method like this to your own code, and use that to read the actual underlying value from a mutation:
  Object getUnderlyingValue(Value v) {
    switch(v.getType().getCode()) {
      case ARRAY:
        switch(v.getType().getArrayElementType().getCode()) {
          case BOOL:
            return v.getBoolArray();
          case BYTES:
            return v.getBytesArray();
          case DATE:
            return v.getDateArray();
          case FLOAT64:
            return v.getFloat64Array();
          case INT64:
            return v.getInt64Array();
          case STRING:
            return v.getStringArray();
          case TIMESTAMP:
            return v.getTimestampArray();
          case STRUCT:
            // Array of struct is not supported.
          case ARRAY:
            // Array of array is not supported.
          default:
            break;
        }
        break;
      case BOOL:
        return v.getBool();
      case BYTES:
        return v.getBytes();
      case DATE:
        return v.getDate();
      case FLOAT64:
        return v.getFloat64();
      case INT64:
        return v.getInt64();
      case STRING:
        return v.getString();
      case STRUCT:
        return v.getStruct();
      case TIMESTAMP:
        return v.getTimestamp();
      default:
        break;
    }
    throw new IllegalStateException("Value with unknown type: " + v.toString());
  }

@nitinsridar Could you indicate whether the above example solves this for you? I don't think this is a very common use case, so it's not something that I think we want to add to the client library. If you add the above code snippet to your own code base, you should however be able to achieve what you wanted.


New Team - cyberinfrasig

Type of modification to a team
Creation of new team
Requested name for the team
cyberinfrasig
Team Description
Cyber Infrastructure Special Interest Group
Team Parent
N/A
Membership
hfenner - maintainer
Repositories
None (Issue currently exists to create disconnectedinfra #297 )

Review request:
cc: @redhat-cop/container-cop-core

Resolved by #301


revise nodetypes trait

the nodetypes trait
https://github.com/paradigmxyz/reth/blob/6a0060197f9ecb414a0dc1e72dfeacc4b1917bc7/crates/node/api/src/node.rs#L24-L29
already makes certain assumptions, for example it expects engine types, but we might want to support node setups that don't use the engine API.
this should be relaxed in the node builder in such a way that these traits stack (using a single type instead of associated types) and are not associated types

@mattsse Maybe we could do something like:
/// The type that configures the essential types of an Ethereum-like node.
///
/// This includes the primitive types of a node.
///
/// This trait is intended to be stateless and only define the types of the node.
pub trait NodeTypes: Send + Sync + Unpin + 'static {
    /// The node's primitive types, defining basic operations and structures.
    type Primitives: NodePrimitives;
}

/// The type that configures an Ethereum-like node with an engine for consensus.
pub trait NodeTypesWithEngine: NodeTypes {
    /// The node's engine types, defining the interaction with the consensus engine.
    type Engine: EngineTypes;
}

This would allow for a two-stage implementation while retaining the Engine associated type which is used quite a few places in the code, what do you think?

yes, I think this is exactly what we're looking for here


Support to run in debug mode so that we can validate hits.

Enables us to validate hits.

please release this feature

It is better to fix the branch in order to be built successful.

hi, it could be a really nice feature!
@amit0rana can you fixed the branch in order to pass all build tests and merge this amazing feature!
Thanks!!

Sorry for taking so long for reviewing/merging this, folks. We've been very busy with other projects.
I'll be reviewing it and merging this weekend.


Fonts are loaded from where index.html is served

This is more a question than an issue.
I am loading rapidoc from unpkg:
...
<body>
    <!-- Top navigation placeholder -->
    <rapi-doc id='rapidoc' show-header='false' theme='dark' layout='row'>
    </rapi-doc>
    <script<EMAIL_ADDRESS>...

And I saw that fonts are loaded from where index.html is served:
http://localhost:8080/rapidoc
<EMAIL_ADDRESS>http://localhost:8080/rapidoc-regular.woff2
http://localhost:8080/rapidoc-semi-bold.woff2

Is it possible to have the fonts taken from unpkg?
Thanks

Since it is a web-component and to simplify things, we bundle every thing in one file, putting fonts inside the bundle and using it from there will increase its size, block rendering longer, reduces flexibility to change fonts.
Having said that, RapiDoc uses some web-safe fonts, so even if you dont have the fonts, it will fall back on the font that most likely your OS would have.
However, in case you would like to get fonts from a CDN or would like to use a Font that matches your brand/style-guide then you can define your own font face or use some cdn service like shown below
<link href="https://fonts.googleapis.com/css?family=Varela+Round" rel="stylesheet">

and then
use the attributes regular-font and mono-font
 <rapi-doc
      spec-url="https://api.apis.guru/v2/specs/bitbucket.org/2.0/swagger.json"
      heading-text="My Rounded Font !!!"
      regular-font="'Varela Round', 'Arial Rounded MT Bold', 'Helvetica Rounded' "
 > </rapi-doc>

there is an example on this, that you can check out here


Add container image signing docs

This patch outlines basic documentation about how container image
signing works and which images are signed for official Kubernetes
releases.
KEP  https://github.com/kubernetes/enhancements/issues/3031
Refers to https://github.com/kubernetes/release/issues/2383
Closes https://github.com/kubernetes/website/issues/31420
cc @kubernetes/release-engineering

/hold for more eyes

opssy too fast

/hold cancel

opssy too fast sweat_smile

No worries, I create another placeholder PR, we still have to get some docs review as well as clear the TODO.


Add monoandroid403 to be matched as Some MonoAndroid

Some Xamarin Nugets (e.g.  Xamarin.Android.Support.v4) use platform 'monoandroid403' which isn't recognized by Paket yet. The suggested fix is pretty basic by just adding it to the list of recognized platforms.

thx


Convert childcare-costs-for-tax-credits to use ERB templates

LGTM :+1:

Manually merged in 7a7424711e2fcc9181d66cf8c7be05ea794e94b6.


Add COCOAPODS.md with installation instructions

Following #56, this change adds a COCOAPODS.md document describing ways to configure the TwitterImagePipeline pod for use with the extended subspecs.
I was thinking about adding a section to the bottom of README.md but wasn't sure if it was best to do that since there are no manual usage instructions to go with it.. Let me know if you want me to add something though.
Once merged, will it be possible to get a 2.24.1 release to push up the new Podspec? I can bump versions or update CHANGELOG.md here if it would help?
Thanks!

@NSProgrammer: Hope all is well.. I don't suppose you would get a chance anytime soon to check out this PR and bump the CocoaPods release? 🙏

I don't think we need to bump the version, this is just documentation updating.  We can rev COCOAPODS.md example version numbers in future revisions or not -- it is implied to figure out the version when adding that to the spec.

I don't think we need to bump the version, this is just documentation updating. We can rev COCOAPODS.md example version numbers in future revisions or not -- it is implied to figure out the version when adding that to the spec.

@NSProgrammer: the request to bump the version and do a new release was so that we can actually start using the new subspecs 🙂

OK, done


Switch default state space matrix type to 'array' (instead of 'matrix')

This is the initial commit to the 0.9.0 release, which changes the default value of state space matrices to be numpy.array (really ndarray) intead of numpy.matrix.
I also updated the use_legacy_defaults code to be a bit more general, so that as we make changes we can allow backward compatibility.

Coverage decreased (-10.01%) to 76.313% when pulling<PHONE_NUMBER>b394467fbe47dd70bbbfa2a2790fa1 on murrayrm:array-by-default into 35f1e6486004bd35e2fcad399572754dd609d979 on python-control:master.


[WebToolsE2E][Aspire] When deploying eShop.web solution, running 'azd up' failed with: Property 'containers.name' has an invalid value 'EventBus'.

REGRESSION INFO: Not repro on Aspire 8.0.0-preview.2.23619.3
INSTALL STEPS

Clean machine: Win11 x64 23h2 ENU
Install VS 17.10 Preview 1 [latest build, includes Aspire 8.0.0-preview.3.24105.21 ]
Apply NuGet Feeds
Install Docker Desktop for Windows

REPRO STEPS

Clone eShop repo from preview.3 branch
Update NuGet.config to use the correct feeds
Open eShop.web.slnf
Build
Right-click solution > Open Folder in File Explorer. In the opened folder, click any place > Open in Terminal
Runing 'azd init', select 'Use code in the current directory' > Confirm and continue initializing my app, type a new environment name, press enter.
When running azd init choose to expose 'webapp' to the Internet
Run azd up to deploy to Azure

ACTUAL:
Deployment failed with error:
ERROR: deployment failed: failing invoking action 'provision', error deploying infrastructure: deploying to subscription:

Deployment Error Details:
InvalidTemplateDeployment: The template deployment 'resources' is not valid according to the validation procedure. The tracking id is 'd3323b6c-c40f-4a5a-b958-66c36f5b762b'. See inner errors for details.
ValidationForResourceFailed: Validation failed for a resource. Check 'Error.Details[0]' for more information.
ContainerAppInvalidPropertyValue: Property 'containers.name' has an invalid value 'EventBus'. A value must consist of lower case alphanumeric characters, '-' or '.', and must start and end with an alphanumeric character.
TraceID: 91b11fc21df8e36cdb25bb5b1b8ef017
EXPECTED
Deploy successfully.

@v-cazhang I am able to deploy eshop using azd.
Please follow the steps mentioned here https://github.com/dotnet/eShop?tab=readme-ov-file#use-azure-developer-cli


coinfloor demo problem

When I run the CoinfloorDemo2 example from Xchange I get the error below:
The classpath contains: bcprov-jdk15on-1.50.jar
Thanks for any help or advice.
Exception in thread "main" java.lang.NoSuchMethodError: org.bouncycastle.util.encoders.Base64.toBase64String([B)Ljava/lang/String;
at com.xeiam.xchange.coinfloor.CoinfloorUtils.bigIntegerToBase64(CoinfloorUtils.java:112)
at com.xeiam.xchange.coinfloor.CoinfloorUtils.buildSignature(CoinfloorUtils.java:97)
at com.xeiam.xchange.coinfloor.streaming.RequestFactory$CoinfloorAuthenticationRequest.(RequestFactory.java:69)
at com.xeiam.xchange.coinfloor.streaming.CoinfloorStreamingExchangeService.authenticate(CoinfloorStreamingExchangeService.java:125)

i hava some problem too,but not this project ,are you sloving this problem ?  if you are. can you tell me how to !!!! thanks


Memory problems: memory leak, memory fragmentation, instability at heavy load

There are actually three separate problems identified so far. I'm still working on all of them.

Memory leak is caused by sendBufferSemaphore = xSemaphoreCreateMutex in oscilloscope.h which creates a new semaphore on the heap each time oscilloscope is run. This will be replaced by xSemaphoreCreateBinaryStatic which creates semaphore on the stack.

Memory fragmentation is caused by placing dmesg String messages on the heap. Entire dmesg message queue will be replaced by C strings which reside on the stack.

Instability at heavy load is actually caused by compiler - it crashes ESP32 when there is not enough memory left to create a new object instance or a new task stack. This issue will be bypassed by checking if max free memory block is big enough, before creating a new instance or starting a new task.

IDF 4.4 is now supported.


Decode Error occurred for picture & HW decoder faced error. Re-create instance

I am using the code from branch v2.1.0 and found a problem:
Decode Error occurred for picture 76303
HW decoder faced error. Re-create instance
HW decoder faced error. Re-create instance
HW decoder faced error. Re-create instance
HW decoder faced error. Re-create instance
HW decoder faced error. Re-create instance
HW decoder faced error. Re-create instance
This problem also appeared in earlier versions, and the solution is to catch the exception, e.g. https://github.com/NVIDIA/VideoProcessingFramework/issues/47 https://github.com/NVIDIA/VideoProcessingFramework/issues/353
while True:
    try:
        rawSurface = nvD.DecodeSingleSurface()
        if rawSurface.Empty():
            print('No more video frames')
            break
    except nvc.HwResetException:
        print('Continue after HW decoder was reset')
        continue

But in the branch v2.1.0, the HwResetException will not be thrown, why?

Hi @leyankon
What’s the exact problem you see with the latest vali version? In your original message you refer to v2.1.0 two times.

When decoding an H.265 RTSP stream, once a frame parsing fails, the message "Decode Error occurred for picture 76303 HW decoder faced error. Re-create instance" keeps appearing continuously. However, despite this error message, the HwResetException exception is not thrown, and the RTSP connection is interrupted.

Latest vali returns you not only the decoded surface but also the status of decode task:
surface, details = nvDec.DecodeSingleSurface()

What’s the details value first time you see the error message?

this is my code
import sys
import os

import cv2

if os.name == "nt":
    # Add CUDA_PATH env variable
    cuda_path = os.environ["CUDA_PATH"]
    if cuda_path:
        os.add_dll_directory(cuda_path)
    else:
        print("CUDA_PATH environment variable is not set.", file=sys.stderr)
        print("Can't set CUDA DLLs search path.", file=sys.stderr)
        exit(1)

    # Add PATH as well for minor CUDA releases
    sys_path = os.environ["PATH"]
    if sys_path:
        paths = sys_path.split(";")
        for path in paths:
            if os.path.isdir(path):
                os.add_dll_directory(path)
    else:
        print("PATH environment variable is not set.", file=sys.stderr)
        exit(1)

import pycuda.driver as cuda
import PyNvCodec as nvc
import numpy as np

def decode(gpuID, encFilePath, decFilePath):
    cuda.init()
    cuda_ctx = cuda.Device(gpuID).retain_primary_context()
    cuda_ctx.push()
    cuda_str = cuda.Stream()
    cuda_ctx.pop()

    nvDmx = nvc.PyFFmpegDemuxer(encFilePath, {'rtsp_transport': 'tcp'})
    nvDec = nvc.PyNvDecoder(
        nvDmx.Width(),
        nvDmx.Height(),
        nvDmx.Format(),
        nvDmx.Codec(),
        cuda_ctx.handle,
        cuda_str.handle,
    )
    nvCvt = nvc.PySurfaceConverter(
        nvDmx.Width(),
        nvDmx.Height(),
        nvDmx.Format(),
        nvc.PixelFormat.BGR,
        cuda_ctx.handle,
        cuda_str.handle,
    )
    nvDwn = nvc.PySurfaceDownloader(
        nvDmx.Width(), nvDmx.Height(), nvCvt.Format(), cuda_ctx.handle, cuda_str.handle
    )

    packet = np.ndarray(shape=(0), dtype=np.uint8)
    # frameSize = int(nvDmx.Width() * nvDmx.Height() * 3 / 2)
    rawFrame = np.ndarray((nvDmx.Height(), nvDmx.Width(), 3), dtype=np.uint8)
    pdata_in, pdata_out = nvc.PacketData(), nvc.PacketData()

    # Determine colorspace conversion parameters.
    # Some video streams don't specify these parameters so default values
    # are most widespread bt601 and mpeg.
    cspace, crange = nvDmx.ColorSpace(), nvDmx.ColorRange()
    if nvc.ColorSpace.UNSPEC == cspace:
        cspace = nvc.ColorSpace.BT_709
    if nvc.ColorRange.UDEF == crange:
        crange = nvc.ColorRange.MPEG
    cc_ctx = nvc.ColorspaceConversionContext(cspace, crange)
    print("Color space: ", str(cspace))
    print("Color range: ", str(crange))
    while True:
        try:
            # Demuxer has sync design, it returns packet every time it's called.
            # If demuxer can't return packet it usually means EOF.
            if not nvDmx.DemuxSinglePacket(packet):
                break

            # Get last packet data to obtain frame timestamp
            nvDmx.LastPacketData(pdata_in)

            # Decoder is async by design.
            # As it consumes packets from demuxer one at a time it may not return
            # decoded surface every time the decoding function is called.
            surface_nv12, details = nvDec.DecodeSurfaceFromPacket(pdata_in, packet, pdata_out)
            print("details", details)
            print("surface_nv12", surface_nv12)
            if not surface_nv12.Empty():
                surface_yuv420, _ = nvCvt.Execute(surface_nv12, cc_ctx)
                if surface_yuv420.Empty():
                    break
                if not nvDwn.DownloadSingleSurface(surface_yuv420, rawFrame):
                    break
                # cv2.imshow("", rawFrame)
                # if cv2.waitKey(1) & 0xFF == ord('q'):
                #     break
        except nvc.HwResetException:
            print("HW----------")

if __name__ == "__main__":

    print("This sample decodes input video to raw YUV420 file on given GPU.")
    print("Usage: SampleDecode.py $gpu_id $input_file $output_file.")

    # if len(sys.argv) < 4:
    #     print("Provide gpu ID, path to input and output files")
    #     exit(1)

    gpuID = 0
    # encFilePath = sys.argv[2]
    # decFilePath = sys.argv[3]

    decode(gpuID, "rtsp://<IP_ADDRESS>:554/rtp/34020000001320000251_34020000001320000001", "./hhh.mp4")

My environment is ubuntu22.04, and the cuda version is 11.8
This is the information printed by my console
err.txt
These errors will occur during decoding, but they should not cause all subsequent decoding to fail.
Decode Error occurred for picture 6520
[rtsp @ 0x273df40] Multi-layer HEVC coding is not implemented. Update your FFmpeg version to the newest one from Git. If the problem still occurs, it means that your file has a feature which has not been implemented.
HW decoder faced error. Re-create instance.

Hi @leyankon
You ignore the decoder's output.
surface_nv12, details = nvDec.DecodeSurfaceFromPacket(pdata_in, packet, pdata_out)
if not surface_nv12.Empty():
    surface_yuv420, _ = nvCvt.Execute(surface_nv12, cc_ctx)

# what if surface_nv12 is empty and / or details has information about the decoding failure?

Decoder actually signals you that it has failed and Surface is empty (taken from err.txt):
#
# Things go well
#
details TaskExecInfo.SUCCESS
surface_nv12
Width:            1920
Height:           1080
Format:           NV12
Pitch:            2048
Elem size(bytes): 1
Plane 0
  Owns mem:  1
  Width:     1920
  Height:    1620
  Pitch:     2048
  Elem size: 1
  Cuda ctx:  0x1e7fd80
  CUDA ptr:<PHONE_NUMBER>99040

#
# OK, this one is weird. I acknowledge this.
# I can't tell why status is SUCCESS but surface is empty.
#
details TaskExecInfo.SUCCESS
surface_nv12
Width:            0
Height:           0
Format:           NV12
Pitch:            0
Elem size(bytes): 1
Plane 0
  Owns mem:  0
  Width:     0
  Height:    0
  Pitch:     0
  Elem size: 0
  Cuda ctx:  0
  CUDA ptr:  0

#
# Decoder failed to do it's job
#
details TaskExecInfo.FAIL
surface_nv12
Width:            0
Height:           0
Format:           NV12
Pitch:            0
Elem size(bytes): 1
Plane 0
  Owns mem:  0
  Width:     0
  Height:    0
  Pitch:     0
  Elem size: 0
  Cuda ctx:  0
  CUDA ptr:  0

Long story short:
PyNvDecoder class behavior in VALI has changed since latest public VPF.
It was done so to make PyNvDecoder more informative. It may now return multiple decoding statuses such as e. g. SUCCESS, FAIL, EOF without using stderr (which may be useless in many production cases).
This new behavior is illustrated in VALI documentation. Please follow it.

@RomanArzumanyan
Thanks. I added this code and now it resets the decoder when an error occurs.
surface_nv12, details = nvDec.DecodeSurfaceFromPacket(pdata_in, packet, pdata_out)
if details == nvc.TaskExecInfo.FAIL:
    nvDec = nvc.PyNvDecoder(
        nvDmx.Width(),
        nvDmx.Height(),
        nvDmx.Format(),
        nvDmx.Codec(),
        cuda_ctx.handle,
        cuda_str.handle,
    )
    continue

@leyankon
Good news, I'm glad that it helped. Closing issue as resolved.


Protect privacy by masking timestamps

At the moment, we log timestamps as-is. Through matching RUM timestamps to timestamps received from other sources (however unlikely) such as ISP logs (e.g. upon law enforcement request), there is a slim chance that timestamps could be associated with a particular visitor.
To reduce this chance, we use the new t property introduced in https://github.com/adobe/helix-rum-js/pull/84 to further reduce the entropy contained in our logs.

take the Date.now()
round it to current hour
add t
use the result as the time for all logs

I will see if I can implement this (can't assign the issue at the moment).

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

v2.1.0
v2.1.0
GitHub release

Your semantic-release bot :package::rocket:


x/tools/gopls: export LSP types so they can be imported by external consumers

The code gopls uses for LSP types in tools/gopls/internal/protocol looks great and well-maintained. There doesn't appear to be another well-maintained open-source alternative. Is it possible to move this code out from under internal so it can be utilized by other consumers who wish to implement a language server in Go?

This topic has come up before, but for one thing, we have never had the
resources to support a public package. Also, the package contains a bunch
of specializations tuned to the needs of gopls which change (admittedly
slowly) as gopls does.
On Sun, May 26, 2024 at 5:00 PM japem @.***> wrote:

The code gopls uses for LSP types in tools/gopls/internal/protocol
https://github.com/golang/tools/tree/master/gopls/internal/protocol
looks great and well-maintained. There doesn't appear to be another
well-maintained open-source alternative. Is it possible to move this code
out from under internal so it can be utilized by other consumers who wish
to implement a language server in Go?
—
Reply to this email directly, view it on GitHub
https://github.com/golang/go/issues/67658, or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABJIAIYOHV74UUBRSF7TD6LZEJENNAVCNFSM6AAAAABIKC5MECVHI2DSMVQWIX3LMV43ASLTON2WKOZSGMYTOOJTGA4DKOI
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>

That's a bummer to hear. Is the existing code fit for use to create types to use in a generic, non-gopls language server? How much maintenance is required if I were to fork it, beyond pointing the codegen at the latest version of the spec?

Unfortunately we have strict compatibility rules on the Go team that would make it rather a lot of toils to export a volatile package such as the protocol package. We can and do change the API of that package in breaking ways.
It would be nice to expose the guts of gopls as a 'LSP in a box' toolkit that could be used for other languages, but frankly speaking we do not have the resources to support such an effort. Folks are of course welcome to fork for their own purposes, but currently have no plans to do this ourselves in the near future.