Is Docker image build broken right now?

I've been not using it for a while, the result of docker build looks like broken?
~/dnscrypt-server-docker $ docker build -t temp .
Sending build context to Docker daemon  1.928MB
Step 1/28 : FROM ubuntu:21.04
 ---> 478aa0080b60
Step 2/28 : LABEL maintainer="Frank Denis"
 ---> Running in 9714ce1676d8
Removing intermediate container 9714ce1676d8
 ---> cad7adceb135
Step 3/28 : SHELL ["/bin/sh", "-x", "-c"]
 ---> Running in 4a6fba04d104
Removing intermediate container 4a6fba04d104
 ---> fa8c471cd45b
Step 4/28 : ENV SERIAL 3
 ---> Running in e05ce3e0184b
Removing intermediate container e05ce3e0184b
 ---><PHONE_NUMBER>2d
Step 5/28 : ENV CFLAGS=-Ofast
 ---> Running in 711df6e21357
Removing intermediate container 711df6e21357
 ---> 5c9cd7c988d9
Step 6/28 : ENV BUILD_DEPS   curl make build-essential git libevent-dev libexpat1-dev autoconf file libssl-dev byacc
 ---> Running in de8d4ff29e0c
Removing intermediate container de8d4ff29e0c
 ---> f78c88025ddd
Step 7/28 : ENV RUNTIME_DEPS bash util-linux coreutils findutils grep libssl1.1 ldnsutils libevent-2.1 expat ca-certificates runit runit-helper jed
 ---> Running in 08b0fd19e0b0
Removing intermediate container 08b0fd19e0b0
 ---> 79a67aaffe57
