Added Croatia countrywide addresses

Fixes #3982

I downloaded the data, looked at it with ogrinfo, and got an example entry:
OGRFeature(Address):2162907451
  gml_id (String) = Address.2162907451
  localId (String) = KB.0000000064
  namespace (String) = HR.DGU.RPJ
  alternativeIdentifier (String) = Bosanska 41 Ada 31000 Osijek
  default (Integer(Boolean)) = 1
  designator (StringList) = (1:41)
  validFrom (String) = 2022-01-31T23:00:00Z
  beginLifespanVersion (String) = 2022-02-01T09:17:58.350Z
  POINT (4999579.43164089 2516702.09078261)

This tells me that OGR (which is what we use in our processing pipeline) doesn't know how to pull any of the fields from other namespaces. It looks like OGR needs a file to know how to read these schemas (https://gdal.org/drivers/vector/gml.html#registry-for-gml-application-schemas) and we don't currently have a way to give it that file. It might be easier to download the data as GML and write a script (to put in OpenAddresses' scripts/ dir) to convert it to something easier to work with. We can host the resulting data if you're up for doing the conversion.

I did manage to make it read alternativeIdentifier which is included in the base file and contains the full address (eg "Bosanska 41 Ada 31000 Osijek"), so it may be possible to use that one to parse out the individual fields with regular expressions. Not ideal, but much easier than custom scripts + hosting.
The tricky parts may be addresses with streets containing a number/date within the name, eg "Ulica 1. maja" or such.

Few interesting addresses as regex test cases:
Ulica Mirka Miočića hrvatskog erudita i enigmata (1956-2017) 233A Rtina 23248 Ražanac
Fažanska cesta-Valb. 146 Valbandon 52100 Pula (Pola)
Ulica 6. svibnja - Via 6 Maggio 14A Bašanija - Bassanìa 52470 Umag (Umago)
Vinogradska ulica 13/3 Ledinec Gornji 42204 Turčin
Vinogradska ulica 13E Ledinec Gornji 42204 Turčin
Glavani 93/6 Kostrena 51000 Rijeka
Rogocic 11/1 Rogačić 21480 Vis
A-17 A 3 Gajac 53291 Novalja

I've been invited here for quick checkup from OpenStreetMap Quick comment; something looks strange  with parsing, e.g. in https://batch.openaddresses.io/job/368812 says:

hash
number
street
unit
city
district
region
postcode
id

37f818a0053d8d03
41
Bosanska
Bosanska 41 Ada 31000 Osijek
Ada
Osijek

31000
KB.0000000064

While https://geoportal.dgu.hr (looking around Osijek) says:
PODACI O KUĆNOM BROJU

Kućni broj: 41
Mbr naselja: 19
Naziv naselja: Ada
Identifikator ulice: 190001
Naziv ulice:  Bosanska
Broj čestice (RPJ): 156/2

I don't know enough about OpenAddresses schema, but in OpenStreetMap (see according to https://wiki.openstreetmap.org/wiki/Tag:boundary=administrative, grad / city  in Croatia (e.g. Osijek) would be admin_level=7, while naselje / settlement (e.g. Ada)  would be admin_level=8.


Consider joining image.sc as community partner

Dear cellpose developers,
I'd like to suggest that you join https://forum.image.sc as a community partner. There's quite some discussion about cellpose going on already on the forum, and it might be a good opportunity to make that your primary support channel.
The process is described on the forum FAQ:

Meet the current guidelines for becoming a Community Partner:

The organization links to the forum in its documentation regarding how users should seek support and/or discussion.
The organization does not promote additional, separate, project-specific discussion channels more prominently than this forum.
The organization will elect an individual as an active representative on the Community Forum Team.

Make a public post in the Websites category to request to join the forum as a Community Partner:

Include an @team mention and add the community-partner tag, to make sure someone on the core team sees your post in a timely manner.
Attach your project’s icon to the post (icons should have a 1:1 aspect ratio). Depending on your logo, you may need two versions: one for light background and one for dark background.

Independently, here's a badge that you can add to your README to link to the forum:

[![Image.sc forum](https://img.shields.io/badge/dynamic/json.svg?label=forum&url=https%3A%2F%2Fforum.image.sc%2Ftags%2Fcellpose.json&query=%24.topic_list.tags.0.topic_count&colorB=brightgreen&suffix=%20topics&logo=data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA4AAAAOCAYAAAAfSC3RAAABPklEQVR42m3SyyqFURTA8Y2BER0TDyExZ+aSPIKUlPIITFzKeQWXwhBlQrmFgUzMMFLKZeguBu5y+//17dP3nc5vuPdee6299gohUYYaDGOyyACq4JmQVoFujOMR77hNfOAGM+hBOQqB9TjHD36xhAa04RCuuXeKOvwHVWIKL9jCK2bRiV284QgL8MwEjAneeo9VNOEaBhzALGtoRy02cIcWhE34jj5YxgW+E5Z4iTPkMYpPLCNY3hdOYEfNbKYdmNngZ1jyEzw7h7AIb3fRTQ95OAZ6yQpGYHMMtOTgouktYwxuXsHgWLLl+4x++Kx1FJrjLTagA77bTPvYgw1rRqY56e+w7GNYsqX6JfPwi7aR+Y5SA+BXtKIRfkfJAYgj14tpOF6+I46c4/cAM3UhM3JxyKsxiOIhH0IO6SH/A1Kb1WBeUjbkAAAAAElFTkSuQmCC)](https://forum.image.sc/tag/cellpose)

thanks for thinking of us. I didn't realize I was missing more messages there, thanks for the link to the "topic." I sent the request to be a community partner.


Feedback on Tutorial: Text Bundles

Hello
I have two problems about the packages.
1 - In package.json, you use the command latest but it doesn't work in the VM. I have to enter the version provided by the Build debugger.
2 - About accept-language-parser package:
npm ERR! 404 no such package available : accept-language-parser
npm ERR! 404
npm ERR! 404 'accept-language-parser' is not in the npm registry.
npm ERR! 404 You should bug the author to publish it (or use the name yourself!)
npm ERR! 404 It was specified as a dependency of 'js'
npm ERR! 404
npm ERR! 404 Note that you can also install from a
npm ERR! 404 tarball, folder, http url, or git url.
Regards
Emmanuel

https://www.npmjs.com/package/accept-language-parser


Correct the localization for Taiwan

The English word「Taiwan」in Chinese (Traditional, Taiwan) should be 臺灣 instead of 台湾 since 台湾 is the word in Chinese (Simplified, China).And when talking about localization we will use 正體中文 instead of just 中文.

@Jianchun can you please review this?

@jianchun can you please review this?

@abchatra The change looks fine to me (I'm no expert).

Is it possible to make this pull request be reviewed ?

@Nienzu thanks for the contribution! Please keep in mind this change won't be reflected immediately in the live website


Restangular's getList limited to 20 objects on result

Hi everybody! Thanks already for the help and attention on my problems and thanks @mgonto and everybody who worked on restangular for you'r awesome work. It helped me a lot!
Now my problem:
I wanna get a product list from an API made with Django.
Did this:
var Products = Restangular.all('product');
Products.getList().then(function(list) {
$scope.prodlist = list;
});
And it only gives me 20 objects in result. Even if my product list contains a lot more than that. After research i found it was an issue of synchronisation. I think there is a timeout to put somewhere.
And also i need to fetch a product's data with the name of the product.
Tried this var Products = Restangular.one('product', {name : "Desperados"});
and got :
the server responded with a status of 500 (INTERNAL SERVER ERROR) http://[ApiAdress]/api/v1/catalog/product/%5Bobject%20Object%5D/[object%20Object]
Ideas or solutions? :)

Hi @mgnacadj seems strange that rectangular limits the number of results, could you check the network requests in the console, and double check is not your server limiting the number of results?
Your request for list of products seems correct, but you might have added some default headers or your django api might need a parameter to return all results.
Django has a pagination that might be enabled.

Array[20]
0: Object
1: Object
2: Object
3: Object
4: Object
5: Object
6: Object
7: Object
8: Object
9: Object
10: Object
11: Object
12: Object
13: Object
14: Object
15: Object
16: Object
17: Object
18: Object
19: Object
addRestangularMethod: function () { [native code] }
all: function () { [native code] }
allUrl: function () { [native code] }
clone: function () { [native code] }
customDELETE: function () { [native code] }
customGET: function () { [native code] }
customGETLIST: function () { [native code] }
customOperation: function () { [native code] }
customPOST: function () { [native code] }
customPUT: function () { [native code] }
doDELETE: function () { [native code] }
doGET: function () { [native code] }
doGETLIST: function () { [native code] }
doPOST: function () { [native code] }
doPUT: function () { [native code] }
fromServer: true
get: function () { [native code] }
getList: function () { [native code] }
getRequestedUrl: function () { [native code] }
getRestangularUrl: function () { [native code] }
head: function () { [native code] }
length: 20
metadata: Object
one: function () { [native code] }
oneUrl: function () { [native code] }
options: function () { [native code] }
parentResource: null
patch: function () { [native code] }
plain: function () { [native code] }
post: function () { [native code] }
putElement: function () { [native code] }
remove: function () { [native code] }
reqParams: null
restangularCollection: true
restangularized: true
route: "product"
several: function () { [native code] }
trace: function () { [native code] }
withHttpConfig: function () { [native code] }
__proto__: Array[0]

This is the array i get from that request. Tell me if u need some items expanded. The problem is that I don't have dev access to the Django Api since i didn't make it :/

Could you expand the metadata property? Also are you able to open the request outside of restangular and check if you get more than 20 objects there?

Could you try to access the API with Postman (a chrome extension) e.g.? I don't think this is a problem with Restangular. We use pagination in the backend at the company I work at too and if no value describing the num of items per page, there is a default value selected.
So to clearly check where the problem is, please double check the API by requesting the same URL with same parameter withs another service. Would like to know the result.

Will do that tomorrow when i'll get to my workplace. Thanks a lot for the support :)

I am going to assume the issue was the server and close the issue, @mgnacadj reopen it if it is not the case.

@pedromarce here are the metadata infos:
metadata: Object
limit: 20
next: "/api/v1/catalog/product?offset=20&limit=20&main_category=1"
offset: 0
previous: null
total_count: 32
__proto__: Object

I can access the API from my browser but i don't know how the url to query the api is formatted.
I know its not the same URL because:
http://api.network-concept.bar/admin/ is the url usable with my browser but BaseUrl for restangular is http://api.network-concept.bar/api/v1/catalog/ and it works.

Hi @mgnacadj, check the response you are receiving, it is limited to 20 (I guess default value) from the server, without knowing your API it will be just a guess, but if you'd like to increase the number of records, you could do:
var Products = Restangular.all('product'); Products.getList({limit:100}).then(function(list) { $scope.prodlist = list; });
That I think will get you up to 100 results (you had 32 in the specific case), also you could ask if there is a parameter you can send to get all results and pass it same way.

Okay I was pretty sure i saw that before when i was searching for the reasons i only got 20 objects. Thanks i'm trying the limit parameter on getlist.

@pedromarce i got the same results as before with this line
Products.getList({main_category:cat.id},{limit:100}).then(function(list) {
            $scope.products = list;
            console.log(list);
 });

Still 20 objects. (PS:How can i Re-open the thread? Can't find the way, sorry it my first time on github ^^

You need to add all parameters in same object:
Products.getList({main_category:cat.id,limit:100}).then(function(list) {             $scope.products = list;             console.log(list);  });
Could you try this?

It works! Thanks so much!

:+1: Thanks for your feedback!


Fix IDE Gradle sync being slow because of lockfile generation

I lost way too much time waiting for Gradle syncs to finish because of this problem, so I decided to take a stab at it.
This PR attempts to fix #110559
Revival of #112723
Pre-launch Checklist

[x] I read the [Contributor Guide] and followed the process outlined there for submitting PRs.
[x] I read the [Tree Hygiene] wiki page, which explains my responsibilities.
[x] I read and followed the [Flutter Style Guide], including [Features we expect every widget to implement].
[x] I signed the [CLA].
[x] I listed at least one issue that this PR fixes in the description above.
[x] I updated/added relevant documentation (doc comments with ///).
[x] I added new tests to check the change I am making, or this PR is [test-exempt].
[x] I followed the [breaking change policy] and added [Data Driven Fixes] where supported.
[x] All existing and new tests are passing.

Some notes/questions:

Are the lockfiles actually generated? If so, where? I ran ./gradlew :generateLockfiles --write-locks, but no .lockfile files were generated, neither in my app nor in Android plugins under ~/.pub-cache.
Why does "Sync project with Gradle files" in IntelliJ trigger lockfile generation on every sync, but when I build my app normally (./gradlew :app:assembleDebug), then lockfile generation isn't triggered?
How can I run the equivalent of "Sync project with Gradle files" from the terminal? I can image it might be useful for testing this.

cc gradle gurus @GaryQian @gmackall @reidbaker

Some notes/questions:

Are the lockfiles actually generated? If so, where? I ran ./gradlew :generateLockfiles --write-locks, but no .lockfile files were generated, neither in my app nor in Android plugins under ~/.pub-cache.
Why does "Sync project with Gradle files" in IntelliJ trigger lockfile generation on every sync, but when I build my app normally (./gradlew :app:assembleDebug), then lockfile generation isn't triggered?
How can I run the equivalent of "Sync project with Gradle files" from the terminal? I can image it might be useful for testing this.

cc gradle gurus @GaryQian @gmackall @reidbaker

I don't know the answer to most of these off the top of my head. IIRC flutter 2.* used a beta gradle feature to generateLockfiles which has since been made stable but the activation might have a different name than the preview feature.
@jwren could you point me towards the code that run in Intellij when we sync gradle files?

Is this ready for review? Happy to take a look if so, but just want to be sure because the PR is still in draft

Added you for the discussion on https://github.com/flutter/flutter/pull/147837#issuecomment-2159119319

@reidbaker we have a dart cli which calls gradle on our behalf, cli tool is here: https://github.com/flutter/flutter-intellij/tree/master/tool/plugin

Thank you @jwren! @bartekpacia let me dig in this week and give you better answers.

Thanks a ton, this looks like a good starting point.
@reidbaker thanks! If you're busy though, don't bother really, I'll do it myself and if I fail, then I'll ping you back:)

We've found that this actually gets into an infinite loop if we have a plugin added in an init script in the gradle home directory, the Flutter plugin gets applied to the :dependencies call made by : generateLockfiles task init code, which in turns calls :dependencies again.

I can confirm that your fix fixes the infinite loop problem too.
Additional interesting find is that the task :dependencies is not run normally, only when additional plugins are loaded by our init script in the home directory, so

Are the lockfiles actually generated?

I'd say no?

Why does "Sync project with Gradle files" in IntelliJ trigger lockfile generation on every sync, but when I build my app normally (./gradlew :app:assembleDebug), then lockfile generation isn't triggered?

Yes, exactly what we're seeing

After further digging, I've found that our plugin evaluates the project's tasks, which triggers the :generateLockfiles initialization code that runs Gradle, and that starts an infinite loop because our plugin is applied again. That concerns this PR because evaluating a project's task is what triggers the :generateLockfiles init code that triggers gradle :dependencies, adding to the build time.

How can I run the equivalent of "Sync project with Gradle files" from the terminal? I can image it might be useful for testing this.

Just run gradlew tasks in a flutter test app project's android/ folder. It will evaluate all tasks, and also runs :dependencies because of the task init code.

I just talked with @runningcode, a Gradle engineer, on droidcon Berlin and asked him how we can trigger Gradle Sync without an IDE (so we can actually test that our fix will work). He suggested using https://github.com/gradle/gradle-profiler. It has a lot of various config options, some of the ones we might wanna take a look at are apply-build-script-change-to and clear-android-studio-cache-before.
Thanks a lot @runningcode! :)

(PR Triage): Hey @bartekpacia do you have plans to continue with this PR? Thanks!

Hey @Piinks! Yes I do!

Some notes
Will likely have to create a scenario file.
gradle-profiler --benchmark --scenario-file performance.scenarios clean_build

See also

Search for android-studio-sync in Gradle profiler sources


Bulk Insertion API in confluent-kafka

Does confluent-kafka-dotnet currently support bulk producer?

the client abstracts away batching of messages (LingerMs is a key configuration property). we don't have any plans to expose a batching API - you could write a simple wrapper yourself if you need that abstraction.

Hi @mhowlett - we have a similar need. Below are some extension methods I wrote to provide batch operations functionality. If you have a moment to glance over it I'd love to hear any feedback you have about potential pitfalls in my approach. I feel especially uncertain over my handling of delivery reports in the bulk producer:
using System;
using System.Collections.Concurrent;
using System.Collections.Generic;
using System.Linq;
using System.Threading;
using Confluent.Kafka;

namespace Utilities.Kafka
{
    public static class KafkaBatchingExtensions
    {
        // It is strongly recommended to only use this with consumers configured with `enable.auto.offset.store=false`
        // since some of the consumes in the batch may succeed prior to encountering an exception, without the caller
        // ever having seen the messages.
        public static IEnumerable<ConsumeResult<TKey, TVal>> ConsumeBatch<TKey, TVal>(this IConsumer<TKey, TVal> consumer,
            TimeSpan maxWaitTime, int maxBatchSize, CancellationTokenSource cts = null)
        {
            var waitBudgetRemaining = maxWaitTime;
            var deadline = DateTime.UtcNow + waitBudgetRemaining;
            var res = new List<ConsumeResult<TKey, TVal>>();
            var resSize = 0;

            while (waitBudgetRemaining > TimeSpan.Zero && DateTime.UtcNow < deadline && resSize < maxBatchSize)
            {
                cts?.Token.ThrowIfCancellationRequested();
                var msg = consumer.Consume(waitBudgetRemaining);

                if (msg != null && !msg.IsPartitionEOF)
                {
                    res.Add(msg);
                    resSize++;
                }

                waitBudgetRemaining = deadline - DateTime.UtcNow;
            }

            return res;
        }

        // This override just defaults the `flushTimeout` to 10 seconds
        public static void ProduceBatch<TKey, TVal>(this IProducer<TKey, TVal> producer, string topic,
            IEnumerable<Message<TKey, TVal>> messages, CancellationTokenSource cts = null)
        {
            producer.ProduceBatch(topic, messages, TimeSpan.FromSeconds(10), cts);
        }

        public static void ProduceBatch<TKey, TVal>(this IProducer<TKey, TVal> producer, string topic,
            IEnumerable<Message<TKey, TVal>> messages, TimeSpan flushTimeout, CancellationTokenSource cts = null)
        {
            var errorReports = new ConcurrentQueue<DeliveryReport<TKey, TVal>>();
            var reportsExpected = 0;
            var reportsReceived = 0;

            void DeliveryHandler(DeliveryReport<TKey, TVal> report)
            {
                Interlocked.Increment(ref reportsReceived);

                if (report.Error.IsError)
                {
                    errorReports.Enqueue(report);
                }
            }

            foreach (var message in messages)
            {
                producer.Produce(topic, message, DeliveryHandler);
                reportsExpected++;
            }

            var deadline = DateTime.UtcNow + flushTimeout;
            const int flushWaitMs = 100;

            while (DateTime.UtcNow < deadline && reportsReceived < reportsExpected)
            {
                cts?.Token.ThrowIfCancellationRequested();
                producer.Flush(TimeSpan.FromMilliseconds(flushWaitMs));
            }

            if (!errorReports.IsEmpty)
            {
                throw new AggregateException($"{errorReports.Count} Kafka produce(s) failed. Up to 10 inner exceptions follow.",
                    errorReports.Take(10).Select(i => new KafkaProduceException(
                        $"A Kafka produce error occurred. Topic: {topic}, Message key: {i.Message.Key}, Code: {i.Error.Code}, Reason: " +
                        $"{i.Error.Reason}, IsBroker: {i.Error.IsBrokerError}, IsLocal: {i.Error.IsLocalError}, IsFatal: {i.Error.IsFatal}"
                    ))
                );
            }

            if (reportsReceived < reportsExpected)
            {
                var msg = $"Kafka producer flush did not complete within the timeout; only received {reportsReceived} " +
                          $"delivery reports out of {reportsExpected} expected.";
                throw new KafkaProduceException(msg);
            }
        }
    }
}

A batch produce API would wrongfully suggest a level of atomicity that does not reflect the actual message-based delivery performed by the client, which leads to bad assumptions by the user and later breakage.
What you probably want is transaction support, allow you to commit or abort a set of messages as a whole. This is on the roadmap but no firm date yet.

something like Task.WhenAll(batch.Select(msg => p.ProduceAsync(topic, msg))); will give you a task that completes when all messages in a batch have been sent. You can guarantee ordering of those by enabling idempotence. the task exception will be set if there's a problem. you can await the task.
the only value I see in a batching api is that it would cut down on the number of p/invokes, which may give a measurable perf improvement in some scenarios. but the client isn't slow (in some scenarios it beats the java client). but as @edenhill says, I think providing a batch API would do more to mislead than add value.

Thanks for the feedback @mhowlett! I had it in my head somehow that calls to ProduceAsync would lead to one round-trip to Kafka per message, which is why I went nuts with the code above to avoid it. I see now that I misunderstood.
Anyone else coming along: you should definitely do what @mhowlett recommends just above (i.e. using Task.WhenAll...) rather than using my ProduceBatch method (which is way overcomplicated). I tested his approach in my code and it seems to work fine. I suppose one might get undue CPU pressure from task-switching for very large batches, but in testing with batches of 10K simple string messages, it didn't seem too burdensome.
My ConsumeBatch method, on the other hand, has been working great for us in production use for a while now. I did modify it a bit to take a CancellationToken instead of a CancellationTokenSource but otherwise it remains as written above. Definitely open to any ideas or criticisms about it though!

Thanks @edenhill, @mhowlett and @woodlee.
Based on your feedback I can see why a batching API is bad and may lead to bad assumptions. I assume that I went on the same idea as @woodlee by thinking that one produceAsync would cause on round-trip to Kafka per message*.
For now we do not need transactions or a strong guarantee that messages arrive in the correct order. I'll start looking into @mhowlett's example to see if this meets our requirements.
*: During my tests I noticed a high latency in order to sent all messages to Kafka. I thought this was due to a incorrect way of batching my messages. Later I found out that my configuration was to blame.

@edenhill right now the ProduceAsync API doesn't reflect the way messages are sent to broker under the hood.
@mhowlett suggestion is fine, but I doubt it's gonna be as efficient as a RecordSet with many messages if you take into account entire data pipeline (producer -> broker -> consumer)

librdkafka - which exposes a message-by-message API - outperforms the java client across the board. The .NET client is constrained by the API choices in librdkafka. There are some additional inefficiencies in .NET (in particular, Tasks do add a lot of overhead, if you use that variant to produce) but it's on the whole very fast and out-performs the java client in some parts of the parameter space. It would be possible to get higher performance by exposing the MessageSet abstraction to the user, but this would also expose the user to lower level concerns. Also keep in mind that in most practical scenarios, the performance of the client is not the bottle neck - it's either network (a single client can easily saturate most networks), or something related to the application (often CPU).

@mhowlett so the constraint is at the librdkafka's level? I read the docs and it seems the support for batching is there (section High throughput):
... test [0]: MessageSet with 1514 message(s) delivered

yes, work would need to be done in librdkafka to expose batching at the API level, but we haven't been convinced of the value in doing that (in fact we believe it may be dangerous as it may promote less than ideal usage).
the section you refer to in the docs refers to batching in protocol requests. librdkafka abstracts this away from you, except for the properties (most commonly linger.ms) that control it's behavior.

@mhowlett sorry, I haven't stated my problem clearly, I'm afraid.
I'd like to achieve batching at protocol level, but so far unable to do so with 0.11.6 client.
tried several values of linger.ms - every time the same outcome, MessageSet with one message gets published

the client will definitely batch messages to the broker (all versions).
if you experience the same problem with the latest version, please provide full code to a program demonstrating the issue and we can comment further.

Will do
On Mon, Oct 7, 2019 at 9:24 PM Matt Howlett<EMAIL_ADDRESS>wrote:

the client will definitely batch messages to the broker (all versions).
if you experience the same problem with the latest version, please provide
full code to a program demonstrating the issue and we can comment further.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/confluentinc/confluent-kafka-dotnet/issues/890?email_source=notifications&email_token=AABOO7DCQ4LNFHAVIFO6O3TQNN5EPA5CNFSM4HGR6MGKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEARKPJQ#issuecomment-539142054,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AABOO7EMDVMIHZ4DBML7523QNN5EPANCNFSM4HGR6MGA
.

--
Yours faithfully,
Gleb

@mhowlett I updated to 1.2.0 version and got the desired result using await Task.WhenAll(...) approach along with linger.ms and batch.num.messages settings explicitly set

librdkafka - which exposes a message-by-message API - outperforms the java client across the board. The .NET client is constrained by the API choices in librdkafka. There are some additional inefficiencies in .NET (in particular, Tasks do add a lot of overhead, if you use that variant to produce) but it's on the whole very fast and out-performs the java client in some parts of the parameter space. It would be possible to get higher performance by exposing the MessageSet abstraction to the user, but this would also expose the user to lower level concerns. Also keep in mind that in most practical scenarios, the performance of the client is not the bottleneck - it's either network (a single client can easily saturate most network interfaces), or something related to the application (often CPU).

I know it's a closed issue with great solutions, but maybe my comment would help somebody who wants to have "batch" produce without the significant overhead of awaiting many tasks.
One of the possible ways to do it is below, you can also catch delivery reports in a handler if you need to handle them
var semaphore = new SemaphoreSlim(0, messages.Count());

void DeliveryHandler(DeliveryReport<TKey, TValue> obj)
{
    semaphore.Release();
}

messages.ForEach(message => this.producer.Produce(topicKey, message, DeliveryHandler));

await semaphore.WaitAsync(cancellationToken);


BUG: Fixing Footer

Describe the bug
At the end of the page, there is one text stating "this script is to display year...."
I can fix it

Expected behavior
Year and copyright symbol should be added

while you are doing this , also remove  the text "designed by anshika" , thanks !

Ok maam

Should I add the same footer to the Contact Us page, cause it doesn't have one?

@ANSHIKA-26  Can you please tell whether I should add the footer or else make PR, I have completed my assigned task


python312Packages.blis: 0.7.11 -> 1.0.0

Description of changes
Diff: https://github.com/explosion/cython-blis/compare/v0.7.11...release-v1.0.0
Changelog: https://github.com/explosion/cython-blis/releases/tag/release-v1.0.0
Version 1.0 depends on numpy 2.0. C.f. https://github.com/NixOS/nixpkgs/pull/327437.

Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
24.11 Release Notes (or backporting 23.11 and 24.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[x] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

Changes look good. Why is this a draft?

Changes look good. Why is this a draft?

It breaks thinc and we can't depend on numpy_2 inside python3Packages.

Changes look good. Why is this a draft?

It breaks thinc and we can't depend on numpy_2 inside python3Packages.

And thinc can't depend on numpy_2?

It breaks thinc

Then we need an overlay there

we can't depend on numpy_2 inside python3Packages.

I think we can since we catch conflicts now. :) Please give it a shoot.

It breaks thinc

Then we need an overlay there

Thinc is a Python package, that won't work.

The package now works with both numpy and numpy_2.

Result of nixpkgs-review pr 333221 run on x86_64-linux 1

2 packages failed to build:

python311Packages.private-gpt
python311Packages.private-gpt.dist

88 packages built:

aider-chat
aider-chat.dist
python311Packages.blis
python311Packages.blis.dist
python311Packages.fastai
python311Packages.fastai.dist
python311Packages.llama-index
python311Packages.llama-index-agent-openai
python311Packages.llama-index-agent-openai.dist
python311Packages.llama-index-cli
python311Packages.llama-index-cli.dist
python311Packages.llama-index-core
python311Packages.llama-index-core.dist
python311Packages.llama-index-embeddings-gemini
python311Packages.llama-index-embeddings-gemini.dist
python311Packages.llama-index-embeddings-google
python311Packages.llama-index-embeddings-google.dist
python311Packages.llama-index-embeddings-huggingface
python311Packages.llama-index-embeddings-huggingface.dist
python311Packages.llama-index-embeddings-ollama
python311Packages.llama-index-embeddings-ollama.dist
python311Packages.llama-index-embeddings-openai
python311Packages.llama-index-embeddings-openai.dist
python311Packages.llama-index-graph-stores-nebula
python311Packages.llama-index-graph-stores-nebula.dist
python311Packages.llama-index-graph-stores-neo4j
python311Packages.llama-index-graph-stores-neo4j.dist
python311Packages.llama-index-graph-stores-neptune
python311Packages.llama-index-graph-stores-neptune.dist
python311Packages.llama-index-indices-managed-llama-cloud
python311Packages.llama-index-indices-managed-llama-cloud.dist
python311Packages.llama-index-legacy
python311Packages.llama-index-legacy.dist
python311Packages.llama-index-llms-ollama
python311Packages.llama-index-llms-ollama.dist
python311Packages.llama-index-llms-openai
python311Packages.llama-index-llms-openai-like
python311Packages.llama-index-llms-openai-like.dist
python311Packages.llama-index-llms-openai.dist
python311Packages.llama-index-multi-modal-llms-openai
python311Packages.llama-index-multi-modal-llms-openai.dist
python311Packages.llama-index-program-openai
python311Packages.llama-index-program-openai.dist
python311Packages.llama-index-question-gen-openai
python311Packages.llama-index-question-gen-openai.dist
python311Packages.llama-index-readers-database
python311Packages.llama-index-readers-database.dist
python311Packages.llama-index-readers-file
python311Packages.llama-index-readers-file.dist
python311Packages.llama-index-readers-json
python311Packages.llama-index-readers-json.dist
python311Packages.llama-index-readers-llama-parse
python311Packages.llama-index-readers-llama-parse.dist
python311Packages.llama-index-readers-s3
python311Packages.llama-index-readers-s3.dist
python311Packages.llama-index-readers-twitter
python311Packages.llama-index-readers-twitter.dist
python311Packages.llama-index-readers-txtai
python311Packages.llama-index-readers-txtai.dist
python311Packages.llama-index-readers-weather
python311Packages.llama-index-readers-weather.dist
python311Packages.llama-index-vector-stores-chroma
python311Packages.llama-index-vector-stores-chroma.dist
python311Packages.llama-index-vector-stores-google
python311Packages.llama-index-vector-stores-google.dist
python311Packages.llama-index-vector-stores-postgres
python311Packages.llama-index-vector-stores-postgres.dist
python311Packages.llama-index-vector-stores-qdrant
python311Packages.llama-index-vector-stores-qdrant.dist
python311Packages.llama-index.dist
python311Packages.llama-parse
python311Packages.llama-parse.dist
python311Packages.spacy
python311Packages.spacy-lookups-data
python311Packages.spacy-lookups-data.dist
python311Packages.spacy-transformers
python311Packages.spacy-transformers.dist
python311Packages.spacy.dist
python311Packages.textacy
python311Packages.textacy.dist
python311Packages.textnets
python311Packages.textnets.dist
python311Packages.thinc
python311Packages.thinc.dist
python312Packages.blis
python312Packages.blis.dist
python312Packages.thinc
python312Packages.thinc.dist

This pull request has been mentioned on NixOS Discourse. There might be relevant details there:
https://discourse.nixos.org/t/several-comments-about-priorities-and-new-policies-in-the-python-ecosystem/51790/1


Forge Scripts mnemonic-path flag not working as intended

Component
Forge
Have you ensured that all of these are up to date?

[x] Foundry
[X] Foundryup

What version of Foundry are you on?
forge 0.2.0 (b192af4 2022-05-30T00:08:26.00382Z)
What command(s) is the bug in?
forge script $FILE --rpc $RPC --mnemonic-path $PATH
Operating System
macOS (Apple Silicon)
Describe the bug
There are two issues, first one is the: documentation says --mnemonic-path but CLI requests --mnemonic-paths. Also doesn't matter the path I put I'm not getting on the script a different msg.sender (tested with --private-key and it does change)

cc @joshieDo

you can still manually set the sender with --sender ADDRESS
I'm still thinking about the best way to check for the presence of one wallet in the beginning of the process, that sets the sender by default. That's why it only exists for --private-key

@joshieDo  do you mean that we cant have a script

run forge scripts
load a seed phrase from mnemonic path
run script based on that mnemonic and index?

No, no I don't. You can have all that, given that you have the addresses of each path.
If you want to explicitly specify an account which would be the msg.sender, then you can pass  --sender ADDRESS.  This address will now be the msg.sender, the deployer of any necessary libraries and the address to be used on startBroadcast() and `broadcast()'.
If during the script you want to use other address to broadcast a tx other than msg.sender, then you can always pass it as broadcast(adddress) and startBroadcast(address)

@joshieDo is there a clear to do here?

I'm not clear on if there's any todo's here. There's also now the deriveKey and rememberKey cheats that provide another way to use mnemonics, so going to close this. Happy to reopen if there's some action/bug here


Armenian Translation Progress

Maintainer List

@SurenAt93
@tigrankeshishyan
@nikarm22

For New Translators
To translate a page:

Check that no one else has claimed your page in the checklist and comments below.
Comment below with the name of the page you would like to translate. Please take only one page at a time.
Clone this repo, translate your page, and submit a pull request!

Before contributing, read the glossary and style guide (once they exist) to understand how to translate various technical and React-specific terms.
Please be prompt with your translations! If you find find that you can't commit any more, let the maintainers know so they can assign the page to someone else.
For Maintainers
When someone volunteers, edit this issue with the username of the volunteer, and with the PR. Ex:

[ ] Home Page (@tesseralis) #1

When PRs are merged, make sure to mark that page as completed!
Work Status
(🏃 Work in Progress; 👀 In Review)
Core Pages
To do before releasing as an "official" translation. Please translate these pages first.

[x] Home Page (@SurenAt93 )
[ ] 🏃Tutorial (@nikarm22)

Basics

[x] Hello World (@SurenAt93)
[x] Introducing JSX (@SurenAt93)
[x] Rendering Elements (@tigrankeshishyan)
[x] Components and Props (@SurenAt93)
[x] State and Lifecycle (@SurenAt93)
[x] Handling Events (@aramvr)
[x] Conditional Rendering (@tigrankeshishyan)
[x] Lists and Keys (@tigrankeshishyan)
[x] Forms (@SurenAt93)
[x] Lifting State Up (@SurenAt93)
[x] Composition vs Inheritance (@SurenAt93)
[x] Thinking in React (@SurenAt93)

API Reference

[ ] React
[ ] React.Component
[ ] ReactDOM
[ ] ReactDOMServer
[ ] DOM Elements
[ ] SyntheticEvent
[ ] Test Utilities
[ ] Shallow Renderer
[ ] Test Renderer
[ ] JS Environment Requirements
[ ] Glossary

Navigation
These are the navigation links that appears in the sidebar. Possibly wait until
the corresponding sections are translated to do these.

[ ] tutorial/nav.yml
[ ] docs/nav.yml

Next Steps
These are the next most important translations, ordered by importance:
Installation

[x] Getting Started (@SurenAt93 )
[x] Add React to a Website (@SurenAt93 )
[x] Create a New React App (@SurenAt93 )
[x] CDN Links (@SurenAt93 )

Hooks
Everyone is hooked on hooks! People are really excited for these and it would be great for them to be translated.

[ ] Introducing Hooks (@SurenAt93 )
[ ] Hooks at a Glance (@SurenAt93 )
[ ] Using the State Hook (@SurenAt93 )
[ ] Using the Effect Hook (@SurenAt93 )
[ ] Rules of Hooks (@SurenAt93 )
[ ] Building Your Own Hooks (@SurenAt93 )
[ ] Hooks API Reference (@SurenAt93 )
[ ] Hooks FAQ (@SurenAt93 )

Warnings
These are the pages that you get when you click the links in the console (e.g. https://reactjs.org/warnings/dont-call-proptypes.html). People tend to search these, so please don't translate the error message itself.

[ ] 🏃dont-call-proptypes (@tigrankeshishyan)
[ ] invalid-aria-prop
[ ] invalid-hook-call-warning
[x] legacy-factories (@Hovakimyan)
[ ] 🏃refs-must-have-owner (@Hovakimyan)
[ ] special-props
[ ] unknown-prop

Advanced Guides

[ ] Accessibility
[ ] Code-Splitting
[ ] Context
[ ] Error Boundaries
[ ] Forwarding Refs
[ ] Fragments
[ ] Higher-Order Components
[ ] Integrating with Other Libraries
[ ] JSX In Depth
[ ] Optimizing Performance
[ ] Portals
[ ] React Without ES6
[ ] React Without JSX
[ ] Reconciliation
[ ] Refs and the DOM
[ ] Render Props
[ ] Static Type Checking
[ ] Strict Mode
[ ] Typechecking With PropTypes
[ ] Uncontrolled Components
[ ] Web Components

FAQ

[x] APIs and AJAX (@aramvr)
[x] Babel, JSX, and Build Steps (@aramvr)
[ ] 🏃Passing Functions to Components (@aramvr)
[ ] 🏃Component State (@aramvr)
[x] Styling and CSS (@aramvr)
[ ] 🏃File Structure (@aramvr)
[ ] 🏃Versioning Policy (@aramvr)
[ ] 🏃Virtual DOM and Internals (@aramvr)

Contributing
Priority: Low

[ ] 🏃How to Contribute (@SonaHarutyunyan)
[ ] 🏃Codebase Overview (@SonaHarutyunyan)
[ ] 🏃Implementation Notes (@SonaHarutyunyan)
[ ] 🏃Design Principles (@SonaHarutyunyan)

Components
Components in src/components that have some text in them.

[x] CodeEditor (@SurenAt93 )
[x] CodeExample (@SurenAt93 )
[x] ErrorDecoder (@SurenAt93 )
[x] LayoutFooter (@SurenAt93 )
[x] LayoutHeader (@SurenAt93 )
[x] MarkdownPage (@SurenAt93 )

Additional Translations
These are not the primary translation targets.

[ ] Blog
[ ] Community

It looks like this translation has stalled, and is now very outdated.
I'm going to archive this repo, but if someone wants to pick up, please start a new effort.


Display likes and comments counter for each post

Hello,
Is this possible to display likes and comments counter for each post?

This is technically possible, but it is not implemented in the plugin. Most likely it will appear soon.

This is technically possible, but it is not implemented in the plugin. Most likely it will appear soon.

Thanks

Thanks

@jsanahuja Are available displaying of likes and comments counters for each post using graphQL with user_id?

@jsanahuja Are available displaying of likes and comments counters for each post using graphQL with user_id?

No, this has not been implemented yet


Restarting nextcloud container lets the configuration page show up again

Hello,
I'm using the nextcloud container image. Everytime I make changes to the config.php i have to restart the container. With every restart the configuration page keeps popping up. Since I already configured a database connection and admin user this makes no sense. Is there a workaround to prevent this behaviour?

I noticed the same thing, I'm investigating.
Apparently something changed because this was the last workaround to prevent this :
https://github.com/Wonderfall/dockerfiles/blob/master/nextcloud/9.0/run.sh#L8
And it worked... I'll see what I can do.

Hey, I found a work-around.
Manually setting 'installed' => 'true' in the config.php on the host will prevent the config page from showing up again. Seems there is some bug while creating the config file in the first place.

I think it's solved now, let me know is something like this happens again.


Running npx @connectrpc/connect-migrate@beta createPromiseClient -> createClient is broken

Describe the bug
I ran npx @connectrpc/connect-migrate@beta. This resulted in a few changes, including switching createPromiseClient to createClient. But createClient doesn't seem to exist?

Environment (please complete the following information):
Relevant deps:
    "@bufbuild/buf": "^1.44.0",
    "@bufbuild/protobuf": "^2.1.0",
    "@bufbuild/protoc-gen-es": "^2.1.0",
    "@connectrpc/connect": "^2.0.0-beta.1",
    "@connectrpc/connect-node": "^2.0.0-beta.1",

Node version: v19.9.0

It might be because of vscode, can you reload the vscode window? Because I see that the deps updated to 2.0.0-beta.1 and it does export createClient.

🤦
@srikrsna-buf that was it. I had a different error in my logs (turns out you now require a protocol for the base url in this version) and assumed they were related. I need sleep 😅


rpi4 cluster - microk8s - dashboard access from external

hello, i'm new to microk8s, i followed this tutorial to install microk8s on raspberry pi 4b cluster, now the cluster is up, but i can't access dashboard
my cluster info can be found in another ticket #2042
below is output for sudo microk8s.kubectl get all --all-namespaces, according to below info, i'm supposed to access dashboard from https://<IP_ADDRESS>/, but the brower is saying site can't be reached...
i'm accessing dashboard from another computer, it's in the same network as my pi clusters, with IP addresses: 192.168.2.x
please help, thank you!
$ sudo microk8s.kubectl get all --all-namespaces
NAMESPACE     NAME                                             READY   STATUS    RESTARTS   AGE
kube-system   pod/metrics-server-7b7db5984b-4mn48              1/1     Running   0          2d2h
kube-system   pod/calico-node-5ts8c                            1/1     Running   1          2d3h
kube-system   pod/kubernetes-dashboard-7ffd448895-fn9k2        1/1     Running   0          2d2h
kube-system   pod/coredns-86f78bb79c-7dbtr                     1/1     Running   0          2d2h
kube-system   pod/dashboard-metrics-scraper-6c4568dc68-p6mjg   1/1     Running   0          2d2h
kube-system   pod/calico-kube-controllers-847c8c99d-wn9w4      1/1     Running   0          2d3h
kube-system   pod/calico-node-hn4wp                            1/1     Running   1          2d2h
kube-system   pod/calico-node-vx8hr                            1/1     Running   1          2d2h
kube-system   pod/calico-node-f4x27                            1/1     Running   1          2d3h

NAMESPACE     NAME                                TYPE        CLUSTER-IP       EXTERNAL-IP   PORT(S)                  AGE
default       service/kubernetes                  ClusterIP   <IP_ADDRESS>     <none>        443/TCP                  2d3h
kube-system   service/kube-dns                    ClusterIP   <IP_ADDRESS>    <none>        53/UDP,53/TCP,9153/TCP   2d2h
kube-system   service/metrics-server              ClusterIP   <IP_ADDRESS>    <none>        443/TCP                  2d2h
kube-system   service/kubernetes-dashboard        ClusterIP   <IP_ADDRESS>   <none>        443/TCP                  2d2h
kube-system   service/dashboard-metrics-scraper   ClusterIP   <IP_ADDRESS>   <none>        8000/TCP                 2d2h

NAMESPACE     NAME                         DESIRED   CURRENT   READY   UP-TO-DATE   AVAILABLE   NODE SELECTOR            AGE
kube-system   daemonset.apps/calico-node   4         4         4       4            4           kubernetes.io/os=linux   2d3h

NAMESPACE     NAME                                        READY   UP-TO-DATE   AVAILABLE   AGE
kube-system   deployment.apps/metrics-server              1/1     1            1           2d2h
kube-system   deployment.apps/kubernetes-dashboard        1/1     1            1           2d2h
kube-system   deployment.apps/coredns                     1/1     1            1           2d2h
kube-system   deployment.apps/calico-kube-controllers     1/1     1            1           2d3h
kube-system   deployment.apps/dashboard-metrics-scraper   1/1     1            1           2d2h

NAMESPACE     NAME                                                   DESIRED   CURRENT   READY   AGE
kube-system   replicaset.apps/metrics-server-7b7db5984b              1         1         1       2d2h
kube-system   replicaset.apps/kubernetes-dashboard-7ffd448895        1         1         1       2d2h
kube-system   replicaset.apps/coredns-86f78bb79c                     1         1         1       2d2h
kube-system   replicaset.apps/calico-kube-controllers-847c8c99d      1         1         1       2d3h
kube-system   replicaset.apps/dashboard-metrics-scraper-6c4568dc68   1         1         1       2d2h

By default no service is available outside of it's cluster ip. The easiest way to check it's working correctly is by using proxy forwarding.
microk8s kubectl port-forward -n kube-system service/kubernetes-dashboard 10443:443
You mentioned being on a different net work so you may need to use --address <IP_ADDRESS> to bind` to bind to all external ipv4 addresses.

@lededje , thanks for the update!
i ran the command for proxy forwarding from the master node:
$ sudo microk8s kubectl port-forward -n kube-system service/kubernetes-dashboard 10443:443
Forwarding from <IP_ADDRESS>:10443 -> 8443
Forwarding from [::1]:10443 -> 8443

am i supposed to access it via: https://<IP_ADDRESS>:10443 or https://masternodeip:10443 ?
i'm still getting This site can’t be reached error for both

i found this: https://dev.to/duplys/installing-kubernetes-dashboard-for-microk8s-on-a-raspberry-pi-cluster-58hb
which seems to be the same issue as mine, it's for ubuntu 18 and this command doesn't work for the latest ubuntu 20 for raspberry pi:
$ kubectl -n kubernetes-dashboard edit service kubernetes-dashboard

how can i change clusterip to nodeport?

I was able to access the dashboard remotely following this tutorial:
https://upcloud.com/community/tutorials/deploy-kubernetes-dashboard/
May be useful for you

@kerenskybr , thanks for the information, it's very helpful
now i understand that the webui can only be accessed from that local machine
now i'm using ssh to channel the connection, there's new error message from master:
$ sudo microk8s kubectl port-forward -n kube-system service/kubernetes-dashboard 10443:443
Forwarding from <IP_ADDRESS>:10443 -> 8443
Forwarding from [::1]:10443 -> 8443
Handling connection for 10443
Handling connection for 10443
E0225 03:09:22.278126   13540 portforward.go:400] an error occurred forwarding 10443 -> 8443: error forwarding port 8443 to pod c24b507f2148a8726999d05a8667ecc73d6b3e8fad17f733187aa7f2b0fc11d2, uid : failed to execute portforward in network namespace "/var/run/netns/cni-bf71520b-59cf-8861-e8ca-284ed84d1dde": socat command returns error: exit status 1, stderr: "2021/02/25 03:09:22 socat[17284] E getaddrinfo(\"localhost\", \"NULL\", {1,2,1,6}, {}): Temporary failure in name resolution\n"
E0225 03:09:22.279097   13540 portforward.go:400] an error occurred forwarding 10443 -> 8443: error forwarding port 8443 to pod c24b507f2148a8726999d05a8667ecc73d6b3e8fad17f733187aa7f2b0fc11d2, uid : failed to execute portforward in network namespace "/var/run/netns/cni-bf71520b-59cf-8861-e8ca-284ed84d1dde": socat command returns error: exit status 1, stderr: "2021/02/25 03:09:22 socat[17285] E getaddrinfo(\"localhost\", \"NULL\", {1,2,1,6}, {}): Temporary failure in name resolution\n"
Handling connection for 10443
Handling connection for 10443
E0225 03:09:22.302850   13540 portforward.go:400] an error occurred forwarding 10443 -> 8443: error forwarding port 8443 to pod c24b507f2148a8726999d05a8667ecc73d6b3e8fad17f733187aa7f2b0fc11d2, uid : failed to execute portforward in network namespace "/var/run/netns/cni-bf71520b-59cf-8861-e8ca-284ed84d1dde": socat command returns error: exit status 1, stderr: "2021/02/25 03:09:22 socat[17286] E getaddrinfo(\"localhost\", \"NULL\", {1,2,1,6}, {}): Temporary failure in name resolution\n"
E0225 03:09:22.309733   13540 portforward.go:400] an error occurred forwarding 10443 -> 8443: error forwarding port 8443 to pod c24b507f2148a8726999d05a8667ecc73d6b3e8fad17f733187aa7f2b0fc11d2, uid : failed to execute portforward in network namespace "/var/run/netns/cni-bf71520b-59cf-8861-e8ca-284ed84d1dde": socat command returns error: exit status 1, stderr: "2021/02/25 03:09:22 socat[17287] E getaddrinfo(\"localhost\", \"NULL\", {1,2,1,6}, {}): Temporary failure in name resolution\n"
Handling connection for 10443
Handling connection for 10443
E0225 03:09:23.369735   13540 portforward.go:400] an error occurred forwarding 10443 -> 8443: error forwarding port 8443 to pod c24b507f2148a8726999d05a8667ecc73d6b3e8fad17f733187aa7f2b0fc11d2, uid : failed to execute portforward in network namespace "/var/run/netns/cni-bf71520b-59cf-8861-e8ca-284ed84d1dde": socat command returns error: exit status 1, stderr: "2021/02/25 03:09:23 socat[17290] E getaddrinfo(\"localhost\", \"NULL\", {1,2,1,6}, {}): Temporary failure in name resolution\n"
E0225 03:09:23.374421   13540 portforward.go:400] an error occurred forwarding 10443 -> 8443: error forwarding port 8443 to pod c24b507f2148a8726999d05a8667ecc73d6b3e8fad17f733187aa7f2b0fc11d2, uid : failed to execute portforward in network namespace "/var/run/netns/cni-bf71520b-59cf-8861-e8ca-284ed84d1dde": socat command returns error: exit status 1, stderr: "2021/02/25 03:09:23 socat[17291] E getaddrinfo(\"localhost\", \"NULL\", {1,2,1,6}, {}): Temporary failure in name resolution\n"
Handling connection for 10443
E0225 03:09:23.404883   13540 portforward.go:400] an error occurred forwarding 10443 -> 8443: error forwarding port 8443 to pod c24b507f2148a8726999d05a8667ecc73d6b3e8fad17f733187aa7f2b0fc11d2, uid : failed to execute portforward in network namespace "/var/run/netns/cni-bf71520b-59cf-8861-e8ca-284ed84d1dde": socat command returns error: exit status 1, stderr: "2021/02/25 03:09:23 socat[17292] E getaddrinfo(\"localhost\", \"NULL\", {1,2,1,6}, {}): Temporary failure in name resolution\n"
Handling connection for 10443
E0225 03:09:23.437968   13540 portforward.go:400] an error occurred forwarding 10443 -> 8443: error forwarding port 8443 to pod c24b507f2148a8726999d05a8667ecc73d6b3e8fad17f733187aa7f2b0fc11d2, uid : failed to execute portforward in network namespace "/var/run/netns/cni-bf71520b-59cf-8861-e8ca-284ed84d1dde": socat command returns error: exit status 1, stderr: "2021/02/25 03:09:23 socat[17293] E getaddrinfo(\"localhost\", \"NULL\", {1,2,1,6}, {}): Temporary failure in name resolution\n"
Handling connection for 10443
Handling connection for 10443
E0225 03:09:28.459484   13540 portforward.go:400] an error occurred forwarding 10443 -> 8443: error forwarding port 8443 to pod c24b507f2148a8726999d05a8667ecc73d6b3e8fad17f733187aa7f2b0fc11d2, uid : failed to execute portforward in network namespace "/var/run/netns/cni-bf71520b-59cf-8861-e8ca-284ed84d1dde": socat command returns error: exit status 1, stderr: "2021/02/25 03:09:28 socat[17426] E getaddrinfo(\"localhost\", \"NULL\", {1,2,1,6}, {}): Temporary failure in name resolution\n"
E0225 03:09:28.462300   13540 portforward.go:400] an error occurred forwarding 10443 -> 8443: error forwarding port 8443 to pod c24b507f2148a8726999d05a8667ecc73d6b3e8fad17f733187aa7f2b0fc11d2, uid : failed to execute portforward in network namespace "/var/run/netns/cni-bf71520b-59cf-8861-e8ca-284ed84d1dde": socat command returns error: exit status 1, stderr: "2021/02/25 03:09:28 socat[17421] E getaddrinfo(\"localhost\", \"NULL\", {1,2,1,6}, {}): Temporary failure in name resolution\n"
Handling connection for 10443
Handling connection for 10443
E0225 03:09:28.499630   13540 portforward.go:400] an error occurred forwarding 10443 -> 8443: error forwarding port 8443 to pod c24b507f2148a8726999d05a8667ecc73d6b3e8fad17f733187aa7f2b0fc11d2, uid : failed to execute portforward in network namespace "/var/run/netns/cni-bf71520b-59cf-8861-e8ca-284ed84d1dde": socat command returns error: exit status 1, stderr: "2021/02/25 03:09:28 socat[17433] E getaddrinfo(\"localhost\", \"NULL\", {1,2,1,6}, {}): Temporary failure in name resolution\n"
E0225 03:09:28.506709   13540 portforward.go:400] an error occurred forwarding 10443 -> 8443: error forwarding port 8443 to pod c24b507f2148a8726999d05a8667ecc73d6b3e8fad17f733187aa7f2b0fc11d2, uid : failed to execute portforward in network namespace "/var/run/netns/cni-bf71520b-59cf-8861-e8ca-284ed84d1dde": socat command returns error: exit status 1, stderr: "2021/02/25 03:09:28 socat[17432] E getaddrinfo(\"localhost\", \"NULL\", {1,2,1,6}, {}): Temporary failure in name resolution\n"
Handling connection for 10443
Handling connection for 10443
E0225 03:09:58.534416   13540 portforward.go:400] an error occurred forwarding 10443 -> 8443: error forwarding port 8443 to pod c24b507f2148a8726999d05a8667ecc73d6b3e8fad17f733187aa7f2b0fc11d2, uid : failed to execute portforward in network namespace "/var/run/netns/cni-bf71520b-59cf-8861-e8ca-284ed84d1dde": socat command returns error: exit status 1, stderr: "2021/02/25 03:09:58 socat[18020] E getaddrinfo(\"localhost\", \"NULL\", {1,2,1,6}, {}): Temporary failure in name resolution\n"
E0225 03:09:58.535204   13540 portforward.go:400] an error occurred forwarding 10443 -> 8443: error forwarding port 8443 to pod c24b507f2148a8726999d05a8667ecc73d6b3e8fad17f733187aa7f2b0fc11d2, uid : failed to execute portforward in network namespace "/var/run/netns/cni-bf71520b-59cf-8861-e8ca-284ed84d1dde": socat command returns error: exit status 1, stderr: "2021/02/25 03:09:58 socat[18021] E getaddrinfo(\"localhost\", \"NULL\", {1,2,1,6}, {}): Temporary failure in name resolution\n"
Handling connection for 10443
Handling connection for 10443
E0225 03:09:58.561877   13540 portforward.go:400] an error occurred forwarding 10443 -> 8443: error forwarding port 8443 to pod c24b507f2148a8726999d05a8667ecc73d6b3e8fad17f733187aa7f2b0fc11d2, uid : failed to execute portforward in network namespace "/var/run/netns/cni-bf71520b-59cf-8861-e8ca-284ed84d1dde": socat command returns error: exit status 1, stderr: "2021/02/25 03:09:58 socat[18022] E getaddrinfo(\"localhost\", \"NULL\", {1,2,1,6}, {}): Temporary failure in name resolution\n"
E0225 03:09:58.571681   13540 portforward.go:400] an error occurred forwarding 10443 -> 8443: error forwarding port 8443 to pod c24b507f2148a8726999d05a8667ecc73d6b3e8fad17f733187aa7f2b0fc11d2, uid : failed to execute portforward in network namespace "/var/run/netns/cni-bf71520b-59cf-8861-e8ca-284ed84d1dde": socat command returns error: exit status 1, stderr: "2021/02/25 03:09:58 socat[18023] E getaddrinfo(\"localhost\", \"NULL\", {1,2,1,6}, {}): Temporary failure in name resolution\n"

