ESOCKETTIMEDOUT on Poloniex while syncing balance (trades too).

Hello,
I've launched a bot on Poloniex with a small amount of funds to try it out on the BTC-USDT pair. It made it's first trade and bought USDT. Zenbot running on an Ubuntu 16.04 vm.
Using node.js 8.11.3
However, I'm getting errors likes these at a few minutes interval:
2018-07-22 10:50:14 - error syncing balance
{ Error: ESOCKETTIMEDOUT
    at ClientRequest.<anonymous> (/home/user/zenbot/node_modules/poloniex.js/node_modules/request/request.js:812:19)
    at Object.onceWrapper (events.js:313:30)
    at emitNone (events.js:106:13)
    at ClientRequest.emit (events.js:208:7)
    at TLSSocket.emitTimeout (_http_client.js:706:34)
    at Object.onceWrapper (events.js:313:30)
    at emitNone (events.js:106:13)
    at TLSSocket.emit (events.js:208:7)
    at TLSSocket.Socket._onTimeout (net.js:410:8)
    at ontimeout (timers.js:498:11) code: 'ESOCKETTIMEDOUT', connect: false }

However it does get the correct USDT balance from my polo account on the GUI. I'm getting similar errors for getting trades etc. And when I relaunch the bot, I have no trade history on the GUI (don't know if this is normal or not?).
When I relaunch the bot, all is fine, but after say 10mins, I start getting these timeouts. It seems to crash after a while with a nonce error.
I'm a complete node.js noob so this doesn't really speak to me. What I've tried:
New api key+secret: no difference
Checked my firewall (running pfsense at home): nothing is getting blocked
DNS requests seem to work fine from the linux box
Can someone advise on what needs to be done? I've googled around but nothing specific to this error with Zenbot and Poloniex.
Thanks!

I've made the following change in node_modules/poloniex.js/lib/poloniex.js:
options.json = true;
      options.headers['User-Agent'] = Poloniex.USER_AGENT;
      options.strictSSL = Poloniex.STRICT_SSL;
      options.timeout = 60 * 2000;

Before it was 60*1000, I'm not sure if it fixes the problem or what exact consequences this may have. However the bot has been running for 20mins now without any timeout occuring.

Ok, so the bot has now been running for over a day and I haven't seen these timeout issues again.
I do however, every now and then get the infamous nonce error where is says nonce is x and I provided y. The difference between the 2 nonce is 2000.
I've google this quite extensively but I'm not sure of what fix should be applied? I read some people where advancing their clocks a few seconds to counter this, sounds a bit edgy though, especially for bot trading.
Any insight welcome!

Hey @h311m4n , im trying to run bot for the first time.
It keeps showing same blue timestamp. Is it running?
2018-07-31 04:26:56 now its 4:33. I've tried run it several times, no effect.


test

Hello guys, I'm trying to install your amazing software, but it does't work, why ?
I'm using a white computer.

Sorry for the inconvenience, we're trying our best to give our users the best experience while using our software. We can suggest to throw your computer from a window, if it doesn't fix your problem just wait for the next update deploy.


CallbackOnCollectedDelegate Bug

