Instead I will explore recreating actual google maps instrument cluster view on the phone using google maps sdks - early checks seems like this might work as long as I will be on the same network with phone and car as I did manage to render google map to bitmap on the phone, spin up server and download image from the phone from to my pc:
the left image is android auto emulator view for instrument cluster - it doesn't have bunch of UI controls that main screen has (that I would say trying to mirror main screen to instrument cluster would just not feel great even if were able to do that)

given that I have turn by turn already in my cluster I will probably skip trying to recreate that, but I will probably play with rendering some data over map (like oil temp that I can already get with exlap on the phone etc). The silly red line on the image was just checking rendering over the google map to make sure overlaying stuff would work
but some tricky parts here will be:

obviously slow framerate with currently known method of rendering image to vc
gps location (and possibly heading) - in my previous attempt I already learned that google map and vag map coordinates are not compatible (and it's not constant offset) - so if I would use cars gps to show current location on google map - that likely will be "offroad" :D from some googling, it does seem like phone gps is messy as well and currently only way to grab ~current location that google maps have is to poll that location sharing thingie and that has some delay - there is also google maps service to "snap to road", so I guess I'll check on that, but testing that will be whacky as I will actually have to drive and not just sit in garage so all of this might take a while

That's some impressively amazing progress @grajen3 !
Yeah unfortunately I'm not surprised that GPS waypoints don't quite line up, but it's a really cool idea.
If you can inject navigation data into the vag navigation, did you try just putting in the destination from the shared map and letting vag navigate independently? Much of the time it'll pick same / close route?
I like the idea of independently rendering a map and sending it, though yeah latency might be a pain. I used to hack / work on navdy HUD and its internal GPS was a bit laggy, that often resulted in missed turns because I was past the corner before the screen updated. Deal with that later though...
Your map render suggestion gave me an idea: https://xdaforums.com/t/aawireless-general-discussion-and-support.4247677/post-89380837
Also, has anyone looked into debug headunit server on phone? Might be useful notes here: https://togithub.com/opencardev/crankshaft/issues/451

If you can inject navigation data into the vag navigation, did you try just putting in the destination from the shared map and letting vag navigate independently? Much of the time it'll pick same / close route?

Not automatically / programatically but I did that couple of times manually and some scenarios it failed on:

vag nav just didn't have some freshly opened road yet (it has like updates twice a year or something like that so there's quite a big delay on that which is specifically annoying when that new road is near you and you would use it a lot)
didn't know that there is temporary detour needed (road closed for whatever reason)
vag nav wouldn't update based on traffic conditions (faster route available in google maps)

While not ideal with trying to draw google's polyline over vag map - at least it's somewhat consistent with google map route guidance. Given that waypoint mode routing stuff was a bit more steps needed to do versus what I did I would imagine this would be simpler to achieve if annoyances I had don't apply to you (or you are ok with them).

Your map render suggestion gave me an idea: https://xdaforums.com/t/aawireless-general-discussion-and-support.4247677/post-89380837

Oooh, this is great idea if, that's probably best place to do this (hah, especially that I have one of those aawireless dongles already :D) - if they could (possibly couldn't for legal reasons, not sure what terms apply but I would assume they have to play nicely with Google) and if they would be willing to do that. Btw, if they could do that, I feel like support for this would enable them to turn user's phones into possibly usable thing that navdy was promising to be so it is potential monetization source for them for some extra hardware/gadgets (I didn't know about that navdy product, but it looks pretty awesome as a concept at least, but I guess execution didn't live up to expectations) - it would seem to me that with something like https://hudway.co/glass (or even some film on windshield etc) and phone just displaying that second screen map (mirrored/inverted) this might just work - but then again this is something that google itself could have done hah.

Also, has anyone looked into debug headunit server on phone? Might be useful notes here: https://togithub.com/opencardev/crankshaft/issues/451

Not looked into that specifically, but was just checking what kind of metadata is (or should be) available (and was checking that via what kind of data navigation apps can provide to android system/aauto which is done via https://developer.android.com/reference/androidx/car/app/navigation/NavigationManager#updateTrip(androidx.car.app.navigation.model.Trip) - if we would get access to that this would give us destination / eta / lane guidance / probably more accurate manuever descriptors than what's in traces/our version of gal has
if we are thinking about capturing video streams here possibly - this is potentially interesting idea, but I would imagine phone would not allow creating 2 separate session (one for actualy headunit and one for whatever would try to capture things) and it would require something in the middle that would pass things through potentially extracting things (this is why I feel like aawireless would be potentially awesome for that as it might already handle stuff like that), but I have 0 context on actual android auto protocol and that seems way too complex for amount of time I could spend on stuff like this :D (and a bit out of what I know - at least with lsd patching it is C-like language and code itself is quite readable (granted with things decompiled not always straight forward with constants being inlined etc) - my attemps and decompiling google maps apks or using ghidra on bins extracted from cars - while still generally something one can follow, it's so mangled it's quite ... not fun to do as you get stuck a lot and often time don't see any progress in your tinkering sessions)

That said - for some code sharing on how I did waypoint mode (this will assume you have gpx file somewhere in filesystem) - https://github.com/grajen3/mib2-lsd-patching/blob/4e302ec72bf55e141eb843824b22b7d4c21a972a/lsd_java/de/vw/mib/asl/internal/navigation/waypointmode/StateDefault.java is where magic happens - as I have very messy debug code I will just paste some snippets here:
I just added this to the class for starting route import from gpx and being able to stop route guidance:
   public static boolean AndroidAutoImporting = false;
   public static boolean AndroidAutoRunning = false;

   public static boolean AndroidAutoImportAndStart(String route) {
       // instace is set in contsuctor / init and is just static field on this class
       if (instance == null) {
           return false;
       }

       AndroidAutoImporting = true;

       if (AndroidAutoRunning) {
           EventGeneric ev2 = new EventGeneric();
           ev2.setSenderRouterId(0);
           ev2.setSenderTargetId(10044);
           ev2.setSenderEventId(0);
           ev2.setReceiverRouterId(0);
           ev2.setReceiverTargetId(1330034);
           ev2.setReceiverEventId(1073742342);
           ServiceManager.eventMain.getEventDispatcher().send(ev2);
       } else {
           instance.target.changeExecutionMode(1);
           instance.target.getModelNotifier().setCurrentWPMModeDrive();
           instance.target.getInternalAPINotifier().setCurrentWPMModeDrive();
           ASLNavigationUtilFactory.getNavigationUtilApi().getNavigationDp().setWpmMode(1);
       }

       // clear up stuff
       int count = instance.target.getDataPool().getTrackList().getItemCount();
       for (int i = count - 1; i >= 0; i--) {
           EventGeneric ev = new EventGeneric();
           ev.setInt(0, i);
           instance.caseDeleteTrackFromWPMTourList(ev);
           try {
               Thread.sleep(500);
           } catch (Exception e) {
           }
       }

       ResourceLocator resourceLocator = new ResourceLocator(route);
       instance.target.getModelNotifier().setImportStateImporting();
       instance.target.getDsiNotifier().importTour(resourceLocator);
       return true;
   }

   public static void stopAndroidGuidance() {
       postponedRoute = null;
       if (AndroidAutoRunning) {
           EventGeneric ev2 = new EventGeneric();
           ev2.setSenderRouterId(0);
           ev2.setSenderTargetId(10044);
           ev2.setSenderEventId(0);
           ev2.setReceiverRouterId(0);
           ev2.setReceiverTargetId(1330034);
           ev2.setReceiverEventId(1073742342);
           ServiceManager.eventMain.getEventDispatcher().send(ev2);
           AndroidAutoRunning = false;
       }
   }

and then before returning here https://github.com/grajen3/mib2-lsd-patching/blob/4e302ec72bf55e141eb843824b22b7d4c21a972a/lsd_java/de/vw/mib/asl/internal/navigation/waypointmode/StateDefault.java#L514 to automatically start route after import finished I had
if (AndroidAutoImporting) {
            System.out.println("misiex  - imp 1");
            AndroidAutoImporting = false;

            if (n == 0) {
                this.target.changeExecutionMode(1);
                // start it
                if (navSegmentIDArray.length > 0) {
                    System.out.println("misiex  - imp 2");
                    int trailID = this.target.getDataPool().getTrackList().getItemCount() - 1;
                    System.out.println("misiex  - trail ID " + trailID);
                    if (trailID >= 0) {
                        AndroidAutoRunning = true;
                        EventGeneric ev = new EventGeneric();
                        ev.setInt(0, trailID);
                        this.caseLoadDetailsOfTour(ev);

                        EventGeneric ev2 = new EventGeneric();
                        ev2.setSenderRouterId(0);
                        ev2.setSenderTargetId(10044);
                        ev2.setSenderEventId(0);
                        ev2.setReceiverRouterId(0);
                        ev2.setReceiverTargetId(1330034);
                        ev2.setReceiverEventId(1074841914);
                        ServiceManager.eventMain.getEventDispatcher().send(ev2);
                    } else {
                        System.out.println("misiex  - dsiNavigationTrImportTrailsResult e1");
                    }
                } else {
                    System.out.println("misiex  - dsiNavigationTrImportTrailsResult e2");
                }
            } else {

            }
        } else {
            System.out.println("misiex  - dsiNavigationTrImportTrailsResult e3");
        }
        return null;

those magic "EventId" were figured out through some trial and error looking at various StateX.java files in navigation dirs
but also beware that patching them seems to sometimes cause problems - in particular in case of this file - https://github.com/grajen3/mib2-lsd-patching/blob/4e302ec72bf55e141eb843824b22b7d4c21a972a/lsd_java/de/vw/mib/asl/internal/navigation/waypointmode/StateDefault.java#L447-L451 was causing lot of errors being logged so I just commented it out because I didn't need what it was doing anyway (however in other cases something would completely break - like navigation system completely fails to start for example).
For the google map / location sharing trace I reused learnings from https://github.com/costastf/locationsharinglib (which is basically reverse engineering rpc calls that web's google maps do that you can check yourself in browser's dev tools if you have peoople sharing location or in our case trip with you - because I really don't like writing too much Java especially for handling like that I did have serverless function to massage google's endpoint data to something more reasonable to handle in java land like this (notice 2500 limit on points I did - this is because vag seems to have max 3000 points total in all of the imported GPX in waypoint mode - this is also why I trying to clear any previously imported routes in java code) - trick here is to get a hold off cookies needed and that is somewhat described in repository for locationsharinglib. This serverless function assumes account you use only have 1 person sharing trip with it
    const response = await fetch(
      "https://www.google.com/maps/rpc/locationsharing/read?authuser=2&hl=en&gl=us&&pb=!1m7!8m6!1m3!1i14!2i8413!3i5385!2i6!3x4095!2m3!1e0!2sm!3i407105169!3m7!2sen!5e1105!12m4!1e68!2m2!1sset!2sRoadmap!4e1!5m4!1e4!8m2!1e0!1e1!6m9!1e12!2i2!26m1!4b1!30m1!1f1.3953487873077393!39b1!44e1!50e0!23i4111425",
      {
        headers: {
          accept: "application/json",
          cookie: cookies,
        },
      }
    );
    const responseJson = JSON.parse((await response.text()).split(`'`)[1]);

    const destination = responseJson[0][0][8][1][0][1][0];
    const etaSeconds = responseJson[0][0][8][1][4][0][1][0];
    const etaMinutes = Math.round(etaSeconds / 60);

    const distance =
      responseJson[0][0][8][1][4][responseJson[0][0][8][1][4].length - 1][0][0];

    const stuff = responseJson[0][0][8][1][3];
    const points: Array<[number, number]> = [];

    let lat = 0;
    let lng = 0;

    let lastPoint;
    for (let i = 0; i < stuff[0].length; i++) {
      lat += stuff[0][i];
      lng += stuff[1][i];

        const point: [number, number] = [lat / 10000000, lng / 10000000];
        if (points.length + 1 < 2500) {
          points.push(point);
        } else {
          lastPoint = point;
      }
    }

    if (lastPoint) {
      points.push(lastPoint);
    }
   return {
      statusCode: 200,
      body: JSON.stringify(
        {
          active: true,
          destination,
          eta: {
            hours: Math.floor(etaMinutes / 60),
            minutes: etaMinutes % 60,
          },
          distance,
          points,
        },
        null,
        2
      ),
      headers: {
        "Content-Type": "application/json",
      },
    };

and in java land I would start polling this serverless function and writing out gpx file which I was updating later - there's more things I did - like some handling for not updating the route as I progressed the trip, but still being to able if there was detour (so checking points that lsd previously loaded against newly fetched points from the tail of the array/list (accounting for potentially removed points that had to be done to fit in waypoint number limitation etc) - also I had additional road snapping in serverless function etc. but all of this is really messy and is not that usable (IMO) so will skip on sharing that part, but in case anyone want to play with either programatically starting vag's route guidance OR get a hold of google map shared trip waypoints above snippets are I think the most relevant ones to start.

If you can inject navigation data into the vag navigation, did you try just putting in the destination from the shared map and letting vag navigate independently? Much of the time it'll pick same / close route?

Not automatically / programatically but I did that couple of times manually and some scenarios it failed on:

vag nav just didn't have some freshly opened road yet (it has like updates twice a year or something like that so there's quite a big delay on that which is specifically annoying when that new road is near you and you would use it a lot)
didn't know that there is temporary detour needed (road closed for whatever reason)
vag nav wouldn't update based on traffic conditions (faster route available in google maps)

While not ideal with trying to draw google's polyline over vag map - at least it's somewhat consistent with google map route guidance. Given that waypoint mode routing stuff was a bit more steps needed to do versus what I did I would imagine this would be simpler to achieve if annoyances I had don't apply to you (or you are ok with them).

Your map render suggestion gave me an idea: https://xdaforums.com/t/aawireless-general-discussion-and-support.4247677/post-89380837

Oooh, this is great idea if, that's probably best place to do this (hah, especially that I have one of those aawireless dongles already :D) - if they could (possibly couldn't for legal reasons, not sure what terms apply but I would assume they have to play nicely with Google) and if they would be willing to do that. Btw, if they could do that, I feel like support for this would enable them to turn user's phones into possibly usable thing that navdy was promising to be so it is potential monetization source for them for some extra hardware/gadgets (I didn't know about that navdy product, but it looks pretty awesome as a concept at least, but I guess execution didn't live up to expectations) - it would seem to me that with something like https://hudway.co/glass (or even some film on windshield etc) and phone just displaying that second screen map (mirrored/inverted) this might just work - but then again this is something that google itself could have done hah.