Hi. Can the nodes resolve each other by the kubernetes node names?  For example if i do kubectl get no it returns the nodes, node_name1, node_name2, etc.
Is node_name2 resolvable from the other nodes?

@balchua , thanks for the update, i can run below commands in all 4 nodes, it's the same
$ sudo microk8s.kubectl get node
NAME    STATUS   ROLES    AGE     VERSION
rpi04   Ready    <none>   2d23h   v1.20.2-34+c6851e88267786
rpi02   Ready    <none>   2d23h   v1.20.2-34+c6851e88267786
rpi03   Ready    <none>   2d23h   v1.20.2-34+c6851e88267786
rpi01   Ready    <none>   3d      v1.20.2-34+c6851e88267786

Out of curiosity, can you do kubectl log ... to any pod?

@balchua , thanks for the update, pls find below logs
$ sudo microk8s kubectl get pods
NAME                     READY   STATUS    RESTARTS   AGE
nginx-6799fc88d8-lk7ww   1/1     Running   5          44h

$ sudo microk8s kubectl logs nginx-6799fc88d8-lk7ww
/docker-entrypoint.sh: /docker-entrypoint.d/ is not empty, will attempt to perform configuration
/docker-entrypoint.sh: Looking for shell scripts in /docker-entrypoint.d/
/docker-entrypoint.sh: Launching /docker-entrypoint.d/10-listen-on-ipv6-by-default.sh
10-listen-on-ipv6-by-default.sh: info: Getting the checksum of /etc/nginx/conf.d/default.conf
10-listen-on-ipv6-by-default.sh: info: Enabled listen on IPv6 in /etc/nginx/conf.d/default.conf
/docker-entrypoint.sh: Launching /docker-entrypoint.d/20-envsubst-on-templates.sh
/docker-entrypoint.sh: Launching /docker-entrypoint.d/30-tune-worker-processes.sh
/docker-entrypoint.sh: Configuration complete; ready for start up

