Technology Stack Diagram

We need to create an architectural diagram that shows the  core stack  being  used: what  techs are  used for the front end, what is used on the backend for data storage, authentication, etc.

in order for us to create a stack model for the data, we need a data model (issue #6)
for the frontend, we should use NextJS with Typescript.

@marbiano & @MarianoArg, would you guys be up to work on the NextJS frontend?

If anymore help is needed for frontend, I have used Gatsby which is an alternative React based framework for static sites. NextJS wouldn't be difficult for me to ramp up on.

@pxydn yep. I have some time now so I could start working on it. We'll use React with Next.Js and Typescript.
I can also work on the backend as well. We should define the data model we are gonna implement.

@pxydn happy to help. Next.js is currently the most versatile option when it comes to building web apps and websites, so it's a no-brainer in my humble yet absolutely biased opinion.
Happy to onboard @JMKJR on Next.js if necessary.

Same here, I can help with the front and the backend as well.

@pxydn happy to help. Next.js is currently the most versatile option when it comes to building web apps and websites, so it's a no-brainer in my humble yet absolutely biased opinion.
Happy to onboard @JMKJR on Next.js if necessary.

I agree! No argument from me there :) . I wasn't suggesting Gatsby, it doesn't make sense in this situation as it is for generating static websites. I was just mentioning my similar frontend experience React/Material UI/Gatsby was the stack I used before. Thanks!
Also available and interested in working with backend. Experience: NodeJS/Express/Hapi, ASP.NET. No smart contract experience but I've been working on clarity tutorials. Ready and willing to help with anything and everything.

NextJS it is then! 😄
we can have a call to discuss L³ UI's in general on Discord soon (time/date TBD).
@JMKJR you have experience with backend stuff - would you be interested in the DDNS/metaverse projects too? and maybe apex too. they will all be highly server/Docker-based - may be in your area of expertise?
if we need a backend for this, we should maybe start to get used to using Deno. i'm thinking we won't, but JIC :)

NextJS it is then! 😄
we can have a call to discuss L³ UI's in general on Discord soon (time/date TBD).
@JMKJR you have experience with backend stuff - would you be interested in the DDNS/metaverse projects too? and maybe apex too. they will all be highly server/Docker-based - may be in your area of expertise?
if we need a backend for this, we should maybe start to get used to using Deno. i'm thinking we won't, but JIC :)

Haha I love the ambitious L3 agenda! Of course, that's what I'm here for, to help out anywhere I can. Docker specifically isn't an area of expertise for me, the devops team within my organization handles that type of infrastructure for us. However, more than happy to learn anything needed. Wherever our blind spots are, we are smart people and will figure it out and help each other as needed! ;)
Glad you mentioned Deno! Hadn't heard of it before until just now and it solves a problem I literally just ran into at my company where we need to sandbox certain server nodes in our organization where Node presents security challenges. Thanks, just another one of the amazing benefits of collaboration!

ideas

the majority of backend functions and storage should be controlled by smart contracts for trust reasons.
after this project has a mainnet version, we should create a SIP and standardise the API used to interface with a DAO. this will allow other 3rd party UIs to be built that integrate with daoOS. a sorta DAO standard for DAOs on Stacks

opinions?

@LNow has created a stack diagram which is good enough for this issue. ty! great job.


Add options to set the key offset and length

-o  -l
Offset and length are specified in words (4 bytes) Default is offset=0 length=8
2711 supports 8 words. 2712 supports 16 words.

@tdewey-rpi LGTM

LGTM

chase: Approved, but I can't hit merge - can someone push this one in?


Error in Microsoft Edge 18+ "lineNumber must be a Number"

Expected behavior
Correctly log error w/ stacktrace.
Observed behavior
Errors out at the line in the below screenshot.
Steps to reproduce
This seems to only be happening on Microsoft Edge 18+ versions and no other browsers.
Version
4.7.2
Additional information

Hi @corymsmith, thanks for raising this. Sorry for the delay in getting back to you.
This looks similiar to #392. It is essentially the same issue, but may have a different set of conditions which result in the same problem. Either way, solving #392 will solve this too. I'll get that reviewed and published in due course.

No worries @bengourley, thanks for the update.


Using deprecated javascript features

The escape and unescape javascript functions are deprecated.  You should use Use encodeURI or encodeURIComponent and their decode counterparts instead.

Thanks @young-steveo. Good catch. I didn’t get rid of all of those.


Incorrect resolution when using tiled wallpaper module

When I login and start AwesomeWM, the tiled wallpaper appears like this:

However, when reloading the config, the wallpaper correctly resizes to fill the whole screen.
I'm using Linux in a virtual machine, so that might be related.

Are you using awesome from master branch? iif yes then it can be caused directly by WM or Xorg because doesn't handle HiDPI and high resolutions displays as it should. Just noticed that awesome-git doesn't load some parts of my config before reload (like tags for example when starts with 9 but after reload 3rd tag is selected and there is only 5 as it should be)

Are you using awesome from master branch?

Yes, I'm using the master branch

If yes then it can be caused directly by WM or Xorg because doesn't handle HiDPI and high resolutions displays as it should

So it's an issue with AwesomeWM or Xorg? If so, should I close this issue?

So it's an issue with AwesomeWM or Xorg? If so, should I close this issue?
I'm guessing both because Xorg uses 30+yo technologies and doesn't support modern ones (HDPI, high res, freesync and so on) and yeah same problems with tiled wallpaper and wallpaper in general (linux vm) on macbook.

Oh well. It's not a huge pain to reload the config on login, since I don't log out very often. Since it's not a problem with Bling, but with Xorg, I'll close this issue now.


chore(deps): upgrade dependencies

Upgrades project dependencies. See details in workflow run.

Automatically created by projen via the "upgrade-main" workflow

Codecov Report

Merging #681 (d7eddac) into main (49a6f47) will not change coverage.
The diff coverage is n/a.

:exclamation: Your organization is not using the GitHub App Integration. As a result you may experience degraded service beginning May 15th. Please install the Github App Integration for your organization. Read more.
@@           Coverage Diff           @@
##             main     #681   +/-   ##
=======================================
  Coverage   95.69%   95.69%
=======================================
  Files           1        1
  Lines         395      395
  Branches       53       53
=======================================
  Hits          378      378
  Misses         17       17


Add beego filter for reporting airbrake route stats.

Add some delay to one of the route so it take some time to process


How do I use the drop in mode for the viewer, in a React Three Fiber app? I get a "TypeError: Cannot read properties of undefined (reading 'quaternion')"

Hi I simply copied this code frorm the drop in for three js, and stuck it into my R3F app after the react imports:
`import * as GaussianSplats3D from '@mkkellogg/gaussian-splats-3d';
import * as THREE from 'three';
const threeScene = new THREE.Scene();
const viewer = new GaussianSplats3D.DropInViewer({
'gpuAcceleratedSort': true
});
viewer.addSplatScenes([{
'path': './mysplat.splat'
'splatAlphaRemovalThreshold': 5
},
{
'path': '<path to .ply, .ksplat, or .splat file>',
'rotation': [0, -0.857, -0.514495, 6.123233995736766e-17],
'scale': [1.5, 1.5, 1.5],
'position': [0, -2, -1.2]
}
]);
threeScene.add(viewer);`
Then I installed the "[vite-plugin-cross-origin-isolation] and setup vite with this:
`import { defineConfig } from "vite";
export default defineConfig({
plugins: [
{
name: "configure-response-headers",
configureServer: (server) => {
server.middlewares.use((_req, res, next) => {
res.setHeader("Cross-Origin-Embedder-Policy", "require-corp");
res.setHeader("Cross-Origin-Opener-Policy", "same-origin");
next();
});
},
},
],
});`
However, 1stly, my firewall complains:
net::ERR_BLOCKED_BY_RESPONSE.NotSameOriginAfterDefaultedToSameOriginByCoep 200 (OK)
Then I get:
@mkkellogg_gaussian-….js?v=fe91033c:9098 Uncaught (in promise)
TypeError: Cannot read properties of undefined (reading 'quaternion')
at _Viewer.updateSplatSort (@mkkellogg_gaussian-…?v=fe91033c:9098:63)
at finish (@mkkellogg_gaussian-…?v=fe91033c:8770:16)
at @mkkellogg_gaussian-…?v=fe91033c:8806:17
Any ideas?

I'd also like to add that the end goal is to see if there is any difference using this repo, compared to the one that comes with R3F Drei Splats, when viewed on the Quest 1 or 2.
Currently I'm using the Drei splat loader to load my splat file and using the Meta Browser on Quest1 and Quest 2 to view it, however its extremely jittery and laggy to the point you literallu cant look a it as it.
Is the Quest 3 any better than the Q1 or Q2 in this regard or can I expect the same jittery laggy performance than the Q1?
For example, this demo which uses this repo is NOT usable on my Quest 1:
https://webxr.cz/xr.html?scene=ST&xr=vr

Would setting the viewer to 2D Gaussian Splatting mode be any more performant?

I've also had this issue, I used the workaround to use the normal Viewer class and using the getSplatMesh() function and add that to the scene manually. And I also had the laggy performance, I hope this can be improved in the future maybe with a percentage shown in dense area's. I also have the same target audience as you.

I've also had this issue, I used the workaround to use the normal Viewer class and using the getSplatMesh() function and add that to the scene manually. And I also had the laggy performance, I hope this can be improved in the future maybe with a percentage shown in dense area's. I also have the same target audience as you.

did you make your own react component with the normal viewer class or just stuck it directly into your main app after the other imports? Could you show an example code where you put it please?

export function Viewer() {
  const three = useThree();

  const viewer = new GaussianSplats3D.Viewer({
    gpuAcceleratedSort: true,
    sharedMemoryForWorkers: false,
    renderMode: RenderMode.Always,
    ignoreDevicePixelRatio: true,
    sceneRevealMode: GaussianSplats3D.SceneRevealMode.Instant,

    camera: three.camera,
    threeScene: three.scene,
    renderer: three.renderer,
  });

  viewer.addSplatScene(item, { showLoadingUI: false, progressiveLoad: false, rotation: [0,0,0,1] })
  .then(() => {
    viewer.start();
    three.scene.add(viewer.getSplatMesh());
  });
}

Where it says item in viewer.addSplatScene is the path/url to the splat, ply or ksplat file.

Where it says item in viewer.addSplatScene is the path/url to the splat, ply or ksplat file.

I dont get it. Mine is throwing a lot of errors. Here is my entire component:
`import React from "react";
import * as GaussianSplats3D from "@mkkellogg/gaussian-splats-3d";
import * as THREE from "three";
import { useThree } from "@react-three/fiber";
function GSViewer() {
const three = useThree();
const viewer = new GaussianSplats3D.Viewer({
    gpuAcceleratedSort: true,
    sharedMemoryForWorkers: false,
    renderMode: RenderMode.Always,
    ignoreDevicePixelRatio: true,
    sceneRevealMode: GaussianSplats3D.SceneRevealMode.Instant,

    camera: three.camera,
    threeScene: three.scene,
    renderer: three.renderer,
});

viewer
    .addSplatScene("./models/model_full.splat", {
        showLoadingUI: false,
        progressiveLoad: false,
        // rotation: [0, 0, 0, 1],
        position: [7, 2, -2.7],
        scale: [5, 5, 5],
    })
    .then(() => {
        viewer.start();
        three.scene.add(viewer.getSplatMesh());
    });

}
export default GSViewer;
`
but then I get a whole bunch of errors:
RenderMode is not defined
at GSViewer (GSViewer.jsx:12:21)