Also, has anyone looked into debug headunit server on phone? Might be useful notes here: https://togithub.com/opencardev/crankshaft/issues/451

Not looked into that specifically, but was just checking what kind of metadata is (or should be) available (and was checking that via what kind of data navigation apps can provide to android system/aauto which is done via https://developer.android.com/reference/androidx/car/app/navigation/NavigationManager#updateTrip(androidx.car.app.navigation.model.Trip) - if we would get access to that this would give us destination / eta / lane guidance / probably more accurate manuever descriptors than what's in traces/our version of gal has
if we are thinking about capturing video streams here possibly - this is potentially interesting idea, but I would imagine phone would not allow creating 2 separate session (one for actualy headunit and one for whatever would try to capture things) and it would require something in the middle that would pass things through potentially extracting things (this is why I feel like aawireless would be potentially awesome for that as it might already handle stuff like that), but I have 0 context on actual android auto protocol and that seems way too complex for amount of time I could spend on stuff like this :D (and a bit out of what I know - at least with lsd patching it is C-like language and code itself is quite readable (granted with things decompiled not always straight forward with constants being inlined etc) - my attemps and decompiling google maps apks or using ghidra on bins extracted from cars - while still generally something one can follow, it's so mangled it's quite ... not fun to do as you get stuck a lot and often time don't see any progress in your tinkering sessions)

That said - for some code sharing on how I did waypoint mode (this will assume you have gpx file somewhere in filesystem) - https://github.com/grajen3/mib2-lsd-patching/blob/4e302ec72bf55e141eb843824b22b7d4c21a972a/lsd_java/de/vw/mib/asl/internal/navigation/waypointmode/StateDefault.java is where magic happens - as I have very messy debug code I will just paste some snippets here:
I just added this to the class for starting route import from gpx and being able to stop route guidance:
   public static boolean AndroidAutoImporting = false;
   public static boolean AndroidAutoRunning = false;

   public static boolean AndroidAutoImportAndStart(String route) {
       // instace is set in contsuctor / init and is just static field on this class
       if (instance == null) {
           return false;
       }

       AndroidAutoImporting = true;

       if (AndroidAutoRunning) {
           EventGeneric ev2 = new EventGeneric();
           ev2.setSenderRouterId(0);
           ev2.setSenderTargetId(10044);
           ev2.setSenderEventId(0);
           ev2.setReceiverRouterId(0);
           ev2.setReceiverTargetId(1330034);
           ev2.setReceiverEventId(1073742342);
           ServiceManager.eventMain.getEventDispatcher().send(ev2);
       } else {
           instance.target.changeExecutionMode(1);
           instance.target.getModelNotifier().setCurrentWPMModeDrive();
           instance.target.getInternalAPINotifier().setCurrentWPMModeDrive();
           ASLNavigationUtilFactory.getNavigationUtilApi().getNavigationDp().setWpmMode(1);
       }

       // clear up stuff
       int count = instance.target.getDataPool().getTrackList().getItemCount();
       for (int i = count - 1; i >= 0; i--) {
           EventGeneric ev = new EventGeneric();
           ev.setInt(0, i);
           instance.caseDeleteTrackFromWPMTourList(ev);
           try {
               Thread.sleep(500);
           } catch (Exception e) {
           }
       }

       ResourceLocator resourceLocator = new ResourceLocator(route);
       instance.target.getModelNotifier().setImportStateImporting();
       instance.target.getDsiNotifier().importTour(resourceLocator);
       return true;
   }

   public static void stopAndroidGuidance() {
       postponedRoute = null;
       if (AndroidAutoRunning) {
           EventGeneric ev2 = new EventGeneric();
           ev2.setSenderRouterId(0);
           ev2.setSenderTargetId(10044);
           ev2.setSenderEventId(0);
           ev2.setReceiverRouterId(0);
           ev2.setReceiverTargetId(1330034);
           ev2.setReceiverEventId(1073742342);
           ServiceManager.eventMain.getEventDispatcher().send(ev2);
           AndroidAutoRunning = false;
       }
   }

and then before returning here https://github.com/grajen3/mib2-lsd-patching/blob/4e302ec72bf55e141eb843824b22b7d4c21a972a/lsd_java/de/vw/mib/asl/internal/navigation/waypointmode/StateDefault.java#L514 to automatically start route after import finished I had
if (AndroidAutoImporting) {
            System.out.println("misiex  - imp 1");
            AndroidAutoImporting = false;

            if (n == 0) {
                this.target.changeExecutionMode(1);
                // start it
                if (navSegmentIDArray.length > 0) {
                    System.out.println("misiex  - imp 2");
                    int trailID = this.target.getDataPool().getTrackList().getItemCount() - 1;
                    System.out.println("misiex  - trail ID " + trailID);
                    if (trailID >= 0) {
                        AndroidAutoRunning = true;
                        EventGeneric ev = new EventGeneric();
                        ev.setInt(0, trailID);
                        this.caseLoadDetailsOfTour(ev);

                        EventGeneric ev2 = new EventGeneric();
                        ev2.setSenderRouterId(0);
                        ev2.setSenderTargetId(10044);
                        ev2.setSenderEventId(0);
                        ev2.setReceiverRouterId(0);
                        ev2.setReceiverTargetId(1330034);
                        ev2.setReceiverEventId(1074841914);
                        ServiceManager.eventMain.getEventDispatcher().send(ev2);
                    } else {
                        System.out.println("misiex  - dsiNavigationTrImportTrailsResult e1");
                    }
                } else {
                    System.out.println("misiex  - dsiNavigationTrImportTrailsResult e2");
                }
            } else {

            }
        } else {
            System.out.println("misiex  - dsiNavigationTrImportTrailsResult e3");
        }
        return null;

those magic "EventId" were figured out through some trial and error looking at various StateX.java files in navigation dirs
but also beware that patching them seems to sometimes cause problems - in particular in case of this file - https://github.com/grajen3/mib2-lsd-patching/blob/4e302ec72bf55e141eb843824b22b7d4c21a972a/lsd_java/de/vw/mib/asl/internal/navigation/waypointmode/StateDefault.java#L447-L451 was causing lot of errors being logged so I just commented it out because I didn't need what it was doing anyway (however in other cases something would completely break - like navigation system completely fails to start for example).
For the google map / location sharing trace I reused learnings from https://github.com/costastf/locationsharinglib (which is basically reverse engineering rpc calls that web's google maps do that you can check yourself in browser's dev tools if you have peoople sharing location or in our case trip with you - because I really don't like writing too much Java especially for handling like that I did have serverless function to massage google's endpoint data to something more reasonable to handle in java land like this (notice 2500 limit on points I did - this is because vag seems to have max 3000 points total in all of the imported GPX in waypoint mode - this is also why I trying to clear any previously imported routes in java code) - trick here is to get a hold off cookies needed and that is somewhat described in repository for locationsharinglib. This serverless function assumes account you use only have 1 person sharing trip with it
    const response = await fetch(
      "https://www.google.com/maps/rpc/locationsharing/read?authuser=2&hl=en&gl=us&&pb=!1m7!8m6!1m3!1i14!2i8413!3i5385!2i6!3x4095!2m3!1e0!2sm!3i407105169!3m7!2sen!5e1105!12m4!1e68!2m2!1sset!2sRoadmap!4e1!5m4!1e4!8m2!1e0!1e1!6m9!1e12!2i2!26m1!4b1!30m1!1f1.3953487873077393!39b1!44e1!50e0!23i4111425",
      {
        headers: {
          accept: "application/json",
          cookie: cookies,
        },
      }
    );
    const responseJson = JSON.parse((await response.text()).split(`'`)[1]);

    const destination = responseJson[0][0][8][1][0][1][0];
    const etaSeconds = responseJson[0][0][8][1][4][0][1][0];
    const etaMinutes = Math.round(etaSeconds / 60);

    const distance =
      responseJson[0][0][8][1][4][responseJson[0][0][8][1][4].length - 1][0][0];

    const stuff = responseJson[0][0][8][1][3];
    const points: Array<[number, number]> = [];

    let lat = 0;
    let lng = 0;

    let lastPoint;
    for (let i = 0; i < stuff[0].length; i++) {
      lat += stuff[0][i];
      lng += stuff[1][i];

        const point: [number, number] = [lat / 10000000, lng / 10000000];
        if (points.length + 1 < 2500) {
          points.push(point);
        } else {
          lastPoint = point;
      }
    }

    if (lastPoint) {
      points.push(lastPoint);
    }
   return {
      statusCode: 200,
      body: JSON.stringify(
        {
          active: true,
          destination,
          eta: {
            hours: Math.floor(etaMinutes / 60),
            minutes: etaMinutes % 60,
          },
          distance,
          points,
        },
        null,
        2
      ),
      headers: {
        "Content-Type": "application/json",
      },
    };

and in java land I would start polling this serverless function and writing out gpx file which I was updating later - there's more things I did - like some handling for not updating the route as I progressed the trip, but still being to able if there was detour (so checking points that lsd previously loaded against newly fetched points from the tail of the array/list (accounting for potentially removed points that had to be done to fit in waypoint number limitation etc) - also I had additional road snapping in serverless function etc. but all of this is really messy and is not that usable (IMO) so will skip on sharing that part, but in case anyone want to play with either programatically starting vag's route guidance OR get a hold of google map shared trip waypoints above snippets are I think the most relevant ones to start.

Just find out this video in Chinese Social Media.
I think somehow they did it.
http://xhslink.com/TnZ62C

I just find this in Chinese social media. Somehow they did it on an Audi A3. Im asked him, he is not answering me. https://github.com/jilleb/mib2-toolbox/assets/125920080/43d52543-35fe-4e0b-8016-2676beb433b4

it looks like VC from Audi TT

Maybe need to start investigation from Audi TT Virtual Cockpit FW? TT cockpit should be similar to A3

Maybe need to start investigation from Audi TT Virtual Cockpit FW? TT cockpit should be similar to A3 and support Car Play

Yeah, don't they have the same hardware?
Just read about that after iOS 17.4 official update, many cars are supporting Carplay on VC.

Maybe need to start investigation from Audi TT Virtual Cockpit FW? TT cockpit should be similar to A3 and support Car Play

Yeah, don't they have the same hardware?
Just read about that after iOS 17.4 official update, many cars are supporting Carplay on VC.

I have a Volvo XC90 rental vehicle while my Audi is in the body shop.  iOS 17.4 allows the dual screen only during navigation (at least on this vehicle only) at all other times, it uses the android system map from the head unit.  The CarPlay apple map during navigation on the cluster is a far zoomed out overview only - not really that helpful.
https://github.com/jilleb/mib2-toolbox/assets/87341721/71a822f7-d47c-417d-8e69-90d115d002f7

The CarPlay apple map during navigation on the cluster is a far zoomed out overview only - not really that helpful.

This is what 17.4 was actually supposed to change - see https://9to5mac.com/2024/03/06/ios-17-4-carplay/

Starting with iOS 17.4, cars with instrument cluster displays can also toggle the main display between a street-level view and the sky-level view. Toggling modes simply swaps which view appears on which screen.
Effectively, this just means that turn-by-turn directions can appear behind the steering wheel now rather than the overview mode.

Second maps screen in instrument cluster was a thing for a quite a bit of time (granted not many brands support it - like Volvo/Polestar with android automotive and BMW with iDrive8 that I know of) - and this both Google maps on Android Auto and Apple maps on Carplay (those are somewhat separate but similar implementations, so possibly some cars might support both or one of that, but as I'm not in the market for new car I'm not that up to date on that :D only relevancy I had with that is wether I could hack this into my current car hah)

Take screenshot of Android auto on the phone (there Is option inside android auto development menu) expose it as http endpoint download it over MIB WiFi And render it to MOST. Main issue Is to how to také screenshot...

I just find this in Chinese social media. Somehow they did it on an Audi A3. Im asked him, he is not answering me. https://github.com/jilleb/mib2-toolbox/assets/125920080/43d52543-35fe-4e0b-8016-2676beb433b4

it looks like VC from Audi TT

Just get contact with him. He told me it’s very complicated, he built two VC hardwares (one of A3 and one of tt) together. And as result, the screen in the middle is not working anymore just like TT. So CarPlay only on VC. He said with the original A3 VC it’s impossible to run CarPlay on VC🥲

I just find this in Chinese social media. Somehow they did it on an Audi A3. Im asked him, he is not answering me. https://github.com/jilleb/mib2-toolbox/assets/125920080/43d52543-35fe-4e0b-8016-2676beb433b4

it looks like VC from Audi TT

Just get contact with him. He told me it’s very complicated, he built two VC hardwares (one of A3 and one of tt) together. And as result, the screen in the middle is not working anymore just like TT. So CarPlay only on VC. He said with the original A3 VC it’s impossible to run CarPlay on VC🥲

Running directly on VC is nearly impossible but sending it over MOST from MIB unit is possible.

Anyway i found something really interesting
Im able to use dmminimal to create new window which generates OpenGL triangle
as code for dmminimal is really small i believe it will be possible to modify it (or rewrite to python) in order to make rendering much faster
commands:
dmminimal 89 (generate new OpenGL window under context 89)
dmdt dc 120 89 (create context number 120 with my window 89 inside it)
dmdt sc 4 120 (switch VC to context 120 with my window)

eventually it can look something like this
https://github.com/jilleb/mib2-toolbox/assets/320479/4a1b0735-ce35-4533-83c1-5f916d90f02a

dmminimal seems like worse target to try to modify than loadimageandshow because latter already have image loading part - it is simpler, but if we want to render images from files there you'd need to add image loading parts back

I think dmminimal Is better as it is rendering in White(true) loop
I think i Will try to repair "import ctypes" again ..

if you can get this working in python that would be great, but just looking at what ghidra decompiles either of those 2 - this is quite standard egl/opengl es code there and some kd windowing system? Seems like this https://www.qnx.com/developers/docs/6.4.1/composition_manager/dev_guide/externalapi.html describes that "stack"? image loading seems separate from that if you'd want to have that

I think dmminimal Is better as it is rendering in White(true) loop

I never messed with trying to modify binaries, but wouldn't changing control flow (goto / jump or whatever) be simpler than trying to link to currently unused libs? that was my reasoning about modifying target probably being simpler with loadandshowimage than dmminimal

Also it looks to me that main reason why it is not possible to switch display 4 (most) to DISPLAYABLE_EXTERNAL_SMARTPHONE Is resolution  looks like im only able to switch to 800x480 window and nothing else

VCRenderAADash is now able to render all manuevers from "onJob_updateNavigationNextTurnEvent"
It is also showing speed from AAsensor data and distance from "onJob_updateNavigationNextTurnDistance" event
Next goal is to make rendering faster so mainly speed data is accurate

https://www.youtube.com/watch?v=T4xch2IFbio is concept of recreating google maps in background service / off screen on the phone (you can see that my phone is locked - bottom/left corner is mirror of my phone display, but even unlocked it wouldn't show the same map it shows on top left corner which is what would be supposed to be displayed in VC)
Top left just continuosly request new version of image from the phone which is what I would imagine head unit would have to do (if we manage to get VC rendering in nice framerate).
This was simulating actual driving with some android fake gps simulators, just so it's not stationary

that looks nice :-) but i can see that there is no next-turn info :-/

that looks nice :-) but i can see that there is no next-turn info :-/