Managed Debugging Assistant 'CallbackOnCollectedDelegate'  occurred
HResult=0x00000000
Message=Managed Debugging Assistant 'CallbackOnCollectedDelegate' : 'A callback was made on a garbage collected delegate of type 'Grib.Api!Grib.Api.Interop.Util.GribApiNative+GribLogProc::Invoke'. This may cause application crashes, corruption and data loss. When passing delegates to unmanaged code, they must be kept alive by the managed application until it is guaranteed that they will never be called.'
Try running something similar to
Directory.GetFiles("PathToGribFiles").Select(x => new FileInfo(x).Select(x => new GribFile(x.FullName)).OrderBy(x => x.First().Time).ToList()
Note - You must have multiple grib2 files.
This will reproduce the above error.
This error can also lead to this kind of exception as well.
This can also lead to a other errors such as:
System.AccessViolationException occurred
HResult=0x80004003
Message=Attempted to read or write protected memory. This is often an indication that other memory is corrupt.
Source=Grib.Api
For anyone else whom runs into this problem in order to get around it until the library can be fixed prior to enumerating to the next file copy out all the contents of the GribFile object that you need.
As a final thought since this library is doing interop and using i'm assuming another third party dll. How much work would it be just to rewrite the library not to use interop but manage everything internally?

Trying to recreate this library in pure managed code would be a totally massive and totally pointless undertaking. Afaik, grib_api is the most comprehensive and powerful set of GRIB-related tools in any language. Why not utilize that? Plus, I don't use the library anymore and only one other person has ever submitted a proper PR.
Furthermore, afaik, it's quite stable tho I can only go by the reports I receive here. The bug you're seeing is likely my error and is unrelated to interop specifically.
Can you try v1.0.0-beta and let me know if the issue still exists?

Accidentally closed.
However, the problem still exists in the beta as well.

You had mentioned you were using grib_api. I saw this post just thought I would share.
The ECMWF GRIB-API is an application program interface accessible from C, FORTRAN and Python programs developed for encoding and decoding WMO FM-92 GRIB edition 1 and edition 2 messages. A useful set of command line tools is also provided to give quick access to GRIB messages.
The latest version of GRIB edition 2 documents from the WMO can be accessed HERE
**"Starting from version 2.0.0, ecCodes is the primary GRIB encoding/decoding package used at ECMWF. Any new features for the handling of GRIBs will be only developed in ecCodes. Nevertheless GRIB-API will be maintained and new releases made publicly available to support decoding of ECMWF model output. Replacing GRIB-API with ecCodes is expected to be transparent for current GRIB-API users. In particular the "grib_" functions are included in the ecCodes library.
Users are strongly advised to start the migration process."**

Not sure if anyone needs this is not but as noted in my previous post you just need to copy your data out of the GribFile object prior to moving on. I just mocked up a quick dirty copy of the data I needed to get past this bug.
Depending on how big your grib files are you may or may not run into the 2gb limit on your list sizes. If you are running a 64 bit system in your App.Config you can add.

In addition, you will need to go into properties => build => uncheck Prefer 32 bit.
    public GribFileDto ReadGribFile(string fileName)
    {
        try
        {
            GribFile gribFile = new GribFile(fileName);
            // We do this for poorly written code in the library
            // See https://github.com/0x1mason/GribApi.NET/issues
            GribFileDto gribData = new GribFileDto(gribFile);

            return gribData;
        }
        catch (Exception e)
        {
            Console.WriteLine(e);
            Console.WriteLine();
            return null;
        }
    }

public class GribFileDto
{
    public string FileName { get; private set; }
    public int MessageCount { get; private set; }

    public GribFileDto(GribFile gribFile)
    {
        FileName = gribFile.FileName;
        MessageCount = gribFile.MessageCount;
        GribMessages = gribFile.Select(x => new GribMessageDto(x)).ToList();
    }
    public List<GribMessageDto> GribMessages { get; private set; }
}

public class GribMessageDto
{
    public DateTime Time { get; private set; }
    public int DatePointsCount { get; private set; }
    public string ShortName { get; private set; }
    public string LongName { get; private set; }
    public GribMessageDto(GribMessage gribMessage)
    {
        Time = gribMessage.Time;
        DatePointsCount = gribMessage.DataPointsCount;
        ShortName = gribMessage.ShortName;
        LongName = gribMessage.ToString();
        GribValues = gribMessage.Select(x => new GribValueDto(x)).ToList();
        GeoSpatialValues = gribMessage.GeoSpatialValues.ToList();
    }

    public List<GribValueDto> GribValues { get; set; }
    public List<GeoSpatialValue> GeoSpatialValues { get; private set; }
}
public class GribValueDto
{
    public GribValueDto(GribValue gribValue)
    {
    }
}

public class GeoSpatialValueDto
{
    public double Latitude { get; private set; }

    public double Longitude { get; private set; }

    public double Value { get; private set; }

    public GeoSpatialValueDto(GeoSpatialValue geoSpatialValue)
    {
        Latitude = geoSpatialValue.Latitude;
        Longitude = geoSpatialValue.Longitude;
        Value = geoSpatialValue.Value;
    }
}

@IdahoSixString I'm removing the log proc. It was never very helpful anyway.

@IdahoSixString Is the error the same with the beta? IIRC, I disabled the logging proc in that release, so what you're describing shouldn't happen.

This should be resolved in the latest beta 1.0.0-beta2

@IdahoSixString Should also note that your repro case does not error for me using the new release.


Choose File not responding

The ARC testing interface does not load a file if it was loaded before selecting a random task.
To replicate, perform the following twice:

Click "Random task"
Click "Choose File" and select a file (must be same file both times)

The last step should load the selected file, but instead does nothing.

@ageron maybe this is related to the recent changes?

Indeed, probably, looking into it now.

Loading the same file multiple times using the file input will only trigger a "change" event the very first time, so the following code only runs once when you load the same file over and over again:
$('.load_task').on('change', function(event) {
        loadTaskFromFile(event);
    });

This means that if the user loads a task file, then tweaks it, then tries to load it again, nothing will happen.
The best solution I could find is to clear the file input when it is clicked, and also when a random task is successfully loaded (see PR #22). I just set the file input's value to an empty string: I believe this works in all recent browsers, but I just tested with the latest Chrome and Safari.


Profiles for routing networks?

Please excuse my ignorance. Does L2TP and the OS clients support to set up profiles to only use the VPN connection for certain IP address ranges, so for example private video streaming is not routed over VPN? eduVPN supposedly supports something like this.

On Windows you can add static routes but probably not within a profile. You can also play with pushed routes with virtual DHCP or a standalone DHCP server.

试过很多这个确实来噻，注册送永久的流量的，兄弟们可以试试https://915merry.top/auth/register?code=aFk138


Fix OpenReader authentication problem with asynchronous requests (issue #850)

Fix issue #850

Not completely OK


Update WI_POST_hazard_toMaximo.json

Updates that supports the MAXAUTH header and hazard titles are now translated (selecting the english translation here).

@apbram, please review.


dateTimePicker inputprops issue

Duplicates

[X] I have searched the existing issues

Latest version

[X] I have tested the latest version

Current behavior 😯
hello  i had use placeholder for datetime picker and it didnt worked correctly i find issue in spell check in InputProps => inputProps
so the first letter should be small but its define capital
Expected behavior 🤔
No response
Steps to reproduce 🕹
Steps:

Context 🔦
No response
Your environment 🌎

`npx @mui/envinfo`
  Don't forget to mention which browser you used.
  Output from `npx @mui/envinfo` goes here.

Hello, thank you for reporting an issue, but could you please give us more context? what do you mean by spelling issue? which one is having a spelling issue is it the DateTimePicker component or TextField(since DateTimePicker can render a custom input)?


Is there a way to access the current server configuration in a task?

I'm trying to re-implement the following:
$host = config()->getHost();
Since the config() function seems to be removed, I tried to find the current alternative, but nothing I tried so far worked.

Server config now are private, you should set separate env var: ->env('host', '...').
If you still what access config, try this:
Context::get()->getServer()-> getConfiguration();

Okay, with the latter code snippet I can access the server configuration.
Simply setting and getting an env variable wouldn't work, because I need the configuration of the server which is under deployment.
What were the reasons behind removing the config() function?

What were the reasons behind removing the config() function?
Separation of concepts. I think everything accessible and server specified should be in env vars.

You can define something like this:
server('host1.domain.com')
    ->env('host', 'host1.domain.com');

server('host2.domain.com')
    ->env('host', 'host2.domain.com');

Maybe create a PR which will be setting this env vars from config on run?

That example code would be too redundant, but setting the environment vars automatically when using the server function, would solve the issue.
I'll look into it.

Take a look at: functions.php#L54

Closing this, since the discussion has moved to the pull request's page.


Documentation for GPU utilization metrics is very unclear

Qutotes from https://github.com/geopm/geopm/blob/dev/docs/source/geopm_pio_levelzero.7.rst
LEVELZERO::GPU_UTILIZATION
Utilization of all GPU engines.  Level Zero logical engines may map to the same hardware, resulting in a reduced signal range (i.e. less than 0 to 1) in some cases.  See the LevelZero Sysman Engine documentation for more info.
LEVELZERO::GPU_CORE_UTILIZATION
Utilization of the GPU Compute Engines (EUs).  Level Zero logical engines may map to the same hardware, resulting in a reduced signal range (i.e. less than 0 to 1) in some cases.  See the LevelZero Sysman Engine documentation for more info.
LEVELZERO::GPU_UNCORE_UTILIZATION
Utilization of the GPU Copy Engines.  Level Zero logical engines may map to the same hardware, resulting in a reduced signal range (i.e. less than 0 to 1) in some cases.  See the LevelZero Sysman Engine documentation for more info.
It is very unclear how to interpret these statements:

Lacks links to the supporting sysman documentation (for more info).
Under which condistions do the "logical engines map to the same hardware"?
How would a user know if this has happened.
What does "less that 0 to 1" mean, less than 0 is negative.
How is the new range determined?
One might infer that the expected value range is from 0 to 1 but this is not stated explicitly
This signal is a derivative signal, but no mention is made of the 8 sample smoothing applied to the values.

Supporting sysman docs:
https://spec.oneapi.io/level-zero/latest/sysman/api.html#zesenginegetactivity
Logical engines may map to the same hardware depending on the underlying Intel product.  There is currently no user visible indication that this has occurred.  From sysman:
" Access information about a single compute engine - this is an engine that can process compute kernels. Note that single engines may share the same underlying accelerator resources as other engines so activity of such an engine may not be indicative of the underlying resource utilization - use ZES_ENGINE_GROUP_3D_RENDER_COMPUTE_ALL for that."
Less than 0 to 1 should be "Less than 1"
The expected range is 0 to 1, but due to the corner case mentioned above some hardware could theoretically never reach 1.0.


[Azure Cognitive service for language ] API Review

New API Review meeting has been requested.
Service Name: Azure Cognitive service for language
Review Created By: Peyton Fraser
Review Date: 04/30/2024 01:00 PM PT
Release Plan:
PR:
Hero Scenarios Link: Not Provided
Core Concepts Doc Link: Not Provided
Description:
Detailed meeting information and documents provided can be accessed here
For more information that will help prepare you for this review, the requirements, and office hours, visit the documentation here

Meeting updated by Peyton Fraser
Service Name: Azure Cognitive service for language
Review Created By: Peyton Fraser
Review Date: 04/30/2024 01:00 PM PT
Release Plan:
PR:
Hero Scenarios Link: Not Provided
Core Concepts Doc Link: Not Provided
Description: Canceling this. As it's no longer needed
Detailed meeting information and documents provided can be accessed here
For more information that will help prepare you for this review, the requirements, and office hours, visit the documentation here

Cancelled by: Peyton Fraser


update robotframework core to robotframework 6

robotframework core need to be updated to robotframework 6.
dasbus integration into TML has higher priority.

Hi Cuong,
please look into this. Next Version (0.7.0) should be based on latest stable RobotFramework Core 6.
Thank you,
Thomas

develop_6.1 branch shall be used for gitlab and OSS version.

 [robotframework] update core to 6.1

this is part of <IP_ADDRESS> release


Fix typo in plugin

In the settings panel change Aifix4seccode -> AIFix4SecCode

It cannot be managed easily, thus I will close this issue as it is not vital.


EnableDeferredReferences extension don't work

var config = new ConfigurationContainer();
config.EnableDeferredReferences();
config.Type<IElement>().EnableReferences(p => p.Id);
config.Type<Section>().EnableReferences(p => p.Id);
...
config.Type<Building>().EnableReferences(p => p.Id).Create();

var serializer = config.Create();

Section have reference to building. But buildings can exists without Sections.
I keep all elements in one List.
EnableDeferredReferences was added in #87 and its not work properly.

Ah, OK.  Is it possible to get a failing test committed so I can take a look into this one?

OK I'll try to create failing test.

I've added failing test.

Cool... I went ahead and fixed it.  It will work for now, but it is not a good long-term solution.  I can see extensions being grouped together based on usage rather than just an ordered list.  It's all part of the configuration API, so maybe in v3 with a clean sweep at some point, we can fix this too. 👼

This should now be addressed.  Please let me know if there is anything further on this issue that needs to be addressed/implemented.


I want to get device imei

I didn't found it in current version.
this is the demo code
public static String getDeviceIMEI(Context context) {
        TelephonyManager tm = (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE);
        String myIMEI = tm.getDeviceId();
        if (myIMEI == null || "".equals(myIMEI)) {
            myIMEI = "999999999";
        }
        return myIMEI;
    }

See pull request #250

use react-native-imei instead it works anyway but you might have to edit a line of the code inside node-module, when you first compile if you encounter error, dont panic , see the error and remember which line, delete the line that cause you error and it is done

Duplicate of #127


Fix "Rate Us" Link in Free E-Books Page Navbar

Is there an existing issue for this?

[X] I have searched the existing issues

What happened?
Hey @anuragverma108
The issue is with the "Rate Us" link in the navbar of the Free E-Books page, which is currently non-functional. The link should direct users to the appropriate rating or feedback, allowing them to provide their reviews and ratings.
Please add the gssoc labels and I would like to work on it under GSSOC'24. Thank you!!
Record

[X] I agree to follow this project's Code of Conduct
[X] I'm a GSSOC'24 contributor
[X] I want to work on this issue

Assigned!
Make sure to attach before & after screenshots in your PR and include the issue number.
i am the project mentor you can always reach out to me for any help!
Also, please star ⭐ the repo before working on it.
Happy open-source contributing! 😊


Complete Aeroponics Prototype, Documentation

Briefly introduce the scope of the changes included in this pull request.

[x] Completed BoM
[x] Plumbing diagram
[ ] #43

[x] Resize nozzle mount hole to match

[ ] #48
[x] Real-life photos of assembly
[x] Assembly instructions
[x] Testing protocols

Testing
See this README.
Checklist
Put an X in the boxes that apply. I have:

[x] Updated relevant project documentation, including (if applicable):

[x] Bill(s) of materials (components, printed/manufactured parts; see /.github/BOM_TEMPLATES/);
[x] Assembly and testing procedures;

[x] Followed appropriate code styling and formatting;
[x] Added tests that prove my fix is effective or that my feature works;
[x] Referenced related issues;
[x] Added proper scope and status labels (i.e. Scope: Review Needed);
[x] Mentioned related review teams (i.e. @utagritech/admins);

OOP I reviewed a draft lmao😂


Merge The Given 3 Folders in VS Code Folder

Smartly copy the code of the below 3 folders:

10 VS Code Shortcuts for Faster Coding.md
5 Useful VSCode shortcuts to improve your coding speed.md
VsCode_most_useful_shortcut.md

Paste them Smartly into VS Code Shortcuts.md folder.

Plz assign this to me?

hey @AnshSinghSonkhia I have merged them in a proper way and opened a pull request kindly check.

Thanks, @Naman-X15 for solving this issue with PR #102.

Sorry @AaryanSingh0017, This issue has been solved.
Check out the other issues of this Repository.
Or create an issue on your own, then If I would feel it good, I'll Assign it to you.
For Example, you can raise an issue of some other programming code editor IDE softwares' Shortcuts, which are not available in this repo.

Hey @AaryanSingh0017,
Check Issue #105, it's for you.


Support for remarkable 2

Many thanks for this very useful script.
I wonder if you have any experience in using the new remarkable 2 with this script? I get a 401 error when trying to set it up according to the instructions in the readme.

Sadly I've only got a v1 device. That said, I expect the cloud storage API to be the same for v1 & v2. A 401 error sounds like an authentication issue. Perhaps you could try regenerating a rOneTimeCode?

Idk if this is still relevant but figured I'd share. I use this with my remarkable 2 and there have not been any problems.

I can confirm that it's working with remarkable 2.


CI: Set up a dynamic analysis test using address and leak sanitizers

There are a handful of tests we disable entirely with because they are irrelevant or just cannot be made to be clean (and that's ok).

Tests with sanitizers run slow, so we increase timeouts, and also set AA to 1 for render tests to speed them up.  We rig it so a non-matching output won't fail, and that's ok because every other CI test is checking the results; here we have no reason to believe results will differ from other tests, we just need to run with sanitizers turned on.

In testing.cmake, we rig texture tests to disable the leak sanitizer, because we can't eliminate some completely benign leaks from the texture system, and because they are called from JITed code, we don't get a clean stack trace of things that happen in OIIO and therefore we just can't enumerate the allowed exceptions. So we trust that OIIO itself tests the texture system adequately and is able to ignore the benign "leaks."

We already submitted PRs and merged the little fixes that were discovered by enabling address and leak sanitizers. This is just the final bit to turn it on for CI runs from here on out.

Signed-off-by: Larry Gritz<EMAIL_ADDRESS>

With this PR merged, we seem to now be at 100% of the OpenSSF Core Infrastructure Initiative Best Practices badge at the "passing" level.

Nice!


Patch feature/synchronizeDocumentation

Remove cobigen tutorial from 'synchronizeDocumentation' branch in the tutorials repo. Otherwise we need to ask Jan to merge it.


Get rid of settings: ['master']

Its time to get rid of settings: ['master'] in favor of friendlier term for obvious reasons.

I'm fine with that, could change it to main. Would need to support both for a time to avoid breaking end users.


Error when run TensorflowNLP._collect_intent()

I got a KeyError: 'intent' when rasa train, here is the logs:

I debugged and found that not all the trainning examples have an "intent" attribute ：

Same issue here


on wp8 Channel.uri is empty

Hi,.
I'm testing this plugin on a windows phone 8.1 and  when I call register I always get an empty uri.
Any idea?
Thanks
this is the code:
	var channelName = "XXXXXX";
	var pushNotification = window.plugins.pushNotification;
	console.log(pushNotification);

	try {
		var channelHandler = function(result){
			console.log(result);
			EMAPP.Channel = result;
			//alert(result);
		};

		var channelUriHandler = function(result){
			console.log(result);
			EMAPP.Channel = result;
			//alert(result);
		};

		var errorHandler = function(error){
			alert(error);
		};

		if (device.platform == "Win32NT")
		{
				pushNotification.register(channelHandler, errorHandler,
						{
								"channelName": channelName,
								//"ecb": "onNotificationWP8",
								"uccb": "channelUriHandler",
								"errcb": "jsonErrorHandler"
						});
		}

I have the same issue on an application that was working correctly a few weeks ago.
I'm trying to get a valid uri since yesterday wihout succes

Hi Luca, I am using a workaround. I simply retry to register the channel if channeluri is empty, until it gets something.
It usually gets a channel uri at the second try.

Anyone make any progress on this?
It looks like the PushChannel_ChannelUriUpdated is never called back?
I've isolated the code into it's own project and get the same result.
I also get the same result w/the sample code from microsoft.
The callback never seems to get called... it seems to have broken w/the 8.1 update? (I have a nokia 928 as a test device)

I have the same problem! I even tried your code above. Every call to "register" is successful, and it calls back "channelHandler". But with empty URI. No matter how many times I call it. (I tried 500+ times).
The other interesting thing is that "register" is successful even if the phone is not connected to 4G or WiFi. I assume it needs to talk to Microsoft cloud before it give me the URI, but it does not look like it is talking to anyone. I took the SIM card out of the phone, disabled WiFi - still success (with empty URI). Even in airplane mode.
Anyone got it to work?..
Thanks!
Nokia Lumia 521 Windows Phone 8.1
PushPlugin 2.4.0
PhoneGap 4.2.0-0.23.0
Visual Studio Express 2013 for Windows

I am getting the same thing, can anyone suggest a solution ?

Me too. Someone has a solution? Thanks

@marcelotq
The simple solution is - $interval to fetch the uri until success then cancel the interval.

Thanks MingxuanLi but how I do this? Can you give me a example? Thanks

@marcelotq
I am using angular js. Below is the pseudo code:
var fetch_uri = function(){
// Fetch Uri code goes here
   // if uri found
   if(uri.length > 0){
        $interval.cancel(get_uri);
   }

};
var get_uri = $interval(fetch_uri, 500);

Ok MingxuanLi, thanks very much my friend.
Regards,
Marcelo

This issue has been fixed now.

Hi , I already try it out.One of solution is  Let parameter with "".
EX:
Wrong:
"channelName": channelName,
Correct:
"channelName": "channelName",

@shinryuken0505 solution didn't work for me:
'this.pushNotification.register(channelHandler, errorHandler, {
"channelName": "MyPushChannel",
"ecb": "onNotificationWP8",
"uccb": "channelHandler",
"errcb": "jsonErrorHandler"
});'

@ricardovigatti  Here's my ok code...Just like yours.
pushNotification.register(
channelHandler,
errorHandler,
{
"channelName": "WindowChannel",
"ecb": "onNotificationWP8",
"uccb": "channelHandler",
"errcb": "jsonErrorHandler"
});
Maybe problem is in another code !?

Yea, i think it's something related to MPNS service itself.


[stable/sentry] Web Service annotations injected twice

Describe the bug
The Sentry Web Service annotations are injected twice. Once here and another time here.
Version of Helm and Kubernetes:
Kubernetes: v1.16.3
Helm Client: v2.15.1
Helm Server: v2.15.1
Which chart:
stable/sentry v3.1.5
What happened:
Annotations are listed twice in the Service manifest.
What you expected to happen:
Have a single annotations declaration in the Service manifest.
How to reproduce it (as minimally and precisely as possible):
values.yaml:
service:
  annotations:
    service.beta.kubernetes.io/azure-load-balancer-internal: "true"

helm install --wait stable/sentry -f values.yaml --dry-run --debug
Anything else we need to know:

Go away Stale bot


updated the JS HTML and CSS

Updated the link to the CSS, styled the html, updated the JS code to display the loading function on the screen. Updated the JS to display an image of the book/ movie in a black background with a semi transparent white background. The name of the movie is displayed bold and below is the name of the author. Added function to the image to re-route you to the source of the book to read, download, borrow or purchase the audio for the book.
The JS was updated to display not movie or books found if there is no data in that genre.

Updated the link to the CSS, styled the html, updated the JS code to display the loading function on the screen. Updated the JS to display an image of the book/ movie in a black background with a semi transparent white background. The name of the movie is displayed bold and below is the name of the author. Added function to the image to re-route you to the source of the book to read, download, borrow or purchase the audio for the book.
The JS was updated to display not movie or books found if there is no data in that genre.


update v4 blog contentTypes and seeds

What does it do?

Updates Article ContentType to use Dynamic Zones and adjusts the seed script accordingly
Adds an "About" single type that also uses Dynamic Zones

TODO

[ ] Add SEO plugin + seed data for the SEO components
[ ] Improve the seed content?

Could you please add a siteDescription on the "global" single type? It would be nice for the UI I'm building

Could you also set a character limit of 80 on the articles' descriptions?

Could you also add alternativeText to images?

Actually, could we only have images in the slider component?
It's hard to deal with videos in a carousel on the frontend. And I think having the media component is enough to showcase videos

Also I think the "global" content is imported as a draft


feat: check context of union types

Closes #675
Summary of Changes
Union types are now only allowed as parameters of annotations, classes, and functions. This way, no values with a union type appear inside pipelines or segments.

:tada: This PR is included in version 0.2.0 :tada:
The release is available on:

Visual Studio Marketplace
GitHub release

Your semantic-release bot :package::rocket:


[FR] Add the ability for an extension to be compiled to a .o but not linked into a .so

What's the problem this feature will solve?
I'm attempting to build a single extension module that's a combination of Rust code and CFFI-generated C code. This is described in some detail in https://github.com/pyca/cryptography/issues/6634
But in short, the first objective is to get a .o with the compiled C code, which I will then be responsible for linking into the Rust extension module.
Unfortunately setuptools/distutils doesn't have an easy way to do only this. The core logic that compiles things to .o files and then links them is at: https://github.com/pypa/setuptools/blob/main/setuptools/_distutils/command/build_ext.py#L487-L561 Removing the link_shared_object invocation can only be done by copy-pasting the majority of this code.
Describe the solution you'd like
An option on Extension, which is then used in build_ext, which instructs setuptools/distutils to compile the .o files, but not build a .so (and not try to install the .so).
Alternative Solutions
The alternate solution is to override build_ext with a copy-paste of the majority of build_extension's code. This is sub-optimal due to the large amounts of copy-paste required, and also because of the complexity of introducing it into the right place in the class heirarchy, because cffi itself relies on overriding build_ext (https://foss.heptapod.net/pypy/cffi/-/blob/branch/default/cffi/setuptools_ext.py#L145)
Additional context
No response
Code of Conduct

[X] I agree to follow the PSF Code of Conduct

Another possible option might be the ability to produce a .a file (static archive) instead of a .so.

FWIW, building a stand-alone or static lib is one of the way that NumPy distutils build_clib.py extends distutils.


Latest version of Box2d

Author didn't have time to create a proper release (see https://github.com/erincatto/Box2D/issues/478) and he recomend use the latest commit in master as stable.
I updated package with https://github.com/conan-community/conan-box2d/pull/4#issuecomment-546216712
Now it is the package on specific commit.

Here is the issue https://github.com/conan-community/community/issues/288


Karavan Space - Should parse URIs with only parameters

This yaml should be possible to copy into code tab in karavan space, and then flip to design view
- route:
    id: myRoute
    from:
      uri: seda
      parameters:
        name: foo
        size: 1234
        multipleConsumers: true
      steps:
        - transform:
            id: transform
            simple:
              expression: "Hello ${body}"
        - to:
            id: myMock
            uri: mock
            parameters:
              name: result
              retainFirst: 5
              failFast: true

karavan-space is still on 3.20.1


Introduce the ability to add multiple wireless network configurations

Related to https://github.com/nerves-project/nerves_network/issues/72.
Add add_network/2, remove_all_networks/1, and reassociate/1
functions to give more fine grained control over the configuration and
activation process while shielding callers from implementation details,
and reworks set_network/2 to use the new methods.
Add documentation for :priority which is useful when configuring
Multiple networks.

What are the chances of getting this merged into master soon?

@ConnorRigby

Sorry for taking so long to get this merged. Looks great to me.


Startup Emacs on Windows10 with org-roam company-org-roam hangs / won't open

Describe the bug

Hard to describe since Emacs won't even fully start and debug info is not showing.
I have the most recent versions of org-roam on Windows10 with Emacs 27.0.91

Thats my Messages Buffer:
Building straight...done
Building org-plus-contrib...done
Loading c:/Users/JochenBurkhard/iCloudDrive/iCloud~com~appsonthemove~beorg/.emacs.d/config.el (source)...
Unicode Fonts - Mapping Unicode Blocks in fontset-default ... done
Unicode Fonts - Mapping Overrides in fontset-default ... done
Unicode Fonts - Mapping Unicode Blocks in fontset-startup ... done
Unicode Fonts - Mapping Overrides in fontset-startup ... done
Unicode Fonts - Mapping Unicode Blocks in fontset-standard ... done
Unicode Fonts - Mapping Overrides in fontset-standard ... done
[yas] Prepared just-in-time loading of snippets successfully.
Building company-org-roam...
Building company-org-roam → Building company...done
Building company-org-roam → Building dash...done
Building company-org-roam → Building org-roam...
Building company-org-roam → Building org-roam → Building f...
Building company-org-roam → Building org-roam → Building f → Building s...done
Building company-org-roam → Building org-roam → Building f...done
Building company-org-roam → Building org-roam → Building org...done
Building company-org-roam → Building org-roam → Building emacsql...done
Building company-org-roam → Building org-roam → Building emacsql-sqlite...done
Building company-org-roam → Building org-roam...done
Building company-org-roam...done
Loading c:/Users/JochenBurkhard/iCloudDrive/iCloud~com~appsonthemove~beorg/.emacs.d/config.el (source)...done
Loaded c:/Users/JochenBurkhard/iCloudDrive/iCloud~com~appsonthemove~beorg/.emacs.d/config.el
Cleaning up the recentf list...done (0 removed)
custom-initialize-reset: EmacSQL had an unhandled condition: "near line 13: database is locked" Ignore, since I have to start a Emacs twice (with one instance still running to see anything but an empty Emacs-Window.
Package cl is deprecated
Loading c:/Users/JochenBurkhard/iCloudDrive/iCloud~com~appsonthemove~beorg/.emacs.d/config.el (source)...
[yas] Prepared just-in-time loading of snippets successfully.
Loading c:/Users/JochenBurkhard/iCloudDrive/iCloud~com~appsonthemove~beorg/.emacs.d/config.el (source)...done
Loaded c:/Users/JochenBurkhard/iCloudDrive/iCloud~com~appsonthemove~beorg/.emacs.d/config.el
To Reproduce
Steps to reproduce the behavior:

Start Emacs
Wait indefinitely
Start Emacs again
Have 2 Windows of Emacs with the one "Working" incapable to use sqlite3 meaning org-roam is not at all usable

Expected behavior
A clear and concise description of what you expected to happen.
Screenshots
If applicable, add screenshots to help explain your problem.
Desktop (please complete the following information):

OS: [e.g. iOS]
Browser [e.g. chrome, safari]
Version [e.g. 22]

Additional context
Add any other context about the problem here.
** Dendron Log file**
Please attach the output of >Dev:Dendron: Open Logs here

Wrong repository. SOORRY.


apt: Never install silently from testing

This has caused too many issues, and I just replaced the last package that was pulling in stretch's libstdc++6, creating ABI breakage.
It is still possible to install things from stretch, by explicitely listing those packages in a pin.
The difference is that a package that doesn't exist in jessie or jessie-backports won't be silently installed from stretch anymore.

@lrvick Please write down a gazillion times “merging implies deploying”.


Changes to support printables

In order to be able to support using this library for generating printables, I have introduced webpack to this project and created a new npm run build:prod that generates the bundled project.
11bca44
Webpack is used with the options output.libraryTarget= "var" and  output.library= "Graphy" to enable this script to be included in a script tag and used in our backend generated printables.
6c3195b
Linting changes only
9906806
Include options to make the graph not able to be interacted with (defaults to interactable for backwards compat) and introduces an empty graph type that only shows an empty coordinate plane.

@stackptr I am tagging you on review of this because you were the one to research changes needed to support graphin questions in printables

These changes seem sensible to me. Is there any test plan defined for this PR?

Good question, there doesn't seem to be a great way to test this here considering I'd have to add a brand new test suite 😢 . I have been using it successfully in fancy-api so I am pretty confident that the changes are good though.


Changed FileSharing.test.ts to use fake adapter

What

Changes UI tests in FileSharing.test.ts to use fake adapter.
Why

https://skype.visualstudio.com/SPOOL/_workitems/edit/2845235
How Tested

Ran UI tests locally and on CI
Compared test time duration of FileSharing.test.ts using real adapters vs fake adapters and documented results here
https://skype.visualstudio.com/SPOOL/_workitems/edit/2845237
Process & policy checklist

[ ] I have updated the project documentation to reflect my changes if necessary.
[ ] I have read the CONTRIBUTING documentation.

Is this a breaking change?

[ ] This change causes current functionality to break.

I have substantive comments on this one. Feel free to schedule some time to talk IRL.

Hey @prprabhu-ms, I addressed most of the comments and am now able import types in the test code by upgrading playwright. Please take another look.


remote_styles: retry getting best family name

Description
Apologies for opening #4825 and not thoroughly testing it. I just tested this new implementation on my local version of Libre Franklin and it's working correctly.
Checklist

[ ] update CHANGELOG.md
[ ] wait for the tests to pass
[ ] request a review

@felipesanches Just reran the CI and all is good.


Smoke test to ensure Extension loads in other localizations

Follows from spike #5447. Steps for UI tests:

Download Chinese (or other locale) specific extension (`vsix)
Install the vsix
Change locale in locale.json. Can do that in two ways:

Command palette -> Configure Display Language . Select your locale. (It should appear there)
Check this for location of the file, and edit the file.

Reload VS Code
Now VS Code is using chinese locale
Open python file
Confirm status bar appears on bottom left

is this still needed? @paulacamargo25

Closing this. We don't handle localization directly any more.


📝 Correction | Njalla provider blocks port 25

Description
We should note that the provider Njalla blocks port 25 traffic, and has other restrictions.  Official response from them below:

Why I am making the suggestion
Because people should be aware of this.
My connection with the software
I'm a researcher setting up servers.

[X] I will keep the issue up-to-date if something I have said changes or I remember a connection with the software.

Related to research with https://github.com/privacytools/privacytools.io/issues/1919

good catch, ill try and make a PR for this later.

I think this is standard behaviour in Nordic countries and may affect other providers too.


Stripe payment module finished?

Hi, Anand, does the stripe module still under development?
Any timeframe for the finish point where we can checkout this function yet?
Thanks a lot.

This is now published. I'll add some docs soon!

This is now published. I'll add some docs soon!


parse_mjcf doesn't parse the freejoint tag

It seems that the parse_mjcf function in v1.0.0-beta.2 skips the freejoint tag when parsing the mjcf file.

Hi @Manchewable,
Indeed, the freejoint tag is currently not supported, only <joint type="free" ... /> is being parsed. We will add support for it in the next version.
Thanks,
Eric


Strange error in BooPickle perf tests

[error] D:\work\boopickle\perftests\shared\src\main\scala\boopickle\perftests\TestData.scala:8: type mismatch;
[error]  found   : Some[A]
[error]  required: Option[pushka.HasDefault.Default[String]]
[error] @pushka case class Book(id: String, name: String, author: String, publicationYear: Int)
[error]  ^

Reported by @ochrons


Set version 0.3.0

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 66.00%. Comparing base (066d258) to head (71e05eb).

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #179   +/-   ##
=======================================
  Coverage   66.00%   66.00%
=======================================
  Files          14       14
  Lines         653      653
=======================================
  Hits          431      431
  Misses        198      198
  Partials       24       24

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


Add nodeRestart via SSH experiment

This patch add experiment to restart host via the SSH.
So the example ChaosEngine would be:
apiVersion: litmuschaos.io/v1alpha1
kind: ChaosEngine
metadata:
  name: nginx-chaos-restart
spec:
  auxiliaryAppInfo: ""
  appinfo:
    appns: 'kube-system'
    applabel: 'tier=control-plane'
    appkind: 'deployment'
  annotationCheck: 'false'
  engineState: 'active'
  chaosServiceAccount: chaos-admin
  monitoring: false
  jobCleanUpPolicy: 'retain'
  experiments:
    - name: node-restart
      spec:
        components:
          env:
            - name: SSH_USER
              value: 'docker'

Example ChaosExperiment:
apiVersion: litmuschaos.io/v1alpha1
description:
  message: |
    Restart node
kind: ChaosExperiment
metadata:
  name: node-restart
  version: 0.1.21
spec:
  definition:
    scope: Cluster
    permissions:
      - apiGroups:
          - ""
          - "batch"
          - "apps"
          - "litmuschaos.io"
        resources:
          - "jobs"
          - "pods"
          - "pods/log"
          - "events"
          - "chaosengines"
          - "chaosexperiments"
          - "chaosresults"
        verbs:
          - "create"
          - "list"
          - "get"
          - "patch"
          - "update"
          - "delete"
      - apiGroups:
          - ""
        resources:
          - "nodes"
        verbs:
          - "get"
          - "list"
    image: "litmuschaos/go-runner:ci"
    imagePullPolicy: Never
    args:
    - -c
    - ./experiments -name node-restart
    command:
    - /bin/bash
    env:
    - name: SSH_USER
      value: ''

    # PROVIDE THE LIB HERE
    # ONLY LITMUS SUPPORTED
    - name: LIB
      value: 'litmus'

    # provide lib image
    - name: LIB_IMAGE
      value: 'litmuschaos/go-runner:ci'

    labels:
      name: node-restart

In order to run the test properly user need to create secret with private key as follows:
kubectl create secret generic id-rsa --from-file=ssh-privatekey=/path/to/id_rsa

Looks like some cool changes have gone in @machacekondra !! Thank you. Do you feel we need to remove the WIP label on it?

Do you feel we need to remove the WIP label on it?

Yes please, thank you!. The PR is ready for review.


feat: Scale labels auto-import, annotation break after finishing a project

This PR aims to solve 2 things: (1) adding an automatic import of scale labels for affective annotation project, (2) creating an annotation break mechanism after finishing a project.
The annotation break is implemented inside the annotatin page, in method async updateProgress(). This method is normally used for updating the annotation progress bar. The progress bar increases each time a text has been marked as done / confirmed, until eventually it reaches 100%. I added some code to check if there is no more text to annotate, and if yes then set the restingEndTime (calculated as current datetime plus 5 minutes) and redirect to project list page, on which a message will be shown.
Notably, the resting period is currently hard-coded as 5 minutes from the moment the user marked the last text as done. Later we can add an option to variably set how many minutes to rest, but for now I think 5 minutes is ok.
Scale labels auto-import
What's changed:

frontend/pages/projects/create.vue : Add the automatic import of scale labels file based on the mode after project creation

Annotation break after finishing a project
What's changed:

frontend/package.json : Added vuex-persistedstate dependency, which is needed to prevent losing stored data upon refresh.
frontend/yarn.lock : Changed due to adding vuex-persistedstate.
frontend/nuxt.config.js : Registered the new plugin persistedState.client.js.
frontend/store/auth.js : Added restingEndTime to the state, which is for storing the end time of the resting period as a datetime string.
frontend/pages/projects/index.vue : Added a check if current time is greater than restingEndTime. If not, then show RestingPeriodModal.
frontend/pages/projects/_id/affective-annotation/index.vue : Modified method async updateProgress(), it now checks if all texts have been confirmed, and if yes then it will set the resting period and redirect the user to the project list page. Also, added a similar mechanism of checking restingEndTime in async created() to prevent user jumping straight into the annotation page by typing the url.
frontend/i18n/* : Add translations for the message in the resting modal

What's new:

frontend/plugins/persistedState.client.js : A plugin for making all data in vuex store persistent.
frontend/components/utils/RestingPeriodModal.vue : A modal that is shown full-screen when user should be in resting period.

Hello, thank you for your great idea of break after finishing 1 project! I am checking but unfortunately, I am having 1 issue when compile the frontend
Failed to compile with 1 errors               friendly-errors 11:37:55

This dependency was not found:                        friendly-errors 11:37:55
                                                      friendly-errors 11:37:55
* vuex-persistedstate in ./plugins/persistedState.client.js

Can you check it please?

Hello, thank you for your great idea of break after finishing 1 project! I am checking but unfortunately, I am having 1 issue when compile the frontend
Failed to compile with 1 errors               friendly-errors 11:37:55

This dependency was not found:                        friendly-errors 11:37:55
                                                      friendly-errors 11:37:55
* vuex-persistedstate in ./plugins/persistedState.client.js

Can you check it please?

Ah yes, you need to run yarn install before running yarn dev, due to the added dependency. There was also another error because the yarn lock file somehow changed one of the urls from https:// to git:// but I have fixed it too in a recent commit. 😅

Hi all, I recently added the translations for the resting message. I also added a logout button in the full-screen modal, because I think there can be a case when a user has finished their work hour for the day and want to simply logout. XD
Short demo:

Thank you for the great idea XD Unfortunately being a curious person I am, I tried going to the annotation page by URL and it appears that I can still annotate and not being redirected to the modal XD    Or does this case just happen in my machine?

Thank you for the great idea XD Unfortunately being a curious person I am, I tried going to the annotation page by URL and it appears that I can still annotate and not being redirected to the modal XD Or does this case just happen in my machine?

oh really 0_0 i thought it should work because the code is checked in created(), and i think i have tested it too yesterday..... but anything can go wrong with doccano so i will check it once more XD XD

Thank you for the great idea XD Unfortunately being a curious person I am, I tried going to the annotation page by URL and it appears that I can still annotate and not being redirected to the modal XD Or does this case just happen in my machine?
Edit: forgot to comment about the code As for the code, good job! My comment is just to group the code about showing the modal. As for the modal, the good approach would be to use the v-model to show it instead of v-if, but this approach works so I think it's fine.

oh okay, I see the problem. the user can still go to the annotation page by entering the url manually.... here the annotation inputs are not displayed, so they can't actually continue annotating, but still ideally the modal should be shown. I will try to fix it.

Thank you for the great idea XD Unfortunately being a curious person I am, I tried going to the annotation page by URL and it appears that I can still annotate and not being redirected to the modal XD Or does this case just happen in my machine?
Edit: forgot to comment about the code As for the code, good job! My comment is just to group the code about showing the modal. As for the modal, the good approach would be to use the v-model to show it instead of v-if, but this approach works so I think it's fine.

Hi, I have fixed the issue. The problem was the modal was placed layout-text so apparently it was rendered 'below' the annotation page. Now I think it should work. XD Would you please check again?
About the grouping, I have refactored the code a bit and put the code for showing the modal in a method. And for the v-if, because I think the modal should only be rendered only once per page load, I think it ok (?) because I was thinking v-model and v-show are for components that need to be toggled frequently (?)


Folder select menu can be hidden by clicking on the app, thus locking the GUI until it is discovered

Clicking on any Folder icon opens a selection menu which can be sent behind(?)/hidden from the user and locking the GUI until it s closed or cancelled or used and OK'd.  Suggest a beep when clicking the locked GUI to indicate it is not unresponsive.  An error message saying "please select a folder before proceeding" or just bringing it back to the top would be best.

normal windows focus behavior


Vuetify

I created a new project using vue-cli, installed vuetify plugin and vue-cli-plugin-vite. When I run the project with npm run vite, Vuetify components are not recognized.
The browser console is filled with error messages like this:
vue.runtime.esm.js:619 [Vue warn]: Unknown custom element: <v-app> - did you register the component correctly? For recursive components, make sure to provide the "name" option.

found in

---> <App>
       <Root>

Here's my package.json
{
  "name": "test",
  "version": "0.1.0",
  "private": true,
  "scripts": {
    "serve": "vue-cli-service serve",
    "build": "vue-cli-service build",
    "lint": "vue-cli-service lint",
    "vite": "node ./bin/vite"
  },
  "dependencies": {
    "core-js": "^3.6.5",
    "vue": "^2.6.11",
    "vuetify": "^2.4.0"
  },
  "devDependencies": {
    "@vue/cli-plugin-babel": "~4.5.0",
    "@vue/cli-plugin-eslint": "~4.5.0",
    "@vue/cli-service": "~4.5.0",
    "babel-eslint": "^10.1.0",
    "eslint": "^6.7.2",
    "eslint-plugin-vue": "^6.2.2",
    "sass": "^1.32.0",
    "sass-loader": "^10.0.0",
    "vue-cli-plugin-vite": "~0.3.3",
    "vue-cli-plugin-vuetify": "~2.3.0",
    "vue-template-compiler": "^2.6.11",
    "vuetify-loader": "^1.7.0"
  },
  "eslintConfig": {
    "root": true,
    "env": {
      "node": true
    },
    "extends": [
      "plugin:vue/essential",
      "eslint:recommended"
    ],
    "parserOptions": {
      "parser": "babel-eslint"
    },
    "rules": {}
  },
  "browserslist": [
    "> 1%",
    "last 2 versions",
    "not dead"
  ]
}

@n0n3br OK. I will figure it out.

@n0n3br It is now the issue of this plugin, vuetify not support vite maybe https://github.com/vitejs/vite/issues/305.
you can try some approch of that issue mentioned.
BTW. vue-cli-plugin-vuetify inject code import vue without .vue ext is not support (src/components/HelloWorld)

I managed to make it work importing individual components in the vuetify.js file in plugins folder, like this:
import Vue from "vue";

import Vuetify, { VApp, VMain, VRow, VCol } from "vuetify/lib";

Vue.use(Vuetify, { components: { VApp, VMain, VRow, VCol } });

export default new Vuetify({});

@n0n3br It is now the issue of this plugin, vuetify not support vite maybe vitejs/vite#305.
you can try some approch of that issue mentioned.
BTW. vue-cli-plugin-vuetify injected code import vue without .vue ext is not support (src/components/HelloWorld)
also vuetifyjs/vuetify#7927

I just tried the plugin with Vuetify 3 Alpha, and it's working good... So, just have to wait for their major vuetify3 release...
Thanks again for this amazing plugin... It's a shame vue-cli has abandoned considering roll-up as an additional alternative to webpack https://github.com/vuejs/vue-cli/issues/5098... Looks like your plugin can fill up that gap to a great extend and help with eventual migration to Vite..
But, I wonder with vue-cli sticking to webpack, does that mean there won't be an Vite-based vue-cli and we have to manually setup everything when going with Vite?

@akkayy  Thank you.
An eject command will be provided by this plugin to remove webpack deps and code and setup vite deps and config for the project. If you use vue-cli-plugin-vite, you use really vite and dont warried about it.
Also, vue-cli based on vite is the future, I will focus on(and push) it.
Recently first-class jest support for vite and some plugin like vite-plugin-chekcer and vite-plugin-eslint is out. It is much closer to the future(compat with vue-cli).

Also, vue-cli based on vite is the future, I will focus on(and push) it.

Goosebumps :-) Thanks again!


What's with hammering port 1900.

What is with ugC hammering port 1900. I have set the media router to disabled and turned off "hide local ip with mDNS". I still get literally hundreds of broadcasts a day while chrome is open.

Port 1900 is SSDP, which underlies UPnP. I think they're separate from mDNS and Media Router, but we're going to need more info to know what's happening.

What do you want to know? I have the latest dev build on ubuntu 18.0.4. I have set the flags to not load media router.... interestingly the "cast" menu still appears and this has been a common thing through the versions. I read it was supposed to go away if you set that flag.
I also disabled hide webrtc behind MDNs hostnames. Couldn't find any other relevant flags.
I have a firewall and blocked port 1900 but keep getting denials on it every few minutes when chromium is open. I do not see what it's doing on windows over time but I also blocked port 1900 as it tries to connect on open.

Well the easiest way to know what's happening is to dig through the source code to see what's sending SSDP. The Cast menu behavior you described might be related.

Maybe related to what's left of cloud print? I will try out https://www.vastorigins.com/2019/01/disable-mdns-and-ssdp-discovery-in.html and see if that helps.
The cast thing has been happening since at least 67. I don't know how this works on regular chrome since I've never installed it.

I've also observed this behavior starting from version 80.0.3987.100 on macOS, see also my comment in the respective PR https://github.com/Eloston/ungoogled-chromium/pull/934#issuecomment-586530728
Maybe something introduced in that version or in the changes of the patches can give a hint what is causing it.

Did some investigation. Set policies in /etc/chromium/policies/managed
enablemediarouter - turned off the cast button and warned "some settings are managed by your organization but the connections continued.
BTW, the requests happen twice every 2 minutes.
Then I disabled the cloud print proxy "cloudprintproxyenabled" and the requests have stopped. You can also select what types of printer cloud print uses... by default it shares your local printers with google! Just wow.

Could this cloudprintproxy be disabled any other way, like flags?

I only see: #enable-cloud-printer-handler in flags, try it and see.

I only see: #enable-cloud-printer-handler in flags, try it and see.

Given its description it is some other feature.

Then I disabled the cloud print proxy "cloudprintproxyenabled" and the requests have stopped.

So maybe this is Cloud Print related? That feature is entirely Google-dependent, so we should patch that out if this is the cause.

100% the cause. I was surprised it never got patched out. Shouldn't the same go for sign in? Wouldn't the URLs to try be al asdfklj8sd.com?

I was surprised it never got patched out.

Usually it's easier to upgrade our existing code than scan through the commit log between major versions, so we're bound to miss changes like these. At the very least, domain substitution and our existing changes makes it very unlikely that it would share your data with Google.

Shouldn't the same go for sign in?

Sign-in has been patched out a while ago; could you clarify what you mean?

Seeing the menus for it. I usually set the flag to hide avatar but I assumed it did something and failed when you tried.

I am still getting requests on port 1900 even with the printing disabled!

Log has been empty here. I have propagated the policies across all my machines.

I think I figured this one out.  The DIAL registry has it's own timer set to send out SSDP broadcasts every two minutes.  It does this even if nothing else is using it to broadcast (like casting or cloud printing).
I'll submit a PR in a bit that addresses this and has been working well for me.  Please give it shot and let me know if it clears up the network spam for you.
I don't have anything I can cast to, so if you have one it would be a good idea to test that out and make sure it still functions properly.  There will still be an SSDP broadcast burst when clicking "Cast..." in the menu of course.


new(tests): migrate CALLF execution tests

🗒 Description

🔗 Related Issues

✅ Checklist

[x] All: Set appropriate labels for the changes.
[ ] All: Considered squashing commits to improve commit history.
[ ] All: Added an entry to CHANGELOG.md.
[ ] All: Considered updating the online docs in the ./docs/ directory.
[x] Tests: All converted JSON/YML tests from ethereum/tests have been added to converted-ethereum-tests.txt.
[x] Tests: A PR with removal of converted JSON/YML tests from ethereum/tests have been opened: https://github.com/ethereum/tests/pull/1410.
[ ] Tests: Included the type and version of evm t8n tool used to locally execute test cases:  e.g., ref with commit hash or geth 1.13.1-stable-3f40e65.
[ ] Tests: Ran mkdocs serve locally and verified the auto-generated docs for new tests in the Test Case Reference are correctly formatted.

No idea what the CI failure is.

No idea what the CI failure is.

https://github.com/ethereum/execution-spec-tests/pull/920 fixes this

Rebased. Can we merge this?


Fixed a spelling mistake in the image

misspelt the word queue 👎

@mustafa-x I can't find this in any articles. I'm going to investigate further. Are you sure this ins't a screen capture from the MDL site?

I just noticed that you're the person who committed this originally.

Hi Joe, the spelling mistake was in the image, I just updated the image with the correct spelling :)


[stylelint-plugin] Unknown rule shopify/content-no-strings

Overview
I was casually writing code and stumbled upon this linting error. Not sure if it's a bug, but looks like one 🤔
Unknown rule shopify/content-no-strings. stylelint(shopify/content-no-strings)

Snippet from the screenshot:
  const imageMarkup = () => {
    let imageStyle = null;
    if (card.image && !selected) {
      imageStyle = {
        backgroundSize: 'cover',
        backgroundPosition: '50%',
        backgroundImage: `url(${card.image.src})`,
      };
    } else if (card.image && selected) {
      imageStyle = {
        backgroundSize: '70%',
        backgroundPosition: '50%',
        backgroundRepeat: 'no-repeat',
        backgroundImage: `url(${card.image.src})`,
      };
    } else {
      imageStyle = undefined;
    }

    return <div className={styles.Image} style={imageStyle} />;
  };

Consuming repo

What repo were you working in when this issue occurred?

Shopify/email
Checklist

[x] Please delete the labels section before submitting your issue
[x] I have described this issue in a way that is actionable (if possible)

The rule appears to be for non-localized content values in CSS. See test. Your screenshot doesn't appear to have any content key in it. Was it a caching issue in VSCode or are you still experiencing this problem?

Closing this for now. If this is a still a problem feel free to re-open and clarify. Thanks!


chore: add solidity verifier workflow

Description

Problem*

Resolves
Summary*

Documentation

[ ] This PR requires documentation updates when merged.

[ ] I will submit a noir-lang/docs PR.

[ ] I will request for and support Dev Rel's help in documenting this PR.

Additional Context

PR Checklist*

[ ] I have tested the changes locally.
[ ] I have formatted the changes with Prettier and/or cargo fmt on default settings.

There's a bunch of changes which need to be reverted due to experiementing in CI. We can clean up the actual testing flow in a followup PR.

Recursion test is failing but I think that's out of scope for this ticket


dyld error with globally installed libvps on macos

I am using sharp inside an electronjs app, macos 13.0, x64.
When I install libvips globally using homebrew, and then install sharp, my electronjs app crashes when sharp is utilised (the window just turns completely white), with the following message dyld[74585]: missing symbol called
When I uninstall libvips globally and then uninstall/reinstall sharp, everything is fine.

There's not a lot to go on here, but please check you're using the latest versions of both Electron and sharp. Please also check that all of your brew-installed dependencies are latest (using something like brew update && brew upgrade).

Does vips work at the command line?
Does sharp linked against the global libvips work with Node.js (i.e. without Electron)?
Is this an Intel or ARM machine? Are you definitely using the same architecture everywhere?

Thanks for getting back to me! So....

Updated Electron and all brew dependencies: error persists
vips works at command line
sharp linked against the global libvips works with Node.js (without Electron)
intel machine

Ill try running sharp (linked against the global libvips) in barebones electronjs app and see how i get on...

@nirbhasa Were you able to make any progress with this?

Closing due to inactivity but please feel free to reopen with more details if further help is required.

Certainly – thanks for following up. I had to push this to backburner but hopefully I can look at it again at some point
From: Lovell Fuller
Sent: Friday, March 10, 2023 2:36 PM
To: lovell/sharp
Cc: Nirbhasa; Mention
Subject: Re: [lovell/sharp] dyld error with globally installed libvps on macos(Issue #3528)
Closing due to inactivity but please feel free to reopen with more details if further help is required.
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you were mentioned.Message ID: @.***>

I'm seeing this same (or very similar) issue on my machine as well. It certainly seems to be related to electron-builder in my case. Here's the scenario I'm running into:
If I uninstall vips globally (with brew uninstall vips) and clear out my node_modules folder, then run npm install, everything works — besides the fact that I don't have HEIC support, which is why I need to compile against a global version of vips.
If I then install vips globally (with brew install vips), and clear out my node_modules again, and run npm install (which runs electron-builder as a post-install step), I get the following error when attempting to run a script that utilizes sharp:
dyld: lazy symbol binding failed: Symbol not found: _g_once_impl
  Referenced from: /Users/dev/Projects/smp/node_modules/sharp/build/Release/sharp-darwin-x64.node
  Expected in: /usr/local/lib/libvips-cpp.42.dylib

dyld: Symbol not found: _g_once_impl
  Referenced from: /Users/dev/Projects/smp/node_modules/sharp/build/Release/sharp-darwin-x64.node
  Expected in: /usr/local/lib/libvips-cpp.42.dylib

Abort trap: 6

Interestingly, I found a related comment: https://github.com/lovell/sharp/issues/2966#issuecomment-962585153 in a different issue that indicates electron-builder might not play nicely with sharp in some cases. So, to test this theory, I ran   rm -rf node_modules/sharp && npm install sharp after running npm install (i.e., after electron-builder has run). At this point, my script is running properly without any errors and WITH HEIC support.
Unfortunately, this "workaround" (rm -rf node_modules/sharp && npm install sharp after npm install) only seems to work on my development environment. I can't find any way to prevent electron-builder from running when I ultimately run electron-builder to create the distributable Electron package.
Hopefully this helps track down the root cause. Fortunately, I can perform development locally, however, as I'm unable to build any production artifacts, this is a bit of a blocker for me at the moment.
Thanks!


Differences from https://github.com/michalochman/react-pixi-fiber?

How does this module compare with https://github.com/michalochman/react-pixi-fiber? Implementation appears almost identical. Not sure which was first or if one inspired the other.
Thanks

Hi @unformatt,
This repo started as a private project and I was inspired by other reconcilers (as I was and still am learning about how reconcilers work). I did review the codebase of multiple React PIXI implementations and at that time they all seem to lack in features, performance, testing, and more.. and I believed I could do better.
TLDR; how this lib compares to his (and others)? They both serve the same goal, which is augmenting the imperative PIXI API into the React paradigm. I haven't been watching his progress on the project, but at that time it didn't support events, props handling could be better and no way to access the PIXI.Application via render props or a higher order component.  I tried to be as complete as can be to included a bunch of PIXI components right out of the box (Sprite, Container, Rope, Mesh, TilingSprite, Text, BitmapText, etc) and of course the ability to create your own custom ones that the reconciler can interpret.
I hope this answers your questions.
Thanks!


remove IP from blacklist

After X attempts, an IP address get blacklisted. How to remove it from the blacklist.

GA PAM module doesn't blacklist IP addresses. It throttles based on time.
You just wait a bit.

Great, thanks!! @ThomasHabets


SmartOS: libsass/units.hpp:39:5: error: expected identifier before numeric constant

$ sudo npm install -g node-sass

In file included from ../src/libsass/ast.hpp:34:0,
                 from ../src/libsass/ast.cpp:1:
../src/libsass/units.hpp:39:5: error: expected identifier before numeric constant
../src/libsass/units.hpp:39:5: error: expected '}' before numeric constant
../src/libsass/units.hpp:39:5: error: expected unqualified-id before numeric constant
../src/libsass/units.hpp:62:3: error: 'SassUnit' does not name a type
../src/libsass/units.hpp:63:30: error: 'SassUnit' was not declared in this scope
../src/libsass/units.hpp:63:30: note: suggested alternative:
../src/libsass/units.hpp:22:8: note:   'Sass::SassUnit'
../src/libsass/units.hpp:64:3: error: 'SassUnitType' does not name a type
../src/libsass/units.hpp:66:34: error: 'string' does not name a type
../src/libsass/units.hpp:66:40: error: ISO C++ forbids declaration of 'parameter' with no type [-fpermissive]
../src/libsass/units.hpp:66:49: error: 'string' does not name a type
../src/libsass/units.hpp:66:55: error: ISO C++ forbids declaration of 'parameter' with no type [-fpermissive]
../src/libsass/units.hpp:69:3: error: expected class-name before '{' token
../src/libsass/units.hpp:72:34: error: expected ')' before 'a'
../src/libsass/units.hpp:87:1: error: expected declaration before '}' token
src/libsass.target.mk:128: recipe for target 'Release/obj.target/libsass/src/libsass/ast.o' failed
make: *** [Release/obj.target/libsass/src/libsass/ast.o] Error 1
make: Leaving directory '/opt/local/lib/node_modules/node-sass/build'
gyp ERR! build error
gyp ERR! stack Error: `make` failed with exit code: 2
gyp ERR! stack     at ChildProcess.onExit (/opt/local/lib/node_modules/node-sass/node_modules/pangyp/lib/build.js:271:23)
gyp ERR! stack     at ChildProcess.emit (events.js:110:17)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (child_process.js:1067:12)
gyp ERR! System SunOS 5.11
gyp ERR! command "/opt/local/bin/node" "/opt/local/lib/node_modules/node-sass/node_modules/pangyp/bin/node-gyp" "rebuild" "--libsass_ext=" "--libsass_cflags=" "--libsass_ldflags=" "--libsass_library="
gyp ERR! cwd /opt/local/lib/node_modules/node-sass
gyp ERR! node -v v0.12.0
gyp ERR! pangyp -v v2.2.1
gyp ERR! not ok
Build failed
npm ERR! SunOS 5.11
npm ERR! argv "/opt/local/bin/node" "/opt/local/bin/npm" "install" "-g" "node-sass"
npm ERR! node v0.12.0
npm ERR! npm  v2.5.1
npm ERR! code ELIFECYCLE

npm ERR<EMAIL_ADDRESS>postinstall: `node scripts/build.js`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the<EMAIL_ADDRESS>postinstall script 'node scripts/build.js'.
npm ERR! This is most likely a problem with the node-sass package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!     node scripts/build.js
npm ERR! You can get their info via:
npm ERR!     npm owner ls node-sass
npm ERR! There is likely additional logging output above.

Is this is node-sass or a libsass issue?

libsass

looks like a pending PR fixes this: https://github.com/sass/libsass/pull/1782

Merged https://github.com/sass/libsass/pull/1782.
This will be released when https://github.com/sass/node-sass/issues/1317 is closed. Subscribe to that issue for updates.


Fix some possible memory leaks in EVP_CipherInit_ex

An EVP_CONTEXT with zero cipher but non-zero engine,
and/or cipher_data is possible if an error happens
in EVP_CTRL_INIT or in EVP_CTRL_COPY, the error handling
will just clear the cipher in that case.
This is for 1.1.1, master is broken differently...

This pull request is ready to merge


Change deploy to publish to match task name when publishing via NPM.

The README.md would need to be updated too in the sibling repo https://github.com/markdalgleish/bespoke.js/blob/master/README.md

Hey @rpocklin!
Can you explain a bit more what your PR brings? I'm a bit confused. What do you think @mojavelinux?

Since we're in the npm ecosystem, and the npm command to publish a module is npm publish, I think the idea is to match that terminology for our task that publishes to GitHub. I'd even add that "publish" is the more correct term to use here anyway, as we are "publishing content" not deploying it.
We could rename it, then make deploy depend on publish for backwards compatibility with existing scripts.

@rpocklin @mojavelinux Do we really need backward compatibility since it's a v3?

I won't cast a vote for the deploy alias. I was just mentioning it's still possible.

Fixed in #38 (https://github.com/bespokejs/generator-bespoke/pull/38/commits/3859a17664a36eb5a5bdcb49c4dc3240527cd7c1).

This has been implemented in 3.0.0.


TypeScript project references

Need to figure out how to do TypeScript project references.

Docs: https://www.typescriptlang.org/docs/handbook/project-references.html
Example with lerna: https://github.com/cipriancaba/ts-monorepo-project-references-example/tree/master/packages/react-app
Discussion: https://github.com/projen/projen/issues/9#issuecomment-774615474

Done ✅


[azure-core]Fixed aiohttp formdata

Can one of the admins verify this patch?

Can one of the admins verify this patch?

Codecov Report

Merging #5023 into azure-core will decrease coverage by <.01%.
The diff coverage is 25%.

@@              Coverage Diff               @@
##           azure-core    #5023      +/-   ##
==============================================
- Coverage       49.59%   49.59%   -0.01%
==============================================
  Files            6366     6366
  Lines          178996   179006      +10
==============================================
+ Hits            88771    88774       +3
- Misses          90225    90232       +7

Impacted Files
Coverage Δ

...zure-core/azure/core/pipeline/transport/aiohttp.py
63.63% <25%> (-3.78%)
:arrow_down:

Continue to review full report at Codecov.

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


How to audit all traffic flowing through mail server?

My mail server is only about 10 days old. Up til today, my server was not on any blacklist, but today I am listed on 3 of them. I have only exchanged mails between my domain and my other accounts on yahoo, hotmail and gmail for testing purposes. I would like to know how to audit all successful logins and mails sent from my server so that I can identify why I show up on a blacklist.
Context
Even as good as this software is, setting it up to actually exchange mails is a delicate task. So I test with mails sent between my new domain and my established accounts on yahoo, hotmail and gmail. As far as I know, my test emails are the ONLY emails sent through my server, yet it is now showing up on blacklists. I would like to know how to determine all successful logins and email sent so that I can find out why I'm blacklisted.
Expected Behavior

Actual Behavior

Possible Fix

Steps to Reproduce

Your Environment

Amount of RAM available: 24GB
Mailserver version used: latest
Docker version used: 3
Environment settings relevant to the config:
Any relevant stack traces ("Full trace" preferred):

The logs are saved to /var/log/mail. You will want to create a volume to keep them when the container is restarted, see templates in the readme. For a quick look you can use docker logs, but for more detailed analysis you will want the real files.
You can also enable the reports (also covered in readme) to get a more readable summary of your traffic. Again that works best if the logs are on a volume. Good luck!

Blacklisting for new IPs is not uncommon.   Please make sure you have your DNS records (PTR, DKIM, SPF) in order.  I also now highly recommend DMARC for identifying invalid email sources.
I've found Yahoo and Hotmail/Outlook to be very sensitive to new IP addresses sending email. Here's a quick how to for removing your IP from the hotmail blacklist.
You can use https://mail-tester.com to verify that your email headers are working properly.  The most important part of the test is the Email Authentication setting.  If there are any failures here, address those before contacting the email service providers for help.
I use Dmarcian to process my DMARC reports.

Thank you to the previous commenters who have given me very valuable input!
Further diagnosing my blacklist problem, I discovered that in fact, my mail server is an open relay, which of course explains why I wound up on blacklists. So the next part of my journey is to discover how to close the relay so that only authorized parties can send email.

You didn't post your configuration. The default configuration should be secure, so when you find out what went wrong please let us know.

Here is my section of the docker-compose.yaml file (with domain name changed to shield the guilty):
marketing:
container_name: marketing
image: tomav/docker-mailserver:latest
image: tvial/docker-mailserver:latest
image: saigel/docker-mailserver:latest
restart: always
domainname: domain.com
networks:
  default:
    ipv4_address: '<IP_ADDRESS>'
expose:
  - '25'
  - '143'
  - '465'
  - '587'
  - '993'
volumes:
  - /var/docker/marketing/maildata:/var/mail
  - /var/docker/marketing/mail-state:/var/mail-state
  - ./config/marketing/:/tmp/docker-mailserver/
  - ./letsencrypt/live/mail.domain.com/:/etc/letsencrypt/
  - /root/.ssh/:/root/.ssh/
environment:
  - DMS_DEBUG=0
  - ENABLE_CLAMAV=1
  - ONE_DIR=0
  - ENABLE_POP3=0
  - ENABLE_FAIL2BAN=1
  - ENABLE_MANAGESIEVE=0
  - OVERRIDE_HOSTNAME=mail.domain.com
  -<EMAIL_ADDRESS>  - POSTSCREEN_ACTION=enforce
  - REPORT_RECIPIENT=0
  - REPORT_SENDER=
  - REPORT_INTERVAL=daily
  - SMTP_ONLY=
  - SSL_TYPE=manual
  - SSL_CERT_PATH=/etc/letsencrypt/public.crt
  - SSL_KEY_PATH=/etc/letsencrypt/private.key
  - TLS_LEVEL=modern
  - SPOOF_PROTECTION=1
  - ENABLE_SRS=0
  - PERMIT_DOCKER=
  - VIRUSMAILS_DELETE_DELAY=
  - ENABLE_POSTFIX_VIRTUAL_TRANSPORT=
  - POSTFIX_DAGENT=
  - POSTFIX_MAILBOX_SIZE_LIMIT=
  - POSTFIX_MESSAGE_SIZE_LIMIT=
  - ENABLE_SPAMASSASSIN=1
  - SA_TAG=2.0
  - SA_TAG2=6.31
  - SA_KILL=6.31
  - SA_SPAM_SUBJECT=***SPAM*****
  - ENABLE_FETCHMAIL=0
  - FETCHMAIL_POLL=300
  - ENABLE_LDAP=0
  - LDAP_START_TLS=
  - LDAP_SERVER_HOST=
  - LDAP_SEARCH_BASE=
  - LDAP_BIND_DN=
  - LDAP_BIND_PW=
  - LDAP_QUERY_FILTER_USER=
  - LDAP_QUERY_FILTER_GROUP=
  - LDAP_QUERY_FILTER_ALIAS=
  - LDAP_QUERY_FILTER_DOMAIN=
  - DOVECOT_TLS=
  - DOVECOT_USER_FILTER=
  - DOVECOT_PASS_FILTER=
  - ENABLE_POSTGREY=1
  - POSTGREY_DELAY=300
  - POSTGREY_MAX_AGE=35
  - POSTGREY_AUTO_WHITELIST_CLIENTS=5
  - POSTGREY_TEXT=Delayed by postgrey
  - ENABLE_SASLAUTHD=0
  - SASLAUTHD_MECHANISMS=
  - SASLAUTHD_MECH_OPTIONS=
  - SASLAUTHD_LDAP_SERVER=
  - SASLAUTHD_LDAP_SSL=
  - SASLAUTHD_LDAP_BIND_DN=
  - SASLAUTHD_LDAP_PASSWORD=
  - SASLAUTHD_LDAP_SEARCH_BASE=
  - SASLAUTHD_LDAP_FILTER=
  - SASLAUTHD_LDAP_START_TLS=
  - SASLAUTHD_LDAP_TLS_CHECK_PEER=
  - SASL_PASSWD=
  - SRS_EXCLUDE_DOMAINS=
  - SRS_SECRET=
  - DEFAULT_RELAY_HOST=
  - RELAY_HOST=
  - RELAY_PORT=25
  - RELAY_USER=
  - RELAY_PASSWORD=
privileged: true
cap_add:
  - NET_ADMIN
  - SYS_PTRACE
labels:
  - traefik.enable=true
  - traefik.frontend.rule=Host:mail.domain.com
hostname: mail.domain.com

By the way, my custom build is because I needed to add vim, ssh and a couple other packages so that I could use this to fit my needs. To wit: My mail server actually resides at home, and port 25 is blocked by my ISP. So I use ssh to tunnel past it to reach a droplet on DigitalOcean, which becomes my public IP address.

My guess is that the SSH tunnel is the problem here. You have left PERMIT_DOCKER blank which should mean that only connections from localhost are trusted (mynetworks in postfix-main.cf). But if you tunnel the connections they may appear to be from localhost. What remote addresses do you have in your logs?

An SSH tunnel would require a valid user account on the local network.  I have an article about using ssh tunnels to send spam but it is more geared to web hosts rather than Docker.
How did you verify you have an open relay?  I recommend you use any of the online tools or telnet directly from a non-trusted network and run the test.
This tool will run a test.
https://mxtoolbox.com/diagnostic.aspx

My guess is that the SSH tunnel is the problem here. You have left PERMIT_DOCKER blank which should mean that only connections from localhost are trusted (mynetworks in postfix-main.cf). But if you tunnel the connections they may appear to be from localhost. What remote addresses do you have in your logs?

You must be right. The address for everything in the mail log is <IP_ADDRESS>, like the following excerpt from the log:
Sep 23 01:17:30 mail opendmarc[220]: ignoring connection from localhost
Sep 23 01:17:34 mail postfix/postscreen[1144]: CONNECT from [<IP_ADDRESS>]:35168 to [<IP_ADDRESS>]:25
Sep 23 01:17:34 mail postfix/postscreen[1144]: WHITELISTED [<IP_ADDRESS>]:35168
Sep 23 01:17:34 mail postfix/smtpd[1148]: connect from localhost[<IP_ADDRESS>]

Recap and further info: my home network is on 192.168.201.x/24, my Docker containers are on 172.16.0.x/24, my mail server tunnels out to a droplet on DigitalOcean.
Is it possible to configure Docker to close the open relay, but still allow me to send/receive emails through this server properly?

An SSH tunnel would require a valid user account on the local network. I have an article about using ssh tunnels to send spam but it is more geared to web hosts rather than Docker.
How did you verify you have an open relay? I recommend you use any of the online tools or telnet directly from a non-trusted network and run the test.
This tool will run a test.
https://mxtoolbox.com/diagnostic.aspx

mxtoolbox.com is exactly the tool I used to confirm it.

I should have also mentioned that my mail server co-exists with web server, database server, et al, behind a Traefik proxy. Maybe my problem is that Traefik needs to supply more complete information to the mail server so that it can distinguish local from remote traffic?
I'm learning my way through this, so I probably made several blunders when setting this up...

I think that is the case. Somehow you need to preserve the remote addresses. I don't know Traefik well enough to point to the solution. I think there are solutions for similar problems with Kubernetes in the wiki or in other issues though, perhaps you can find inspiration there?

Can we close this now (long silence)? If not, is there something you need help with?

I believe that it would be fair to close the ticket.
I have scripted an edit to the /etc/postfix/main.cf file on my server to remove entries from the <IP_ADDRESS>/16 network from "mynetworks". This effectively closes the "open relay" issue that I was experiencing, since my mail server resides in a Docker container in the "default" network behind an SSH tunnel to the "real world".
However, I am still searching for a way to use FAIL2BAN to block repeated attempts to connect to my server from bad actors. Although I have FAIL2BAN enabled, it is essentially useless because all connections to my server are coming through <IP_ADDRESS> (again, because I am tunneling from my mail server out to my droplet on DigitalOcean and my static IP). I have discovered that the "real" IP address of the parties connecting to me are available if I ask for verbose messages from SSH (using the "-v" option), but I haven't figured out how to pass that information to FAIL2BAN to block the repeated attempts login to my server.
I'm sure this seems very convoluted, and I applaud you if you can understand my ramblings above! :-)

Right, I'll close it then. Good luck!

Hey folks, can anyone help me with a similar setup?
I'm also trying to use ssh port forwarding for my case, the VPS is being used solely for that, and it almost works. I can receive emails, but for sending I'm having issues, because my current VPS provider sadly does not allow sending to port 25. I can receive on it but I can't send. To send I need to use a proxy/relay that they provide.
I've logged in my VPS instance and can in fact telnet to this proxy on its port 25, so it all seems that access VPS->RELAY:25 is fine.
I've then tried setup DEFAULT_RELAY_HOST= to this relay, but when I run the server on my Pi, sending always timeout when trying to send to the relay. If I'm understanding it correctly, relaying won't happen through the forwarded ports and my server is trying to connect to the relay through my network instead of the VPS?
If so, how to fix this?
It's my first time trying to setup my own mail server, looks like I'm almost there, but not yet. Not sure whether there's a fix for my case..

Ah... reading this thread, I see many other issues regarding this setup, around docker networks addresses, FAIL2BAN, etc...

If so, how to fix this?

Ah OK... thinking about it, I think I should try forwarding the relay itself too, besides the ports.

Here is what I wound up doing:
I have two mail servers (one for "transactional" mail, one for "promotional" mail--which seems to be the best practice these days). They are both running as separate docker instances on my home server. I have written some custom scripts to make them connect out to separate VPS hosts, which I am essentially using only for their non-firewalled access to port 25 and their static IP addresses.
I am using GitHub - halhen/pvpn: Poor mans VPN over SSH on each mail server to "forward" all outgoing traffic from my Docker mail servers to my VPS host, and I'm using ssh port forwarding to forward all incoming traffic to the Docker mail servers from my VPS host, so I'm not using my ISP's mail server relay at all.
I am also using a custom script to monitor the IP addresses of attackers and pushing those addresses back to the VPS host in real time to block them with FAIL2BAN.
By modifying the main.cf configuration file for each mail server vis-à-vis my reply of October 7 2019, I have also closed the open relay problem that I was having.
One more thing, I have written custom scripts which coordinate the Lets Encrypt certificates between Traefik and the two mail servers.
Hope these suggestions help you.

@saigelosli many thanks for your input, I wished there was a more detailed configuration write up, specially regarding the scripts to make FAIL2BAN work etc. Regarding my limitations, sadly, with this VPS I have to use a relay they provide me for sending, telneting on port 25 of any mail server their just proves it's blocked, and they don't allow it even on request. They're essentially forcing me to use their relay servers. I didn't yet finish configuring this part, but I think initially, as I said, I just need to remote forward not only the ports that docker-mailserver needs, but also have a local forward to access this relay through the VPS.
I'm just barely making a damn email message to reach its destination, I didn't yet setup letsencrypt renew, which I'll do later after verifying all this will work. I never touch Traefik, and will study it later. So, just saying, a blog post of yours on your setup would be so much valuable :) But anyways, many thanks for the pointers already.


Add EMR security configuration

EMR clusters do not enable any common AWS security features by default like: Identity Management Service V2 (IMDSv2) which requires authentication, encryption (in transit or at rest), authentication, etc.
EMR's Security Configuration feature enables these configuration options.

@hrdamani @ryanaston can we get a review on this PR please? The current module uses IMDSv1 which flags vulnerability warning on AWS Securityhub.
This PR let us configure security options.


Excluded paths are still scanned and cause syft to crash.

What happened: I excluded paths  --exclude ./boot --exclude ./web  I had verbose set to 2
When ran you seed WARN unable to access path="/web" lstat /web no such file or directory
This is really a permission issue., but it should have never checked.
The bigger issues was the error:
unable to get file resolver: unable to create directory resolver: unable to index filesystem path="/boot/efi/EFI/readhat/grub.cfg": lstat /boot/dfi/DFIL permission denied
syft exits.
This makes the tool useless.
What you expected to happen: The paths excluded would not be scanned.
Steps to reproduce the issue: Use a user that does not have permission to read /boot
Anything else we need to know?:
Environment:

Output of syft version: 1.11.0
OS (e.g: cat /etc/os-release or similar): Redhat 7.9 and 8.4

Hi @reure1 -- the directories you are excluding are at the root of the filesystem but you are using relative paths ./boot and ./web, not absolute paths. If you are scanning an image, you need to use absolute paths. If you are scanning a directory or something else, could you provide some steps to reproduce the issue?

The tool does not allow absolute paths. When not using a container, so I'm scanning the whole system, minus some directories? Excluding file paths. You can see in the debug output that every directory I told it to exclude the indexer still indexes, but does not scan. The indexer (resolver) error on the /boot/efi/EFI/readham/grub.cfg file when it should be excluded.
The command I'm running is:
syft scan dir:/ --verbose=2 --exclude=./web --exclude=./boot --exclude=./var/lib/yum --exclude ./dev --exclude./sys -o cyclonedx=sbom.cyclonedx.xml

So what would be better to scan the system?

If you are running a directory scan, as you noted, exclude paths need to be relative to the scan root.
I don't have a RHEL instance to test this on at the moment, but running on the latest Fedora, after receiving permission errors such for paths such as /boot, Syft continues to process the remainder of the filesystem and results in an SBOM. And using excludes works as expected for me when specifying them just as you've indicated, e.g.: syft / --exclude ./boot. It does take a little while to run -- it was about 10 minutes in a virtual machine for me.
I should note, I used Syft 1.12.2, maybe give that a try? If that doesn't seem to solve the issue, are there other steps or a publicly available container or ISO that exhibits the problem?

@kzantow, when you ran your scan did you use -vv or --verbose=2? When you look at the logs you will see directories that you excluded that you don't have permissions to go into. That is where syft is dying. I believe that is part of the indexer/resolver and not the scanner. Again I exclude "--exclude ./boot" the faital is:
unable to get file resolver: unable to create directory resolver: unable to index filesystem path="/boot/efi/EFI/redhat/grub.cfg": lstat /boot/efi/EFI: permission denied"
``
The fatal error should have never happened because the indexer/resolver should have never gone down that path.
Create a directory at the root level, set the directory where your user does not have permission, and tell syft to exclude the directory and turn on verbose -vv or --verbose=2. Look in the logs and you will see the indexer/resolver trying to access that excluded directory.

I ran Syft 1.12.2 this morning and the indexer/resolver ignores --exclude also. Syft crashes at the same place. Why it crashes instead of just printing the warning I don't know. /web is another directory that I excluded and should be skipped.
[002] WARN unable to access path="/web": lstat /web: no such file or directory

It seems like there are 2 distinct issues here:

For you, Syft is crashing and not continuing to scan when this error occurs
You are seeing paths that you are expected to be ignored

In regards to the first issue: Syft crashing, to me this is the crux of your problems but I am unable to reproduce. I would very much like to ensure this does not happen, but I'll need some way to reproduce instead of speculating on a fix.
In regards to the second issue -- seeing references to /boot. Here are excerpts from the logs when I've run this:
without --exclude
[0000]  WARN unable to access path="/boot/efi": open /boot/efi: permission denied
[0000]  WARN unable to access path="/boot/grub2": open /boot/grub2: permission denied
[0000]  WARN unable to access path="/boot/loader/entries": open /boot/loader/entries: permission denied
[0052]  WARN unable to access path="/var/lib/libvirt/boot": open /var/lib/libvirt/boot: permission denied
[0052]  WARN unable to access path="/boot/grub2/grub.cfg": lstat /boot/grub2/grub.cfg: permission denied
[0058] DEBUG found path duplicate of usr/lib/firmware/nvidia/tu102/gsp/bootloader-535.113.01.bin.xz
[0058] DEBUG found path duplicate of usr/bin/bootctl
[0204] DEBUG file digests cataloger skipping "boot/initramfs-6.8.5-301.fc40.x86_64.img": digests-cataloger unable to observe contents of boot/initramfs-6.8.5-301.fc40.x86_64.img: open /boot/initramfs-6.8.5-301.fc40.x86_64.img: permission denied

with --exclude ./boot
[0088]  WARN unable to access path="/var/lib/libvirt/boot": open /var/lib/libvirt/boot: permission denied
[0088]  WARN unable to access path="/boot/grub2/grub.cfg": lstat /boot/grub2/grub.cfg: permission denied
[0095] DEBUG found path duplicate of usr/lib/firmware/nvidia/tu102/gsp/bootloader-535.113.01.bin.xz
[0095] DEBUG found path duplicate of usr/bin/bootctl

You can see a distinct difference, where syft has excluded many paths as expected, but there still is a reference to /boot/grub2/grub.cfg -- why didn't this get excluded? I'm fairly certain that there are symlinks pointing to files in these directories. Syft is correctly excluding these directories when traversing the filesystem, but when encountering links which point to locations within these excludes, these are not being excluded. I believe Syft is doing the right thing but printing a less-than-useful error message, which loses context of the access path, instead only reporting the resolved absolute path. However, I think this would be a non-issue if Syft was not crashing for you, so I'd really like to get to the bottom of why Syft is crashing before thinking about changing how excludes work.

@kzantow, thank you for your response. I mostly agree with you. I feel that if syft didn't try to access files it was told to ignore symlink or not, the crash would not happen. I am using a very locked down version of Redhat and I can't share any logs.

I will see if we can come up with something. We may just have to use a different SBOM tool.

@kzantow btw there is a symlink for /etc/grub2.cfg and ../boot/grub2.cfg
What are your permissions for /boot and /boot/grub2?
On this system:
/boot is 555
/boot/grub2 is 700

I just did a useradd joe and ran the scan as a non-root user with the default permissions/groups/etc.. The system has the same permissions you've indicated: /boot is 555 (dr-xr-xr-x) and /boot/grub2 is 700 (drwx------).

... and the user joe gets a typical permission error accessing these paths:

I started looking at the code. This will give me a chance to learn a little Go. lstat is only on one place.  So I will start there.
syft/internal/fileresolver/directory_indexer.go:218

I had to work on something else for a few days. I'm glad to see someone else had the issue and could easily reproduce it.

@kzantow, I came up with a quick fix.
In syft/internal/fileresolver/directory_indexer.go
I changed line 91 from:
return fmt.Errorf("unable to index filesystem path=%q: %w, currentPath, err)

to:
log.WithFields("path", currentPath).Warn("unable to index filesystem path")
continue

@reure1 that's a good idea! It would be great if we could report this as part of our new "known unknowns" feature which was added by https://github.com/anchore/syft/pull/2998/.
What we would like is for the directory_indexer to be able to use unknowns.Appendf to add to a slice of errors files that it didn't have permissions for, similar to what catalogers do:
https://github.com/anchore/syft/blob/5d165e0230403821efd0608500b7cdd1e66316c5/syft/pkg/cataloger/golang/scan_binary.go#L48-L51
However, there might be additional wiring needed to make this work from inside a resolver (above link is to a cataloger, not a resolver).
If you'd like to pick this up, just let us know! We're happy to help.


Allow going to TODO with double click

It would be nice if you could go to a TODO etc with double-clicking the line number instead of just with ENTER. This behavior would be the same as with the regular search.

Yeah, this has been discussed at great length, #78


Cleanup/Restructure utils in chaoslib

Is this a BUG REPORT or FEATURE REQUEST?
Choose one: BUG REPORT or FEATURE REQUEST

What happened:
What you expected to happen:
How to reproduce it (as minimally and precisely as possible):
Anything else we need to know?:

The chaoslib has been restructured to reflect the latest guidelines on reusability


Add custom query format to entire connection pool

Currently you allow connections to have a custom queryFormat function which allows custom argument parsing. If you're using a connection pool, however, you have to specify it on every new connection. Perhaps there should be a way to apply the default queryFormat for an entire pool?

Apparently, queryFormat is not passed, a workaround to this would be the following code:
pool.on('connection', function (connection) {
    connection.config.queryFormat = function (query, values) {
        if (!values) return query;
        return query.replace(/\:(\w+)/g, function (txt, key) {
            if (values.hasOwnProperty(key)) {
                return this.escape(values[key]);
            }
            return txt;
        }.bind(this));
    };
});


remove harmonised files with no data

there are many reasons why such files could be empty. OTAR sent us alist that we should remove:
+--------+---------+-----------+
|    pmid|emptyFrac|study_count|
+--------+---------+-----------+
|29899525|      0.2|          5| <- one of the 5 studies are empty.
|32915782|      1.0|          1|
|33414548|   0.0426|        141| <- 6 studies are empty
|33983923|      1.0|       1021| <- all studies are empty!
|34270794|      1.0|         41|
|34662886|      0.5|       7972|
|34782693|      1.0|          6|
+--------+---------+-----------+

Lizzy to do this

I will create a ticket for each PMID:

https://app.zenhub.com/workspaces/gwas-59df823c4a6feb3786810391/issues/gh/ebispot/goci/1089

I think this ticket can be closed, any objections @earlEBI ?

@ljwh2 I'm still working my way through, was just doing one a week. I think just 2 small ones to go.

This is now completed and can be closed.