Xamarin Android Image Render [BUG]

Description
I was running version 2.80.0 and upgraded to 2.88.0.  When I did that the image I was drawing with Skiasharp scaled completely different on Android but the same on IOS.   I am going to copy in my code below...what I do know is that the SkiaSharp.Views.Forms.SKCanvasView behaves completely different in 2.88.0.  The image no longer seems to be scaled correctly on Android.   I am not sure if its the canvas.RestMatrix or the canvas.Scale that is not working correclty.  I rolled back to 2.80.0 and it behaves correctly.
I added two images, one entitled 2.88.0 where the image displays incorrectly and 2.80.0 where the image displays correctly

Code

<Grid BackgroundColor="Transparent">
                    <Grid.RowDefinitions>
                        <RowDefinition Height="450"/>
                        <RowDefinition Height="*"/>
                    </Grid.RowDefinitions>

                    <Grid Grid.Row="0" BackgroundColor="Transparent">
                        <skia:SKCanvasView  x:Name="CanvasView"  IgnorePixelScaling="False"
                                   IsVisible="true" BackgroundColor="Transparent" EnableTouchEvents="True" Touch="CanvasView_Touch"
                                   PaintSurface="CanvasView_PaintSurface" >
                            <skia:SKCanvasView.GestureRecognizers>
                                <PinchGestureRecognizer PinchUpdated="PinchGestureRecognizer_PinchUpdated"  />
                                <TapGestureRecognizer Tapped="TapGestureRecognizer_Tapped" NumberOfTapsRequired="1" />
                            </skia:SKCanvasView.GestureRecognizers>
                        </skia:SKCanvasView>
                    </Grid>
                    <Grid Grid.Row="1" Padding="0">
                     </Grid>
</Grid>

public static void DrawLayout(SKImageInfo info, SKCanvas canvas, SKSvg svg, ReticleSetupViewModel vm, float redBoxAdjustment = 0)
        {

            var layout = vm.SelectedReticleLayout;
            float magScale;
            float yRatio;
            float xRatio;

            canvas.Translate(info.Width / 2f, info.Height / 2f);
            SKRect bounds = svg.ViewBox;

            if (layout.ReticleLayoutScaleType == ReticleLayoutScaleType.ReticleOnly || layout.ReticleLayoutScaleType == ReticleLayoutScaleType.WidgetAndReticle)
            {
                magScale = vm.SelectedReticle.ReticleZoomScale[vm.SelectedScopeAndReticles.CurrentMag];
                xRatio = (info.Width / bounds.Width) + ((info.Width / bounds.Width) * magScale);
                yRatio = (info.Height / bounds.Height) + ((info.Height / bounds.Height) * magScale);
            }
            else
            {
                magScale = vm.SelectedReticle.ReticleZoomScale[vm.SelectedScopeAndReticles.LowMag];
                xRatio = (info.Width / bounds.Width) + ((info.Width / bounds.Width) * magScale);
                yRatio = (info.Height / bounds.Height) + ((info.Height / bounds.Height) * magScale);
            }

            float ratio = Math.Min(xRatio, yRatio);
            canvas.Scale(ratio);
            canvas.Translate(-bounds.MidX, -bounds.MidY);
            canvas.DrawPicture(svg.Picture);

            canvas.ResetMatrix();

            float imageCenter = canvas.LocalClipBounds.Width / 2;

            float redBorderXOffSet = imageCenter - (imageCenter / 2.0f) + canvas.LocalClipBounds.Left;

            // .0654450261780105f this number is the calculation of where to draw the top of the red border below the image.
            // This was calculated from an Android phone by setting the off set to image.Top + 75.
            // To get the percentage take 75/Image.Bottom = .0654450261780105f
            // now for any given platform we take the following to calculate the correct place for the Y offset for the red box
            //float redBorderYOffSet = (float)(svg.Picture.CullRect.Top + Math.Ceiling(.0654450261780105f * svg.Picture.CullRect.Bottom));
            float redBorderYOffSet = (float)(canvas.LocalClipBounds.Top + Math.Ceiling(.0654450261780105f * canvas.LocalClipBounds.Bottom));

            float adjustedRedBorderWidth = canvas.LocalClipBounds.Width / 2.0f;

            // this centers the red square, it may be different between phones and how they lay out.
            var adjustedRedborderHeight = (float)(canvas.LocalClipBounds.Bottom - Math.Ceiling(.0654450261780105f * canvas.LocalClipBounds.Bottom * 2)) - canvas.LocalClipBounds.Top;

            //now account for the red box adjustment
            adjustedRedborderHeight += redBoxAdjustment * 2;

            // we need to clip the red square so that the widgets do not grow beyond the red square
            if (layout.ReticleLayoutScaleType == ReticleLayoutScaleType.WidgetOnly || layout.ReticleLayoutScaleType == ReticleLayoutScaleType.WidgetAndReticle)
            {
                var redSquare = SKRect.Create(redBorderXOffSet - 2, redBorderYOffSet - 2, adjustedRedBorderWidth + 4, adjustedRedborderHeight + 4);
                canvas.ClipRect(redSquare, SKClipOperation.Intersect);
            }

            canvas.DrawRect(redBorderXOffSet, redBorderYOffSet, adjustedRedBorderWidth, adjustedRedborderHeight, RedBorderPaint);

            // set the node scale on the layout, I will need this to convert to send to the scope and saving to the DB for user created layouts
            layout.NodeScaleWidth = adjustedRedBorderWidth / ActualLayoutWidth;
            layout.NodeScaleHeight = adjustedRedborderHeight / ActualLayoutHeight;

            // configure the X and Y offset locations of the Red Box
            TopLeftDefaultOuterXOffSet = redBorderXOffSet + 5;
            TopLeftDefaultInnerXOffSet = TopLeftDefaultOuterXOffSet + (MediumDataBoxWidth * layout.NodeScaleWidth * 2) + 15;
            TopRightDefaultOuterXOffset = (redBorderXOffSet + adjustedRedBorderWidth) - 5;
            TopRightDefaultInnerXOffset = TopRightDefaultOuterXOffset - ((MediumDataBoxWidth * layout.NodeScaleWidth * 3) + 10);
        }

Expected Behavior

Actual Behavior

Basic Information

Version with issue:  2.88.0
Last known good version:  2.80.0
IDE:  Visual Studio for Windows 2022
Platform Target Frameworks:

Android and IOS...but Android is the only one that seems to have the issue

Target Devices:
Samsung Galaxy S10, Samsung Flip (android 12)
Samsung Galaxy Z Flip 3 (android 12)

Detailed IDE/OS information (click to expand)

PASTE ANY DETAILED VERSION INFO HERE
Xamarin Forms <IP_ADDRESS>5
Xamarin Essentials 1.7.3

Screenshots

Reproduction Link

What happens if you wrap the draw logic inside a save restore instead of resetting the matrix?
https://docs.microsoft.com/en-us/dotnet/api/skiasharp.skcanvas.save?view=skiasharp-2.88
That should reset the matrix correctly. If not, then something else has gone bad.


ERROR on build with UglifyJs

I got this error on Angular 2 Build for production.
ERROR in js/app.6a8993eaf205fa592c18.js from UglifyJs
SyntaxError: Unexpected token: punc (:) [./~/Knex/lib/dialects/oracledb/index.js:36,0][js/app.6a8993eaf205fa592c18.js:57363,10]

It refers to this part of code
function Client_Oracledb() {
    Client_Oracle.apply(this, arguments);
    // Node.js only have 4 background threads by default, oracledb needs one by connection
    if (this.driver) {
         process.env.UV_THREADPOOL_SIZE = process.env.UV_THREADPOOL_SIZE || 1; // <=== here
         process.env.UV_THREADPOOL_SIZE += this.driver.poolMax;
    }
}

Same. Did you figure out a workaround?

Try to comment it out and check if build has more problems... Maybe it is just the first error and it bails out right away.

Looks like commenting out the lines that access those node environment variables fixes the error. Thanks @elhigu. Perhaps the OracleDB client should be disabled if run in a browser? (Or anything besides sqlite, I guess)


bug(gatsby-source-airtable): Duplicate Dot in File Extension

Describe the bug
When creating a RemoteFileNode, there seems to be an issue with the file extension having a duplicate dot. This is due to the way the extension is being appended in the code.
The code:
ext: extension ? `.${extension}` : undefined,

results in a double dot before the file extension, e.g., ..jpg, since the extension variable already contains a dot.
Expected behavior
The file extension should only have one dot before it, e.g., .jpg.
Solution:
To fix this, the dot before extension in the template literal can be removed:
ext: extension || undefined
Here is the code line: https://github.com/gatsby-uc/plugins/blob/b7b48b781885a7b0378bb44f18ee18b0733a3981/packages/gatsby-source-airtable/gatsby-node.js#L309

Hey! Thanks for the report. You interested in submitting a PR?

Ps, if you look at line 300 it looks like 309 is a duplicate of this line. So no undefined check may be needed.

@moonmeister Please review this PR. We can simplify this further


Documentation of file format/image publishing process

I don't use a Mac myself, but would like to make several QEMU images that I have created more easily available to Mac users. I currently make them available to Windows and Linux users as Virtualbox-based Vagrant boxes hosted on the Vagrant Cloud (https://app.vagrantup.com/boxes/search), but that's not an option for users with ARM-based Macs.
Is there any documentation of the file format used for .utm images, and how they can be made available via a URL? This would be very helpful for image creators seeking to make their VMs available to Mac users.

For anyone else encountering this issue: some additional information was added in a Discord thread, here.
Query:

Is there any documentation of the image format used? I'd like to be able to make my QEMU VM images easily accessible to users who are using MacOS. There's an issue on GitHub about this already, but no response as yet: https://github.com/utmapp/UTM/issues/4228.
From what I can tell, the format is a plain .zip file, with any descriptive name, and the following contents:

arbitrary directory name, ending in ".utm", containing
a directory "Images", containing

a .qcow2 file, with arbitrary (?) name before the .qcow2 extension

a "config.plist" file,  with contents I'm still looking through.

Are there any restrictions on the qcow2 disk image? And is there any more information available on what needs to go in the config.plist file?

Reply from ktprograms:

AFAIK the qcow2 file can have any name, as long as it's referenced appropriately in the config.plist.
As for the config format itself, it's split up over Swift Codable structs that are encoded to PLIST. They are defined in https://github.com/utmapp/UTM/tree/main/Configuration (for QEMU, look at the UTMConfiguration*.swift and UTMQemuConfiguration*.swift files.
I'd recommend using UTM to create one VM to get a template config.plist, which you can then manually edit to change title, description and other settings.
Also, for creating the .zip to share, see https://github.com/BluDood/UTM-Community/wiki/Submitting-a-Virtual-Machine#preparing-the-machine-for-upload to zip the .utm folder bundle.

For reference, the link to the Configuration directory commit at the time of writing is https://github.com/utmapp/UTM/tree/5cd7aab72c8a95300179405ce152952fb09cd289/Configuration. And the current UTMQemuConfiguration*.swift files are:

UTMQemuConfiguration+Arguments.swift
UTMQemuConfiguration.swift
UTMQemuConfigurationDisplay.swift
UTMQemuConfigurationDrive.swift
UTMQemuConfigurationInput.swift
UTMQemuConfigurationNetwork.swift
UTMQemuConfigurationPortForward.swift
UTMQemuConfigurationQEMU.swift
UTMQemuConfigurationSerial.swift
UTMQemuConfigurationSharing.swift
UTMQemuConfigurationSound.swift
UTMQemuConfigurationSystem.swift

Oops, I'm not sure how I was subscribed to this thread but didn't respond with info.
Glad it's helpful, feel free to ping me if you need additional help with this.

No worries, will do. :)


Question: Beforeall & Afterall Not Working Properly

In my project , i have one featurefile, 7 scenarios. in hooks i am using beforeall,before,after,afterall. when i executed the featurefile,  before every scenario it is executing beforeall and after complete the scenario it executed afterall. 7times it executed beforeall and afterall. am i doing wrong?  plaese share your feedback .

Also note that BeforeAll / AfterAll are called in each worker
How can I ensure the whole featurefile is executed on the same worker?
Basically, I need to have a precondition for the featurefile, so it executes only once for this particular featurefile, but not for any other featurefile.

@farnsword-ok You can declaratively achieve that with a background applied to a single feature file:
Feature:  My Feature
  Background:
    Given I am logged in as 'a-user-with-specific-roles'

  Scenario: 1..
  Scenario: 2..
  Scenario: 3..

Thanks for the answer @maxtuzz.
I've tried Background, and according to cucumber documentation and the behavior I was getting from using it - Background is executed before each test, not even once per worker, but strictly before each test.
It seems the purpose of background is to avoid duplication in the first steps of scenarios.

How can I ensure the whole featurefile is executed on the same worker?

By default Playwright executes the whole file inside single worker, until you set fullyParallel option in the  Playwright config.
The solution with Background from @maxtuzz in general works (the comment is removed now). The downside - it requires additional code to ensure the background is executed only once (setting some global flag). For example:
Feature: Some feature

    Background:
      Given ensure user exists in database

    Scenario: ...

Example of step implementation:
let executed = false;
Given('ensure user exists in database', async ({ page }) => {
  if (!executed) {
     executed = true;
     // create user in database
  }
});

Here user will be created only once before feature file.
Note:
Although it works, I'm not fully satisfied with the approach. Global variables in hooks are not honored by Playwright team as well. The best approach is to migrate to Playwright fixtures. Or, if keep using hooks - it's better to explicitly mark code as executed before each feature, like we do for other hooks. I've made some research and created a proposal in #219.

That's what I'm trying to implement right now. The main issue here is that even global variables in the file, where I describe Background stepdefinitions are valid only within a single worker, therefore, these variables should be made even more global, and as an attempt I'm trying to use a file where I will track for which feature which precondition was executed.
Even though I don't have parallel execution enabled the worker changes whenever the test fails (apparently, to ensure clean env for the next test start).
Thanks for the suggestion about the fixtures, I will look into them to see if they fit the purpose.

import { createBdd,test} from 'playwright-bdd';
import {Browser,BrowserContext,Page} from 'playwright';
let browser:Browser;
let context: BrowserContext;
const {BeforeAll,AfterAll,Before,After} = createBdd(test);
BeforeAll(async()=>{
browser= await invokeBrowser();
context= await browser.newContext();
});
AfterAll(async()=>{
await browser.close();
});                   it's my hoook file, how can i use wroker  in beforeall