also i found something, when running microk8s inspect, there's error for master node, the other 3 ndoes are fine
$ sudo microk8s inspect
Inspecting Certificates
Inspecting services
  Service snap.microk8s.daemon-cluster-agent is running
  Service snap.microk8s.daemon-containerd is running
  Service snap.microk8s.daemon-apiserver is running
  Service snap.microk8s.daemon-apiserver-kicker is running
  Service snap.microk8s.daemon-control-plane-kicker is running
  Service snap.microk8s.daemon-proxy is running
  Service snap.microk8s.daemon-kubelet is running
 FAIL:  Service snap.microk8s.daemon-scheduler is not running
For more details look at: sudo journalctl -u snap.microk8s.daemon-scheduler
 FAIL:  Service snap.microk8s.daemon-controller-manager is not running
For more details look at: sudo journalctl -u snap.microk8s.daemon-controller-manager
  Copy service arguments to the final report tarball
Inspecting AppArmor configuration
Gathering system information
  Copy processes list to the final report tarball
  Copy snap list to the final report tarball
  Copy VM name (or none) to the final report tarball
  Copy disk usage information to the final report tarball
  Copy memory usage information to the final report tarball
  Copy server uptime to the final report tarball
  Copy current linux distribution to the final report tarball
  Copy openSSL information to the final report tarball
  Copy network configuration to the final report tarball