So my bad on the rendermodes. Just remove that line since it already does Always by default. For the float thing it could be an issue with the splat itself, I had this once too. Have you tried opening the Splat in the demo: https://projects.markkellogg.org/threejs/demo_gaussian_splats_3d.php
If it does work there then I don't really know why it doesn't work in the three js viewer. Maybe someone else knows this.

Sorry for the very late reply, but I was able to create an R3F component using the following code:
'use client'

import * as THREE from "three";
import React, { useState, useEffect } from "react";
import * as GaussianSplats3D from "@mkkellogg/gaussian-splats-3d";

export function SplatsView({ sources, options }: { sources: Array<string>, options?: Array<any> }) {

    const [scene] = useState(() => new THREE.Scene())

    useEffect(() => {
        const viewer = new GaussianSplats3D.DropInViewer({
            sharedMemoryForWorkers: false,
            showLoadingUI: false,
        });

        const addParams: Array<any> = sources.map((source: string, index: number) => {
            const params: any = {
                path: source
            };
            Object.assign(params, (options && options.length > index) ? options[index] : {});
            return params;
        });

        scene.add(viewer);

        viewer.addSplatScenes(addParams, false)
            // Handle any scene loading exceptions, including early download aborts. This is important in
            // next.js apps where components get rendered twice, and the viewer gets disposed immediately
            // after the first load.
            .catch((err) => {
                console.log("Error loading splat scenes:", err);
            });

        return () => {
            viewer.dispose()
                .catch((err) => {
                    console.log("Error disposing of splats viewer:", err);
                });
        };
    }, []);

    return (<primitive object={scene} />);
}

@Patrick-van-Halm-360Fabriek Nope, no good reason at all :smile: It was just a quick example that I didn't think about too carefully, yours is definitely cleaner!

Hi I simply copied this code frorm the drop in for three js, and stuck it into my R3F app after the react imports: `import * as GaussianSplats3D from '@mkkellogg/gaussian-splats-3d'; import * as THREE from 'three';
const threeScene = new THREE.Scene(); const viewer = new GaussianSplats3D.DropInViewer({ 'gpuAcceleratedSort': true }); viewer.addSplatScenes([{ 'path': './mysplat.splat' 'splatAlphaRemovalThreshold': 5 }, { 'path': '<path to .ply, .ksplat, or .splat file>', 'rotation': [0, -0.857, -0.514495, 6.123233995736766e-17], 'scale': [1.5, 1.5, 1.5], 'position': [0, -2, -1.2] } ]); threeScene.add(viewer);`
Then I installed the "[vite-plugin-cross-origin-isolation] and setup vite with this: `import { defineConfig } from "vite";
export default defineConfig({ plugins: [ { name: "configure-response-headers", configureServer: (server) => { server.middlewares.use((_req, res, next) => { res.setHeader("Cross-Origin-Embedder-Policy", "require-corp"); res.setHeader("Cross-Origin-Opener-Policy", "same-origin"); next(); }); }, }, ], });`
However, 1stly, my firewall complains: net::ERR_BLOCKED_BY_RESPONSE.NotSameOriginAfterDefaultedToSameOriginByCoep 200 (OK)
Then I get: @mkkellogg_gaussian-….js?v=fe91033c:9098 Uncaught (in promise) TypeError: Cannot read properties of undefined (reading 'quaternion') at _Viewer.updateSplatSort (@mkkellogg_gaussian-…?v=fe91033c:9098:63) at finish (@mkkellogg_gaussian-…?v=fe91033c:8770:16) at @mkkellogg_gaussian-…?v=fe91033c:8806:17
Any ideas?

calling threeScene.add(viewer) after viewer.addSplatScene creates the issue

Just checking in, is anyone still having any specific issues? It looks like several have been brought up in this thread, and I'm not sure which (if any) have been resolved.

The original error: TypeError: Cannot read properties of undefined (reading 'quaternion') does seem resolved on my end when I revert my changes to what I had before. If I am correct this was caused by the splat already updating immediately after load, when it was possibly not in the canvas element yet. @mkkellogg

I will be trying the code again this week. So to get this going with react in a R3F app, the way to go is using Patrick's code from here?
https://github.com/mkkellogg/GaussianSplats3D/issues/274#issuecomment-2268273025

@newguy123-creator
I had some small issues in that code, since I wanted to clarify things. The following code should work, make sure to put it in the Canvas element ofcourse.
'use client'

import React, { useState, useEffect } from "react";
import * as GaussianSplats3D from "@mkkellogg/gaussian-splats-3d";

export function SplatsView({ sources, options }: { sources: string[], options?: any }) {
    const [viewer, _] = useState(new GaussianSplats3D.DropInViewer({
        sharedMemoryForWorkers: false,
        showLoadingUI: false,
    }));
    useEffect(() => {
        const addParams: {path: string}[] = sources.map((source: string) => ({path: source}));
        viewer.addSplatScenes(addParams, false)
            // Handle any scene loading exceptions, including early download aborts. This is important in
            // next.js apps where components get rendered twice, and the viewer gets disposed immediately
            // after the first load.
            .catch((err) => {
                console.log("Error loading splat scenes:", err);
            });
    }, []);

    return <primitive object={viewer} />; // Since its an a THREE.Group so supported by R3F
}

Remember this doesn't Dispose the viewer if you want to also dispose the viewer on reload I would change it to the following:
'use client'

import * as THREE from "three";
import React, { useState, useEffect } from "react";
import * as GaussianSplats3D from "@mkkellogg/gaussian-splats-3d";

export function SplatsView({ sources, options }: { sources: string[], options?: any }) {
    const [viewer, setViewer] = useState<THREE.Group>(new THREE.Group());
    useEffect(() => {
        const viewer = new GaussianSplats3D.DropInViewer({
            sharedMemoryForWorkers: false,
            showLoadingUI: false,
        });
        const addParams: {path: string}[] = sources.map((source: string) => ({path: source}));
        viewer.addSplatScenes(addParams, false)
            // Handle any scene loading exceptions, including early download aborts. This is important in
            // next.js apps where components get rendered twice, and the viewer gets disposed immediately
            // after the first load.
            .catch((err) => {
                console.log("Error loading splat scenes:", err);
            });

        setViewer(viewer); // This is possible since the underlying class is a THREE.Group

        return () => void viewer.dispose();
    }, []);

    return <primitive object={viewer} />
}

@newguy123-creator I had some small issues in that code, since I wanted to clarify things. The following code should work, make sure to put it in the Canvas element ofcourse.
'use client'

import React, { useState, useEffect } from "react";
import * as GaussianSplats3D from "@mkkellogg/gaussian-splats-3d";

export function SplatsView({ sources, options }: { sources: string[], options?: any }) {
    const [viewer, _] = useState(new GaussianSplats3D.DropInViewer({
        sharedMemoryForWorkers: false,
        showLoadingUI: false,
    }));
    useEffect(() => {
        const addParams: {path: string}[] = sources.map((source: string) => ({path: source}));
        viewer.addSplatScenes(addParams, false)
            // Handle any scene loading exceptions, including early download aborts. This is important in
            // next.js apps where components get rendered twice, and the viewer gets disposed immediately
            // after the first load.
            .catch((err) => {
                console.log("Error loading splat scenes:", err);
            });
    }, []);

    return <primitive object={viewer} />; // Since its an a THREE.Group so supported by R3F
}

Remember this doesn't Dispose the viewer if you want to also dispose the viewer on reload I would change it to the following:
'use client'

import * as THREE from "three";
import React, { useState, useEffect } from "react";
import * as GaussianSplats3D from "@mkkellogg/gaussian-splats-3d";

export function SplatsView({ sources, options }: { sources: string[], options?: any }) {
    const [viewer, setViewer] = useState<THREE.Group>(new THREE.Group());
    useEffect(() => {
        const viewer = new GaussianSplats3D.DropInViewer({
            sharedMemoryForWorkers: false,
            showLoadingUI: false,
        });
        const addParams: {path: string}[] = sources.map((source: string) => ({path: source}));
        viewer.addSplatScenes(addParams, false)
            // Handle any scene loading exceptions, including early download aborts. This is important in
            // next.js apps where components get rendered twice, and the viewer gets disposed immediately
            // after the first load.
            .catch((err) => {
                console.log("Error loading splat scenes:", err);
            });

        setViewer(viewer); // This is possible since the underlying class is a THREE.Group

        return () => void viewer.dispose();
    }, []);

    return <primitive object={viewer} />
}

Thanks Patrick. So from that, the only thing I change is
({path: source})
and I chnage it to something like:
({path: "./mysplat.ply"})
and then stick it into my canvas with

thats it?

Also, what does the 1st line do?
'use client'

That is a line specifically for server components if I recall correctly. It clarifies that the code should be ran on the client rather than the server.

Thanks Patrick. So from that, the only thing I change is
({path: source})
Example implementation

<Canvas gl={{ antialias: false }}>
    <SplatsView sources={["./mysplat.ply"]} />
</Canvas>

thanks @Patrick-van-Halm-360Fabriek

@Patrick-van-Halm-360Fabriek I converted your code from typescript to jsx like so:
"use client";

import * as THREE from "three";
import React, { useState, useEffect } from "react";
import * as GaussianSplats3D from "@mkkellogg/gaussian-splats-3d";

export function SplatsView({ sources, options }) {
    const [viewer, setViewer] = useState(new THREE.Group());

    useEffect(() => {
        const viewer = new GaussianSplats3D.DropInViewer({
            sharedMemoryForWorkers: false,
            showLoadingUI: false,
        });
        const addParams = sources.map((source) => ({ path: source }));
        viewer.addSplatScenes(addParams, false).catch((err) => {
            console.log("Error loading splat scenes:", err);
        });

        setViewer(viewer); // This is possible since the underlying class is a THREE.Group

        return () => void viewer.dispose();
    }, [sources]);

    return <primitive object={viewer} />;
}

however, now I get this error:

I'm trying to add position, scale, rotation to the SplatsView like so @Patrick-van-Halm-360Fabriek , but it doesnt seem to be working.
How can I pass hese values to the SplatsView component?
                        <SplatsView
                            sources={[".mymodel.splat"]}
                            position={[7, 2, -5.7]}
                            scale={[5, 5, 5]}
                            rotation-x={-Math.PI}
                            rotation-y={-Math.PI}
                        />
                        ```

Sorry for the delayed response, the react component would need to be updated to  use the options parameter, something like:
'use client'

import * as THREE from "three";
import React, { useState, useEffect } from "react";
import * as GaussianSplats3D from "@mkkellogg/gaussian-splats-3d";

export function SplatsView({ sources, options }: { sources: string[], options?: any[] }) {
    const [viewer, setViewer] = useState<THREE.Group>(new THREE.Group());
    useEffect(() => {
        const viewer = new GaussianSplats3D.DropInViewer({
            sharedMemoryForWorkers: false,
            showLoadingUI: false,
        });
        const addParams: {path: string}[] = sources.map((source: string, index: number) => (
            {
                path: source,
                position: options[index]?.position,
                scale: options[index]?.scale,
                rotation: options[index]?.rotation
             }
        ));
        viewer.addSplatScenes(addParams, false)
            // Handle any scene loading exceptions, including early download aborts. This is important in
            // next.js apps where components get rendered twice, and the viewer gets disposed immediately
            // after the first load.
            .catch((err) => {
                console.log("Error loading splat scenes:", err);
            });

        setViewer(viewer); // This is possible since the underlying class is a THREE.Group

        return () => void viewer.dispose();
    }, []);

    return <primitive object={viewer} />
}

And then you'd need to use the component like this:
<SplatsView
    sources={["./mymodel.splat"]}
    options={[{position: [7, 2, -5.7], scale: [5, 5, 5], rotation=[0, 0, 0, 1]}]}
