USHIFT-1312 Test: Rebooting healthy system should result in backing up the data

Tests functionality of https://github.com/openshift/microshift/pull/1874

This test will probably require setting up current microshift-e2e to ignore ostree tags or provide mechanism to not run tests on non-ostree-based systems

/cc @dhellmann @jogeo

/cc @dhellmann @pacevedom @jogeo @dhensel-rh
This PR needs some sort mechanism to not run tests intended for R4E/ostree-based systems on RPM.
Approaches that come to mind:

doing a runtime check and deciding if test should run or be skipped
using tags to filter out irrelevant test suites
any other ideas?

/label tide/merge-method-squash

/remove-label tide/merge-method-squash
Remembered that tide's squash results in ugly commit messages. I'll squash the commits myself

Let's merge this in the current form. The tests are not going to run because they are in a separate folder.
We now have a metal environment to run this tests, so let's try those out.
/lgtm


[CLOSED] Rename type doesn't affect signature when used with "in"

 Issue by ericgiovannini
Tuesday May 26, 2020 at 20:12 GMT
Originally opened as https://github.com/antalsz/hs-to-coq/issues/156

Suppose we have
data Test = A Int | B String
        deriving Show

    test1 :: Test
    test1 = A 5

and our edit file looks like
in Test.test1 rename type Test.Test = Test.Bla

The resulting Coq code will look like
Definition test1 : Test := A #5.

Is this the intended behavior?

 Comment by ericgiovannini
Sunday Jun 07, 2020 at 20:35 GMT