Not sure how exactly you want to use worker, but you can access info about the current worker by declaring a hook like this:
BeforeAll(async ({$workerInfo}) => {
In the hook body, you can refer to this incoming parameter $workerInfo.

Even though I don't have parallel execution enabled the worker changes whenever the test fails (apparently, to ensure clean env for the next test start)

Yeap, this is the approach Playwright follows - if something fails, perform the whole setup from scratch. So with global variable, you may have extra run of background setup in case of fails. Isn't it suitable?

Hi vitalets, in my current playwright-bdd framework,its based on test level scope .for that, every execution beforeall method is executing. so i want a  worker level scope. can you please give a example where worker level scope is used in hooks or in page fixture.

Even though I don't have parallel execution enabled the worker changes whenever the test fails (apparently, to ensure clean env for the next test start)

Yeap, this is the approach Playwright follows - if something fails, perform the whole setup from scratch. So with global variable, you may have extra run of background setup in case of fails. Isn't it suitable?

Not really.
Example:
In one of my cases, I'm creating several documents, that will be used later for testing the filter feature. Therefore, even if one of the tests fails I don't need to create another set of documents, so this extra run of background setup is not really acceptable.

In one of my cases, I'm creating several documents, that will be used later for testing the filter feature. Therefore, even if one of the tests fails I don't need to create another set of documents, so this extra run of background setup is not really acceptable.

Got it. With such external state, the only way I see - is to check inside the background step, are there documents created or not. If it's API call, you can create some lock file in the tmp dir after successful documents creation.
Even after #219 beforeFeature hook will rerun if something fails, here we should follow the Playwright's architecture.

Hi vitalets, in my current playwright-bdd framework,its based on test level scope .for that, every execution beforeall method is executing. so i want a worker level scope. can you please give a example where worker level scope is used in hooks or in page fixture.

const { BeforeAll, Before, Given } = createBdd();

BeforeAll(async function ({ $workerInfo, browser }) {
  console.log("BeforeAll", $workerInfo.workerIndex, browser.browserType());
});

Before(async function ({ $testInfo, browser }) {
  console.log("Before", $testInfo.workerIndex, browser.browserType());
});

Given('I open page', async ({ page, $testInfo, browser }) => {
  console.log("Step", $testInfo.workerIndex, browser.browserType());
  await page.goto(url);
});

In one of my cases, I'm creating several documents, that will be used later for testing the filter feature. Therefore, even if one of the tests fails I don't need to create another set of documents, so this extra run of background setup is not really acceptable.

Got it. With such external state, the only way I see - is to check inside the background step, are there documents created or not. If it's API call, you can create some lock file in the tmp dir after successful documents creation.
Even after #219 beforeFeature hook will rerun if something fails, here we should follow the Playwright's architecture.

This particular example relates to the UI tests, so checking the actual documents on UI will add some execution time.
I'm trying the approach of having a properties file in a file system, where the background steps will write something like:
Feature_1.Documents_Creation_Precondition=true when this precondition is executed
If we go parallel at some point (at the moment there are some limitations of the system under test that prevent us from doing so) will also have to introduce some synchronization to operations with this file and add some info about the thread or something similar to the entries in the file.

so checking the actual documents on UI will add some execution time

You mean that you need to wait for documents to be loaded into browser UI? Shouldn't actual test steps (e.g. filter checks) wait for that anyway?

will also have to introduce some synchronization to operations with this file and add some info about the thread or something similar to the entries in the file

Or maybe even sqlite file to handle concurrency issues.

In one of my cases, I'm creating several documents, that will be used later for testing the filter feature. Therefore, even if one of the tests fails I don't need to create another set of documents, so this extra run of background setup is not really acceptable.

I've made a deeper search in Playwright issues for similar topic. There are many people, who have exactly the same reasonable request - run beforeAll only once:

https://github.com/microsoft/playwright/issues/28201#issuecomment-2022937033
https://github.com/microsoft/playwright/issues/22520

Lets track these issues, I hope Playwright will provide and option for that.

class MyPage{
constructor (public page:Page){}
async openlink(name:string){
await this.page.getByRole('link',{name}).click();
}
}
export cont test= base.extend<{},{pagefixture:MyPage}>({
pageFixture:[async({page},use)=>{
await use(new MyPage(page));
},{scope:'worker'}],
});
Here i am trying use wroker scope then i am getting issue like property page doesnot exist.
if i use testscope then there is no issue. but i required workerscope. how to do that in fixture ?

Here i am trying use wroker scope then i am getting issue like property page doesnot exist.
if i use testscope then there is no issue. but i required workerscope. how to do that in fixture ?

Page is not available in worker scoped fixture, because page is re-created for each test.
Imagine worker with 3 tests - which page instance should be passed into worker fixture, that is called after worker start?

as per playwright-bdd document :
import { createBdd } from 'playwright-bdd';
const { BeforeAll, AfterAll } = createBdd();
BeforeAll(async function ({ $workerInfo, browser }) {
// runs when each worker starts
});
please give some suggestion what i need to implement in beforeall, give some example

please give some suggestion what i need to implement in beforeall, give some example

In BeforeAll you can make some setup that needed once in each worker.
I think BeforeFeature / AfterFeature will be more useful, so keep track of this issue https://github.com/vitalets/playwright-bdd/issues/219

@satyabrat105 is this issue resolved ?


Camera trajectory different to the trajectory in CSV file

Hello,
I checked that among the options of the configuration file there is the possibility to define the trajectory of the camera using a CSV file. I tried one of your examples, but the camera does not follow exactly the trajectory defined in the CSV file. In the code, the trajectory is read, but then a spline is computed as the trajectory to follow.
I am wondering if in your code there is a way in which the camera follows exactly the trajectory defined in the CSV file. Is this possible?

Hello,
Yes, a (continuous) spline in SE(3) is computed from the discrete poses specified in the CSV file. This is a design choice we made: it allows to compute the camera velocity (resp. acceleration) in closed-form, which are used to approximate the motion field on the sensor (which is in turn used to decide when the next frame should be synthesized), and also to simulate the inertial measurement unit accurately.
To make the spline fit a bit closer to the camera poses, you may increase the number of spline segments (parameter --trajectory_num_spline_segments). Keep in mind that the higher this number, the longer it will take at startup to estimate the spline. A reasonable number to start experimenting would be around 200 or so, depending on the length of your trajectory, and the desired accuracy.

Hello,
I did some tests by increasing the number of spline segments as you suggested. The computed spline approximates the position correctly in most of the cases.  However, the orientation of the spline does not correspond to the orientation of the CSV file. The camera rotates in yaw from left to right and vice-versa while following the position of the trajectory. It seems like a pre-programmed behavior. I tried with different trajectories and the results are always the same. The only way to keep the orientation still is defining an input trajectory with qx,qy,qz = 0 and qw = 1
Do you know about this issue? Perhaps it works in this way given your design. Or is it an issue from the spline generator?
Thanks!

Hello,
Could you please send me the faulty CSV file so I could have a look? It may be a problem with the spline generator indeed, which I have observed sometimes has problems around singularities.
Thanks.

Hello,
Sure, attached I send you the CSV file with the trajectory that I am using for my test (test_yaw.csv). Additionally, I add a file (test_yaw_output.csv) with the output from the event camera simulator. I just saved the pose commands that the package sends to the UE4 binary.
I also checked the orientation produced by the spline generator using one of your sample files (quadrotor_circles.csv). The result is the same, the orientation returned by the spline generator does not correspond to the orientation given by the input file.
test_trajectory.zip

Hello,
I'm facing a similar problem. In my case, splines don't follow some straight lines, curves or sines quite well, though I've tried with 200, 400, 800 and 1600 spline segments. It seems that splines have problems with changes in all of the variables at the same time and with trajectories other than straight lines. For example, I made this two simulations:
Simulation 1:

Input trajectory of 3 seconds: straight line in x, sines in y, z, yaw, pitch and roll (I transformed them later to quaternions). Sines of 1 or 2 Hz
Trajectory defined for 120 points in each variable
200 spline segments along the trajectory
Splines don't fit well sines

Simulation 2:

Same trajectory as simulation 1, but only along the first 0.1 seconds
Trajectory defined for 5 points in each variable
8 splines segments along the trajectory
Splines fit well these portions of the sines, regardless the reduction of spline segments

Anyway, thanks for uploading ESIM; it's a great work and we appreciate it!

Hello,
Does the fix suggested here: https://github.com/uzh-rpg/rpg_esim/issues/33#issuecomment-513663158 fix your issue?

yes, thank you for your kindly help!发自我的华为手机-------- 原始邮件 --------主题：Re: [uzh-rpg/rpg_esim] Camera trajectory different to the trajectory in CSV file (#14)发件人：supitalp 收件人：uzh-rpg/rpg_esim 抄送：Yunx Dai ,Manual Hello,
Does the fix suggested here: #33 (comment) fix your issue?
—You are receiving this because you are subscribed to this thread.Reply to this email directly, view it on GitHub, or mute the thread.
[
{
"@context": "http://schema.org",
"@type": "EmailMessage",
"potentialAction": {
"@type": "ViewAction",
"target": "https://github.com/uzh-rpg/rpg_esim/issues/14?email_source=notifications\u0026email_token=AHZ7CVQUSNUHIMAI3L3UKNTQAWDV3A5CNFSM4GU3DB5KYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD2PPYKY#issuecomment-513735723",
"url": "https://github.com/uzh-rpg/rpg_esim/issues/14?email_source=notifications\u0026email_token=AHZ7CVQUSNUHIMAI3L3UKNTQAWDV3A5CNFSM4GU3DB5KYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD2PPYKY#issuecomment-513735723",
"name": "View Issue"
},
"description": "View this Issue on GitHub",
"publisher": {
"@type": "Organization",
"name": "GitHub",
"url": "https://github.com"
}
}
]


A block of code added

hi @Gowtham-123
Thanks for contributing. 🚀
Could you elaborate on why this dependency is required?

closing this PR. @Gowtham-123 please let me know if you want to reopen it.


THUMB_URLS of Examples are not anymore available.

Hi,
In the following files, the THUMB_URLS links are broken -
ListViewGridLayoutExample.js
ListViewExample.js
ListViewPagingExample.js
They throw 5xx server error. I would be glad to fix this with a pull request. But, would like to have the source of URL's. If any good source URL for 128x128 images are ok, I do it right away with what I am using now. Let me know @ide  and other contributors.
var THUMB_URLS = [
  'https://fbcdn-dragon-a.akamaihd.net/hphotos-ak-ash3/t39.1997/p128x128/851549_767334479959628_274486868_n.png',
  'https://fbcdn-dragon-a.akamaihd.net/hphotos-ak-prn1/t39.1997/p128x128/851561_767334496626293_1958532586_n.png',
  'https://fbcdn-dragon-a.akamaihd.net/hphotos-ak-ash3/t39.1997/p128x128/851579_767334503292959_179092627_n.png',
  'https://fbcdn-dragon-a.akamaihd.net/hphotos-ak-prn1/t39.1997/p128x128/851589_767334513292958_1747022277_n.png',
  'https://fbcdn-dragon-a.akamaihd.net/hphotos-ak-prn1/t39.1997/p128x128/851563_767334559959620_1193692107_n.png',
  'https://fbcdn-dragon-a.akamaihd.net/hphotos-ak-prn1/t39.1997/p128x128/851593_767334566626286_1953955109_n.png',
  'https://fbcdn-dragon-a.akamaihd.net/hphotos-ak-prn1/t39.1997/p128x128/851591_767334523292957_797560749_n.png',
  'https://fbcdn-dragon-a.akamaihd.net/hphotos-ak-prn1/t39.1997/p128x128/851567_767334529959623_843148472_n.png',
  'https://fbcdn-dragon-a.akamaihd.net/hphotos-ak-prn1/t39.1997/p128x128/851548_767334489959627_794462220_n.png',
  'https://fbcdn-dragon-a.akamaihd.net/hphotos-ak-prn1/t39.1997/p128x128/851575_767334539959622_441598241_n.png',
  'https://fbcdn-dragon-a.akamaihd.net/hphotos-ak-ash3/t39.1997/p128x128/851573_767334549959621_534583464_n.png',
  'https://fbcdn-dragon-a.akamaihd.net/hphotos-ak-prn1/t39.1997/p128x128/851583_767334573292952_1519550680_n.png',
];

@vjeux any ideas what these URLs were? We should probably use imgur or github images.

@ide @vjeux At least I see by checking out google history, one of them was a like button. Were they smiley’s or something?

Those are all the icons of the "Likes" sticker pack on Facebook:

Here's an updated list:
https://scontent-sea1-1.xx.fbcdn.net/hphotos-xaf1/t39.1997-6/p128x128/851549_767334479959628_274486868_n.png
https://scontent-sea1-1.xx.fbcdn.net/hphotos-xfa1/t39.1997-6/p128x128/851548_767334489959627_794462220_n.png
https://scontent-sea1-1.xx.fbcdn.net/hphotos-xfa1/t39.1997-6/p128x128/851561_767334496626293_1958532586_n.png
https://fbcdn-dragon-a.akamaihd.net/hphotos-ak-xfa1/t39.1997-6/p128x128/851579_767334503292959_179092627_n.png
https://scontent-sea1-1.xx.fbcdn.net/hphotos-xfa1/t39.1997-6/p128x128/851589_767334513292958_1747022277_n.png
https://fbcdn-dragon-a.akamaihd.net/hphotos-ak-xfa1/t39.1997-6/p128x128/851591_767334523292957_797560749_n.png
https://fbcdn-dragon-a.akamaihd.net/hphotos-ak-xfa1/t39.1997-6/p128x128/851567_767334529959623_843148472_n.png
https://scontent-sea1-1.xx.fbcdn.net/hphotos-xfa1/t39.1997-6/p128x128/851575_767334539959622_441598241_n.png
https://scontent-sea1-1.xx.fbcdn.net/hphotos-xaf1/t39.1997-6/p128x128/851573_767334549959621_534583464_n.png
https://fbcdn-dragon-a.akamaihd.net/hphotos-ak-xaf1/t39.1997-6/p128x128/851563_767334559959620_1193692107_n.png
https://fbcdn-dragon-a.akamaihd.net/hphotos-ak-xft1/t39.1997-6/p128x128/851593_767334566626286_1953955109_n.png
https://scontent-sea1-1.xx.fbcdn.net/hphotos-xaf1/t39.1997-6/p128x128/851583_767334573292952_1519550680_n.png

Hacky code used to generate it
console.log($$('._5r8i').map(e => e.style.backgroundImage.slice(4, -1)).join('\n'))

Would be nice to have them in the repo instead of urls that can go down.

I will take care of this in the next few hours. Thanks @vjeux and @ide

Solved by https://github.com/facebook/react-native/commit/6e01c514d2ca7e1ab10e94c04822c183825ba5e3, this can be closed :)

The image files are empty for some reason. Might be the sync bot not being able to handle non-text files cc @vjeux

Closing this issue as the commit was checked in and works fine


Conditionally disable/enable thread-local lock behavior.

Should resolve https://github.com/tox-dev/py-filelock/issues/230.
TLDR: We now have a thread_local=True by default. If set to False, locks will be re-entrant across threads (a-la 3.10.7 and older behavior).

Also the CI is failing.

you've caught me in between pushes. Check again in a moment.

@gaborbernat now we're passing. Feel free to take a look. Thanks.


Humidity and atmospheric pressure  icons

Replace the words "humidity" and "atmospheric pressure" with adaptive icons (include dark theme change color)

Do you want these icons just in NowWeather section or also in HourForecast section?


crash in HCM/H2 due to stream mismatch

(gdb) bt
#0  0x0000000000000000 in ?? ()
#1  0x00000000007db615 in runResetCallbacks (this=<optimized out>, reason=Envoy::Http::RemoteReset)
    at bazel-out/k8-opt/bin/external/envoy/source/common/http/_virtual_includes/codec_helper_lib/common/http/codec_helper.h:49
#2  Envoy::Http::Http2::ConnectionImpl::onStreamClose (this=0x486f2888, stream_id=40325, error_code=<optimized out>) at external/envoy/source/common/http/http2/codec_impl.cc:584
#3  0x00000000007df36c in operator() (this=<optimized out>, stream_id=2, error_code=0, user_data=0x1451ca98) at external/envoy/source/common/http/http2/codec_impl.cc:804
#4  Envoy::Http::Http2::ConnectionImpl::Http2Callbacks::Http2Callbacks()::$_9::__invoke(nghttp2_session*, int, unsigned int, void*) (stream_id=2, error_code=0, user_data=0x1451ca98)
    at external/envoy/source/common/http/http2/codec_impl.cc:803
#5  0x00000000007e3567 in nghttp2_session_close_stream (session=0x4d997400, stream_id=40325, error_code=0)
    at /root/.cache/bazel/_bazel_root/335a8bf8eaf06ac7491f49930df2edb0/sandbox/processwrapper-sandbox/13/execroot/envoy/external/com_github_nghttp2_nghttp2/lib/nghttp2_session.c:1185
#6  0x00000000007e6271 in nghttp2_session_on_rst_stream_received (session=0x4d997400, frame=0x4d9975a0)
    at /root/.cache/bazel/_bazel_root/335a8bf8eaf06ac7491f49930df2edb0/sandbox/processwrapper-sandbox/13/execroot/envoy/external/com_github_nghttp2_nghttp2/lib/nghttp2_session.c:4162
#7  0x00000000007e90c3 in session_process_rst_stream_frame (session=<optimized out>)
    at /root/.cache/bazel/_bazel_root/335a8bf8eaf06ac7491f49930df2edb0/sandbox/processwrapper-sandbox/13/execroot/envoy/external/com_github_nghttp2_nghttp2/lib/nghttp2_session.c:4176
#8  nghttp2_session_mem_recv (session=0x4d997400, in=0x3806a03d <incomplete sequence \326>, inlen=<optimized out>)
    at /root/.cache/bazel/_bazel_root/335a8bf8eaf06ac7491f49930df2edb0/sandbox/processwrapper-sandbox/13/execroot/envoy/external/com_github_nghttp2_nghttp2/lib/nghttp2_session.c:5985
#9  0x00000000007da276 in Envoy::Http::Http2::ConnectionImpl::dispatch (this=0x486f2888, data=...) at external/envoy/source/common/http/http2/codec_impl.cc:350
#10 0x00000000007c2189 in Envoy::Http::ConnectionManagerImpl::onData (this=0x512a3c00, data=...) at external/envoy/source/common/http/conn_manager_impl.cc:274
#11 0x0000000000683ff9 in onContinueReading (this=<optimized out>, filter=0x0, buffer_source=...) at external/envoy/source/common/network/filter_manager_impl.cc:59
#12 Envoy::Network::FilterManagerImpl::onRead (this=<optimized out>) at external/envoy/source/common/network/filter_manager_impl.cc:69
#13 0x0000000000680afc in onRead (this=<optimized out>, read_buffer_size=<optimized out>) at external/envoy/source/common/network/connection_impl.cc:269
#14 Envoy::Network::ConnectionImpl::onReadReady (this=0x303c9c00) at external/envoy/source/common/network/connection_impl.cc:513
#15 0x00000000006805c1 in Envoy::Network::ConnectionImpl::onFileEvent (this=0x303c9c00, events=<optimized out>) at external/envoy/source/common/network/connection_impl.cc:489
#16 0x000000000067b2f5 in operator() (this=0x1451ca98, __args=3) at /usr/bin/../lib/gcc/x86_64-linux-gnu/7.4.0/../../../../include/c++/7.4.0/bits/std_function.h:706
#17 operator() (this=<optimized out>, what=<optimized out>, arg=0x0) at external/envoy/source/common/event/file_event_impl.cc:65
#18 Envoy::Event::FileEventImpl::assignEvents(unsigned int)::$_0::__invoke(int, short, void*) (what=<optimized out>, arg=0x0) at external/envoy/source/common/event/file_event_impl.cc:49
#19 0x000000000098414d in event_process_active_single_queue () at /usr/bin/../lib/gcc/x86_64-linux-gnu/7.4.0/../../../../include/c++/7.4.0/bits/unique_ptr.h:147
#20 0x00000000009826f0 in event_base_loop () at /usr/bin/../lib/gcc/x86_64-linux-gnu/7.4.0/../../../../include/c++/7.4.0/bits/unique_ptr.h:147
#21 0x000000000067a0ad in Envoy::Event::DispatcherImpl::run (this=<optimized out>, type=Envoy::Event::Dispatcher::Block) at external/envoy/source/common/event/dispatcher_impl.cc:178
#22 0x0000000000674712 in Envoy::Server::WorkerImpl::threadRoutine (this=0x4a93340, guard_dog=...) at external/envoy/source/server/worker_impl.cc:104
#23 0x0000000000b20575 in operator() (this=0x1451ca98) at /usr/bin/../lib/gcc/x86_64-linux-gnu/7.4.0/../../../../include/c++/7.4.0/bits/std_function.h:706
#24 operator() (this=<optimized out>, arg=0x44cd21a0) at external/envoy/source/common/common/posix/thread_impl.cc:39
#25 Envoy::Thread::ThreadImplPosix::ThreadImplPosix(std::function<void ()>)::$_0::__invoke(void*) (arg=0x44cd21a0) at external/envoy/source/common/common/posix/thread_impl.cc:38
#26 0x0000000000c924b4 in start_thread (arg=0x7f11915fd700) at pthread_create.c:312
#27 0x0000000000d44d39 in clone ()

Saw this crash at Lyft. I think this is another case of a mismatch between HCM stream state and codec stream state. I will look into this in relation to https://github.com/envoyproxy/envoy/issues/6872. cc @alyssawilk

I think the issue here is:

Call ConnectionManagerImpl::ActiveStreamFilterBase::resetStream()
local_complete_ is true since we set that at the beginning of filter iteration, but data is held inside a filter.
As such, we don't reset the stream, but remove it.
Remote reset, crash.

I will fix. It's a similar fix to #6872 where we need to remove stream callbacks.


api designing & implementation (4hr)

Hadith api
see json responses at https://sunnah.api-docs.io/1.0/collections/get-the-list-of-collections, to get some idea

[x] same skeleton for all books
[x] create info/metadata file
[x] gen new index with new repeated numbering in elastic search
[x] recreate index & clean up muslim with new repeated numbering (for all, except ara, eng, & urd, needs manual scripted)
[x] add ref numbers, for each number (mus)
[x] get book names & add it & name of book in gradesjson
[x] utilities module
[x] add hadith_count in meta
[x] has_sections
[x] create startdir content
[x] add support for decimal hadith num by using array, sort by float hadith no
[x] clean up turk & put it into startdir with json
[x] not all files got copied to startDir
[x] not all files getting generated
[x] should have "text" & other skeleton empty for which not avaiable
[x] keep skeleton for new decimal numbers & sort by it
[x] ibnmahaj(& maybe others) doesn't have bookref
[x] add ibnmajah & muslim initial ref in info.json (can do using calculation, without scrapped data)
[x] add metadata sections i.e at 0 for introduction/book of su
[x] correct initial arabicnumbers for muslim to 0 (see arabicnumber 128, set all arabicnum==hadithno to 0 for arabicnum )

Api script:

[x] clean create the apiscript/utilities  for all crud(tested)
[x] see the imported & used functions from utilities
[x] geneate the files in rest structure
[x] add other crud operations
[x] make apiscirpt, to create from startdir content
[ ] api generator (eidtions.json, editionname~.json, 1.json, with metadata, empty hadtih but with metadata etc) (books len from info.json)
[ ] see editions.json & info.min json generation
[ ] things in q-api script.js to here (see apiscriot.js & editions.json & other jsons)

Metadata fix:

[ ] issue in arnaut(majah /dawed, mistakes, ) bashar(tirmid) (some kind of marking in api, grade with ** & gradeinfo to tell about **, only ** those whihc doesn't match with others or remove which doesn't match)
[ ] set metadata to skeleton for undefined values
[ ] metadata json checker (for datatypes ,issues etc)
[ ] remove had_sections from meta_data to editions json
[ ] metadata sorter

Generate:

[ ] decimal fix (with https://github.com/fawazahmed0/hadith-api/issues/1 )
[ ] correct author & source

documentaton:

[ ] fallback mechanicsm in all docs (why ,how etc)
[ ] metadata importer (basic instrucitons)
[ ] contributing (add/remove/update, new trans, new book with new metadata etc) (like manuall ymaking sure numbers are mapped correctly)

Notes:

[ ] have to use node v17+ for structuredClone

Monday 18th - api complete
19th docu
20th PR


Bluetooth Scan not working (Working cordova-plugin-ble, not capacitor-bluetooth)

Good morning,
I have a problem, we are working on a connected watch project, a multi-year project, we want to migrate everything to capacitor. But since capacitor, we no longer detect our watches during the scan (requestLEScan). I receive callbacks from other approximate devices, but never our watches. Whereas before that work very well with cordova. We pass the service on cordova to sort the bluetooth devices, we do the same we find nothing, suddenly we scan the whole thing but even for that we find nothing. Do you have any idea what was changed? Knowing that from a telephone we do not detect watches connected in basic bluetooth.
Code cordova is working :
public scan(deviceId: number): Promise {
return new Promise((resolve, reject) => {
// Stop BLE scan after SCAN_DURATION seconds
const timeout = setTimeout(() => this.ble.stopScan().then(() => {
this.logger.info('BLEService: BLE scan timeout. BLE scan has been stopped.');
reject("BLE scan timeout. BLE scan has been stopped.");
}), SCAN_DURATION * 1000);
		this.logger.info('BLEService: Start scanning');
		this.ble
			.startScan([this.bleUtils.EDDYSTONE_SERVICE_UUID_SHORT])
			.pipe(
				tap(d => this.logger.info(`BLEService: Scanning found : ${JSON.stringify(d)}`)),
				map(d => this.bleUtils.parseAdvertisingData(d)),
				tap(d => this.logger.info(`BLEService: Scanning for device ${deviceId} found : ${d.id}`)),
				filter((d: BoraDevice) => d.id === deviceId),
				take(1)
			)
			.subscribe(
				device =>
					this.ble
						.stopScan()
						.then(() => {
							clearTimeout(timeout);
							setTimeout(() => {
								resolve(device);
							}, 1000);
						})
						.catch(error => this.logger.error(`BLEService: Stopscan error : ${error}`)),
				error => {
					this.logger.error(`BLEService: Startscan error : ${error}`);
					reject(`Startscan error : ${error}`);
				}
			);
	});
}

A few reasons why a peripheral device might not show up in the scan:

it is already connected to a central device
it is not a Bluetooth Low Energy device (this plugin does not support Bluetooth classic)
the scan filters are wrong
the location permission has not been granted on Android (then no device would show)

You mentioned already most of these points, so I don't know what could be the problem in your case.

Just driving by with a thought...
I wonder how ParcelUUID.fromString transforms a short UUID?
This plugin uses that method directly: https://github.com/capacitor-community/bluetooth-le/blob/main/android/src/main/java/com/capacitorjs/community/plugins/bluetoothle/BluetoothLe.kt#L756
Compared the cordova-plugin-ble-central which has it's own helper plugin to transform the short UUID into a full 128-bit one: https://github.com/don/cordova-plugin-ble-central/blob/2349ef07b54afe2d4d30dadfbfd43e307a147490/src/android/UUIDHelper.java#L29
This would hint at  your 3rd point there @pwespi that the filter doesn't apply properly.

@corentin35000 what happens if you try this Service UUID instead (this is the long form of the EDDYSTONE UUID)?
"0000FEAA-0000-1000-8000-00805F9B34FB"
See https://stackoverflow.com/a/32838954/156169
I'm assuming you're on the standard Eddystone Service UUID of 0xFEAA?

Thank you @peitschie for you thoughts. It's a good idea to look into the scan filters with more detail.
However, this plugin already expects a 128-bit UUID and checks it in the JavaScript layer of the plugin, see https://github.com/capacitor-community/bluetooth-le/blob/main/src/validators.ts

@peitschie @pwespi
I work with @corentin35000 on this.
We call numberToUUID(0xfeaa) to generate the long UUID and we saw that the generated UUID was "0000FEAA-0000-1000-8000-00805F9B34FB"
But no bands with this service was detected by the scan althought other devices are detected if we don't filter the scan
@corentin35000 has forgotten to tell that the same code works under Android 11. It doesn't work under Android 12+

@peitschie Yes we have any reference to neverForLocation
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" android:maxSdkVersion="30" />
<uses-permission android:name="android.permission.BLUETOOTH_SCAN" android:usesPermissionFlags="neverForLocation">

I'm not sure if we have tried without neverForLocation. I check that and tell you

If it works with Android 11 but not Android 12 and you're using neverForLocation then this is probably the reason.
This is from the link peitschie posted above:

Note: If you include neverForLocation in your android:usesPermissionFlags, some BLE beacons are filtered from the scan results.

Hello guys,
I come back to you regarding Android 12 or +.
It still doesn't work despite your remarks, here are the Android permissions in the Manifest:

Init BleClient :
private async initBleClient(): Promise {
try {
await BleClient.initialize();
} catch(error) {
this.logger.error('error init ble client : ' + error);
}
}
Thank you all for your feedback !

Hm strange. Just to make sure, have you tried completely uninstalling the app and reinstalling it when you made the permission changes?

It works now, strangely I had already uninstalled the application several times before. But actually I uninstalled the application and restarted the build and it worked! Thank you all :)


muiltiple broken things

cant change default apps
network status says no internet connection
have to reset mouse settings after restart
programs installed by me dont show up where they should

That sounds like a bad Windows install. I haven't experienced this myself nor has anyone else.
What version of Windows 10? And did you do this with a new profile or an existing profile?
The fact that your machine is stating that there is no internet connection means that your network drivers are corrupt/missing and need to be reinstalled.

was done on a fresh and non fresh activated install - win 10 pro 1809, and i was still able to connect to internet just nothing on the microsoft side of things, store, games or edge (tested)

1809 has enough bugs no-one should be deploying it in any environment.
I blame 1809 not his program.

My script does not currently remove the Windows Store unless you uncomment out the selection, and remove it from the whitelist in both of the DebloatAll and DebloatBlacklist functions @audenga. If you use the revert changes function it should reinstall the Windows Store if you had it removed.


Rotate the Matrix 90 degree

💥 Proposal
I want to add code in C-Plus-Plus of topic rotate the matrix 90 degree .[C-Plus_Plus][GSSOC'21][MATRIX]
Have you read the Contributing Guidelines on Pull Requests?
(YES)

/assign


Possible memory leak

I'm trying to write bindings to the sqlite3 library. And I'm re-learning C to understand what's actually going on under the hood. I tried to open and close a sqlite database. I ran the program with Valgrind and saw 3 possible memory leaks... so I reduced the amount of code to narrow down where the error occurs and found out that I get this even for a simple hello world program. I'm working on 64bit Arch Linux.
My guess is: the program ends before the GC has the chance of freeing some memory, but I'd rather ask than guess. Is this a memory leak?
Contents of test.cr
puts "Hallo Welt"

Shell commands:
bin/crystal test.cr
valgrind -v --leak-check=full  ./test

Valgrind output
==21946== Memcheck, a memory error detector
==21946== Copyright (C) 2002-2013, and GNU GPL'd, by Julian Seward et al.
==21946== Using Valgrind-3.9.0 and LibVEX; rerun with -h for copyright info
==21946== Command: ./test
==21946==
--21946-- Valgrind options:
--21946--    -v
--21946--    --leak-check=full
--21946-- Contents of /proc/version:
--21946--   Linux version 3.14.1-1-ARCH (nobody@var-lib-archbuild-testing-x86_64-tobias) (gcc version 4.8.2 20140206 (prerelease) (GCC) ) #1 SMP PREEMPT Mon Apr 14 20:40:47 CEST 2014
--21946-- Arch and hwcaps: AMD64, amd64-cx16-rdtscp-sse3-avx
--21946-- Page sizes: currently 4096, max supported 4096
--21946-- Valgrind library directory: /usr/lib/valgrind
--21946-- Reading syms from /home/alex/dev/crystal/test
--21946-- Reading syms from /usr/lib/ld-2.19.so
--21946-- Reading syms from /usr/lib/valgrind/memcheck-amd64-linux
--21946--    object doesn't have a symbol table
--21946--    object doesn't have a dynamic symbol table
--21946-- Scheduler: using generic scheduler lock implementation.
--21946-- Reading suppressions file: /usr/lib/valgrind/default.supp
==21946== embedded gdbserver: reading from /tmp/vgdb-pipe-from-vgdb-to-21946-by-alex-on-???
==21946== embedded gdbserver: writing to   /tmp/vgdb-pipe-to-vgdb-from-21946-by-alex-on-???
==21946== embedded gdbserver: shared mem   /tmp/vgdb-pipe-shared-mem-vgdb-21946-by-alex-on-???
==21946==
==21946== TO CONTROL THIS PROCESS USING vgdb (which you probably
==21946== don't want to do, unless you know exactly what you're doing,
==21946== or are doing some strange experiment):
==21946==   /usr/lib/valgrind/../../bin/vgdb --pid=21946 ...command...
==21946==
==21946== TO DEBUG THIS PROCESS USING GDB: start GDB like this
==21946==   /path/to/gdb ./test
==21946== and then give GDB the following command
==21946==   target remote | /usr/lib/valgrind/../../bin/vgdb --pid=21946
==21946== --pid is optional if only one valgrind process is running
==21946==
--21946-- REDIR: 0x4018260 (strlen) redirected to 0x380673f1 (???)
--21946-- Reading syms from /usr/lib/valgrind/vgpreload_core-amd64-linux.so
--21946--    object doesn't have a symbol table
--21946-- Reading syms from /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so
--21946--    object doesn't have a symbol table
--21946-- REDIR: 0x4018010 (index) redirected to 0x4c2b7f0 (index)
--21946-- REDIR: 0x4018230 (strcmp) redirected to 0x4c2c8d0 (strcmp)
--21946-- Reading syms from /usr/lib/libgc.so.1.0.3
--21946--    object doesn't have a symbol table
--21946-- Reading syms from /usr/lib/librt-2.19.so
--21946--    object doesn't have a symbol table
--21946-- Reading syms from /usr/lib/libm-2.19.so
--21946--    object doesn't have a symbol table
--21946-- Reading syms from /usr/lib/libpcre.so.1.2.3
--21946--    object doesn't have a symbol table
--21946-- Reading syms from /usr/lib/libunwind.so.8.0.1
--21946--    object doesn't have a symbol table
--21946-- Reading syms from /usr/lib/libgcc_s.so.1
--21946--    object doesn't have a symbol table
--21946-- Reading syms from /usr/lib/libc-2.19.so
--21946-- Reading syms from /usr/lib/libpthread-2.19.so
--21946-- Reading syms from /usr/lib/libdl-2.19.so
--21946--    object doesn't have a symbol table
--21946-- Reading syms from /usr/lib/libatomic_ops.so.0.0.0
--21946--    object doesn't have a symbol table
--21946-- Reading syms from /usr/lib/liblzma.so.5.0.5
--21946--    object doesn't have a symbol table
--21946-- REDIR: 0x5cc6e30 (strcasecmp) redirected to 0x4a23730 (_vgnU_ifunc_wrapper)
--21946-- REDIR: 0x5cc9120 (strncasecmp) redirected to 0x4a23730 (_vgnU_ifunc_wrapper)
--21946-- REDIR: 0x5cc6600<EMAIL_ADDRESS>redirected to 0x4a23730 (_vgnU_ifunc_wrapper)
--21946-- REDIR: 0x5cc49e0 (rindex) redirected to 0x4c2b5e0 (rindex)
--21946-- REDIR: 0x5cc2ce0 (strlen) redirected to 0x4c2bb80 (strlen)
--21946-- REDIR: 0x5cbd060 (malloc) redirected to 0x4c286c0 (malloc)
--21946-- REDIR: 0x5cc5cf0 (memchr) redirected to 0x4c2c970 (memchr)
--21946-- REDIR: 0x5ccd5c0 (rawmemchr) redirected to 0x4c2e600 (rawmemchr)
--21946-- REDIR: 0x5cbd750 (realloc) redirected to 0x4c2a9c0 (realloc)
--21946-- REDIR: 0x5cbd6b0 (free) redirected to 0x4c29930 (free)
--21946-- REDIR: 0x5cc6690 (memset) redirected to 0x4c2dfc0 (memset)
--21946-- REDIR: 0x5cbda00 (calloc) redirected to 0x4c2a7a0 (calloc)
vex amd64->IR: unhandled instruction bytes: 0xC6 0xF8 0xFD 0xF 0xB7 0x6 0x66 0x85
vex amd64->IR:   REX=0 REX.W=0 REX.R=0 REX.X=0 REX.B=0
vex amd64->IR:   VEX=0 VEX.L=0 VEX.nVVVV=0x0 ESC=NONE
vex amd64->IR:   PFX.66=0 PFX.F2=0 PFX.F3=0
==21946== valgrind: Unrecognised instruction at address 0x5ffefb0.
==21946==    at 0x5FFEFB0: __lll_trylock_elision (in /usr/lib/libpthread-2.19.so)
==21946==    by 0x5FF7BE3: pthread_mutex_trylock (in /usr/lib/libpthread-2.19.so)
==21946==    by 0x4E4B72B: ??? (in /usr/lib/libgc.so.1.0.3)
==21946==    by 0x4E4C77F: ??? (in /usr/lib/libgc.so.1.0.3)
==21946==    by 0x4E3AE2C: ??? (in /usr/lib/libgc.so.1.0.3)
==21946==    by 0x4E46213: GC_init (in /usr/lib/libgc.so.1.0.3)
==21946==    by 0x401655: *GC::init<GC:Class>:Void (in /home/alex/dev/crystal/test)
==21946==    by 0x401496: main (in /home/alex/dev/crystal/test)
==21946== Your program just tried to execute an instruction that Valgrind
==21946== did not recognise.  There are two possible reasons for this.
==21946== 1. Your program has a bug and erroneously jumped to a non-code
==21946==    location.  If you are running Memcheck and you just saw a
==21946==    warning about a bad jump, it's probably your program's fault.
==21946== 2. The instruction is legitimate but Valgrind doesn't handle it,
==21946==    i.e. it's Valgrind's fault.  If you think this is the case or
==21946==    you are not sure, please let us know and we'll try to fix it.
==21946== Either way, Valgrind will now raise a SIGILL signal which will
==21946== probably kill your program.
==21946==
==21946== Process terminating with default action of signal 4 (SIGILL)
==21946==  Illegal opcode at address 0x5FFEFB0
==21946==    at 0x5FFEFB0: __lll_trylock_elision (in /usr/lib/libpthread-2.19.so)
==21946==    by 0x5FF7BE3: pthread_mutex_trylock (in /usr/lib/libpthread-2.19.so)
==21946==    by 0x4E4B72B: ??? (in /usr/lib/libgc.so.1.0.3)
==21946==    by 0x4E4C77F: ??? (in /usr/lib/libgc.so.1.0.3)
==21946==    by 0x4E3AE2C: ??? (in /usr/lib/libgc.so.1.0.3)
==21946==    by 0x4E46213: GC_init (in /usr/lib/libgc.so.1.0.3)
==21946==    by 0x401655: *GC::init<GC:Class>:Void (in /home/alex/dev/crystal/test)
==21946==    by 0x401496: main (in /home/alex/dev/crystal/test)
==21946==
==21946== HEAP SUMMARY:
==21946==     in use at exit: 912 bytes in 3 blocks
==21946==   total heap usage: 7 allocs, 4 frees, 1,872 bytes allocated
==21946==
==21946== Searching for pointers to 3 not-freed blocks
==21946== Checked 25,579,248 bytes
==21946==
==21946== 912 bytes in 3 blocks are possibly lost in loss record 1 of 1
==21946==    at 0x4C2A820: calloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==21946==    by 0x4011611: allocate_dtv (in /usr/lib/ld-2.19.so)
==21946==    by 0x4011E1D: _dl_allocate_tls (in /usr/lib/ld-2.19.so)
==21946==    by 0x5FF5B28: pthread_create@@GLIBC_2.2.5 (in /usr/lib/libpthread-2.19.so)
==21946==    by 0x4E4AE99: GC_start_mark_threads (in /usr/lib/libgc.so.1.0.3)
==21946==    by 0x4E461E5: GC_init (in /usr/lib/libgc.so.1.0.3)
==21946==    by 0x401655: *GC::init<GC:Class>:Void (in /home/alex/dev/crystal/test)
==21946==    by 0x401496: main (in /home/alex/dev/crystal/test)
==21946==
==21946== LEAK SUMMARY:
==21946==    definitely lost: 0 bytes in 0 blocks
==21946==    indirectly lost: 0 bytes in 0 blocks
==21946==      possibly lost: 912 bytes in 3 blocks
==21946==    still reachable: 0 bytes in 0 blocks
==21946==         suppressed: 0 bytes in 0 blocks
==21946==
==21946== ERROR SUMMARY: 1 errors from 1 contexts (suppressed: 1 from 1)
--21946--
--21946-- used_suppression:      1 dl-hack3-cond-1 /usr/lib/valgrind/default.supp:1196
==21946==
==21946== ERROR SUMMARY: 1 errors from 1 contexts (suppressed: 1 from 1)
[1]    21946 killed     valgrind -v --leak-check=full ./test

I just tried a loop that opens a DB, executes a query and closes it, using this library and there's no memory leak. If you find a memory leak that we can reproduce (like this one), please let us know.


added project template files

#6 Design file structure
Add service  and test folder and files. Each file has a short description.
Status.py has all contents provided by the sample code.
Each developer will add details if it needs and implement each story
Added file scope is to start service development. Therefore, environment files (e.g., requirements.txt, Dockerfile, etc.) and config.py are not included.

The structure matches the project template! Please do check if any files are missing from the template
Thanks

Added some files from the template project, and pull requests.
The detail is #22


pipewire: 0.3.60 -> 0.3.61

Fixes musl build, among other things.
https://gitlab.freedesktop.org/pipewire/pipewire/-/releases/0.3.61
Description of changes

Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
23.05 Release Notes (or backporting 22.11 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module
[ ] (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes

[x] Fits CONTRIBUTING.md.

Fails to build

Weird. Built OK here and also on ofborg.

It didn't succeed on ofborg.

Oh, looks like it just timed out. It's a lot of rebuilds now...

@ofborg build pipewire

@ofborg eval

Merged manually because GitHub is :poop


Theme options

Hi @JaKooLit ,
Previously when installing I saw the option to install Catppuccin or Tokyo theme, but in your latest update I no longer see that option but only have the option to install Tokyo theme. Is Catppuccin already installed by default? And if I don't choose to install the Tokyo theme, I will be using the Catppuccin theme (Sorry, i am newbie)

I changed the v3.1 to v3.5 since I reconstructed on my previous v3.5.
I have just changed to different name as I was tweaking earlier ;)
v3.5 is a single theme tokyo night only.
The v4 will be added some themes, but for now, still catpuccin and tokyo. later down the road ill gruvbox on the mix

tks @JaKooLit ,
I think I try new your Ja-Hyprland version ;)

cool. let me know


Added ConfigurationProvider

@CodiumAI-Agent /describe

Title
Added ConfigurationProvider

PR Type
Enhancement, Tests, Documentation

Description

Introduced ConfigurationFeatureFlagProvider to load feature flags from IConfiguration, enabling seamless integration with .NET configuration sources like appsettings.json.
Replaced JsonFeatureFlagProvider with ConfigurationFeatureFlagProvider in the demo application.
Added comprehensive unit tests for ConfigurationFeatureFlagProvider to validate functionality and handle edge cases.
Updated README and project documentation to include details and examples for the new provider.
Enhanced appsettings.json in the demo with sample feature toggles for demonstration purposes.
Updated CI workflow to include the dev branch for push and pull request triggers.
Added necessary dependencies for the new provider in the project file.

Changes walkthrough 📝
Relevant filesEnhancement3 files

Program.csReplace JSON provider with Configuration provider in demo

demo/FeatureTogglerDemo/Program.cs
Replaced JsonFeatureFlagProvider with ConfigurationFeatureFlagProvider for feature flag registration.  Simplified feature flag initialization using the new provider.

+1/-10

ConfigurationFeatureFlagProvider.csAdd ConfigurationFeatureFlagProvider for feature toggles

src/FeatureToggler/Providers/ConfigurationFeatureFlagProvider.cs
Added ConfigurationFeatureFlagProvider to load feature flags from IConfiguration.  Implemented logic to parse feature toggles from configuration sections.  Handles missing or invalid configuration gracefully.

+31/-0

appsettings.jsonAdd sample feature toggles to appsettings.json

demo/FeatureTogglerDemo/appsettings.json
Added sample feature toggles for EnableNewUI and BetaFeature.  Demonstrated configuration structure for feature toggles.

+11/-1

Tests1 files

ConfigurationFeatureFlagProviderTests.csAdd unit tests for ConfigurationFeatureFlagProvider

tests/FeatureToggler.Tests/ConfigurationFeatureFlagProviderTests.cs
Added unit tests for ConfigurationFeatureFlagProvider.  Covered scenarios for valid, missing, and incomplete configuration data.  Ensured proper handling of edge cases like empty toggles.

+133/-0

Miscellaneous1 files

GlobalSuppressions.csUpdate GlobalSuppressions for new test methods

tests/FeatureToggler.Tests/GlobalSuppressions.cs
Added suppression entries for new test methods in ConfigurationFeatureFlagProviderTests.

+5/-0

Configuration changes1 files

build.ymlUpdate CI workflow to include dev branch

.github/workflows/build.yml
Added dev branch to workflow triggers for push and pull requests.

+2/-0

Documentation2 files

README.mdUpdate README to include Configuration provider

README.md
Updated feature list to include Configuration as a provider.  Enhanced descriptions for feature toggle providers.

+2/-2

README.mdDocument ConfigurationFeatureFlagProvider usage

src/FeatureToggler/README.md
Added documentation for ConfigurationFeatureFlagProvider.  Provided examples for using the provider with appsettings.json.

+30/-0

Dependencies1 files

FeatureToggler.csprojAdd dependencies for Configuration provider

src/FeatureToggler/FeatureToggler.csproj
Added Microsoft.Extensions.Configuration and Microsoft.Extensions.Configuration.Binder dependencies.

+2/-0

💡 PR-Agent usage: Comment /help "your question" on any pull request to receive relevant information


Improving documentation for debian installations

This concerns a typo, the init daemon setup and a security hint to change default keys & salts.

Can confirm that the Systemd service file is functional on Debian Jessie.

Thanks @TwizzyDizzy! And thanks @hjf288 for verifying. Adding @crspeller for a quick dev review.


ERROR","message":"Unknown reserved word

error: {"status":"ERROR","message":"Unknown reserved word: https://dataverse.ucla.edu"}
I'm trying to compare this to the examples in https://guides.dataverse.org/en/latest/api/external-tools.html.  The reserved words look correct and I get a similar  error if I change the order - pid or key first.
curl -vv -X POST -H 'Content-type: application/json' http://localhost:8080/api/admin/externalTools -d \

'{
"displayName": "Dataverse WebLoader",
"description": "Upload all  the files in a local directory!",
"toolName": "dvwebloader",
"scope": "dataset",
"contentType":"text/plain",
"types": [
"explore"
],
"toolUrl": "https://gdcc.github.io/dvwebloader/src/dvwebloader.html",
"toolParameters": {
"queryParameters": [
{
"siteUrl": "https://dataverse.ucla.edu"
},
{
"datasetPid": "doi:10.25346/S6/EZYHS4"
},
{
"key": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
}
]
}
}'

About to connect() to localhost port 8080 (#0)
Trying ::1...
Connected to localhost (::1) port 8080 (#0)

POST /api/admin/externalTools HTTP/1.1
User-Agent: curl/7.29.0
Host: localhost:8080
Accept: /
Content-type: application/json
Content-Length: 548

upload completely sent off: 548 out of 548 bytes
< HTTP/1.1 400 Bad Request
< Server: Payara Server  5.2021.6 #badassfish
< X-Powered-By: Servlet/4.0 JSP/2.3 (Payara Server  5.2021.6 #badassfish Java/Red Hat, Inc./11)
< Content-Type: application/json;charset=UTF-8
< Connection: close
< Content-Length: 80
< X-Frame-Options: SAMEORIGIN
<
Closing connection 0
{"status":"ERROR","message":"Unknown reserved word: https://dataverse.ucla.edu"}[ec2-user@ip-172-31-17-169 ~]$

Jamie, you don't need to/shouldn't change the example to put in the specific values you want. The tool registration uses the text like {siteUrl} to indicate that Dataverse itself should put those values in when you launch the tool. So - just cut/paste/run the curl example exactly as it is and that will reigster the tool. When you run it, you should see values like the ones you're trying to add above in the browser URL bar when you actually run the tool.

Thank you for clarifying.   Installed and uploading a folder now.   I have a user you will have made very happy with this tool.


build with tsup-node

/claim #2
I used tsup-node as tsup had too many problems, is that acceptable?
gh actions are not running

@seveibar

@ShiboSoftwareDev completely by accident i robbed you on this one.... #6
you did this completely correctly so it's a bit lame- sorry about that /tip $10


Failed to load script "res://addons/quiver_analytics/consent_dialog.gd" with error "Parse error".

https://github.com/quiver-dev/quiver-analytics-godot-plugin/blob/f8b5fa80c3377dbfadbfbf069a2611b8a67cca92/addons/quiver_analytics/consent_dialog.gd#L17
just copied as the README says addons folder
--- Debug adapter server started ---
--- GDScript language server started on port 6005 ---
res://addons/quiver_analytics/consent_dialog.gd:17 - Parse Error: Identifier "Analytics" not declared in the current scope.
res://addons/quiver_analytics/consent_dialog.gd:22 - Parse Error: Identifier "Analytics" not declared in the current scope.
modules/gdscript/gdscript.cpp:2788 - Failed to load script "res://addons/quiver_analytics/consent_dialog.gd" with error "Parse error". (User)
res://addons/quiver_analytics/consent_dialog.gd:17 - Parse Error: Identifier "Analytics" not declared in the current scope.
res://addons/quiver_analytics/consent_dialog.gd:22 - Parse Error: Identifier "Analytics" not declared in the current scope.
res://addons/quiver_analytics/analytics.gd:-1 - Compile Error:
modules/gdscript/gdscript.cpp:2788 - Failed to load script "res://addons/quiver_analytics/analytics.gd" with error "Parse error". (User)

godot 4.2

Can you verify that the Analytics node has been added as Autoload by going to Project Settings -> Autoload? This should have been added automatically when you installed the plugin.

No Analytics node in Autoload

Hm, that's strange. Can you confirm that the Analytics plugin is enabled? Enabling it should automatically add the Analytics autoload.


Introduce PAUSER privilege levels

Differentiate PAUSERs by privilege levels. This specification calls out that there can only be one High privilege PAUSER. The integration spec should go into more detail about this.
In particular, this change restricts PAUSERs at PL1 from calling CertifyKey.

Sorry @varuns-nvidia @FerralCoder, I accidentally dismissed reviews with a rebase.

I'll approve again, but noting that we need to track the corresponding manifest changes. I don't see a field in https://github.com/chipsalliance/caliptra-sw/tree/main/rom/dev#81-firmware-manifest for marking the PL0 PAUSER.

I'll approve again, but noting that we need to track the corresponding manifest changes. I don't see a field in https://github.com/chipsalliance/caliptra-sw/tree/main/rom/dev#81-firmware-manifest for marking the PL0 PAUSER.

Thanks. I've opened https://github.com/chipsalliance/caliptra-sw/issues/182 to track


Unable to resove parent POM: org.sonatype.oss link is down

Hello, when I go to the link https://repo.maven.apache.org/maven2/org/sonatype/oss, I get a "404 Not Found" message. This is preventing installation using Maven.

That is indeed strange. There should be the "oss-parent" project, which we refer to in the root pom.xml

What exactly was your command? As you cannot access the folder but the content is possible
https://repo1.maven.org/maven2/org/sonatype/oss/oss-parent/9/oss-parent-9.pom
And why are you using apache.org host?

I'm on a Windows 7 PC, and tried to run "mvn install" on the command line. I got the following error:
[ERROR] [ERROR] Some problems were encountered while processing the POMs:
[FATAL] Non-resolvable parent POM for com.graphhopper:graphhopper-parent:0.7-SNAPSHOT: Could not transfer artifact org.sonatype.oss:oss-parent:pom:9 from/to central (https://repo.maven.apache.org/maven2): This is usually a temporary error during hostname resolution and means that the local server did not receive a response from an authoritative server and 'parent.relativePath' points at wrong local POM @ line 16, column 13
I then tried to go to https://repo.maven.apache.org/maven2/org/sontatype/oss from a web browser, but got a "404 Not Found" error.

Can you just try again? And please use ./graphhopper.sh clean and ./graphhopper.sh build instead

Building locally and on travis succeeded so this must be a local issue. Let us continue discussion on our forum.


Add a guide for TypeScript

Motivation
There are some pitfalls with using Effection and TypeScript together, and with the expectations of type-safety that come with TypeScript, it can be one of the biggest stumbling blocks to adoption. While we can't fix them directly (only the TypeScript team can do that), we can at least explain what they are, why they can't be fixed by anybody but the TypeScript team,  and ways that you can mitigate them.
Approach
I tried to just enumerate the challenges that we've encountered, and propose some of the solutions.
Things I'm not entirely sure of:

Is this the best location for this guide?
In which order should I put the sections: The one on operations first? or generators?

Effection itself is written in TypeScript, and so comes bundled with its own type definitions. As a result, there's nothing special required to make them interoperate. However, there are still some idiosyncracies with using Effection and TypeScript together. This section contains information about what these idiosyncrasies are, and what you can do to make your development experience as painless as possible.

@cowboyd what do you think about this instead

Effection is written in TypeScript and comes bundled with its own type definitions. Effection doesn't require any special setup to use in a TypeScript project, but there are some TypeScript specific idiosyncrasies to keep in mind. This section describes these idiosyncrasies and what you can do to make development experience of using Effection in your TypeScript project as painless as possible.

@taras Feels great!

@taras @dagda1 What would you think about adding a suggestion that they respectfully upvote the issue for generator typing on GitHub? The TS folks have indicated that it's the best way to register interest.

@taras @dagda1 What would you think about adding a suggestion that they respectfully upvote the issue for generator typing on GitHub? The TS folks have indicated that it's the best way to register interest.

I don't think it would do any harm.  If generators were more mainstream then they would do something.

I'm going to go ahead and merge. @taras LMK if you have any feedback on the CTA at the end and I'll submit another PR.


AQL: AS alias not working for cluster column

Configuration information

EHRbase version: 0.17.3-SNAPSHOT (commit: 8816b8b)
openEHR_SDK version: 41b4db1
Archie version: 1.0.4
PostgreSQL version: PostgreSQL 11.5 on x86_64-pc-linux-musl, compiled by gcc (Alpine 8.3.0) 8.3.0, 64-bit
Java Runtime version: Oracle Corporation 11.0.12+7
Operating System version: Linux amd64 5.15.5-100.fc34.x86_64

Steps to reproduce
I'm working on setting up SmICS against EHRbase and have encountered a problem with the AQL query "Patient_Bewegung_Ps". The query includes the element "FallID" from template "Patientenaufenthalt" (CKM). In the AQL result, the column is not correctly aliased to "FallID", instead being returned as "/items[at0001]/value/value", breaking SmICSCore completely:
Query
{
    "q": "SELECT e/ehr_status/subject/external_ref/id/value as PatientID, i/items[at0001]/value/value as FallID, h/data[at0001]/items[at0004]/value/value as Beginn, h/data[at0001]/items[at0005]/value/value as Ende, h/data[at0001]/items[at0006]/value/value as Bewegungsart_l, s/items[at0027]/value/value as StationID, s/items[at0029]/value/value as Raum, f/items[at0024]/value/value as Fachabteilung, f/items[at0024]/value/defining_code/code_string as FachabteilungsID FROM EHR e CONTAINS COMPOSITION c[openEHR-EHR-COMPOSITION.event_summary.v0] CONTAINS (CLUSTER i[openEHR-EHR-CLUSTER.case_identification.v0] AND ADMIN_ENTRY h[openEHR-EHR-ADMIN_ENTRY.hospitalization.v0] CONTAINS (CLUSTER s[openEHR-EHR-CLUSTER.location.v1] AND CLUSTER f[openEHR-EHR-CLUSTER.organization.v0])) WHERE c/name/value = 'Patientenaufenthalt' AND i/items[at0001]/name/value = 'Zugehöriger Versorgungsfall (Kennung)' AND e/ehr_status/subject/external_ref/id/value MATCHES {'Patient17'} ORDER BY e/ehr_status/subject/external_ref/id/value ASC, h/data[at0001]/items[at0004]/value/value ASC"
}

Data
I'm using the provided Postman collection from the highmed/SmICSCore repository: https://github.com/highmed/SmICSCore/tree/develop/TestData (in a modified form. I have attached the precise Postman collection to this post:
ehrbase-smics.zip).
To load the EHRbase, I'm executing the folder "Template" first, and then the "Scene_4" folder in batch (From collection SmICS_TestDataCollection.postman_collection. The query in question is in collection SmICS-Core API.postman_collection).
Actual result
{
"columns": [
        {
            "path": "/ehr_status/subject/external_ref/id/value",
            "name": "PatientID"
        },
        {
            "path": "/context/other_context[at0001]/items[openEHR-EHR-CLUSTER.case_identification.v0]/items[at0001]/value/value",
            "name": "/items[at0001]/value/value" // error here
        } // ...
    ]
}

Expected result (Acceptance Criteria)
{
"columns": [
        {
            "path": "/ehr_status/subject/external_ref/id/value",
            "name": "PatientID"
        },
        {
            "path": "/context/other_context[at0001]/items[openEHR-EHR-CLUSTER.case_identification.v0]/items[at0001]/value/value",
            "name": "FallID" // changed here!
        } // ...
    ]
}

I have managed to get the expected result by commenting out the following line in EHRbase: https://github.com/ehrbase/ehrbase/blob/8816b8b48a42ac5b96055a994f51e9a924c6ccd7/service/src/main/java/org/ehrbase/aql/sql/binding/ContextualAttribute.java#L56
It looks like attributes from CLUSTER RM elements is handled differently to other attributes like those from EHR, COMPOSITION etc. Please verify if this workaround breaks other components of EHRbase, I have personally struggled to see the usefulness of the code in ContextualAttribute.
Definition of Done

[ ] The defect is checked by an unit or an integration test (Robot)
[ ] Merge Request approved
[ ] Unit tests passed
[ ] Build without errors
[ ] Release notes prepared
[ ] No additional runtime warnings

#691 looks good from my end, thanks! :)


Command npx prisma migrate dev failing with no error messages

Bug description
Well, i started a project here and i was trying to set up my first table on my schema
I have already used Prisma in the past and worked fine, but today, on the latest version, it's not working
For some reason, i cannot run my npx prisma migrate dev, but the error is empty, so i can't search for the errors properly to find a solution.
This is what comes from my npx prisma -v command:
prisma                  : 5.14.0
@prisma/client          : Not found
Computed binaryTarget   : debian-openssl-1.1.x
Operating System        : linux
Architecture            : x64
Node.js                 : v20.13.1
Query Engine (Node-API) : libquery-engine e9771e62de70f79a5e1c604a2d7c8e2a0a874b48 (at<EMAIL_ADDRESS>Schema Engine           : schema-engine-cli e9771e62de70f79a5e1c604a2d7c8e2a0a874b48 (at<EMAIL_ADDRESS>Schema Wasm             : @prisma/prisma-schema-wasm 5.14.0-25.e9771e62de70f79a5e1c604a2d7c8e2a0a874b48
Default Engines Hash    : e9771e62de70f79a5e1c604a2d7c8e2a0a874b48
Studio                  : 0.500.0

I found some stuff related with open ssl, i will point up some commands and etc to maybe help
which openssl returns:
/home/linuxbrew/.linuxbrew/bin/openssl
schema:
// This is your Prisma schema file,
// learn more about it in the docs: https://pris.ly/d/prisma-schema

// Looking for ways to speed up your queries, or scale easily with your serverless or edge functions?
// Try Prisma Accelerate: https://pris.ly/cli/accelerate-init

generator client {
  provider = "prisma-client-js"
}

datasource db {
  provider = "postgresql"
  url      = env("DATABASE_URL")
}

model Account {
  id       String @id @default(uuid()) @db.Uuid
  name     String
  email    String @unique
  password String

  @@map("accounts")
}

.env:
DATABASE_URL="postgresql://root:root@localhost:5432/jwtauth?schema=public"

my docker container is up and my table is created, i have already checked those

can someone please help?
How to reproduce
I don't think there is a way to reproduce this because i think the problem is with my machine
This is what i got when i run npx run migrate dev

Expected behavior
No response
Prisma information
// This is your Prisma schema file,
// learn more about it in the docs: https://pris.ly/d/prisma-schema

// Looking for ways to speed up your queries, or scale easily with your serverless or edge functions?
// Try Prisma Accelerate: https://pris.ly/cli/accelerate-init

generator client {
  provider = "prisma-client-js"
}

datasource db {
  provider = "postgresql"
  url      = env("DATABASE_URL")
}

model Account {
  id       String @id @default(uuid()) @db.Uuid
  name     String
  email    String @unique
  password String

  @@map("accounts")
}

Environment & setup

OS: Pop OS
Database: PostgreSQL
Node.js version: 20.13.1

Prisma Version: 5.14

@giovanedann This is a bit weird indeed that the message is empty.

Could you try again with the DEBUG en var set like this DEBUG=* npx prisma migrate dev?
What's the version for the PostgreSQL instance?
Did you try to connect to this database with another tool? (Like TablePlus, or psql) Does it work?

Since you are using a root account, it's probably not an issue with permissions 🤔

@giovanedann And one more question, does it work with older versions of Prisma?
It would be interesting to know which versions are working and which versions are not.

Thanks!
Given your screenshot, I think there was a misunderstanding 😄
You can either add DEBUG=* in your .env file or run the following DEBUG=* npx prisma migrate dev in your terminal directly.
Could you try that?
And you could share the Dockerfile, it looks interesting to check this out for a reproduction.

same issue...
no matter if I run npx prisma on alpine or slim, there's nothing in the output

I have the same error, I'll follow this discussion.

same issue...
no matter if I run npx prisma on alpine or slim, there's nothing in the output

update for my reason:
NODE_OPTIONS='-r @newrelic/next' should be removed before running this command.


Update language-support.md

updated matrix regarding supported locales for5 acoustic adaptation.

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

@rarera : Thanks for your contribution! The author, @v-jerkin, has been notified to review your proposed change.

#sign-off


This commit fixes issue #36

The issue regards indices which may not exist in the slice_matrix dictionary.

It looks like this can still break. Fix needs to be done the other way (verifying indices exist).


Update models.ts

This PR fixes an issue with the current model implementation when the element is undefined.

Good catch. I noted the issue https://github.com/zardoy/mc-assets/issues/8 but forgot to provide an actual fix on main branch. But pls run lint --fix @Mqxx

/fixlint

fixed upstream issue instead


reprocess a file in my input folder

This seems like it would be simple but I've not figured in out yet.  How do get the docker to reprocess a file in the input directory.  I've tried remove the output files but that doesn't seem to work...
Thanks,
ce

Did you try to also remove them from the watch folder and add them again?

Look in the "config" folder.
You will find a "successful conversions" file.
Either delete it or edit it.

Closing this issue.  Please re-open if needed.


Bind to all interfaces by default

Exclude resin-dns from port bindings to avoid conflicts.
Signed-off-by: Kyle Harding<EMAIL_ADDRESS>

This one is ready for you @eiddor !

@klutchell Looks good here!


Migrate from objdump and grep to library calls

Fixes #128.

Thanks!
I'd merge it but we need to figure out how to handle this:
[ 18%] Building CXX object src/CMakeFiles/bpftrace.dir/bpftrace.cpp.o
/home/bgregg/Build/bpftrace/src/bpftrace.cpp:19:10: fatal error: bcc_elf.h: No such file or directory
 #include "bcc_elf.h"
          ^~~~~~~~~~~

I guess I have an older bcc version installed.

It looks like bcc_elf.h was separated from bcc_helpers.h around bcc 0.2 or so. I haven't been able to build that version locally, but hopefully the cmake workaround that I just pushed will work. I'm no cmake expert, though, so suggestions are welcome.

Now get:
/home/bgregg/Build/bpftrace/src/bpftrace.cpp:22:10: fatal error: bcc_helpers.h: No such file or directory
 #include "bcc_helpers.h"
          ^~~~~~~~~~~~~~~

Hmm, okay. I'll investigate this more. What version of bcc do you have installed?

This seems similar to the issue reported in this comment from #335, but I don't think it's a bcc version problem. The libbpfcc-dev package on Ubuntu 18.04 doesn't include bcc_elf.h despite its being present in bcc 0.5.0. The upstream Debian package has it, and the libbcc package from the iovisor apt repo also has it.
I can see the symbols in the library:
$ objdump -tT /usr/lib/x86_64-linux-gnu/libbcc.so.0.5.0 | grep bcc_elf
00000000004418f0 g    DF .text<PHONE_NUMBER>000017  Base        bcc_elf_is_shared_obj
0000000000441700 g    DF .text<PHONE_NUMBER>000131  Base        bcc_elf_foreach_load_section
00000000004418c0 g    DF .text<PHONE_NUMBER>000028  Base        bcc_elf_is_exe
0000000000441440 g    DF .text<PHONE_NUMBER>0002ad  Base        bcc_elf_foreach_usdt
000000000232eea0 g    DF .text<PHONE_NUMBER>00013a  Base        _ZN4USDT7Context9add_probeEPKcPK12bcc_elf_usdt
0000000000441ae0 g    DF .text<PHONE_NUMBER>0000ac  Base        bcc_elf_foreach_vdso_sym
00000000004416f0 g    DF .text<PHONE_NUMBER>000008  Base        bcc_elf_foreach_sym
0000000000441910 g    DF .text<PHONE_NUMBER>000018  Base        bcc_elf_is_vdso
000000000232efe0 g    DF .text<PHONE_NUMBER>000011  Base        _ZN4USDT7Context11_each_probeEPKcPK12bcc_elf_usdtPv
0000000000441840 g    DF .text<PHONE_NUMBER>00007c  Base        bcc_elf_get_type

How can we fix this? Should I open an issue on the bcc repo?

@brendangregg ping. Any recommendations here?

I need to setup a fresh environment and retest to see if it was just a problem with my dev environment (my dev environments get messy since I'm always building and testing things).

I ended up doing the same. It was working for me on Ubuntu 16.04, but I ran into the missing header issue on 18.04. Seems like a bug with the libbpfcc-dev package.

@acj it should be working now with bcc master. I'm just not sure we want to land this before bcc makes a new release.
Also, should we try to keep it backwards compatible (keep using objdump for older bcc versions)?

I would like to merge this since it will bring a big improvement on startup time once #557 is merged as well.

Sorry for the delay. Great to hear about the startup time improvements!
I'll test this against bcc master tomorrow morning.
If we want to merge soon, then I agree that backwards compatibility is a good move. Do we have a reliable way to get the installed bcc version? If not, I can probably branch based on the presence of bcc_elf.h.

We tend to use feature detection for compatibility with multiple bcc versions. Here's one example: https://github.com/iovisor/bpftrace/commit/c03c39fcdf72e044e5ee6252b4f1459a83aac6bf

Looks good, thanks!


[Bugfix] extra rules proguard

Codecov Report

Merging #1115 into develop will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff            @@
##           develop    #1115   +/-   ##
========================================
  Coverage    29.25%   29.25%
========================================
  Files          326      326
  Lines        14688    14688
  Branches      1337     1337
========================================
  Hits          4297     4297
  Misses        9884     9884
  Partials       507      507

Continue to review full report at Codecov.

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


Review interface implementations on all objects

Some objects are not defining the interfaces correctly, for instance roRegion has all the methods defined under ifRegion when some of those are supposed to be defined under ifDraw2D interface.

Implemented on PR #90


Conditional Markets loading, however unable to create markets for some reason.

Ran a quick sanity check and this is what I had either logged in or logged out, so it looks great, thank you so much.


Download file with metadata.

If anyone want to add id3 for download section, then contributors are welcome !!!

Added download support with metadata
https://github.com/cachecleanerjeet/Musicder/commit/761d346436f7ea142627c60ab8c8fa9b6c99948e


problems with the result list

in the last version for v9 the result list is not being saved, and the ones that existed are not being displayed correctly.
some disappear with half the list others with the complete list.
apparently if the complications box is not checked it does not save the contents of the line or disappears with those that were not previously.

Somehow I missed this bug report, my apologies. It's odd that it doesn't work, but I'll get a fix made and published today.


Issue of Notification came from the SDL

Bug Report
Our user report that SDL keep spamming notification.
Reproduction Steps

Open our app.
Connect/Disconnect one bluetooth device(input keyboard).

Expected Behavior
Only the first time show the notification if we connect to same device/existing device in history.
Observed Behavior
It will keep show the SDL notification when bluetooth switch between connected and disconnected.
OS & Version Information

Android Version: Android 8.0.0, Build.MODEL = SM-G950U
SDL Android Version: Latest Version 4.7.1, and 4.6.2.

From the source code, SdlRouterService, it will startforeground service with FOREGROUND_TIMEOUT set to 10000/1000=10 ms, it works in most device that will not show the notification at all, but it dose show the notification in some specific devices, but user can not found what it is because it disappear in very shot time 10ms?
Screenshot from our end user:

This is not a bug. It is how the system is designed. The notification will be displayed and it will disappear after 10ms if 1-BT accessory has never connected to the phone before 2-If the BT accessory has connected to the phone before but it is not an sdl enabled accessory. In the previous two cases, the notification will be displayed and then disappear very quickly. In most cases, the users will not be able to see the notification because it disappears very quickly. In some cases, the notification may be visible for a short period of time. However, if the user installed a notification tracker app, then they will see the history for all notifications even if they get displayed only for 10ms.


fix(trace): fix the wrong type name

After updated to latest version(v9.0.0).
fred = { version = "9.0", features = ["partial-tracing", "serde-json"] }

Found this error:

Thanks @wangziling, I'll merge this via https://github.com/aembke/fred.rs/pull/237


fix the grammar in the content

Fix the grammatical error related to A/An and the are articles.

[x] I have read freeCodeCamp's contribution guidelines.
[x] My pull request has a descriptive title (not a vague title like Update index.md)
[ ] My pull request targets the master branch of freeCodeCamp.
[x] None of my changes are plagiarized from another source without proper attribution.
[x] My article does not contain shortened URLs or affiliate links.

If your pull request closes a GitHub issue, replace the XXXXX below with the issue number.
Closes #XXXXX

Fix the grammatical error relate to a/an and the are articles


New Roadmap

Great stuff and looking forward to it!
Understanding this is new and long-term project, somebody has to ask...  When will we see a roadmap and possible timeline on certain features?  For example, when will support come for Output Window and Solution Explorer?
Thanks

Hi,
We are looking to collect feedback in this phase in regards to which areas developers are interested in. We will also release more details in future phases of the project as planning is still in progress.
The current release has support for extensions to create their own output window pane, via VisualStudioExtensibility.Views(),Output entry point. You can see an example of this API being used at https://github.com/microsoft/VSExtensibility/blob/main/New_Extensibility_Model/Samples/MarkdownLinter/MarkdownDiagnosticsService.cs
For solution explorer, would you be able to include more details on what kind of extensibility are you looking for?
Thanks

For solution explorer, would you be able to include more details on what kind of extensibility are you looking for?

Nothing specific currently.  I know there was some work going on in the toolkit with support for different types of items (physical/virtual file, etc.).  Mainly just pinging to see what new was coming since Solution Explorer is usually a bigger component in the extensibility area.
Thx.  Looking forward to progress in this area.


Mahdi

SMI indcator is added. Please use the test csv file to double check the results

1- Please provide a reference for your calculation: line 10.
Examples:
https://www.fmlabs.com/reference/default.htm?url=SMI.htm
https://www.youtube.com/watch?v=dDFewKqNDfU
2- typo line 40: my_SMA --> my_SMI
3- Lines are relatively long, it's your call but I suggest adding comments above lines because it would be hard to read your code in small monitors now
4- Based on the references, I think range_smoothed2 should be divided by 2. Please double-check it
5- SMI has two outputs but the code returns only one. It needs your kind attention

 Trend - 381    C1: SMI

The implementation of SMI that I am using returns one out put
The rest of comments are addressed. Please review the code. Thanks


Doesn't work with PagerAdapter and RecyclerViews

I have an app that contains recyclerviews and pageradapters. The fonts are ignored in those views. Any idea how to solve this?
Steps to reproduce

add the package to an app that uses pageradapters

Expected behavior
all views show correct font
Actual behavior
font is ignored in views that use PagerAdapters or recyclerViews
Crashlog
No exception
Configuration
Version of the Plugin: 1.0.0
Platform: Android 4.4
Device: Android Player

Which Mvx Version?
Have you got an example repo/app or could you send a pull request that extends the sample app 🌟 ?

I currently use Mvx version 4.4.0. I have moved on for now with some other solution (reflection), but as soon as this issue comes up again I will make a repo app (not enough time right now...). Ps. Android O should solve the whole font issue, so I might wait for that as well.

@nielscup can you point me to something of Android O? What exactly do you mean?


How can I invoke Cplex in VRPSolverEasy?

Hi,
I am using the sample code you provided, and I have a issue, can you please give me some advice? Thank you!
I am using Python 3.11, and the cplex version is <IP_ADDRESS>. After I installed cplex, I have tried to add the code "model.parameters.solver_name = "CPLEX"  " after "model = vrpse.Model()". However, I encountered the following errors:
BaPCod error : solver CPLEX is not found!
Please define CPLEX_ROOT environment variable before running cmake
Shoule I do some addtional operators? or my python and cplex versions do not match?
Look forward to you replay! Thank you!

Dear @shaoxiang-zheng,
Installation of the academic (Cplex) version of VRPSolverEasy is described here: https://vrpsolvereasy.readthedocs.io/en/latest/Installation/index.html#installation-of-academic-version
Have you performed all necessary steps?