Inspecting kubernetes cluster
  Inspect kubernetes cluster
Inspecting juju
  Inspect Juju
Inspecting kubeflow
  Inspect Kubeflow

Building the report tarball
  Report tarball is at /var/snap/microk8s/2049/inspection-report-20210226_095519.tar.gz

attaching inspection-report-20210226_095519.tar.gz, inspection-report-20210226_095519.tar.gz

Thank you for the info.
Looking at logs, it seems like the node rpi01 just booted.
09:55:12 up 5 min,  1 user,  load average: 2.28, 1.87, 0.91

I don't know why the controller manager and scheduler is down.
You can manually start it.
systemctl start snap.microk8s.daemon-scheduler.service and
systemctl start snap.microk8s.daemon-controller-manager.service

@balchua, thank you, 2 services restarted, new inspect shows no error
$ sudo microk8s inspect
Inspecting Certificates
Inspecting services
  Service snap.microk8s.daemon-cluster-agent is running
  Service snap.microk8s.daemon-containerd is running
  Service snap.microk8s.daemon-apiserver is running
  Service snap.microk8s.daemon-apiserver-kicker is running
  Service snap.microk8s.daemon-control-plane-kicker is running
  Service snap.microk8s.daemon-proxy is running
  Service snap.microk8s.daemon-kubelet is running
  Service snap.microk8s.daemon-scheduler is running
  Service snap.microk8s.daemon-controller-manager is running
  Copy service arguments to the final report tarball