@lastland has said this is a bug (https://github.com/antalsz/hs-to-coq/pull/159#discussion_r436303763). I am looking into fixing this now.
Currently, the relevant functions used in converting signatures have a ConversionMonad constraint. I will try modifying these functions to have a LocalConvMonad constraint instead, so that we can obtain the local edit information pertaining to the definition whose signature we are translating. Where necessary, I will use withCurrentDefinition to switch from the global conversion monad to the local conversion monad.


[Laravel 5.8] The page keeps reloading after package installation

Expected Behavior
I just have installed the package, in order to prevent token expiration on an ajax form
Actual Behavior
The page on which I have the form keeps reloading
Environment

PHP Version: 7.2
Laravel Version: 5.8
LaravelCaffeine Version: 0.8.1

@wijourdil Can you provide a live example? If not, could you provide a video demonstrating the issue?

I'm not able to replicate this. Closing for now, please follow up with more details if you are still experiencing this issue.

I'm having this same issue. I can't leave it as a live example because it makes the site unusable. I have to uninstall Laravel Caffeine to get the page to stop constantly refreshing.

I'm using Laravel 6. I just updated so I could use this.

@TheWiseNoob Thanks for reporting that this is still happening for you. I will see if I can replicate this in Laravel 6.

Since you're around at the moment, here is the test site for my client that I am having this issue with. I can leave it like this for an hour if you want to investigate it there if you're free now.
https://djgriffinwebtesting.dev/howtubes/public/

What's weirder is my localhost installation of your package isn't having this problem, but it's also not updating the token. I set the session length to a minute and the refresh rate to 30 seconds, but it still mismatches on there.

@TheWiseNoob I just took a look at the site ... go ahead and disable it again, there's not too much I can look at since it constantly refreshes. Thanks for showing the behavior.

@TheWiseNoob I am unable to recreate this issue after installing it in a Laravel 6 project. It runs the Ajax drips without reloading the page.
Are you by any chance running your page as an SPA? Something else in your frontend must be conflicting.

@TheWiseNoob I am unable to recreate this issue after installing it in a Laravel 6 project. It runs the Ajax drips without reloading the page.
Are you by any chance running your page as an SPA? Something else in your frontend must be conflicting.

Yes, it is a single-page application.

@TheWiseNoob This package won't work with SPAs, unfortunately.

Oh, I did not see that is the case. Sorry about that. What would be the best approach for refreshing the token in the case of a single-age app?

I can't answer that ... it depends completely on each SPA as to how state is managed. You would have to develop your own drip method, or perhaps see if you can find a way to make the package work with SPAs. :)

Hmm, I might do that. Some more commits in my name would be very helpful for my career. Really appreciate you looking into this. I also found a good answer to my issue on StackOverflow.
https://stackoverflow.com/questions/31449434/handling-expired-token-in-laravel


For Display Swipable Area

how to show anim for SwipableLeft or SwipableRight area ??
i.e. like opening Drawer & for the Pull to refresh events

I'm sorry, I can't exactly understand what you're asking. Are you asking how to use the the library for an item inside of a navigation drawer?

No buddy, I want to show Swip like animation for NavigationDrawer on Both Side Left & Right..
And I want to show help for Pull To Refresh for RecyclerView....

I see. Unfortunately, this library is only for taps, not swipes. It seems like you would need something else to do that for you.
For reference, this library is trying to adhere to the guidelines put into place here.

Okay  ,  thanks  for  your  reply


Tetris Game

Have you read the Contributing Guidelines ?
Yes
Description
Neumorphic version of the most famous Tetris Game.
Fixes #511

Checklist

[x] I've read the contribution guidelines.
[x] I've checked the issue list before deciding what to submit.
[x] I've edited the README.md and link to my code.

Preview

Thanks, @photon149 🤜🏽🤛🏽


Run ./show_objects_node fail

I tried to run ./show_objects_node by following this link https://wiki.nps.edu/pages/viewpage.action?pageId=925958215 (I convert the kitti raw data to bag) but the result is nothing.
This is the process I tried to do:
First step:

Second step:

Third step:

And the result is:

Could you please help me? I really don't understand what's wrong with it because I follow the guide above.

Dear mate. I was wondering if your code has evaluation part? I mean did you code the evaluation which compares to Euclidean and grid-based? Moreover, in your paper, I did not see the source of ground truth dataset you use to compare. Could you please tell me the source of ground truth? Thank you!

@phamquandung please don't start new threads inside other threads. If you have a new question, just open a new issue. The evaluation was relying on a multitude of scripts and has never matured to be open sourced unfortunately. I will not have the time to prepare the data and make is available unfortunately, sorry about that.


Footer nits

Describe the bug
There are a couple of small issues in the footer:

The GitHub link points to ga4gh/dockstore instead of dockstore/dockstore (but yeah it still works).
The copyright is still 2019. Fix would ideally be dynamic, so we don't have to update it every year.

┆Issue is synchronized with this Jira Bug
┆Issue Type: Bug
┆Fix Versions: Dockstore 2.X
┆Sprint: Sprint 43- Ringed Seal
┆Issue Number: DOCK-1383

Year is correct and looks dynamic, points to dockstore/dockstore, commits are shown, clipboard button works correctly
Webservice - c354528
UI - 2.6.1-38-gdf02f7cf
Compose Setup - 8c083bddfa2e8cfcb517792d45b03b95dc3dda5d
Deploy - 1.9.2-21-gd87bd60


Does not support multi line form values

Issue
When submitting a form with a multiline value such as:
Test line one,

Test Line Two

Anything after 'Test line one' gets removed.
After some debugging I figured out that this code (line 50 as of now):
.split(/\r\n\r\n/)[1]

is the issue. The input of the sample text above looks like so:
\r\n\r\nTest line one,\r\n\r\nTest Line Two\r\n

And the split() call is only taking the first element in the array, which is Test line one,.
Quick solution
For now, I just changed that line to this:
.split(/\r\n\r\n/).slice(1).join("\r\n")

Keep in mind that this changes any amount of new lines to a single new line. I don't have time to create a PR, but you could do something similar to support multi line inputs.

I'm experiencing the same issue.
Adding the quick solution above to live 50 seem to have resolved it. I suspect that line 38 requires a similar fix.

Merge request on review
@lbittner-pdftron , @tmadej check https://github.com/sergolius/aws-lambda-multipart-parser


Fix for Issue #40

This is a very simple fix for https://github.com/crazymykl/rust-koans/issues/40 - just adding __ to hint that you need to increment y.

Thanks a lot. This is very helpful.


NCL_overlay_11b.py

Describe the bug
The example demonstrates “clip” a plot object with a geographical boundary. There seems to be a problem with the corresponding image, the color area is drawn to the outside of the box.
To Reproduce
Steps to reproduce the behavior:
https://geocat-examples.readthedocs.io/en/latest/gallery/Overlays/NCL_overlay_11b.html#sphx-glr-gallery-overlays-ncl-overlay-11b-py
Expected behavior
https://geocat-examples.readthedocs.io/en/latest/gallery/Overlays/NCL_overlay_11a.html#sphx-glr-gallery-overlays-ncl-overlay-11a-py

This is probably a Cartopy BUG
contour.set_clip_path(clip) beyond borders

Taking the intersection of 'shp' and 'extent' can fix the problem.
https://github.com/SciTools/cartopy/issues/2052#issuecomment-1163849173


aa

-----> Building on the Heroku-20 stack
-----> Using buildpack: heroku/python
-----> Python app detected
-----> Using Python version specified in runtime.txt
 !     Python has released a security update! Please consider upgrading to python-3.9.11
       Learn More: https://devcenter.heroku.com/articles/python-runtimes
cp: cannot stat '/tmp/build_cfcd8af5/requirements.txt': No such file or directory
-----> Installing python-3.9.10
-----> Installing pip 21.3.1, setuptools 57.5.0 and wheel 0.37.0
-----> Installing dependencies with Pipenv 2020.11.15
       Installing dependencies from Pipfile.lock (69a402)...
-----> Installing SQLite3
-----> Skipping Django collectstatic since the env var DISABLE_COLLECTSTATIC is set.
-----> Discovering process types
       Procfile declares types -> web
-----> Compressing...
 !     Compiled slug size: 977.5M is too large (max is 500M).
 !     See: http://devcenter.heroku.com/articles/slug-size
 !     Push failed

duplicated issue


How were the speaker consistency scores generated in the documentation?

Hi all,
The speaker consistency scores listed in INFERENCE.md appear to have been updated via pull request 143. How were these embeddings/scores generated? Is it possible to reproduce or validate this somehow?

Was this done by pulling the generation.decoder_hidden_states, using the last hidden state, pooling, and doing something like cosine similarity?


Cancel cell task when closing related cell doc

For #5925

Hello! This should fix issue #5877?

Oh yes, sorry, I'll update the change log


MAP=0

Now I use faster_rcnn to run object detection tasks, and I want to use different backbone to compare performance. Before, resnet series can run normally, and map is also normal. I then changed to three newer models -- efficientnet, swintransformer, and cspnext -- and modified the original faster_rcnn backbone framework and rpn layer inchannels. All of these three models can run normally, and loss decreases normally. However, it is strange that all the maps produced by the three models are almost 0 without exception. Many methods have been tried but no solution has been found

一样问题，你解决了吗

When I was training a custom dataset with Mask R-CNN, I encountered the same problem. Has your issue been resolved?@AnasTrace，@SkyWay003，@sunnygirlzyq


Nix Module

Add a nix module to the flake.nix containing options to:

enable centerpiece
enable the git repositories service

Was done in c950526347748c4e9c2a2c19a0053269e6fb5f96 and released in v0.8.0


[BUG] Swimline indicator did not change color after over push WIP-limit

Describe the bug
if swimline have an exceeded WIP-limit, then indicator not change color
Screenshots

Desktop (please complete the following information):

JIRA 8
JIRA Cloud

fixed


ninja on i do not support non-ELF format

We prefer to use "make" for build_tool on IBM i system. Please help to review and kindly merge. thanks.

@trivialfis hi, can I expect that this PR could be available in next release of xgboost(1.6.3?)? if no, how can we make it done? thanks.

1.7 see https://github.com/dmlc/xgboost/issues/8366


Tammy would like a module to provision the managed DB2 Warehouse instance on IBM Cloud

This can be mostly done by enhancing the existing db2 module(https://github.com/cloud-native-toolkit/terraform-gitops-cp-db2) by passing a different value(db2wh) to the db2instancetype  variable.Test stages/prereqs for the module would need to be changed. This is based on the info shared by product team and is not currently tested: https://ibm-cloudplatform.slack.com/archives/C019EJ0QH4Y/p1649683303090389, https://github.ibm.com/ibm-privatecloud-databases/provisioning/blob/develop/provisioning.md


improve tracking of URIs on polymer build

 Issue by sigmundch
Originally opened as dart-lang/sdk#14186

Our polymer-build set inlines script tags and polymer element declarations onto the main page. In the process we rewrite URIs to normalize for the fact that the baseUri of the imported document is different than the main document.
This works for static URIs, but not for URIs produced from bindings. For those we might have to do something more.
Consider looking more into vulcanize and see if we agree on the design choices there, also see how deal with assetpath:
https://github.com/Polymer/labs/blob/37d8a25643c31b7f9acd2525208b0686a4933887/vulcanize/lib/vulcan.js#L50

 Comment by sigmundch

Removed Area-Library label.
Added Area-Polymer label.

 Comment by anders-sandholm

Added Area-Library label.

 Comment by jmesserly

Removed Pkg-Polymer label.
Added Pkg-PolymerBuild label.

 Comment by jmesserly

Removed Area-Polymer label.
Added Area-Pkg label.

 Comment by jmesserly

Removed Library-PolymerBuild label.

 Comment by sigmundch

Added Polymer-P-2 label.

 Comment by jmesserly

Added Pkg-Polymer label.

 Comment by sigmundch

Removed Polymer-P-2 label.
Added Polymer-Milestone-Later label.

 Comment by sigmundch

Removed Polymer-Milestone-Later label.
Added PolymerMilestone-Later label.

 Comment by sigmundch

Removed this from the Later milestone.

 Comment by jakemac53

Ping on this, I stumbled across the assetpath attribute when looking at vulcanizer, and I think it is a reasonable solution to dynamic paths, plus it would bring us more in sync with the polymer js side of things. Currently we are broken here because we are not adding the assetpath attribute to our inlined elements, yet at the same time we have ported the resolvePath method which implies that we would have support for this?
I think this would be a relatively minor change with moderate benefit, and its worth investing a day or so in. At least it provides some sort of story for dynamic relative paths.


Fix for artifacts introduced by Perfect Specular Reflections feature

Problem reported in https://github.com/gkjohnson/three-gpu-pathtracer/pull/171#issuecomment-1152805532
ggxDistribution now uses acosApprox only when roughness is zero, otherwise uses the introduced acosSafe which is clamped to the input range [-1, 1]. Lowered the epsilon check for denom, returning Pi as a suitably large value in this case.
Before the fix:

After the fix:

Banding artifacts remain solved in the roughness = 0 case:

The mirror box scene still shows perfect reflections for each bounce:

No noticeable artifacts in the other example scenes:

Note this also impacts the rectangular area lights in https://github.com/gkjohnson/three-gpu-pathtracer/pull/174 which I'm using as the basis for adding the spot light feature request in https://github.com/gkjohnson/three-gpu-pathtracer/issues/113
Before (MIS on):

After (MIS on, reflection improved):

Before (MIS off, fireflies present):

After (MIS off, fireflies suppressed):

I'm still seeing some artifacts when the roughness === 0.0. Notice the halo around the reflection of the ceiling light in the floor that should be perfectly reflective. It averages away after a number of frames but it still seems like there's an issue:

Interestingly I noticed that changing this line:
float theta = ( roughness == 0.0 ) ? acosApprox( halfVector.z ) : acosSafe( halfVector.z );

to this
float theta = acosSafe( halfVector.z );

seems to alleviate the artifacts as far as I can tell. Changing to back to regular acos seems to reintroduce the circular artifacts we were seeing before. Perhaps just acosSafe is enough to solve the issues?

I'd noticed these also, then reverted to before any of my changes and still saw them.
However, I have noticed that after a branch change I need to kill and restart npm run start so I might have missed this.
I'll check again and will update the PR accordingly.

Checked your suggestion, it works well and is improved by clamping a2 to EPSILON instead of the denom ternary.
The acosApprox in accumulatedRoughness is still required when bounces between zero-roughness surfaces is present, otherwise the blurring and precision issues come back.
I've also noticed that the issues you've reported, and some that I'm seeing in developing the spot light go away with importance sampling turned off, so there may be an issue there or by some interaction. I'm investigating further
MIS off:


Fetch mouse coordinates to make feeder bot

So i'm able to connect to my server and test out the API a bit. How would i go forth to fetching my
mouse coordinates, and setting the client.moveTo to my mouse coords?
client.moveTo(myMouse.x, myMouse.y);
Also, to spawn several bots, would i have to open several instances of CMD?
Thanks.

multiple instances script could be helpfull: https://github.com/pulviscriptor/agario-client/blob/master/examples/multiple.js
for getting your X/Y position you would have to create a user script which would fetch this information and stream it to your script.

Would it be possible to use Ogar's source (playertracker,sockets) to fetch mouse X/Y?
If not, how would i go forth to create a user script and streams it to the agario-client?
Would it be something like, fetch mouse.x and mouse.y -> write it to .txt file
in agario-client:
read coordinates from .txt file?

@AgarioCheats
There is no one correct way to do it, so i can tell what i would do in your place.
 I can recommend WebSocket for that. There is lib ws that you can use to host WebSocket server in your application with bots to receive coordinates.
Next you need to get coordinates of your mouse on game field. I don't know easiest way, but i would patch main_out.js to get coordinates.
Post that "mess" in http://jsbeautifier.org/
And i will help you here, there is this code
    function ra() {
        if (da()) {
            var a = Y - q / 2,
                b = Z - r /
                2;
            64 > a * a + b * b || .01 > Math.abs(Jb - va) && .01 > Math.abs(Kb - wa) || (Jb = va, Kb = wa, a = V(13), a.setUint8(0, 16), a.setInt32(1, va, !0), a.setInt32(5, wa, !0), a.setUint32(9, 0, !0), W(a))
        }
    }

Long story short, va is your X mouse position, and wa is Y. Patch this ra() function to send coordinates to your application using WebSocket.

Would it be possible to use Ogar's source (playertracker,sockets) to fetch mouse X/Y?
If it works for you, sure! You need to find easiest way for you. Mine is not too easy for beginners.

Would it be something like, fetch mouse.x and mouse.y -> write it to .txt file

Unfortunately you can not write files from web browser. If my WebSocket way is too hard for you, find some other way.
For example if you know PHP language you indeed can pass coordinates to your local web server and write coordinates to file. Why not.

setup https://github.com/dimotsai/agar-mini-map
and use this script to get your X,Y: https://gist.github.com/davidmann4/0967b17623a2bad3a5d4
basically you cust need to do
 if(valid_player_pos!=null){
            candidate_ball.x = valid_player_pos["x"];
            candidate_ball.y = valid_player_pos["y"];
        }

        bot.client.moveTo(candidate_ball.x, candidate_ball.y);

Been trying to get it to work a couple hours now. I'll check it out, davidmann4.

just try to get  https://github.com/dimotsai/agar-mini-map  up and running - it already streams locations to everyone who connects ... perfect choice ... plus you have a fancy minimap!

I installed the mini-map in my browser, though i'm not able to run the minimap-server. Do i need to run it?

yup :

you connect to the server
your bot connects to the server
your bot knows your position

What version of node are you running? I'm using windows 7 and i'm unable to run the server.js using npm run start. I get the error: return process.dlopen<module, path._makeLong>;
googled and found it it's due to me having an updated version of node. I tried to downgrade, still no luck.

can you post the full stack? I can recrommend using linux or a vserver.

This is the error I get: http://prntscr.com/9ohldp

cd ..
npm run start

ohh sorry no should make no difference
did you already did the following?
npm install
npm run build

Yes, i've done it, still same error. I'll try to use an older version of node

https://github.com/dimotsai/agar-mini-map#for-windows-users
did you downloaded the release ?

Yes, tried with this one: agar-mini-map-v0.46-win-x64.zip

hmm, damn - never used node on windows - guess you should post a issue on his repo about this :)

Running the map on another server running linux - it works!
So i should probably run the agario-client from the server too, right? Where do i place the script you sent?

yeah put it on the same server -
hmm maybe make a copy of the  https://github.com/pulviscriptor/agario-client/blob/master/examples/multiple.js  name it feed.js

Tried placing your script in the same file (multiple.js) on the top, though now i'm missing msgpack module, etc. I don't think im doing it right S:

npm install msgpack

address = "ws://YOURIP:34343";
Should i place the server's IP there? I get an error when running it

yup - maybe <IP_ADDRESS> works?

This is the code i've got:
var WebSocket    = require('ws');
var msgpack = require('msgpack');
var sleep = require('sleep');
var valid_player_ids = null;
var valid_player_pos = null;
function miniMapConnectToServer() {
address = "ws://<IP_ADDRESS>:34343";
try {
var ws = new WebSocket(address, null);
} catch (ex) {
console.error(ex);
return false;
}
ws.binaryType = "arraybuffer";
    ws.onopen = function() {
        console.log(address + ' connected');
    }

    ws.onmessage = function(event) {
        var buffer = new Uint8Array(event.data);
        var packet = msgpack.unpack(buffer);
        switch(packet.type) {
            case 128:

                for (var i=0; i < packet.data.addition.length; ++i) {
                    var cell = packet.data.addition[i];

                    if(contains.call(valid_player_ids, cell.id)){
                        //console.log(cell);
                        valid_player_pos = cell;
                        return;
                    }

                }
                break;
            case 129:
                players = packet.data;
                //console.log(players);
                if(players[0]["name"].length != 0){
                    valid_player_ids = players[0]["ids"];
                }
                break;

        }
    }

    ws.onerror = function() {
        console.error('failed to connect to map server');
    }

    ws.onclose = function() {
        map_server = null;
        console.log('map server disconnected');
    }

    map_server = ws;
}

miniMapConnectToServer();
//Example of multiple connections in one script
//This code is badly documented, please read basic.js in this folder if you don't understand this code
var AgarioClient = require('../agario-client.js'); //Use next line in your scripts
//var AgarioClient = require('agario-client');     //Use this in your scripts
function ExampleBot(bot_id) {
this.bot_id      = bot_id;         //ID of bot for logging
this.nickname    = 'agario-client';//default nickname
this.verbose     = true;           //default logging enabled
this.interval_id = 0;              //here we will store setInterval's ID
this.server     = '';   //server address will be stored here
this.server_key = '';   //server key will be stored here

this.client       = new AgarioClient('Bot ' + this.bot_id); //create new client
this.client.debug = 1; //lets set debug to 1

}
ExampleBot.prototype = {
log: function(text) {
if(this.verbose) {
console.log(this.bot_id + ' says: ' + text);
}
},
connect: function(server, key) {
    this.log('Connecting to ' + server + ' with key ' + key);
    this.server = server;
    this.server_key = key;
    this.client.connect(server, key);
    this.attachEvents();
},

attachEvents: function() {
    var bot = this;

    bot.client.on('connected', function() {
        bot.log('Connected, spawning');
        bot.client.spawn(bot.nickname);
        //we will search for target to eat every 100ms
        bot.interval_id = setInterval(function(){bot.recalculateTarget()}, 100);
    });

    bot.client.on('connectionError', function(e) {
        bot.log('Connection failed with reason: ' + e);
        bot.log('Server address set to: ' + bot.server + ' key ' + bot.server_key);
    });

    bot.client.on('myNewBall', function(ball_id) {
        bot.log('My new ball ' + ball_id);
    });

    bot.client.once('leaderBoardUpdate', function(old, leaders) {
        var name_array = leaders.map(function(ball_id) {
            return bot.client.balls[ball_id].name || 'unnamed'
        });

        bot.log('Leaders on server: ' + name_array.join(', '));
    });

    bot.client.on('somebodyAteSomething', function(eater_ball, eaten_ball) {
        var ball = bot.client.balls[eater_ball];
        if(!ball) return; //if we don't know that ball, we don't care
        if(!ball.mine) return; //if it's not our ball, we don't care
        bot.client.log('I ate ' + eaten_ball + ', my new size is ' + ball.size);
    });

    bot.client.on('mineBallDestroy', function(ball_id, reason) { //when my ball destroyed
        if(reason.by) {
            bot.log(bot.client.balls[reason.by] + ' ate my ball');
        }

        if(reason.reason == 'merge') {
            bot.log('My ball ' + ball_id + ' merged with my other ball, now i have ' + bot.client.my_balls.length + ' balls');
        }else{
            bot.log('I lost my ball ' + ball_id + ', ' + bot.client.my_balls.length + ' balls left');
        }
    });

    bot.client.on('lostMyBalls', function() {
        bot.log('Lost all my balls, respawning');
        bot.client.spawn(bot.nickname);
    });

    bot.client.on('disconnect', function() {
        bot.log('Disconnected from server, bye!');
    });

    bot.client.on('reset', function() { //when client clears everything (connection lost?)
        clearInterval(bot.interval_id);
    });
},

getDistanceBetweenBalls: function(ball_1, ball_2) {
    return Math.sqrt( Math.pow( ball_1.x - ball_2.x, 2) + Math.pow( ball_2.y - ball_1.y, 2) );
},

recalculateTarget: function() {
    var bot = this;
    var candidate_ball = null;
    var candidate_distance = 0;
    var my_ball = bot.client.balls[ bot.client.my_balls[0] ];
    if(!my_ball) return;

    for(var ball_id in bot.client.balls) {
        var ball = bot.client.balls[ball_id];
        if(ball.virus) continue;
        if(!ball.visible) continue;
        if(ball.mine) continue;
        if(ball.size/my_ball.size > 0.5) continue;
        var distance = bot.getDistanceBetweenBalls(ball, my_ball);
        if(candidate_ball && distance > candidate_distance) continue;

        candidate_ball = ball;
        candidate_distance = bot.getDistanceBetweenBalls(ball, my_ball);
    }
    if(!candidate_ball) return;

    //bot.log('closest ' + candidate_ball + ', distance ' + candidate_distance);
     if(valid_player_pos!=null){
	     candidate_ball.x = valid_player_pos["x"];
         candidate_ball.y = valid_player_pos["y"];
	}
    bot.client.moveTo(candidate_ball.x, candidate_ball.y);
}

};
//you can do this in your code to use bot as lib
//module.exports = ExampleBot;
//launching bots below
//object of bots
var bots = {
'Alpha'  : null,
'Bravo'  : null,
'Charlie': null,
'Delta'  : null,
'Echo'   : null
};
//searching party for bots in EU-London
console.log('Requesting party server');
AgarioClient.servers.createParty({region: 'EU-London'}, function(srv) {
if(!srv.server) return console.log('Failed to request server (error=' + srv.error + ', error_source=' + srv.error_source + ')');
console.log('Engaging bots to party http://agar.io/#' + srv.key + ' on IP ' + srv.server);
for(var bot_id in bots) {
    bots[bot_id] = new ExampleBot(bot_id);
    //bots[bot_id].connect('ws://' + srv.server, srv.key);
   	 bots[bot_id].connect('ws://ServersIp:431', '');
}

});
This is the error i get when i try to run it (Note if i change address ip to something else, it doesn't crash):
/examples/multiple.js:23
var packet = msgpack.unpack(buffer);
^
TypeError: First argument must be a Buffer
at WebSocket.ws.onmessage (/root/agario-client-master/examples/multiple.js:23:34)
at WebSocket.onMessage (/root/agario-client-master/node_modules/ws/lib/WebSocket.js:414:14)
at WebSocket.emit (events.js:98:17)
at Receiver.onbinary (/root/agario-client-master/node_modules/ws/lib/WebSocket.js:804:10)
at /root/agario-client-master/node_modules/ws/lib/Receiver.js:533:18
at /root/agario-client-master/node_modules/ws/lib/Receiver.js:357:7
at /root/agario-client-master/node_modules/ws/lib/PerMessageDeflate.js:217:5
at afterWrite (_stream_writable.js:278:3)
at onwrite (_stream_writable.js:270:7)
at WritableState.onwrite (_stream_writable.js:97:5)

I have made bots that work in party! 30 bots that follow you and spawn 132 mass! What i did to get the x and y was usgin agario expose. You can find it on github.

Im working on my custom main_out.js
Pulvirscript do you know where the x and y is stored there?
I have tried every thing. here is my main_out.js
razor.secureobscure.com/main_out.js
I think it is in function pc(

Earlier up he wrote that it's stored in the function ra()

OMG PULVIRSCRIPT THANKKKS BOTS FOLLOW MOUSE NOW!

Mind sharing with me!? Would spare me a lot of hours!

Where do you place the wa and va (x,y) coordinates in the script?

Good morning everybody.
@AgarioCheats

Where do you place the wa and va (x,y) coordinates in the script?

When you receive coordinates in your script, do client.moveTo(x, y);. Should work.

It's a bit tricky for me since i'm not so experienced. If i knew how to fetch coordinates from the script, or at all, fetch ANYTHING (like keyboard press, etc) it would help a ton

if you put my snippet into the example you should have a variable valid_player_pos containing the position of the first player connected to the map server.
I think we should create a small repo for a whole example as it seems like more and more people are interested in making their own feeder bot.
I will put up an example when I have time for this. Currently busy with my dayjob.

Thanks a lot @davidmann4 and @pulviscriptor for your help.
I tried putting the code snippet into one multiple.js and also basic.js (on top) though when running i get this error:
: var packet = msgpack.unpack(buffer);
^
TypeError: First argument must be a Buffer
So the variable packet needs to be a buffer, or something like that. Perhaps it's not compatible with node.js and only browser-javascript?

no, should work - I will put up a repo with a working script.
you will need a list of good proxy servers - otherwise you can only connect 5 clients
also I think botting is against the TOS - so please only use it on your own ogar server
https://github.com/OgarProject/Ogar

@DaAwesomeRazor seems like you are working on something similar - maybe you like to contribute?

https://github.com/davidmann4/agario-feeder-bot <-- there you go - make sure to star it and to contribute enhancements

I still get the same error:
feeder.js:198
var packet = msgpack.unpack(buffer);
^
TypeError: First argument must be a Buffer

When do you get the error? Maybe open an issue on the new repo

WHen trying to run it. Opened.

I think we can close this issue

What I did was I got my own index.html and imported my own custom main.js. Then i just did clientx = vaa clienty = wa an boom it worked

@DaAwesomeRazor - I have a working code on: https://github.com/davidmann4/agario-feeder-bot
feel free to contribute your knowhow there

would someone like to share the code for mouse x and y with me?

I am a layman in the node.js ... and wanted to have the bots with 132 mass .. someone help me ?

@CelioGatti
https://github.com/davidmann4/agario-feeder-bot

hey guys i got this code but i want it to make it follow my mouse i cant figure it out any help???
/*
O Bots Apenas Funcionam No Spectate!
var engine = GGANGINAGHAH41A8EH41A8H4D5J1S8JE8HJ41S8H41S8JS87E4HSJLJLJKLHKUH8K1HJ8H8S48SGSDG_jigajgiej_gjiijgsigsgjigjiseji-AFAIGJAIJIGAJIJIGWA545151
*/
var fs = require('fs-extra');
var path = require('path');
if (!fs.existsSync('proxy.txt')) {
console.log("INFO: did not found proxy.txt - creating it.");
fs.copySync(path.resolve(__dirname,'./proxy.sample.txt'), 'proxy.txt');
}
if (!fs.existsSync('config.js')) {
console.log("INFO: did not found config.js - creating it.");
fs.copySync(path.resolve(__dirname,'./config.sample.js'), 'config.js');
}
var config = require('./config');
var names = require('./names');
var AgarioClient = require('agario-client'); //Use this in your scripts
spawnCount = 0;
function FeederBot(bot_id, agent, bot_number, server) {
this.bot_id = bot_id; //ID of bot for logging
if (config.useRandomSkinName) {
    this.nickname = names.getRandomName();
} else {
    this.nickname = config.useStaticName;
}

this.interval_id = 0; //here we will store setInterval's ID
this.ball_id = null;
this.server = ''; //server address will be stored here
this.client = new AgarioClient('Bot_' + this.bot_id); //creates new client
this.client.debug = 0;
this.client.agent = agent;
this.client.headers['user-agent'] = config.userAgent;
this.isOnFeedMission = false;
this.onboard_client(server, bot_number);

}
FeederBot.prototype = {
log: function(text) {
if (config.verbosityLevel > 0) {
console.log('Bot_' + this.bot_id + ': ' + text);
}
},
reset_map_data: function(){
    var bot = this;
    bot.map_min_x = null;
    bot.map_min_y = null;
    bot.map_max_x = null;
    bot.map_max_y = null;
},

onboard_client: function(server, bot_number) {
    var bot = this;
    setTimeout(function() {
        bot.connect(server);
    }, config.onboardingTimer * bot_number);
},

connect: function(server) {
    if (config.verbosityLevel > 0) {
        this.log('Connecting to: ' + server);
    }

    if (spawnCount > config.maxBots) {
        this.log('ERROR: spawned to many bots - Increase config.maxBots for more bots.');
        return;
    }

    this.server = server;
    this.client.connect(server);
    this.attachEvents();
},

attachEvents: function() {
    var bot = this;

    bot.client.on('connected', function() {
        bot.reset_map_data();
        if (config.verbosityLevel > 0) {
            bot.log('Spawning BreakBot');
        }
        bot.client.spawn(bot.nickname);
        spawnCount++;
        socket.emit("spawn-count", spawnCount + '/' + config.maxBots);
        //we will search for target to eat every 100ms
        bot.interval_id = setInterval(function() {
            bot.recalculateTarget()
        }, 100);
    });

    bot.client.on('mapSizeLoad', function(min_x, min_y, max_x, max_y) {
        //bot.log('got my map-size: ' + min_x + ";" + min_y + ";" + max_x + ";" + max_y);

        if(bot.map_min_x == null){bot.map_min_x=min_x;}
        if(bot.map_min_y == null){bot.map_min_y=min_y;}
        if(bot.map_max_x == null){bot.map_max_x=max_x;}
        if(bot.map_max_y == null){bot.map_max_y=max_y;}

        if(bot.map_min_x > min_x){bot.map_min_x=min_x;}
        if(bot.map_min_y > min_y){bot.map_min_y=min_y;}
        if(bot.map_max_x < max_x){bot.map_max_x=max_x;}
        if(bot.map_max_y < max_y){bot.map_max_y=max_y;}

        calculated_offset_x = bot.map_min_x;
        calculated_offset_y = bot.map_min_y;

        //if(calculated_offset_x-bot.map_max_x < calculated_offset_x){calculated_offset_x = calculated_offset_x-bot.map_max_x; }
        //if(calculated_offset_y-bot.map_max_y < calculated_offset_x){calculated_offset_y = calculated_offset_y-bot.map_max_y; }

        bot.offset_x = calculated_offset_x;
        bot.offset_y = calculated_offset_y;
    });

    bot.client.on('connectionError', function(e) {
        if (config.verbosityLevel > 0) {
            bot.log('Break Bot Failed To: ' + e);
        }
    });

    bot.client.on('myNewBall', function(ball_id) {
        // Should always be generated.
        if (config.verbosityLevel > -1) {
            bot.log('New Break Bot Genereted (' + ball_id + ')');
        }
    });

    bot.client.once('leaderBoardUpdate', function(old, leaders) {
        var name_array = leaders.map(function(ball_id) {
            return bot.client.balls[ball_id].name || 'unnamed'
        });
        if (config.verbosityLevel > 0) {
            bot.log('Leaderboard: ' + name_array.join(' - '));
        }
    });

    bot.client.on('somebodyAteSomething', function(eater_ball, eaten_ball) {
        var ball = bot.client.balls[eater_ball];
        if (!ball) return; //if we don't know that ball, we don't care
        if (!ball.mine) return; //if it's not our ball, we don't care
        //bot.client.log('I ate ' + eaten_ball + ', my new size is ' + ball.size);
    });

    bot.client.on('mineBallDestroy', function(ball_id, reason) { //when my ball destroyed
        if (reason.by) {
            if (config.verbosityLevel > 0) {
                bot.log(bot.client.balls[reason.by] + ' has killed a cell.');
            }
        }

        if (reason.reason == 'merge') {
            if (config.verbosityLevel > 1) {
                bot.log('Merged with another cell. Bot_' + ball_id + ' now has ' + bot.client.my_balls.length + ' balls.')
            }
        } else {
            if (config.verbosityLevel > 1) {
                bot.log('Lost a cell! Bot_' + ball_id + ' has ' + bot.client.my_balls.length + ' cells left.');
            }
        }
    });

    bot.client.on('lostMyBalls', function() {
        if (config.verbosityLevel > 0) {
            bot.log('Has been killed, respawning.');
        }
        bot.reset_map_data();
        bot.client.spawn(bot.nickname);
        bot.isOnFeedMission = false;
    });

    bot.client.on('disconnect', function() {
        if (config.verbosityLevel > 0) {
            bot.log('Break Bot Disconnected from the server.');
        }
        if (spawnCount > 0){ spawnCount--;}
        socket.emit("spawn-count", spawnCount + '/' + config.maxBots);
    });

    bot.client.on('reset', function() { //when client clears everything (connection lost?)
        clearInterval(bot.interval_id);
    });

    bot.client.on('packetError', function(packet, err, preventCrash) {
       bot.log('Packet error detected for packet: ' + packet.toString());
       bot.log('Crash will be prevented, bot will be disconnected');
       preventCrash();
       //bot.client.disconnect();
    });
},

getDistanceBetweenBalls: function(ball_1, ball_2) {
    return this.getDistanceBetweenBallAndPosition(ball_1, ball_2.x, ball_2.y);
},

getDistanceBetweenBallAndPosition: function(ball_1, x, y) {
    return this.getDistanceBetweenPositions(ball_1.x, ball_1.y, x, y);
},

getDistanceBetweenPositions: function(x1, y1, x2, y2) {
    return Math.sqrt(Math.pow(x2 - x1, 2) + Math.pow(y1 - y2, 2));
},

getAvailableTransporter: function() {
    var bot = this;
    var my_ball = bot.client.balls[bot.client.my_balls[0]];
    if (!my_ball) return;

    possible_transporter = null

    for (var bot_id in bots) {
        ball_id = bots[bot_id].id
        bot_ball = bots[bot_id].client.balls[bots[bot_id].client.my_balls[0]];
        if (!bot_ball) continue;
        if (bot.getDistanceBetweenBallAndPosition(my_ball, bot_ball.x, bot_ball.y) > 2000) {
            continue;
        }
        if (bot.getDistanceBetweenBallAndPosition(my_ball, bot_ball) > bot.getDistanceBetweenBallAndPosition(my_ball, possible_transporter)) {
            continue;
        }
        if (my_ball.size / bot_ball.size > 0.8) continue;

        possible_transporter = bot_ball;
    }

    return possible_transporter;
},

getMassPixelRadius: function(mass) {
    return Math.ceil(Math.sqrt(100 * mass));
},

canSplitFeedPlayer: function(botMass, otherMass) {
    requiredMass = otherMass * 1.25;
    return requiredMass < botMass
},

playerInRange: function(my_ball, playerX, playerY, playerSize, range) {
    var bot = this;
    bot_distance = bot.getDistanceBetweenBallAndPosition(my_ball, playerX, playerY) - bot.getMassPixelRadius(valid_player_pos.size)
    ditance_needed = range //400 - bot.getMassPixelRadius(my_ball.size);
    return bot_distance < ditance_needed;
},

in_circle: function(center_x, center_y, radius, x, y) {
    //square_dist = (center_x - x) ^ 2 + (center_y - y) ^ 2;
    //return square_dist <= (radius/2) ^ 2;
    dx = x - center_x
    dy = y - center_y
    return dx * dx + dy * dy <= radius * radius
},

getCoordinatesOfCircleAngle: function(center_x, center_y, radius, angle) {
    x = Math.ceil(center_x + radius * Math.cos(angle));
    y = Math.ceil(center_y + radius * Math.sin(angle));
    return {
        "x": x,
        "y": y
    };
},

checkIfPathCrossesBall: function(from_x, from_y, dest_x, dest_y, ball_id) {
    bot = this;
    ball = bot.client.balls[ball_id];

    // Translate coordinates
    var x1 = Math.ceil(from_x);
    var y1 = Math.ceil(from_y);
    var x2 = Math.ceil(dest_x);
    var y2 = Math.ceil(dest_y);
    // Define differences and error check
    var dx = Math.abs(x2 - x1);
    var dy = Math.abs(y2 - y1);
    var sx = (x1 < x2) ? 1 : -1;
    var sy = (y1 < y2) ? 1 : -1;
    var err = dx - dy;
    // Main loop
    while (!((x1 == x2) && (y1 == y2))) {
        var e2 = err << 1;
        if (e2 > -dy) {
            err -= dy;
            x1 += sx;
        }
        if (e2 < dx) {
            err += dx;
            y1 += sy;
        }

        if (bot.in_circle(ball.x, ball.y, bot.getMassPixelRadius(ball.mass), x1, y1)) {
            return true;
        }
    }
    // Return the result
    return false;
},

getNearestBallOnPath: function(from_x, from_y, dest_x, dest_y) {
    bot = this;
    my_ball = bot.client.balls[bot.client.my_balls[0]];

    for (ball_id in bot.client.balls) {
        ball = bot.client.balls[ball_id];
        if (!ball.virus) {
            continue;
        }

        if (bot.checkIfPathCrossesBall(from_x, from_y, dest_x, dest_y, ball_id)) {
            console.log("Path not safe: bot would die!");
            return ball_id;
        }
    }

    return null;
},

safeMoveTo: function(x, y) {
    bot = this;
    my_ball = bot.client.balls[bot.client.my_balls[0]];

    safeX = x;
    safeY = y;

    nearest_obstacle = bot.getNearestBallOnPath(my_ball.x, my_ball.y, x, y);

    if (nearest_obstacle != null) {
        ball = bot.client.balls[nearest_obstacle];
        bestXDistance = 99999999;
        bestX = 0;
        bestY = 0;

        for (var i = 0; i < 360; i = i + 16) {
            pos = bot.getCoordinatesOfCircleAngle(ball.x, ball.y, bot.getMassPixelRadius(ball.mass) + bot.getMassPixelRadius(my_ball.mass), i)
            test_path = bot.getNearestBallOnPath(pos.x, pos.y, my_ball.x, my_ball.y);
            test_path2 = bot.getNearestBallOnPath(pos.x, pos.y, x, y);

            if (test_path == null && test_path2 == null) {
                console.log("this path is safe.")

                distance1 = bot.getDistanceBetweenPositions(pos.x, pos.y, my_ball.x, my_ball.y);
                distance2 = bot.getDistanceBetweenPositions(pos.x, pos.y, x, y);
                totalDistance = distance1 + distance2;
                if (totalDistance < bestXDistance) {
                    bestXDistance = totalDistance;
                    bestX = pos.x;
                    bestY = pos.y;
                    console.log("found safe spot!");
                }
            } else {
                console.log("pathfinding: this path is not safe.")
            }
        }

        if (bestX == 0 && bestY == 0) {
            console.log("pathfinding: impossible.")
            return;
        } else {
            safeX = bestX;
            safeY = bestY;
        }

        console.log("pathfinding done:")
        console.log(safeX)
        console.log(safeY)
    }

    bot.client.moveTo(safeX, safeY);
},

moveToPlayerPosWithOffset: function() {
    bot = this;

    if(valid_player_pos==null){return;}

    if(valid_player_pos["dimensions"] == null){
        console.log("!!UPDATE USERSCRIPT!!")
        return;
    }

    offset_x = valid_player_pos["dimensions"][0] - bot.offset_x;
    offset_y = valid_player_pos["dimensions"][1] - bot.offset_y;

    //console.log("offset move " + offset_x + ";" + offset_y);

    bot.client.moveTo(valid_player_pos["x"] - offset_x, valid_player_pos["y"] - offset_y);
},

getCandidateBall :function(){
    var bot = this;
    var candidate_ball = null;
    var candidate_distance = 0;
    var my_ball = bot.client.balls[bot.client.my_balls[0]];

    for (var ball_id in bot.client.balls) {
        var ball = bot.client.balls[ball_id];
        if (ball.virus) {
            if (config.verbosityLevel > 1) { bot.log('virus ( green ball ) has been spotted.');}
            continue;
        }

        if (!ball.visible) continue;
        if (ball.mine) continue;

          if (config.botMode == "blind") {
            if(valid_player_pos && valid_player_pos.hasOwnProperty("suicide_targets") && valid_player_pos.suicide_targets == null){
                console.log("!!UPDATE USERSCRIPT!!")
                return;
            }

            if(valid_player_pos && valid_player_pos.hasOwnProperty("suicide_targets") && valid_player_pos["suicide_targets"].indexOf(ball.id) > -1){ return ball; }
        }

        if (ball.size / my_ball.size > 0.5) continue;
        var distance = bot.getDistanceBetweenBalls(ball, my_ball);
        if (candidate_ball && distance > candidate_distance) continue;

        candidate_ball = ball;
        candidate_distance = bot.getDistanceBetweenBalls(ball, my_ball);
    }
    return candidate_ball;
},

recalculateTarget: function() {
    var bot = this;
    var candidate_ball = null;
    var candidate_distance = 0;
    var my_ball = bot.client.balls[bot.client.my_balls[0]];
    if (!my_ball) return;

   if(config.botMode == "spec_mode"){

        if (valid_player_pos != null && bot.isOnFeedMission == true) {

            if (config.enableSaveMoveTo) {
                bot.safeMoveTo(valid_player_pos["x"], valid_player_pos["y"]);
            } else {
                bot.moveToPlayerPosWithOffset();
            }

            if (bot.playerInRange(my_ball, valid_player_pos["x"], valid_player_pos["y"], valid_player_pos.size, 400)) {
                if (bot.canSplitFeedPlayer(my_ball.mass, valid_player_pos.size)) {
                    bot.client.split();
                }
            }

            return

        }

        bot.candidate_ball = bot.getCandidateBall(bot);

        got_tranporter = false;
        transporter = bot.getAvailableTransporter();
        if (transporter != null) {
            candidate_ball = transporter;
            got_tranporter = true;
        }

        if (valid_player_pos != null && my_ball.mass > config.minimumMassBeforeFeed) {
            bot.isOnFeedMission = true;
            return;
        }

        if (valid_player_pos != null && bot.playerInRange(my_ball, valid_player_pos["x"], valid_player_pos["y"], valid_player_pos.size, 1000)) {

            if (!got_tranporter ||
                bot.getDistanceBetweenBalls(candidate_ball, my_ball) >
                bot.getDistanceBetweenBallAndPosition(my_ball, valid_player_pos["x"], valid_player_pos["y"])
            ) {
                bot.isOnFeedMission = true;
                return;
            }
        }

        if (candidate_ball == null) {
            //console.log("normal move");
            bot.moveToPlayerPosWithOffset();
        } else {
            //console.log("normal move");
            bot.client.moveTo(candidate_ball.x, candidate_ball.y);
        }
    }else if(config.botMode == "blind"){
        candidate_ball = bot.getCandidateBall(bot);
        if (candidate_ball == null) {
            //bot.client.moveTo(0, 0);
        } else {
            bot.client.moveTo(candidate_ball.x, candidate_ball.y);
        }

    }
}

};
//you can do this in your code to use bot as lib
//module.exports = ExampleBot;
//launching bots below
var contains = function(needle) {
// Per spec, the way to identify NaN is that it is not equal to itself
var findNaN = needle !== needle;
var indexOf;
if (!findNaN && typeof Array.prototype.indexOf === 'function') {
    indexOf = Array.prototype.indexOf;
} else {
    indexOf = function(needle) {
        var i = -1,
            index = -1;

        for (i = 0; i < this.length; i++) {
            var item = this[i];

            if ((findNaN && item !== item) || item === needle) {
                index = i;
                break;
            }
        }
        return index;
    };
}

return indexOf.call(this, needle) > -1;

};
var WebSocket = require('ws');
var valid_player_pos = null;
var suicide_targets = null;
var socket = require('socket.io-client')(config.feederServer);
socket.on('pos', function(data) {
valid_player_pos = data;
//console.log(data);
});
socket.on('cmd', function(data) {
console.log(data);
if (data.name == "split") {
for (bot in bots) {
bots[bot].client.split();
}
} else if (data.name == "eject") {
for (bot in bots) {
bots[bot].client.eject();
}
} else if (data.name == "connect_server") {
if (data.ip == null) {
return;
}
if (data.ip == "") {
return;
}
for (bot in bots) {
bots[bot].client.disconnect();
}
bots = {};
game_server_ip = data.ip;
console.log("client requested bots on: " + game_server_ip);
    setTimeout(function() {
        startFeederBotOnProxies();
    }, 1000);
}

});
socket.on('force-login', function(data) {
console.log(data);
if (data == "server-booted-up") {
return;
}
socket.on('Stop', function(data) {
console.log("Userscript stop, user request.")
exit
});
socket.emit("login", {
"uuid": config.client_uuid,
"type": "server"
});
});
fs = require('fs');
var HttpsProxyAgent = require('https-proxy-agent');
var Socks = require('socks');
function getRandomLine(filename) {
var fs = require('fs');
var lines = fs.readFileSync(filename).toString().split("\n");
line = lines[Math.floor(Math.random() * lines.length)];
return line
}
//object of bots
var bots = {};
bot_count = 0;
var fs = require('fs');
var lines = fs.readFileSync(config.proxies).toString().split("\n");
var url = require('url');
var game_server_ip = null;
function createAgent(ip,type) {
data = ip.split(":");

return new Socks.Agent({
        proxy: {
            ipaddress: data[0],
            port: parseInt(data[1]),
            type: parseInt(type)
        }}
);

}
var proxy_mode = "HTTP";
function startFeederBotOnProxies() {
for (proxy_line in lines) {

    if(lines[proxy_line].trim() == "#HTTP"){
        proxy_mode = "HTTP";
    }else if(lines[proxy_line].trim() == "#SOCKS4"){
        proxy_mode = "SOCKS4";
    }else if(lines[proxy_line].trim() == "#SOCKS5"){
        proxy_mode = "SOCKS5";
    }

    if (lines[proxy_line][0] == "#" || lines[proxy_line].length < 3) {
        continue;
    }

    //usefull for testing single proxies
    if (process.argv[3] != null && proxy_line != process.argv[3]) {
        continue;
    }

    proxy = "http://" + lines[proxy_line];
    proxy_single = lines[proxy_line];
    console.log(proxy_mode + " ; " + proxy_single);

    try {

        var opts = url.parse(proxy);

        if (proxy != null) {
            if(proxy_mode=="HTTP"){
                agent = HttpsProxyAgent(opts);
            }else if(proxy_mode=="SOCKS4"){
                agent = createAgent(lines[proxy_line],4);
            }else if(proxy_mode=="SOCKS5"){
                agent = createAgent(lines[proxy_line],5);
            }

        } else {
            var agent = null;
        }

        if (lines[proxy_line] == "NOPROXY") {
            agent = null;
        }

        console.log("Attempting connection to " + game_server_ip);
        for (i = 0; i < config.botsPerIp; i++) {
            bot_count++;
            bots[bot_count] = new FeederBot(bot_count, agent, bot_count, game_server_ip);
        }

    } catch (e) {
        console.log('Error occured on startup: ' + e);
    }
}

}
console.log("Thanks For Dowload Break Bots!");
console.log("Starting...");
console.log("CTRL + C For Stop");


Pokemon firered logo is brightened incorrectly

It makes sense that it behaves this way BLDCNT has BG0 set as primary target and brighten as the color mode. Then BLDY is set to 0xD which corresponds to 13. So it should be lightened by a factor of 13/16 unless I've misread something.

Obviously caused by #3

The only interesting oddity here is that the object window is enabled. Maybe that affects things somehow?

I think what's happening here is that OBJ window is enabled and there is a single obj window sprite at 448,251 at 64*64 size.
Blending is disabled outside the window regions and enabled inside the obj window but I think that the OBJ window doesn't overlap with the overly highlighted font.
So this amounts to me writing the proper implementation of obj window and then using this as a test case for it


adjust resources

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

2 of 8 (25.0%)  changed or added relevant lines in 3 files are covered.
1 unchanged line in 1 file lost coverage.
Overall coverage decreased (-1.2%) to 44.545%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

catalyst_utils/cache.py
0
1
0.0%

catalyst_utils/management/commands/generate_mailing_lists.py
0
1
0.0%

catalyst_utils/models.py
2
6
33.33%

Files with Coverage Reduction
New Missed Lines
%

catalyst_utils/models.py
1
59.46%

Totals

Change from base Build<PHONE_NUMBER>:
-1.2%

Covered Lines:
49

Relevant Lines:
110

💛  - Coveralls


DUPLO-19094 Support for below specification during VM creation via TF

Overview
Support added  for encryption at host and security type and other related schema attribute for duplocloud_azure_virtual_machine resource
Summary of changes
This PR does the following:

Added support for encryption_at_host, security_type, enable_vtpm, enable_security_boot
Updated doc

Testing performed

[ ] Using unit tests
[ ] Manually, on my local system
[ ✓] Manually, on a remote test system

Describe any breaking changes

...

Task linked: DUPLO-19094 Support for below specification during VM creation via TF


Fix for Composer 2 / PHP with thread safe disabled, putenv() doesn't work

quick fix for issue 17: https://github.com/civicrm/composer-compile-plugin/issues/17
Probably not the end all of fixes wrt this, but makes it work.

It looks like composer v1 doesn't have that utility function. Interestingly the other passing test job 99.1 says it's configured for composer v1 but ends up using v2.
One option would be to check method_exists() first. Or provide a polyfill function for v1.

I found the machine where this had come up for me and tried the patch with composer 2 and it worked and generated the css file.

It looks like composer v1 doesn't have that utility function. Interestingly the other passing test job 99.1 says it's configured for composer v1 but ends up using v2.

Hrm, that output is hard to read clearly. I think it's saying that the baseline environment in Travis is setting up composer v2, and then it invokes ./scripts/travis-ci.sh before_script which downloads composer v1. You can drilldown in the output to see it downloads:

But if the availability of Platform::putEnv() really is based on version, then 99.1 should've failed the same way as 99.4. 😕  Maybe something changed in the Linux base image for how composer gets into PATH (interfering with the v1 copy)? Or maybe there's some other issue besides composer-version at play?
In either case, for purposes of this PR, we have some jobs hitting each version (eg 99.4+100.4/composer-v1 vs 99.3+100.3/composer-v2), and all jobs are passing  with the latest revision. So the patch is good.
Review recap: Change looks pretty reasonable; it works for both Mark+Dave; and CI is happy with the method_exists() bit.  Merging.

Tagged as v0.17.

Ah yes I missed the little gray triangles. 👍
So yeah a little confusing. There is a test that has "S"kipped in the ".1" run but all of them run in ".4". Maybe that's the diff.


paste action beeps with Dvorak keyboard

How I can reproduce:

Install the Clipboard plugin
Copy at least two things to the clipboard so there is a clipboard history
Invoke Quicksilver
Press a number to select an older clipboard item.

Expected result:

Item is pasted.

Actual result:

Item is pasted, but then there is a system beep.

This may be related to https://github.com/quicksilver/Quicksilver/issues/626. I, like the reporter of that closed issue, use a Dvorak keyboard, but switching to QWERTY did not change this behavior. (However, it's necessary to quit Quicksilver, switch keyboard layouts, then re-open Quicksilver to get it to use the correct key combo; switching layouts while Quicksilver is running seems to result in the Clipboard plugin becoming nonfunctional until you switch back.)
I am running 1.1.3 (4007) on Mavericks 10.9 on a Retina MBP 13", but I have gotten the same behavior on Mountain Lion on a Mac mini for quite some time. Since it's just a cosmetic (well, audible) issue and doesn't affect the functionality, I didn't bother to report it until now. Just the fact that it happened on a new, clean install made me wonder.

Should be fixed by #2594


SCPH 39001: Failed to open 0 file

Trying to dump a PS2 SCPH 39001 model, with biosdrain version 2.2.0 and I get the error message failed to open 0 file, with nothing saved to the USB drive afterwards. Any help would be greatly appreciated.

Can you try this release instead and see if it resolves that issue?
https://github.com/F0bes/biosdrain/releases/tag/v2.1.3

With version 2.1.3 I get a different error now. I get USB not found, and HOST is not available, not continuing. I also double checked and my USB drive is formatted to FAT32.

You have the same issue as #23
Like I said there, if the PS2SDK USB drivers can't detect your drive, there's nothing I can really do but try and fix the driver, which I just don't have the time for currently.

I tried with version 2.1.1 and it works perfectly now.


Added constant to let users adjust CMR Timing out, instead of hard-coding the 30 sec

Codecov Report

Merging #234 (811e5d7) into master (ae0eb16) will increase coverage by 0.02%.
The diff coverage is 100.00%.

:exclamation: Current head 811e5d7 differs from pull request most recent head 593cb79. Consider uploading reports for the commit 593cb79 to get more accurate results

@@            Coverage Diff             @@
##           master     #234      +/-   ##
==========================================
+ Coverage   89.82%   89.84%   +0.02%
==========================================
  Files          53       53
  Lines        1976     1980       +4
==========================================
+ Hits         1775     1779       +4
  Misses        201      201

Flag
Coverage Δ

unittests
89.84% <100.00%> (+0.02%)
:arrow_up:

Flags with carried forward coverage won't be shown. Click here to find out more.

Files
Coverage Δ

asf_search/constants/INTERNAL.py
100.00% <100.00%> (ø)

asf_search/search/search_generator.py
94.91% <100.00%> (+0.13%)
:arrow_up:


Regression: WSL Interop stops working in processes started by a session that has since exited

Version
Microsoft Windows [Version 10.0.22471.1000]
WSL Version

[X] WSL 2
[ ] WSL 1

Kernel Version
<IP_ADDRESS>-microsoft-snapd
Distro Version
Ubuntu 20.04
Other Software
ssh-agent from Windows 11 OOTB set to automatic start on boot.
socat in the distro from their package manager
npiperelay from https://github.com/NZSmartie/npiperelay
Repro Steps
Install npiperelay from https://github.com/NZSmartie/npiperelay to a location that you can access and copy the path
Enable and start the ssh-agent service in Windows:
Set-Service -Name ssh-agent -StartupType Automatic
Start-Service -Name ssh-agent

Verify the ssh-agent service is correctly started before continuing:
Get-Service -Name ssh-agent

Start WSL2 session, and execute:
sudo apt-get install -y socat
socat UNIX-LISTEN:$HOME/.ssh/agent.sock,fork EXEC:/mnt/c/path/to/npiperelay.exe -ei -ep -s //./pipe/openssh-ssh-agent,nofork

Create and add an ssh key to the agent:
ssh-keygen
ssh-add

Verify the key has been added to the agent:
ssh-add -l

The failure occurs in this step: Close the WSL2 session and open a new one. Then, recheck the agent for your key in the new session:
ssh-add -l

Expected Behavior
The ssh-agent should continue to respond when the initial socat-spawning sesssion has exited leaving behind the socat process in the background:
$ ssh-add -l
2048 SHA256:[removed from paste for privacy/security] /home/dllewellyn/.ssh/id_rsa (RSA)

Actual Behavior
This appears to have resurfaced recently, where it was fixed for issue #2414.
The ssh-agent will fail to respond to queries in any session after the initial socat-spawning session has exited leaving behind the socat process in the background:
$ ssh-add -l
error fetching identities: communication with agent failed

Diagnostic Logs
No response

Probably the Linux kernel is different than what is used in WSL2.

no, @Biswa96 that is not the issue. it fails with the default kernel, too

@diddledani - This is expected, WSL2 instances are terminated when the session that created them exits. The previous behavior was not intended.

I'm not sure that it is widely expected that a long-running process loses access to resources that it initially has access to just by virtue of the user closing the shell that started the long-running process. I'd like to petition to revert this behaviour to the "not intended" state because that is what users expect.

There is a workaround for this particular example (as described at: https://github.com/rupor-github/wsl-ssh-agent) -- adding a script to the bash_profile to check if the socat socket is working and recreating it in the background if it isn't in-place.
add:
export SSH_AUTH_SOCK=$HOME/.ssh/agent.sock
ss -a | grep -q $SSH_AUTH_SOCK
if [ $? -ne 0   ]; then
    rm -f $SSH_AUTH_SOCK
    ( setsid socat UNIX-LISTEN:$SSH_AUTH_SOCK,fork EXEC:"/mnt/c/<Wherever you put this file>/npiperelay.exe -ei -s //./pipe/openssh-ssh-agent",nofork & ) >/dev/null 2>&1
fi

There used to be an advertised ability to use AF_UNIX within WSL (see: https://devblogs.microsoft.com/commandline/windowswsl-interop-with-af_unix/ ) which no longer works, so it isn't possible any more to start the socket on the windows side, and share it with WSL.
It would be nice if instead of having socat initiate the npiperelay.exe inside WSL, AF_UNIX support worked again, and windows could start the unix socket independently of WSL, and share it into WSL, as I think it's probably better security/safer to have windows initiate any pipes/sockets rather than having pipes/sockets initiated from WSL back into windows.

@DaveWK that doesn't help, because the sockets are still listening in the now closed session. My point here is that WSL2 has not terminated, and the backgrounded tasks are still running, but they are not able to continue doing their job because WSL2 has killed the relevant WSL_INTEROP socket.
Again for completeness and to clear up confusion:

Start WSL2 (this is session 1)
Start socat forwarding to a file-based pipe (GPG-agent in my case)
Start a new WSL2 bash session alongside session 1 (this is session 2)
Close session 1 leaving session 2 running
observe that the sockets are still in-place and the socat process is still active
Try to use gpg in session 2 but fail because WSL_INTEROP has been killed even though there are still active processes


tests: disable container nfs testing

Looks like nfs-ganesha 3.3 and 4.-dev doesn't work with recent changes
in librgw 16.0.0.
The nfs-ganesha daemon is segfaulting and restart in a loop.
See https://tracker.ceph.com/issues/47520
Signed-off-by: Dimitri Savineau<EMAIL_ADDRESS>

jenkins test centos-container-all_daemons

if this fixes the dashboard radosgw user creation issue then we don't need https://github.com/ceph/ceph-ansible/pull/5799 anymore


Create the doc or sample for Dapr user app integration test

Describe the proposal
This is the issue to track the Gitter conversation
A user wants to know how to run integration test against Dapr user apps when he has multiple Dapr apps. Their integration tests must be run with Dapr to talk to the different dapr apps.
There should be multiple ways to do integration test for dapr user apps in their local dev environment. It will be helpful to provide the docs and samples to run the integration tests for user apps.

@riezebosch - is this something you'd be interested to contribute to the Dapr project?
https://docs.dapr.io/contributing/contributing-overview/
https://docs.dapr.io/contributing/contributing-docs/


[gateway]: multi wallet support like wallet connect and others

Issue Type

[ ] bug report
[x] feature request

Current Behavior

Expected Behavior

Support the Wallet Connect to let users use the multisig
Steps to Reproduce

Suggested Fix

RainbowKit to have multi-wallet support and other benefits even going to support custodial wallets & fiat on ramps
https://www.rainbowkit.com/
Fairly easy to integrate & widely used.

RainbowKit to have multi-wallet support and other benefits even going to support custodial wallets & fiat on ramps
https://www.rainbowkit.com/
Fairly easy to integrate & widely used.

Ok! Sounds good!

rainbowkit and web3connect are not suitable at this moment. They use the wagmi package as the wrapper as the ethers package. wagmi uses react hook to create interfaces which is not suitable for our networkservice.
Therefor, the walletconnect v1 is added.

https://github.com/bobanetwork/boba/pull/625


Create sample-python.yaml

I was looking for a long time for a good example how to setup the environment.
Here is the sample which shows typical usecase, and it is also easy to modify.

Hi @AstroMatt , we have python stack in the registry which does the same thing here:https://registry.devfile.io/devfiles/python
If you check devfile registry, it contains more samples and stacks you may find useful: https://registry.devfile.io/viewer


Float conversions break after 5 decimal places.

Repost the following comment:
https://github.com/radar/humanize/pull/3#commitcomment-6039210
as issue report.
0.0003.humanize
#=> "zero point zero zero zero three"
0.00003.humanize
#=> "zero point zero zero zero zero five"
# expected: "zero point zero zero zero zero three"
0.000003.humanize
#=> "zero point zero zero zero zero six"
# expected: "zero point zero zero zero zero zero three"

Update:
Btw, this issue only occurs when the number is 0.0000XXX or -0.0000XXX.

@radar, you're right. I guess that's the source of the problem.
I think I've come up with a little bit of a hack to convert the floats to string that is not a scientific notation.
What do you think about this?:
num = 0.000000032452345
digits, exp = num.to_s.split("e-")
"%.#{digits[/\d+$/].length + exp.to_i}f" % num
#=> "0.000000032452345"

This works for other floats too:
num = 0.032452345
digits, exp = num.to_s.split("e-")
"%.#{digits[/\d+$/].length + exp.to_i}f" % num
#=> "0.032452345"

If this looks good, I will send the PR.

Hi, @radar. I thought I just send you the PR so you can easily review and test it. 😬


Add query for checking time since last activity on PRs

Output:

@nineinchnick I'm not able to add you as a reviewer but if you could take a look at this when you get a chance


HEP: vlan enhance

IMPORTANT: Please do not create a Pull Request without creating an issue first.
Problem:

IT usually configures the switch with VLAN trunk mode rather than VLAN access mode or hybrid mode in a production environment. Therefore, we should add VLAN support for harvester-mgmt and allow multiple Linux bridges in Harvester node configuration.
preview page: https://github.com/tjjh89017/harvester/blob/vlan_enhance/enhancements/20220418-vlan-enhancement.md
Solution:

Related Issue:
Test plan:

Thanks for the HEP documentation, here's some personal feedback:

Can u please add the relevant modifications to the Network CRD YAML file?

I listed ClusterNetwork and NodeNetwork that we need to modify or we need to create some new CRDs to fit the requirement.
I'm going to create some CRD examples for this enhancement.

Can you describe the changes involved in the upgrade first (maybe a solution will be added later)?

It will depend on implementation.
I will add it later if we have more discussion about details.

For network diagrams, prefer to change the Not Possible to Not Support

Updated.
Thanks a lot

update example CRD design.

close this
and track in https://github.com/harvester/harvester/pull/3066


Deploying videos

I have some videos that i want to deploy for my website(they are not uploaded via HTML).
I want to upload those files by my self and not with mup deploy because it will take a LOT of time each deployment.
How can i upload videos to my webserver/docker after the deployment was successful?
And ofcourse in a way that they won't be deleted on each deploy...
10x!

One way to solve this is to use collectionfs and put it in aws s3

I'm trying to enable docker's volumes...
But for now with out any success...
help to configure it out will be much appreciated

Sorry if this comes a bit late but I am using docker volumes for images, I think that's what you are looking for. Here is an excerpt of my mup.js config file:
...
meteor: {
        name: 'appname',
        path: 'pathtoapp',
        port: 3001,
        volumes: {
            "/var/www/app-uploads": "/app-uploads", // First path is path on server, second is path in docker container
            "/etc/localtime": "/etc/localtime"
        },
        docker: {
            image: 'abernix/meteord:base'
        },
...

Hope this helps

10x for the update. I did succeed to create a volume like your suggestion, but the next problem was that Meteor it self does not support public files to be added on the fly this way... So i had to move to a 3rd party solution.


chore: update to the latest UI components

What does this PR do?
bump the library (including the tsconfig.json file) that will fix a compiler issue
Screenshot / video of UI

What issues does this PR fix or reference?

How to test this PR?

Need to update the pnpm-lock file

yes I saw that
and I need to sign my commit 🤦

so, need to fix something in AI lab as well first

closing over https://github.com/containers/podman-desktop-extension-ai-lab/pull/1995


Prevent editing properties managed by parent container

Addresses #28718 by making the properties that are managed by parent container not editable inside the inspector.
Currently the properties that get disabled are:

Anchor
Margin
Position
Scale
Size

This is achieved by disabling mouse interactions and preventing focus on the aforementioned inspector properties.
This is how it looks when properties get disabled:

Bugsquad edit: Fixes #28718 and fixes https://github.com/godotengine/godot-proposals/issues/2202.

I completely agree with the proposed feature, only the implementation needs a rework. :)

Thanks! I'm really looking forward to this feature!
 I wasn't that familiar with Godot at that time and I used a margin container. Whenever I changed some margin values and started the game, it didn't work. I took me a while to figure out to use the "custom constant" values. I think it's much less confusing for beginners if those values will be disabled!

Perhaps we can expand this and flip it around so that the expand flags are disabled unless the node is in a container?

Any news on this one?

Hey, sorry for not giving any updates. I'm available to apply any needed modifications to make this pull request mergeable.

Anchor
Margin
Position
Size

Note that rect_scale should be there too: #38356

Note that rect_scale should be there too: #38356

No sorry, I just realized that I might be wrong there. rect_scale is not overridden by containers, so I am not sure it should be disabled. However this property tends to mess with children of containers, but that's another problem (see #19068).

@groud When I've tested the case in #38356, the scale was reset on visibility toggle. So, a child of HBox clearly was not controlling it. So, who does, if not the container?

Interesting. I think this was not done before, maybe this was modified. I am not sure what should be done there, maybe the scale should be reset for all containers, but I am not sure it is the case.

Scale was certainly reset (by the Container) in the past.

Ah yes you are right, so indeed rect_scale should be added to the list of non-editable properties then.

rect_scale added.

@Awkor This needs to be rebased on the latest master branch when you have the chance.

@aaronfranke Done.

You have formatting issues, namely empty lines at the start of some functions.

Sorry to disrupt the productive conversation, but I just wanted to say that I was about to request this and I agree 100% that it’ll make beginner’s lives easier. It took months for Godot’s Controls to “click”with me, and I think the lack of this feature is partially responsible for the steep learning curve.
Thanks for making it happen!

@Awkor Do you plan on working on this PR more to address the concerns voiced above? At the very least this needs rebasing.

I think we can use this as a solution and address concerns voiced by @KoBeWi with a future PR. If a new method was to be added to the Object class it should be something like get_managed_property_list which would return property names and, I guess, the name of a class that controls that property if the current node is its child. But this can also be added to the good old get_property_list, and maybe even to the ADD_PROPERTY bindings, which would likely be more consistent.
This would complicate things, however, and the problem that this PR fixes is very much annoying to a lot of new users. We can clean up the backend later, I think, if we address the UX now.

Also, @groud, can you please check if your concerns were addressed and update your review?

Also, @groud, can you please check if your concerns were addressed and update your review?

Well, there are a things do not seem correct to me with the current implementation. Few points:

I would prefer this disabling mechanism to be generic. Control nodes' properties are not the only ones that would benefit from a disabling mechanism. As I mentioned in my review, I'd rather go with a (likely virtual) function to disable any EditorProperty. Thus we should add something like set_disabled(bool p_disabled) to the EditorProperty class, then implement it for the different classes extending EditorProperty.
I quite dislike the fact we hardcode things into EditorInspector::update_tree, the editor inspector is supposed to be agnostic to what it handles. Consequently, we should probably use an inspector plugin instead, or add a way to set a property as disabled.
EditorProperty exposes a set_read_only(bool p_read_only) function, maybe it could be replaced by the new set_disabled I proposed. That's a lilttle bit out of the scope of this PR, but it might be good to review where set_read_only is used and if it would be equivalent to use set_disabled.

In the current state, the PR does the job well but is quite hacky. We still have some time before 4.0, so I'd rather have this made in a cleaner way.

See also https://github.com/godotengine/godot-proposals/issues/2841

There is #51722 which adds a proper set_read_only() to every EditorProperty. It would be useful for this PR.

There is #51722 which adds a proper set_read_only() to every EditorProperty. It would be useful for this PR.

If it gets merged, I'll rebase and use that.

@Awkor #51722 has been merged, so I think you can rebase it and resume this PR. Regards,

Done.

It seems to be needing to include container.h in control.cpp.

Guys, I am not sure if this is still working correctly in 3.5.1.

Should Margin editor be disabled? Because it is not and the margin property is being reset.

The issue is not fixed in 3.5, because the fix depends on #51722, which was merged only on master.


regexp '$' not working?'

I what exclude bundle.js from this fragment
    <script src="bundle.js"></script>
<script type="text/javascript" src="bundle.js?5fc2c71bd09ffa7a3df9"></script>

this seems not working
    plugins: [
        new HtmlWebpackPlugin({
            hash: true,
            template: './static/index.html',
            excludeAssets: [/bundle.js[^?]/]
        }),
        new HtmlWebpackExcludeAssetsPlugin(),
    ],

How can I do this ?

I didn't test what I will say but the regex you provided doesn't match. Example
If you use /bundle.js.*/ as a regex then it will match the resource name. Example


Extra "}" in the Azure Data Lake Gen2 example.

The following section
configs = {
  "fs.azure.account.auth.type": "CustomAccessToken",
  "fs.azure.account.custom.token.provider.class": spark.conf.get("spark.databricks.passthrough.adls.gen2.tokenProviderClassName")
}

# Optionally, you can add <directory-name> to the source URI of your mount point.
dbutils.fs.mount(
  source =<EMAIL_ADDRESS>  mount_point = "/mnt/<mount-name>",
  extra_configs = configs)
}

Has an extra } at the end.

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 8d55b056-a9c1-5e92-4fdd-23d7269129f1
Version Independent ID: 82a77acc-2107-33f5-bfa2-28e6b11128b9
Content: Access Azure Data Lake Storage using Azure Active Directory credential passthrough - Azure Databricks - Workspace
Content Source: databricks/security/credential-passthrough/adls-passthrough.md
Service: azure-databricks
GitHub Login: @mssaperla
Microsoft Alias: saperla

@teodor-kostadinov ,
Thanks for the feedback and bringing this to our notice. At this time we are reviewing the feedback and will update the document as appropriate.

Hi @leifbro , @mssaperla - As @teodor-kostadinov called out, there is an extra { in the below code section. Could you please fix the doc to resolve the issue.
https://docs.microsoft.com/en-us/azure/databricks/security/credential-passthrough/adls-passthrough#--azure-data-lake-storage-gen2-1

Hi @teodor-kostadinov – thanks for reporting this. This will be fixed shortly.

@jaseidman  - Thanks much for the quick fix :)
@teodor-kostadinov - Appreciate much for your feedback and helping us to improve the doc content.
The reported issue has been fixed and the changes are live.
We will now proceed to close this issue based on this update. Feel free to comment if you have any further query.
Thank you


Implement loss plot.

Loss and a simple accuracy plot have been implemented. After the training we'll decide if the plots are good enough.


Admin server restart issue using service during AAD integration when admin port 7001 is disabled

It is noticed that admin server restart using system service causing problem in bringing admin server up.
As part of aadIntegration.sh admin server is restarted with following lines
sudo systemctl stop wls_admin
sudo systemctl start wls_admin
But it is noticed that admin server doesn't come up properly.

Investigation:
In future WebLogic admin non ssl port 7001 will be disabled. During that time admin server restart will be issue as stopWebLogic.sh will still be using 7001 port. This issue may cause problem wherever admin server stop/start is required.
Hence custom stopWebLogic script is created, which sets ADMIN_URL and calls stopWebLogic script. These changes will be part of wls_admin service on admin, static and dynamic cluster repos.

Updated custom stopWebLogic script to wls_admin service wls-eng/arm-oraclelinux-wls-cluster/#90

https://github.com/wls-eng/arm-oraclelinux-wls-dynamic-cluster/pull/68

CI/CD worked fine for admin, static cluster and dynamic cluster
Refer
https://github.com/sanjaymantoor/arm-oraclelinux-wls-admin/actions/runs/330719269
https://github.com/sanjaymantoor/arm-oraclelinux-wls-cluster/actions/runs/330938795
https://github.com/sanjaymantoor/arm-oraclelinux-wls-dynamic-cluster/actions/runs/331342369


Peer Review - Define MAE, MSE, RMSE

Comment 2: It would be a good idea to define your test statistics (e.g. MAE, MSE, RMSE) so the reader has a better understanding of what they are.

fixed, close


Doc edits

Coverage remained the same at 86.486% when pulling ce6773c2abf9bdad45cafa4b670cb3ad2a82da82 on doc-edits into ef7747bad4c7ab8275b737776b924c6831f04114 on master.

OK to merge?


ORC-749 Add checkstyle:check to analyze profile.

This change makes the analyze profile also run checkstyle:check. It pulls the manual rat and checkstyle checks into cmake's build.

Thank you, @omalley . Is this blocked by ORC-750 ?

These look like findbugs issues -- the interesting fact is that they only show up with java > 8

By turning on the analyze profile in the CI build, now we get find bugs again in CI.
Java 11 causes a new set of findbugs false alarms, so those need to be suppressed.
I'll follow up with ORC-750 that enables the analyze profile for the benchmark too.


Recipes have extremely difficult to debug issues

This took a long time to navigate. These issues occur for clients connecting to non-integrated servers (normal multiplayer, joining LAN, etc).
First off, ResourcefulLib assumes fromNetwork is a nullable method on recipe serializers. It is not, returning null from a recipe serializer breaks every other recipe in the game with a null pointer exception later down the line with no clear reasoning. This method needs to not catch exceptions, and replace .orElse(null) with .orElseThrow(), as well as removing the incorrect @Nullable annotation. Throwing is of no concern because recipes are already broken whether your return null or throw, so it'd be nice to have a correct reason why in logs.
ref: https://github.com/Team-Resourceful/ResourcefulLib/blob/1.19.3/common/src/main/java/com/teamresourceful/resourcefullib/common/recipe/CodecRecipeSerializer.java#L44
Second and more insidiously, ingredients are serialized incorrectly. Vanilla network syncing is extremely terrible in a lot of ways, and one of these ways is tags and recipes cannot depend on each other or reference each other non-lazily, because on initial connection to a server, recipes are sent before tags, but on resource reload, tags are sent before recipes. This means that ingredients are always serialized by vanilla systems as a list of items, even if they are actually tags, because the client doesn't know what tags exist. However, ResourcefulLib assumes they can be serialized and deserialized to json painlessly, which is not the case. On the client, recipes that use this method and introspect on values will fail, because at the time the tag doesn't exist. This is less fatal, but is certainly bad practice and could have serious hard to debug ramifications. Following the vanilla model of serializing ingredients as a set of stacks is much safer.
ref: https://github.com/Team-Resourceful/ResourcefulLib/blob/1.19.3/common/src/main/java/com/teamresourceful/resourcefullib/common/codecs/recipes/IngredientCodec.java
These issues have caused an issue here https://github.com/AlexNijjar/Extractinator/issues/23 relating to a mod that uses this lib where the recipe serialization methods cause vanilla recipe sync to fail, no recipes to load, and the vanilla recipe book along with any recipe viewers fail to load recipes (and appears to be their fault). There may be more issues here, these are the surface level ones I caught while debugging this for them.
Sorry if this is a lot of information, I spent a lot of time debugging this issue, and I'm deep in the weeds of this territory of vanilla code, so I thought I'd explain it best I could.

An addendum to the second ingredient serialization issue: Ingredients cache their matching stacks, so if a recipe introspects or reads its ingredients during/after the recipe sync but before tag sync, it'll collapse every tag into emptiness, which is certainly undesirable.

The nullable thing is because forge marks it as nullable so I thought it was from vanilla so I can fix that.
As for the ingredients I provide the ability for recipes to have a network and a json codec it is on the developer using the codec recipes to have 2 codecs to allow for different serialization for ingredients, a lot of times its not needed to have 2 separate codecs so I let them pass in 1 or 2. so the second part is on Extractinator.
For the ingredient things again, it should not be an issue as ingredients are lazy loaded so the problem with tags vs recipe times should not be an issue as its not an issue with for example REI and JEI, the only time it would be an issue is if they are loaded very early which shouldn't really be done as if for example you wanted to display beacon bases that wouldn't work as its a tag.
But that's just my opinion it can be fixed if the dev changes to using a separate codec for network.

Fixed this on extractinator's side by creating the second network codec

Ive also added better logging so I assume this is fixed, if there is something else either comment on this issue or open a new one if its not relevant to the current one.


Ranges where additionalTextEdits are applied are not appropriate when characters are typed

Does this issue occur when all extensions are disabled?: Yes
Version: 1.77.0-insider (Universal)
Commit: 2a6bd78f745d3e6330c8ff7db5282dc582e117fd
Date: 2023-03-17T21:00:47.582Z
Electron: 19.1.11
Chromium: 102.0.5005.196
Node.js: 16.14.2
V8: <IP_ADDRESS>-electron.0
OS: Darwin arm64 20.6.0
Sandboxed: Yes
Steps to Reproduce:

Execute the following extension example: https://github.com/tamuratak/vscode-extension-samples/tree/53ccfff2cb3a0cf8fda62018af47ae0e960839a3/completions-sample

import * as vscode from 'vscode';

export function activate(context: vscode.ExtensionContext) {

	const provider1 = vscode.languages.registerCompletionItemProvider('plaintext', {

		provideCompletionItems(document: vscode.TextDocument, position: vscode.Position, token: vscode.CancellationToken, context: vscode.CompletionContext) {
			const item01 = new vscode.CompletionItem('aaa');
			item01.additionalTextEdits = [vscode.TextEdit.insert(position.translate(0, 10), 'aaa')];
			return [
				item01
			];
		}
	});

	context.subscriptions.push(provider1);
}

Open a text file
Type Ctrl-space and select a completion item
Type Ctrl-space, type aa, and select a completion item
The results are different

https://user-images.githubusercontent.com/10665499/226150839-269a34aa-5b02-4af1-b5ab-3a358078bef7.mov

This is specific to additional edits that are after and on the same line as the suggestion. The newly typed characters (type after return the list of item and before selecting one) aren't taken into account


CASMPET-5916 create new directory for storage argo-workflows

Description

Create new directory for storage argo-workflows
Checklist Before Merging

[x] If I added any command snippets, the steps they belong to follow the prompt conventions (see example).
[x] If I added a new directory, I also updated .github/CODEOWNERS with the corresponding team in Cray-HPE.
[x] My commits or Pull-Request Title contain my JIRA information, or I do not have a JIRA.

/backport release/1.3


Default ssh config file will cause orbstack to be launched automatically

Describe the bug
The default ssh config file contains the following content:
Match originalhost orb exec "'/Applications/OrbStack.app/Contents/MacOS/../Frameworks/OrbStack Helper.app/Contents/MacOS/OrbStack Helper' ssh-predicate 501"

And when I using some ssh remote tools like the Remote-SSH plugin of vscode, the orbstack will be launched automatically.

To Reproduce
No response
Expected behavior
orbstack shouldn't start in that case.
Diagnostic report (REQUIRED)
OrbStack info:
Version: 1.4.3
Commit: 75d38a2c2d9a2b42d64378a8f50f31d4d566df10 (v1.4.3)
System info:
macOS: 14.3.1 (23D60)
CPU: arm64, 10 cores
CPU model: Apple M2 Pro
Model: Mac14,9
Memory: 32 GiB
Full report: https://orbstack.dev/_admin/diag/orbstack-diagreport_2024-02-28T17-53-04.541078Z.zip

Screenshots and additional context (optional)
No response

Fixed for the next version.

Released in v1.5.0 Canary 1. To switch to Canary: Settings > Update channel
New feature: Debug Shell provides useful commands & tools, making it easy to debug any container (even if minimal).

Released in stable v1.5.0.

New feature: OrbStack Debug Shell provides useful commands & tools, making it easy to debug any container (even if minimal).
"It's 12 AM and your Docker container isn't working, but debugging it with docker exec is impossible because it has no shell or tools. OrbStack Debug Shell provides a nice zsh setup with auto-complete, editors, common tools, and over 80,000 packages, on top of any container."
Read more: blog post


catch JSON parse error in template

If vtt file have malformed json or chapters are defined with text only on purpose,
don't throw error and display raw content.

Sorry, @lostdalek I haven't been working on my player for quite some time and just getting back into it.
I accidentally saw your PR, apparently missed the email.
I will add some comments, but if I don't hear from you I will make the changes and merge this stuff in myself.

@lostdalek, i think i am going support your feature (for now), but if you don't want anything special... a.k.a JSON—you might just want to stick to default implementation defined by…
https://www.w3.org/TR/webvtt1/#webvtt-chapter-title-text

Closing for now—Let me know if the PR doesn't work for you.


Custom keybindings

Hi there!
First of all thanks for this amazing project, I'm really enjoying at the moment.
A thing I miss though is the ability to remap keybindings. For instance, I'm used to deleting a world with Ctrl-Backspace, and multi-select text with Ctrl-D.
I didn't see any kind of configuration file or options, so I'd like to know if this feature could be implemented? I think many people would enjoy to remap the keybindings as well.
Thanks in advance :)

I'd like to work on that. @rhysd is there any format of settings you think is best? (RON, JSON, TOML...)

@ChayimFriedman2 Thank you for raising hands to implement this.
Actually I was not willing to implement this because it introduces complications and overhead on launching editor. However I also agree that default key shortcuts are not good for everyone.
So I'm glad to review the changes to address this. I want to review the spec at first. Would you make 'Configuration' section in README.md after 'Usage' section and describe the specification you're considering and create a WIP pull request before implementing it?

is there any format of settings you think is best? (RON, JSON, TOML...)

I think TOML is the best. JSON is serialization format, not for configuration (it does not provide comments syntax). RON is not popular as configuration. YAML is too complicated.


Update badge url in readme

See https://github.com/badges/shields/issues/8671

Doesn't work yet

Good url is https://img.shields.io/github/actions/workflow/status/Riduidel/aadarchi/on_push_on_master_deploy_build.yml?branch=main


Improve jupyter service

Motivation for this change
I want to use the jupyter service with the jupyterWith package and a Rust kernel, so I added the necessary options to make that work. I also fixed a bug in the evcxr package. I have tested both of these changes on my machine.
Things done

[x] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
Built on platform(s)

[x] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[x] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[x] Ensured that relevant documentation is up to date
[x] Fits CONTRIBUTING.md.

I changed useJupyterLabs to a command option. I can't retest it myself right now because I am at work, but the change is hopefully small enough for it to still work.

I fixed accidentally using types.string instead of types.str, and me plus another person have been using this without problems for a week now. The default behavior is also exactly the same as before, so I think this can be safely merged.


[Runtime][Foundation] Supplement the class_getImageName patch with a patch to +[NSBundle bundleForClass:] on older "embedded" targets

The patch technique of editing the symbol table doesn't work for +bundleForClass:'s call to class_getImageName when +bundleForClass: is in an embedded shared cache.
rdar://problem/44489216

@swift-ci please test


removing/disabling logging

I wanted to open an issue for this issue to get feedback before going further and starting to modify the code in preparation for a PR.
When using the library, it log failures and the like by default:
2015/06/04 21:07:54 Failed to connect to <IP_ADDRESS>:2181: dial tcp <IP_ADDRESS>:2181: connection refused

Without setting the writer for all logging to something that isn't stdout, there doesn't appear to be a way to disable this logging. Is there a reason logging was enabled in the library by default?

Nevermind, I'm totally a tool.

I believe there's 3 instance of logging in the server: failed to connect to server, failed to set previous watches, and a catch all for unexpected errors (which likely point to bigger issues).
One alternative is to turn off logging and use exported metrics so that any existing alerting infrastructure can be used (e.g. failed to connect N times in M seconds).. this likely should be added anyway regardless of logging.
Do you think it would be ok if you could pass in a custom logger to the client (func (c *Conn) SetLogger(Logger)) conforming to an interface like:
type Logger interface {
    Printf(format string, v ...interface{})
}

and by default the stdlib log would be used. Then could override it to disable logging entirely or reroute to a more appropriate place (perhaps syslog if using it).

I think that would make sense to me. Then have an unexported struct field for the Logger. To avoid breaking the old way, we could default to setting up a logger that has the same behavior as now.


Minify some Logical Expression patterns

This looks awesome @boopathi

/cc @hzoo @shinew for another pair of eyes


Destroy draw command

Related issue : #393
Draw comand destroy is a crucial feature in many cases (including my current project). When it needs to generate commands dynamically, zoombie commands will lead to memory leaks or even crash down in the end.
So to kick off implementation, here is a launching list IMHO:

[ ] new method: regl({...}).destroy() to delete generated gl program, shader, etc
[ ] remove deleted program and shaders from local caches
[ ] check if any cascade attribute or element buffer to destroy

if a buffer is created by regl.buffer intentionally, NOT destroy it and leave it to user.

[ ] test cases

Is there anything I missed? Any comment or suggestion will be highly appreciated.

I'll close #393 as a duplicate since the todo list makes this a bit more actionable. 👍


Improve Schedule list screen for same schedule

Idea Description
Current situation
Currently the schedule list screen showing same schedule multiple time.

Welcome talk
Lunch

Ideal situation
Showing the same schedule for 1 row(kinder combined to 1 schedule).
Reference images and links

That definitely make sense. But they can be different a little. For example, there is no translation for online welcome talk. I think it is difficult to handle the difference. Let me know if there is any way to handle well.

I think it is difficult to handle the difference. Let me know if there is any way to handle well.

Got it, that's should separated for avoid confusion!
BTW, how about the lunch schedules? looks same for each item?(difference are only room, right?

For now, yes. And probably you are right. But it is difficult to imagine the changes.😅

Let me close this issue until the better way is found.


Fix the property name of connectionInitSqls in DruidDataSourceFactory

The property values in DruidDataSourceFactory are inconsistent with the external documentation, so the external documentation should take precedence.  https://github.com/alibaba/druid/wiki/DruidDataSource配置

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.tianpengfei seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.