robot-simulator: add to track

Test data from here. I omitted "negative positions are allowed" since the GridPosition implementation is provided as part of the exercise. Otherwise, all common tests should be present.

@jtigger any idea what I might be doing wrong here? Looks like the first run through of the tests on CI passed, but the second run through failed:
==================================================
46 of 46 -- robot-simulator
==================================================
::1 - - [26/Nov/2016:01:10:23 +0000] "GET /v2/exercises/java/robot-simulator HTTP/1.1" 404 66 0.0030
2016/11/26 01:10:23 unable to fetch problems (HTTP: 404) - No implementation of 'robot-simulator' in track 'java'
>>> on_exit()
stopped x-api (pid=26780)
<<< on_exit()

Yeah, I can see at least part of it.  The journey test constructs a local copy of trackler.  I see a defect in that part of the test code in that it doesn't ensure that the version of trackler created in that step is the same version used in building and starting x-api.
When I tried to run the script locally, I can't even get it to connect properly to x-api... looking into it.

Okay, my local issue was unrelated.
Since this is a issue, I've committed the fix to bin/journey-test.sh on exercism/master; I recommend you fetch+rebase.  I did test this on your branch and it worked for me, locally.
I'm entirely unhappy with how hacky this first cut is; it introduces connascence of position when it should be doable with less coupling (i.e. matching exactly on the locked version number in the Gemfile.lock file — omitting the dependency entry).  I ran into apparent non-portable syntax between OS X's grep and Ubuntu 12's.  It's gotten late and I wanted to do something to unblock the track.

oh yeah!  I forgot that PRs will automatically rebase.  Once I re-kicked the build with the fix on exercism/master, this passed. :)

@stkent another fine effort.
I hate to be that guy, but I need to raise one concern: I'm a little hesitant about this and queen-attack requiring multiple business classes to implement the solution.  I've dabbled in several of the tracks on Exercism and that seems to be a departure from the usual pattern, regardless of the language track.  There are some precedents, I've seen a few enums, for example.
Are commenters able to see multiple files in the UI when reviewing someone's submission?  I don't even know the answer to that question.
My thought is that going in this direction has both benefits and costs, and warrants some discussion and a decision.  What do you think @stkent ?  @exercism/java ?

@matthewmorgan definitely a valid concern, thanks for raising it! I will note that there is a slight difference between the cases you mention:

in queen-attack, the user must create implementations in two separate classes (BoardCoordinate and QueenAttackCalculator);
in this pull request, the user must create an implementation in just one class (Robot) that relies on a provided implementation in another class (GridCoordinate).

The latter is a pre-existing pattern used in e.g. Allergen, and was identified as being 👍 by @jtigger.
As additional context: my first run at queen-attack kept all implementation in a single class, but was updated at @jtigger's suggestion to avoid a lot of primitive wrangling.
Requiring implementation in two separate classes (as in queen-attack) makes me a lot more uneasy than asking users to leverage supplied classes. This might be veering a little off-topic now, but the need for additional coordinate login in queen-attack was largely driven by the tests that verify input validity. Several of the exercises I've added to date include tests that require exceptions be thrown if input is invalid, but I've noticed that (in general) the strictness with which input is validated is inconsistent across the common exercises (and in the common data). I think there are two good approaches to this inconsistency:

standardize on minimal input validation throughout the track (or throughout all tracks);
begin the track with no input validation, and ramp up the required validation as the difficulty of exercises increases.

Yet another task that may depend on #142.
Thoughts?

Regarding:

Are commenters able to see multiple files in the UI when reviewing someone's submission? I don't even know the answer to that question.

I'm not sure; it's certainly possible to submit multiple files for a problem, as I recently discovered, but I have not yet inspected such a submission from the other side.

@jtigger thanks for investigating and addressing that failure!

@matthewmorgan confirmed, reviewers can see multiple files if they are submitted by the user; however, the CLI info page needs an update to let people know that's permitted! Some submissions therefore include the QueenAttackCalculator implementation only, and no BoardCoordinate component.

+1 if a multi-class OO solution fits best, we shouldn't be afraid of that!
Regarding:

required classes could be supplied as interfaces, allowing the practitioner to decide how they want to organize their solution (we could include a HINT.md for these exercises that suggest the simplest way: include as a non-public top-level class that implements the interface).

I see what you're getting at with this, @jtigger, but I wonder if the introduction of the interface here would be more confusing than instructive...

Another thought: could we include an appropriate (multi-file) CLI submit command for multi-file problems in the appropriate HINT.md files?

@jtigger @matthewmorgan updated, and ready for another look!

@jtigger @stkent I see that in this case we're supplying the classes required-- that's an oversight on my part, I apologize.  I think that's just fine.
I also have heard @jtigger that sometimes people use more than one class in a Java application, although personally as a super-programmer I always just use one 😈
I guess I'm with @stkent on the thought of introducing an interface, but I could be convinced that it has real value too.  Maybe we should deliberately introduce that at some point.  If we did, I think a HINT.md would be a capital idea.
Anyway, as I said, nice work, I would give this PR a 👍

sometimes people use more than one class in a Java application

Heathens!

@matthewmorgan said:

I also have heard @jtigger that sometimes people use more than one class in a Java application, although personally as a super-programmer I always just use one 😈

I've heard that about you... :)

@stkent:

I see what you're getting at with this, @jtigger, but I wonder if the introduction of the interface here would be more confusing than instructive...

@matthewmorgan:

I guess I'm with @stkent on the thought of introducing an interface, but I could be convinced that it has real value too. Maybe we should deliberately introduce that at some point. If we did, I think a HINT.md would be a capital idea.

My "argument" is based on seeing the interface as a fundamental feature of the language.  If so, then the question is not if we should introduce them, but when.  One criteria would be that the exercise naturally circumscribes a sufficiently complex domain that more than one non-primitive type is appropriate.
I love the notion of making use of the HINT.md file for these kinds of things; it's automatically included into the README.md, so there's no extra work on our part to bring attention to it.

@stkent:

... the need for additional coordinate logic in queen-attack was largely driven by the tests that verify input validity. Several of the exercises I've added to date include tests that require exceptions be thrown if input is invalid, but I've noticed that (in general) the strictness with which input is validated is inconsistent across the common exercises (and in the common data). I think there are two good approaches to this inconsistency:

standardize on minimal input validation throughout the track (or throughout all tracks);
begin the track with no input validation, and ramp up the required validation as the difficulty of exercises increases.
Yet another task that may depend on #142.

Thoughts?

Yes!  Validation arises as a Responsibility (invoking SRP, again); I can see how it could be the raison d'être of a Value Object.
I dig the notion of "validation" being an aspect of later exercises.  But I feel they'll be worthwhile/fun when included as needed.
And yeah, #142 is just churning up all kinds of fantastic aspects! :)


Navigation View Layout Reflow

Description

Update NavigationView to be up to specification.
Motivation and Context

How Has This Been Tested?

Visual verification and cross checking with designer.


Refactor "Contact Us" Page to Align with Site's Theme and Design

Description:
The current color theme and design of the "Contact Us" page do not align with the overall site theme. To maintain consistency, the "Contact Us" page should be refactored to use the same design elements, colors, and styles as the rest of the website.
Impact:
This will improve the visual cohesion of the site and provide a more uniform user experience across all pages.
Here are comparisons of the "Contact Us" page and the rest of the site:
Current Site Theme:
site-design.webm
Contact Us Page:

@Anas-Rehberlik  thanks for noticing

@Anas-Rehberlik thanks for noticing

My pleasure. I have submitted a pull request (#140) that refactor the design of contact us page.
Thank you!


Check if xlsjs package is still necessary

According https://github.com/SheetJS/js-xls:

NOTE: this project has been merged into js-xlsx. The API is identical to js-xls. Some future changes may be backported, but all new projects should use js-xlsx.

TODO: TO check, if these two pacakges are still necessary and to eliminate oldest one.

Did you ever check up on this?

@agershun @mathiasrw all of the js-xls logic has been folded into js-xlsx.  The browser script for js-xlsx actually exposes both XLS and XLSX variables so there's no need to require both scripts.
The simplest change would be to replace all instances of requiring xlsjs with xlsx, removing bower references to js-xls, and removing source references to xls.js and friends.
In the jump to 0.9 we also folded in the ODS support into the main xlsx source, so that comes for free too :)  The current read/write support is detailed in a table in the README and summarized in a diagram:

This is really really awesome! Thanks for letting us know!


fixed "stack level too deep" on padrino code autoreload

When you run development padrino server it autoreloads ruby code on
change. Problem is that aliase for url_without_locale is already in
place and now it creates infinite recursion.
This fixed recursion url_with_locale created by creating alliases
multiple times.

I no longer use ruby, closing this PR to clean up my inbox.


[Question] Support for Redis Sentinel?

Right now it appears that there is no support for Redis Sentinel. Is this something that is planned for the future?

Hi Cameron - it looks fairly easy to incorporate with the existing go-redis package we are using, so we can definitely add it to the 1.0 Release. I'll note this issue when we have a beta release w/ sentinel support.


Text for the Guide section for data publishers associated with which Core data should be distributed via the Global Cache

The section in the Guide for data publishers should be updated to include a request for "big" data providers to prioritize which of their Core data should be distributed via the Global Cache and which they will serve directly themselves, to limit the GC volume to the agreed daily amount (e.g., 100GB)

done. see PR #116


fixshould not push down constant output expr in window expression

pick from master https://github.com/apache/doris/pull/35948
Proposed changes
Issue Number: close #xxx

run buildall


rename fields_view_base::size to count

It makes more sense because it is the count of fields and not the size of the serialized message.

The ambiguity no longer exists, as all metadata related to the message is returned by metadata() exclusively.


Arsc corrections

The only APK so far that can be used to reproduce a crash which is fixed by this PR can be downloaded from google play
I am not sure if it is OK to include 3rd party APK or even it's resources file into the test suite, so I didn't do that.
On the other hand, I am also not aware of an easy way to generate an arsc file with the non-standard header sizes (which is the reason for the crash).

@leonid-s-usov can you retest this PR against the latest code we got in our master?

I have just looked as the master source code of the ARSCParser and it looks like the fixes from the PR are still needed.
I havent been looking into this for 2 years already but I do remember that these changes are absolutely required if you want to get a parser compatible with the specification of the arsc format. I have worked with the original android source code to create this pull request in order to correctly process resource files.
There are just 2 trivial conflicts. I think you will benefit from getting this one merged


Adding a fix for highlight and table overflow

Summary
Adding a fix for highlight and table overflow
Ticket Link

@asaadmahmood - Please let me know when this PR is ready to be merged. Thanks!


bug: Exception: Not a valid ABI interface JSON file

Environment information

ape and plugin versions:

$ ape --version
# ...copy and paste result of above command here...

$ ape plugins list
# ...copy and paste result of above command here...

Python Version: x.x.x
OS: osx/linux/win

What went wrong?
ape looking for json files in compile makes it crash if the json is not abi
Please include information like:

what command you ran
ape compile
the code that caused the failure (see this link for help with formatting code)
full output of the error you received
Exception: Not a valid ABI interface JSON file

How can it be fixed?
make jsons be ignored if they do not compile to abi

Solution: when attempting to compile a JSON file that is not the correct format, skip compiling


[Bug Report] Cascader display label that is clicked, not the label for binded value after prevent set value

Element UI version
2.9.1
OS/Browsers version
OSX / Chrome 74
Vue version
2.6.10
Reproduction Link
https://codepen.io/jeange1003/pen/BgobyX
Steps to reproduce
select parent -> unselectable
What is Expected?
DO NOT show "parent / unselectable", just show previous label.
What is actually happening?
The cascader label displays "parent / unselectable",  but the value of cascader is not "parent / unselectable"

v-model, not :model


quiet dependency installs

Cleans up the CI logs a bit.

Pushed a commit to address my minor comment re: Appveyor, hope that okay