Not yet - but this can be added using https://github.com/3v1n0/GMapsParser directly (or implementing that myself) - basically just read google map notification that shows up and extra information and then draw it over google map bitmap/snapshot.
This is something that I would explore for sure, and will do just silly test now without much "styling" to just make sure I can extract that information in android auto mode
But I wanted to get to the point of seeing how fast realistically I could get phone to generate "images" and serve them on some endpoint for VC to consume and while not super smooth like actual android auto emulator - if we could get VC to get similar "performance" (both latency and framerate) - that might be actually "usable".
There's more thing to replicate later also - zoom in when close to manuever and zoom in/out otherwise based on speed or something etc - but all of this doesn't make sense doing if we can't get VC do render fast enough for it to be usable

requesting new image from http endpoint is not an issue that can be done in few lines of code

Oh yeah, I know - I've been doing that already in LSD (tho that was for shared trip data indrectly from google's internal API for that and not to pull image from the phone, but as long as phone will be on same network or there will be some tunnelling that's the simple part :) )

i do not like how overengineered this would be :-D there must be better way to steal android auto rendered image as development options for AA allow me to take screenshot/video

i do not like how overengineered this would be :-D there must be better way to steal android auto rendered image as development options for AA allow me to take screenshot/video

If you find a way, let me know. I tried decompiling android auto ( com.google.android.projection.gearhead ) and google maps ( com.google.android.apps.maps ) but this is almost unreadable (in no way it even resemble pretty readable decompiled LSD), but screenshot part I saw couldn't be invoked with Android Intents and only achievable via UI. There is option to save video stream, but other apps do not have access to it that directory security reasons (also it wasn't clear to me if the video was actually flushed immediately or not, as on most recent versions I didn't see video being saved to phone's FS at all)
But even then - it will be main android auto screen which is not designed to be shown in cluster with extra UI intended for user interactions and would only really work if you have maps as ~full screen on infotainment screen (that's not the worst limitation, but still would be pretty meeh to see vc mirroring as you change your playlist or something or passenger checks for something else etc and now you lose sight of actual "next turn info" because main screen shows something else ATM).
Ideally I would want to capture second screen designed for cluster instead of "recreating one", but this is way more complex than what I'm doing (and would be even more overengineered as I would need to simulate "android auto" host and reimplement bunch of what it does to launch "car service" for it - this require waaaay to much android (auto) internal knowledge to do ).

Your map render suggestion gave me an idea: https://xdaforums.com/t/aawireless-general-discussion-and-support.4247677/post-89380837

This would be perfect, but from what I can see there was no reply to that question / feature request so I wouldn't hold my breath for it
Least "overengineered" solution would be to "just" update gal to recent AA protocol and just tell phone that it supports 2 screens - but then we would only get additional h264 stream that we have no way to decode and can't forward to VC as from what I followed on this topic is not something that is supported (otherwise we could just forward gal's video dumped by enabling some configuration settting in gal.json to achieve "mirroring" on VC)
All in all - I do not think this overall thing is feasable as something that people will be able to just "enable" (at least not without additional hardware, because there is also option to have some device like ~raspberry pi in betwen phone and head unit that would advertise support for second screen receive streams for both main and cluster screens and then just passthrough main one to car and extract last frames from second to be used for VC)
I'm pretty sure this whole thing will be "tinkering-only" kind of deal and even if I manage to get something usable for me - because I use bunch of extra APIs (some of which need API keys or extra credentials) it's not something that can be packaged nicely (I'm not interested for paying for those service for other people to be able to use what I did) and would require extensive configuration to make it work (setting up services, providing keys/credentials and then still be pretty brittle, so wouldn't really advise others who are unable or just can't waste time on it, to actually even try to use it)

best approach will be to somehow try to grab process memory and get the image that way
but no idea where to start with that aproach (maybe try to write some micropython code to call system functions which let us grab process memory)
i also want to poke aroung "take screenshot" functionality from dmdt maybe some idea can be there how to grab not just window but also a stream

yes i know but you can modify renderer in gal.json and maybe some option will store image before rendering in process memory
about tegra "framebuffer" there is not a single word on the internet

If there is option like that would end up decoding on CPU and not offloading it to tegra I would very curious about resulting framerate :) There's a reason video decoding is done on GPUs and not CPUs