Step 8/28 : RUN apt-get update; apt-get -qy dist-upgrade; apt-get -qy clean &&     apt-get install -qy --no-install-recommends $RUNTIME_DEPS &&     rm -fr /tmp/* /var/tmp/* /var/cache/apt/* /var/lib/apt/lists/* /var/log/apt/* /var/log/*.log
 ---> Running in f50ef4a50125
+ apt-get update
Get:1 http://security.ubuntu.com/ubuntu hirsute-security InRelease [101 kB]
Get:2 http://archive.ubuntu.com/ubuntu hirsute InRelease [269 kB]
Err:1 http://security.ubuntu.com/ubuntu hirsute-security InRelease
  gpgv, gpgv2 or gpgv1 required for verification, but neither seems installed
Err:2 http://archive.ubuntu.com/ubuntu hirsute InRelease
  gpgv, gpgv2 or gpgv1 required for verification, but neither seems installed
Get:3 http://archive.ubuntu.com/ubuntu hirsute-updates InRelease [109 kB]
Err:3 http://archive.ubuntu.com/ubuntu hirsute-updates InRelease
  gpgv, gpgv2 or gpgv1 required for verification, but neither seems installed
Get:4 http://archive.ubuntu.com/ubuntu hirsute-backports InRelease [90.7 kB]
Err:4 http://archive.ubuntu.com/ubuntu hirsute-backports InRelease
  gpgv, gpgv2 or gpgv1 required for verification, but neither seems installed
Reading package lists...
W: GPG error: http://security.ubuntu.com/ubuntu hirsute-security InRelease: gpgv, gpgv2 or gpgv1 required for verification, but neither seems installed
E: The repository 'http://security.ubuntu.com/ubuntu hirsute-security InRelease' is not signed.
W: GPG error: http://archive.ubuntu.com/ubuntu hirsute InRelease: gpgv, gpgv2 or gpgv1 required for verification, but neither seems installed
E: The repository 'http://archive.ubuntu.com/ubuntu hirsute InRelease' is not signed.
W: GPG error: http://archive.ubuntu.com/ubuntu hirsute-updates InRelease: gpgv, gpgv2 or gpgv1 required for verification, but neither seems installed
E: The repository 'http://archive.ubuntu.com/ubuntu hirsute-updates InRelease' is not signed.
W: GPG error: http://archive.ubuntu.com/ubuntu hirsute-backports InRelease: gpgv, gpgv2 or gpgv1 required for verification, but neither seems installed
E: The repository 'http://archive.ubuntu.com/ubuntu hirsute-backports InRelease' is not signed.
+ apt-get -qy dist-upgrade
Reading package lists...
Building dependency tree...
Reading state information...
Calculating upgrade...
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
+ apt-get -qy clean
+ apt-get install -qy --no-install-recommends bash util-linux coreutils findutils grep libssl1.1 ldnsutils libevent-2.1 expat ca-certificates runit runit-helper jed
Reading package lists...
Building dependency tree...
Reading state information...
Package ca-certificates is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source

E: Unable to locate package libssl1.1
E: Couldn't find any package by glob 'libssl1.1'
E: Couldn't find any package by regex 'libssl1.1'
E: Unable to locate package ldnsutils
E: Unable to locate package libevent-2.1
E: Couldn't find any package by glob 'libevent-2.1'
E: Couldn't find any package by regex 'libevent-2.1'
E: Unable to locate package expat
E: Package 'ca-certificates' has no installation candidate
E: Unable to locate package runit
E: Unable to locate package runit-helper
E: Unable to locate package jed
The command '/bin/sh -x -c apt-get update; apt-get -qy dist-upgrade; apt-get -qy clean &&     apt-get install -qy --no-install-recommends $RUNTIME_DEPS &&     rm -fr /tmp/* /var/tmp/* /var/cache/apt/* /var/lib/apt/lists/* /var/log/apt/* /var/log/*.log' returned a non-zero code: 100

So apt-get update now requires gpgv but the base image doesn't install it?
Weird.
Alright, let's add gpgv before the update then ;)
Thanks for the heads up!

I haven't done any digging yet, but I don't suggest to use such a short life Ubuntu as a base image, the maintenance effort would be too high and I didn't really see something quite awesome of using such new versions.

Just saw the change here but don't think it'll work then ...
https://github.com/DNSCrypt/dnscrypt-server-docker/commit/80ad11ea94a348617c7ff9a8af7c0a409258e8f0#commitcomment-51538496


Unset CONDOR_INHERIT in the condor_startup script

Describe the bug
A site admin found a case where the CONDOR_INHERIT environment variable leaked from the CE configuration to the pilot one:
https://support.opensciencegrid.org/a/tickets/72095
To Reproduce
Set CONDOR_INHERIT on a test CE and have it propagate to the environment of the pilot.
Expected behavior
We should unset the variable in the condor_startup script to avoid any conflict in the condor configurations.
Info (please complete the following information):

Priority: high
Stakeholder: FactoryOps
Component: glidein

Jeff already patched it in the factory:
[0928] gfactory@gfactory-2 ~$ diff /var/lib/gwms-factory/web-base/condor_startup.sh.bak20230307 /var/lib/gwms-factory/web-base/condor_startup.sh
65a66,68
>
> unset CONDOR_INHERIT
>


Where to find ID of the Homebridge deCONZ migration resource link

Hi,
sorry for that question. I searched all Readmes but I could't find an answer.
Where can I find the ID of the migration resource link?
Thanks for help!

There should be a message in the log, when you change the devices being exposed:
[4/1/2022, 10:27:04 AM] [pi5] pi5: migration: /resourcelinks/1: 13 resources

ok.. I'm not sure if I understand it correctly:
The migration is for exclude specific devises/sensors that they don't shown app in the home app right?
Because if I switch expose status for the deconz daylight sensor (which I don't need in my home app) with the eve app I don't see a message in the log.
Maybe I didn't get the migration feature at all 😄
thanks for your help!

ahh I see. Okay that everything is fine, I've completely switch to Homebridge deCONZ


added EventInteraction model and added get, post, and put requests #21

Issue #21
created a new EventInteraction model and added a get request to retrieve all interactions for a user, a post request to create a new interaction for a user, and a put request to edit an existing interaction for a user. Based a lot of the error handling off of the yac repo, but adapted it to this new model.

Looks good!


KAFKA-17584: Fix incorrect synonym handling for dynamic log configurations

This is a cherry-pick of https://github.com/apache/kafka/pull/17258 to 3.7.2
This commit differs from the original by using the old (read 3.7) references to the configurations and not changing as many unit tests

Heya @cmccabe and @showuon, in order to add this to the 3.7.2 release I have made an attempt to port the changes. Would you be willing to review this?
+cc @mjsax for visibility

@clolov @cmccabe @showuon -- Can we make progress on this cherry-pick? It's currently blocking me from creating the first RC.

Triggered a new CI run -- can merge this afterwards.

@clolov It seems ReplicaManagerTest.testRemoteFetchExpiresPerSecMetric fails all the time. Thoughts? No idea if related or not.

Heya @mjsax. The test passes locally when I run it individually, as part of the class and as part of the whole test suite. It also appears to have been passing as build #2 of the same PR. If that is the only concern is there a way we can get a complete new clean build which doesn't reuse any old build artifacts just to see whether it is persistent?


How to globally allow_unknown_urls?

I don't want the chatty Request to unknown URL: messages.
Since allow_unknown_urls is an instance method on the driver, that would mean I'd have to do before { page.driver.allow_unknown_urls } in each feature spec, and that's tedious.
Is there a way I can do it globally, something like in spec_helper.rb Capybara.javascript_driver.allow_unknown_urls
Thanks!

There is an open PR #756 for this exact functionality.
You'd add it as a line in your Capybara::Webkit.configure block.

Thanks, @nritholtz.
I'm going to close this, as the issue will be addressed by #756 and should be included in the next release.


Not working with ANGULAR JS on content window

Hi,
I am having troubles when using this in AngularJS environment.
Seems as Augular uses directives (templating/HtmlAtRuntime), iFrameResizer is not able to detect change in height...
I always get '[iFramereSizer][frame] No change in size detected' in logs.
Let me know if it's a known issue and what needs to be done to resolve it.
Thanks,
Abhiraj

New one on me. I have seen people get the two working together without
problem in the past. The most likely problem is CSS related, see the
troubleshooting section. If that doesn't help then please make a simple
test case for me to look at.
On Friday, 5 June 2015, aarele<EMAIL_ADDRESS>wrote:

Hi,
I am having troubles when using this in AngularJS environment.
Seems as Augular uses directives (templating/HtmlAtRuntime), iFrameResizer
is not able to detect change in height...
I always get '[iFramereSizer][frame] No change in size detected' in logs.
Let me know if it's a known issue and what needs to be done to resolve it.
—
Reply to this email directly or view it on GitHub
https://github.com/davidjbradshaw/iframe-resizer/issues/217.

--
Sent from my iPhone.

Hi David,
It was a CSS issue (body was given a height), I fixed it and now it works like a charm.
Thanks for your feedback man, helped a lot.
Thanks,
Abhiraj

Thanks for letting me know and glad you got it sorted.
On Fri, Jun 5, 2015 at 8:04 PM, Abhiraj Arele<EMAIL_ADDRESS>wrote:

Closed #217 https://github.com/davidjbradshaw/iframe-resizer/issues/217.
—
Reply to this email directly or view it on GitHub
https://github.com/davidjbradshaw/iframe-resizer/issues/217#event-323883530
.

--
David J. Bradshaw )'<EMAIL_ADDRESS>


[azcosmos] queryPager.NextPage(context.Background()) is throwing no host in url error

Bug Report
Package: github.com/Azure/azure-sdk-for-go/sdk/data/azcosmos
Version : v0.3.6
Go version : 1.20.4
Machine Config: Windows/AMD64
Issue: After updating to newer version from 0.3.5 to 0.3.6, queryPager.NextPage(context.Background()) is throwing no host in url error.
`
    container, _ := client.NewContainer("db", "container")
pk := azcosmos.NewPartitionKeyNumber(1)

queryPager := container.NewQueryItemsPager("SELECT c['On-Behalf'] FROM c", pk, nil)
var result []map[string]interface{}

for queryPager.More() {
	queryResponse, err := queryPager.NextPage(context.Background())
	if err != nil {
		var responseErr *azcore.ResponseError
		errors.As(err, &responseErr)
		panic(responseErr)
	}

	for _, item := range queryResponse.Items {
		var itemResponseBody map[string]interface{}
		err = json.Unmarshal(item, &itemResponseBody)
		result = append(result, itemResponseBody)
		if err != nil {
			panic(err)
		}
	}
}`

@Muhilraaj Can you please attach the error details? 0.3.6 has no changes related to query execution (https://github.com/Azure/azure-sdk-for-go/releases/tag/sdk%2Fdata%2Fazcosmos%2Fv0.3.6)

here it is:
panic: no Host in request URL
goroutine 1 [running]:
main.GetUser()
C:/Users/muhil/Documents/Go Scripts/azcosmos/main.go:41 +0x616
main.main()
C:/Users/muhil/Documents/Go Scripts/azcosmos/main.go:57 +0x17
here is where it is panicking
queryResponse, err := queryPager.NextPage(context.Background())
if err != nil {
var responseErr *azcore.ResponseError
errors.As(err, &responseErr)
panic(err)
}

@Muhilraaj Does this repro consistently? The project has CI/CD tests that perform real requests as part of any PR and on releases, all these tests are passing.
Are you initializing the client with a valid Endpoint URL?

Also, if you revert to 0.3.5, does the issue go away?

Actually no, I tried reverting as well, it still didn't work. But also I didn't change anything with the endpoint url as well.

One more thing, I also observed similar issue with azblob data retrival ,
here is the code that I use
func GetLabel() { 	cred, _ := azblob.NewSharedKeyCredential(os.Getenv("Storage_Account_Name"), os.Getenv("Storage_Account_Key")) 	options := azblob.PipelineOptions{} 	u, _ := url.Parse(os.Getenv("BLOB_URL")) 	pipeline := azblob.NewPipeline(cred, options) 	url := azblob.NewBlobURL(*u, pipeline) 	ctx := context.Background() 	b, _ := url.Download(ctx, 0, azblob.CountToEnd, azblob.BlobAccessConditions{}, false, azblob.ClientProvidedKeyOptions{}) 	var label = make(map[string]interface{}) 	_ = json.NewDecoder(b.Body(azblob.RetryReaderOptions{})).Decode(&label) 	fmt.Println(label) }
In this line _ = json.NewDecoder(b.Body(azblob.RetryReaderOptions{})).Decode(&label) I am getting a no host url error.
In both cases the connection went well but data read is causing issues

If reverting does not fix it, it seems this is unrelated to the 0.3.6 release.

In both cases the connection went well but data read is causing issues

How are you certain the connection went well? Are you certain the Endpoint being used on the azblob or azcosmos clients is a valid URL and that the machine can resolve the DNS?

I tried the same url and key with python, It's working fine there.

But is it the same machine? Can you run nslookup or some commandline tool with that DNS and does it work? If using the older library version faces the same problem then something else must have changed, the library code did not. Either some configuration is setting the wrong values or the machine cannot resolve the DNS records.
The panic seems to be coming from:
https://github.com/Azure/azure-sdk-for-go/blob/d1d0a7f803abdc1d18f204beaaf799c45521e442/sdk/azcore/internal/exported/request.go#L77-L79
For azcosmos, the URL is exactly what you put when you call NewClient:
https://github.com/Azure/azure-sdk-for-go/blob/d1d0a7f803abdc1d18f204beaaf799c45521e442/sdk/data/azcosmos/cosmos_client.go#L38-L40
https://github.com/Azure/azure-sdk-for-go/blob/d1d0a7f803abdc1d18f204beaaf799c45521e442/sdk/data/azcosmos/cosmos_client.go#L376-L382
So it probably means the endpoint might be an empty string? Have you tried logging that value to see what it is?

Sorry, my bad, the issue is on my end.
I use a middleware code to get endpoint url and it's causing issue.
We can close this issue.


"Content-Encoding: none" breaks mod_deflate

Hi,
I'm using mod_deflate instead of grav's builtin gzip-compression because it's more flexible for my needs.
As grav sets the header Content-Encoding: none in system/src/Grav/Common/Grav.php when having system.cache.gzip set to false, grav is preventing httpd from compressing the output. Imho there's no need for setting this header when compression is not wanted.
Kind regards,
Phil

I agree, will fix.

@mahagr looks like your shutdown fix added a Content-Encoding: none, is this required for your fix to function on your end?  https://github.com/getgrav/grav/commit/d2660e0755209523d772065ad0a2d9a2c6e4c987

Actually that Content-Encoding: none is indeed needed to make the functionality to work. Otherwise connection will not be closed with mod_deflate enabled because of the Content-Length is set (but is too long after the compression).
Basically the whole fix was Content-Encoding: none; the another change to force ob_start() was just something I found to be buggy if the browser didn't support compressing.
Please do not remove the line; it just breaks the code.

PHP does not have a way to close STDOUT. If you have something to process after the page has been sent, browser (and mod_deflate) will keep expecting more data and user needs to wait until PHP stops running before the page has been fully loaded. The only way to work around this is to send Content-Length and make client to close the connection when it has received all the data (except if you are using FastCGI, which has command to close the connection).
Assuming that you aren't using FastCGI, mod_deflate will never get the information that all the data has been sent and it will continue to expect more data regardless what you try to do. So the only way is not to use mod_deflate in this case.
All of this said:

It is not possible to use mod_deflate unless you are using FastCGI
It is possible to add special code path for FastGCI + mod_deflate which doesn't use gzhandler

In the second case request should probably not send Content-Length and connection close.

New logic should allow mod_deflate to do the hard work, but only if you are using FastCGI. You need to disable Grav's builtin gzip handler to use mod_deflate.
Without FastCGI there is not much that can be done because of the limitations of PHP. In this case you are better off using Grav's implementation of gzip.

Hi, thanks for your feedback.
is Content-Encoding: none even valid (rfc2616)? I've never seen it in any other applications before.
What about using flush(), ob_end_flush(), session_write_close() and, for fcgi, fastcgi_finish_request()? That should work fine even without the Content-Encoding header set to none.
fwiw, I'm using php-fpm. It might be possible workaround it using mod_headers, but that cannot be the final solution :)

We replied at the same time. Please see my comment from above.

To reply to your questions, I fixed the code to close the connection properly for you (php-fpm).
Content-Encoding: none is used in all the examples on how to prevent mod_deflate from compressing the PHP output. I don't think there is a better workaround for this -- I guess it is better to send slightly broken response than to let user to wait seconds or even minutes to get any response..
If you have ideas on how to do this in a better way, I'm all ears. At least the issue doesn't exist anymore with FastCGI. :)

great, thanks a lot :+1:

Hello,
This trick, seems to break on LiteSpeed when gzip is disabled in grav. Litespeed manages it's own gzip compression using a gzip cache which is much more efficient than what PHP can do) and add's gzip to the headers if it doesn't exist resulting in :
Content-Encoding:none,gzip
The result of this is that the browser show's the Gzip compressed content instead of compressing it.
If we comment out Content-Encoding:none the page loads without any delay on litespeed, I've also asked them if they have an equivilent to fastcgi_finish_request().
Some of your featured hosts also use litespeed, so I guess they also have to deal with this issue too.

Unless they have similar function to fastcgi_finish_request(), gzip from the server cannot really used. If they do not have the function, ask what is the correct way to stop server from compressing the output.
The main reason for the code we have is that it allows us to close the connection and to continue processing some cron job taking a lot time. Without the ability to close the connection, users would see page loading a long time even if they already received the whole page.

LiteSpeed can compress response with content-length header set without any problem. A properly written web server should be able handle it. When LiteSpeed compress the response body, it replaces "Content-Length" header with "Transfer-Encoding: chunked", the compressed response wont cause browser to spin forever.
Looks like we need to drop the "Content-Encoding:none" header internally.

I just found this issue because I was having a problem validating my site. The W3C Markup Validation Service will not work with a "Content-Encoding: none" header. It stops with an error "Don't know how to decode Content-Encoding 'none'".
Changing the value for system.cache.gzip to true in user/config/system.yaml fixed that.

@rhukster I think the correct one would be using Content-Encoding: identity, which means "no compression, no modification"

What is the state of this issue? I have run on it as @ulab and his solution works fine, but that means the default behaviour is buggy?

Ok, so i've made a change to this.  Changing to 'identity' was causing some encoding problems for some people.  I've rolled back the default to 'none' which actually works more reliably with our onShutDown() event.  However, you can set the cache: allow_webserver_gzip: true in system.yaml if you want to change the behavior and don't care about the onShutDown() potential slowdown.

@rhukster, you may want to comment this behaviour in the docs. The impression I got when tried to validate my site with W3C validator is that there is something broken. Gzip is recommended, but now should be considered a must if you want your site to be correctly validated and/or perhaps indexed (if W3C refuses to read the content, there is no warranty others will do).

I have a note in my "items to document" mega issue: https://github.com/getgrav/grav-learn/issues/356
You can enable Gzip via the grav option directly.  This will ensure gzip is working for the .php pages, and it will still work with onShutdown() event properly.


ChartSeriesType can't be set in XML

Only the default value defined in ChartSeries.js (or ChartSeries-dbg.js) is noticed.
<viz:ChartSeries type="ui5.viz.ChartSeriesType.Line" name=" {store>name}" data="{ path: 'store>dataPoints', templateShareable: true }"> won't have any effect, neither will
<viz:ChartSeries type="line" name=" {store>name}" data="{ path: 'store>dataPoints', templateShareable: true }">

The same applies for
<viz:ChartSeries yAxis="store>yAxis">

Hi, unfortunately this is a special behavior of UI5 and how it is handling data type constants in XML views.
Please use <viz:ChartSeries type="Line"> (capital L, or the name of the final data type attribute) or in the second example you must use <viz:ChartSeries yAxis="Y2">.


CloudFlare Plugin uses different DNS servers than specified in settings.json

Have found that when using the CloudFlare plugin for dns-01 validation, it appears to be trying to use DNS servers other than that specified in setttings.json, which results in a failure to renew due to our firewall restricting which DNS servers are contactable outside of our network.
Would it be possible to modify the plugin to obey the specified list in settings.json.
This is occurring in <IP_ADDRESS>5 (upgraded from <IP_ADDRESS>5 where it was also occurring).

Renewing certificate ABC
[ABC.com] Authorizing...
[ABC.com] Authorizing using dns-01 validation (Cloudflare)
Unable to find or contact authoritative name servers for _acme-challenge.ABC.com: Query 54607 => ABC.com IN NS on <IP_ADDRESS>:53 timed out or is a transient error.
[ABC.com] Authorization result: invalid
[ABC.com] {
"type": "urn:ietf:params:acme:error:dns",
"detail": "DNS problem: NXDOMAIN looking up TXT for _acme-challenge.ABC.com - check that a DNS record exists for this domain",
"status": 400
}
Renewal for ABC failed, will retry on next run

In settings.json I'm specifying the CloudFlare DNS servers for use:

"Validation": {
"DefaultValidation": null,
"DefaultValidationMode": null,
"DisableMultiThreading": true,
"CleanupFolders": true,
"PreValidateDns": false,
"PreValidateDnsRetryCount": 5,
"PreValidateDnsRetryInterval": 30,
"AllowDnsSubstitution": false,
"DnsServers": [ "<IP_ADDRESS>", "<IP_ADDRESS>" ]
},

The program implements a recursive DNS resolver. The servers specified in the config are the starting point in the search to determine the actual authoritative servers for a host name (also taking into account CNAME's and such), so it will always try to contact other servers as well.
If it cannot do that, as happens in your case, then it will just use the initial servers, which will be a bit less quick/reliable (due to caching and whatnot) but shouldn't affect the validation.
In other words I think this warning message has misguided you and validation is failing for another reason. We cannot be sure of anything though unless you post a full log, preferably with --verbose enabled.


iOS Scalebar

Includes changes to add a Xamarin iOS version of the scalebar.  Includes:

New head project for building a Xamarin iOS Toolkit assembly
Compiler conditionals and logic in ScaleLine.cs to cross-compile on Xamarin iOS
iOS-specific layout logic (in ScaleLine.iOS.cs)
Compiler conditionals in several shared classes to opt out of compiling them on Xamarin platforms

The API surface and implementation parallels that for Windows platforms.  The view has a default width of 200, which can be controlled via the TargetWidth property.  Design-time support is also included.

@dotMorten please have another look.  I've addressed all your feedback items.  Additionally, as discussed, I eliminated nearly all the compiler conditionals in the shared ScaleLine.cs file by moving platform-specific logic into partial classes.  Changes for that specifically include:

One new partial class file for Xamarin platforms (ScaleLine.Xamarin.cs) and one for Windows (ScaleLine.Windows.cs)

One new shared project for code that is shared only between Xamarin platforms (Esri.ArcGISRuntime.Toolkit.Xamarin.Shared) and one for code shared between Windows platforms (Esri.ArcGISRuntime.Toolkit.Windows.Shared)

Alternatives here would have been to keep the files in the master shared project or link these files directly into the head projects.  I thought quite a bit about this, and in the end came to think that having dedicated shared projects is really the best approach.  Due mainly to having DependencyProperties on Windows platforms and not Xamarin (native), it's going to be very common to have swaths of code that applies just to UWP and WPF or just to iOS and Android.

Moved the "master" shared project (Esri.ArcGISRuntime.Toolkit.Shared) from the root of the Shared folder into Shared\All.  So the Shared folder now has three sub-folders - All, Windows, and Xamarin.

Public cross-platform properties still have their signatures defined in the shared ScaleLine.cs file, but the getters and setters redirect to private platform-specific implementations, like so:
    /// <summary>
    /// Gets or sets the width that will be used to
    /// calculate the length of the ScaleLine
    /// </summary>
    public double TargetWidth
    {
        get => TargetWidthImpl;
        set => TargetWidthImpl = value;
    }

This seemed the best way of ensuring that the API surface and XML summary doc stays in sync across all the platforms.
I've used a naming convention of <MemberName>Impl for the platform-specific implementations.  I also considered <MemberName>Internal or similar.  Definitely open to suggestions.

@dotMorten please have another look.  The code-sharing approach has platform-specific code moved into partial classes.  I've put the partial classes into the main shared project and done away with the Windows and Xamarin shared projects.


Port test/test_datasets_utils.py to pytest

Currently, most tests in test/test_datasets_utils.py rely on unittest.TestCase. Now that we support pytest, we want to remove the use of the unittest module.
Instructions
Please comment below if you're interested to work on this and submit a PR for all the tests in this file.
Here are a few instructions specific to this file. I just gave it a brief look so I might be wrong on some of these, use your best jugement ;)

parametrize test_detect_file_type over (file, expected)
group all of test_detect_file_type_no_ext,
test_detect_file_type_to_many_exts,
test_detect_file_type_unknown_archive_type,
test_detect_file_type_unknown_compression,
test_detect_file_type_unknown_partial_ext, into a single test function
parametrized over the file name, and convert the function names as
comments to document the tests
test_decompress_gzip and test_decompress_lzma and
test_decompress_remove_finished can probably be bundled into the same test
function with some parametrization over the extension and over remove_finished
test_extract_archive_defer_to_decompress should be parametrized over ext and removed_finished (2 separate parametrizations)
for test_extract_archive_defer_to_decompress, use the mocker fixture as done in https://github.com/pytorch/vision/pull/4032/files
there are other stuff that could be parametrize, feel free to try things that make sense

How to port a test to pytest
Porting a test from unittest to pytest is usually fairly straightforward. For a typical example, see https://github.com/pytorch/vision/pull/3907/files:

take the test method out of the  Tester(unittest.TestCase) class and just declare it as a function
Replace @unittest.skipIf with pytest.mark.skipif(cond, reason=...)
remove any use of self.assertXYZ.

Typically assertEqual(a, b) can be replaced by assert a == b when a and b are pure python objects (scalars, tuples, lists), and otherwise we can rely on assert_equal which is already used in the file.
self.assertRaises should be replaced with the pytest.raises(Exp, match=...): context manager, as done in https://github.com/pytorch/vision/pull/3907/files. Same for warnings with pytest.warns
self.assertTrue should be replaced with a plain assert

When a function uses for loops to tests multiple parameter values, one should usepytest.mark.parametrize instead, as done e.g. in https://github.com/pytorch/vision/pull/3907/files.

cc @pmeier

I'd love to work on this, will send a PR soon.


DNS Challenge with LuaDNS failing

Checklist

Have you pulled and found the error with jc21/nginx-proxy-manager:latest docker image?

Yes

Are you sure you're not using someone else's docker image?

Yes

Have you searched for similar issues (both open and closed)?

Yes (There was a similar error recently about "invalid argument 'type'" but this appears different.)

Describe the bug
When trying to issue a new or even renew certificates with LuaDNS DNS challenge it's failing
While trying to issue a new SSL cert with DNS challenge receive the following error (email address and domain omitted...was not wildcard)
Error: Command failed: /opt/certbot/bin/certbot certonly --non-interactive --cert-name "npm-18" --agree-tos --email "emailaddres@omitted" --domains "domain.omitted" --authenticator dns-luadns --dns-luadns-credentials "/etc/letsencrypt/credentials/credentials-18"
usage:
certbot [SUBCOMMAND] [options] [-d DOMAIN] [-d DOMAIN] ...
Certbot can obtain and install HTTPS/TLS/SSL certificates.  By default,
it will attempt to use a webserver both for obtaining and installing the
certificate.
certbot: error: unrecognized arguments: --dns-luadns-credentials /etc/letsencrypt/credentials/credentials-18
at ChildProcess.exithandler (node:child_process:326:12)
at ChildProcess.emit (node:events:369:20)
at maybeClose (node:internal/child_process:1067:16)
at Process.ChildProcess._handle.onexit (node:internal/child_process:301:5)

During Renewal I'm seeing the following error:
[6/14/2021] [11:08:32 AM] [SSL      ] › ✖  error     Error: Command failed: /opt/certbot/bin/certbot renew --non-interactive --quiet --config "/etc/letsencrypt.ini" --preferred-challenges "dns,http" --disable-hook-validation
Renewal configuration file /etc/letsencrypt/renewal/npm-15.conf (cert: npm-15) produced an unexpected error: 'Namespace' object has no attribute 'dns_luadns_credentials'. Skipping.
Nginx Proxy Manager Version
Version 2.9.3
To Reproduce
Steps to reproduce the behavior for new SSL cert:

Go to SSL Certificates
Click on Add SSL Certificate
Click on LetsEncrypt
Fill out form
Select Use a DNS Challenge
Choose LuaDNS for the provider
Fill out the rest of the info
Error above received

Steps to reproduce the behavior for renewal happen automatically.  Restarted the docker container.
Expected behavior
After a minute or two, an SSL cert should be issued
Operating System
Docker container on debian
Additional context
I'm not entirely sure when this started to be a problem.  I only recently started using DNS challenge and have only had to renew once  so whatever broke it, it has been within the last 6 to 9 months.

It's the certbot / certbot dns plugin version, there is a bug. Manually update certbot and the plugin and it should be good to go.
They should push an updated image with updated certbot...

@jbonet Could you link the bug if there is any thing available? Just to know what to update to which version

@jbonet from a shell inside the docker container I ran pip install certbot --upgrade.  Didn't seem to make any difference.  Is there something else I should be doing?

Please check with pip show certbot-dns-luadns whether the luaDNS addon is installed at all, and with certbot plugins whether certbot recognizes the plugin.

certbot plugins:
`* dns-luadns
Description: Obtain certificates using a DNS TXT record (if you are using LuaDNS
for DNS).
Interfaces: IAuthenticator, IPlugin
Entry point: dns-luadns = certbot_dns_luadns._internal.dns_luadns:Authenticator

standalone
Description: Spin up a temporary webserver
Interfaces: IAuthenticator, IPlugin
Entry point: standalone = certbot._internal.plugins.standalone:Authenticator

webroot
Description: Place files in webroot directory
Interfaces: IAuthenticator, IPlugin
Entry point: webroot = certbot._internal.plugins.webroot:Authenticator`

pip show certbot-dns-luadns
Name: certbot-dns-luadns Version: 1.8.0 Summary: LuaDNS Authenticator plugin for Certbot Home-page: https://github.com/certbot/certbot Author: Certbot Project Author-email<EMAIL_ADDRESS>License: Apache License 2.0 Location: /usr/local/lib/python3.7/dist-packages Requires: acme, zope.interface, certbot, dns-lexicon, setuptools Required-by:

Maybe similar issue as https://github.com/jc21/nginx-proxy-manager/issues/1109?

It's possible.  Just typed which certbot and it returned /usr/local/bin/certbot
If I cd to /opt/certbot/bin and do ./certbot plugins I only get the following

standalone
Description: Spin up a temporary webserver
Interfaces: IAuthenticator, IPlugin
Entry point: standalone = certbot._internal.plugins.standalone:Authenticator

webroot
Description: Place files in webroot directory
Interfaces: IAuthenticator, IPlugin
Entry point: webroot = certbot._internal.plugins.webroot:Authenticator

I noticed 2.9.4 was released.  Updated my docker container and tried creating a new SSL cert with the LuaDNS DNS challenge.  Initially it failed because certbot was already running.  Noticed eventually in my logs I had two old certs that failed to renew.  Not sure why the certs still exist for renewal even though they were deleted.  Anyway, after doing some manual cleanup of the leftover certs I was able to successfully issue a new cert.  I'm going to go ahead and close this as I'm pretty confident the fixes in 2.9.4 also fixed the renewal issue.


improving note card ui by adding different fonts for "Welcome to noter js" and checkout your notes" also adding some borders

Can you pl assign it to me

I haven't done this...waiting for your approval


[BUG] Namespace "X" not found when creating public SSH key in a new namespace

Describe the bug

Creating a VM and a namespace doesn't allow adding new public SSH keys.
To Reproduce
Steps to reproduce the behavior:
When creating VM in a, I can create a new namespace:

Then, I can add a new public SSH key:

And when trying to create the public SSH key, I get an error about the namespace:

Expected behavior

Both namespace and public SSH keys would be created.
Support bundle

Environment
Irrelevant.

@DovydasNavickas thank for raising this, it's a bug indeed.
Currently, we create namespace after clicking Create button on vm page. It checks if this namespace exists or not. If not, it creates it first, like these requests order on the network tab. But, it didn't have this flow when creating ssh key on vm page.

The SSHKey modal is used only in VM create page.
I think we could just edit the new SSH key and save it after clicking Create button, so that the namespace is created first, then the SSH key and then the VM.

It's possible to create a VM in namespace x,  assigning SSH Keys from namespace y . Does it make sense ?

@torchiaf, that is true, assigning SSH keys from other namespaces is fine.
But creating them into selected namespace still makes sense and if the namespace doesn't exist yet, creating it for the SSH keys being created also makes sense, no matter whether the VM creation will be canceled or approved.

@torchiaf thanks for this fix :smile: :+1:  - this looks good on v1.4.0-dev-20240705 I'll go ahead and close this out


Added Token env and config.json support

put token=YOUR_BOT_TOKEN in a .env file to Make your token Safe

Yes!!!

what about people who aren't using replit and have an actual .env file?
it would have been useful if you could have added a line defining the dotenv config

There is a .env support

I just accidentally removed it i will add it soon back


How do extract a signature key

How can i extract a signature key from an apk file?

If you are using v<IP_ADDRESS>.124: 46024e8f31e295869a0e861eaed42cb1dd8454b55232d85f6c6764365079374b
In version newer than <IP_ADDRESS>.124, it's just SIGNATURE string.
Example: signed_body=SIGNATURE.{"phone_id":"51df5a24-e59e-46cd-bc01-fe658aba9f18","_csrftoken":"mPzWvJ399rqCxOY5rn6Bggq7oOcFkf6U","usage":"prefill"}
Source: https://github.com/itsMoji/Instagram_SSL_Pinning


Use app locks for all transactions

Description
This is to address deadlocks that I started seeing when running benchmarks with multiple hosts. Even just 2 hosts running in parallel would very consistently get in a deadlock after a couple of minutes. I was able to track the deadlock down to the GetChanges  and UpdateTablesPostInvocation - although I did not dig into it further enough to know exactly what table it was deadlocked on.
Explanation copied from the comment :
/// The trigger heavily uses transactions to ensure atomic changes, that way if an error occurs during any step of a process we aren't left
/// with an incomplete state. Because of this locks are placed on rows that are read/modified during the transaction, but the lock isn't
/// applied until the statement itself is executed. Some transactions have many statements executed in a row that touch a number of different
/// tables so it's very easy for two transactions to get in a deadlock depending on the speed they execute their statements and the order they
/// are processed in.
///
/// So to avoid this we use application locks to ensure that anytime we enter a transaction we first guarantee that we're the only transaction
/// currently making any changes to the tables, which means that we're guaranteed not to have any deadlocks - albeit at the cost of speed. This
/// is acceptable for now, although further investigation could be done into using multiple resources to lock on (such as a different one for each
/// table) to increase the parallelization of the transactions.

I looked at various ways to change the existing locking to remove the possibility of a deadlock, but in the end I came to the conclusion that with the transaction-based nature of most of our statements and how many things each transaction does that trying to do so would be very risky and maybe even impossible.
The app locking approach is very heavy handed - but it's a very straightforward way to ensure application consistency.
The main downside with this is that we will take a perf hit when multiple functions are running in parallel. But right now focusing on consistency and correctness is more important to me so I wanted to start with this and then selectively make improvements later so we can be sure they're tested properly.
Testing
First part was just using the benchmark parallelization suite. Before this change I would very consistently hit a deadlock within a couple of minutes of running with even just two hosts running in parallel. After the change I was able to run the full suite with both 2 hosts and 5 hosts (which runs each benchmark test 50+ times to generate the histogram)
(note that the overall times include the startup time for the host processes, which is why we're seeing such huge values. I'll be following up with fixing that so it only measures the time taken to get all the change notifications but for purposes of this fix that number isn't directly relevant)
SqlTriggerBindingPerformance_Parallelization.MultiHost: Job-FLKWWV(InvocationCount=1, UnrollFactor=1) [hostCount=2]
Runtime = .NET 6.0.10 (6.0.1022.47605), X64 RyuJIT; GC = Concurrent Workstation
Mean = 16.049 s, StdErr = 0.094 s (0.58%), N = 81, StdDev = 0.843 s
Min = 14.720 s, Q1 = 15.258 s, Median = 15.976 s, Q3 = 16.769 s, Max = 17.892 s
IQR = 1.510 s, LowerFence = 12.993 s, UpperFence = 19.035 s
ConfidenceInterval = [15.729 s; 16.369 s] (CI 99.9%), Margin = 0.320 s (1.99% of Mean)
Skewness = 0.37, Kurtosis = 1.9, MValue = 2.65
-------------------- Histogram --------------------
[14.464 s ; 15.014 s) | @@@
[15.014 s ; 15.526 s) | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
[15.526 s ; 16.044 s) | @@@@@@@
[16.044 s ; 16.555 s) | @@@@@@@@@@@@@@@@@
[16.555 s ; 17.233 s) | @@@@@@@@@@@@@@@
[17.233 s ; 17.762 s) | @@@@@@@
[17.762 s ; 18.148 s) | @
---------------------------------------------------

SqlTriggerBindingPerformance_Parallelization.MultiHost: Job-FLKWWV(InvocationCount=1, UnrollFactor=1) [hostCount=5]
Runtime = .NET 6.0.10 (6.0.1022.47605), X64 RyuJIT; GC = Concurrent Workstation
Mean = 38.582 s, StdErr = 0.221 s (0.57%), N = 57, StdDev = 1.671 s
Min = 35.312 s, Q1 = 37.624 s, Median = 38.795 s, Q3 = 39.644 s, Max = 42.237 s
IQR = 2.020 s, LowerFence = 34.594 s, UpperFence = 42.674 s
ConfidenceInterval = [37.813 s; 39.350 s] (CI 99.9%), Margin = 0.769 s (1.99% of Mean)
Skewness = -0.06, Kurtosis = 2.37, MValue = 2
-------------------- Histogram --------------------
[34.742 s ; 36.062 s) | @@@@@
[36.062 s ; 37.202 s) | @@@@@@@@
[37.202 s ; 38.602 s) | @@@@@@@@@@@@@@
[38.602 s ; 40.013 s) | @@@@@@@@@@@@@@@@@@@@@
[40.013 s ; 41.561 s) | @@@@@@@
[41.561 s ; 42.807 s) | @@
---------------------------------------------------

After getting that to pass I compared the execution times of the single host to make sure the app locking didn't have a huge impact on that :
Without App Locking:
|              Method | count |     Mean |    Error |   StdDev | Allocated |
|-------------------- |------ |---------:|---------:|---------:|----------:|
| ProductsTriggerTest |     1 |  1.040 s | 0.0094 s | 0.0088 s |     12 KB |
| ProductsTriggerTest |    10 |  1.052 s | 0.0142 s | 0.0133 s |     26 KB |
| ProductsTriggerTest |   100 |  1.153 s | 0.0085 s | 0.0076 s |    174 KB |
| ProductsTriggerTest |  1000 | 10.565 s | 0.0350 s | 0.0310 s |  1,737 KB |

With App Locking:
|              Method | count |     Mean |    Error |   StdDev | Allocated |
|-------------------- |------ |---------:|---------:|---------:|----------:|
| ProductsTriggerTest |     1 |  1.042 s | 0.0099 s | 0.0092 s |     11 KB |
| ProductsTriggerTest |    10 |  1.056 s | 0.0098 s | 0.0087 s |     26 KB |
| ProductsTriggerTest |   100 |  1.170 s | 0.0147 s | 0.0137 s |    177 KB |
| ProductsTriggerTest |  1000 | 10.612 s | 0.0396 s | 0.0310 s |  1,718 KB |

What does this do for perf when there's only one function running at a time? Is calling sp_getapplock an expensive operation?

Added results from single-host perf tests to description (there didn't seem to be any noticeable impact)

Thanks for setting up the benchmarks with/without app locking. Really glad that the runtime impact time is very minor.

Should we add app lock in queries inside SqlTriggerListener.cs too? That might fix https://github.com/Azure/azure-functions-sql-extension/issues/406.


Group by warring/error message to a single SNS event & a SNS event for successful stop start recourse

Hi,
I am using the instance scheduler for managing ec2 recourses on around 2x aws accounts, for some cause the ec2 is not tagged as it is not require for stop/start and the function will return a warning say "schedule name "1111"/"0000" is unknown" and send out a email by each warning message. so every hour I will receive around 4xx email for the warning message.
Is that possible to group by the warning message in a one email and also add the event after successful stop start?

@aMfM9E2 You can choose to update the logger.py file to write some filter conditions based on your requirement.
    def warning(self, msg, *args):
        """
        Logs warning message
        :param msg: Warning message format string
        :param args: parameters
        :return:
        """
        s = self._emit(LOG_LEVEL_WARNING, msg, *args)

        #Update the code here to filter out message(s) based on a format.
        self.publish_to_sns("Warning", s)

Apart from making the above change, there is no workaround for aggregating similar type of warning messages, I will add a new feature in the backlog to be prioritized for a future release.

@gockle , thanks for the reply, that perfect if in the future can provide difference logging level for sns like successful list, warning list etc... instance scheduler is a very cool solution for cross account operation, can't wait for next release and more new functions

We do not have plans to support this feature in the solution.


problem with dark solarized theme and vim mode indicators

When using airline and the solarized colortheme the vim mode colors are wrong
Normal is unreadable

The others look like this

Also not all buffers are visible.

I am using cygwin's vim and tmux on Win7.
this is my tmux.conf
#### COLOUR (Solarized dark)

# default statusbar colors
set-option -g status-bg black #base02
set-option -g status-fg yellow #yellow
set-option -g status-attr default

# default window title colors
set-window-option -g window-status-fg brightblue #base0
set-window-option -g window-status-bg default
#set-window-option -g window-status-attr dim

# active window title colors
set-window-option -g window-status-current-fg brightred #orange
set-window-option -g window-status-current-bg default
#set-window-option -g window-status-current-attr bright

# pane border
set-option -g pane-border-fg black #base02
set-option -g pane-active-border-fg brightgreen #base01

# message text
set-option -g message-bg black #base02
set-option -g message-fg brightred #orange

# pane number display
set-option -g display-panes-active-colour blue #blue
set-option -g display-panes-colour brightred #orange

# clock
set-window-option -g clock-mode-colour green #green

I recently had the same problem on linux using gnome-terminal. I solved it by setting t_Co=16 as vim solarized color them's author suggested in this thread on SO.

I have add set t_Co=16 an now the NORMAL mode indicator is readable now.
The colors look different though.
My setup

vim-airline wiki for solarized dark

I have the same problem with gnome-terminal, it's not from vim-airline but from your solarized color theme.
 You might also try the solarized options as has been said. Therefore, closing.


Fix hyphens in path parameters

Fixes #976 and #578, and replaces #978.
@dbanty please choose your preferred approach between this and PR #987.
The original issue is that openapi-python-client throws incorrect path templating warnings when the path has a parameter with a hyphen and consequently fails to generate the endpoints.

The first commit ensures that hyphens are recognised as allowed delimiters in parameter path names. This allows the endpoints to be generated.
However, this generates lines like these:
def _get_kwargs(
    user_id: int,
) -> Dict[str, Any]:
    _kwargs: Dict[str, Any] = {
        "method": "post",
        "url": "/activitypub/user-id/{user-id}/inbox".format(user-id=user_id,),
    }
    return _kwargs

Since Python variable names cannot contain hyphens, the user-id parameter name here will trigger errors (starting with ruff).

The second commit replaces parameter names with their python_name in __init__.py and passes the modified path to templates/endpoint_module.py.jinja.
This fixes the issue and allows endpoints to be generated correctly.

#987 is a different option for the second commit which instead creates a custom Jinja filter in utils.py and so that the parameter names in endpoint.path can be converted to their python names directly in templates/endpoint_module.py.jinja.
Both approaches are equivalent and have been tested with different parameter names (snake case, camel case, kebab case, mixed).

Thanks @dbanty!


App Crashes On Start

Hey Guys! Love the app and have been a long time user! Ran into a interesting problem though upon updating and testing.
I am using the most up to date version of tiny-care-terminal but it crashes upon opening. So I see the screen for a split then this error pops up.

There were also warnings and issues upon installing the package globally with npm and the rebuild. Now the interesting thing is if I revert to 1.3.2 it works perfectly with my setup. I also tried a couple different versions of node with this going between current and stable, the same issue pops up.

Node Version: 8.11.2
tiny-core-terminal version: 1.4.2
Shell: bash
Terminal Program: Hyper
Operating System: Mac

For now I will use 1.3.2, I can't work properly without this app lol. Hopefully though this is just an issue with my machine. Let me know if you guys need any other details. Could be a problem on my end and I'll try to figure out the exact problem.

Hiya -- this seems to be a problem introduced in 1.4.0. I haven't looked into it yet, but the problem seems to be with the paths you have for your repos. You probably have a relative path like ~/Code; if you convert that to the full qualified path (/Users/foo/Code the crash goes away.
Sorry about that!

I'll have a closer look on the weekend. Sorry for introducing this!

@notwaldorf alrighty that did the trick 😄 Also sorry didn't notice the bug was listed in your Readme. I'll try to keep an eye for the ones that pop up in it next time.

@thegalacticninja whew glad it worked
@mojoaxel no worries at all!


TSX support attribute object literal shorthand

Search Terms
tsx attribute shorthand, object shorthand

Suggestion
ES6 has this great syntax of passing key value pairs in objects e.g.
function swahili() {
  const hello = 'jambo';
  const great = 'sawa';
  return {hello, great};
}

but in TSX land this doesn't transfer well e.g.
function render() {
  const hello = 'jambo';
  const great = 'sawa';
  return <Greetings {hello, great} />
}

typescript throws an error that it needs a  TS1005: '...' expected.
It instead needs to be written as
function render() {
  const hello = 'jambo';
  const great = 'sawa';
  return <Greetings {...{hello, great}} />
}

which seems very boiler platey.
It would be awesome if we could make a small tweak to pass attributes like es6 shorthand.
so all of these would be equal
<Foo hello={hello} world={world} />
<Foo {hello} {world} />
<foo {hello, world} />

They would all be emitted as
h(Foo, {hello, world})

Use Cases

Examples

Checklist
My suggestion meets these guidelines:

[x] This wouldn't be a breaking change in existing TypeScript/JavaScript code
[x] This wouldn't change the runtime behavior of existing JavaScript code
[ ] This could be implemented without emitting different JS based on the types of the expressions
[ ] This isn't a runtime feature (e.g. library functionality, non-ECMAScript syntax with JavaScript output, etc.)
[ ] This feature would agree with the rest of TypeScript's Design Goals.

@RyanCavanaugh ^
Since you're the TSX expert, I assume you may have thoughts on it.

This is better proposed to the JSX spec. If it's accepted there, it'll surely find its way into Typescript

Proposed for the JSX spec here: https://github.com/facebook/jsx/issues/23

said JSX pr with BNF grammar change: https://github.com/facebook/jsx/pull/118

The problem I find with proposals to the JSX spec is that they go untouched for years. This issue was created in 2014, and has had no action. Another issue (facebook/jsx#66) was created in 2016 and is a relatively trivial change.
Even worse, there is no response from the maintainers even after being directly pinged. That's the case in both issues.
TypeScript is a superset of JavaScript, why not also make it a superset of JSX?

These proposals need to start with the JSX folks.
I'm vaguely surprised (but happy) it doesn't already parse as a sequence expression 😅

Just curious, What do you mean by sequence expression?
Yeah jsx folks have been non-active for years. I tried pinging some contributors so let’s see where this goes.

The expression a, b (e.g. 1 + (2, 3) === 4) evaluates a, evaluates b, and produces the right operand's result.

I've just created facebook/jsx#119. Let's see what happens; I absolutely intend on forking the spec and updating it if Facebook doesn't consider proposals that have been open for multiple years.


Youtube viewer

Add a  API which uses the YouTube embedded player and can fire captions from the YouTube Data API if it is available.

This change is

This is a prerequisite for T2C and Text Classification samples in Chrome.


Colorize bargain using Bid instead of BIN

The new "colorize bargain" Feature is great but its really hard to find a player bargain nowadays. Only with the 59th minute trick and there is still a low chance to find one.
Would be awesome it would compare Futbin price with the bid price of the player and highlight if the Bid is at least 10% lower than the Futbin Price.

Dupe of #121.


Use regexp.MustCompile

There are several cases where regexp.Compile() is used with a constant string.
The errors are either ignored or handled in a clunky way.
Switch to using MustCompile() so that we're not faced with error handling when compiling a regex from a constant.

@bwJuniper completed via #70


Bugfix/audit

Description
State reset not working for primitives on activate conditional.
Overview of Changes
Changed the check for the state reset
Type of Change

[ ] Bug fix

Test Details
test_activateConditionalOnPrimitives

You did it @sandeepmantha!
Thank you for signing the Anthem Opensource Software CLA.

We need to test this using frontend code, test with nested scenarios within a model.


tasty-hspec doesn't respect --hide-successes

See tasty #213 for original discussion.
tasty-hspec apparently prints out all of the tests when --hide-successes is passed on the command-line. This is not the intended behavior of the flag -- it should hide the entire test, not just the successful output.

Indeed the only options from OptionSet we respect are QuickCheck and SmallCheck pass-thrus - none of the built-in options from https://hackage.haskell.org/package/tasty-1.0.1/docs/Test-Tasty-Options.html#t:IsOption:

TestPattern
Timeout
NumThreads
ListTests
UseColor
HideSuccesses
Quiet

Hm, @feuerbach could you please clarify why you think this is an issue with tasty-hspec? This package only re-jiggers an hspec spec into a tasty tree, but is not responsible for top-level "run" configurations, like hiding the output of successful tests.
But in addition, I was unable to reproduce the issue with this test suite:
import Test.Hspec
import Test.Tasty
import Test.Tasty.Hspec

spec :: Spec
spec =
  it "does something" $
    1 `shouldBe` 1

main :: IO ()
main = do
  tree <- testSpec "hspec suite" spec
  defaultMain tree

When I run e.g. stack test --test-arguments=--hide-successes, I see no indication that a test named "does something" was run. It just says 1 test passed.

Sorry, that was just my guess — I didn't try to reproduce the issue. It could be that the output is coming from somewhere else in the test suite.

@parsonsmatt Any update on this?

I'm going to close this out as I couldn't reproduce, but please re-open if I've overlooked something.


sync: release 0.13.x

What type of PR is this?
/kind cleanup
Any specific area of the project related to this PR?
Does this PR require a change in the driver versions?
What this PR does / why we need it:
Cherry picks for release 0.13.x:

https://github.com/falcosecurity/libs/pull/1349
https://github.com/falcosecurity/libs/pull/1350
https://github.com/falcosecurity/libs/pull/1345
https://github.com/falcosecurity/libs/pull/1339

Which issue(s) this PR fixes:
Fixes #
Special notes for your reviewer:
Does this PR introduce a user-facing change?:

NONE

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: FedeDP
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS [FedeDP]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

/milestone 0.13.0

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: Andreagit97, FedeDP
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS [Andreagit97,FedeDP]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

/unhold

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: Andreagit97, FedeDP, leogr
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS [Andreagit97,FedeDP,leogr]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment


Mobile Spawning

Mobile spawning is now working and the components on the generated mobs seem to also be working (Wanderer component allows the mob to move between rooms now).  This should enable more detailed components to be developed now that the core functionality is in place.


use tracker state to exclude tracks in the stf listener

Using the red/yellow/green state to filter tracks for the listeners.

@UAPPaul Funny enough I actually just did something very similar.


git lfs pull / attempt to pull whisper.tflite says that account is over data quota

$ git lfs pull
batch response: This repository is over its data quota. Account responsible for LFS bandwidth should purchase more data packs to restore access.
error: failed to fetch some objects from 'https://github.com/usefulsensors/openai-whisper.git/info/lfs'

Is there anywhere else that I can download your tflite file?
Thanks for creating this

I found a file under the android app path that wasn't lfs based - closing.  Thanks


Cannot Create Thermostat Accessory

Hello,
I'm attempting to create a thermostat accessory, and for some reason, The Home app returns "Couldn't connect to this accessory." error.
here is my initialization code:
info := accessory.Info{
		Name:         "Nest",
		Manufacturer: "Nest Labs Inc",
	}
	acc := accessory.NewThermostat(
		info,
		75.0,
		75.0,
		75.0,
		1.0,
	)
	config := hc.Config{Pin: *pin, Port: *port}
	tp, err := hc.NewIPTransport(config, acc.Accessory)
	if err != nil {
		log.Info.Panicln(err.Error())
	}
	hc.OnTermination(func() {
		<-tp.Stop()
	})
	tp.Start()

Here is an excerpt from the logs:
DEBUG 2018/08/23 20:19:48 signature is valid
DEBUG 2018/08/23 20:19:48 Setup secure session
DEBUG 2018/08/23 20:19:48 <IP_ADDRESS>:64933 GET /accessories
DEBUG 2018/08/23 20:19:48 {"accessories":[{"aid":1,"services":[{"iid":1,"type":"3E","characteristics":[{"iid":2,"type":"14","perms":["pw"],"format":"bool"},{"iid":3,"type":"20","perms":["pr"],"value":"Nest Labs Inc","format":"string"},{"iid":4,"type":"21","perms":["pr"],"value":"undefined","format":"string"},{"iid":5,"type":"23","perms":["pr"],"value":"Nest","format":"string"},{"iid":6,"type":"30","perms":["pr"],"value":"undefined","format":"string"},{"iid":7,"type":"52","perms":["pr"],"value":"","format":"string"}]},{"iid":8,"type":"4A","characteristics":[{"iid":9,"type":"F","perms":["pr","ev"],"value":0,"format":"uint8"},{"iid":10,"type":"33","perms":["pr","pw","ev"],"value":0,"format":"uint8"},{"iid":11,"type":"11","perms":["pr","ev"],"value":0,"format":"float","unit":"celsius","maxValue":0,"minValue":0,"minStep":1},{"iid":12,"type":"35","perms":["pr","pw","ev"],"value":10,"format":"float","unit":"celsius","maxValue":0,"minValue":0,"minStep":1},{"iid":13,"type":"36","perms":["pr","pw","ev"],"value":0,"format":"uint8"}]}]}]}
DEBUG 2018/08/23 20:19:48 <IP_ADDRESS>:64933 POST /pairings
DEBUG 2018/08/23 20:19:48 ->     Method: Delete
DEBUG 2018/08/23 20:19:48 -> Permission: 0
DEBUG 2018/08/23 20:19:48 ->   Username: 1A9D0022-5D0F-4812-9514-7F1DE6DC2DFB
DEBUG 2018/08/23 20:19:48 ->       LTPK: []
DEBUG 2018/08/23 20:19:48 Remove LTPK for client '1A9D0022-5D0F-4812-9514-7F1DE6DC2DFB'
DEBUG 2018/08/23 20:19:48 Event: unpaired with device
DEBUG 2018/08/23 20:19:49 Close connection and remove session

I've been able to successfully run a LightSwitch accessory without any issues.

I'm also looking into something similar, and wondering if the (as yet un-merged) PR #125 might help.

From the log I can see that the client successfully connected and paired with the accessories. But then it immediately unpairs with the accessories. Probably the data of the accessory is invalid.
Maybe a min and max temperature of 75° is invalid. Have you tried to use 70° for min and 75° for max?

Yes, I've tried 70 for min and 80 for max. Same result (logs):
DEBUG 2018/08/27 23:46:33 signature is valid
DEBUG 2018/08/27 23:46:33 Setup secure session
DEBUG 2018/08/27 23:46:33 <IP_ADDRESS>:53979 GET /accessories
DEBUG 2018/08/27 23:46:33 {"accessories":[{"aid":1,"services":[{"iid":1,"type":"3E","characteristics":[{"iid":2,"type":"14","perms":["pw"],"format":"bool"},{"iid":3,"type":"20","perms":["pr"],"value":"Nest Labs Inc","format":"string"},{"iid":4,"type":"21","perms":["pr"],"value":"undefined","format":"string"},{"iid":5,"type":"23","perms":["pr"],"value":"Nest","format":"string"},{"iid":6,"type":"30","perms":["pr"],"value":"undefined","format":"string"},{"iid":7,"type":"52","perms":["pr"],"value":"","format":"string"}]},{"iid":8,"type":"4A","characteristics":[{"iid":9,"type":"F","perms":["pr","ev"],"value":0,"format":"uint8"},{"iid":10,"type":"33","perms":["pr","pw","ev"],"value":0,"format":"uint8"},{"iid":11,"type":"11","perms":["pr","ev"],"value":75,"format":"float","unit":"celsius","maxValue":80,"minValue":70,"minStep":1},{"iid":12,"type":"35","perms":["pr","pw","ev"],"value":38,"format":"float","unit":"celsius","maxValue":80,"minValue":70,"minStep":1},{"iid":13,"type":"36","perms":["pr","pw","ev"],"value":0,"format":"uint8"}]}]}]}
DEBUG 2018/08/27 23:46:33 <IP_ADDRESS>:53979 POST /pairings
DEBUG 2018/08/27 23:46:33 ->     Method: Delete
DEBUG 2018/08/27 23:46:33 -> Permission: 0
DEBUG 2018/08/27 23:46:33 ->   Username: 1A9D0022-5D0F-4812-9514-7F1DE6DC2DFB
DEBUG 2018/08/27 23:46:33 ->       LTPK: []
DEBUG 2018/08/27 23:46:33 Remove LTPK for client '1A9D0022-5D0F-4812-9514-7F1DE6DC2DFB'
DEBUG 2018/08/27 23:46:33 Event: unpaired with device
DEBUG 2018/08/27 23:46:34 Close connection and remove session

Can somebody please try with hc v1.1.0?

I just tried it, and it works without issues.
@jtsiros, note that the units are degrees Celsius (according to the HAP specs).


warning react-tag-input ><EMAIL_ADDRESS>Contains template literal syntax; update to v15.7.1

I have
"prop-types": "^15.7.2",
...
"react": "^16.8.4",
"react-dom": "^16.8.4",
...
"react-tag-input": "^6.4.0",

in my project and when I run yarn install I've got such warning:
warning react-tag-input ><EMAIL_ADDRESS>Contains template literal syntax; update to v15.7.1

@ktaras  thanks for reporting. I will look into this.


Dockerfile improvements

reduce image package size cleaning up temporary files kept for
repositories.

closes: https://issues.redhat.com/browse/ECOPROJECT-1417
Signed-off-by: Carlo Lobrano<EMAIL_ADDRESS>

/test 4.13-openshift-e2e

/retest

/retest


Named schedule

Add a string name to a scheduled task for easier viewing via Entries.

Sorry about the mess.  Feel free to let me know if ive done this wrong.

Job is an interface, so you can create your own type that implements String() and has whatever properties or printing that you desire. That is easy to do, so I don't think it's worth baking it in and breaking backwards compatibility.
Sorry for the delay in responding!


tf.contrib.ffmpeg.decode_audio() prints the ffmpeg stdout

tf.contrib.ffmpeg.decode_audio() prints the ffmpeg stdout for each input and there seems to be not functionality available to suppress that.

Thank you for your post. We noticed you have not filled out the following field in the issue template. Could you update them if they are relevant in your case, or leave them as N/A? Thanks.
Have I written custom code
OS Platform and Distribution
TensorFlow installed from
TensorFlow version
Bazel version
CUDA/cuDNN version
GPU model and memory
Exact command to reproduce

Nagging Awaiting Response: It has been 14 days with no activityand the awaiting response label was assigned. Is this still an issue?


Off-by-one in unified diff with zero context and no deleted lines

It looks like the leading line number is off by one in at least this case, where there are no deleted lines, and there is zero context.
Example:  (note the hunk header is -1,0 +2,3
$> cat /tmp/a
hello
alice
$> cat /tmp/b
hello
my
name
is
alice
$> diff -U 0 /tmp/a /tmp/b
--- /tmp/a	2020-08-27 18:06:40.000000000 -0700
+++ /tmp/b	2020-08-27 18:06:47.000000000 -0700
@@ -1,0 +2,3 @@
+my
+name
+is

And the same comparison with JsDiff -- notice the hunk header is -2,0 +2,3
$> node
> const JsDiff = require('diff')
> const fs = require('fs')
> var a = fs.readFileSync('/tmp/a', 'utf8')
> var b = fs.readFileSync('/tmp/b', 'utf8')
> JsDiff.createTwoFilesPatch('a', 'b', a, b, '', '', {'context':0})
'===================================================================\n' +
  '--- a\t\n' +
  '+++ b\t\n' +
  '@@ -2,0 +2,3 @@\n' +
  '+my\n' +
  '+name\n' +
  '+is\n'

If JsDiff applies the results from diff then it produces incorrect results:
$> diff -U 0 /tmp/a /tmp/b > /tmp/diff

$> cat /tmp/diff
--- /tmp/a	2020-08-27 18:06:40.000000000 -0700
+++ /tmp/b	2020-08-27 18:06:47.000000000 -0700
@@ -1,0 +2,3 @@
+my
+name
+is

$> node
> const JsDiff = require('diff')
> const fs = require('fs')
> var a = fs.readFileSync('/tmp/a', 'utf8')
> var b = fs.readFileSync('/tmp/b', 'utf8')
> var d = fs.readFileSync('/tmp/diff', 'utf8')
> var jd = JsDiff.createTwoFilesPatch('a', 'b', a, b, '', '', {'context':0})
> jd
'===================================================================\n' +
  '--- a\t\n' +
  '+++ b\t\n' +
  '@@ -2,0 +2,3 @@\n' +
  '+my\n' +
  '+name\n' +
  '+is\n'
> d
'--- /tmp/a\t2020-08-27 18:06:40.000000000 -0700\n' +
  '+++ /tmp/b\t2020-08-27 18:06:47.000000000 -0700\n' +
  '@@ -1,0 +2,3 @@\n' +
  '+my\n' +
  '+name\n' +
  '+is\n'
> JsDiff.applyPatch
[Function: applyPatch]
> JsDiff.applyPatch(a, d)
'my\nname\nis\nhello\nalice\n'
> JsDiff.applyPatch(a, b)
'hello\nalice\n'
> JsDiff.applyPatch(a, jd)
'hello\nmy\nname\nis\nalice\n'

JsDiff does produce correct results when applying diffs made with createTwoFilesPatch.
Is the expectation that JsDiff is consistent with diff/patch here?

More context

If the chunk size is 0, the first number is one lower than one would expect (it is the line number after which the chunk should be inserted or deleted; in all other cases it gives the first line number or the replaced range of lines).

From https://www.artima.com/weblogs/viewpost.jsp?thread=164293
Which is the best description I've found so far explaining this behavior from patch/diff


[FEATURE REQUEST] Control order in which Unit tests are executed

Describe the bug
I have multiple unit tests in a test suite and these need to be in a certain order, so have information available in the next request. When I execute this with the cli tool, this doesn't follow the order from the GUI.
I know in theory unit tests shouldn't depend on each other, but with the current way of running multiple requests, you have no clear view which requests are bering executed due to the use of the name.
To Reproduce
Steps to reproduce the behavior:

Go to 'Test'
Create a new test suite
Create 4 or 5 tests with a incrementing number in it's name
Execute the test-suite
See different order of unit tests

Expected behavior
The order with the CLI should be the same as in the GUI.
Screenshots
  General
    ✓ Returns 200 (1585ms)
    1) Returns 200
    ✓ Returns 201 (305ms)
    2) Returns 200

  2 passing (2s)
  2 failing

  1) General
       Returns 200:
     Error: No responses for request

  2) General
       Returns 200:
     Error: No responses for request

The third test (201) should have run second.
Desktop (please complete the following information):

OS: macOS 10.15.6
Installation Method: dmg and yarn
App Version: 2020.3.3 and 2.2.22

Additional context
Add any other context about the problem here.

Hi @Duvel, thanks for reporting this!

but with the current way of running multiple requests, you have no clear view which requests are being executed due to the use of the name.

I'd like to clarify what you mean by this. If you were to set up multiple requests to run in one test, how are you achieving that? A screenshot would be epic!
Ideally, instead of introducing ordering to the tests I would prefer to investigate the solution where we make it nicer to make multiple requests in one test. This way, traditional unit testing concepts will translate as-is to designer. 😄

I see that I mixed what I needed and what is available. I meant "the use of the id".
const response2 = await insomnia.send('req_b733c874b56c477982ac7da149d21ab6');
expect(response2.status).to.equal(201);

const response1 = await insomnia.send();
expect(response1.status).to.equal(200);

In my use case response2 sets a few variables for response1.

Cool, that's what I assumed you meant. 😊 It would be nice to explore nunjucks templating in unit tests so that we can show the request name, instead of id, for instance.

To me it would be a great if:
1.- Insomnia-cli run tests sequentially and in a known order (as insomnia now do)
2.- Insomnia allows to manually reorder tests
This would make test configuration much simpler, reducing the need to deal with javascript code and obscure request ids.
Maybe what insomnia calls "test" could be renamed to "test step" or "api call" or something similar, and what insomnia calls "test suite" could be renamed simply a "test" ... what do you think?

I agree that in term of UX this is confusing between the UI that does run them in order, and the CLI that does run them randomly.

I'd say, this is quite a critical bug.
Imagine the following test set:

Login as admin with the default password
Change the password
Logout
Login as admin with the new password
Reset the configuration to the factory default

Executing tests in a different order will never work.
Of course, there are completely staleless APIs, like checking if the server is alive, but those are rather an exclusion.
In the CLI tests are ordeded anyway, the problem is that the order is wrong.

Hey All, this one is a critical one for my current case as well, where we have an ordered flow to validate each step of an onboarding api, something like:

Create Account
Send validation email
Update Account
List account resources
Delete account

Where each call needs to be made in sequence as running the steps out of order wouldn’t work, so we need guaranteed ordering in some way.

Hi all,
just stumbled about this and this makes the cli testing unusable for us. In our case we need to call our API to create an ID that we can use to test against.
We could use request chaining for it but it would mean to modify all the requests that are involved in the flow to test. Some simple flows could consist of 3 requests, let's say create a context, modify context, delete context. Obviously this must be done in this order.
So I guess the UI is doing it "correctly" in the order you define, though it is missing basic functionality to re-order requests.
inso cli though doesn't respect any of the given order. I guess there needs to be something introduced so that we can choose whether the tests in a suite should run in serial or randomly and this choice should be consistent when running tests from the UI or CLI.

@enricojonas
I want to optimize CLI usage to automatically run tests for all requests, saving time especially with large Test Collections.
Can we consider using request chaining as a temporary solution for the control order issue?
If there are updates or better solutions since your March 29 comment, I'd appreciate hearing about them.

Fixed now that tests and test suites can be reordered


Thank you.

I've always wanted to make native cross-platform apps easily. But setting up and updating electron is real pain in the ass, other frameworks either require to learn some programming language that is not used anywhere outside the framework (e.g flutter requires dart) either they are hard to setup (electron) or they're just microsoft (.NET MAUI). Tauri's API is incredibly easy to use, performance is good and it doesn't package chromium. Thank you.

you're welcome. :)


Support for Astro 2.0

Hi @kevinzunigacuellar, hope you're doing well 👋
Astro 2.0 came out yesterday and I have noticed that astro-layouts has astro as a peer dependency with version up to 1.7, which causes it to be incompatible with the new Astro version.
I was wondering if you were planning on supporting 2.0?
Thanks so much in advance, I love this package and would love to use it in my project for 2.0
Kind Regards,
Pol

Hello @pol-piella
Thanks for raising an issue. I was planning to take a look at Astro v2 this weekend. To answer your question, yes I am planning to add support for v2.

updated in #34


Sorting of features

According to https://universaldependencies.org/format.html:

In sorting, uppercase letters are considered identical to their lowercase counterparts.

For instance, here:
16	premières	premier	ADJ	_	Gender=Fem|Number=Plur|NumType=Ord	15	amod	_	_

Number appears before NumType because number < numtype even if NumType < Number
In writeConlluFile, the output is in the other way.

fixed in #2 , thank you @bguil  !

added some testing for recently modified function in 8eae4c8


Saving manifest is very slow.

Environment

Elixir & Erlang versions (elixir --version):
Erlang/OTP 22 [erts-10.6.4] [source] [64-bit] [smp:12:12] [ds:12:12:10] [async-threads:1] [hipe]
Elixir 1.10.2 (compiled with Erlang/OTP 22)

Operating system: Fedora 31

Editor or IDE name (e.g. Emacs/VSCode): VSCode

If using VSCode, are you using "ElixirLS Fork: Elixir support and debugger" (note that it has "Fork" in the name)? Yes

TLDR; Let's change the compression ratio used when going from term to binary.
So, I'm looking into performance a little, particular when making a modification and it has to build/analyse/save. Expect possibly some more issues as I dig stuff up.
It's been taking ~10s for Elixir LS to go from "save elixir file" to "manifest saved." When I've been looking in my logs, though, I've seen:
[Info  - 10:55:02 PM] Compile took 817 milliseconds
[Info  - 10:55:05 PM] [ElixirLS Dialyzer] Analysis finished in 315 milliseconds
So, clearly the time isn't spent compiling or analyzing, but somewhere else. I realized after a little digging that saving the manifest is very slow for me (I am on a Core i9 laptop with an SSD and 32G of ram).
I pulled some timing info on the whole Manifest.write function and realized that it's actually doing compression level 9. I tried finding some documentation but can't find the compression library used, I'm guessing it's just gzip. A compression level of 9 is definitely beyond the line of diminishing returns with gzip.
I pulled some timing info to help make a decision on should be done.
No Compression - 193MB Manifest File
2131ms
2037ms
2499ms

Compression 1 - 14.4MB Manifest File
2943ms
3104ms
2826ms

Compression 2 - 12.8MB Manifest File
3078ms
2917ms
2913ms

Compression 5 - 9.8MB Manifest File
3507ms
3472ms
3299ms

Compression 7 - 8.0MB Manifest File
5224ms
3878ms
4514ms

Compression 9 - 7.6MB Manifest File
7488ms
6555ms
6426ms

Obviously, a 193MB file is just insanely large to be storing to the disk on every save, so it has to be compressed. It seems like level 5 is about where it starts dropping dramatically, without much gains, however I actually think that for this the goal should be pure speed and just use level 1.
Thoughts on this? I can make a pull request changing this, depending on what is decided.
Secondly, I decided to split the timing of the function up between the part that pulls from the ETS tables, and the part that writes the manifest. This is the numbers I saw.
[Info  - 11:06:28 PM] [ElixirLS Dialyzer] Build manifest data, took 1197 milliseconds.
[Info  - 11:06:28 PM] [ElixirLS Dialyzer] Writing manifest...
[Info  - 11:06:30 PM] [ElixirLS Dialyzer] Done writing manifest, took 1469 milliseconds.

So, you can see that pulling that amount of erlang memory out of ETS is pretty slow, it's nearly half the time of the write function. I'm not super great at elixir/erlang, but I'm wondering if maybe a custom genserver would be better for storing this state. This way it can be compressed before sending over the process boundary. Or maybe even better, just have the process that is storing the data do the save of the manifest so that it doesn't need to transfer.
Another question I had is, how important is it to save the manifest every build/analyse? Can it instead queue up a write to happen after X seconds in the future and sort of debounce any calls? It could also save in a small scratch file the modules that have changed in analysis, queue up the manifest write, and then if the application closes before the write it can make sure that it re-analyses those modules on startup.

Nice sleuthing! And thanks for running the benchmarks.

Obviously, a 193MB file is just insanely large to be storing to the disk on every save, so it has to be compressed. It seems like level 5 is about where it starts dropping dramatically, without much gains, however I actually think that for this the goal should be pure speed and just use level 1.
Thoughts on this? I can make a pull request changing this, depending on what is decided.

Yeah let's go forward with compression level 1

So, you can see that pulling that amount of erlang memory out of ETS is pretty slow, it's nearly half the time of the write function. I'm not super great at elixir/erlang, but I'm wondering if maybe a custom genserver would be better for storing this state. This way it can be compressed before sending over the process boundary. Or maybe even better, just have the process that is storing the data do the save of the manifest so that it doesn't need to transfer.

Yeah I believe that the same process that is doing the analysis could also build and write the manifest. I might be missing something but I think instead of transferring ownership of the ETS table from the manifest writer task to the Dialyzer GenServer instead the Dialyzer GenServer could own the ETS table but allow public write access to it and the analyzing, building, and writing could all be done in a single task. Possibly we might be able to remove the use of ETS completely.

Another question I had is, how important is it to save the manifest every build/analyse? Can it instead queue up a write to happen after X seconds in the future and sort of debounce any calls? It could also save in a small scratch file the modules that have changed in analysis, queue up the manifest write, and then if the application closes before the write it can make sure that it re-analyses those modules on startup.

This partially already happens, but without the delay. If the manifest is still in the process of being written, the process writing the manifest is killed and restarted: https://github.com/elixir-lsp/elixir-ls/blob/6b70e16671435688eddec23db3023d4d7c7607b1/apps/language_server/lib/language_server/dialyzer.ex#L143
There might be some gains in this area as well, but I think it is limited since this portion is already done asynchronously and nothing is waiting on it. So I think we should plan to tackle the first two issues you brought up first, then from there we could look at how we would like to proceed.
So to recap, for now two separate PR's, one to change the compression level and another to reduce the inter-process communication would be the next steps.

It seems that the low hanging fruits have been picked. I'm going to close it for now until there are new ideas.


Consider transpiling

An option to speed up the execution would be to parse the Z80 machine code and turn it into lua code (horrible lua code but this doesn't matter), you could later on run this code directly with Lua.
This would allow for some transpilation optimizations and whatnot. This is not an easy job but could give better results in the far end. Maybe it would grant another project on itself.
I'm leaving this here so if someone is interested it may spark some discussion and ideas. It's not my intention to demand this feature, due to it's complexity.

I actually did consider a code generation system for opcodes, as the present z80 implementation is a bit call stack heavy, but I haven't considered writing an actual transpiler or doing a JIT. I feel like the complexity of the task (lots of games use self modifying code and copy routines around) wouldn't bring enough benefit to be worth it at the gameboy's low clock speed. The CPU isn't actually that slow, and the emulator spends a good chunk of it's time dealing with graphics and other hardware.

Apologies for the grave digging, but this is actually the approach I'm using for my PS2 emulator.
It seems to work okay for cold code, but (at least for my emulator) a trace of 50 instructions or so brings LuaJIT to its knees as it tries to generate snapshots for memory access failures/address alignment checks failing etc, and gives up. I suspect it's because my code could be significantly more JIT friendly though.


Ability to view 3D RayCasts while running the game

The ability to view 3D RayCasts while running the game would be helpful for debugging.

:+1:

Actually I need something like this right now so I made temporary workaround.
Just add this scene to your most root scene and rays will be visualised:
https://dl.dropboxusercontent.com/u/168251/godot/RayDebugVisualiser.7z
screen: https://dl.dropboxusercontent.com/u/168251/godot/debugrays.png

This may be better in the 3.0 milestone. WDYT?

Why is everything moved to 3.0?
2016-06-03 18:39 GMT+02:00 Ignacio Etcheverry<EMAIL_ADDRESS>
This may be better in the 3.0 milestone. WDYT?
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/godotengine/godot/issues/3172#issuecomment-223629429,
or mute the thread
https://github.com/notifications/unsubscribe/AA6jxf4nMIkU47B-GVx1WAEb9jnR784aks5qIFjJgaJpZM4G8xju
.

@Marqin There will be a renderer improvement in 3.0, so we will probably take that chance to improve the 3D tools then.

So there is hope we will get 3.0 from Santa?

No idea, I hope we can put it out before next year
On Fri, Jun 3, 2016 at 5:22 PM, Hubert Jarosz<EMAIL_ADDRESS>wrote:

So there is hope we will get 3.0 from Santa?
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/godotengine/godot/issues/3172#issuecomment-223684460,
or mute the thread
https://github.com/notifications/unsubscribe/AF-Z25z6wC6P0siCkH3pLErg_po1xDrgks5qIIz3gaJpZM4G8xju
.

New godot contributor here, and I would like to take a stab at this :slightly_smiling_face:

I have something working now. Check out my branch in #8102 if you want to try it.

fixed by #8102


Sine sources with varying frequency

Reported by clauss on 15 Nov 2016 13:23 UTC
A. Haumer suggests to add sine sources with varying frequency into Modelica.Blocks.Sources as well as into Modelica.Electrical.Analog.Sources (both voltage and current cource). The frequency of the sources is prescribed by a real input connector.
The models are a useful improvement of the MSL, we are willing to add them to the trunk version soon.
Attached there are the models to be inspected as well as a small example circuit.
Please inspect and test the models, each hint for improving is welcome.

Migrated-From: https://trac.modelica.org/Modelica/ticket/2116

Comment by hansolsson on 15 Nov 2016 15:25 UTC
I would prefer that VariableFrequencySources.VariableFrequencySineVoltage and VariableFrequencySources.VariableFrequencySineCurrent use a connection to signalSource.f - instead of a modifier.
There are also a number of other minor issues:

One could also add amplitude and offset as inputs - or use a similar trick as some other components and have them as either input signal or parameter; depending on another parameter.
What is the good use for startTime? To me it looks odd that frequency-input becomes active at starting-point and the sine-part might activate later. I believe that removing 'startTime' part might simplify the model.

Comment by beutlich on 15 Nov 2016 15:35 UTC

I believe that removing 'startTime' part might simplify the model.

That startTime part is common to all blocks in Modelica.Blocks.

Comment by hansolsson on 15 Nov 2016 15:43 UTC
Replying to [comment:2 beutlich]:

I believe that removing 'startTime' part might simplify the model.

That startTime part is common to all blocks in Modelica.Blocks.

Yes, but:

It is always causing a minor issue - since the generated signal is non-smooth (if pre-startTime part is active).
It doesn't give the same result as normal sine-block in that case.

Comment by hansolsson on 18 Nov 2016 11:12 UTC
Note that we could make startTime behave the same for variable frequency as for fixed frequency by using der(x)=if time<startTime then 0 else 2*pi*f;
But it seems rather complicated, and I would rather remove startTime until we find the good use-case.

Comment by anonymous on 19 Nov 2016 20:42 UTC
See also #1771 for the startTime discussion and misinterpretation.


Make the autoClose timeout of TuiNotificationsService configurable

🚀 Feature request
It would be great it the autoClose delay when showing a notification is configurable.  At the moment it is hard coded to 3000ms (https://github.com/TinkoffCreditSystems/taiga-ui/blob/854b544e87a8916703ecdb8624757b602b3e9a40/projects/core/modules/notifications/notification-alert/notification-alert.component.ts#L10)

Hi @jonsamwell
This can be easily implemented on app side with takeUntil + timer:
https://stackblitz.com/edit/taiga-autoclose
Feel free to comment/reopen if you have further questions!

Now when notifications will not be auto closed when you hover them it makes sense to make time configurable. Reopening it. I wonder if making autoClose type boolean | number would be a good API extension. What do you think, @MarsiBarsi?

Now when notifications will not be auto closed when you hover them it makes sense to make time configurable. Reopening it. I wonder if making autoClose type boolean | number would be a good API extension. What do you think, @MarsiBarsi?

Well, I would like to make it closeAfterMs: number with closeAfterMs: Infinity instead of false. But boolean | number option is okay to prevent breaking change for now


text label not rendered for MultiPolygons

Consider the following style :
#mapnik2 {
polygon-fill: orange;
polygon-opacity: 0.2;
line-color: #FFF;
line-width: 1;
line-opacity: 1;
}
#mapnik2::labels {
text-name: [gt];
text-face-name: 'Open Sans Regular';
text-size: 14;
text-label-position-tolerance: 10;
text-fill: orange;
text-halo-fill: #FFFFFF;
text-halo-radius: 2;
text-dy: 0;
text-allow-overlap: true;
text-placement: vertex;
text-placement-type: dummy;
text-spacing: 0;
text-avoid-edges: true;
text-min-distance:50;
}
and the attached geoJSON
https://gist.github.com/franckl/8284645938d1afda02c7
It renders improperly on tileMill and also on cartoDB platform, only the one polygon has labels :

Does the issue come from Mapnik or from Carto ?

This is how mapnik works - more info at https://github.com/mapnik/mapnik/issues/3080#issuecomment-142963969


Add   to SEND action

Hey,
I am coming up with some ways to invoke sharing from the web by creating and intent: url that has an action of SEND, right now next to 0 apps include category browsable in their manifest for the SEND action and I need a way to debug it and it would be great if this app had browsable on the url.
intent:#Intent;action=android.intent.action.SEND;S.android.intent.extra.TEXT=https%3A%2F%2Fpaul.kinlan.me%2F;S.browser_fallback_url=https:%3A%2F%2Ftwitter.com%2Fintent%2Ftweet;end

@PaulKinlan
Read your blog post about this the other day so happy to help.
Until your blog post, I've never understood what android.intent.category.BROWSABLE was meant to do.
I've pushed version 2.2.3 to the Play Store. Tested and it works with the links on https://paul.kinlan.me/sharing-natively-on-android-from-the-web/. Offers me a choice between opening Intent Intercept and Plaid (https://github.com/nickbutcher/plaid).

Awesome!!!! This is great.
Thanks.
On Fri, 13 Nov 2015, 02:51 Michael Basil<EMAIL_ADDRESS>wrote:

@PaulKinlan https://github.com/PaulKinlan
Read your blog post about this the other day so happy to help.
Until your blog post, I've never understood what
android.intent.category.BROWSABLE was meant to do.
I've pushed version 2.2.3 to the Play Store. Tested and it works with the
links on https://paul.kinlan.me/sharing-natively-on-android-from-the-web/.
Offers me a choice between opening Intent Intercept and Plaid (
https://github.com/nickbutcher/plaid).
—
Reply to this email directly or view it on GitHub
https://github.com/intrications/intent-intercept/issues/32#issuecomment-156395561
.

Glad to help. I'm going to close the issue but if you have any problems then re-open or start another issue.


Update echo to avoid jwt-go vulnerability.

Describe the PR
Since jwt-go has been reported to be vulnerable, we need to migrate to golang-jwt. Therefore, I have updated the version of echo.

Codecov Report

:exclamation: No coverage uploaded for pull request base (master@26b75d2). Click here to learn what that means.
The diff coverage is n/a.

@@            Coverage Diff             @@
##             master        #1   +/-   ##
==========================================
  Coverage          ?   100.00%
==========================================
  Files             ?         1
  Lines             ?        64
  Branches          ?         0
==========================================
  Hits              ?        64
  Misses            ?         0
  Partials          ?         0

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 26b75d2...0755b66. Read the comment docs.


I received 500 Internal Server Error

Describe the issue
I configure and run the sample of IncidentBot,next I use post man send an request .
I received an 500 Internal Server Error later
Code Snippet
https://incidentbot20190610114013.azurewebsites.net/incidents/raise
{
"name": "",
"time": "",
"tenantId": "{9d870035-8b64-4403-8099-4f955087c2c3}",
"objectIds": [
"{b537f455-42f0-4192-a462-d148c12ad1e4}",
"{c2e8a526-09d1-4a37-8aef-f57ad84d7d2b}"
],
"joinURL": "https://teams.microsoft.com/l/meetup-join/19:ca705ef0e85b455eb859ad1f72eeced7@thread.skype/1560737371070?context={"Tid":"9d870035-8b64-4403-8099-4f955087c2c3","Oid":"b537f455-42f0-4192-a462-d148c12ad1e4"}",
"removeFromDefaultRoutingGroup": true,
"allowConversationWithoutHost": true

}
Expected behavior
I want to run the example and see what happens
Graph SDK (please complete the following information):

Version [e.g. 22]

Call ID
Logs
If required, please add logs from the SDK. (Please remove any PII from the logs before uploading)
Additional context
Add any other context about the problem here.

Why are your guids in curly braces? "{abc}"
you should remove the curly braces, those were only there to show the placeholder value.

Your join URL should be json escaped, or URL encoded... the string you have  is not a valid json.  The raw url you get from the teams client should work.

This is an example of a valid json payload:
{
    "name": "<name-of-incident>",
    "time": "<start-time-of-the-incident>",
    "tenantId": "9d870035-8b64-4403-8099-4f955087c2c3",
    "objectIds": [
        "b537f455-42f0-4192-a462-d148c12ad1e4",
        "c2e8a526-09d1-4a37-8aef-f57ad84d7d2b"
    ],
    "joinURL": "https://teams.microsoft.com/l/meetup-join/19:ca705ef0e85b455eb859ad1f72eeced7@thread.skype/1560737371070?context=%7B%22Tid%22%3A%229d870035-8b64-4403-8099-4f955087c2c3%22%2C%22Oid%22%3A%22b537f455-42f0-4192-a462-d148c12ad1e4%22%7D",
    "removeFromDefaultRoutingGroup": true,
    "allowConversationWithoutHost": true
}

thanks for your help,but  I removed the curly braces and still got an error 500.

is your joinUrl encoded?

This is my joinUrl:  https://teams.microsoft.com/l/meetup-join/19:5f93bdb5ee79402d835c631602524f89@thread.skype/1560753737944?context={"Tid":"0047ccf9-5d9c-4cb8-8400-4d669fc05f62","Oid":"9def9696-ceab-4ccd-8d85-8e72f02feeae"}

That is not a valid URL to put into a json payload.  please look at the sample I provided above.

Thank you very much for your help .


atom tool issue about edit methold while using GUI

Hi, maybe, someone already asked you about this kind of question, but I also want to report some issues while finding in using atom to edit code.

Code can not be dragged in the edit panel to move to another line in the current file by mouse in GUI.
The edit tool do not support the hotkey "ALT+mouse drag"  and "CTRL+mouse drag", "ALT+mouse drag" should be able to select the same column from different rows which is Adjacent, besides, editing the same column(identical) can not affect the content behind the edit place.the Effects as notepad++.
It's to slow while start up atom, will it be faster than now.
How can I call the chrome console tool in internal of atom  while developing WEB.
thanks.

Thanks for reaching out :grinning: Because we treat our issues list as the Atom team's backlog, we close issues that are questions since they don't represent a task needing to be completed. For most questions about Atom there are a lot of options, check out:

The Atom Flight Manual
The Atom FAQ on Discuss
Discuss, the official Atom and Electron message board
Join the Atom Slack team

On Discuss and in the Atom Slack team, there are a bunch of helpful community members that should be willing to point you in the right direction.
To specifically answer your questions:

This is being tracked in https://github.com/atom/atom/issues/1909
This is being tracked in https://github.com/atom/atom/issues/2306
Please see the entry in the Atom FAQ about performance concerns
Atom doesn't support debugging of web applications (or any other application for that matter). The built-in Chrome developer tools are designed to be used for debugging Atom itself.


Change 'unsigned char' to 'char' wherever variables or return values represent Strings

Still ongoing
There are places across the project


Inconsistent Commit All/Staged Location

VSCode Version: 1.49.1
OS Version: Windows 10

Steps to Reproduce:

Follow context menu in a screenshot below

Does this issue occur when all extensions are disabled?: Yes/No

What is the problem here?

The order bugs me.
Amend section: Commit All Commit Staged.
Signed Off section: it is reversed.
I suggest swapping Commit All (Signed Off) Commit Staged (Signed Off).

Can you still repro this on the latest Insiders release?

Yeah I can confirm this is fixed in master.


Wrong information about connection_timeout

Docs:

connection_timeout (int): Optionally sets the connect and read timeout value, in seconds.

Actually, there is a separate read_timeout parameter and connection_timeout has no influence over the read timeout.

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

ID: f60c47f1-e4d8-f68e-5f9c-460c4fdc6da8
Version Independent ID: 172e9f9b-25fb-2121-cb72-d383cc21763a
Content: Azure Storage Blobs client library for Python
Content Source: docs-ref-services/latest/storage-blob-readme.md
Service: storagestorage
Product: azure
Technology: azure
GitHub Login: @ramya-rao-a
Microsoft Alias: ramyar

Hi @sortega, thanks for reporting this. There is some current discussion / work happening around connection_timeout and read_timeout that may influence this documentation, but we will work to get this corrected.


[SDK-3508] Fix Integration Test CI for Android

[x] All new/changed/fixed functionality is covered by tests (or N/A)
[x] I have added documentation for all new/changed functionality (or N/A)

📋 Changes
We have fixed the CI for Android Integration test in this PR.

We have used appium to run these tests as it is more reliable.
The matcher to find login in Android Integration Test is using hints that has been provided Appium Inspector as resource-id is not present in classic UL where as new UL has them.
We also screen record the integration test in Android
We use xlarge resource class as large and below causes emulator to fail at times.

📎 References
http://appium.io/docs/en/2.0/
https://discuss.circleci.com/t/failed-to-run-python-script-directly-pyenv-version-name-command-not-found/37526/2
https://github.com/CircleCI-Public/flutter-orb/blob/main/src/scripts/install-sdk.sh#L21
🎯 Testing
This PR adds integration tests

Hey @Widcket, Great review. I have updated both the concerns and they should GTG now.


Verify relative links

Is your feature request related to a problem?
For a site with lots of content in nested folders, I was using relative links, like
[HTTP](./http)

This isn't validated by this plugin - the internal link filter requires that links are absolute:
https://github.com/HiDeoo/starlight-links-validator/blob/72fab3d26513ee181afd04c3bf0c350440a5e725/packages/starlight-links-validator/libs/remark.ts#L133-L135
Describe the solution you'd like
I'd like this to resolve relative links.
Describe alternatives you've considered
No response
Additional Context
No response

Thanks for your feedback. I recently commented on a similar topic:

Relative file paths is not something I am planning to personally add support for. I personally think they are usually error prone and add an additional layer of complexity for the authors as you have to know where your current file is located and then calculate the relative path to the file you want to link to, which can become easily confusing with links like ../../some/other/file#thingy vs just /some/other/file#thingy.

That being said, I'm not opposed at all to discuss or review a PR that would add support for this (probably as an opt-in feature for the reasons mentioned above).


updating to jison 0.4.17

Dumb Windows user here. I created a new pull request since I messed up with squashing commits in the original fork.

This is great! Thank you.