Much appreciated, thanks.

On Jun 18, 2019, at 12:01, James Bourbeau<EMAIL_ADDRESS>wrote:
Pushed a commit to address my minor comment re: Appveyor, hope that okay
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or mute the thread.

Will merge later this evening if no other responses

Merging, thanks @TomAugspurger!


Default Ingress Passthrough for KubeVirt provider

Overview
This PR adds the new hostedCluster.Spec.Platform.KubeVirt.BaseDomainPassthrough  option, which automatically sets the HostedCluster's BaseDomain to a unique subdomain of the mgmt/infra cluster's *apps dns. The HCCO operator in turn sets up the correct services and routes to pass through traffic on that subdomain to the KubeVirt VMs.
We've already been using this technique for months now both in our manual development of the KubeVirt Platform and CI [1]. The technique is also documented in our hypershift upstream docs here [2]. We're even seeing third parties document manually setting up this same technique [3].
What we know now is that this ingress passthrough technique is the primary way users evaluate the Hypershift KubeVirt platform. It's the easiest way to get a functioning cluster. The hostedCluster.Spec.Platform.KubeVirt.BaseDomainPassthrough option improves the user experience for people who would otherwise be manually deploying the same logic.
Design
The figure below outlines how this technique works. The orange boxes are the route and service that the HCCO manages in the infra/mgmt cluster which passes through traffic to the kubevirt guest cluster.

Usage
With this feature, users of the hypershift cli simply omit the basedomain when creating their kubevirt platform cluster and that automatically renders a HostedCluster with the passthrough feature enabled. Below is an example of what the cli looks like that uses the automatic passthrough default ingress.
bin/hypershift create cluster kubevirt \
	--name $CLUSTER_NAME \
	--pull-secret $PULL_SECRET_PATH \
	--ssh-key $SSH_KEY_PATH  \

References

https://github.com/openshift/release/blob/1b66770683fa462c3cdc0e1dacbe6796215edf9b/ci-operator/step-registry/hypershift/kubevirt/create/hypershift-kubevirt-create-chain.yaml#L58
https://hypershift-docs.netlify.app/how-to/kubevirt/create-kubevirt-cluster/
https://almogelfassy.medium.com/cluster-as-a-service-the-next-phase-of-development-for-kubernetes-by-hypershift-4f1b8d28ad78

@orenc1 maybe you could give this a review? We'll get one of the hypershift approvers to take a look once we're happy with it

/retest

/hold
I'm going to make this option an annotation for now instead of adding it directly to the HostedCluster api. We'd like to have this functionality for people to evaluate HyperShift easily, but we're not quite yet ready to say this is something we're 100% confident we can support long term. Because of that uncertainty, an annotation would allow us to back the feature out without impacting the HostedCluster's API compatiblity.

@orenc1 if you can, take another pass at this.
I changed this logic to be triggered by an annotation instead of adding a field to the HostedCluster API. That lets us begin using this logic with the hypershift cli now to ease people's evaluation of hypershift/kubevirt, while giving us an out if we find this is not supportable long term for some reason (or if we can't figure out how to get routing for port 443 and 80 at the same time) For now i left the PR with only exposing port 443 since exposing 443 and 80 seemed to cause strange behavior. We'll have to look more into that at some point.
I'm leaving the hold because I want to get someone from the hypershift team to confirm my annotation technique and RBAC usage is acceptable

@orenc1 if you can, take another pass at this.
I changed this logic to be triggered by an annotation instead of adding a field to the HostedCluster API. That lets us begin using this logic with the hypershift cli now to ease people's evaluation of hypershift/kubevirt, while giving us an out if we find this is not supportable long term for some reason (or if we can't figure out how to get routing for port 443 and 80 at the same time) For now i left the PR with only exposing port 443 since exposing 443 and 80 seemed to cause strange behavior. We'll have to look more into that at some point.
I'm leaving the hold because I want to get someone from the hypershift team to confirm my annotation technique and RBAC usage is acceptable

Reviewed, lgtm.
I'm fine with setting the annotation on the HostedControlPlane CR to indicate auto-creation of ingress service and route.
btw, why I'm not seeing the new passthrough service and route in the job artifacts that should be created by hypershift operator?

/retest

/test kubevirt-e2e-kubevirt-aws-ovn

/test kubevirt-e2e-kubevirt-aws-ovn

/hold cancel
@enxebre I updated the PR to switch back to an api field. Now, when the hostedcluster.Spec.Platform.Kubevirt.BaseDomainPassthrough option is enabled, we'll go through all the logic of setting the DNS basedomain automatically and creating the routes/services.  I added a validation check to try and catch the scenario where someone enabled this feature and tried to set their own basedomain (which isn't allowed)

/test kubevirt-e2e-kubevirt-aws-ovn

/test kubevirt-e2e-kubevirt-aws-ovn

I'm convinced that implementing the API field for BaseDomainPassthrough is a better option in this case, for more visibility and transparency to the user.
/lgtm
on my side.

/test e2e-aws


ImageView inside ViewPager ignores layout params

I have an ImageView in a fragment hosted by a view pager. The fragment layout is a RelativeLayout and the ImageView is centerPositioned inside of it. When I initialize the PhotoAttacher with the ImageView the image starts at the top of the screen instead of in the center of the screen. If I touch and drag a tiny bit in any direction the image immediately snaps into place. The image is loaded dynamically from the web if that is useful.

Same here !

same here, cant understand how to solve this issue. In my case the Image is displayed near bottom right corner, no matter any size.
however if I disable zoom, the Image is properly displayed in the center of the Screen

Hope this helps somebody...
I had this same problem when using Picasso.  The solution for me was to make sure PhotoViewAttacher#update() is called after the image is done loading.
Eg, converted this:
Picasso.with(context)
    .load(url)
    .fit()
    .centerInside()
    .into(imageView);

new PhotoViewAttacher(imageView);

To this:
final PhotoViewAttacher photoViewAttacher = new PhotoViewAttacher(imageView);

Picasso.with(context)
    .load(url)
    .fit()
    .centerInside()
    .into(imageView, new Callback() {
        @Override
        public void onSuccess() {
            photoViewAttacher.update();
        }

        @Override
        public void onError() { }
    });

@brentwatson Good catch and solution there. Might be a good thing to consider putting in the README.

On glide to get around this issue, the same solution didn't work with their listener callbacks. Instead I had to disable zoom, then re-enable it in the resourceready callback.
final PhotoViewAttacher attacher = new PhotoViewAttacher(imageView);
attacher.setZoomable(false);
imageHelper.loadImageInView(url, imageView, imageType, attacher);

Glide.with(imageView.getContext()).load(url)
                .listener(new RequestListener<String, GlideDrawable>() {
                    @Override
                    public boolean onException(Exception e, String model, Target<GlideDrawable> target, boolean isFirstResource) {
                        return false;
                    }

                    @Override
                    public boolean onResourceReady(GlideDrawable resource, String model, Target<GlideDrawable> target, boolean isFromMemoryCache, boolean isFirstResource) {
                        attacher.setZoomable(true);
                        return false;
                    }
                })
                .into(imageView);

@danieljonker great find on Glide! Worked like a charm!

@JAgostoni I just edited the above code snippet, you also need to tell glide to request the original sized image with:
.override(Target.SIZE_ORIGINAL, Target.SIZE_ORIGINAL)

@danieljonker thanks.  I added that and did notice any changes.  What did that do for you?

@JAgostoni Glide downsizes the image based on your imageview size, So if you're wanting to zoom in with Photoview your image will be as big as the imageview. So zooming will cause it to be blurry.

Thanks, @danieljonker.  Probably just coincidental that my images were sized close enough!

Added to the sample. Thanks!

@danieljonker Thanks you rocked!


updating ag value lower bound threshold to variable

Same comment - can we create a ticket for this work and link to it in the comment
Originally posted by @lucasmbrown-usds in https://github.com/usds/justice40-tool/pull/1270#discussion_r809422127

@emma-nechamkin is this old?


use stream instead of future for ListBlob

This is not a complete PR.
Just a sample how I'd like to change to async interface for the blob list.
See issue #87
TODO:

[ ] IncompleteVector shall not be pub
[ ] Clone hack for client
[x] unfold start vs end distinction (like in http://xion.io/post/code/rust-unfold-pagination.html)

Note: NextMarkerOption has a lifetime paramter which seems to be unnecessary.
It might be the case for the other option/support traits too

Deprecated shall use the same pattern as get_blob and stream_blob.


Self Reset

⚠ Please verify that this question has NOT been raised before.

[X] I checked and didn't find similar issue

🛡 Security Policy

[X] I agree to have read this project Security Policy

📝 Describe your problem
Hello, I have been running Uptime Kuma for around 11 days.  Just tried to login to check a few things and it randomly asked me to create an account. Its like it was "factory reset".  I already set things up and everything.  Have I missed a  setting?
📝 Error Message(s) or Log
No response
🐻 Uptime-Kuma Version
Latest
💻 Operating System and Arch
Ubuntu 24.04 LTS
🌐 Browser
Chrome 126.0.6478.185
🖥 Deployment Environment

Runtime:    27.0.3
Database:
Filesystem used to store the database on:  Ubuntu 24.04 LTS
number of monitors:  8

Did you mount storeage? What is your concrete docker compose/docker command deployment?
I am assuming you deployed via docker as Runtime: 27.0.3 is too high for node.

Yeah, it is mounted storage with it and running it with docker compose
version: '3'
services:
uptime-kuma:
image: louislam/uptime-kuma:latest
container_name: uptime-kuma
restart: always
ports:
- "3010:3001"
volumes:
- uptime-kuma:/app/data

Weird, but good, this seems interesting.
let's debug deeper:

could you provide the log? (docker log ...)
what does your machine look like? (VM, hosted docker, serverless). Are there any systems in place that might while the containers storage? (Custom cronjob, ...)

Yes sure here is the log.
dockerlog.txt
Its a Ubuntu laptop with Docker on it.  I have no cronjobs everything else running  on it really
I am using ext4 filesystem type

No clues in there why storage is lost entirely sometimes..
Lets try a different option why this might be loosing storage:
what is the output of
sudo docker volume inspect uptime-kuma

Hm I am getting an Error response from daemon no such volume error for some reason.

Yeah i'll set mine up again and see what happens. Just found it really really odd that everything was like set back to factory defaults with no evidence of showing what happened

Hm I am getting an Error response from daemon no such volume error for some reason.

If no docker volume exists, we can't persist data..
Maybe docker compose has changed their behavior what happens when you docker compose up -d.
=> Could you try that and report the outcome of the volume existing?

@tismofied LXC and docker container are different. Since we don't maintain LXC containers, we can't really help you there. Please contact who packaged your container.
Similar debugging steps likely apply there too..

Hm I am getting an Error response from daemon no such volume error for some reason.

If no docker volume exists, we can't persist data.. Maybe docker compose has changed their behavior what happens when you docker compose up -d. => Could you try that and report the outcome of the volume existing?

sudo docker-compose up -d  just runs the container and seems fine

When you say run the container do you also mean create the volume?
What is the result of docker volume inspect uptime-kuna?

Yeah, it is mounted storage with it and running it with docker compose

@jpzone282 Your compose file is missing the root volumes: section at the end.
version: '3'
services:
  uptime-kuma:
    image: louislam/uptime-kuma:latest
    container_name: uptime-kuma
    restart: always
    ports:
      - "3010:3001"
    volumes:
      - uptime-kuma:/app/data
volumes:
  uptime-kuma:

But I personally would recommend using a relative path rather than a volume, this is more simple.
See:
https://github.com/louislam/uptime-kuma/blob/master/compose.yaml

I have done the relative path and still no change.
Think I should start again and see what happens next time round.
Unless there is more troubleshooting anyone wants to do.

I have done the relative path and still no change.
Think I should start again and see what happens next time round.
Unless there is more troubleshooting anyone wants to do.

It might not have anything to do with it but I remember reading somewhere to get rid of "version" line in docker compose file.
That's what I did and my container is working fine now.


dnf was getting 404 and bad mirror results

I think we had an old stale layer above and the dnf -y update
(which seems duplicate) can fix the issue. At the same time,
combine up a couple run lines.

LGTM


Convert Pharmaceutical ML pipeline into a pipeline.json

Description

We have an open PR that has a complete Kedro project linked here: https://github.com/quantumblacklabs/kedro-examples/pull/13
The contributor wanted to submit an example of a Pharmaceutical ML pipeline to kedro-examples but as they're only changing pipeline.py indicated here we recommend actually exporting this file in the .json format that is used by kedro-viz and uploading that as the contribution

Context

We like that this contributor wanted to give us an example for kedro-examples but think, in it's current state that the only real value is the pipeline.py file
This change allows us to visualise this pipeline using kedro-viz

Possible Implementation

Install kedro
Download this contributor's project directory
Run kedro viz --save-file pipeline.json
Get the .json file
Upload in a PR

@w0rdsm1th did a stellar job and completed this. I'm closing this issue 🎉


Date not change in FormBuilderDateTimePicker

When I can change year and after click on Ok button then previous selected date show we need to compulsory tap on day and after you click Ok then change date.

Hi @ronak4567,
That's how Flutter DatePicker works by default.


Quality of Life (QOL) changes

What this PR does / why we need it:

Replace critical-pod annotation with priorityClassName

The critical-pod annotation is not-functional since Kubernetes 1.16

Show warning about LBs on CCM migration for OpenStack clusters

Triggering migration might cause all LBs to be recreated if Neutron LBs are used
This also requires updating docs

Force drain nodes to remove standalone pods

If there's a standalone pod (not managed by ReplicaSet) on a control plane or static worker node, draining is going to fail. Force draining node also removes the standalone pods

Check for minor version when choosing kubeadm API version

The constraint-based check doesn't work properly if there's any additional info in the version (alpha/beta/rc or EKS-D versions)

Create MachineDeployments only for newly-provisioned clusters

MachineDeployments should be created only when provisioning the cluster for the first time. Right now, if you add new static worker nodes after creating the cluster, MachineDeployments will be reconciled again (this shouldn't happen)

Does this PR introduce a user-facing change?:
Replace critical-pod annotation with priorityClassName
Show warning about LBs on CCM migration for OpenStack clusters
Force drain nodes to remove standalone pods
Check for minor version when choosing kubeadm API version
Create MachineDeployments only for newly-provisioned clusters

/assign @kron4eg

/cherrypick release/v1.3


Win10 home access denied on external network

when I try to connect on external network I have access denied
On local network works properly
RDP Wrapper Conf

Any ideas?

Hello
The Default RDP port is 3389.
If you want to change the port to 3390 (as you are using now) you need to change the default windows RDP port:
https://docs.microsoft.com/en-us/windows-server/remote/remote-desktop-services/clients/change-listening-port
You need to check the listener state must be green.
Also you must to ensure that tour router is the 3390 port opened

Closed as not actual


dual quad spi

I have 2 flash memory connected dual bank quad spi. Possible operational problems littlefs?

everything is fine, it works.)


version 0.1.70 pypi release

The newest release which fixes the incompatibility with the new version of pandas isn't on pypi

the newest release identifies itself as version="0.1.69" in file "yfinance-0.1.70/yfinance/version.py".

I opened a pull request for it at : https://github.com/ranaroussi/yfinance/pull/947

Released. Sorry about that :)