Inspecting AppArmor configuration
Gathering system information
  Copy processes list to the final report tarball
  Copy snap list to the final report tarball
  Copy VM name (or none) to the final report tarball
  Copy disk usage information to the final report tarball
  Copy memory usage information to the final report tarball
  Copy server uptime to the final report tarball
  Copy current linux distribution to the final report tarball
  Copy openSSL information to the final report tarball
  Copy network configuration to the final report tarball
Inspecting kubernetes cluster
  Inspect kubernetes cluster
Inspecting juju
  Inspect Juju
Inspecting kubeflow
  Inspect Kubeflow

Building the report tarball
  Report tarball is at /var/snap/microk8s/2049/inspection-report-20210226_120714.tar.gz

but i'm still getting below errors while accessing dashboard from external:
$ sudo microk8s kubectl port-forward -n kube-system service/kubernetes-dashboard 10443:443
Forwarding from <IP_ADDRESS>:10443 -> 8443
Forwarding from [::1]:10443 -> 8443
Handling connection for 10443
Handling connection for 10443
E0226 12:07:41.045552  166545 portforward.go:400] an error occurred forwarding 10443 -> 8443: error forwarding port 8443 to pod 82f8b0fd61e562f4d8ce1793f0585fe86818ece93d030c3e39db528b81ad6015, uid : failed to execute portforward in network namespace "/var/run/netns/cni-d37c2f0c-7f63-7bbf-4687-e70cd754a6f0": socat command returns error: exit status 1, stderr: "2021/02/26 12:07:41 socat[130316] E getaddrinfo(\"localhost\", \"NULL\", {1,2,1,6}, {}): Temporary failure in name resolution\n"
E0226 12:07:41.046684  166545 portforward.go:400] an error occurred forwarding 10443 -> 8443: error forwarding port 8443 to pod 82f8b0fd61e562f4d8ce1793f0585fe86818ece93d030c3e39db528b81ad6015, uid : failed to execute portforward in network namespace "/var/run/netns/cni-d37c2f0c-7f63-7bbf-4687-e70cd754a6f0": socat command returns error: exit status 1, stderr: "2021/02/26 12:07:41 socat[130317] E getaddrinfo(\"localhost\", \"NULL\", {1,2,1,6}, {}): Temporary failure in name resolution\n"
Handling connection for 10443
Handling connection for 10443
E0226 12:07:41.078717  166545 portforward.go:400] an error occurred forwarding 10443 -> 8443: error forwarding port 8443 to pod 82f8b0fd61e562f4d8ce1793f0585fe86818ece93d030c3e39db528b81ad6015, uid : failed to execute portforward in network namespace "/var/run/netns/cni-d37c2f0c-7f63-7bbf-4687-e70cd754a6f0": socat command returns error: exit status 1, stderr: "2021/02/26 12:07:41 socat[130318] E getaddrinfo(\"localhost\", \"NULL\", {1,2,1,6}, {}): Temporary failure in name resolution\n"
E0226 12:07:41.079780  166545 portforward.go:400] an error occurred forwarding 10443 -> 8443: error forwarding port 8443 to pod 82f8b0fd61e562f4d8ce1793f0585fe86818ece93d030c3e39db528b81ad6015, uid : failed to execute portforward in network namespace "/var/run/netns/cni-d37c2f0c-7f63-7bbf-4687-e70cd754a6f0": socat command returns error: exit status 1, stderr: "2021/02/26 12:07:41 socat[130319] E getaddrinfo(\"localhost\", \"NULL\", {1,2,1,6}, {}): Temporary failure in name resolution\n"