If we could get the Android auto display context to be displayed in place of the cockpit navi...

I believe that main reason why it cannot be switched Is wrong resolution as only 800x480 windows can be assigned to display 4 (VC)

I am digging into configurationmanager.res which has some definitions for the display configs inside... Maybe this can help 😁

Weird Is that display manager not even see this MOST display.
It Will be interesting to see if we can switch to rear camera but i do not have it unfortunatelly

I've switched the AA context with the rear view cam once. That worked 😁 it would switch to the cam when I pressed the appconnect button on my hmi.

But is it possible to switch camera to VC via mdmt?

I'm pretty sure the AA context can't be switched onto VC for the same reason we can't screen shot it; the Tegra GPU will be decoding it directly onto the hardware screen output (connected to main unit display).
The vc on the other hand is a "fake screen" in that the qnx context will essentially be read out the same way a screenshot util works and streamed out over MOST.
The Tegra decoder won't be able to see this.
Maybe there would be a way to force the Tegra decoder to write to an opengl surface instead however, considering there was that opengl frame sent to vc a few comments back maybe this would be a possible solution. But still, would just be mirroring main screen at best.

Mirroring will have huge problem with finding correct place to cut data as main screen is 1280x720
MOST video stream should be 800x480 but in reality it is only like 560x480 in the middle (and even less with bigger dials)

so red square is area which can be visible if we are going to have it pixel perfect without rescale

Yeah, this is exactly why I don't think mirroring would be that great. Maybe if you do the "split screen" view - it would be more usable as something to render on VC (tho aspect ratio will be weird and you might get black bars at the side?), but then it forces you to use that mode by default so when you interact with main screen you would need to remember to get back to split screen view - pretty poor UX :/
I think I am giving up on trying to get ~Android Auto/google maps actually displayed in VC at least for now and will check if I can get waypoint mode better (I've been actually using it a bit and it wasn't that off for the most part at least ) - do any of you know actual map provider for mib2high vag navigation? I've read they use HERE, but not clear if that's true or not. I will look into roadsnapping feature it offers for testing and try to figure out extracting google map navigation polyline without having to use "share trip" for that

I think I am giving up on trying to get ~Android Auto/google maps actually displayed in VC at least for now and will check if I can get waypoint mode better (I've been actually using it a bit and it wasn't that off for the most part at least ) - do any of you know actual map provider for mib2high vag navigation? I've read they use HERE, but not clear if that's true or not. I will look into roadsnapping feature it offers for testing and try to figure out extracting google map navigation polyline without having to use "share trip" for that

Had it confirmed by both my dealership and importer that their provider is HERE. Did some complaining about speed limits a couple months ago.

The backend for traffic information is actually TomTom. But you can use HERE as provider as well with a bit of adjustment.

Yeah, don't care about traffic information itself - I'm looking to make what I showed in https://github.com/jilleb/mib2-toolbox/issues/159#issuecomment-1970068441 better - since that I already did add snapping to roads via mapbox which is closer to VAG than google map with road coordinates, but still not the same - since I asked I got some playground running (that I previously had with google maps and mapbox, and now just added here maps) and it shows similarity to where mapbox is not exactly matching vag:

top-left is google maps
bottom-left is mapbox
top-right is here maps
red line is exact route polyline from google maps (shared trip stuff)
lavender line is the above polyline "snapped to roads" via mapbox APIs
You can see that on here maps the lavendar maps go to the edge of the road instead of staying in the middle - this is also what I saw when driving the car in that bit of my usual route.
So I will look to figure out Here's road snapping (it does have it) and see how that performs - even ignoring those slight mismatches on mapbox - there were more serious problems with it that I saw in playground (that I didn't necesairly see actually driving, but I also didn't drive further in recent time) like below where road snapping at least with mapbox (and at least with options I used) was sometimes figuring it "weird detours" (in this case it's just silly, but in some more road dense area this inaccuracy might really put you in weird scenarios if you'd rely on this too much)

All in all above just shows how those map providers can differ from each other in subtle (or sometimes less subtle) ways with road/object coordinates

Here maps road snapping seems better (assuming it will match builtin's nav) - will see how it works in practice next time I have a ride (green is here's road snapping):

[CMOSTEncoderInterface::reconfigureEncoder] invalid displayable with did:-2
anyone found where this came from ?

roundabouts does not have "turn number" but they are using "turn angle" so icon must be dynamically adjusted for that :/

or just create 18 icons with 20 degrees turn 😄

you'll miss 90 and 270 degree quite common turns :) I'd suggest every 45 deg to have decent coverage and then snap actual reported value to nearest image you do have - so if you would have 8 images each covering 45 deg - if reported turnAngle is 0-22, 338-360 - you show turnaround icon, 23-47 sharp right etc
you can use https://github.com/grajen3/mib2-lsd-patching/blob/aa-in-vc/patched/de/esolutions/fw/comm/dsi/androidauto2/impl/DSIAndroidAuto2ReplyService.java#L943-L947 as minor helper (I did initially messed up and had straight and uturn wrong away around hah, so figured this might help prevent you hitting similar WTF moment :) )
For the most part you probably will see just 90, 180 and 270 angles (but I guess it depends on your local roundabouts - at least that's most common around me)

I managed to make QNX 6.5 SDK working so now im able to write C++ code which can be then executed on MIB itself

now is there anybody who know how to create OpenGL "Hello World" in C++? it looks like display manager is OpenKODE so we can try to create better/faster rendering solution?

Hey everyone, little bit off topic but maybe someone here can help with this. I’ve just retrofitted VC into my A4 B9, I also had to replace the MIB (5F) and install the LVDS cable from MIB to VC.
I’m not getting any image to the maps section of the VC.
How can I test if the issue is either

Output from MIB
LVDS wire

Input in VC

If anyone has any info that can help me I’d really appreciate it!

Did you check the coding for the replacement MMI?
 I’ve just retrofitted VC into my A4 B9, I also had to replace the MIB
(5F) and install the LVDS cable from MIB to VC.
I’m not getting any image to the maps section of the VC.
How can I test if the issue is either

Output from MIB
LVDS wire

Input in VC

If anyone has any info that can help me I’d really appreciate it!
—
Reply to this email directly, view it on GitHub
https://github.com/jilleb/mib2-toolbox/issues/159#issuecomment-2002846477,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ANMVSMVVUMGEXSW7DNABVJDYYZMSHAVCNFSM43CW7UL2U5DIOJSWCZC7NNSXTN2JONZXKZKDN5WW2ZLOOQ5TEMBQGI4DINRUG43Q
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>

Did you check the coding for the replacement MMI?
 I’ve just retrofitted VC into my A4 B9, I also had to replace the MIB

(5F) and install the LVDS cable from MIB to VC.

I’m not getting any image to the maps section of the VC.

How can I test if the issue is either

Output from MIB

LVDS wire

  1. Input in VC

If anyone has any info that can help me I’d really appreciate it!

—

Reply to this email directly, view it on GitHub

https://github.com/jilleb/mib2-toolbox/issues/159#issuecomment-2002846477,

or unsubscribe

https://github.com/notifications/unsubscribe-auth/ANMVSMVVUMGEXSW7DNABVJDYYZMSHAVCNFSM43CW7UL2U5DIOJSWCZC7NNSXTN2JONZXKZKDN5WW2ZLOOQ5TEMBQGI4DINRUG43Q

.

You are receiving this because you are subscribed to this thread.Message

ID: @.***>

Thanks for the reply!
This is interesting actually.
I was looking at my coding for this yesterday and I have my > navigation_map_transmission_mode:
Set to LVDS_map_FPK.
I figured it was the correct coding as the input to the Virtual Cockpit is LVDS.

little progress :-) running QNX remote debug on virtual machine
anyone feel free to help with C++ and openGL it is real pain for me

`#include <GL/glut.h>
// Function to initialize OpenGL
void init() {
glClearColor(0.0, 0.0, 0.0, 1.0); // Set clear color to black
}
// Function to display content
void display() {
glClear(GL_COLOR_BUFFER_BIT); // Clear the color buffer
glColor3f(1.0, 1.0, 1.0); // Set color to white
glBegin(GL_TRIANGLES); // Begin drawing triangles
glVertex2f(-0.5, -0.5); // Vertex 1
glVertex2f(0.5, -0.5); // Vertex 2
glVertex2f(0.0, 0.5); // Vertex 3
glEnd(); // End drawing triangles
glFlush(); // Flush OpenGL pipeline
}
int main(int argc, char** argv) {
glutInit(&argc, argv); // Initialize GLUT
glutCreateWindow("OpenGL Hello World"); // Create a window
glutDisplayFunc(display); // Register display function
init(); // Initialize OpenGL
glutMainLoop(); // Enter the GLUT event processing loop
return 0;
}`