Thank you @ranaroussi


Connections to Kubernetes Services with no endpoints hang

When a client connects/sends to a service with no endpoints it appears to incorrectly be forwarded to the default gateway.  This creates a conntrack entry that blackholes the client even after endpoints are later added.  TCP will recover from a failed handshake but UDP clients can keep the conntrack entry alive forever if they keep trying to send packets from the same source port.
I believe it should normally be REJECTed by the KUBE-SERVICES chain:
Chain KUBE-SERVICES (2 references)
pkts bytes target     prot opt in     out     source               destination
    0     0 REJECT     udp  --  *      *       <IP_ADDRESS>/0            <IP_ADDRESS>         /* default/udp-service: has no endpoints */ udp dpt:4000 reject-with icmp-port-unreachable

However it appears that the cali-FORWARD chain handles the packet first (notice the counters):
core@k8s-node-01 ~ $ sudo iptables -L FORWARD -n -v
Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination
 478K  704M cali-FORWARD  all  --  *      *       <IP_ADDRESS>/0            <IP_ADDRESS>/0            /* cali:wUHhoiAYhphO9Mso */
...
    0     0 KUBE-SERVICES  all  --  *      *       <IP_ADDRESS>/0            <IP_ADDRESS>/0

There is some udp conntrack clearing code in kube-proxy but it's only for when endpoints are removed and I didn't see anything that would try to reconcile possibly broken conntrack entries that may exist for other reasons:

https://github.com/kubernetes/kubernetes/blob/master/pkg/proxy/iptables/proxier.go#L948

Steps to Reproduce (for bugs)
My kubernetes setup was simply based on calico's vagrant tutorial:

https://docs.projectcalico.org/v2.4/getting-started/kubernetes/installation/vagrant/

Example k8s manifests:

note: if the endpoint list fills before the client starts then you wont hit the race condition

kind: Service
apiVersion: v1
metadata:
  name: udp-service
spec:
  selector:
    type: server
  ports:
    - protocol: UDP
      port: 4000
---
apiVersion: v1
kind: Pod
metadata:
  name: udp-client
spec:
  containers:
  - name: udp-client-broken
    image: "alpine"
    # this client will hit the race condition
    # ssh to the host and run this from host namespace:
    #   - grep -w 4000 /proc/net/nf_conntrack
    command: ["/bin/sh", "-c", "while true; do echo client-1 $(date +%s); sleep 1; done | nc -v -u -p 2000 udp-service 4000"]
  - name: udp-client-should-work
    image: "alpine"
    # the initial sleep here gives the server time to get into the endpoint list / iptables
    command: ["/bin/sh", "-c", "echo waiting; sleep 60; echo starting; while sleep 1; do echo client-2 $(date +%s); done | nc -v -u -p 3000 udp-service 4000"]
---
apiVersion: v1
kind: Pod
metadata:
  name: udp-service
  labels:
    type: server
spec:
  containers:
  - name: udp-server
    image: "ruby"
    # using ruby to listen to multiple senders
    command: ["/bin/sh", "-c", "ruby -r socket -e 's = UDPSocket.new; s.bind(\"<IP_ADDRESS>\",4000); loop { m, c = s.recvfrom(4096); puts m; $stdout.flush; }'"]

Conntrack shows the following:
ipv4     2 udp      17 29 src=<IP_ADDRESS> dst=<IP_ADDRESS> sport=2000 dport=4000 [UNREPLIED] src=<IP_ADDRESS> dst=1
<IP_ADDRESS> sport=4000 dport=2000 mark=0 secctx=system_u:object_r:unlabeled_t:s0 zone=0 use=2

ipv4     2 udp      17 29 src=<IP_ADDRESS> dst=<IP_ADDRESS> sport=3000 dport=4000 [UNREPLIED] src=<IP_ADDRESS> dst
=<IP_ADDRESS> sport=4000 dport=3000 mark=0 secctx=system_u:object_r:unlabeled_t:s0 zone=0 use=2

Other info:
NAME          READY     STATUS    RESTARTS   AGE       IP               NODE            LABELS
udp-client    3/3       Running   0          7m        <IP_ADDRESS>   <IP_ADDRESS>   <none>
udp-service   1/1       Running   0          7m        <IP_ADDRESS>   <IP_ADDRESS>   type=server

NAME          CLUSTER-IP     EXTERNAL-IP   PORT(S)    AGE
udp-service   <IP_ADDRESS>   <none>        4000/UDP   7m

NAME          ENDPOINTS             AGE
udp-service   <IP_ADDRESS>:4000   7m

core@k8s-node-02 ~ $ ip route | grep default
default via <IP_ADDRESS> dev eth0  proto dhcp  src <IP_ADDRESS>  metric 1024

core@k8s-node-02 ~ $ ip a s eth0 | grep -w inet
    inet <IP_ADDRESS>/24 brd <IP_ADDRESS> scope global dynamic eth0

@chino Agree, it looks like we're not playing nice with kube-proxy's rules there but I think k8s now has a work-around for the blackhole part of this:
See:

https://github.com/kubernetes/kubernetes/issues/48370
https://github.com/kubernetes/kubernetes/pull/48524

Can you check whether the conntrack entries get cleaned up when you add an endpoint to the service?

My example manifest above has endpoints that appear later but it still wasn't working.
The calico tutorials use v1.7.0
I believe the changes should be in v1.7.1+
I tried with v1.7.4 but still ran into the issue
Which lead me to find that the conntrack tool that kube-proxy calls isn't available in coreos:
Aug 24 23:51:20 k8s-node-02 kube-proxy[1452]: E0824 23:51:20.362870    1452 conntrack.go:42] conntrack returned error: error looking for path of conntrack: exec: "conntrack": executable file not found in $PATH

I split the vagrant part of this out into https://github.com/projectcalico/calico/issues/1058

I can confirm the issues is fixed in k8s v1.7.4 when endpoints are added. I added notes explaining how to fix up the vagrant tutorials to #1058.
It appears the conversation of sending REJECTs via the FORWARD table is happening over at: https://github.com/kubernetes/kubernetes/issues/48719

I see two options here:

Put the cali-FORWARD after the KUBE-SERVICES rule in the filter:FORWARD table.

Excerpt from the table as it is now:
# iptables -n -t filter --line-numbers -L FORWARD
Chain FORWARD (policy ACCEPT)
num  target     prot opt source               destination
1    cali-FORWARD  all  --  <IP_ADDRESS>/0            <IP_ADDRESS>/0            /* cali:wUHhoiAYhphO9Mso */
2    KUBE-SERVICES  all  --  <IP_ADDRESS>/0            <IP_ADDRESS>/0
...

If the KUBE-SERVICES rule comes first then the standard reject rules for services without endpoints will get hit.
The other option is to not explicitly ACCEPT in the cali-forward table. So that the rest of the forward rules get processed like normal. Ex: don't put in rule #4 below.
 iptables -n -t filter --line-numbers -L cali-FORWARD
Chain cali-FORWARD (1 references)
num  target     prot opt source               destination
1    ACCEPT     all  --  <IP_ADDRESS>/0            <IP_ADDRESS>/0            /* cali:jxvuJjmmRV135nVu */ mark match 0x1000000/0x1000000 ctstate UNTRACKED
2    cali-from-wl-dispatch  all  --  <IP_ADDRESS>/0            <IP_ADDRESS>/0            /* cali:nu_3aWP3DUkeeFF6 */
3    cali-to-wl-dispatch  all  --  <IP_ADDRESS>/0            <IP_ADDRESS>/0            /* cali:DjrV_uMYqr-g4joA */
4    ACCEPT     all  --  <IP_ADDRESS>/0            <IP_ADDRESS>/0            /* cali:Hl34eZwIcbzmic3y */
...

And then the packet will drop back to the FORWARD table and eventually get rejected in KUBE-SERVICES if there are no endpoints

I've tested both options by disabling felix and removing/updating the rules manually. Both resulted in the proper rejection when services had no endpoints.

@carsonoid I believe we have a config option to change the ACCEPT to a RETURN, see IptablesAllowAction (FELIX_IPTABLESALLOWACTION) in https://docs.projectcalico.org/v2.5/reference/felix/configuration

xref k8s PR: https://github.com/kubernetes/kubernetes/issues/60124#issuecomment-369322795
I suggested to use RETURN instead of ACCEPT in that case as well. Relies on kube-proxy accepting the traffic when there are endpoints, which it should do if --cluster-cidr is set.