@balchua , i found this:
https://unix.stackexchange.com/questions/504963/how-to-solve-a-temporary-failure-in-name-resolution-error/504975
is microk8s using same config located from /etc/resolv.conf? my current config value won't work:
$ cat /etc/resolv.conf
# This file is managed by man:systemd-resolved(8). Do not edit.
#
# This is a dynamic resolv.conf file for connecting local clients to the
# internal DNS stub resolver of systemd-resolved. This file lists all
# configured search domains.
#
# Run "resolvectl status" to see details about the uplink DNS servers
# currently in use.
#
# Third party programs must not access this file directly, but only through the
# symlink at /etc/resolv.conf. To manage man:resolv.conf(5) in a different way,
# replace this symlink by a static file or a different symlink.
#
# See man:systemd-resolved.service(8) for details about the supported modes of
# operation for /etc/resolv.conf.

nameserver <IP_ADDRESS>
options edns0 trust-ad

Hi,
Can you do port forwarding from the same node where the kubernetes- dashboard is?
Another thing i do, i add the node name and ip into each node's /etc/hosts since I don't have a dns server.

@balchua, how do i know which node is running dashboard?
i added all nodes ip in /etc/hosts:
$ cat /etc/hosts
#<IP_ADDRESS> localhost

# The following lines are desirable for IPv6 capable hosts
::1 ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
ff02::3 ip6-allhosts

<IP_ADDRESS> rpi01
<IP_ADDRESS> rpi02
<IP_ADDRESS> rpi03
<IP_ADDRESS> rpi04

kubectl get pods -A -o wide it should show you the node where it is running.
You can try adding the node names into your /etc/hosts of each node.
If you want to use your systems'  /etc/resolv. You may have to edit coredns configmap.

@balchua , thanks a lot, i found the node, and updated /etc/resolv to use <IP_ADDRESS> as nameserver for all nodes and restartd
$ sudo microk8s kubectl get pods -A -o wide
NAMESPACE     NAME                                         READY   STATUS    RESTARTS   AGE     IP             NODE    NOMINATED NODE   READINESS GATES
kube-system   dashboard-metrics-scraper-6c4568dc68-k2lpl   1/1     Running   2          33h     <IP_ADDRESS>    rpi04   <none>           <none>
kube-system   metrics-server-7b7db5984b-4mn48              1/1     Running   9          4d9h    <IP_ADDRESS>    rpi01   <none>           <none>
default       nginx-6799fc88d8-lk7ww                       1/1     Running   7          2d      <IP_ADDRESS>    rpi04   <none>           <none>
kube-system   calico-node-hn4wp                            1/1     Running   9          4d9h    <IP_ADDRESS>   rpi04   <none>           <none>
kube-system   coredns-86f78bb79c-2txgb                     1/1     Running   4          33h     <IP_ADDRESS>     rpi03   <none>           <none>
kube-system   calico-node-vx8hr                            1/1     Running   9          4d9h    <IP_ADDRESS>   rpi03   <none>           <none>
kube-system   calico-kube-controllers-847c8c99d-wn9w4      1/1     Running   10         4d10h   <IP_ADDRESS>    rpi01   <none>           <none>
kube-system   hostpath-provisioner-976f6d665-2dswm         1/1     Running   5          33h     <IP_ADDRESS>     rpi02   <none>           <none>
kube-system   kubernetes-dashboard-7ffd448895-hmw72        1/1     Running   4          33h     <IP_ADDRESS>     rpi02   <none>           <none>
kube-system   calico-node-5ts8c                            1/1     Running   13         4d10h   <IP_ADDRESS>   rpi01   <none>           <none>
kube-system   calico-node-f4x27                            1/1     Running   9          4d10h   <IP_ADDRESS>   rpi02   <none>           <none>

now i'm doing port forward in rpi02 by: ssh -L localhost:10443:<IP_ADDRESS>:10443 ubuntu@rpi02, then
$ sudo microk8s kubectl port-forward -n kube-system service/kubernetes-dashboard 10443:443
Forwarding from <IP_ADDRESS>:10443 -> 8443
Forwarding from [::1]:10443 -> 8443
Handling connection for 10443
Handling connection for 10443
E0226 13:22:07.839079   41332 portforward.go:400] an error occurred forwarding 10443 -> 8443: error forwarding port 8443 to pod bb5fc5918b24a7e21bfa4a83d90b03eb3699642f4f7f1293ea139f0e5cbadfe0, uid : failed to execute portforward in network namespace "/var/run/netns/cni-2c8a6dc0-cb6d-5c69-be98-ec06cd4031c4": socat command returns error: exit status 1, stderr: "2021/02/26 13:22:07 socat[41465] E getaddrinfo(\"localhost\", \"NULL\", {1,2,1,6}, {}): Temporary failure in name resolution\n"
E0226 13:22:07.840275   41332 portforward.go:400] an error occurred forwarding 10443 -> 8443: error forwarding port 8443 to pod bb5fc5918b24a7e21bfa4a83d90b03eb3699642f4f7f1293ea139f0e5cbadfe0, uid : failed to execute portforward in network namespace "/var/run/netns/cni-2c8a6dc0-cb6d-5c69-be98-ec06cd4031c4": socat command returns error: exit status 1, stderr: "2021/02/26 13:22:07 socat[41466] E getaddrinfo(\"localhost\", \"NULL\", {1,2,1,6}, {}): Temporary failure in name resolution\n"

and there're still errors

Oh in your /etc/hosts you commented out localhost.
$ cat /etc/hosts
#<IP_ADDRESS> localhost