enabled dependabot for pip/github-action packages

PR to enable depondabot scan for pip and github actions
More info: https://docs.github.com/en/code-security/getting-started/dependabot-quickstart-guide

The PR should include a changelist comment explaining the purpose / nature of the change.
I've been using YAML for a number of years, but I had to look up the meaning of three hyphens.
They're really not appropriate here. The hyphens mark the start of a document when you need a separator. The comment block is documentation for the YAML that follows, so it's part of the same document.
Harmless in this case, but still inappropriate.

Thanks Derek, updated the PR description!

LGTM
Just one minor comment: Do we need to check for daily updates? pip packages are not updated that frequently.

@5abeel : will change the frequency once we have report for SDLe.

Hi Aravind,
You should probably enable Dependabot for github actions on:

ipdk-io/krnlmon
ipdk-io/stratum-deps
idpk-io/stratum-dev

What’s the scope of the pip scanning?

pip commands in github workflows?
Files in the repository (and, if so, what kinds of files)?

Best regards,
Derek
From: Aravindkumar Mg @.>
Sent: Tuesday, November 14, 2023 7:31 PM
To: ipdk-io/networking-recipe @.>
Cc: Foster, Derek Graham @.>; State change @.>
Subject: Re: [ipdk-io/networking-recipe] enabled dependabot for pip/github-action packages (PR #340)
LGTM
Just one minor comment: Do we need to check for daily updates? pip packages are not updated that frequently.
@5abeelhttps://github.com/5abeel : will change the frequency once we have report for SDLe.
—
Reply to this email directly, view it on GitHubhttps://github.com/ipdk-io/networking-recipe/pull/340#issuecomment-1811754448, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ADB5QKOS26SGIL5RRAJ5KNLYEQZRBAVCNFSM6AAAAAA7KKJTVGVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQMJRG42TINBUHA.
You are receiving this because you modified the open/close state.Message ID: @.***>


Deprecation warning on details component

Description of the issue
The usage of ::webkit-details-marker pseudoselector in details component is flagged as deprecated in Google Chrome for a while now. That's not news, but this deprecation started to affect page rank on 24 March 2021, causing a drop in 'Best Practices' from 93 to 87 for GOV.UK.

Steps to reproduce the issue
Load any page that requires the details component styles and check the console.
Check SpeedCurve or run a Lighthouse audit to see how this affects page ranking.
For people with access to GDS SpeedCurve here are the before and after reports.
Actual vs expected behaviour
No deprecation warnings.
Environment (where applicable)
Google Chrome Version 89.0.4389.90 (Official Build) (x86_64)
macOS 10.15.7 (19H524)

Thanks for flagging this, @alex-ju.
It looks like our use of display: inline-block on the summary mirrors the 'modern' way of doing this as suggested in https://chromestatus.com/feature/6730096436051968.
However, I haven't been able to find a way to remove references to ::-webkit-details-marker without causing duplicate markers to appear in Safari and Chrome < 86. There are a couple of other comments on the tracking bug referenced that seem to agree that this is a problem.
It looks like the deprecation warning is being removed in Chrome 91 – as referenced here and from testing in Chrome Canary (91.0.4461.0), where the console message is no longer shown and a lighthouse test returns 100 for best practises on http://localhost:3000/components/details/preview (versus 93 in Chrome 89.0.4389.90).
I'm therefore wondering whether we can just wait this one out – as far as I can tell, we're doing all the right things here and Chrome is just being overzealous by flagging this as an issue.

However, I haven't been able to find a way to remove references to ::-webkit-details-marker without causing duplicate markers to appear in Safari and Chrome < 86. There are a couple of other comments on the tracking bug referenced that seem to agree that this is a problem.

Same here – I gave it 1h or so and couldn't find a way forward.

It looks like the deprecation warning is being removed in Chrome 91 – as referenced here and from testing in Chrome Canary (91.0.4461.0), where the console message is no longer shown and a lighthouse test returns 100 for best practises on http://localhost:3000/components/details/preview (versus 93 in Chrome 89.0.4389.90).

Great find! I agree Chrome is overzealous with this.
Would it be ok if I leave this open until 91 comes out?

For reference, stable of 91 is due May 25th.

Chrome 91 is now the current stable release.
Re-running Lighthouse best practises audit in Chrome 91 against https://govuk-frontend-review.herokuapp.com/components/details/preview shows 0 failed audits and returns a score of 100/100.
@alex-ju based on that and the discussion so far, are you happy to close this now?


can not type any char open  under tmux

mac os 10.12.4
code  1.16.1
enter tmux mode
then code . open the editor
just can type  tab char  ,type other char is no response when in new   document or  in file name input for  creat file/folder  and after  Command + P  in the  command input also can not type any char

https://medium.com/@joaomoreno/persistent-terminal-sessions-in-vs-code-8fc469ed6b41


Huge Feature possibility -- Ability to use more precise "Since" and "Until" equivalents

As we all know, the Twitter search feature only allows the date for since and until which is a huge pain in the ass for recovering at specific points. However, you can pass max_id and min_id to Twitter search. Here is an example: https://twitter.com/search?q=truck max_id%3A1145726304651747328&src=typed_query&f=live
You're probably thinking, "That's great, but those aren't datetimes." Well, the datetime of tweets made with the snowflake implementation are backed into the ids! So you can translate a datetime object to a twitter id and use that id as a boundary marker to simulate much more precise since and until flags.
Here's the code to convert a Twitter ID to microsecond epoch:
(tweet_id >> 22) +<PHONE_NUMBER>657 -- This gives the millisecond epoch of when the tweet was created.
Now here's the magical one:
(millisecond_epoch -<PHONE_NUMBER>657) << 22  = tweet id
So let's say we want to get Tweets that have the term "magic" in them from February 3, 2015 at 9:37 am eastern standard time. First, we need to convert that date to millisecond epoch. That translates to<PHONE_NUMBER> epoch for the start of the minute and<PHONE_NUMBER> for the end of the minute (60 seconds). We multiply them by 1,000 and use the formula above to get the min_id and max_id boundaries:
min_id =<PHONE_NUMBER>000 -<PHONE_NUMBER>657) << 22 =<PHONE_NUMBER>99126272
max_id =<PHONE_NUMBER>000 -<PHONE_NUMBER>657) << 22 =<PHONE_NUMBER>57366272
Now let's test this on Twitter:
https://twitter.com/search?q=the max_id%3A562621024957366272&src=typed_query&f=live
It looks like it has problems with both min_id and max_id at once, but max_id does indeed show tweets with "magic" in it starting exactly at 2015-02-03 9:37 am Eastern time.
This should open the door to a lot of really cool possibilities including more exact timeline targeting for search and resume capabilities since we can resume at a specific time.

Here is the equivalent command in twint:
twint -s "magic max_id:562621024957366272"
What I suggest is that we make a flag for this that will automatically convert YYYY-MM-DD HH:MM:SS to the correct max_id. This will allow people to target very specific parts of the timeline down to the second.

That would be an amazing feature!
Confirmed that both max_id and min_id doesn't work, but we actually need max_id only in the first request, and then just place min_id in the further requests until the "limit" is not reached

It seems like this could get around the 3200 tweet limit on search (and maybe favorites) since you'd just need to relaunch the function from the last recorded tweet id.

@pielco11

Confirmed that both max_id and min_id doesn't work, but we actually need max_id only in the first request, and then just place min_id in the further requests until the "limit" is not reached

Just to clarify, are these statements correct?

On the first request, the value of init passed to url.Search will always be -1

If the value of init is -1 and config.Since is defined then on the first request max_id needs to be set.
If the value init is not -1 and config.Until is set then min_id needs to be set based on config.Until until Limit is reached or min_id is in the feed.
If the value of init is not -1 and config.Until is not set, then neither min_id nor max_id are required in subsequent requests (i.e. max_position as defined by init is controlling the feed at this point up to Limit tweets returned or no more data is encountered) .

If the value of init is -1 and config.Until is defined then on the first request request min_id needs to be set based on config.Until.
On subsequent requests, min_id should be set based on config.Until.
Requests should continue up until min_id is in the feed or Limit has been reached.


Add references and glossary tooltip in the control-plane-node-communication page

This is a Feature Request
What would you like to be added

There are terms that can use the addition of a glossary tooltip to show the meaning of the said term.
There is no what's next or reference section
Some terms can use references like : hub and spoke API pattern , SSH tunnels

Why is this needed
Rather than searching for the definitions of  some terms , the references can help understanding the concept while staying on same page or finding more about the concept with right link. it will enhance user experience and bring more clarity and less confusion.
Comments

The page needed to be updated here is : https://kubernetes.io/docs/concepts/architecture/control-plane-node-communication/

/kind feature
/language en
/sig docs

If the triage is accepted would be happy to contribute references I have searched while reading the concept.
/assign

Worth doing, but the change I outline in https://github.com/kubernetes/website/issues/29049#issuecomment-885977653 is more valuable to work on.

https://github.com/kubernetes/website/issues/29049#issuecomment-885977653 here seems to be about the https://kubernetes.io/docs/concepts/architecture/ and https://kubernetes.io/docs/concepts/architecture/nodes/ page in particular.
I'd agree with the general idea of making the content brief and putting extra information in the reference.
For control-plane-node-communication page, I see your comment about adding a diagram there. Will try to add that as well.

@sftim  For now, I'll push this commit, in case even if we shift this content to reference or another section, we would still need some of the links and references.

/remove-lifecycle stale


Secure authentication with SSL

Examples ?
I'm running Kafka UI in the docker and I want to authenticate to remote kafka.
How to set up a secure connection? What parameters should I configure?
Kafka config properties with SASL/PLAIN.
A basic config show erros:
INFO [SocketServer listenerType=ZK_BROKER, nodeId=0] Failed authentication with /ip (SSL handshake failed) (org.apache.kafka.common.network.Selector)

Hi, thanks for reaching out.
Could you please try something like this? Though it's not merged yet this might work. Let me know how it goes.

Thanks for the answer,
I will try.

hi,
i have similar issue and i tried your solution
now it really tries to connect using the certs but for now im getting the following error:
Caused by: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
althought i have double checked the path is correct
in the kafka side i get the following:
2021-12-28 15:26:27,402 INFO [SocketServer brokerId=0] Failed authentication with /<IP_ADDRESS> (SSL handshake failed) (org.apache.kafka.common.network.Selector) [data-plane-kafka-network-thread-0-ListenerName(EXTERNAL-9092)-SSL-6]
did some one was able to procced this issue
NOTE: i am using amq-streams k8s operator for running kafka