Hm, I guess this still hasn't moved forward?

Using Calico 3.0.6 with k8s 1.10.4,  I've tried setting FELIX_IPTABLESFILTERALLOWACTION to RETURN, FELIX_IPTABLESMANGLEALLOWACTION to RETURN and FELIX_DEFAULTENDPOINTTOHOSTACTION to RETURN, and it does not make any difference. Services with no endpoints keep hanging instead of refusing.
CALICO_IPV4POOL_CIDR matches with kube-proxy's --cluster-cidr as well.
Reading comments in #1058, and considering I'm using official kube container images (that contain nothing but single go binary), could it be that kube-proxy does not have access to conntrack?

@tuminoid Yes, that's possible.  I'm also not sure that kube-proxy ever got a fix for this.

Quick update. I rebuilt our k8s containers with k8s 1.11.2 and added conntrack for kube-proxy, no change in behavior. Connections still hang.

@hakman thanks for poking this one. There hasn't been much activity in this area. I think it makes sense to fix, but I don't currently have a timeline / priority for it.

xposting here since I believe this is the same issue: https://github.com/projectcalico/calico/issues/3548

For posterity: https://github.com/projectcalico/felix/pull/2424


Twice message printing when switching to the current connection

Describe your changes
Issue number
Closes #772
Checklist before requesting a review

[x] Performed a self-review of my code
[x] Formatted my code with pkgmt format
[x] Added tests (when necessary).

:books: Documentation preview :books:: https://jupysql--773.org.readthedocs.build/en/773/

@edublancas @neelasha23 does this look good?

@anupam-tiwari yes, there is still a bug. if a user tries to switch to the same connection, the message should not appear. if you try to switch to a different one, it should.

looking into it!

@anupam-tiwari please avoid closing PRs, especially when there are reviews already as this loses the context from existing reviews.

@anupam-tiwari please avoid closing PRs, especially when there are reviews already as this loses the context from existing reviews.

so sorry about that, I messed up my local repo so had to delete it, will keep in mind!


Installation fails on Google App Engine

I am using the followign requirements to install to Google App Engine:
nltk==3.4.5
rake-nltk==1.0.4
The deployment fails with the error messages below; I can, however, deploy nltk 3.4.5 without any issues. Only the post installation tasks of rake-nltk seem to be the issues.
Step #1 - "builder":   Copying rake_nltk.egg-info to build/bdist.linux-x86_64/wheel/rake_nltk-1.0.4-py3.7.egg-info
Step #1 - "builder":   running install_scripts
Step #1 - "builder":   Running post installation tasks
Step #1 - "builder":   Traceback (most recent call last):
Step #1 - "builder":     File "", line 1, in
Step #1 - "builder":     File "/tmp/pip-wheel-bw7rzw5o/rake-nltk/setup.py", line 81, in
Step #1 - "builder":       cmdclass={"develop": PostDevelop, "install": PostInstall},
Step #1 - "builder":     File "/env/lib/python3.7/site-packages/setuptools/init.py", line 145, in setup
Step #1 - "builder":       return distutils.core.setup(**attrs)
Step #1 - "builder":     File "/opt/python3.7/lib/python3.7/distutils/core.py", line 148, in setup
Step #1 - "builder":       dist.run_commands()
Step #1 - "builder":     File "/opt/python3.7/lib/python3.7/distutils/dist.py", line 966, in run_commands
Step #1 - "builder":       self.run_command(cmd)
Step #1 - "builder":     File "/opt/python3.7/lib/python3.7/distutils/dist.py", line 985, in run_command
Step #1 - "builder":       cmd_obj.run()
Step #1 - "builder":     File "/env/lib/python3.7/site-packages/wheel/bdist_wheel.py", line 259, in run
Step #1 - "builder":       self.run_command('install')
Step #1 - "builder":     File "/opt/python3.7/lib/python3.7/distutils/cmd.py", line 313, in run_command
Step #1 - "builder":       self.distribution.run_command(command)
Step #1 - "builder":     File "/opt/python3.7/lib/python3.7/distutils/dist.py", line 985, in run_command
Step #1 - "builder":       cmd_obj.run()
Step #1 - "builder":     File "/tmp/pip-wheel-bw7rzw5o/rake-nltk/setup.py", line 36, in run
Step #1 - "builder":       self.execute(_post_install, [], msg="Running post installation tasks")
Step #1 - "builder":     File "/opt/python3.7/lib/python3.7/distutils/cmd.py", line 335, in execute
Step #1 - "builder":       util.execute(func, args, msg, dry_run=self.dry_run)
Step #1 - "builder":     File "/opt/python3.7/lib/python3.7/distutils/util.py", line 291, in execute
Step #1 - "builder":       func(*args)
Step #1 - "builder":     File "/tmp/pip-wheel-bw7rzw5o/rake-nltk/setup.py", line 17, in _post_install
Step #1 - "builder":       import nltk
Step #1 - "builder":   ModuleNotFoundError: No module named 'nltk'
Step #1 - "builder":   ----------------------------------------
Step #1 - "builder":   ERROR: Failed building wheel for rake-nltk
Step #1 - "builder": ERROR: Failed to build one or more wheels

@oli666 From the error you have posted above
Step #1 - "builder": ModuleNotFoundError: No module named 'nltk'
Step #1 - "builder": ----------------------------------------
Step #1 - "builder": ERROR: Failed building wheel for rake-nltk
Step #1 - "builder": ERROR: Failed to build one or more wheels

it looks like when we try to access nltk library from within rake-nltk we are not able to find it. Can you check the installation path within your app-engine setup and see if there is any path issues.


Fixes needed for dev docs new landing page

https://docs.celo.org/

icons missing
strings should be synced with crowdin

Updates:

We will be using the squares icons temporarily.
The landing page is now integrated with Crowdin. (solved on PR #571 )


[bug] Identity balance doesn't update after epoch

My balance was not updated and for it I did recreate identity by restart app and remove identities.db

Should be fixed in v0.2.0 --> https://github.com/dashpay/dash-evo-tool/pull/14
New DET Binaries should be out any day now.

@qwizzie I can't check - no binary files

@gades 'any day now' means in the next few days...

@gades https://github.com/dashpay/dash-evo-tool/releases/tag/v0.2.1
binaries have been released.

I'll check this issue after end of Epoch  (I saw button refresh)

Is this resolved? @gades


Attempting to use ziglang extension fails

If I do "nix develop --show-trace", attempting to use ziglang results in an error:
I checked using the method documented and it appears to exist:
nix-repl> t.open-vsx.zig<tab>
t.open-vsx.ziglang  t.open-vsx.zignd

However, it fails with :
error:
       … while calling the 'derivationStrict' builtin

         at //builtin/derivation.nix:9:12: (source not available)

       … while evaluating derivation 'nix-shell'
         whose name attribute is located at /nix/store/ivbddh1g0p4rc85lksflqp2clcpfqfp3-source/pkgs/stdenv/generic/make-derivation.nix:303:7

       … while evaluating attribute 'buildInputs' of derivation 'nix-shell'

         at /nix/store/ivbddh1g0p4rc85lksflqp2clcpfqfp3-source/pkgs/stdenv/generic/make-derivation.nix:350:7:

          349|       depsHostHost                = lib.elemAt (lib.elemAt dependencies 1) 0;
          350|       buildInputs                 = lib.elemAt (lib.elemAt dependencies 1) 1;
             |       ^
          351|       depsTargetTarget            = lib.elemAt (lib.elemAt dependencies 2) 0;

       … while evaluating derivation 'vscodium-with-extensions-<IP_ADDRESS>32'
         whose name attribute is located at /nix/store/ivbddh1g0p4rc85lksflqp2clcpfqfp3-source/pkgs/stdenv/generic/make-derivation.nix:303:7

       … while evaluating attribute 'buildCommand' of derivation 'vscodium-with-extensions-<IP_ADDRESS>32'

         at /nix/store/ivbddh1g0p4rc85lksflqp2clcpfqfp3-source/pkgs/build-support/trivial-builders/default.nix:87:14:

           86|       enableParallelBuilding = true;
           87|       inherit buildCommand name;
             |              ^
           88|       passAsFile = [ "buildCommand" ]

       … while evaluating derivation 'vscode-extensions'
         whose name attribute is located at /nix/store/ivbddh1g0p4rc85lksflqp2clcpfqfp3-source/pkgs/stdenv/generic/make-derivation.nix:303:7

       … while evaluating attribute 'passAsFile' of derivation 'vscode-extensions'

         at /nix/store/ivbddh1g0p4rc85lksflqp2clcpfqfp3-source/pkgs/build-support/trivial-builders/default.nix:88:7:

           87|       inherit buildCommand name;
           88|       passAsFile = [ "buildCommand" ]
             |       ^
           89|         ++ (derivationArgs.passAsFile or []);

       … while evaluating derivation 'vscode-extensions-json'
         whose name attribute is located at /nix/store/ivbddh1g0p4rc85lksflqp2clcpfqfp3-source/pkgs/stdenv/generic/make-derivation.nix:303:7

       … while evaluating attribute 'text' of derivation 'vscode-extensions-json'

         at /nix/store/ivbddh1g0p4rc85lksflqp2clcpfqfp3-source/pkgs/build-support/trivial-builders/default.nix:139:16:

          138|     runCommand name
          139|       { inherit text executable checkPhase meta allowSubstitutes preferLocalBuild;
             |                ^
          140|         passAsFile = [ "text" ];

       … from call site

         at /nix/store/ivbddh1g0p4rc85lksflqp2clcpfqfp3-source/pkgs/applications/editors/vscode/with-extensions.nix:52:12:

           51|     destination = "/share/vscode/extensions/extensions.json";
           52|     text = vscode-utils.toExtensionJson vscodeExtensions;
             |            ^
           53|   };

       … while calling 'toExtensionJson'

         at /nix/store/ivbddh1g0p4rc85lksflqp2clcpfqfp3-source/pkgs/applications/editors/vscode/extensions/vscode-utils.nix:132:21:

          131|
          132|   toExtensionJson = extensions: builtins.toJSON (map toExtensionJsonEntry extensions);
             |                     ^
          133| in

       error: attribute 'vscodeExtUniqueId' missing

       at /nix/store/ivbddh1g0p4rc85lksflqp2clcpfqfp3-source/pkgs/applications/editors/vscode/extensions/vscode-utils.nix:106:12:

          105|     identifier = {
          106|       id = ext.vscodeExtUniqueId;
             |            ^
          107|       uuid = "";

My flake.nix is basically a copy of the template as follows:
> cat flake.nix
{
  inputs = {
    nix-vscode-extensions.url = "github:nix-community/nix-vscode-extensions";
    flake-utils.follows = "nix-vscode-extensions/flake-utils";
    nixpkgs.follows = "nix-vscode-extensions/nixpkgs";
  };

  outputs = inputs:
    inputs.flake-utils.lib.eachDefaultSystem
      (system:
        let
          pkgs = inputs.nixpkgs.legacyPackages.${system};
          extensions = inputs.nix-vscode-extensions.extensions.${system};
          inherit (pkgs) vscode-with-extensions vscodium;

          packages.default =
            vscode-with-extensions.override {
              vscode = vscodium;
              vscodeExtensions = [
                extensions.vscode-marketplace.golang.go
                extensions.open-vsx.ziglang  # <-- This line causes a failure
                extensions.open-vsx-release.rust-lang.rust-analyzer
              ];
            };

          devShells.default = pkgs.mkShell {
            buildInputs = [ packages.default ];
            shellHook = ''
              printf "VSCodium with extensions:\n"
              codium --list-extensions
            '';
          };
        in
        {
          inherit packages devShells;
        });
}

Thanks.

ziglang is a publisher. Please, see the Note

Indeed they are. :man_facepalming:
Sorry about the noise.  I don't know if you could make that error message better or not.
I'll close the issue.


Lightning Terminal web page no connection

Since a transaction of 100k satochi, I have not come back to the site.
New installation was done nothing happened

menu loop received exit code 1 --> exit to terminal
           -==@@@====@===--       --===@====@@@==-
        -@@=====-----=-===@@=====@@=====-----=====@@-       -==@-
        -@@------==---------@@@@@=--------==------@@-  --=@@@@=
         @@=------======-----@@@-----======------=@@=@@===@@=
         =@@=---------=======@@@=======-----===@@@==-  =@@-
      -=@@==@@=----------=@@@@@@@@@=----==@@@==--   -=@@-
    -@@@=----=@@===--====@@@@@@@@@@@@@@@@=--      -=@@@@=
   =@@=--------@@@@@@@@@@@@@@@@@@@@@=--         -@@=---=@@-
 -@@=-------=@@@=====@@@@@@@@@@=--            =@@=-------@@@
=@@=-------=@@====@@@@@@@@==-              -=@@@@=--------=@@-

=@@---------@@==@@@@@@==-                 -=@@@=@@@---------=@@
-@@=--------=@@@@@@=-                    -@@@@@@@@@@=---------=@@
@@=-------@@@@@@@@@=-                  =@@@===@@@@=@@@@--------@@-
-@@=------@@====@@@=@@@=-            -=@@@======@@====@@@-------=@@
-@@------@@@====@@@====@@@=-         =@@@======@@@=====@@=------=@@
-@@------=@@====@@@@@=====@@@=-        -=@@@=@@@@@@===@@@=------=@@
-@@-------@@@=@@@@@@@@@@@@@@@=-           -=@@@@@@@@=@@@=-------=@@
@@=-------=@@@@@@@@@@@@@@@=                 -=@@@=@@@@=--------@@=
-@@--------=@@======@@@@-                    -=@@@@@@=--------=@@
=@@--------@@@===@@@=-                 --=@@@@@@=@@@--------=@@-
=@@--------@@@@@@=-               -==@@@@@=====@@@--------=@@-
=@@=-------@@@=             -==@@@@@@@=====@@@@=--------=@@-
-@@=----=@@-          -==@@@@@@@@@@@@@@@@@==---------=@@=
=@@==@@-       -==@@@@@=========@@@@@=-----------=@@@-
-@@=-    --=@@@==-=@@@@@@@@@@@@@=-------------=@@=-
-@@=  --=@@@==----------=======-------------==@@@=
-@@=-==@==-=@@@===------------------------==@@@@=
=@@@@==-        -==@@@@@======----======@@@@@=--
=@@=--                 --===@@@@@@@@@@@===--

RaspiBlitz Commandline
Here be dragons .. have fun :)

Bitcoin command line options: bitcoin-cli help
LND command line options: lncli -h
Blitz command line options: blitzhelp
Back to menus use command: raspiblitz
admin@raspberrypi:~ $ sudo system status litd
sudo: system: command not found
admin@raspberrypi:~ $ sudo journalctl -fu litd
-- Logs begin at Fri 2021-11-12 20:20:08 GMT. --
Nov 12 21:28:54 raspberrypi litd[32196]: 2021-11-12 21:28:54.823 [DBG] LNDC: Wait for invoices to finish
Nov 12 21:28:54 raspberrypi litd[32196]: 2021-11-12 21:28:54.823 [DBG] LNDC: Lnd services finished
Nov 12 21:28:54 raspberrypi litd[32196]: 2021-11-12 21:28:54.823 [DBG] GRPC: Channel Connectivity change to SHUTDOWN
Nov 12 21:28:54 raspberrypi litd[32196]: 2021-11-12 21:28:54.823 [DBG] GRPC: Subchannel Connectivity change to SHUTDOWN
Nov 12 21:28:54 raspberrypi litd[32196]: 2021-11-12 21:28:54.824 [INF] SGNL: Received shutdown request.
Nov 12 21:28:54 raspberrypi litd[32196]: 2021-11-12 21:28:54.824 [INF] SGNL: Shutting down...
Nov 12 21:28:54 raspberrypi litd[32196]: 2021-11-12 21:28:54.824 [INF] SGNL: Gracefully shutting down.
Nov 12 21:28:54 raspberrypi litd[32196]: unable to start account manager: unable to resume account 03b2ee8846f55f81393bdf75defe3530da038734ee97886360989c76e722f0c9d9: rpc error: code = Unknown desc = current minimum account expiry allowed is height 709572
Nov 12 21:28:54 raspberrypi systemd[1]: litd.service: Main process exited, code=exited, status=1/FAILURE
Nov 12 21:28:54 raspberrypi systemd[1]: litd.service: Failed with result 'exit-code'.
Nov 12 21:29:55 raspberrypi systemd[1]: litd.service: Service RestartSec=1min expired, scheduling restart.
Nov 12 21:29:55 raspberrypi systemd[1]: litd.service: Scheduled restart job, restart counter is at 56.
Nov 12 21:29:55 raspberrypi systemd[1]: Stopped litd Service.
Nov 12 21:29:55 raspberrypi systemd[1]: Started litd Service.
Nov 12 21:29:55 raspberrypi litd[4997]: 2021-11-12 21:29:55.165 [INF] LITD: Dialing lnd gRPC server at <IP_ADDRESS>:10009
Nov 12 21:29:55 raspberrypi litd[4997]: 2021-11-12 21:29:55.167 [DBG] GRPC: parsed scheme: ""
Nov 12 21:29:55 raspberrypi litd[4997]: 2021-11-12 21:29:55.167 [DBG] GRPC: scheme "" not registered, fallback to default scheme
Nov 12 21:29:55 raspberrypi litd[4997]: 2021-11-12 21:29:55.167 [DBG] GRPC: ccResolverWrapper: sending update to cc: {[{<IP_ADDRESS>:10009   0 }]  }
Nov 12 21:29:55 raspberrypi litd[4997]: 2021-11-12 21:29:55.168 [DBG] GRPC: ClientConn switching balancer to "pick_first"
Nov 12 21:29:55 raspberrypi litd[4997]: 2021-11-12 21:29:55.168 [DBG] GRPC: Channel switches to new LB policy "pick_first"
Nov 12 21:29:55 raspberrypi litd[4997]: 2021-11-12 21:29:55.168 [DBG] GRPC: Subchannel Connectivity change to CONNECTING
Nov 12 21:29:55 raspberrypi litd[4997]: 2021-11-12 21:29:55.173 [DBG] GRPC: Subchannel picks a new address "<IP_ADDRESS>:10009" to connect
Nov 12 21:29:55 raspberrypi litd[4997]: 2021-11-12 21:29:55.168 [DBG] GRPC: pickfirstBalancer: HandleSubConnStateChange: 0x4000532130, {CONNECTING }
Nov 12 21:29:55 raspberrypi litd[4997]: 2021-11-12 21:29:55.174 [DBG] GRPC: Channel Connectivity change to CONNECTING
Nov 12 21:29:55 raspberrypi litd[4997]: 2021-11-12 21:29:55.220 [DBG] GRPC: Subchannel Connectivity change to READY
Nov 12 21:29:55 raspberrypi litd[4997]: 2021-11-12 21:29:55.220 [DBG] GRPC: pickfirstBalancer: HandleSubConnStateChange: 0x4000532130, {READY }
Nov 12 21:29:55 raspberrypi litd[4997]: 2021-11-12 21:29:55.220 [DBG] GRPC: Channel Connectivity change to READY
Nov 12 21:29:55 raspberrypi litd[4997]: 2021-11-12 21:29:55.220 [INF] LITD: Listening for http_tls on: [::]:8443
Nov 12 21:29:55 raspberrypi litd[4997]: 2021-11-12 21:29:55.221 [DBG] GRPC: parsed scheme: ""
Nov 12 21:29:55 raspberrypi litd[4997]: 2021-11-12 21:29:55.221 [DBG] GRPC: scheme "" not registered, fallback to default scheme
Nov 12 21:29:55 raspberrypi litd[4997]: 2021-11-12 21:29:55.222 [DBG] GRPC: ccResolverWrapper: sending update to cc: {[{<IP_ADDRESS>:10009   0 }]  }
Nov 12 21:29:55 raspberrypi litd[4997]: 2021-11-12 21:29:55.222 [DBG] GRPC: ClientConn switching balancer to "pick_first"
Nov 12 21:29:55 raspberrypi litd[4997]: 2021-11-12 21:29:55.222 [DBG] GRPC: Channel switches to new LB policy "pick_first"
Nov 12 21:29:55 raspberrypi litd[4997]: 2021-11-12 21:29:55.222 [DBG] GRPC: Subchannel Connectivity change to CONNECTING
Nov 12 21:29:55 raspberrypi litd[4997]: 2021-11-12 21:29:55.222 [DBG] GRPC: blockingPicker: the picked transport is not ready, loop back to repick
Nov 12 21:29:55 raspberrypi litd[4997]: 2021-11-12 21:29:55.222 [DBG] GRPC: pickfirstBalancer: HandleSubConnStateChange: 0x400043a2d0, {CONNECTING }
Nov 12 21:29:55 raspberrypi litd[4997]: 2021-11-12 21:29:55.222 [DBG] GRPC: Channel Connectivity change to CONNECTING
Nov 12 21:29:55 raspberrypi litd[4997]: 2021-11-12 21:29:55.222 [DBG] GRPC: Subchannel picks a new address "<IP_ADDRESS>:10009" to connect
Nov 12 21:29:55 raspberrypi litd[4997]: 2021-11-12 21:29:55.229 [DBG] GRPC: Subchannel Connectivity change to READY
Nov 12 21:29:55 raspberrypi litd[4997]: 2021-11-12 21:29:55.230 [DBG] GRPC: pickfirstBalancer: HandleSubConnStateChange: 0x400043a2d0, {READY }
Nov 12 21:29:55 raspberrypi litd[4997]: 2021-11-12 21:29:55.230 [DBG] GRPC: Channel Connectivity change to READY
Nov 12 21:29:55 raspberrypi litd[4997]: ----------------------------------------------------------
Nov 12 21:29:55 raspberrypi litd[4997]:  Lightning Terminal (LiT) by Lightning Labs
Nov 12 21:29:55 raspberrypi litd[4997]:
Nov 12 21:29:55 raspberrypi litd[4997]:  Operating mode      remote
Nov 12 21:29:55 raspberrypi litd[4997]:  Node status         online
Nov 12 21:29:55 raspberrypi litd[4997]:  Alias               Lupus-Pluvia-LND-Bank🐾🐺
Nov 12 21:29:55 raspberrypi litd[4997]:  Version             0.14.0-beta.rc3 commit=v0.14.0-beta.rc3
Nov 12 21:29:55 raspberrypi litd[4997]:  Web interface       <IP_ADDRESS>:8443 (open https://localhost:8443 in your browser)
Nov 12 21:29:55 raspberrypi litd[4997]: ----------------------------------------------------------
Nov 12 21:29:55 raspberrypi litd[4997]: 2021-11-12 21:29:55.464 [DBG] GRPC: parsed scheme: ""
Nov 12 21:29:55 raspberrypi litd[4997]: 2021-11-12 21:29:55.464 [DBG] GRPC: scheme "" not registered, fallback to default scheme
Nov 12 21:29:55 raspberrypi litd[4997]: 2021-11-12 21:29:55.464 [DBG] GRPC: ccResolverWrapper: sending update to cc: {[{<IP_ADDRESS>:10009   0 }]  }
Nov 12 21:29:55 raspberrypi litd[4997]: 2021-11-12 21:29:55.464 [DBG] GRPC: ClientConn switching balancer to "pick_first"
Nov 12 21:29:55 raspberrypi litd[4997]: 2021-11-12 21:29:55.464 [DBG] GRPC: Channel switches to new LB policy "pick_first"
Nov 12 21:29:55 raspberrypi litd[4997]: 2021-11-12 21:29:55.465 [DBG] GRPC: Subchannel Connectivity change to CONNECTING
Nov 12 21:29:55 raspberrypi litd[4997]: 2021-11-12 21:29:55.465 [INF] LNDC: Creating lnd connection to <IP_ADDRESS>:10009
Nov 12 21:29:55 raspberrypi litd[4997]: 2021-11-12 21:29:55.465 [DBG] GRPC: parsed scheme: ""
Nov 12 21:29:55 raspberrypi litd[4997]: 2021-11-12 21:29:55.465 [DBG] GRPC: scheme "" not registered, fallback to default scheme
Nov 12 21:29:55 raspberrypi litd[4997]: 2021-11-12 21:29:55.465 [DBG] GRPC: ccResolverWrapper: sending update to cc: {[{<IP_ADDRESS>:10009   0 }]  }
Nov 12 21:29:55 raspberrypi litd[4997]: 2021-11-12 21:29:55.465 [DBG] GRPC: ClientConn switching balancer to "pick_first"
Nov 12 21:29:55 raspberrypi litd[4997]: 2021-11-12 21:29:55.465 [DBG] GRPC: Channel switches to new LB policy "pick_first"
Nov 12 21:29:55 raspberrypi litd[4997]: 2021-11-12 21:29:55.465 [DBG] GRPC: Subchannel Connectivity change to CONNECTING
Nov 12 21:29:55 raspberrypi litd[4997]: 2021-11-12 21:29:55.465 [INF] LNDC: Connected to lnd
Nov 12 21:29:55 raspberrypi litd[4997]: 2021-11-12 21:29:55.466 [INF] LNDC: Waiting for lnd to unlock
Nov 12 21:29:55 raspberrypi litd[4997]: 2021-11-12 21:29:55.466 [DBG] GRPC: blockingPicker: the picked transport is not ready, loop back to repick
Nov 12 21:29:55 raspberrypi litd[4997]: 2021-11-12 21:29:55.466 [DBG] GRPC: pickfirstBalancer: HandleSubConnStateChange: 0x4000875a30, {CONNECTING }
Nov 12 21:29:55 raspberrypi litd[4997]: 2021-11-12 21:29:55.466 [DBG] GRPC: Channel Connectivity change to CONNECTING
Nov 12 21:29:55 raspberrypi litd[4997]: 2021-11-12 21:29:55.466 [DBG] GRPC: Subchannel picks a new address "<IP_ADDRESS>:10009" to connect
Nov 12 21:29:55 raspberrypi litd[4997]: 2021-11-12 21:29:55.466 [DBG] GRPC: pickfirstBalancer: HandleSubConnStateChange: 0x4000875ca0, {CONNECTING }
Nov 12 21:29:55 raspberrypi litd[4997]: 2021-11-12 21:29:55.467 [DBG] GRPC: Channel Connectivity change to CONNECTING
Nov 12 21:29:55 raspberrypi litd[4997]: 2021-11-12 21:29:55.467 [DBG] GRPC: Subchannel picks a new address "<IP_ADDRESS>:10009" to connect
Nov 12 21:29:55 raspberrypi litd[4997]: 2021-11-12 21:29:55.474 [DBG] GRPC: Subchannel Connectivity change to READY
Nov 12 21:29:55 raspberrypi litd[4997]: 2021-11-12 21:29:55.474 [DBG] GRPC: pickfirstBalancer: HandleSubConnStateChange: 0x4000875a30, {READY }
Nov 12 21:29:55 raspberrypi litd[4997]: 2021-11-12 21:29:55.474 [DBG] GRPC: Channel Connectivity change to READY
Nov 12 21:29:55 raspberrypi litd[4997]: 2021-11-12 21:29:55.476 [DBG] GRPC: Subchannel Connectivity change to READY
Nov 12 21:29:55 raspberrypi litd[4997]: 2021-11-12 21:29:55.476 [DBG] GRPC: pickfirstBalancer: HandleSubConnStateChange: 0x4000875ca0, {READY }
Nov 12 21:29:55 raspberrypi litd[4997]: 2021-11-12 21:29:55.476 [DBG] GRPC: Channel Connectivity change to READY
Nov 12 21:29:55 raspberrypi litd[4997]: 2021-11-12 21:29:55.501 [INF] LNDC: lnd version: v0.14.0-beta.rc3, build tags 'autopilotrpc,signrpc,walletrpc,chainrpc,invoicesrpc,watchtowerrpc,monitoring'
Nov 12 21:29:55 raspberrypi litd[4997]: 2021-11-12 21:29:55.502 [INF] LNDC: Using network mainnet
Nov 12 21:29:55 raspberrypi litd[4997]: 2021-11-12 21:29:55.502 [INF] LNDC: Waiting for lnd to be fully synced to its chain backend, this might take a while
Nov 12 21:29:55 raspberrypi litd[4997]: 2021-11-12 21:29:55.527 [INF] LNDC: lnd is now fully synced to its chain backend
Nov 12 21:29:55 raspberrypi litd[4997]: 2021-11-12 21:29:55.735 [INF] LOOPD: Swap server address: swap.lightning.today:11010
Nov 12 21:29:55 raspberrypi litd[4997]: 2021-11-12 21:29:55.736 [INF] STORE: Checking for schema update: latest_version=4, db_version=4
Nov 12 21:29:55 raspberrypi litd[4997]: 2021-11-12 21:29:55.736 [INF] LOOP: Proxying connection to swap.lightning.today:11010 over Tor SOCKS proxy <IP_ADDRESS>:9050
Nov 12 21:29:55 raspberrypi litd[4997]: 2021-11-12 21:29:55.737 [DBG] GRPC: parsed scheme: ""
Nov 12 21:29:55 raspberrypi litd[4997]: 2021-11-12 21:29:55.737 [DBG] GRPC: scheme "" not registered, fallback to default scheme
Nov 12 21:29:55 raspberrypi litd[4997]: 2021-11-12 21:29:55.737 [DBG] GRPC: ccResolverWrapper: sending update to cc: {[{swap.lightning.today:11010   0 }]  }
Nov 12 21:29:55 raspberrypi litd[4997]: 2021-11-12 21:29:55.737 [DBG] GRPC: ClientConn switching balancer to "pick_first"
Nov 12 21:29:55 raspberrypi litd[4997]: 2021-11-12 21:29:55.737 [DBG] GRPC: Channel switches to new LB policy "pick_first"
Nov 12 21:29:55 raspberrypi litd[4997]: 2021-11-12 21:29:55.737 [DBG] GRPC: Subchannel Connectivity change to CONNECTING
Nov 12 21:29:55 raspberrypi litd[4997]: 2021-11-12 21:29:55.738 [DBG] GRPC: pickfirstBalancer: HandleSubConnStateChange: 0x4000714380, {CONNECTING }
Nov 12 21:29:55 raspberrypi litd[4997]: 2021-11-12 21:29:55.738 [DBG] GRPC: Channel Connectivity change to CONNECTING
Nov 12 21:29:55 raspberrypi litd[4997]: 2021-11-12 21:29:55.738 [DBG] GRPC: Subchannel picks a new address "swap.lightning.today:11010" to connect
Nov 12 21:29:55 raspberrypi litd[4997]: 2021-11-12 21:29:55.979 [INF] POOL: Version: 0.5.0-alpha commit=v0.5.0-alpha.0.20210618001313-dfb86d6568c4
Nov 12 21:29:55 raspberrypi litd[4997]: 2021-11-12 21:29:55.979 [INF] LOOPD: Waiting for updates
Nov 12 21:29:55 raspberrypi litd[4997]: 2021-11-12 21:29:55.979 [INF] LOOPD: Starting liquidity manager
Nov 12 21:29:55 raspberrypi litd[4997]: 2021-11-12 21:29:55.979 [INF] LOOPD: Starting swap client
Nov 12 21:29:55 raspberrypi litd[4997]: 2021-11-12 21:29:55.979 [INF] LOOP: Connected to lnd node 'Lupus-Pluvia-LND-Bank🐾🐺' with pubkey 03c45e83933fd5058e2381630df99a7e01660f4e97b3a3b2c305a23956158bdeda (version v0.14.0-beta.rc3, build tags 'autopilotrpc,signrpc,walletrpc,chainrpc,invoicesrpc,watchtowerrpc,monitoring')
Nov 12 21:29:55 raspberrypi litd[4997]: 2021-11-12 21:29:55.980 [INF] LOOP: Wait for first block ntfn
Nov 12 21:29:55 raspberrypi litd[4997]: 2021-11-12 21:29:55.986 [INF] LOOP: Starting event loop at height 709428
Nov 12 21:29:56 raspberrypi litd[4997]: 2021-11-12 21:29:56.208 [INF] POOL: Auction server address: pool.lightning.finance:12010
Nov 12 21:29:56 raspberrypi litd[4997]: 2021-11-12 21:29:56.209 [INF] CLDB: Checking for schema update: latest_version=1, db_version=1
Nov 12 21:29:56 raspberrypi litd[4997]: 2021-11-12 21:29:56.210 [INF] AUCT: Proxying connection to auction server over Tor SOCKS proxy <IP_ADDRESS>:9050
Nov 12 21:29:56 raspberrypi litd[4997]: 2021-11-12 21:29:56.210 [DBG] GRPC: parsed scheme: ""
Nov 12 21:29:56 raspberrypi litd[4997]: 2021-11-12 21:29:56.210 [DBG] GRPC: scheme "" not registered, fallback to default scheme
Nov 12 21:29:56 raspberrypi litd[4997]: 2021-11-12 21:29:56.210 [DBG] GRPC: ccResolverWrapper: sending update to cc: {[{pool.lightning.finance:12010   0 }]  }
Nov 12 21:29:56 raspberrypi litd[4997]: 2021-11-12 21:29:56.210 [DBG] GRPC: ClientConn switching balancer to "pick_first"
Nov 12 21:29:56 raspberrypi litd[4997]: 2021-11-12 21:29:56.210 [DBG] GRPC: Channel switches to new LB policy "pick_first"
Nov 12 21:29:56 raspberrypi litd[4997]: 2021-11-12 21:29:56.211 [DBG] GRPC: Subchannel Connectivity change to CONNECTING
Nov 12 21:29:56 raspberrypi litd[4997]: 2021-11-12 21:29:56.211 [INF] RPCS: Starting trader server
Nov 12 21:29:56 raspberrypi litd[4997]: 2021-11-12 21:29:56.211 [DBG] GRPC: pickfirstBalancer: HandleSubConnStateChange: 0x40002e6470, {CONNECTING }
Nov 12 21:29:56 raspberrypi litd[4997]: 2021-11-12 21:29:56.212 [DBG] GRPC: Channel Connectivity change to CONNECTING
Nov 12 21:29:56 raspberrypi litd[4997]: 2021-11-12 21:29:56.212 [DBG] GRPC: Subchannel picks a new address "pool.lightning.finance:12010" to connect
Nov 12 21:29:56 raspberrypi litd[4997]: 2021-11-12 21:29:56.235 [INF] RPCS: Connected to lnd node Lupus-Pluvia-LND-Bank🐾🐺 with pubkey 03c45e83933fd5058e2381630df99a7e01660f4e97b3a3b2c305a23956158bdeda
Nov 12 21:29:59 raspberrypi litd[4997]: 2021-11-12 21:29:59.577 [DBG] GRPC: Subchannel Connectivity change to READY
Nov 12 21:29:59 raspberrypi litd[4997]: 2021-11-12 21:29:59.577 [DBG] GRPC: pickfirstBalancer: HandleSubConnStateChange: 0x4000714380, {READY }
Nov 12 21:29:59 raspberrypi litd[4997]: 2021-11-12 21:29:59.577 [DBG] GRPC: Channel Connectivity change to READY
Nov 12 21:30:00 raspberrypi litd[4997]: 2021-11-12 21:30:00.232 [DBG] GRPC: Subchannel Connectivity change to READY
Nov 12 21:30:00 raspberrypi litd[4997]: 2021-11-12 21:30:00.232 [DBG] GRPC: pickfirstBalancer: HandleSubConnStateChange: 0x40002e6470, {READY }
Nov 12 21:30:00 raspberrypi litd[4997]: 2021-11-12 21:30:00.233 [DBG] GRPC: Channel Connectivity change to READY
Nov 12 21:30:01 raspberrypi litd[4997]: 2021-11-12 21:30:01.097 [ERR] AUCT: [/poolrpc.ChannelAuctioneer/InitAccount]: rpc error: code = Unknown desc = current minimum account expiry allowed is height 709572
Nov 12 21:30:01 raspberrypi litd[4997]: 2021-11-12 21:30:01.098 [INF] AUCT: Shutting down auctioneer client
Nov 12 21:30:01 raspberrypi litd[4997]: 2021-11-12 21:30:01.098 [DBG] GRPC: Channel Connectivity change to SHUTDOWN
Nov 12 21:30:01 raspberrypi litd[4997]: 2021-11-12 21:30:01.098 [DBG] GRPC: Subchannel Connectivity change to SHUTDOWN
Nov 12 21:30:01 raspberrypi litd[4997]: 2021-11-12 21:30:01.098 [ERR] LITD: Could not start subservers: unable to start account manager: unable to resume account 03b2ee8846f55f81393bdf75defe3530da038734ee97886360989c76e722f0c9d9: rpc error: code = Unknown desc = current minimum account expiry allowed is height 709572
Nov 12 21:30:01 raspberrypi litd[4997]: 2021-11-12 21:30:01.098 [INF] LOOPD: Stopping gRPC server
Nov 12 21:30:01 raspberrypi litd[4997]: 2021-11-12 21:30:01.098 [INF] LOOPD: Stopping REST server
Nov 12 21:30:01 raspberrypi litd[4997]: 2021-11-12 21:30:01.099 [DBG] LNDC: Closing lnd connection
Nov 12 21:30:01 raspberrypi litd[4997]: 2021-11-12 21:30:01.099 [DBG] GRPC: Channel Connectivity change to SHUTDOWN
Nov 12 21:30:01 raspberrypi litd[4997]: 2021-11-12 21:30:01.099 [DBG] GRPC: Subchannel Connectivity change to SHUTDOWN
Nov 12 21:30:01 raspberrypi litd[4997]: 2021-11-12 21:30:01.099 [DBG] LNDC: Wait for client to finish
Nov 12 21:30:01 raspberrypi litd[4997]: 2021-11-12 21:30:01.099 [DBG] LNDC: Wait for chain notifier to finish
Nov 12 21:30:01 raspberrypi litd[4997]: 2021-11-12 21:30:01.099 [DBG] GRPC: transport: loopyWriter.run returning. connection error: desc = "transport is closing"
Nov 12 21:30:01 raspberrypi litd[4997]: 2021-11-12 21:30:01.099 [INF] LOOPD: Liquidity manager stopped
Nov 12 21:30:01 raspberrypi litd[4997]: 2021-11-12 21:30:01.099 [INF] LOOP: Swap client terminating
Nov 12 21:30:01 raspberrypi litd[4997]: 2021-11-12 21:30:01.099 [DBG] LOOP: Wait for executor to finish
Nov 12 21:30:01 raspberrypi litd[4997]: 2021-11-12 21:30:01.099 [DBG] LOOP: Wait for goroutines to finish
Nov 12 21:30:01 raspberrypi litd[4997]: 2021-11-12 21:30:01.099 [INF] LOOP: Swap client terminated
Nov 12 21:30:01 raspberrypi litd[4997]: 2021-11-12 21:30:01.099 [INF] LOOPD: Swap client stopped
Nov 12 21:30:01 raspberrypi litd[4997]: 2021-11-12 21:30:01.100 [ERR] ACCT: Unable to receive block notification: rpc error: code = Canceled desc = grpc: the client connection is closing
Nov 12 21:30:01 raspberrypi litd[4997]: 2021-11-12 21:30:01.100 [DBG] LNDC: Wait for invoices to finish
Nov 12 21:30:01 raspberrypi litd[4997]: 2021-11-12 21:30:01.100 [DBG] LNDC: Lnd services finished
Nov 12 21:30:01 raspberrypi litd[4997]: 2021-11-12 21:30:01.100 [DBG] GRPC: Channel Connectivity change to SHUTDOWN
Nov 12 21:30:01 raspberrypi litd[4997]: 2021-11-12 21:30:01.100 [DBG] GRPC: Subchannel Connectivity change to SHUTDOWN
Nov 12 21:30:01 raspberrypi litd[4997]: 2021-11-12 21:30:01.100 [INF] LOOPD: Daemon exited
Nov 12 21:30:01 raspberrypi litd[4997]: 2021-11-12 21:30:01.100 [DBG] LNDC: Closing lnd connection
Nov 12 21:30:01 raspberrypi litd[4997]: 2021-11-12 21:30:01.100 [ERR] LNDC: Error closing lnd connection: rpc error: code = Canceled desc = grpc: the client connection is closing
Nov 12 21:30:01 raspberrypi litd[4997]: 2021-11-12 21:30:01.100 [DBG] LNDC: Wait for client to finish
Nov 12 21:30:01 raspberrypi litd[4997]: 2021-11-12 21:30:01.100 [DBG] LNDC: Wait for chain notifier to finish
Nov 12 21:30:01 raspberrypi litd[4997]: 2021-11-12 21:30:01.100 [DBG] LNDC: Wait for invoices to finish
Nov 12 21:30:01 raspberrypi litd[4997]: 2021-11-12 21:30:01.100 [DBG] LNDC: Lnd services finished
Nov 12 21:30:01 raspberrypi litd[4997]: 2021-11-12 21:30:01.101 [DBG] GRPC: Channel Connectivity change to SHUTDOWN
Nov 12 21:30:01 raspberrypi litd[4997]: 2021-11-12 21:30:01.101 [DBG] GRPC: Subchannel Connectivity change to SHUTDOWN
Nov 12 21:30:01 raspberrypi litd[4997]: 2021-11-12 21:30:01.101 [INF] SGNL: Received shutdown request.
Nov 12 21:30:01 raspberrypi litd[4997]: 2021-11-12 21:30:01.101 [INF] SGNL: Shutting down...
Nov 12 21:30:01 raspberrypi litd[4997]: 2021-11-12 21:30:01.101 [INF] SGNL: Gracefully shutting down.
Nov 12 21:30:01 raspberrypi litd[4997]: 2021-11-12 21:30:01.102 [DBG] GRPC: transport: loopyWriter.run returning. connection error: desc = "transport is closing"
Nov 12 21:30:01 raspberrypi litd[4997]: 2021-11-12 21:30:01.103 [DBG] GRPC: transport: loopyWriter.run returning. connection error: desc = "transport is closing"
Nov 12 21:30:01 raspberrypi litd[4997]: unable to start account manager: unable to resume account 03b2ee8846f55f81393bdf75defe3530da038734ee97886360989c76e722f0c9d9: rpc error: code = Unknown desc = current minimum account expiry allowed is height 709572
Nov 12 21:30:01 raspberrypi systemd[1]: litd.service: Main process exited, code=exited, status=1/FAILURE
Nov 12 21:30:01 raspberrypi systemd[1]: litd.service: Failed with result 'exit-code'.

After a few hours it works again, but now it is displayed on the page

did you try a full restart yet?

they mean a new SD card to surfaces.  No, I haven't yet, but I can try it out tonight.

SD card reassembled.  Is against the same thing the side cannot be reached

Now after a few hours I come back to the page but the error message is the same

I also described the problem with leitning terminal.  She then knows that the installation is not correct.  Cannot see pool.log data

https://github.com/lightninglabs/lightning-terminal/issues/293#issue-1077467136

if you edit the script you can install the latest version of LiT:
use:
nano config.scripts/bonus.lit.sh

change the version to v0.6.1-alpha
save with ctrl+o, enter, ctrl+x
then reinstall:
config.scripts/bonus.lit.sh off
config.scripts/bonus.lit.sh on

No it should available as soon as the install is finished.
You an see if there are any errors with:
sudo journalctl -fu litd

This seems to be problem, but not sure what to make of it:
unable to start account manager: unable to resume account 03b2ee8846f55f81393bdf75defe3530da038734ee97886360989c76e722f0c9d9: rpc error: code = Unknown desc = current minimum account expiry allowed is height 714313

If I had not made a transaction, I would not have had the problem since then.  Because I wanted to try it out

Can you please provide your debug logs?
Use this command and share the link here:
debug | torsocks nc termbin.com 9999

That’s what came out of it
admin@raspberrypi:~ $ debug | torsocks nc termbin.com 9999
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
Unit blitzapi.service could not be found.
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
https://termbin.com/tdzn
admin@raspberrypi:~ $

Es geht alles wider vor ab würde den Fall schließen Danke


License

Hi, what is the license of this source code?

Thank you for pointing out that the license file was missing. I have added it now. This project is based on the ASP.NET Core SPA templates and the whole ASP.NET Core source is licensed under MIT and my changes too.

Thank you!


running issue

Hi, @seffari ,
When I run main.m, after downloading the streetview images, I got the following error,
Traceback (most recent call last):
  File "dependencies/map_parsing/parse_script.py", line 9, in <module>
    ic = interOSM.get_intersections(mapFile, 'file')
  File "/data/code/mapnet/dependencies/map_parsing/interOSM.py", line 10, in get_intersections
    tree = ET.parse(osm)
  File "/usr/lib/python2.7/xml/etree/ElementTree.py", line 1182, in parse
    tree.parse(source, parser)
  File "/usr/lib/python2.7/xml/etree/ElementTree.py", line 651, in parse
    parser = XMLParser(target=TreeBuilder())
  File "/usr/lib/python2.7/xml/etree/ElementTree.py", line 1465, in __init__
    "No module named expat; use SimpleXMLTreeBuilder instead"
ImportError: No module named expat; use SimpleXMLTreeBuilder instead
Error using dlmread (line 138)
Empty format string is not supported at the end of a file.

Error in csvread (line 47)
    m=dlmread(filename, ',', r, c);

Error in gsv_osm_corr (line 37)
intersections = csvread('intersections.txt'); % intersection coordinates

Error in main (line 21)
panos = gsv_osm_corr(files); % see gsv_osm_corr.m for panos struct details

Any suggestions to fix this problem? THX~

Try deleting the blank line at the end of intersections.txt. Apparently this can sometimes be an issue.

The intersections.txt doesn't contain any blank line. The same problem exists. Is that I should install "expat" module?
Traceback (most recent call last):
  File "dependencies/map_parsing/parse_script.py", line 9, in <module>
    ic = interOSM.get_intersections(mapFile, 'file')
  File "/data/code/mapnet/dependencies/map_parsing/interOSM.py", line 10, in get_intersections
    tree = ET.parse(osm)
  File "/usr/lib/python2.7/xml/etree/ElementTree.py", line 1182, in parse
    tree.parse(source, parser)
  File "/usr/lib/python2.7/xml/etree/ElementTree.py", line 651, in parse
    parser = XMLParser(target=TreeBuilder())
  File "/usr/lib/python2.7/xml/etree/ElementTree.py", line 1465, in __init__
    "No module named expat; use SimpleXMLTreeBuilder instead"
ImportError: No module named expat; use SimpleXMLTreeBuilder instead
Error using dlmread (line 138)
Empty format string is not supported at the end of a file.

Does anything get written to your intersections.txt?
The expat module may not be accessible with your current matlab paths setup. Try running the command python dependencies/map_parsing/parse_script.py directly from the terminal instead of through matlab.

None, the file intersections.txt is just a blank file, no blank lines also.

Great, so it was a matlab paths issue - the script runs successfully now.
intersections.txt and allNodes.txt should now be written.


Not able to enable sponsors/contributors separately in event display & non wrapping tier titles

Describe the bug
Tiny little UI suggestion - it would be nice to be able to turn on sponsors but not participants in the event profile view (some privacy concerns about showing all participants) in this part of the event profile page.

Related issue, if this section isn’t showing, it’s not easy (or even possible maybe) to get to the ‘send email’ or ‘download CSV’ options I don’t think.
Also, the tier names would look nicer if they wrapped the text.
To Reproduce
Steps to reproduce the behavior:

Go to any event page and enable the participants section with longer tier names
Note that there's no option to control if sponsors / contributors should/should not show
Note that for tier names, they are not wrapped and run off the edge of the display
When disabling this section, it's not possible to find the link to send an email to all, or to download the CSV easily, if at all.

Expected behavior

Be able to turn on showing sponsors, contributors, or both
Tier names should be wrapped
There should be a way to email members / download CSV if this section isn't being shown

Screenshots
As provided above.
Desktop (please complete the following information):

OS: iOS
Browser: Chrome
Version: 86.0.4240.111 (Official Build) (x86_64)

I think this may be resolved as there are separate sections for 'top financial contributors' and for 'participants' - but not really clear if the former will always include all sponsors (say if there is a tier at $200 and someone buys multiple tickets for $250 maybe they get featured?). Could anyone confirm?


ETA format

Is your feature request related to a problem? Please describe.
This feature request is not releated to a problem. I find it however annoying that the ETA is showing time in 12h notation as I would like to see a 24h notation, and the same goes for the date format.
Describe your setup
Klipper, Moonraker, on RPi4, HomeAssistant on Proxmox VM.
Describe the solution you'd like
A configurable ISO date standare selection possibility in the configuration.
Additional context
Maybe it is a lack of Mooonraker.

Is the rest of your home assistant (non-moonraker)
times are 12:00 or 24:00?

Yes, it is.

Op 18 sep 2024, om 14:22 heeft Marc-Olivier Arsenault @.***> het volgende geschreven:
Is the rest of your home assistant (non-moonraker)
times are 12:00 or 24:00?
—
Reply to this email directly, view it on GitHub https://github.com/marcolivierarsenault/moonraker-home-assistant/issues/411#issuecomment-2358323437, or unsubscribe https://github.com/notifications/unsubscribe-auth/APYFVFT5FLBDS23C55J24DTZXFWA3AVCNFSM6AAAAABOI7IQRCVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDGNJYGMZDGNBTG4.
You are receiving this because you authored the thread.

ok let me take a look at it


How can I create a Proxy Admin with a payable function?

I want my proxy admin to have ETH for a niche usecase - how can I make this happen? I assume I have to use custom proxy, but I'm wondering if there is a way via Hardhat.
Thanks,
August.

Right, I just wanted to deposit some ETH into ProxyAdmin because a certain test case was failing and I wanted to make sure it wasn't because of it. Due to NDAs, don't think I can explain further :(

In this case you would need a custom ProxyAdmin contract, which you would need to deploy and manage outside of the Hardhat Upgrades plugin.

Thanks, makes sense!


documentation updates

Hi,
first and foremost: thank you for this amazing lektor plugin. It's saving me a lot of time with my latest website project.
After using it for a while, I would like to suggest two documentation updates:

something that I figured out by simply trying it: it's trivially possible with this plugin to also create indexes with a key based on values of the type strings. I prefer using strings for tags and categories over lists prepared a hidden Lektor content as it's more flexible.
something that took me some time to figure out was how to assign simple string values to index fields. I ended up with working quoting eventually: `title = '"this is my title"'

Perhaps it would be nice to put this somewhere in the otherwise good documentation.

Thank you for the thanks!

something that I figured out by simply trying it: it's trivially possible with this plugin to also create indexes with a key based on values of the type strings. I prefer using strings for tags and categories over lists prepared a hidden Lektor content as it's more flexible.

I myself have done exactly that for a "tags" index on a blog.

something that took me some time to figure out was how to assign simple string values to index fields. I ended up with working quoting eventually: `title = '"this is my title"'

I hadn't really thought that constant values for the fields was a useful pattern.  But, if it works for you, there’s certainly nothing wrong with it.  You have figured out that whatever value you set for a field in the configs/index-pages.ini file is evaluated as a Jinja expression to get the final field value — thus the need for quoting constant strings.

Perhaps it would be nice to put this somewhere in the otherwise good documentation.

I will work on that.  (Pull requests are always welcome, too.)

Ah, yes, I'm also using strings for tags, but was using the word categories in my original message to refer to the existing documentation. :-)
About the constant value pattern, let me share what I ended up with in my config file:
[tags.fields]
tag = this.key
sidebar = true
title = '"Index for tag '" ~ this.tag ~ "'" ~ (" (page " ~ this.pagination.page ~ ")" if this.pagination.page > 1)'

Some of this could have gone into the template file as well, but I am using the same template file for different indices, so it made more sense to me to put it in the configuration file.
Let me see if I can find some time for a PR. I have contributed documentation before and actually found it enjoyable to do.
Thanks for the quick response!

pull request made: #2

Thank you for the example.  I understand the issue with the fields better now.
Apparently, inifile, which is what Lektor uses to parse .ini files strips the outer quote marks.
The quotes are necessary if one wants to include escapes like \n within the value. Without the quotes that would be interpreted as a literal backslash followed by an "n".  With the quotes that gets interpreted by inifile as a newline character.  The quotes are also necessary if one wants to include leading or trailing white-space in the value.
From reading the source code, it appears that inifile’s handling of quoted strings is a bit wonky (as you noticed), in that it only recognizes as quoted values which begin and end with a (the same) quote character (" or ').
For example, inifile thinks this value is quoted, so it will strip the outer quotes:
title = "Index for tag '" ~ this.tag ~ "'"

resulting in title being set to Index for tag '" ~ this.tag ~ "', which will result in a syntax error when this gets Jinja-evaluated.
On the other hand, this would not be treated as a quoted value by inifile, and so should work:
title = 'Index for tag \'' ~ this.tag ~ "'"

(The initial quote does not match the trailing quote, so inifile does not interpret this as a quoted valued.)
It is confusing.  I'm not sure what can be done about it.  Most of the issue seems to have to do with how inifile handles quoting — and that's not easy to change without breaking existing code.
It would be good to add a note about this to the documentation.  If you'd like to add something about this to your PR (#2), that would be wonderful.  Otherwise, I will work on it.

Closed via #2.  Thank you!


Sign in page not loading correctly

The login logic is currently tied to hydra. If you try to go to /ui/reset_password without a session, you'll get redirected to sign in but the page will be shown as loading:

This is due to missing login_challenge parameter value. Similar bug can be observed when going directly to http://localhost:4455/ui/login.

Not sure if this is what causes the bug or not, but in mulitple places in the frontend we are checking if the response from the backend contains a request_url (and sometimes we even redirect the user there), eg try to go to https://iam.dev.canonical.com/stg-identity-jaas-dev-login-ui/ui/reset_password. I thought we caught those on review, but it looks like some of these changes went through.
From a quick search:

https://github.com/canonical/identity-platform-login-ui/blob/2357551f634c9be6986260366f1a5f391ae6f210/ui/pages/reset_password.tsx#L54
https://github.com/canonical/identity-platform-login-ui/blob/2357551f634c9be6986260366f1a5f391ae6f210/ui/pages/reset_email.tsx#L40
https://github.com/canonical/identity-platform-login-ui/blob/2357551f634c9be6986260366f1a5f391ae6f210/ui/pages/setup_secure.tsx#L50
https://github.com/canonical/identity-platform-login-ui/blob/2357551f634c9be6986260366f1a5f391ae6f210/ui/pages/setup_passkey.tsx#L46
https://github.com/canonical/identity-platform-login-ui/blob/2357551f634c9be6986260366f1a5f391ae6f210/ui/pages/setup_backup_codes.tsx#L46

I am pretty sure that this is not correct, but I am not sure what these checks are trying to accomplish. In a production environment all these are pointing to admin APIs, which are not exposed to the public internet. The request_url is the URL that the backend used to call Kratos, there is no reason to call the same URL from the frontend.

I think this will be fixed as soon as https://github.com/canonical/identity-platform-login-ui/issues/281 is resolved.


LSTM support

Are there plans to support LSTM or GRU on the edge TPU?

@ankandrew Thanks for reaching out!
Yes, we are planning on this and started experimenting with it.
FYI, tflite conversion for LSTM model is quite new for the tensorflow team and currently quantization of the model is still not available.
You can check here for the tflite roadmap: https://www.tensorflow.org/lite/guide/roadmap

@Namburger I'm wondering if there are any updates on this given that some time has passed.
It seems that tflite still doesn't support full integer quantization for LSTMs but has added float16 support, which I realize doesn't help for running on an edge tpu... but maybe some progress has still been made?

Hello, I have the same problem. Is there any timeline that i can follow? Or just update tensorflow from time to time and try to convert and see if it works?

The latest compiler release supports LSTM(Unidirectional only). Please check supported operations at https://coral.ai/docs/edgetpu/models-intro/#supported-operations

Thank you for the update! This is fantastic news. I have an CRNN model I've now been able to compile and run on the Coral Dev Board.
Unfortunately, I'm running into a runtime error when trying invoke the same model on the USB TPU connected to a Raspberry PI 4.
RuntimeError: Failed to execute request. Executable 'model' must have fully deterministic DMA hints when DMA descriptors from device are disabled.Node number 1 (EdgeTpuDelegateForCustomOp) failed to invoke.
Is anyone else having this problem?

@DiscretePython Did you try on any other machine except this RPI4 ?

Yes, I tried connecting the USB Accelerator to a laptop running x86_64 Ubuntu 20.04 and get the same runtime error.
I've had success running the model on a Coral dev board and a Gateworks SBC with a mini PCIe Accelerator so I'm wondering if it may be a problem related to the USB Accelerator.

@DiscretePython Are you able to run any other model with this USB Accelerator ?

Yeah, I've never had any other issues running (non-LSTM) models on this particular USB Accelerator. I just ran this example from the coral website today and it's working fine. This probably doesn't rule out my Accelerator as the problem but makes it seem unlikely.
To make sure it isn't a problem with my particular model, I created a very simple LSTM model (input, LSTM, output) and get the same error. I've shared it here along with a script to make an inference in case that helps. If this isn't an issue for anyone else with other LSTM models on the USB Accelerator then I'm wondering if it may be a problem with my tflite conversion process.

For LSTM model with USB accelerator to resolve:
 RuntimeError: Failed to execute request. Executable 'model' must have fully deterministic DMA hints when DMA descriptors from device are disabled.Node number 1 (EdgeTpuDelegateForCustomOp) failed to invoke.
try the command below:
USB_ENABLE_BULK_DESCRIPTORS_FROM_DEVICE=1 python3 run_lstm.py $PATH/weather_forecast_quant.tflite

@hjonnala Hey, has anything happened since last year that LSTM-Model can run without the USB_ENABLE_BULK_DESCRIPTORS_FROM_DEVICE=1 command on the Coral USB accelerator + for example RaspberryPi4?
In addition, I would be very interested to know why this command is/was needed, what exactly it does and why it results in this large latency. My model is twice as fast on the CPU (RaspPi4) compared to using the USB accelerator with the USB_ENABLE_... command.

I still get the error message RuntimeError: Failed to execute request. Executable 'model' must have fully deterministic DMA hints when DMA descriptors from device are disabled.Node number 3 (EdgeTpuDelegateForCustomOp) failed to invoke. when I try to run a simple model with an lstm layer using the coral USB accelerator.
Inference latency is crucial for us, so we can't use USB_ENABLE_BULK_DESCRIPTORS_FROM_DEVICE=1 if it introduces additional latency. Please comment on this.