Can you uncomment that one and try again?

@balchua , thank you so much!
i forgot to mention i also setup a hadoop/spark cluster using the same devices, the other project document was saying to remove that line in host file...
now it's working, i can open dashboard using firefox


Implement ZIP 215 validation rules.

Closes #16.
Done:

[x] validation criteria
[x] testing

[x] test vectors that exercise the differences between cofactorless and cofactored verification equations;
[ ] test vectors that exercise non-canonical point encodings.

A hex-formatted list of test vectors can be found here:
https://gist.github.com/hdevalence/93ed42d17ecab8e42138b213812c8cc7
This should make its way into ZIP 215.


Add rules to deviant feat effect

For strained metabolism I think there's no way around doing it like we had Oracle curses previously, with a ChoiceSet for the current stage. All of the penalties can be removed without leaving the current stage. For example in the first stage you can eat a snack to remove the penalties, but you are still at the minor backlash stage for the day even after the penalties are gone.

Then I will delete inMemoryOnly param if we can delete these condition

@TikaelSol I deleted inMemoryOnly flag and rebase PR


Added basic substitutions to bin::args attribute of the manifest

Hi. Can you give more attention to this ticket? I would like to have this or any other alternative change in main scoop because some of my packages require calling non-executable scripts using external programs.
Please find an example here:
https://github.com/excitoon/scoop-user/blob/master/openssh.json#L44


recovery sheet added

Great idea!

This is great :) Much thx!

Hey @animalmother1988 the PDF is great, but is there also a source file that can be included so that it can be edited for future changes?


Bugfix adding cartitem different models

In this commit we include the associatedModel in the generation process of the rowId.
By doing so we are able to add multiple items to the cart that have a same id (e.g. id = 1) but have a different associated Model. (e.g. Product and Product Option) They will then appear as different items on the cart. (and not as the same item, but with wrongly updated data).
In addition, it is now possible to set the associated model on creation of a cart item, by passing on a parameter to the construct method.

Hmm... I see what you're trying to do here. This could indeed be a good addition.
As a starter we should update the tests accordingly. I'll have to take a look if this is the way I would implement it.

I thought about this too. There can be many situations when you have different tables for products.

+1 for this.


[NavigationExpermental] Back actions for StackReducers

#6963 moved the back action to let inner stacks handle the action first, but I'm realizing now that you might want other behavior. For example, if an outer stack is displaying a modal, you probably want that stack to handle the back action rather than any inner stacks.
One solution would be to have two types of back actions, one that is handled by the inner-most stack first, and one that is handled by outer-most stacks. Another solution would be to tie a back action to a specific stack via a key property on the action.
@ericvicenti thoughts?

If your modal has anything to go back inside of it, then I think the back action would mean to go back within the modal, and only close the modal once at the first screen of it. So I think the default behavior is correct, but we should enhance the capabilities of the action.
Sometimes you want to dismiss a specific scene (and everything within and ahead of it). We have keys on our navigationStates/scenes for this reason, so we can just add a key to the back action and implement it in our stack reducer.
I'd be happy to review the PR, if you want to take this on!


Add NetlistCleanupTool to Structural Error Injection flow

@KeenanRileyFaulkner @yonnorc42 What's the motivation for this?  While it's probably good to have, it doesn't look like the CI tests are failing without it.  Is that correct?

Right, it was something we talked about in our meeting on Monday I think. @jgoeders
If we don't want to do it, that's fine. I came away thinking we did, though.


Attach product test execution to existing environment

Allow running product tests against environment brought up with env up.

start environment with env up
run tests with test run, adding --attach parameter

Fixes https://github.com/prestosql/presto/issues/4911

this is duplicate of https://github.com/prestosql/presto/pull/4834
That PR can do the same as this:

enable container reuse in~/.testcontainers.properties
launcher env up --environment xxxx
launcher test run --environment xxxx

a lot more (reuse containers without prior env up, work with many environments at same time).

this is duplicate of #4834

It would more accurate to say they are trying to solve same or similar problems.

That PR can do the same as this: [...]

Let me draw my subjective comparison between the PRs. Hopefully this also explains why I posted this.

#4834 has the advantage that it works with multiple environments (if system memory allows)
this has the advantage that it works explicitly (I opt in into reuse on use time) (to me this is an important advavantage and I am aware this may be a downside for you @iirekm)
this has the advantage that it is less intrusive and does not affected any other existing flow (like docker exec-ing into a container brought up with env up)

this has the advantage that it is less intrusive and does not affected any other existing flow (like docker exec-ing into a container brought up with env up)

I'm not inventing anything new, docker exec ptl-<environment>-<container> ... works exactly like docker compose 'project' names, or k8s namespaces: you have to attach environment name somehow in command line (docker exec <project>_<container>_1 .., or kubectl exec -n <namespace> <pod> ...), and nobody has problems with this


Create Vogelsang_trend_test.py

For hypothesis testing in time series trends in the presence of serial auto-correlation.

Reference issue

What does this implement/fix?

Additional information

Hi @solomonvimal, thanks for proposing a new feature. It looks like this is out of scope for SciPy, and would fit much better in Statsmodels.
Note that new features get discussed and decided about on the scipy-dev mailing list. So it would normally be a good idea to ask there first before opening a PR. In this case don't worry though, we can discuss here for now.

Hi @solomonvimal . Thank you for your contribution and time. We have to clear up a few things before considering this adding to the codebase. The first is that there is no license information present in the references. That has to be communicated with the authors. Second is that we have to have a discussion on our mailing list whether such functionality is desired. Only then we can start looking at this.
Then for other rather secondary issues; we don't support Python2 anymore hence it can be cleaned up. And we can't use pandas since it would add a dependency. You can still use dicts for that. No prints and name == main blocks are possible to use.

Hi @ilayn and @rgommers, sorry, this is my first commit to Scipy, so I wasn't aware about the requirements. It looks like the secondary issues according to @ilayn can be fixed straight-forwardly.
I will wait for you guys to get back to me after you have had a chance to discuss this in your mailing list. If you guys think this might be better suited in statsmodels, that is also fine! Please let me know what you decide. In the meanwhile, I will update the license info - I have reached out to the paper's author to get their permission to distribute this algorithm, although, I am pretty sure it won't be a problem - a Gauss version of the code is publicly shared on their website with no license information.

I think this hypothesis test is not standard and commonly used enough to be included in scipy.
The distribution of the test statistic is difficult, and they point out that simulating it should be possible. One problem I see is with the b parameter in their article which is chosen depending on the critical values. AFAICS, this means we also don't get a p-value if we adjust b to the critical level.
The motivation for using the test in https://journals.ametsoc.org/doi/full/10.1175/1520-0442(2002)015<0117%3ATAOSRT>2.0.CO%3B2 makes it sound useful.
A quick google scholar search also finds more recent articles for hypothesis test that are robust to whether serially correlated residuals are stationary or have a unit root.
But they all seem to have non-standard distribution and might require work to make them available for general use cases.
It might be possible to get some special cases first, like the linear trend case in Vogelsang.
Aside: statsmodels has HAC standard errors which are robust to stationary serial correlation. But I never looked closely at related literature for the unit root case.
One task is to find verified examples for writing unit test. Given that the test is nonstandard, I wouldn't trust the results without verification (also if I wrote it myself).
With verifying unit tests it would be possible to add it to statsmodels. My guess is that the linear trend case with fixed b and tabulated critical values might be feasible.

quick look at Vogelsang's gauss program which is close to the code in this PR.
It looks all pretty standard, the only important information are the critical values and b.
But it would make it easier if Vogelsang gives permission to translate his code to python and release that under BSD license.
aside: scipy.stats.anderson also only reports test statistic and critical values. so this wouldn't be the first case without p-values

Thanks for your time, @josef-pkt !

But it would make it easier if Vogelsang gives permission to translate his code to python and release that under BSD license.

I've written an email to Vogelsang asking for his permission to translate and publish on open/free license. I don't think he will have a problem with translating his Gauss program to Python! I can ask him about the BSD license when I hear back from him.

aside: scipy.stats.anderson also only reports test statistic and critical values. so this wouldn't be the first case without p-values
This is good to know!

If the scipy members have already decided that this doesn't fit in (for being too specific), after I hear back from Vogelsang, as you suggested, I can submit this to statsmodels.

You can start the discussion on the mailing list yourself it is open to anyone. I don't have enough statistics background to initiate this discussion.

If the scipy members have already decided that this doesn't fit in (for being too specific), after I hear back from Vogelsang, as you suggested, I can submit this to statsmodels.

With those opinions from @josef-pkt and myself, I think it's safe to say that that's the conclusion.
@solomonvimal note that @josef-pkt is the lead statsmodels maintainer. He said above "With verifying unit tests it would be possible to add it to statsmodels. ". So I'd suggest to move this over to statsmodels now.

Okay I'll close this, can be moved over to Statsmodels. Thanks @solomonvimal, all


git gutters not visible for network paths

VSCode Version: 1.9.1
OS Version: Windows 10

Steps to Reproduce:

Open a git repo from a network share, e.g. \\Other-PC\Path\To\Repo
Make any change

You'll see no gutters.  I've tracked this down locally to this change:
https://github.com/Microsoft/vscode/commit/4af3d1797da4c3fe0e92c69ad39d2af990d1c592

Just to update this bug, the latest release has now broken git diff entirely for files on a network share, or other UNC path.
The program is hardly usable anymore.

@jrad88 How is it different now from before?

Well, first the gutter indicators for which lines have changes from git don't show up in the code editor window because of the change mentioned above.  But before this version I could view changes in the git view and see a side by side view of what changed.  After this update, the left side of the comparison is blank and the right side is my file.  This is happening for all of my files, which are on a network drive.

Got it, thanks. I'll merge this with #23297


Fix environment instructions.

At a minimum, we need to put back the correct instructions for setting up the ipython/jupyter notebook in our environment. This means installing ipython-notebook rather than a hand accumulated list of tornado, jinja, pyzmq, and ipython, which is no longer accurate.
Better yet, we could restore the instructions to the use conda env create which references the up to date environment.yml file.

Now I see that environment.yml was broken in 5adabb9b for.....reasons?
@julienchastang what was the rationale for replacing the ipython-notebook package in environment.yml, which Continuum keeps up to date for us with the proper dependencies, with the manual list of tornado, pyzmq, etc., which is now out of date?

@dopplershift Thanks for looking into this. I am sure you have more accurate/up-to-date information than I do so doing a wholesale cleanup seems warranted. If there was a rationale, I cannot remember what it was. Moreover, going with an environment.yml or conda-packages.txt is definitely the way to go rather than having unwieldy command line instructions. I'd say go for it. Thanks again.

Also, we needed binstar client which was not there originally and gave workshop attendees trouble. The binstar client has since been renamed twice. I think it is now called anaconda-client. Thanks for the clarification about ipython-notebook versus tornado, etc.

I think we've taken care of this.


Foundry gold token tests

Description
Gold token tests implemented in Foundry
Other changes
No other changes
Tested
With foundry
Related issues
https://github.com/celo-org/celo-monorepo/issues/10319
Backwards compatibility
ok
Documentation

Just following up on this PR.
Is it ready to merge?


Use less mut when using RenderContext

What
The goal is to have &RenderContext instead of &mut RenderContext in ViewerContext. This is a big missing piece for parallelizing scene building. This PR makes some progress towards that.
GpuRenderPipelinePool is a bit of a tougher nut to crack though…
Checklist

[x] I have read and agree to Contributor Guide and the Code of Conduct

PR Build Summary: https://build.rerun.io/pr/2312