@nemerna hey, thanks for the feedback. I'll take a look into this since the PR is still not merged, there's a chance it's not complete.

@nemerna seems like there's a

Closing as a duplicate of #779. Please move to that issue if you have other questions. The guide will be complete once we merge the corresponding PR.


Asking for feedback on the make command

Hi Everyone!
Me and @nfischer (but mostly me), were wondering if you guys used shelljs/make, and/or if you'd be sad if it went away.
Thoughts?

This is a feature I don't personally use. I don't mind keeping it if there are people out there that use it, although I see very few bug reports/feature requests for the make command, which makes me suspect it's less popular than the rest of the API.

@nfischer: My thoughts exactly.

I don't really get why this feature is being deprecated. Was it a maintenance burden? You yourselves noted that there weren't many issues coming in on this feature, so why remove it?
Here are at least two examples of where it's used:

https://github.com/box/t3js/blob/master/Makefile.js
https://github.com/eslint/eslint/blob/master/Makefile.js

What's the rational behind this?

Given that we've already had a couple comments on this, and some prominent projects use this feature, I don't see much benefit to moving forward with removing this. We may want to consider reverting #431.

I'm going to close this, since there's no reason as of yet to remove this feature.

I think I forgot to publicize this here, but the documentation for shelljs/make moved to https://github.com/shelljs/shelljs/wiki/The-make-utility.


Update AGP to 8 and update all dependencies

There are some merge conflicts but I ported the changes into https://github.com/mixpanel/mixpanel-flutter/pull/139, closing this one now


Integration Test - Release - 2018/07/11 15:35:31

Auto create for integration test. AnotherAuthorUpdatedArticleFlow

:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

csidevdocs-public/IntegrationTest/BuildIntegartionTestFiles/ChangeSentToAuthor.md
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


How to set text_threshold

Hi author, what is the size of text_threshold in line 49 of referring-expression-counting-main/GroundingDINO/groundingdino/util/base.api.py?

Set to 0.5 for default value and finetune the value by the validation results.

将默认值设置为 0.5，并通过验证结果微调该值。
谢谢您的回复，我尽快去试试


Please consider fixing issues detected by repository checker

Notification from ioBroker Check and Service Bot
Dear adapter developer,
I'm the ioBroker Check and Service Bot. I'm an automated tool processing routine tasks for the ioBroker infrastructure. I have recently checked the repository for your adapter oekofen-json for common errors and appropiate suggestions to keep this adapter up to date.
Please see the result of the check below.
ioBroker.oekofen-json
   -

ERRORS:

[ ] :heavy_exclamation_mark: [E033] @iobroker/adapter-core 2.6.0 specified. 3.1.4 is required as minimum, 3.1.6 is recommended. Please update dependencies at package.json
[ ] :heavy_exclamation_mark: [E036] @iobroker/testing 3.0.2 specified. 4.1.3 is required as minimum,  4.1.3 is recommended. Please update devDependencies at package.json
[ ] :heavy_exclamation_mark: [E162] js-controller 2.0.0 listed as dependency but 4.0.24 is required as minimum, 5.0.19 is recommended. Please update dependency at io-package.json.
[ ] :heavy_exclamation_mark: [E204] Version "1.0.2" listed at common.news at io-package.json does not exist at NPM. Please remove from news section.

WARNINGS:

[ ] :eyes: [W040] "keywords" within package.json should contain "ioBroker"
[ ] :eyes: [W115] "common.tier" is required in io-package.json. Please check https://github.com/ioBroker/ioBroker.docs/blob/master/docs/en/dev/objectsschema.md#adapter.
[ ] :eyes: [W181] "common.license" in io-package.json is deprecated. Please define object "common.licenseInformation"
[ ] :eyes: [W184] "common.main" is deprecated and ignored. Please remove from io-package.json. Use "main" at package.json instead.
[ ] :eyes: [W184] "common.materialize" is deprecated for admin >= 5 at io-package.json. Please use property "adminUI".
[ ] :eyes: [W519] Consider adding plugin "@alcalzone/release-script-plugin-manual-review".

Please review issues reported and consider fixing them as soon as appropiate.
Errors reported by repository checker should be fixed as soon as possible. Some of them require a new release to be considered as fixed. Please note that errors reported by checker might be considered as blocking point for future updates at stable repository.
Warnings reported by repository checker should be reviewed. While some warnings can be considered as a suggestion and be ignored due to good reasons or a dedicated decision of the developer, most warnings should be fixed as soon as appropiate.
Feel free to contact me (@iobroker-bot) if you have any questions or feel that an issue is incorrectly flagged.
And THANKS A LOT for maintaining this adapter from me and all users.
Let's work together for the best user experience.
your
ioBroker Check and Service Bot
@mcm1957 for evidence

This issue has been replaced by new isse #35
This issue can be closed.
your
ioBroker Check and Service Bot


MVC  gateway giving 404 NOT_FOUND when deployed to Tomcat servlet container 10.1.3

Hi,
I built a gateway app for routing requests to another app using spring-cloud-gateway-mvc lib. It is working fine with embedded tomcat, but when i tried the same deploying the app to tomcat servlet container, the response is 404 NOT_FOUND.
Embedded tomcat trace log:
2023-10-11 15:28:44 [http-nio-8081-exec-2] TRACE o.s.w.s.function.RequestPredicates - Pattern "/xyz/" matches against value "/xyz/getlist"
2023-10-11 15:28:44 [http-nio-8081-exec-2] TRACE o.s.w.s.function.RouterFunctions - Predicate "/xyz/" matches against "HTTP GET /xyz/getlist"
2023-10-11 15:28:44 [http-nio-8081-exec-2] TRACE o.s.w.s.f.s.RouterFunctionMapping - Mapped to org.springframework.web.servlet.function.HandlerFilterFunction$$Lambda$1154/0x000000080119c088@54dc2a8d
2023-10-11 15:28:45 [http-nio-8081-exec-2] TRACE o.s.web.servlet.DispatcherServlet - No view rendering, null ModelAndView returned.
2023-10-11 15:28:45 [http-nio-8081-exec-2] DEBUG o.s.web.servlet.DispatcherServlet - Completed 200 OK, headers={masked}
Tomcat Servlet container trace log:
2023-10-11 15:31:23 [http-nio-8080-exec-214] TRACE o.s.w.s.function.RequestPredicates - Pattern "/xyz/" matches against value "/xyz/getlist"
2023-10-11 15:31:23 [http-nio-8080-exec-214] TRACE o.s.w.s.function.RouterFunctions - Predicate "/xyz/" matches against "HTTP GET /xyz/getlist"
2023-10-11 15:31:23 [http-nio-8080-exec-214] TRACE o.s.w.s.f.s.RouterFunctionMapping - Mapped to org.springframework.web.servlet.function.HandlerFilterFunction$$Lambda$17420/0x0000000802574638@53a185bc
2023-10-11 15:31:23 [http-nio-8080-exec-214] TRACE o.s.web.servlet.DispatcherServlet - No view rendering, null ModelAndView returned.
2023-10-11 15:31:23 [http-nio-8080-exec-214] DEBUG o.s.web.servlet.DispatcherServlet - Completed 404 NOT_FOUND, headers={masked}
Route Configuration:
@Bean
public RouterFunction<ServerResponse> getRoute() throws MalformedURLException {
  return route("route1")
  		.route(path("/xyz/**"), http(URI.create("http://test.com/xyz")))
  		.build();
}

Any insights will be appreciated. TIA

I have none. Deploying as a war has never been in the spring cloud builds. Do you deploy the war with a context or the root context?

Closing due to lack of requested feedback. If you would like us to look at this issue, please provide the requested information and we will re-open the issue.


Add jp hed v2

I have done manual feature selection by checking the frequencies of features. I used https://gist.github.com/r9y9/9adf93b51cf04bd5a1cc60bf6d308724 for feature selection.
Note
Before: 420 dim
after: 363 dim

Beat features are removed
Some rare continuous features are removed.
Phoneme flag features are removed
Time signature features are removed
Rare phoneme identity features are preserved as is.

Note for future:

We might want to revisit phoneme identity features. Removing unused ones, merging similear phones into a single one, etc.

I am going to make a v3 hed flie by removing zero-frequency phoneme identity features. This feature reduction helps reducing the GPU memory requirement and improving the model performance as well.

Can confirm the simplified hed files worked okay. Merging


Work around the bad setuptools release

Setuptools removed some modules https://github.com/pypa/setuptools/pull/3505 which caused a breaking API change which other projects were not expecting, esp numpy.
Due to this, dependabot fails to create PRs if the project is using pip-compile and depends on numpy<1.3.2.  If we see an uptick in user complaints, this PR should alleviate the issue.

setuptools rolled back the breaking change.


beta5 -> beta7

lgtm

Would be nice to know why :)

@nathanleiby no reason, I was seeing a bug that I thought might be fixed in newer versions. It wasn't, but it's still newer

👍 thanks for the info


"flynn pg restore" and "flynn import" does not restore all my schemas, only "public"

Hi,
I have pg database with many schemas. When i run "flynn pg restore" and "flynn import", only the "public" schema is restored.
I managed to restore the other schemas by provision a route to postgres and run pg_restore (not flynn), but this was time consuming.
I would like to be able to restore all schemas and to choose which one to restore with the "flynn pg restore"-command.
I also would like "flynn import" to restore all schemas
I found the following lines interesting and i think it's the -n flag that we have to work with.
1.
flynn/cli/pg.go L191

fmt.Sprintf("set -o pipefail; cat > /data/temp.dump && pg_restore -d %s -n public --clean --if-exists --no-owner --no-acl --jobs %d /data/temp.dump", config.Env["PGDATABASE"], jobs),

[flynn/cli/pg.go L194]

config.Args = []string{"pg_restore", "-d", config.Env["PGDATABASE"], "-n", "public", "--clean", "--if-exists", "--no-owner", "--no-acl"}

I'm new to all of this so all help and feedback is welcome :)

is there any update on this? Feels like its an important feature to have. Why only public schema is imported anyway if full backup is taken?

I can't see any changes in the code. Still "-n public".
I wish to be able to select which schema to restore and to get all schemas restored as default.

Flynn is unmaintained and our infrastructure will shut down on June 1, 2021. See the README for details.


Adding new data/members/variables to save/load functions with backward compatibility?

Consider the following:

I have a pair of save / load functions that describe how a C++ structure must be serialized and deserialized. I have an existing library of files containing serialized data describing many instances of this structure that I would like to preserve.

I would like to add a new member or data type to the save / load functions, while also preserving the ability to deserialize the older files in the existing library that lack this new data structure.