/>

export function SplatsView({ sources, options }: { sources: string[], options?: any[] }) {

How would this look in React JSX instead of TS?

Sorry for the delayed response, the react component would need to be updated to use the options parameter, something like:
'use client'

import * as THREE from "three";
import React, { useState, useEffect } from "react";
import * as GaussianSplats3D from "@mkkellogg/gaussian-splats-3d";

export function SplatsView({ sources, options }: { sources: string[], options?: any[] }) {
    const [viewer, setViewer] = useState<THREE.Group>(new THREE.Group());
    useEffect(() => {
        const viewer = new GaussianSplats3D.DropInViewer({
            sharedMemoryForWorkers: false,
            showLoadingUI: false,
        });
        const addParams: {path: string}[] = sources.map((source: string, index: number) => (
            {
                path: source,
                position: options[index]?.position,
                scale: options[index]?.scale,
                rotation: options[index]?.rotation
             }
        ));
        viewer.addSplatScenes(addParams, false)
            // Handle any scene loading exceptions, including early download aborts. This is important in
            // next.js apps where components get rendered twice, and the viewer gets disposed immediately
            // after the first load.
            .catch((err) => {
                console.log("Error loading splat scenes:", err);
            });

        setViewer(viewer); // This is possible since the underlying class is a THREE.Group

        return () => void viewer.dispose();
    }, []);

    return <primitive object={viewer} />
}

And then you'd need to use the component like this:
<SplatsView
    sources={["./mymodel.splat"]}
    options={[{position: [7, 2, -5.7], scale: [5, 5, 5], rotation=[0, 0, 0, 1]}]}
/>

How would this look in React JSX instead of TS?

Mainly the type annotations would go away. For example:
sources: string[] becomes sources and useState<THREE.Group> goes back to useState
Also you'd need to remove the question marks from places like options[index]?.

Mainly the type annotations would go away. For example: sources: string[] becomes sources and useState<THREE.Group> goes back to useState Also you'd need to remove the question marks from places like options[index]?.

can I specify SH degree in this dropinviewer, if using the memory-optimizations branch?
...and can I just add that code, directly after the line that says "showLoadingUI: false,"?

Yeah you can use most of the standard Viewer parameters for DropInViewer.

Closing for now, please let me know if there are additional questions or issues.

Closing for now, please let me know if there are additional questions or issues.

Hi Mr Kellogg
The micro glitches I mentioned earlier is back.
Let me elaborate:
I set this setting up to 20, from the default:
splatSortDistanceMapPrecision: 20,
This perfectly sorts out the micro glitches on Desktop, however if I enter VR, those micro glitches are back, asif the previous setting is on 16 instead of 20.
Is there anything special I'm suppose to be doing with XR to make it work? I saw somewhere you have code for it, however I'm using React-XR and here is my dropin viewer code:
"use client";

import * as THREE from "three";
import React, { useState, useEffect } from "react";
import * as GaussianSplats3D from "@mkkellogg/gaussian-splats-3d";

export function SplatsView({ sources, options }) {
    const [viewer, setViewer] = useState(new THREE.Group());

    useEffect(() => {
        const viewer = new GaussianSplats3D.DropInViewer({
            freeIntermediateSplatData: true,
            sharedMemoryForWorkers: false,
            gpuAcceleratedSort: false,
            showLoadingUI: true,
            progressiveLoad: true,
            integerBasedSort: false,
            splatSortDistanceMapPrecision: 20,
            sphericalHarmonicsDegree: 2,
            ignoreDevicePixelRatio: true,
            sceneRevealMode: "Default",
        });
        const addParams = sources.map((source, index) => ({
            path: source,
        }));
        viewer.addSplatScenes(addParams, false).catch((err) => {
            console.log("Error loading splat scenes:", err);
        });

        setViewer(viewer); // This is possible since the underlying class is a THREE.Group

        return () => void viewer.dispose();
    }, []);

    return <primitive object={viewer} />;
}

Sorry for the late reply -- I've never used React-XR before, I've only tested with my built-in webXR implementation, and it seemed to work OK the last time I tested it (which was a while ago). If you revert to an older version of my library, does the issue go away?


:bug: fix: edge id

Codecov Report
Attention: 5 lines in your changes are missing coverage. Please review.

Comparison is base (be1e3d9) 2.34% compared to head (1170897) 2.34%.
Report is 1 commits behind head on master.

Files
Patch %
Lines

src/FlowView/helper.tsx
0.00%
4 Missing :warning:

src/constants.tsx
0.00%
1 Missing :warning:

Additional details and impacted files
@@            Coverage Diff            @@
##           master     #43      +/-   ##
=========================================
- Coverage    2.34%   2.34%   -0.01%
=========================================
  Files         127     127
  Lines        8225    8229       +4
  Branches      156     156
=========================================
  Hits          193     193
- Misses       8032    8036       +4

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


Upgrade uploader nodejs version from 12 to 16

Thanks for the merge request!
This would have worked for nodejs16.x, but nodejs18.x comes with AWS SDK for JavaScript v3 instead of v2, so the code also had to be refactored. See https://github.com/evanchiu/serverless-galleria/commit/98b12fb8dac1f34c4a3f047103e2885082034ceb#diff-362a9ef143ef39c2fb5745829704cade26ae4b325cf54f13e81eb504600e7b5f for details.


Providing complex example for nested arrays

Hi aldeed,
I really like autoform, but I'm struggling with more complex schemas as there are no clear examples.
In my case, I'm having a document containing an array within an array and I'm displaying everything on one edit page.
The functionalities I need are

Inserting new items into the first array
Updating/Removing first-level items
Inserting items into the array of the first-level items
Updating/Removing second-level items

Every item has its own sub scheme.
There is an example for updating a first-level item with the dot notation, but I haven't got that working for the inner array.
As a temporary solution I've moved the array items to a separate collection and made the saving/updating stuff by my own, but nevertheless it would be nice to see how that works out by just using autoform.

This is no longer maintained.


Remove duplicate png package

This repository was renamed from maxpng to png and then it was added again in the list:
making the package show up twice in the results.
This PR removes only the old link.
(the current correct link,  https://github.com/kelvin13/png.git, is still in the list 👍 )

Ahh! No idea what the last line change is: I'm using GitHub.com to make the pr 🙈

Thank you! and don't worry about that last line, it comes and goes 😂


BR: Ensure anchored tempo envelope has set bpm

Close #1737
I just followed my nose, unclear if I broke any surrounding code because I didn't try it. I also did not pay attention to formatting, will fix that up before merging.
Demo:

:white_check_mark: Build sws 942-master completed (commit https://github.com/reaper-oss/sws/commit/bb97798637 by @frenchy64)

Windows 64-bit

build/BuildUtils/SWS_Template.ReaperLangPack
build/BuildUtils/whatsnew.html
build/reaper_sws-x64.pdb
build/sws-<IP_ADDRESS>-Windows-x64-issue-1737-move-closest-grid-bb977986.exe

Windows 32-bit

build/BuildUtils/SWS_Template.ReaperLangPack
build/BuildUtils/whatsnew.html
build/reaper_sws-x86.pdb
build/sws-<IP_ADDRESS>-Windows-x86-issue-1737-move-closest-grid-bb977986.exe

macOS x86 64-bit

build/sws-<IP_ADDRESS>-Darwin-x86_64-issue-1737-move-closest-grid-bb977986.dmg

macOS x86 32-bit

build/sws-<IP_ADDRESS>-Darwin-i386-issue-1737-move-closest-grid-bb977986.dmg

macOS ARM 64-bit

build/sws-<IP_ADDRESS>-Darwin-arm64-issue-1737-move-closest-grid-bb977986.dmg

Linux x86 64-bit

build/sws-<IP_ADDRESS>-Linux-x86_64-issue-1737-move-closest-grid-bb977986.tar.xz

Linux x86 32-bit

build/sws-<IP_ADDRESS>-Linux-i686-issue-1737-move-closest-grid-bb977986.tar.xz

Linux ARM 64-bit

build/sws-<IP_ADDRESS>-Linux-aarch64-issue-1737-move-closest-grid-bb977986.tar.xz

Linux ARM 32-bit

build/sws-<IP_ADDRESS>-Linux-armv7l-issue-1737-move-closest-grid-bb977986.tar.xz


Add missing genitalia types

Would you kindly add the remaining genital types featured in RJW as genes?
Needle, snake, for example.

Hi there,
thanks for reaching out.
I think I cover all the base types, do you mean things like rodent genitalia or cloakal genitals?
At the moment I don't have those, they come from the rjw race patch. I must also admit that I am not sure if I want to add another ~10 genes, because they will show up with vendors and events :S

Does it matter if they spawn elsewhere? I'd say it's the responsibility of other mods to regulate that kind of things; personally I'd just like if they are available to begin with.
Given that this is the go-to mod for all RJW related genes, it seems reasonable that the option is also here and not in some obscure patch lost in page 540 of the LL threads.

+1-ing this request. A patch, whether as a separate download or built into this mod for RJW Race Support body parts. As well as adding the ones from base RJW that were missed, I think the "cloaca" type might be the only ones but I'm not 100%.
Also just as a final thing, when I was poking around the mod files I saw a comment in the code saying you weren't sure if the genital genes should affect anuses, personally I think they should.

Fixed / Addressed with 2.0.0
Enjoy Ghost Cocks everybody.


t

t

Not sure why you made this PR. I'm guessing that you are trying to build some shader files using this repo as base. Unfortunately there was a problem with the material data files not being extracted during setup. I have already fixed this. You can pull the latest commit and attempt again if you want.


Fix bigquery case sensitive caching issue (#1810)

Fixes #1810
Fixes #1887
Refactor Relations vs InformationSchemas to handle BQ better
Fix a bug where bigquery cached uppercase schema names wrong.
Use exists_ok, not_found_ok, and delete_contents flags on bigquery dataset operations instead of implementing them manually.
Also pinned some dependencies on behalf of snowflake, so tests can run.

I had to rebase onto louisa-may-alcott and drop the setup.py changes - no actual code changes - because the query comments branch merged and it also had that change.


Add msgpack serialization

The code coverages fails because of the debug_print. I dont think a test case is really needed for that.


NeoVim - codeium#GetStatusString returns ON with space before it

Status when it's on has a space before the first character, it messes up my status line config.

OFF seems to be perfectly fine.

If anyone else is experiencing this with lualine, here's a temporary fix.
local function codeium_status()
    local status = vim.fn["codeium#GetStatusString"]()
    print("Codeium Status:", status)
    if status == " ON" then
        return "ON"
    else
        return status
    end
end

-- ...

-- In lualine splits config
lualine_y = { { 'filetype' }, { codeium_status, color = { fg = "#58f5ab" } } }

I think this is intended? This way the width is constant. Open to other suggestions.


Remove migrate_state_changed Rake task

This can be removed as it's now been run in production.
Depends on #1715
Trello Card

Covered in #1707


fix-isfixedpitch needs update for Panose setting

Currently, fix-isfixedpitch always sets OS/2.panose.bProportion to 9, and ignores any existing Panose settings.
However, as discussed elsewhere (https://github.com/googlefonts/gf-docs/blob/master/Spec/README.md#monospace-fonts) —surprise!—the meaning of bProportion depends on the value of bFamilyType:

If OS/2.panose.bFamilyType is 2 (Latin Text), set OS/2.panose.bProportion to 9.
If OS/2.panose.bFamilyType is 3 (Latin Script), set OS/2.panose.bProportion to 3.
if OS/2.panose.bFamilyType is 5 (Latin Picture), set OS/2.panose.bProportion to 3.

No question that bFamilyType of 2 is massively more common, but 3 and 5 do come up once in a while.
Also, if bFamilyType is ≠2 (including 0 or 1), then bProportion=9 would be invalid.
I propose:
fix-isfixedpitch needs to check for existing Panose values!

If bFamilyType is already set to 2, 3 or 5, set bProportion to 9, 3 or 3, respectively.
If bFamilyType is 0 (which would be the case if Panose was blank), set bFamilyType to 2  in addition to setting bProportion to 9
If bFamilyType is anything else, then bProportion does not need to be adjusted for fixed pitch.

One can also imagine additional optional flags for fix-isfixedpitch to set bFamilyType to 3 or 5, in addition to setting bProportion to 3. I think that is maybe excessive or out of scope? But not crazy.

I've implemented what you suggested. If you think I missed something, or that it could still be improved, please reopen the issue.

Will do. I will take a look at the revised code, and try it on the font I am working on. Thanks!


MXScrollView crashes app

I have same issue. This crash occur on only version  iOS 13 or higher.
Below is stack trace.
Crashed: com.apple.main-thread
EXC_BAD_ACCESS KERN_PROTECTION_FAILURE 0x000000016f357ff0

0  libobjc.A.dylib                0x1b450b1ec lookUpImpOrForward + 4
1  Foundation                     0x1b4b7c138 _NSKVONotifyingOriginalClassForIsa + 28
2  Foundation                     0x1b4b7ac7c NSKVOClass + 36
3  UIKitCore                      0x1b8c75c38 -[UIView(UIKitManual) actionForLayer:forKey:] + 176
4  QuartzCore                     0x1bb155b40 -[CALayer actionForKey:] + 156
5  QuartzCore                     0x1bb15b704 CA::Layer::begin_change(CA::Transaction*, unsigned int, objc_object*, objc_object*&) + 216
6  QuartzCore                     0x1bb163184 CA::Layer::set_bounds(CA::Rect const&, bool) + 324
7  QuartzCore                     0x1bb153ebc -[CALayer setBounds:] + 128
8  UIKitCore                      0x1b8c5388c -[UIView(Geometry) setBounds:] + 504
9  UIKitCore                      0x1b8be7c38 -[UIScrollView setBounds:] + 960
10 UIKitCore                      0x1b89afa20 -[UITableView setBounds:] + 220
11 UIKitCore                      0x1b8be8d60 -[UIScrollView setContentOffset:] + 340
12 UIKitCore                      0x1b89b0b20 -[UITableView setContentOffset:] + 312
13 Foundation                     0x1b4b8149c -[NSObject(NSKeyValueObservingPrivate) _changeValueForKeys:count:maybeOldValuesDict:maybeNewValuesDict:usingBlock:] + 564
14 Foundation                     0x1b4ad0dbc -[NSObject(NSKeyValueObservingPrivate) _changeValueForKey:key:key:usingBlock:] + 68
15 Foundation                     0x1b4b7d5f0 _NSSetPointValueAndNotify + 300
16 *****                          0x10119eea4 -[MXScrollView scrollView:setContentOffset:] + 215 (MXScrollView.m:215)
17 *****                          0x10119ea08 -[MXScrollView observeValueForKeyPath:ofObject:change:context:] + 185 (MXScrollView.m:185)
18 Foundation                     0x1b4b7fa28 NSKeyValueNotifyObserver + 288
19 Foundation                     0x1b4b81a84 NSKeyValueDidChange.llvm.6079828102272951676 + 332
...

I have the same issue and yes the crash is occurring for iOS 13 and above versions.

Thanks for the report! What are the steps to reproduce?

I couldn't reproduce this crash on my device. In my case, I can find this crash only by crash report.

Same problem. I have tableView in bottom part of screen. This crash often happens when you go to another tab (via tab bar controller) or return from navigation stack

I have tableView in bottom part of screen.

My app is in the same situation.

Made some investigations. In my bottom tableView I've used commands like:
UIView.setAnimationsEnabled(false)   tableView.reloadSections(IndexSet(viewModel.changedSections), with: .fade)   UIView.setAnimationsEnabled(true)
Looks like this snippet causes infinite observe notification for contentOffset. App crashes because memory corruption. Same effect if you use next snippet:
UIView.performWithoutAnimation { tableView.reloadSections(IndexSet(viewModel.changedSections), with: .fade) }
This bug happens only on ios 13 and above. iOS 12 looks good.
Maybe this can help

+1 I am also having the same issue

I am having this strange issue. What I am doing is I am updating header height sometimes to 0 and sometimes to 150. After setting header height I am calling scrollToBottom and this time the app crashes. Does anyone knows any fix for this ?

@maxep Need your help here

any word on this?

In MXScrollView.m, line 183:
replace:
else if (self.contentOffset.y > -self.parallaxHeader.minimumHeight) {
                [self scrollView:self setContentOffset:CGPointMake(self.contentOffset.x, -self.parallaxHeader.minimumHeight)];
            }

by:
else if (self.contentOffset.y > -ceil(self.parallaxHeader.minimumHeight)) {
                [self scrollView:self setContentOffset:CGPointMake(self.contentOffset.x, -ceil(self.parallaxHeader.minimumHeight))];
            }

i have same problem..
Please help me.

@choiks14 Try above answer by changing code. Install the library manually and do the changes in code as suggested.

Just go to "MXScrollView.h" and comment this line(line 203) as a temporary fix :
//Disable bouncing when scroll down
if (!_lock && ((self.contentOffset.y > -self.contentInset.top) || self.bounces)) {
//                [self scrollView:scrollView setContentOffset:CGPointMake(scrollView.contentOffset.x, -scrollView.contentInset.top)];
}
should solve your issue.

Developer:  "//This is where the magic happens..."
User:  "//This is where the crash happens..."

None of the above seems to work

I got same problem:
When i pull up to load more data, the footer show a loading activity, just in this time, I scroll down the tableView, crash same with first post


chore/eslint

Hi @AlessioGr  - here's some progress on the eslint / typescript fixups - but please DON'T accept this PR yet (unless you really want to - heh).  I've set this up so that you can see the commits that are coming in.
I 'tweaked' the EditorConfigProvider - mainly so that useEditorConfigContext() can never return undefined.  I won't perform any other refactoring tasks on this PR (only eslint / typescript fixups) until we've had a chance to look at them together.
Still lots to do, but making good progress. ;-)
It's going to look very tidy when we're done.
More soon...

@58bits one thing: do you maybe want me to merge this PR, so we can do further changes in a separate PR?
Just think it's nice to separate the automatic prettier & eslint formatting diffs from the refactors & manual improvements. That way it's more clear as to what has been improved ^^


Add non-functional requirements to DG

Common Problems in NFRs. Examples:

Not really a Non-Functional Requirement
Not scoped clearly (i.e., hard to decide when it has been met)
Not reasonably achievable
Highly relevant NFRs missing


Fix tracing in postsubmit tests

Please provide a description of this PR:
Should be the last pass of this.
I tested with the following script (key was setting nonuser to get the failure we are seeing before the fix):
#!/bin/bash
set -o nounset

  if [[ -n "${PULL_NUMBER:-}" ]]
   then
    set +o nounset
    url="https://prow.istio.io/view/gs/istio-prow/pr-logs/pull/${REPO_OWNER}_${REPO_NAME}/${PULL_NUMBER}/${JOB_NAME}/${BUILD_ID},"
  else
    set +o nounset
    url="https://prow.istio.io/view/gs/istio-prow/pr-logs/${JOB_NAME}/${BUILD_ID},"
  fi
set -o nounset
echo ${url}

  echo "ci.pipeline.run.pull_number=${PULL_NUMBER:-none},"

Another change could be to change the first :- to a := which will actually set PULL_NUMBER to empty and we can remove the later :-none.


F-Droid inclusion

Hi,
Since this app is MIT licensed, are you considering the fact to add it to F-Droid? There is a strong community behind.
You can find some documentation here.
Otherwise, if you don't want to work on the inclusion of this app in F-Droid by yourself, would you still agree with the inclusion of your app in F-Droid by the maintainer team?
Could you please in the meantime tag your releases (have a look here and here for some help), and attach a signed release apk to it, it would allow people without access to Google Play to download, install and then later update your app 👍

Hi! I'm currently in the process of adding the app to fdroid. There in an active rfp in the gitlab repo.
I will definitely look into adding apk included releases!
Thank you submitting this issue

Link to the RFP for anyone interested.
There is some progress as far as I can see in the RFP :)

The app is now available on f-droid

The app is here on F-Droid for anyone interested.

Thanks guys!


Add GitHub Profile Finder as a Project

We should add a new project named "GitHub Profile Finder" to our repository. This project will allow users to search for GitHub profiles and display relevant information about the profiles using the GitHub API. It will be built using React.js.
Features:
Search Functionality:
An input field to enter a GitHub username.
A button to trigger the search.
Profile Information Display:
Avatar
Username
Bio
Number of repositories
Number of followers
Number of following
Link to the GitHub profile
Error Handling:
Display a user-friendly message if the username is not found.
Styling:
Basic styling to make the app user-friendly and visually appealing.
Responsive design to ensure usability on different devices.
Technical Requirements:
Use React.js for building the user interface.
Axios to make HTTP requests to the GitHub API.
React state and lifecycle methods/hooks to manage component state and side effects.
Tailwind for styling.

Go Ahead assigned @Kaustav2410

completed


Custom maps don't render correctly

Is it a mod compatibility issue?
No
Minecraft version
1.18.x
Describe the issue
Creating custom maps using a map.dat file (for 1.18.2, Fabric) doesn't work. They just don't render at all.
It is something to do with the Immersive Portals mod because these maps work on vanilla 1.18.2. For reference, the maps were generated using MapartCraft.

Does the same issue exist in the latest version for MC 1.20.1?

Does the same issue exist in the latest version for MC 1.20.1?

Yes. I also tried in vanilla 1.20.1, and the maps correctly render.

The reason is that, in the map data that MapartCraft, the dimension is minecraft:mapartcraft. ImmPtl does special handling to map data's dimension.

Will be fixed in the next version of ImmPtl.

did the fix also fix twillight forest magic maps? I'm playing 19.2 on forge and assume the fix wasn't backported but because what ever the fix was wasn't referenced from this issue I'm not sure how to find it and try to backport it myself.


ExecCommand time outs with EventsUseMainThread = true

After recent changes ExecCommand has stopped working when EventsUseMainThread is true.
The server does receive the message but client doesn't seem to receive response from server and instead raises ENetComCommandExecutionTimeout.

Well, EventsUseMainThread is not supposed to be used by proper server programs, at it synchronises the OnHandleCommand and OnConnected/OnDisconnected to the main thread... That totally defeats the purpose of having a thread pool. It is there for quick and dirty development, where you don't want to deal with thread synchronisation issues. I suggest you never use that property.
However, I will have a look into it. Since the property is there, it must work...    On Friday, 14 August 2020, 12:26:08 EEST, MauricDaniel<EMAIL_ADDRESS>wrote:
After recent changes ExecCommand has stopped working when EventsUseMainThread is true.
The server does receive the message but client doesn't seem to receive response from server and instead raises ENetComCommandExecutionTimeout.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or unsubscribe.

EventsUseMainThread is used on the client, not on the server. I'll try to reproduce with one of demos.

No it's ok, I fixed it. It was broken due to the re-engineering of the sources these days.

Hi again,
reuploaded the code as the events OnConnect/OnDisconnect/OnReconnect would now not be run in the main thread if EventsUseMainThread. Fixed it.
I have put your name in the special thanks section in the readme.md.

Yes, now it works correctly again. Thanks

Man sorry about the inconvenience caused and you having to make reports... The re-engineering was necessary as the old code could be made more elegant and efficient. And since I had to tackle the initial bug you found, there was no coming back from sitting back at the drawing board. I know you are in production and that is why I try to put every change I make up on GitHub, but the last days I maybe have done this too soon. Anyway, the code has been now thoroughly tested. I hope it works like a charm. Will be always having an eye out for reports anyone finds. Thanks for everything.

It's not a problem at all, as long as you fix stuff quickly like you seem to do. We are not using NetCom7 yet in production code, so all we do is test anyway. After we use it in production we'll be a bit more careful. So now is perfect time to iron out any issues.
Thanks for being so responsive.

No problem man! I wonder how big that system you are working on is!!! It seems to be using all aspects of the netcom package! The bigger the system, the more any bugs stand out... I hope everything works like a breeze now. Thank you for all your input!


打开的文件太多？啥意思！

2016-10-02 22:55:13 ERROR    shell.py:50 [Errno 24] Too many open files
2016-10-02 22:55:13 ERROR    shell.py:50 [Errno 24] Too many open files
2016-10-02 22:55:13 ERROR    shell.py:50 [Errno 24] Too many open files
2016-10-02 22:55:13 ERROR    shell.py:50 [Errno 24] Too many open files
2016-10-02 22:55:13 ERROR    shell.py:50 [Errno 24] Too many open files
2016-10-02 22:55:13 ERROR    shell.py:50 [Errno 24] Too many open files
2016-10-02 22:55:13 ERROR    shell.py:50 [Errno 24] Too many open files
2016-10-02 22:55:13 ERROR    shell.py:50 [Errno 24] Too many open files
2016-10-02 22:55:13 ERROR    shell.py:50 [Errno 24] Too many open files
2016-10-02 22:55:13 ERROR    shell.py:50 [Errno 24] Too many open files
2016-10-02 22:55:13 ERROR    shell.py:50 [Errno 24] Too many open files
2016-10-02 22:55:13 ERROR    shell.py:50 [Errno 24] Too many open files
2016-10-02 22:55:13 ERROR    shell.py:50 [Errno 24] Too many open files
2016-10-02 22:55:13 ERROR    shell.py:50 [Errno 24] Too many open files
2016-10-02 22:55:13 ERROR    shell.py:50 [Errno 24] Too many open files
2016-10-02 22:55:13 ERROR    shell.py:50 [Errno 24] Too many open files
2016-10-02 22:55:13 ERROR    shell.py:50 [Errno 24] Too many open files
2016-10-02 22:55:13 ERROR    shell.py:50 [Errno 24] Too many open files
2016-10-02 22:55:13 ERROR    shell.py:50 [Errno 24] Too many open files
2016-10-02 22:55:13 ERROR    shell.py:50 [Errno 24] Too many open files
2016-10-02 22:55:13 ERROR    shell.py:50 [Errno 24] Too many open files
2016-10-02 22:55:13 ERROR    shell.py:50 [Errno 24] Too many open files
2016-10-02 22:55:13 ERROR    shell.py:50 [Errno 24] Too many open files
2016-10-02 22:55:13 ERROR    shell.py:50 [Errno 24] Too many open files
2016-10-02 22:55:13 ERROR    shell.py:50 [Errno 24] Too many open files
2016-10-02 22:55:13 ERROR    shell.py:50 [Errno 24] Too many open files
2016-10-02 22:55:13 ERROR    shell.py:50 [Errno 24] Too many open files
2016-10-02 22:55:13 ERROR    shell.py:50 [Errno 24] Too many open files
2016-10-02 22:55:13 ERROR    shell.py:50 [Errno 24] Too many open files
2016-10-02 22:55:13 ERROR    shell.py:50 [Errno 24] Too many open files
2016-10-02 22:55:13 ERROR    shell.py:50 [Errno 24] Too many open files
2016-10-02 22:55:13 ERROR    shell.py:50 [Errno 24] Too many open files
后端出现上面的错误日志，节点红掉，提示掉线…

https://onebitbug.me/2014/06/23/setting-limit-in-linux/
善用google
2016-10-02 19:37 GMT+03:00 Jouaoo<EMAIL_ADDRESS>
2016-10-02 22:55:13 ERROR shell.py:50 [Errno 24] Too many open files
2016-10-02 22:55:13 ERROR shell.py:50 [Errno 24] Too many open files
2016-10-02 22:55:13 ERROR shell.py:50 [Errno 24] Too many open files
2016-10-02 22:55:13 ERROR shell.py:50 [Errno 24] Too many open files
2016-10-02 22:55:13 ERROR shell.py:50 [Errno 24] Too many open files
2016-10-02 22:55:13 ERROR shell.py:50 [Errno 24] Too many open files
2016-10-02 22:55:13 ERROR shell.py:50 [Errno 24] Too many open files
2016-10-02 22:55:13 ERROR shell.py:50 [Errno 24] Too many open files
2016-10-02 22:55:13 ERROR shell.py:50 [Errno 24] Too many open files
2016-10-02 22:55:13 ERROR shell.py:50 [Errno 24] Too many open files
2016-10-02 22:55:13 ERROR shell.py:50 [Errno 24] Too many open files
2016-10-02 22:55:13 ERROR shell.py:50 [Errno 24] Too many open files
2016-10-02 22:55:13 ERROR shell.py:50 [Errno 24] Too many open files
2016-10-02 22:55:13 ERROR shell.py:50 [Errno 24] Too many open files
2016-10-02 22:55:13 ERROR shell.py:50 [Errno 24] Too many open files
2016-10-02 22:55:13 ERROR shell.py:50 [Errno 24] Too many open files
2016-10-02 22:55:13 ERROR shell.py:50 [Errno 24] Too many open files
2016-10-02 22:55:13 ERROR shell.py:50 [Errno 24] Too many open files
2016-10-02 22:55:13 ERROR shell.py:50 [Errno 24] Too many open files
2016-10-02 22:55:13 ERROR shell.py:50 [Errno 24] Too many open files
2016-10-02 22:55:13 ERROR shell.py:50 [Errno 24] Too many open files
2016-10-02 22:55:13 ERROR shell.py:50 [Errno 24] Too many open files
2016-10-02 22:55:13 ERROR shell.py:50 [Errno 24] Too many open files
2016-10-02 22:55:13 ERROR shell.py:50 [Errno 24] Too many open files
2016-10-02 22:55:13 ERROR shell.py:50 [Errno 24] Too many open files
2016-10-02 22:55:13 ERROR shell.py:50 [Errno 24] Too many open files
2016-10-02 22:55:13 ERROR shell.py:50 [Errno 24] Too many open files
2016-10-02 22:55:13 ERROR shell.py:50 [Errno 24] Too many open files
2016-10-02 22:55:13 ERROR shell.py:50 [Errno 24] Too many open files
2016-10-02 22:55:13 ERROR shell.py:50 [Errno 24] Too many open files
2016-10-02 22:55:13 ERROR shell.py:50 [Errno 24] Too many open files
2016-10-02 22:55:13 ERROR shell.py:50 [Errno 24] Too many open files
后端出现上面的错误日志，节点红掉，提示掉线…
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/glzjin/ss-panel-v3-mod/issues/271, or mute the thread
https://github.com/notifications/unsubscribe-auth/ADqmzzccGMwn-sV9QTFsFh5fHh-2qC2Oks5qv93cgaJpZM4KMDSh
.

@jimorsm 请按照安装说明进行优化。

两位大佬，我错了…
已经按照教程在supervisord里加ulimit -n 51200
查询后发现进程还是1024…
发现是centos 7使用的是systemd原因，最后在/usr/lib/systemd/system/supervisord.service的service段加了
LimitNOFILE=51200
问题解决，感谢两位大佬的帮助…
此issues可以关闭…


Python: support match

Cleaned up version of https://github.com/github/codeql/pull/7356

AST nodes for patterns

sub expressions, sub statements, and sub patterns
add sub patterns to the new case statement
scopes for patterns computed as the scope of the enclosing case (could be added to py_scopes instead)

SSA for variables created inside match statements

PatternCaptureDefinition and PatternAliasDefinition

data flow through patterns

subject of match flows to each top-level pattern (could be more like use-use-flow and only flow directly to the first one)
shape based flow inside patterns

[x] MatchAsPattern
[x] MatchOrPattern
[x] MatchLiteralPattern (no flow)
[x] MatchCapturePattern
[x] MatchWildcardPattern (no flow)
[x] MatchValuePattern (no flow)
[x] MatchSequencePattern

[x] when tuple
[x] when list

[x] MatchStarPattern
[x] MatchMappingPattern
[x] MatchDoubleStarPattern
[x] MatchKeyValuePattern
[x] MatchClassPattern

[x] for keyword arguments
[ ] for positional arguments

[x] MatchKeywordPattern

[x] create upgrade script
[x] create downgrade script

Superseeded by https://github.com/github/codeql/pull/7635


docs: make --system error message more clear

There are a few issues like this: https://github.com/pypa/pipenv/issues/2183
I think people generally understand the reason behind it but the message is a little vague

I am declining this old PR in favor of work being done to expose the ability to allow system installs for users that accept the risks to do so, work on-going in:  https://github.com/pypa/pipenv/pull/5144


Can't find variable: __, when run Unit Test scripts

Hi, I applied i18n plugin of webpack to my code, which will wrap String variables as __("Hello World"), the problem occurs when run Unit Test/
It says __ cannot be found.
Any idea? To mock it or load from somewhere else

I have such mock in my test_helpers.js:
global.__ = str => str;

@shuson as @nosovsh mentioned, we have to add the shim by ourselves if you are not using webpack and same webpack configuration 😃


Upgrade ipfs-hubot

From PL Slack (private): @hsanjuan "I wouldn't mind if someone with coffeescript powers took this pinbot and upgraded the whole hubot depedencies and fixed a couple of things (mainly there is no need to pre-resolve paths anymore)."
I'm guessing this is the bot here:
https://github.com/ipfs/ipfs-hubot
Not to be confused with our irc bot:
https://github.com/ipfs/pinbot-irc
Older version? https://github.com/whyrusleeping/pinbot
Audience: Mostly Protocol Labs Slack users, but also anybody else using the open source ipfs-hubot (anybody?)
Impact: Keep things fresh
Stakeholders: ipfs-cluster team, infra

All correct.

In addition. It would be great to make it portable and easy to config so that deploy their own at their homes.

In addition. It would be great to make it portable and easy to config so that deploy their own at their homes.

That's already the case (as far as we can do with hubot): it is Dockerized and configuration involves just setting two environment variables.
I learned that Slack has it's own bot libraries and you can publish things in an appstore, so an interesting avenue would be to rewrite this as a one-click-install slack app (I guess someone still needs to run it?).


Failing to get most basic example working

Hi, I write with a very vague issue:  I'm unable to get any example from the README.md to work.  I feel like I may very well be missing something basic or obvious but can't figure out what that would be.
I'm using create-react-app with the react-scripts-ts scripts (i.e. create-react-app myApp --scripts-version-react-scripts-ts), as described in the Microsoft Typescript-React-Starter .
The Map component renders as "Loading.." and never proceeds further.  Neither the onLoad or onError handlers seem to be called.
You can find an example of the application here: https://codesandbox.io/s/170ooj28l

It seems that the WebMap example works: https://codesandbox.io/s/n5qnpzwk5l . Is the initial code example in the README supposed to serve purely as a demonstration and not as functional code?
import * as React from 'react';
import * as ReactDOM from 'react-dom';
import { Map } from 'react-arcgis';

ReactDOM.render(
  <Map />,
  document.getElementById('container')
);

I admit that I'm not super familiar with the ArcGIS JS API, maybe I'm missing something fundamental there.

@alukach the issue with your app is that you did not give the container component any dimensions. The map does not have any inherent size -- it just expands to fill its containing element.
Changing the containing element in your app to, for example:

in public/index.html works fine. The example assumes that 'container' already has some dimensions.

Ah, of course, thanks.


Error

I am always getting errors after trying to compile.  I am really sorry for my recent absence. I will look forward to fix the issues in the following week.

I am always getting errors after trying to compile. I have no idea whats wrong , i did all the steps correctly

Since you've gotten as far as the compile part, how should i set up the registry and directory names in the builder? is it where it will be saved in the victims computer, or is it referring to where it will be stored in my own?

I am always getting errors after trying to compile. I have no idea whats wrong , i did all the steps correctly

Since you've gotten as far as the compile part, how should i set up the registry and directory names in the builder? is it where it will be saved in the victims computer, or is it referring to where it will be stored in my own?

victim

victim

so what would you recommend putting in there? like what did you put in cause ive tried putting in directory paths and they dont work

@fluffeuk we added it to our wiki


chore: update smoke test deps

chore: update smoke test deps

Updating dependencies is not something we accept unless maybe it fixes an issue?

Some of the versions that are used are depcrated so I update them and it dont fix a spefic issue @bpasero


[Feature Request] Allow camera to reset after using knife

Describe the feature you'd like to see added
Normally, if you aim upwards with the knife to slash a face, letting go resets the camera. With the new camera improvements, this doesn't happen and the camera always stays where it is, which means Leon is left staring at the sky and I have to adjust it every time, which makes it more difficult to follow up with a melee attack and judge how safe it is to do so. The same is true after knifing enemies on the ground: I'd prefer to not have to manually adjust the camera back just so Leon isn't staring at the ground.
It's a minor thing, but it's annoying enough that players who like doing knife-only runs (such as myself) feel more comfortable with the original camera.

Yeah, you're right, resetting the camera in this case seems to work best. I've added it as an option, enabled by default now. A new release should come soon-ish (hopefully).
Thanks!


PyPy support?

we should check if it is possible to support pypy via cpyext
https://bitbucket.org/pypy/compatibility/wiki/c-api

seems there is no reason to do this as cpyext is very slow.


build: Update Vulkan-Headers to 1.3.299

also update SPIRV dependencies

CI Vulkan-ExtensionLayer build queued with queue ID 286618.

CI Vulkan-ExtensionLayer build # 1006 running.

CI Vulkan-ExtensionLayer build # 1006 failed.

CI Vulkan-ExtensionLayer build queued with queue ID 286678.

CI Vulkan-ExtensionLayer build # 1007 running.

CI Vulkan-ExtensionLayer build # 1007 passed.


Seems "configs/defense_cfg.json" is missing

Hi Giorgio, could you please upload the file configs/defense_cfg.json? Thanks!

Hi @whyisyoung, I'm really sorry I completely missed this post. I've just uploaded the file, I hope it wasn't a huge problem for you.
Giorgio


Add  Robocop Report Formats for Warnings Next Generation plugin Jenkins

Is it possible to have Robocop Report Formats for Warnings Next Generation plugin Jenkins?

AFAIK it's possible to load issues from Jenkins if you use plugin for pylint and set --format to look like pylint one. Then you need to redefine the name of the plugin so it shows as Robocop.

Format the issues like pylint (--format - I don't remember what's is the current format of pylint though. Robocop format details here https://robocop.readthedocs.io/en/stable/rules.html#output-message-format)
Output all issues in file (--output robocop.log)
Parse output using Jenkins pylint plugin.

How to configure plugin in Jenkins found here: https://github.com/jenkinsci/warnings-ng-plugin/blob/master/doc/Documentation.md#creating-support-for-a-custom-tool
Example:
tools: [pyLint(name: 'Robocop issues', pattern: 'robocop.log')]

But of course it's kind of hack and it would be best to have dedicated plugin in Jenkins for Robocop. But it's low priority now due to other issues (contributions are welcome on that front!).


Add support for binaryTargets generator option

Problem

After #454 is merged we will not properly generate the current binary platform name. This is fine for now as Prisma gives us the binary paths at generation time but because we cannot properly detect the current binary platform we have to iterate through all of them to find one that works, this is very hacky.
Suggested solution

We should copy the implementation from https://github.com/prisma/prisma/tree/main/packages/get-platform.

prisma-client-py version 7.0.0

Hitting this issue not due to the linked PR but due to something with docker cross-platform build on OSX M1 for --platform=linux/amd64.
Certainly the binaryTargets is not supported, but I also did not see a warning message as I would have expected given this section of code, through arguably it might never get invoked since the runtime error around the engine (qemu-x86_64: Could not open '/lib64/ld-linux-x86-64.so.2': No such file or directory) happens before this gets executed.
(arcadia-py3.10) arcadia-user@182b77edc2fa:~/arcadia$ uname -m
aarch64
(arcadia-py3.10) arcadia-user@182b77edc2fa:~/arcadia$ uname -a
Linux 182b77edc2fa 5.10.124-linuxkit #1 SMP PREEMPT Thu Jun 30 08:18:26 UTC 2022 aarch64 GNU/Linux
(arcadia-py3.10) arcadia-user@182b77edc2fa:~/arcadia$ file /tmp/prisma/binaries/engines/efdf9b1183dddfd4258cd181a72125755215ab7b/prisma-migration-engine-debian-openssl-1.1.x
/tmp/prisma/binaries/engines/efdf9b1183dddfd4258cd181a72125755215ab7b/prisma-migration-engine-debian-openssl-1.1.x: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 2.6.32, BuildID[sha1]=ed74130fc99ac614964ce0e7f711c4583bced8c3, with debug_info, not stripped

More debugging context:
(arcadia-py3.10) arcadia-user@182b77edc2fa:~/arcadia$ prisma py fetch
Downloading binaries  [####################################]  100%
Downloaded binaries to /tmp/prisma/binaries/engines/efdf9b1183dddfd4258cd181a72125755215ab7b
(arcadia-py3.10) arcadia-user@182b77edc2fa:~/arcadia$ ls /tmp/prisma/binaries/engines/efdf9b1183dddfd4258cd181a72125755215ab7b
prisma-cli-linux                                  prisma-migration-engine-debian-openssl-1.1.x  prisma-query-engine-debian-openssl-1.1.x
prisma-introspection-engine-debian-openssl-1.1.x  prisma-prisma-fmt-debian-openssl-1.1.x
(arcadia-py3.10) arcadia-user@182b77edc2fa:~/arcadia$ prisma -v
qemu-x86_64: Could not open '/lib64/ld-linux-x86-64.so.2': No such file or directory
(arcadia-py3.10) arcadia-user@182b77edc2fa:~/arcadia$ file /tmp/prisma/binaries/engines/efdf9b1183dddfd4258cd181a72125755215ab7b/prisma-migration-engine-debian-openssl-1.1.x
/tmp/prisma/binaries/engines/efdf9b1183dddfd4258cd181a72125755215ab7b/prisma-migration-engine-debian-openssl-1.1.x: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 2.6.32, BuildID[sha1]=ed74130fc99ac614964ce0e7f711c4583bced8c3, with debug_info, not stripped
(arcadia-py3.10) arcadia-user@182b77edc2fa:~/arcadia$ prisma -v
qemu-x86_64: Could not open '/lib64/ld-linux-x86-64.so.2': No such file or directory
(arcadia-py3.10) arcadia-user@182b77edc2fa:~/arcadia$ cat prisma/schema.prisma
// This is your Prisma schema file,
// learn more about it in the docs: https://pris.ly/d/prisma-schema

generator client_python {
    provider             = "prisma-client-py"
    interface            = "asyncio"
    recursive_type_depth = 5
    // This is to fix an issue with building arm64 in docker
    binaryTargets        = ["linux-arm64-openssl-1.1.x"]
}

@jacobdr Thanks for the detailed information!
I apologise for the initial confusing wording of this issue - the PR mentioned hasn't been merged yet. I think it may actually solve the issue you're encountering (after removing binaryTargets), could you try it out please? You can install it like so
pip install -U git+https://github.com/RobertCraigie/prisma-client-py@refactor/remove-pkg-cli

@RobertCraigie sounds good. I'd also like to contribute a docker build test case if you are open to that? The goal is to reproduce the issue in CI against master so we know your fix takes hold.

I have a build going here -- https://github.com/jacobdr/prisma-client-py/pull/2 -- that combines the changes from the remove-pkg-cli branch in #454 with the Docker CI testing proposal which should give us an indication the effectiveness of the changes


Notify about outdated settings

At the moment, all notifications about setting deprecations are either maintained by hand, or are not really connected to the original version they were deprecated in anymore.
This PR cleans that up by doing the following things:

move ConfigProvider to its own package
store the history of breaking changes

what the old value was
what the replacement is
where the setting originated and was moved to (i.e. ini→db)
if I haven't missed anything, all breaking changes since the beginning of Gitea are included
everything is checked in one method, where you can simply add new calls to it

Print any setting that is now outdated
Remove the previously scattered deprecation notices
It was developed with maintainability in mind:

new setting sources can be added fairly easy: Simply define a setting type in modules/setting/history/setting_types.go and define a convenience method in modules/setting/history/exposed_api.go. No further changes are needed.
new breaking configuration changes can be added by adding one call to the corresponding convenience method in modules/setting/history/breaking_changes.go

Appearance

or as text:
2023/02/28 19:42:12 ...story/exposed_api.go:96:func1() [E] [63fe4b04-14] The setting [server].LFS_CONTENT_PATH in your ini config file is no longer used starting with Gitea 1.18.0. Please use the new value [lfs].PATH in the ini config file instead.
2023/02/28 19:42:12 ...story/exposed_api.go:96:func1() [E] [63fe4b04-14] The setting [ui].ONLY_SHOW_RELEVANT_REPOS in your ini config file is no longer used starting with Gitea 1.19.0. It has no documented replacement.
2023/02/28 19:42:12 ...story/exposed_api.go:96:func1() [E] [63fe4b04-14] The setting [indexer].ISSUE_INDEXER_QUEUE_TYPE in your ini config file is no longer used starting with Gitea 1.15.0. Please use the new value [queue.issue_indexer].TYPE in the ini config file instead.
2023/02/28 19:42:12 ...story/exposed_api.go:96:func1() [E] [63fe4b04-14] The setting [indexer].ISSUE_INDEXER_QUEUE_DIR in your ini config file is no longer used starting with Gitea 1.15.0. Please use the new value [queue.issue_indexer].DATADIR in the ini config file instead.
2023/02/28 19:42:12 ...story/exposed_api.go:96:func1() [E] [63fe4b04-14] The setting [indexer].ISSUE_INDEXER_QUEUE_CONN_STR in your ini config file is no longer used starting with Gitea 1.15.0. Please use the new value [queue.issue_indexer].CONN_STR in the ini config file instead.
2023/02/28 19:42:12 ...story/exposed_api.go:96:func1() [E] [63fe4b04-14] The setting [indexer].ISSUE_INDEXER_QUEUE_BATCH_NUMBER in your ini config file is no longer used starting with Gitea 1.15.0. Please use the new value [queue.issue_indexer].BATCH_LENGTH in the ini config file instead.
2023/02/28 19:42:12 ...story/exposed_api.go:96:func1() [E] [63fe4b04-14] The setting [indexer].UPDATE_BUFFER_LEN in your ini config file is no longer used starting with Gitea 1.15.0. Please use the new value [queue.issue_indexer].LENGTH in the ini config file instead.
2023/02/28 19:42:12 ...story/exposed_api.go:96:func1() [E] [63fe4b04-14] The setting [picture].ENABLE_FEDERATED_AVATAR in your ini config file is no longer used starting with Gitea 1.18.0. Please use the key picture.ENABLE_FEDERATED_AVATAR in the database table 'system setting' instead. The current value will be/has been copied to it.
2023/02/28 19:42:12 ...story/exposed_api.go:96:func1() [E] [63fe4b04-14] The setting [picture].DISABLE_GRAVATAR in your ini config file is no longer used starting with Gitea 1.18.0. Please use the key picture.DISABLE_GRAVATAR in the database table 'system setting' instead. The current value will be/has been copied to it.

If I understand correctly, this frameworks handles 1v1 mapping.
Is it possible to have these mappings?

OLD_KEY_1 & OLD_KEY_2 => NEW_KEY_X
OLD_KEY_X  => NEW_KEY_1 & NEW_KEY_2

OLD_KEY_1 & OLD_KEY_2 => NEW_KEY_X: Yes, that's absolutely possible. Simply deprecate both settings with the new replacement. (So, simply call move(old1, new) and move(old2, new))
OLD_KEY => NEW_KEY_1 & NEW_KEY_2: No, that's not possible*. That case also arose once with mailer.HOST => mailer.SMTP_ADDR+mailer.SMTP_PORT. I recommend the following procedure in this case: Call move(old, new1/new2) (whichever is more dominant), and document in the new value (i.e. config-cheat-sheet and app.example.ini) that it should be called in combination with the other parameter. I decided against supporting that case separately as that would make the logic much more complicated, and it is fairly uncommon.
* One possible workaround would be to call move(old, "$(section new1)$(key new1)+$(key new2)"), so that we would get move("mailer.HOST", "mailer.SMTP_ADDR+SMTP_PORT") in the case above.
This will work with the current implementation.
However, I decided against using it, as that would violate the assumption that the new key can be found like this in the new source, which future developers might rely on.
I'm fine with both approaches, as long as we can agree on one.

Regarding the other comments: I'll probably be able to take care of them later today.

Closing as it is far too outdated by now.


what does this mean?

does it mean i can put the role id so only the person with that role can run commands or what

Please read the wiki on Linked Commands.  This is a non-issue.


tk-37 Create new card to show crypto exchanges

Created crypto card
adding request user input
giving response in new card for crypto exchange rate


The target binary is x86, while donut is running as x64

Hello everyone, I continue to receive the following error.
 [>] Transformer: Donut Traceback (most recent call last):   File "C:\Users\username\Downloads\inceptor\inceptor\generators\NativeArtifactGenerator.py", line 249, in generate     self.generate_wrapped()   File "C:\Users\username\Downloads\inceptor\inceptor\generators\NativeArtifactGenerator.py", line 271, in generate_wrapped     shellcode_bytes = self.transformer.transform(target=self.file)   File "C:\Users\username\Downloads\inceptor\inceptor\converters\Donut.py", line 31, in transform     raise ArchitectureMismatch( converters.Donut.ArchitectureMismatch: The target binary is x86, while donut is running as x64
If I compile the program with x64. everything goes ok.
But if the command is in x86, I receive this error.
Can you help me

You are using some tool that wraps Donut to generate shellcode. That error is generated by that other program. As such, check with the documentation for the tool (inceptor) to resolve this issue. If there is a way to pass options to donut, you can manually tell it to generate x86 shellcode via the -a 1 flag. Otherwise, that is an issue with interceptor, not donut, so is out of scope of support for this project.


DO NOT MERGE: Add testfile for testing SH runner

Description of your changes

Fixes #
I have:

[ ] Run make reviewable test to ensure this PR is ready for review.

How has this code been tested

Need to provide tests on new Github runners.

Tests successfully finished. This PR not relevant anymore.

Open for test Uptest job on beta runner


[WIP] Add lint task

Add lint task ( using gometalinter )
TODO

[x] Add dependency command in .duci/Dockerfile b423799
[x] Add lint task b423799
[ ] Using make command in GitHub Actions

ci lint

Pull Request Test Coverage Report for Build 1114

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 90.285%

Totals

Change from base Build 1112:
0.0%

Covered Lines:
1171

Relevant Lines:
1297

💛  - Coveralls

ci lint

ci test


Revise integration tests

Concerns raised during review of #2135:

[ ] Check if some integration tests really can only run on "us-central1-a"
(e.g. https://github.com/weaveworks/scope/blob/v1.2.1/integration/300_internet_edge_test.sh#L8-L12) and if possible remove that limitation.

[ ] Use curl everywhere in line with the majority of tests, not wget.

[ ] Check the tests for potential races which could lead to wrong results (both negative and positive), e.g.

[ ] https://github.com/weaveworks/scope/pull/2135#pullrequestreview-23229109
[ ] https://github.com/weaveworks/scope/blob/v1.2.1/integration/config.sh#L74-L78

[ ] Remove while true; do; wget ... loops when a single connection should be enough and detected correctly by Scope.

Check if some integration tests really can only run on "us-central1-a"
(e.g. https://github.com/weaveworks/scope/blob/v1.2.1/integration/
300_internet_edge_test.sh#L8-L12) and if possible remove that limitation.

This should be fixed in the ebpf PR itself
On Feb 22, 2017 5:47 PM, "Michael Schubert"<EMAIL_ADDRESS>wrote:

Concerns raised during review of #2135
https://github.com/weaveworks/scope/pull/2135:

Check if some integration tests really can only run on "us-central1-a"
(e.g. https://github.com/weaveworks/scope/blob/v1.2.1/integration/
300_internet_edge_test.sh#L8-L12
https://github.com/weaveworks/scope/blob/v1.2.1/integration/300_internet_edge_test.sh#L8-L12)
and if possible remove that limitation.
Use curl everywhere in line with the majority of tests, not wget.
Check the tests for potential races which could lead to wrong results
(both negative and positive), e.g.

#2135 (review)
https://github.com/weaveworks/scope/pull/2135#pullrequestreview-23229109

https://github.com/weaveworks/scope/blob/v1.2.1/integration/
config.sh#L74-L78

Remove while true; do; wget ... loops when a single connection should
be enough and detected correctly by Scope.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/weaveworks/scope/issues/2270, or mute the thread
https://github.com/notifications/unsubscribe-auth/ACQOJL6SpKmlh0vyU2uk8oL7yVz-8FNlks5rfGaCgaJpZM4MI5Rh
.

Check if some integration tests really can only run on "us-central1-a" ... and if possible remove that limitation

This should be fixed in #2135  itself

We pushed https://github.com/weaveworks/scope/pull/2135/commits/02e3419e084f4fed5b3989b413708d9a93e1a545


Proxy refactor cleanup

-> removed unused fields
-> mutex locks added as necessary to config

Testing Steps - @theguy951357
-> join a network with proxy on
-> check if peer connections are working fine
-> to test these changes please update your server against this PR https://github.com/gravitl/netmaker/pull/1936


auth

would be nice if we could perform a simple login before crawling

i think this implementation is on the user rather the library?

makes sense


[isomorphic-react-app] Upgrade Bootstrap to final version 4

@googlebot I signed it!

@comxd good catch!


Add script creating an amalgamation

I.e. it combines everything in a single wren.c file for super easy embedding. See SQLite.
The Python script is as simple as possible and makes a lot of assumptions:

All static variables and functions are unique across all files.
Macros need to be #undefed before they are redefined in a different file (there was only a single case here which could also be renamed).
All header files (except wren.h) are in the same directory.

Building the CLI is then possible like this:
make wren.c
gcc -Os -std=c99 -Isrc/include wren.c src/cli/*.c -o bin/wren -lm

The benchmark results are curious - apparently, some very different optimizations happen with the single file (comparing plain make and the build resulting from the two lines above):
binary_trees - wren            .......... 0.41s 0.0017 111.40% relative to baseline
delta_blue - wren              .......... 0.20s 0.0007  98.85% relative to baseline
fib - wren                     .......... 0.65s 0.0061  87.50% relative to baseline
for - wren                     .......... 0.23s 0.0019 106.27% relative to baseline
method_call - wren             .......... 0.33s 0.0011 101.85% relative to baseline
map_numeric - wren             .......... 0.77s 0.0019  99.19% relative to baseline
map_string - wren              .......... 0.18s 0.0012 104.65% relative to baseline
string_equals - wren           .......... 0.51s 0.0047 101.89% relative to baseline

The benchmark results are curious - apparently, some very different optimizations happen with the single file

That's really not so unexpected, to be honest. Code alignment and peephole optimizations are quite different, from time to time.

 Sorry it took so long for me to get to this. In the meantime, I merged in another patch that broke this. :(
From the benchmark results, it isn't a clear win in performance. (But it's really cool that you implemented this so we can know that!)
Given that, do you think it's worth landing? We'd have to maintain it henceforth and forever, so I want to make sure it will provide enough value for end users. If so, any chance you could update it to work with the new opcode header?

I think the benefit of this would primarily be the easy inclusion in other projects for people who want to use Wren as a library. I mainly included the benchmark results because the SQLite people claim that the amalgamation improved performance for them.
I guess this isn't very important right now, but may be interesting once Wren gets versioned releases. The recommended way of using Wren could then just be "download this file, add it to your build, done". Adding this later on is likely to be more painful as it's not hard to avoid duplicate names, but annoying to remove them in bulk.
I will update the pull request. When merging this, it would also be important to have the result tested by the CI so that issues are caught immediately.
FWIW the comparison also looks a lot better when using clang (for both builds - when comparing gcc and clang, the clang build was a lot faster anyways):
binary_trees - wren            .......... 0.35s 0.0011  95.12% relative to baseline
delta_blue - wren              .......... 0.14s 0.0006 105.72% relative to baseline
fib - wren                     .......... 0.50s 0.0057  96.66% relative to baseline
for - wren                     .......... 0.15s 0.0005 124.67% relative to baseline
method_call - wren             .......... 0.22s 0.0024 111.48% relative to baseline
map_numeric - wren             .......... 0.60s 0.0008 116.36% relative to baseline
map_string - wren              .......... 0.14s 0.0014 110.12% relative to baseline
string_equals - wren           .......... 0.45s 0.0007 104.19% relative to baseline

The recommended way of using Wren could then just be "download this file, add it to your build, done".

Yeah, I think this sounds cool.

Edit: green means better, right?

Yes!

I'm actually not sure how to interpret the percentage score now when I think about it...

It shows you that Wren's speed compared to that language. This seems kind of backwards, but it makes sense if you assume Wren is the "most important" language to someone running these benchmarks.
So, if for on Lua reports 123%, it means Wren is 23% faster than Lua on this benchmark.
If the language for the benchmark is Wren that it compares the current Wren speed to the baseline. So this:
for - wren                     .......... 0.15s 0.0005 124.67% relative to baseline

Means your current code is 24.67% faster than the baseline performance.

When merging this, it would also be important to have the result tested by the CI so that issues are caught immediately.

Agree totally. The simplest way to do this may just be to make the amalgamation the canonical way to build the VM. We could make the makefile compile the CLI and libraries using the amalgamated source.

I rebased my commits and fixed some new issues. (The old branch is available here.)

The simplest way to do this may just be to make the amalgamation the canonical way to build the VM. We could make the makefile compile the CLI and libraries using the amalgamated source.

 Additionally, it may make compilation slower (compiling the amalgamation with gcc takes about 0,7s here and 0,3s with clang).

Super groovy! Sorry it took so long to merge, but it's in now. \o/


Support multiple VGSs

As an admin, I want to support multiple gliding units, so that the dashboard can be used by more people
Dev notes

[x] Research methods of adding multiple DB credentials
[ ] Add unit selection when authenticating
[ ] Add 626 VGS credentials to test
[ ] Test on streamlit
[ ] STRETCH: Add a logout. Delete the cookie when logging out

[ ] Add an auth project
[ ] Add an auth database to auth project
[ ] Add users collection
[ ] Add "allowed_vgs" field with the allowed VGSs e.g. ["626vgs", "661vgs"]
[ ] Add vgs_db collection with details of each VGS DB into the auth database in the same format of db_hostname etc.
[ ] Change streamlit secret to contain only the auth project and auth db details
[ ] Add VGS drop down and password box
[ ] Refactor get_config to grab the launches collection using the URL grabbed from the auth collection
[ ] Add issue to make update-logs work with:

auth database hostname
select vgs
hard code the other DB details for the auth database


Apache version

Are you guys looking into Apache too? Would be great to have it work with it!

It should be as easy as implementing a class here:
https://github.com/Lone-Coder/letsencrypt-win-simple/tree/master/letsencrypt-win-simple/Plugin
All it takes is two methods, one to scan apache config for host names and
another to config a cert for a host. Since apache uses XML configs now and
.net has great XML support it should be trivial.
Only reason I've not done it is I don't use apache any more so I've got no
test base.
On Thu, Dec 3, 2015 at 1:54 PM, vespino<EMAIL_ADDRESS>wrote:

Are you guys looking into Apache too? Would be great to have it work with
it!
—
Reply to this email directly or view it on GitHub
https://github.com/Lone-Coder/letsencrypt-win-simple/issues/17.

I'm using an older version of apache (2.2.4). I'm not familiar with the xml configs. I think I might have to setup a testing server :)

I thought they were XML, but taking a look they clearly aren't. Maybe SGML.
So it will be a little more difficult than I thought.
On Thu, Dec 3, 2015 at 2:51 PM, vespino<EMAIL_ADDRESS>wrote:

I'm using an older version of apache (2.2.4). I'm not familiar with the
xml configs. I think I might have to setup a testing server :)
—
Reply to this email directly or view it on GitHub
https://github.com/Lone-Coder/letsencrypt-win-simple/issues/17#issuecomment-161795858
.

Which Apache stack (Bitnami XAMPP/WAMP, ApacheHaus, Apache Lounge, etc.) should be supported? All? I'm not sure what the popular ones are.

I would be interested in this feature as well...
I am using Apache 2.4.x from ApacheLounge, Apache themself name a few "distributors":
https://httpd.apache.org/docs/current/platform/windows.html#down

Thanks for your nice code.
I have used Apache from Apache Lounge since 2.4.x was released. One of the reasons I use it is the same as schultz-it-solutions. Another reason is PHP For Windows recommends Apache Lounge on their site. I think ApacheHaus and Apache Lounge exchange the information each other.
I use Apache 2.4.20 now. Version 2.4.8 and later prefer fullchain.pem. So I merged sever-crt.pem and ca-xxxx-crt.pem.
copy sever-crt.pem + ca-xxxx-crt.pem fullchain.pem
For updating fullchain.pem automatically, I made a simple batch file like this. I think it updates fullchain.pem automatically though it isn't sure because the first update is May 12 or later.

It's my first time coding in C#, but I've invested some hours into a first draft of an Apache plugin, if you want to compile and try it yourself, it's in this branch:
https://github.com/der-eismann/letsencrypt-win-simple/tree/ApachePlugin
It scans for a running Apache service and locates the standard config (.\extra\httpd-vhosts.conf). It then scans for configured virtual hosts and lets you request certificates for them (E for all vhosts, R for selection). Also works with SAN when you have configured the ServerAlias directive.
It's not pretty and it's not efficient, but it works for me and I will file a pull request once I've handled the automatic installation.

Can't wait for the .exe file since I know jack of how to compile these files. Great job so far, thanks for your work and update and I'm looking forward to future updates!

This is my latest release, you can try it if you want:
https://jogi-server.de/seafile/f/137878f45c/?dl=1
It should detect your vhosts after starting, if not you can check if the path to the config file is correct. If everything is detected you can generate certificates for all hosts (E) or specific hosts (R and afterwarts the numbers of the hosts).
I appreciate your reply!

Thanks, but a bit dangerous seeing I only have a live server :)
But this proves Letsencrypt works with Windows as well as Linux then?

Tried it anyway but got these errors:

I have tried this and it works great for me!


datetime units interpretation wrong in special cases

Hi there,
I have a datetime issue with a certain type of (CF-compliant!) netCDF files orginating from the ESA CCI Sea Surface Temperature project. With other climate data, everthings seems fine.
When I open such a netCDF file, the datetime value(s) of the time dimension seem to be wrong. If I do
ds = xr.open_dataset(nc_path)
ds.analysed_sst

I get
<xarray.DataArray 'analysed_sst' (time: 1, lat: 3600, lon: 7200)>
[25920000 values with dtype=float64]
Coordinates:
  * time     (time) datetime64[ns] 1947-05-12T09:58:14
  * lat      (lat) float32 -89.975 -89.925 -89.875 -89.825 -89.775 -89.725 ...
  * lon      (lon) float32 -179.975 -179.925 -179.875 -179.825 -179.775 ...
Attributes:
    units: kelvin
    ...

The time dimension is
    int time(time=1);
      :units = "seconds since 1981-01-01 00:00:00";
      :standard_name = "time";
      :axis = "T";
      :calendar = "gregorian";
      :bounds = "time_bnds";
      :comment = "";
      :long_name = "reference time of sst file";
      :_ChunkSizes = 1; // int

and the time value is 915192000. Therefore the correctly interpreted time value must be 2010-01-01T12:00:00 which is 1981-01-01 00:00:00 plus 915192000 seconds.
Here is the link to the data: ftp://anon-ftp.ceda.ac.uk/neodc/esacci/sst/data/lt/Analysis/L4/v01.1/2010/01/01/20100101120000-ESACCI-L4_GHRSST-SSTdepth-OSTIA-GLOB_LT-v02.0-fv01.1.nc
I'm not sure whether this is actually a CF-specific issue with which xarray doesn't want to deal with. If so, could you please give some advice to get arround this. I'm sure other xarray lovers will face this issue sooner or later.
Thanks!
-- Norman

This may be related to https://github.com/pydata/xarray/issues/545
Likely this is due to numeric overflow of some sort in our datetime decoding function. This is the internal function that handles decoding dates if you're interested in digging into this:
https://github.com/pydata/xarray/blob/v0.7.2/xarray/conventions.py#L115

Thanks, I'll give it a try.

After some testing I found the problem. The single value of the time coordinate is wrong in the files. So it is a file content issue. Therefore I'll close this issue.
However, Panoply displays the time information correctly and I found out why: Panoply correctly interprets the time_bnds variable to which the time coordinate variable points to via its attribute bounds. Since this is conforming to CF, I wonder whether xarray should support this bounds convention. From the CF conventions 1.6:

It is often the case that data values are not representative of single points in time and/or space, but rather of intervals or multidimensional cells. This convention defines a bounds attribute to specify the extent of intervals or cells. When data that is representative of cells can be described by simple statistical methods, those methods can be indicated using the cell_methods attribute. An important application of this attribute is to describe climatological and diurnal statistics.
Details are in Section 7.1 Cell Boundaries


Fix talon so it works with Python 3.8

Upgrades package to use scikit-learn==0.23.1
Fix string errors due to backwards incompatibility between Python 2.7
and Python 3+
Simplify input for basic_extraction test so it passes with retrained
classifier

I copied over the changes from my fork.

@vnivargi @manango This is just a copy of the changes I made in my fork.

Verified that talon package unit tests continue to pass.


Make casting from a timestamp without timezone to a timestamp with timezone configurable

Is your feature request related to a problem or challenge? Please describe what you are trying to do.
In our time-series database project, we always interpret timestamps without a timezone as being in the UTC timezone. However, when we use the arrow cast function to convert a timestamp without a timezone to a specific timezone, the result isn't what we expect. This is because the cast function enforces an adjustment internally, which causes an unintended modification to the timestamp values during the cast process.
As specified in the doc and in the comment of codes,  arrow cast will adjust the timestamp values if casting from a timestamp array without a timezone to a timestamp array with a timezone.
I propose to make such a behavior configurable and optional.
Describe the solution you'd like

A sound solution may be adding a boolean flag to CastOptions to make the arrow cast function not perform such an adjustment. This boolean flag may be named enable_timestamp_adjustment.
Describe alternatives you've considered

Additional context

#5827 stated that the behavior of the arrow cast function is somewhat confusing.

Whilst perhaps not ideal, this behaviour can be achieved by first casting to a timestamp with a timezone of UTC and then casting to the desired target TZ.
That being said, if all timestamps are UTC, why not just store them as UTC timestamps?


Fixing GitLab Inline Comment Diff Issue by Implementing Relevant Diff Selection

PR Type:
Bug fix

PR Description:
This PR addresses an issue where GitLab was unable to display the diff on the page due to incorrect SHA's, resulting in 400 or 500 errors. The fix involves finding the correct diff for the change to ensure accurate SHA's. If no valid diff is found, the system will fall back to the last diff as per the original code. A new exception class 'DiffNotFoundError' has been introduced to handle scenarios where no diffs are found in the merge request.

PR Main Files Walkthrough:
pr_agent/git_providers/gitlab_provider.py: Introduced a new method 'get_relevant_diff()' to find the correct diff for a given file and line. This method is now used in 'send_inline_comment()' to ensure the correct diff is used when sending inline comments. A new exception 'DiffNotFoundError' has been introduced and is raised when no diffs are found for a merge request.

/describe

/improve

/improve

/improve

/improve

/review

/review

/review

/describe

Very nice solution!


[Visualizer] Change command for a clear understanding of the visualization tool.

Change command for a clear understanding of the visualization tool.
ONE-vscode-DCO-1.0-Signed-off-by: wnsdud4197<EMAIL_ADDRESS>

from draft #126

I accicently merged PR without commit message in this change...

@wnsdud4197 , please put the commit message also to commit,


How to run?

There is only a license and read me.md that does not help, Thats are mark down file not an exe

https://huggingface.co/prompthero/openjourney


Query improvements

This is a pretty broad ticket.
First of all, the timeboxing on most of the queries isn't actually done properly.
Second, improve the types of queries we support (e.g. variable timeboxes) and potentially consolidate the different queries together (by providing a select param instead, for example)

Note: Wait until #8, as the SQL dialect will change

Implemented time-boxing and dynamic generation of queries

This also includes updating the API endpoints


ensure tx inclusion can't reach proof size limit

Modify the substrate BlockBuilder::push function to allow to add an additional check to ensure that the result of the execution of a transaction does not exceed the maximum size of the block. If the check fail, all changes produced by the execution of the transaction are rollback and the transaction is not included in the block.
Parity could refuse to integrate this change upstream arguing that this additional check is not necessary if the proof size weight hint is correctly configured for all runtime calls (what we can't do with ethereum transactions).
It might be necessary to make this check optional at a higher level so that it can be accepted upstream.

I think it is fine :P

Maybe on a second thought, we need to think a little bit more about this. As currently this mean that the validator/collator would do work and not get any reward for it.

This optional feature can be configurable at a higher level, then disabled on relay validators.

The relay chain doesn't care, because they isn't using pov size tracking.  Here we can already "predict" the final value good enough before (we already do the check that the tx will fit into the block before executing it).
But yeah, also adding some way to disable this sounds like a good idea.