Docs preview: https://rerun.io/preview/11595bb/docs

A lot of the &mut -> & would have been found earlier with something like https://github.com/rust-lang/rust-clippy/issues/8863


git.io

GitHub operates a URL shortener at https://git.io that only works on github.com and github.io pages, making its use a bit limited. However, this is a good use case for it. It maybe useful to add a note about this to the README.

This is incredibly helpful info, thank you! I will investigate further, and will likely replace the "Shorten URL" button in this and my URL pages project.
Would it be okay for me to mention you in the acknowledgements and credit you for pointing this out? If you consent to the mention, would you like me to link back to your GitHub, personal website, Twitter account, or something else?

Unfortunately, git.io was shut down today 😢 (https://github.blog/changelog/2022-01-11-git-io-no-longer-accepts-new-urls/). As such, I will close this issue.

Hi

hi Sent from Mail for Windows From: akt5hhSent: Thursday, January 13, 2022 7:22 PMTo: jstrieb/link-lockCc: SubscribedSubject: Re: [jstrieb/link-lock] git.io (#2) Hi—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you are subscribed to this thread.Message ID<EMAIL_ADDRESS>
Hi

Thanks sir


Too few words in ListenFor element in Cortana XML

Before submitting a PR, I wanted to see if anyone else can reproduce this issue.  Essentially, on an unchanged copy of the Samples/Cortana project, the application fails to launch because of an error in the ListenFor element of the Cortana.xml file.

WinRT information: The 'ListenFor' phrase does not contain sufficient phonetic content for the specified 'RequireAppName' value. Optional text in '[]' and PhraseLists in '{}' do not contribute to the phonetic content count. Try adding more words/characters to the ListenFor.

<ListenFor RequireAppName="BeforeOrAfterPhrase"> [please] handle {textPhrase} [with] </ListenFor>

Essentially, you only have one word in the statement that's not optional or a phrase.  The error message shows that it's an issue.  It's resolved by simply adding another word to the ListenFor element:
<ListenFor RequireAppName="BeforeOrAfterPhrase"> [please] handle {textPhrase} [with] </ListenFor>

Now, my sentence "Hey Cortana, please add statement hello world" works.
Documentation about this can be found here: https://msdn.microsoft.com/en-us/library/windows/apps/xaml/dn997786.aspx
Go to Step 3 and the third bullet point.

There must be at least two words in the ListenFor string besides your app name and references to PhraseTopic elements. [...], you need to ensure your commands contain sufficient phonetic content to minimize the chances your app is launched unintentionally.

Anyone else see this issue before I submit a PR?

The {textPhrase} should count as a word. That works for me, but I would be willing to change it if you can confirm that "Handle Everything with Template 10" does not work for you. That being said, if you submit a pull request, you need to include in that pull request this file:

https://github.com/Windows-XAML/Template10/blob/master/Samples/Cortana/readme.md

No kidding. That would be a big help.

I have a sample read me file in my fork based on my proposed phrase change.  I just submitted a PR for it.


[Feature Request]Ability to set default date when creating new tasks

New tasks currently default to tomorrow. I would like to see a setting where the default for all new tasks can be set to today, tomorrow...

closing this as duplicate of #458


Publish warning during validation for non timestamped MSIX packages

Description of the new feature/enhancement
Per @jaifroid

I've been doing some research, and timestamping AppxBundle is not easy. Guess what, SignTool doesn't support doing so! Fiendishly complicated blog post about it here: https://blog.jayway.com/2017/01/16/time-stamping-appx-packages/

Proposed technical implementation details (optional)
If possible, instrument the validation pipeline to provide a warning when MSIX packages have not been timestamp signed. This will help notify publishers when their applications aren't timestamp signed.
Periodic validation should also be instrumented for this check so Issues can be created for existing packages that have not been timestamp signed. These packages should be removed if the certificate has expired and they are not timestamp signed.

Could this please include the older appx and appxbundle formats? These can also be signed with a timestamp (I have verified that this is possible for appxbundles with SignTool).

All the following extensions are considered MSIX (.appx, .appxbundle, .msix, .msixbundle) by the Windows Package Manager.

@denelon Would this fall under Area-Validation-Pipelines ?


analysis of fable testing on the holiday app

review and draft feedback/results from fable testing of 1st round of the holiday app
focus task flow being "find holiday" testing new, and updated components
focus task flow being "about this app" testing new and updated components
draft notes onto dovetail from all 10 tests
mixed methodologies: compatibility, user moderated interviews, and self-guided
gather feedback from the 14 participants
report results back to devs and designers, for tweaks/iterations/updates

Need to update this card @Lu-stack-art as the fable testing has bee splitted out in different parts. Analysis still pending for part 2 to be completed


Missing options in editing Fonts and colors

I think the software should have, just like VS  2019, options for changing the color  in text editor for differents types of data in general (which could be applied to all suitable languages) or to allow, just like VS 2019, editing the colors for Python files (like classes, operators, variables, built-ins, keywords, modules, etc.)
I think this is useful because it allows the user to customize the work environment the way he feels more confortable with and this is an excellent feature that already existed in previous version (VS 2019).

dup of https://github.com/microsoft/PTVS/issues/7082


Main header example in documentation breaks at page width of 757px

Internet Explorer 11 on Windows 8.1

Chrome 43 on Windows 8.1

The example in the documentation lessens the width of the screen by 230 pixels, which is the size of the sidebar. Thus, causing the overflow problem. In reality, this problem would not occur unless you add too many icons and links in the navbar. I didn't fix the issue although I was aware of it because it doesn't make sense to fix something that's not broken.
Thank you for sharing the issue.


double NIS domain line is created

on /etc/sysconfig/network
NISDOMAIN=fgci.csc.fi
NISDOMAIN="fgci.csc.fi"
Not clear what's the impact for now

I think this can be fixed by sorting out the quotes.
First attempt: cb9b5acafa0b425beff1777cc41b9ec5de351659
Which entry is best?

NISDOMAIN=fgci.csc.fi

or

NISDOMAIN="fgci.csc.fi"


Fix setup error for logbook

Breaking Change:

Description:

caused by: #29560
fixed by moving imports back into the setup function of the homekit integration

Related issue (if applicable): fixes #29845
Pull request with documentation for home-assistant.io (if applicable): home-assistant/home-assistant.io#<home-assistant.io PR number goes here>
Example entry for configuration.yaml (if applicable):

Checklist:

[ ] The code change is tested and works locally.
[x] Local tests pass with tox. Your PR cannot be merged unless tests pass
[x] There is no commented out code in this PR.
[x] I have followed the development checklist

If user exposed functionality or configuration variables are added/changed:

[ ] Documentation added/updated in home-assistant.io

If the code communicates with devices, web services, or third-party tools:

[ ] The manifest file has all fields filled out correctly. Update and include derived files by running python3 -m script.hassfest.
[ ] New or updated dependencies have been added to requirements_all.txt by running python3 -m script.gen_requirements_all.
[ ] Untested files have been added to .coveragerc.

If the code does not interact with devices:

[ ] Tests have been added to verify that the new code works.

I do not know why the logbook fails to setup when the imports are at the top. It seems to be unrelated but somehow moving them back resolves the mentioned issue. Any insight or investigation in this issue is appreciated :)

Logbook imports homekit constants. In Python, importing homeassistant.components.homekit.const means we'll import homeassistant.components.homekit, homeassistant.components etc because each part of the module path is either a file or a variable in that module.

We shouldn't revert it but instead add homekit to the after_dependencies of Logbook. I've added a PR #29491 for 104 that will make sure that those requirements are installed too.
It's annoying because really we should turn it around, have homekit register itself with logbook on how to render its events.

@balloob okay thanks for the clarification on this issue, will close it now.

It is probably the best to solve this error in one PR instead of splitting it into two and therefore I reopened this PR to solve this problem by adding homekit as a after dependency to logbook as suggested by @balloob.

I've opened https://github.com/home-assistant/home-assistant/issues/29913 to better explain the issue and list things to solve to get to a solution.
I will go ahead and approve this PR today because we can hot fix this to get 103 working.

I did add it to the milestone but really that can only work if we can also include #29491


May 22nd, 2023 Community Meeting

Please add a topic in this thread and add a link to the GitHub issue associated with the topic.
Please make sure you give folks enough time to review/discuss the topic offline on GitHub before coming into the meeting
(optional) Paste the image of an animal 😸

On SHIP-0036: Proposal to set runAs user/group for supporting steps to the runAs configuration of the build strategy steps #131. Can we take no comment but addressing all previous comments as approved and merge this ?


profiles name support

Finally, profiles can exist and have a name.
Currently no driver implements the feature because -ETIME.
fixes #266

Alright, updated the various requests. We should be good now (hopefully)


Move globus code into one file, ready to become a staging provider

There will be one Globus object per GlobusScheme now, rather than one per data manager - this is
to move globus-related state out of the data manager, in preparation for future PRs where
staging providers manage their own configuration, with the data manager knowing nothing other than
a reference to the staging provider.
I think this shouldn't cause significantly-noticeable change in behaviour.
Tested on my laptop with stage-in and stage-out testing.

We always know the stage-out endpoint, and the stage-in endpoint:  it's the endpoint listed in the globus: URL.
This PR isn't trying to implement anything that causes a subsequent stage-in to pull data from a some different endpoint, not the endpoint that was specified in the File description.


Missing optional params after updating to 10.9.3+

Hello,
I was on 10.9.2 with not issue and I get this issue on 10.9.3 and 10.9.4.
I have this definition :
export const globalParameters = makeParametersObject({
  // The API Key is optional because it's will be loaded by the API Key plugin
  apiKey: {
    name: 'apiKey',
    description: 'API Key',
    type: 'Path',
    schema: z.string().optional(),
  },
})

(The API Key plugin if needed can be found here)
  makeEndpoint({
    alias: 'getConfig',
    description: 'Get gateway configuration',
    method: 'get',
    path: '/api/:apiKey/config',
    response: z.toLongForGithubStuff()
    parameters: [
      globalParameters.apiKey,
    ],
  }),

With version 10.9.2 the getConfig signature was :
const config = await client.getConfig()

But with both version 10.9.3 and 10.9.4 I get this error :

Typescript is happy only if I provide some apiKey param but it's should be optional here.
      const config = await client.client.getConfig({
        params: {
          apiKey: '',
        },
      })

I don't from where is the string | number type coming from. During my tests sometime it's was string | number | boolean. When installing back version 10.9.2 the issue is gone and typescript display the old correct signature.
If you need to test my setup you can use my repo from this commit.
The call is located here and the definition here and here.

path parameters can't be optional, that's why you get this error. before that we did not force it.
if you don't provide an api key, what is your api supposed to do ? what doe the call look like ?
/api/undefined/config
do you really want undefined here ?

Is there a workaround ? The rest api I use have optional path parameters (yes I know...)

Here you where lying to zodios by saying it was optional and hacked into injecting it with a plugin, i could allow undefined back.
But here me just a second.
API keys should not lead in the URL, for the reason that URL are usually logged in reverse proxies like nginx etc, it a security issue and bad practice.
The better approach is to put it as a header parameter if you have control over the backend.
with header, your api key will not leak, or you can even silence it with reverse proxy.
I encourage you to change the design of your API, but if it's not doable, i'll add support for optional path parameters

It's even worse that you think, the API key is sent with http but I can't control it and it's on a local network so it's almost "secure"
https://www.sitebase.be/generate-phillips-hue-api-token/
I can't control the API I use so I have no choice to use what I have

ok, i'll test adding optional back.

@Zehir version v10.9.5 is out and should fix your issue. can you confirm this is the case ?

@ecyrbe It's working thanks