How would I go about doing this to ensure backward compatibility? Will this work so long as I always add the new members/data type to the end of the save/load functions? Or is this impossible?

Let me preface this by saying that cereal was not designed with this use case as primary motivation, so it takes some extra work to accomplish this. Other serialization frameworks that use an explicit serialization specification (file) tend to be more flexible in this regard.
One other warning is that I'm writing this without testing any of the solutions, but they should be roughly accurate.
If your data is stored in a format that is opaque (i.e., binary), it will not be possible to add or remove fields and have the existing serialization code load the data properly. Text based data can search (we call this out of order loading) for the field and get around this restriction.
The only way around this for binary files would be for the types (version X vs version X+1) to be distinct and use the appropriate serialization code to do loading and storing. You'd have to maintain some kind of mock version of your class that was just a thin wrapper around the serialized code, then determine at runtime what kind to use internally.
A more principled way to do this in cereal would be to use versioning (see the docs), where you would supply a version with each change to your serialized data. This would give you a way, at runtime, to decide how to load or save the data, by looking at the version number. With this scheme you would not need to preserve ordering either, so long as your serialization code for each version is correct, it will load the data.
Unfortunately code that was not versioned cannot be made versioned without doing an explicit conversion, because the serialized representations are slightly different. You would need to perform a one-time conversion, using a program that

It will not be possible in a single pass to load binary to a versioned function, but it can be done by loading from binary, then writing out to json and saving that. Then migrate your code to use the version parameter, and comment out the portion of cereal that throws if the version key is missing from the json, then save again.


Are we missing some css

Not sure if i am missing something. But it seems as if the content isn't scrollable. Are we missing come css for this?

I had missed setting a class on content and adding the example styling:
    position: relative;
    width: 100%;
    height: 100%;
    overflow: auto;
    background-color: #fa8787;

Hi @Pixney-William where did you add this class exactly? I cannot scroll the content of the drawer.

Good question @focussing .. Can't remember what project i used it on. Ill keep it in the back of my head and if i remember ill get back to you :)


Feature request

Few features that would be usfefull.

support for current rain reading https://api.data.gov.sg/v1/environment/rainfall
display "last update" on Lovelace card
allow manual refresh ("update now" button on Lovelace)

These features are low priority for now.

rain sensors from data.gov are not very well named (a lot of sensors are given a sensor ID for their names and it is not clear where they are sited unless the user is able to decode the lat/lon) so it is not very usable except for advanced users who know which sensors they want to reference. Have not prioritized this, though advanced users could build a simple json sensor to poll for this and extract relevant locations using template sensors using existing platforms in HA.

this is a UI change and you will need to make a feature request to the maintainer of the weather card. The last updated info is already stored as an attribute in most sensors.

there is a update_entity core service in HA that should update the sensors and a custom service for this is not needed.

There is a map that displays the location of each sensor, even if it has a code as name. But no worries, a RestSensor in HA has solved my need to have the rain info.
good to know
will give this a try.

thanks!

@MoonshineSG - have added rainfall sensors into v1.4. not too sure how best to display this via the existing frontend, so it doesn't feel the most useful at the moment.

maybe can be used as sensor for automation

sure that is possible, but just note that the poll frequency is set to 15 min by default so it might not be sensitive enough to detect passing showers for automation. you could increase the frequency but i'm not sure if there are limits to the data.gov.sg API calls...


Integrate callouts?

Callouts are nice feature supported by quartz (and github) that turns
> [!NOTE]
> Highlights information that users should take into account, even when skimming.

into

[!NOTE]
Highlights information that users should take into account, even when skimming.

or (more precisely) as

However, callouts are not supported by pandoc, so they are lost when converting to markdown.
Even if those callouts were preserved, they would only be correctly rendered on the website, as pandoc cannot convert callouts for pdf, odt and docx documents.
A current workaround is to use a table, as follows:
| ⚠ Warning                                                                                |
|:--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| This is a warning. |

which is rendered as

⚠ Warning

This is a warning.

or (more precisely) as

Integrating callouts could be nice, and possible sources of inspiration includes:

https://quartz.jzhao.xyz/features/callouts,
https://gist.github.com/jskherman/8e721302e67d308e8a81f3df84f01f20,
https://www.reddit.com/r/LaTeX/comments/1baudg4/callouts_in_latex/,
https://tex.stackexchange.com/questions/714908/newcommand-syntax-with-callouts,
https://forum.obsidian.md/t/rendering-callouts-similarly-in-pandoc/40020/6,
https://raw.githubusercontent.com/kdheepak/kdheepak.github.io/main/blog/pandoc-lua-filter-for-alerts/index.md.

With https://github.com/princomp/princomp.github.io/commit/981ab064718bc2a05f196906b0a63ec6202d5dc8 the warning sign is properly integrated into the pdf outputs.

In many ways, the callout is just an integration of an image to that location, with the specific image being determined by which callout is used. Does pandoc have issues with inserted images? If not, we could just get a repository of images for the types of callouts and do them as follows:

![insertion of our callout image from our personal repository of images]
what is being called out

It would make it to where we would have to maintain our own group of images for callouts, but it might also make them more compatible with pandoc.

Also, comparing the Quartz to the pandoc, I think the issue lies with where they want the !. In your Quartz example, it is within the brackets, [!], but pandoc has it prior to ![]


Remove build hacks that are no longer needed

Removed CCE 16 workgroup hacks.
Removed Silo patch for HDF5 on Frontier.
Removed AppleClang workarounds on macOS, including building MPI from scratch.
Only build HDF5, FFTW, and SILO packages if they are not installed/compatible.
Removed Docker (nobody uses it, and maintaining it is cumbersome).
Switched to using the proper Silo patch for an error on GNU 13 and above. See my comment here: https://github.com/LLNL/Silo/issues/375#issuecomment-2323029131.
Removed installation instructions for Arch Linux. They installed their operating system, I'm sure they can install gcc.

[TODO] Check FOM is roughly the same w/o workaround for workgroup size on CCE18.

Removed installation instructions for Arch Linux. They installed their operating system, I'm sure they can install gcc.

🤣 🤣 🤣 You might still leave them a list of packages they need. MFC's dependencies are not obvious other than from our installation instructions.

The assumption is that they can look at those needed on Debian as reference. The only one that isn't obvious is gcc-fortran but solving that is one error and a google search.


Support starknet_simulateTransactions in Provider trait for JsonRpcClient

Hi there!
Afaik: since 0.3 Starknet JsonRpc Spec, RPC nodes support starknet_simulateTransactions.
Afaik, starknet-rs only supports starknet_simulateTransactions for gateway and not jsonrpcclient?
Could we add support for it?

This shouldn't be too difficult. We just need to modify starknet-jsonrpc-codegen to support this.

Resolved by #481.


Provide access to Alnisha Maniaci<EMAIL_ADDRESS>for data analysis

It'll be access to the APIs and Big Query I expect. Lmk if I need to do anything

Google seems to dislike this email address. @adambard1 Is there one we can use which is associated with a Google account?

Let's see what she gives us.

I sent an email. Standing by to hear back.


Use accessSync to ensure ERROR_SERVICE_ACCOUNT is logged

R: @addyosmani @gauntface
Without this, a failure looks like:
[15:41:34] Starting 'publish-cdn:temp-v3'...
(node:12502) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): Error: ENOENT: no such file or directory, access '/Users/jeffy/git/workbox/workbox-9d39634504ad.json'
(node:12502) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.
[Workbox Log]: Error: ENOENT: no such file or directory, open '/Users/jeffy/git/workbox/workbox-9d39634504ad.json'
[15:41:34] 'publish-cdn:temp-v3' errored after 13 ms

The custom ERROR_SERVICE_ACCOUNT message never gets logged since the exception isn't thrown synchronously.

Changes Unknown when pulling b8ae4e51a6f7dd3c4267cbe4a846f0032f215dd2 on fs-access-sync into ** on v3**.


Form validation

Hello,
I'm using Ladda 1.0.6 inside forms, but it seems that form validation is not taken into account.
If there are only input text, it's ok, Ladda won't launch until the form is valid, but if there's selects, radio button or anything else Ladda will trigger even if the form is not valid.
Note : I can have multiple forms on the page. I bind the buttons with :
Ladda.bind( 'button[type=submit]' );
My forms do not have the novalidate attribute.
Thanks.

My mistake, I had an old version in cache


Fix grammar in Helpers documentation.

Remove comma from comment. No changes to source code made.

thanks


sdk error: login function fails

login function generate Url without port number. because of that the login attempt fails
here is the sdk code:
`Future login() async {
try {
Uri tempUri = Uri.parse(_client.data.serverUrl);
  Uri url = Uri(
      scheme: tempUri.scheme,
      host: tempUri.host,
      path: "${tempUri.path}$keyEndPointLogin",
      queryParameters: {
        keyVarUsername: username,
        keyVarPassword: password
      });

  final Response response = await _client.get(url, headers: {
    keyHeaderRevocableSession: "1",
  });

  print(url);

  return _handleResponse(
      this, response, ParseApiRQ.login, _debug, className);
} on Exception catch (e) {
  return _handleException(e, ParseApiRQ.login, _debug, className);
}

}`
here is the refactored code:
`Future login() async {
try {
Uri tempUri = Uri.parse(_client.data.serverUrl);
  Uri url = Uri(
      scheme: tempUri.scheme,
      host: tempUri.host,
      port: tempUri.port,
      path: "${tempUri.path}$keyEndPointLogin",
      queryParameters: {
        keyVarUsername: username,
        keyVarPassword: password
      });

  final Response response = await _client.get(url, headers: {
    keyHeaderRevocableSession: "1",
  });

  print(url);

  return _handleResponse(
      this, response, ParseApiRQ.login, _debug, className);
} on Exception catch (e) {
  return _handleException(e, ParseApiRQ.login, _debug, className);
}

}`
add port: tempUri.port to parse_server_sdk-1.0.15/lib/src/objects/parse_user.dart [160]

Will add in the next release. Thanks for pointing this out.

This has been fixed in 1.0.16. This is currently waiting to be released but will be done shortly.

the same problem is in query() method of QueryBuilder class, thanks

Hey,
This should be resolved on version 1.0.16. The query function is part of
the ParseObject class. Are you working from the latest release or from the
latest branch on GitHub?
Thanks
On Tue, 19 Mar 2019 at 08:27, sabawoon-baryal<EMAIL_ADDRESS>wrote:

the same problem is in query() method of QueryBuilder class, thanks
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub
https://github.com/phillwiggins/flutter_parse_sdk/issues/109#issuecomment-474243514,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AHgn3i4pHGW2j7I8Z_MmQmgZLYFwO100ks5vYJ-MgaJpZM4bmrq4
.

--
Kind Regards
Phill Wiggins
<EMAIL_ADDRESS>


appended  to 'result' value in explanation

[x] I have read freeCodeCamp's contribution guidelines.
[x] My pull request has a descriptive title (not a vague title like Update index.md)
[x] 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

appended  to 'result' value in explanation

Thank you for opening this pull request.
This is a standard message notifying you that we’ve reviewed your pull request and have decided not to merge it. We would welcome future pull requests from you.
Thank you and happy coding. ✈


Remove sanitizeGetRName calls

This method doesn't really do anything useful, since the values we're protecting pysam/htslib from have already come from pysam/htslib and can therefore be trusted. The sanitising framework is intended to insulate these from nasty things coming from the internet.

Fixed in #638.


Fixing useWith to pass 'this' in transformers

Fixes #1372

:deciduous_tree:

Could you rebase and resolve the merge conflicts, @CrossEye?

Superseded by #1414


Multi step transform example

I've not yet located a transform example that consists of multiple steps. Is there an example available? Thank you.

Not sure why the "insert code" option doesn't like the code... Only part seems to format correctly when previewing.
So you might need to copy/paste it into your editor if it isn't clear:
`const myLogic = createLogic({
type: 'INIT',
debounce: 1000,
transform({ getState, action, cancelled$, deps }, next, reject) {
// EXAMPLE 1:
const transform1$ = Observable.of(action)
.map(action => {
// do calculations, return transformed action, or make it a mergeMap and
// return an Observable that emits the transformed action
})
.mergeMap(action => {
// more transformations, async example
return Observable.of(action)
.map(action => action)
})
  const transform2$ = transform1$
    .map(action => {
      // do more stuff, or mergeMap and return an Observable that emits the transformed action

    })

  return transform2$
    .map(action => next(action)); // signal next()

  // EXAMPLE 2:

  return Observable.create(observer => {
    transform1$.subscribe((action) => {
      // side effects...

      // then..
      observer.next(action); // ...or another observable/subscription.
    });
  })
    .map(action => {
      // more side effects...

      // finally...
      next(action);
    })
}

});`

@scriptjs thanks for the question and thanks @ugility for responding with a nice detailed answer.
About the only clarification I might make is that the transform step is expecting next (or reject) to be called exactly once. So while process hook can dispatch multiple times the intercept hook (transform/validate) only can call next/reject once.
However the example above is still valid if you are doing multiple things to be able to do that single next call.
If you need to dispatch multiple times then I'd recommend using the process hook instead.
Alternatively you could get sneaky and add your store.dispatch method as a dep and be able to dispatch multiple times however doing things that way, those dispatches would not be governed by redux-logic cancellation since you would be calling store.dispatch directly.
Here's an example of how you could give your store.dispatch as a dep.
const logicMiddleware = createLogicMiddleware(logic, deps);
const store = createStore(reducer, applyMiddleware(logicMiddleware);
const additionalDeps = {
  storeDispatch: store.dispatch   // providing a way to dispatch directly
};
logicMiddleware.addDeps(additionalDeps);

Then you would have an additional dependency injected called storeDispatch which you could call anywhere in your hooks to dispatch any number of times, but remember that these are outside of the control of redux-logic cancellation.

@ugility @jeffbski  Thank you for these detailed answers and for the library.  I think I need to explore a bit further. From what I have gathered thus far, transform is a alias of validate. I think perhaps it needs to grow a transform method that is not an alias to handle a sequence of methods in a way that could be handled in series or parallel. That is for me what is missing at this point.

@scriptjs could you maybe provide an example of what you mean? I'm not saying a disagree with you, because I've actually modified the library to do exactly what you're proposing. But it's for a completely different reason than what I think you're trying to describe. So if you could post an example it'd help me better understand what you're envisioning, and maybe some of the mods I've made to the library could help

@ugility What I am looking for is analogous to piping transformations using a node stream.


compilation broken on raspberry pi4

make.log

So the Swig+NodeJS stuff is not in a good shape right now, try adding -DBUILDSWIGNODE=off to your cmake

Compilation completed fine with cmake .. -DBUILDSWIGNODE=off

Compilation completed fine with cmake .. -DBUILDSWIGNODE=off


Google Analytics doesn't work with 'G-XXXXXXXXXX' tag id.

Checklist

[x] I have read the tutorials and know the correct effect of the functional design.
[x] There are no similar reports on existing issues (including closed ones).
[x] I found the bug on the latest code of the master branch.

Describe the bug
Google Analytics doesn't work with 'G-XXXXXXXXXX' tag id. I insert my own 'G-XXXXXXXX' tag and wait for a long time, but google analytics says there is no website having my own tag.
I know there is a Enable Google Page Views tutorial. This tutorial also use 'G-XXXXXXXXXX' format id. But unlike that, my blog doesn't connect Google Analytics.

To Reproduce

insert 'G-XXXXXX' tag in _config.yml file.
e.g.) google_analytics:
id: 'G-J9DD336B3H'   # I also insert G-J9DD336B3H, without quote, but also not works.

waiting

I found it doesn't work.

Steps to reproduce the behavior:

Expected behavior
Google Analytics works with 'G-XXXXXXXXXX' format id.

Screenshots

<Figure1. devtools of my blog>

<Figure2. Google Analytics page of my blog>

Environment

Command
Version

ruby -v
3.1.1p18

gem -v
3.3.7

bundle -v
2.3.10

bundle exec jekyll -v
4.2.2

bundle info jekyll-theme-chirpy
5.1.0

Desktop
OS: Windows 10 Version 21H2
Browser: Chrome 100.0.4896.75

Smartphone

Additional context

FYI This might be incorrect in the guide section
Now, click on the new data stream and grab the Measurement ID. It should look something like G-V6XXXXXXXX. Copy this to your _config.yml file:

My GA works after using the Tracking ID under "Tracking Code" - something like UA-********-.

Same for me, I can't find a UA-like ID, but I think maybe it can be requested?

Even I'm facing the same problem, tried updating templates too but so far no good and even my Tracking code starts with GA

Hey @cotes2020  can you please advice solution to this issue ?

@rexdivakar The template only guarantees that the output content contains GA (Google Analytics) code blocks. As for "why the information cannot be collected", there are various reasons, the most common is that the ad-block plugin of your browser prohibits the GA code from working, or your GA account has set a filter condition. So, do a Google search for "google analytics not working" and here's my advice.


For perf converter, add event only cmd option and some new fields for event grouping

Sometimes we might want to only update and regenerate event files, so add a command option to skip the metric file processing and generate step.
When we do event grouping base on hardware counter information, we need to know the list of counters an event could be collected on and also how many counters available on each Perfmon unit. Therefore, add several attributes and function to generate this type of info. This change will create a new file named counter.json locate together with all the event json files that includes Perfmon unit name and number of counters.
A simple example of content in counter.json:
{
    {
        "Unit": "core",
        "NumFixedCounters": "4",
        "NumCounters": "8"
    },
    {
        "Unit": "PCU",
        "NumFixedCounters": "0",
        "NumCounters": "4"
    },
    {
        "Unit": "IRP",
        "NumFixedCounters": "0",
        "NumCounters": "2"
    }
 ...
}

Not sure if we still want to use NumFixedCounters. At least, starts from the LNL, the fixed counter isn't continuous anymore. For virtualization, there is always an ask to only expose part of the GP counters to the guest. The GP counters may not be continuous as well. At least, for the kernel code, we are going to use a counter mask soon. Maybe it's better to generate the MaskFixedCounters instead. (It may requires a change for your perf tool patches. If they are going to be merged, then I guess you can address it later when necessary.)

Sure, I could update both the converter script and the perf tool patches after the kernel is changed. So I guess we could still use NumFixedCounters for now?

Not sure if we still want to use NumFixedCounters. At least, starts from the LNL, the fixed counter isn't continuous anymore. For virtualization, there is always an ask to only expose part of the GP counters to the guest. The GP counters may not be continuous as well. At least, for the kernel code, we are going to use a counter mask soon. Maybe it's better to generate the MaskFixedCounters instead. (It may requires a change for your perf tool patches. If they are going to be merged, then I guess you can address it later when necessary.)

Sure, I could update both the converter script and the perf tool patches after the kernel is changed. So I guess we could still use NumFixedCounters for now?

Sure. But we probably have to change it when LNL is enabled.

@edwarddavidbaker I've pulled out the event only command option part. Please checkout the remaining code and merge them if you don't see other issue. Thanks!

Thanks @edwarddavidbaker ! I've updated the code accordingly. Could you please take a look at the new commits. Thanks a lot!


Save query expression with ontotrace file

OntoTrace files obtained from the web UI include the query expression in the "publication notes" field in the nexml file (see attached).

@balhoff I assume the API returns this as well in the NeXML document? If so this should be available from the NeXML object in R as well. Though I suppose it should be documented how.

This was due to a bug in RNeXML. I reported the issue in ropensci/RNeXML#190, and it was fixed by @cboettig in ropensci/RNeXML#193.

New version of RNeXML is on CRAN now. Upgrading rphenoscape should result in RNeXML being upgraded. See README.


Remove some unused code

Coverage increased (+0.2%) to 88.079% when pulling 9d258b7bb546a5e7a464cd6d5a64c1e618a64f45 on yallop:unused-code into ed006a4b63e7e836f63ddc0001dbbd97c6ed8647 on ocamllabs:master.


Authentication Type not support AAD-federated  sign-in  in MoonCake envrionment

Azure Data Studio Version:
Version: 1.14.1 (user setup)
Commit: f9b968c1ae514a0d1210788629e1c69125857279
Date: 2019-12-24T02:42:26.303Z
VS Code: 1.38.0
Electron: 6.1.5
Chrome: 76.0.3809.146
Node.js: 12.4.0
V8: 7.6.303.31-electron.0
OS: Windows_NT x64 10.0.17763

Steps to Reproduce:

create "New connection";
type Azure database server address;
select Authentication type , there are only three types can choose:
a> SQL Login;
b> Windows Authentication;
c> Azure Active Directory - Universal with MFA support
then, the "Account" name form field will pop up "Add an account" ,  it will redirect to  device sign-in  page but only for "Microsoft.com" , not included other Azure envrionment.

Would your team please help figure out whether there are any solution or will support it in future?
Apperciate.
Andy

@aaomidi - You're adding this as part of your other AAD work, correct?

Thanks a lot for Charles' help and let's waiting for the new big build then. Cheers.

This is mostly complete, we're waiting on a few internal changes to our application ID before we roll this out.

US Govt cloud is now enabled. Other environments will soon follow. I'm tracking them in a separate issue: https://github.com/microsoft/azuredatastudio/issues/9832