CORTX-29433: Start crond service on hourly basis to enable logrotate …

…in cortx-server pod
Signed-off-by: Palak Garg<EMAIL_ADDRESS>Problem Statement

RGW log files are not getting rotated in cortx-server pod

Design

Enable crond service and configure logrotate for radosgw on hourly basis

Coding
Checklist for Author

[ ] Coding conventions are followed and code is consistent

Testing
Checklist for Author

[ ] Unit and System Tests are added
[ ] Test Cases cover Happy Path, Non-Happy Path and Scalability
[x] Testing was performed with RPM

Impact Analysis
Checklist for Author/Reviewer/GateKeeper

[ ] Interface change (if any) are documented
[ ] Side effects on other features (deployment/upgrade)
[ ] Dependencies on other component(s)

Review Checklist
Checklist for Author

[x] JIRA number/GitHub Issue added to PR
[x] PR is self reviewed
[x] Jira and state/status is updated and JIRA is updated with PR link
[x] Check if the description is clear and explained

Documentation
Checklist for Author

[ ] Changes done to WIKI / Confluence page / Quick Start Guide

Tested on single node K8s setup

ps -ef | grep crond
root          8      1  0 05:27 ?        00:00:00 /usr/sbin/crond start
root        675    566  0 06:30 pts/0    00:00:00 grep --color=auto crond

crond service is running.

[root@cortx-server-headless-svc-ssc-vm-rhev4-2192 /]# ls -lrth /etc/cortx/log/rgw/124642bd52964a23bd6c0d2c58b81d00/
total 76K
-rw-r--r-- 1 root root 5.4K Mar 14 05:27 rgw_setup.log
drwxr-xr-x 2 root root 4.0K Mar 14 05:27 motr_trace_files
-rw-r--r-- 1 root root  30K Mar 14 05:30 rgw-1.log-2022-03-14-1647238322.log.gz
-rw-r--r-- 1 root root  30K Mar 14 05:30 radosgw-admin.log-2022-03-14-1647238322.log.gz
-rw-r--r-- 1 root root    0 Mar 14 06:12 radosgw-admin.log

rgw log files are getting rotated on hourly basis

Tested the K8s deployment using custom img:
https://eos-jenkins.colo.seagate.com/job/GitHub-custom-ci-builds/job/generic/job/custom-ci/5266/
and the deployment is successful & crond service is running.


Client gridview

This PR generates a table based on the client information for displaying the clients in the database. It has been structured in a way that allows it to be re-useable for other components who wish to display this table.

I added some review comments, you should additionally add the search function like we had discussed

you would like that added to the current PR or have it as its own separate one?

I added some review comments, you should additionally add the search function like we had discussed

Added in commit b9d15ea4438210143bedf032d85ad6b55e2ce729

Please use angular material

Please keep responses and feedback to actual reviews rather then as per commits. As visible above this is a work in progress and the goal is to make the commits atomic meaning they add a specific functionality and if too big are seperated rather then combining all requests into one. I will get to the feedback but as visible in my reply above this comment was placed twice but I have committed the changes for this request in commit ef691e7f16ed2ed697ba24007f9fd40a58b457eb . This simply leads to many duplicate responses. In order to avoid confusion, I will convert this PR into a draft and request a review when the all the requested changes have been accomplished and then we can continue to build upon this PR to add the desired functionality to production. Thank you, I appreciate your time

Please watch again the videos, you should never do API calls inside Components it should be done inside services.

Please specify which videos
Fixed anyways in commit b4d9401fc28332bc24fae93483d1f3e5115b6d35

Codecov Report

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

@@            Coverage Diff            @@
##             master      #41   +/-   ##
=========================================
  Coverage          ?   92.82%
=========================================
  Files             ?        6
  Lines             ?      251
  Branches          ?        0
=========================================
  Hits              ?      233
  Misses            ?       18
  Partials          ?        0

Continue to review full report at Codecov.

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


Dedup offline capture

When importing pcap from filesystem is it possible to prevent duplication of session info when a capture import is executed a second time, as a result of crashed capture process, or manual process kill.

Something besides the --skip option?

Well played.  I've got my eyes on you!   -_-   @awick


Create report fails #104

Fix #104 : Replacing webshot by webshot2 and update dockerfile accordingly

deploying to UAT

@mvarewyck the deployment fails on:
ERROR: failed to solve: process "/bin/sh -c apt-get update && apt-get install --no-install-recommends -y     libgdal-dev     libudunits2-dev     libharfbuzz-dev     libfribidi-dev     libproj22     libgeos3.10.2 libgeos-c1v5      libcurl4-openssl-dev     curl     imagemagick     lbzip2     pandoc     libmagick++-dev     libssl-dev     texlive-latex-extra     lmodern     wget &&     wget https://downloads.vivaldi.com/stable/vivaldi-stable_5.5.2805.35-1_amd64.deb &&     apt-get install --no-install-recommends -y ./vivaldi-stable_5.5.2805.35-1_amd64.deb &&     rm -rf /var/lib/apt/lists/*" did not complete successfully: exit code: 100
Error: Process completed with exit code 1.

Should I ask @TheJenne18 to take a look ?

Yes please, Tobia is OoO. I have just built the docker image on an AMD machine.

Should I ask @TheJenne18 to take a look ?

Yes please, Tobia is OoO. I have just built the docker image on an AMD machine.

Tobia has fixed the dockerfile, it should work now.

@SanderDevisscher all logs can be found in here: https://github.com/inbo/alien-species-portal/actions/runs/10525243509/job/29163626591

@SanderDevisscher all logs can be found in here: https://github.com/inbo/alien-species-portal/actions/runs/10525243509/job/29163626591

@TheJenne18 I mean the app logs for when it has a timeout. Not the build logs since it builds succesfully.

We have run some tests on our side. It seems to fail due to a timeout in the connection to timeseries data. I've implemented a fix, so we can try to test again @SanderDevisscher .

@TheJenne18 I mean the app logs for when it has a timeout. Not the build logs since it builds succesfully.

This would still be useful, I'm not sure it was the same error as Sander had.

Also fixes #101 ?

deployment is succesfull

#101 seems to be fixed but #104 persists.
The app still times out but I now get to downloading a corrupted .htm file.

This might indicate the previous error was fixed.
@TheJenne18 can you provide either access to the app logs for @mvarewyck, @soriadelva and me or the app logs from 5m ago (approx. 13h20) ?

@SanderDevisscher : Tobia has set up a shinyproxy with 1G and then the app crashes now and then. When setting memory to 2Gi the app doesn't fail with the latest dockerfile and can create the reports for "Xenopis laevis" and "Lithobates catesbeianus". So, we'll need the log files to further debug. @TheJenne18 what is the current memory?

@TheJenne18 has detected the following error in the app logs:
! Failed to start chrome. Error: [0829/112302.960321:ERROR:zygote_host_impl_linux.cc(99)] Running as root without --no-sandbox is not supported. See https://crbug.com/638180.

1CPU en 4GB memory

Deployment has failed again see https://github.com/inbo/alien-species-portal/actions/runs/10684767109/job/29615978749

Deployment has failed again see https://github.com/inbo/alien-species-portal/actions/runs/10684767109/job/29615978749

It looks like a (temporary) downtime of the CRAN repository. I've just restarted the job :crossed_fingers:

Build succeeded.
I have restarted the build to include the latest fix: https://github.com/inbo/alien-species-portal/actions/runs/10718473259

#115 seems to be fixed, @soriadelva can you confirm ?

report creation keeps failing

@TheJenne18 Can you check whether we get a different error now?

@mvarewyck these are the logs of the last crash:

@mvarewyck creating a report keeps causing a timeout. @TheJenne18 can you provide the logs from between 13:15 & 13:20 today (16/09/24) ?

@mvarewyck creating a report keeps causing a timeout. @TheJenne18 can you provide the logs from between 13:15 & 13:20 today (16/09/24) ?

Our fix wasn't picked up correctly. I've just started a new build.


Portugues

Suggestion
Portuguese language

I'd be more than happy to accept a pull request if you would like to contribute to the translations. Otherwise I can look into this later but it would only be via Google translate.

Released as part of 3.4.0


Link to "See Docs" is to the same page as the link

In the highlighted note at the top of the page the last sentence says:

For more information on the deprecation and migration, visit our documentation.

But this link is to the same page which makes the note block pointless or the link is wrong>

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

ID: 20185b73-1d22-ac18-c633-70396097eb9e
Version Independent ID: 06352eeb-c96b-37de-df7a-9e7a6de4d556
Content: Migrating to Azure Data Explorer
Content Source: articles/time-series-insights/migration-to-adx.md
Service: time-series-insights
GitHub Login: @tedvilutis
Microsoft Alias: tvilutis

@CliffAgius
Thanks for your feedback! We have assigned the issue to author and will provide further updates.


Expose resolveContainer and createContainer to public?

I'm currently using this library with apollo graphql, I would like to create a DataLoader on each request. But in order to do that, DataLoader depends on a DBConnection.
It would be nice if we can reuse existing instantiated classes by using resolveContainer.

I guess that would be possible, probably by exposing an Application class with some Methods. I will take a look at this tomorrow!
Is your DataLoader a Module/Service? In that case you could simply inject the connection into it.

I initially implemented it as a service but then dataloaders should be created on a per request basis so I have to instantiate it multiple times.

Would something like this work for you?
 Connection;

  public create() {
    return new DataLoader(this.connection);
  }
}

// Dummy consumer
class Consumer {
  @Inject(DataLoaderFactory)
  dataLoaderFactory!: DataLoaderFactory;

  @PostModuleInit()
  public postModuleInit() {
    let dataLoader = dataLoaderFactory.create();
    // Work with fresh instance of DataLoader
  }
}

// Inject only Connection and Factory as providers
@Module({
  providers: [Connection, DataLoaderFactory],
  consumers: [Consumer],
})
class Module {}

new Application(Module).boot();

Please notice, there will come some new features in the next version featuring an application class. Also @OnModuleInit will not exist anymore and gets replaced by Hooks (@PostModuleInit).

This can work, in my case, I would call dataLoaderFactory.create() inside the function that handles graphql queries. We could also improve it as well if we'll pass a Context variable to create(ctx) so we can cache the dataloader on a per request/context 😄

I think doing it this way is much cleaner. It would be a very "hacky" way implementing any method to resolve a provider outside of the modules.


[BULK] - DocuTune remediation - Sensitive terms with GUIDs (part 28)

Applying sensitive terms with GUID changes as part of Content SFI and outlined in Overview - Writing content securely - Platform Manual. Changes are part of the Microsoft-wide SFI effort. Point of contact: @CelesteDG
DocuTune v<IP_ADDRESS>
CorrelationId: ac15aa43-4e2b-437f-ab1c-fdd7e79cd4db
#docutune

#docutune-review

LGTM


set container max width to 800px

improves reading, long sentences are hard to read

Improve before merge:

[ ] 50-75 characters per line (font size)
[ ] make sure print/PDF is fine
[ ] check codeblocks, scroll horisontal on to much characters

Demo: http://arve0.github.io/oppgaver/python/lopende_strekmann/lopende_strekmann.html


Cleaned some files

In this commit I:

Rename folder to follow train case.
Added some contributing guidelines.
Moved pull request templates to .github/pull_request_template.md.
Updated question.md to use the label question instead of proposal.
Renormalised line endings

Feedback is appreciated.

We really appreciate your contributions, but these are too many changes for them to be aproved in a single pull request. Many of these ought to be discussed before they're merged.

Train Case
In my opinion, this casing style looks really bad, and it shouldn't be implemented into the repository, as it makes reading the folder names more difficult with little to no gain.

Contributing guidelines
I'm in favor of implementing contributing guidelines, but these need to be in their own pull request so each addition can be properly discussed and addressed.

Moving pull request templates

Moved pull request templates to .github/pull_request_template.md.

For what purpose? The currently implemented file-structure is the officially intended one for storing pull request templates: https://docs.github.com/en/communities/using-templates-to-encourage-useful-issues-and-pull-requests/creating-a-pull-request-template-for-your-repository

Updated question.md to use the label question instead of proposal.
This could be merged into the repo, if its proposed in its own pull request.

Renormalized line endings
This could be considered if it was a pull-request of its own. But it's important that you propose to which line-ending you intend to normalize all files to. CRLF or LF? Please clarify so in the new pull-request you'll make.

Please make an individual pull request for each addition you wish to make. git branches are a useful feature for doing this.

Train Case
In my opinion, this casing style looks really bad, and it shouldn't be implemented into the repository as it makes reading the folder names considerably difficult with little to no gain.

The changes were to normalise the files as most of the naming convention seems to follow train case.

Contributing guidelines
I'm in favor of implementing contributing guidelines, but these need to be in their own pull request so each addition can be properly discussed and addressed.

Renormalized line endings
This could be considered if it was a pull-request of its own. But it's important that you propose to which line-ending you intend to normalize all files to. CRLF or LF? Please clarify so in the new pull-request you'll make.

If I am correct, it was supposed to be crlf to lf. I made the normalisation based on the .gitattributes file

Please make an individual pull request for each addition you wish to make. git branches are a useful feature for doing this.

Sure, I will open a individual pr for each changes.

Theres a merge conflict now @molangning

I meant to close this as I have split it into more prs


add / update Supported Kubernetes Versions page to have 3.15 version

Nothing more than just update the supported k8s versions page.

@doribd PR is welcome.

@yxxhero can i be sure that 3.15 is for k8s 1.30-1.27 and that this is only a document fix ? as per the tags of 3.15.x i can't see it in the release notes.

This has already been fixed so I'm closing the issue.


[QUESTION] Does rpmsg_lite_send require carriage returns?

In using rpmsg_lite_send(), I noticed that if I did not include a carriage return ("/r/n") at the end of my Tx data that it would not work. Does this sound accurate with the implementation? If so why must it require a carriage return?

Hi yes thank you for the clarification.
For reference, I had this bit of code which did NOT result in a successfully sent message:

And this bit did:

However, just knowing that it isn't a requirement of rpmsge_lite_send is helpful and will help me narrow down the issue. Thank you!


Feature Request: isolate custom events to a specific instance of smooth-scroll

Love smooth-scroll! Is there a way to isolate the custom events --
scrollStart
scrollStop
scrollCancel

-- to specific instances of smooth-scroll? I'd like to have two separate instances of smooth-scroll with different behaviors for each, but haven't been able to make it happen.
If that's already possible (and I just don't know how to make it happen), sorry for the time waster.
Thanks!

Interesting use case!
I'm assuming the different instances have different selectors associated with them? If so, you could hook into event.detail.toggle in your event listener to achieve what you're trying to do.
The event.detail.toggle property is the element that triggered the scroll animation (ie. the link). You could possibly check if the appropriate selector is there and run different behaviors accordingly.
Something like this...
document.addEventListener('scrollStop', function (event) {

	if (event.detail.toggle.matches('.selector-1')) {
		// Do something...
	} else if (event.detail.toggle.matches('[data-some-other-selector]')) {
		// Do something else...
	}

}, false);

Would that work?

D'oh! Yes. That will work perfectly. Thanks, Chris!


Problem with socket.recv_pyobj()

Hey, I'm trying to build a chatbot as a practice, but can't get the publisher running.
This is my code:
import time
import zmq

context = zmq.Context()
socket = context.socket(zmq.PUB)
socket.bind('tcp://<IP_ADDRESS>:5555')

while True:

    message = socket.recv_pyobj()
    print("%s: %s" % (message.get(1)[0], message.get(1)[1]))
    time.sleep(1)

    socket.send_pyobj({1:[message.get(1)[0], message.get(1)[1]]})

When I try to run it, I get the following error message:
  File "chatserver.py", line 10, in <module>     message = socket.recv_pyobj() ... ... zmq.error.ZMQError: Operation not supported
Do I use recv_pyobj() somehow wrong?

See http://api.zeromq.org/4-2:zmq-socket  on PUB sockets.

Hi guidog, thanks for your help.
I took those commands from this example for Publish/ Subscribe: https://gist.github.com/ramn/7061042
If send_pyobj() and recv_pyobj() is already outdated, how would you send/receive objects now?

Outdated? What you're talking about?
Just read the link I posted above.
Get yourself the basics of ZMQ sockets.

Ah ok, I was just irritated, because in the example I sent to you, the send and recv functions are still used, but I just mixed publisher and subscriber.
Ok seems like there is no way for the client to send to the pub then.
Thanks for your help :)


TCPlp for OpenThread

This pull request implements TCP for OpenThread using TCPlp. This follows up on the second OpenThread developer meeting (#6456), where there was support for implementing TCP in OpenThread using TCPlp.
Currently, support for the proposed API (Pull Request #6491) is far enough along to try out TCPlp. But it isn't complete. Some of the main missing features at the moment are:

Support for SendByExtension (functionality is there, but not yet exposed in the API).
Support for auto-bind. For now, always bind your socket before connecting to another host.
Support for TCP Fast Open (might come in another pull request).
Support for the Contiguify function (will come in another pull request).
That said, you can create TCP connections and exchange data, and there's CLI support for doing that. That's why I felt it was an appropriate time to create this pull request.

TCPlp is derived from the TCP stack in the FreeBSD Operating System. Files taken from FreeBSD retain their original copyright notices and licenses (which are all BSD-like licenses). New code written by me is provided under the BSD 3-Clause License. I'm happy to relicense the code I wrote if it would make it easier to merge in to OpenThread.

Thanks @samkumar for submitting this PR and bringing this in. This is great to see :)

There's also the question of how to integrate TCPlp into OpenThread long term. Here are some possibilities I could think of:

Leave the TCPlp code in a third party module, but clean it up as described above.
Move the TCPlp code into OpenThread's C++ core, and wrap it in a namespace, but leave the variable and function naming conventions as is.
Move the TCPlp code into OpenThread's C++ core, and rename all functions and variables to conform with OpenThread's style (e.g., use camel case, all struct members start with m, all function arguments start with a, etc.).

I lean towards option 1  (which is similar to how mebdtls is currently integrated and used). I think would be good to keep core for new/original code for OT (under same license and copyright). Also I don't think we need to consider/change the style in third party source code. The style guide is mainly for original/new code in OT itself.

There's also the question of how to integrate TCPlp into OpenThread long term. Here are some possibilities I could think of:

Leave the TCPlp code in a third party module, but clean it up as described above.
Move the TCPlp code into OpenThread's C++ core, and wrap it in a namespace, but leave the variable and function naming conventions as is.
Move the TCPlp code into OpenThread's C++ core, and rename all functions and variables to conform with OpenThread's style (e.g., use camel case, all struct members start with m, all function arguments start with a, etc.).

Any code that carries a copyright/license other than the standard OpenThread copyright/license header needs to be placed in /third_party. This includes derivative work. Note that this is primarily an issue of source code placement.

Thanks @abtink and @jwhui for your thoughts. I should clarify that the primary intent behind Options 2 and 3 wasn't whether the code is in third_party or src/core --- it's about the extent to which we move the code toward using OpenThread's structures, conventions, and style instead of FreeBSD's. We can keep the code in third_party, but wrap it in a namespace, make the files C++ source instead of C source, and then use OpenThread's C++ structures and utilities, if we want.

@samkumar , thanks for clarifying. I had misunderstood your initial proposal. I agree that making the files C++ source has the benefits that you summarized.
Part of the tradeoff is how far we deviate from the original FreeBSD source. With mbedTLS, we try to use a pristine version to make integrating newer versions of mbedTLS and select bug fixes simple. If we view TCPlp as effectively maintained by the OpenThread project, then that may be a lesser concern.

To be clear, I'm totally on board with using the first option if that's what the OpenThread community wants, but I want to put forth these reasons for your consideration. From a purely practical standpoint, it might make the most sense to stick with Option 1 for now (to avoid delaying the pull request), and then move toward Option 2 or Option 3 in a future pull request if that's what the community wants. I can also try to integrate TCPlp more fully into OpenThread (e.g., modify parts of TCPlp to use OpenThread structures) while keeping it separate in C for now.

It all depends on how long you think it will take to implement Option 2 relative to Option 1 and whether that fits within the desired timelines.

To clarify with respect to Jonathan's comments: I also don't think licensing will be an issue, since OpenThread is licensed with BSD 3-clause. (If I had chosen to use Linux's TCP stack, it might be a different story --- but thankfully I chose FreeBSD.) Some of the copyright notices in the FreeBSD code include FreeBSD contributors --- see the top of tcp_input.c --- and the BSD license seems to say that we have to keep those copyright notices.

I agree. I do not have any concern of including code derived from FreeBSD in the OpenThread project - we just need to locate that source in /third_party.

Just pushed an update implementing SendByExtension and rebasing onto the latest TCP API from #6491 (including changing variable names and internal type names to be consistent with that).

Just rebased this on top of the latest TCP API from #6491.

I just rebased this on top of main, including the change made in reviews of earlier pull requests.

For people who would like to try out this code, I've posted a video (https://youtu.be/ppZ784YUKlI) showing how to use TCP via the functionality I added to the CLI tool. It doesn't go over all of the functionality supported in the CLI, but hopefully it will help you get started.

For people who would like to try out this code, I've posted a video (https://youtu.be/ppZ784YUKlI) showing how to use TCP via the functionality I added to the CLI tool. It doesn't go over all of the functionality supported in the CLI, but hopefully it will help you get started.

Great video, @samkumar ! Thanks for sharing.

The purpose of this pull request was to provide a way to try out TCPlp and discuss its integration. TCPlp was added into OpenThread over a series of nine pull requests (#6744, #6770, #6790, #6857, #6885, #6925, #6926, #7074, and #7190). Now that those pull requests have been merged, I am closing this pull request.


[BUG] - Useweblogin on Subsite ( 4th level down)

Reporting an Issue or Missing Feature
When using Connect-pnponline with the deprecated feature -useweblogin on a subsite with 4 levels deep on the 4th level  it loads a white login screen that you are unable to click through. This is more for awareness and so people can find this issue via their search engine. I'm aware that we should use -interactive.
Expected behavior
Prompt for username and password + MFA
Actual behavior
White login screen with no content.
Steps to reproduce behavior
Create a site collection with multiple sub sites such as :/sites/Subsiteexample/Subsite2/2.1/2.2
Connect-pnponline -url "https://tenant.sharepoint.com/sites/Subsiteexample/Subsite2/2.1/2.2 -useweblogin
What is the version of the Cmdlet module you are running?
(you can retrieve this by executing Get-Module -Name "PnP.PowerShell" -ListAvailable)
1.10.0
Which operating system/environment are you running PnP PowerShell on?

[X ] Windows
[ ] Linux
[ ] MacOS
[ ] Azure Cloud Shell
[ ] Azure Functions
[ ] Other : please specify

Please use - interactive instead.


LateError: when try to use screen property of GetResponsiveView

Describe the bug
screen.isPhone
^
"LateError (LateInitializationError: Field 'context' has not been initialized.)"
Reproduction code

Install the following flutter version
Flutter 2.5.3 • channel stable • https://github.com/flutter/flutter.git
Framework • revision 18116933e7 (5 weeks ago) • 2021-10-15 10:46:35 -0700
Engine • revision d3ea636dc5
Tools • Dart 2.14.4
Create a new flutter project (with counter template)
Add get: ^4.3.8 to the projects dependencies
Replace MaterialApp() Widget with GetMaterialApp()
Replace the home: value of GetMaterialApp() widget with the "TestPage()" widget provided in the below example code

To reproduce:
import 'package:flutter/material.dart';
import 'package:get/get.dart';

void main() => runApp(GetMaterialApp(home: TestPage()));

class TestPageController extends GetxController {}

class TestPage extends GetResponsiveView<TestPageController> {
  @override
  Widget build(BuildContext context) {
    return Container(
      child: Text(screen.isPhone ? 'Phone' : 'Not Phone'),
    );
  }
}```

looks like I have to change the build(context) method to builder()


/en-US/docs/Learn/HTML/Multimedia_and_embedding

Request type

[ ] Please close this issue, I accidentally submitted it without adding any details
[ ] New documentation
[x] Correction or update

Details
Typo: understansing
Should be: understanding
Where
First line in the Prerequisites heading.

Fixed; thanks for reporting!


Disable interaction with any elements while tour is displayed

While a tour step is active, it is possible to click on the hightlighted elements. (The other ones seem to be covered by the shadow and are not clickable? Not sure if I got that right.)
This allows users to click an element and e.g. open a modal that interacts with the tour step in weird ways.
Is it possible to disable any interaction with anything on the page except the tour buttons?

Hey,
adding a transparent pseudo element after the highlighted element should do the trick.
.v-tour__target--highlighted {   position: relative;   box-shadow: 0 0 0 9999px rgba(0,0,0,.5) !important; } .v-tour__target--highlighted::after {   content: '';   position: absolute;   width: 100%;   height: 100%;   background: transparent; }

That worked great, thanks!

Dont' worked.


Extract OpenAI support out of core and into a plugin

The OpenAI plugin is currently included in LLM core:
https://github.com/simonw/llm/blob/0.12/llm/default_plugins/openai_models.py
This means it's not possible to ship an improvement to OpenAI support without releasing a new version of LLM.
With the recent changes from OpenAI DevDay I'm finding a need to iterate on OpenAI much more rapidly. Extracting it into a separate llm-openai plugin would make this a lot easier.
It would also mean I can add dependencies like tiktoken in the future without them becoming dependencies of core - they'll only be pulled in if you install llm-openai itself.

Downside: the documentation will need to be updated to tell you to also install llm-openai.
I should also consider how this affects the Homebrew package. Should that still include llm-openai in the default installation? I feel like it should, but I could be convinced otherwise.

A challenge with this plugin is that it won't make sense to install it against LLM 0.12 or lower as it will clash with itself.
I'm going to ship a 0.13a0 with the OpenAI functionality removed, then I can build llm-openai to depend on that alpha.

I'm also worried that my test coverage will be less robust without the OpenAI pieces. I'm tempted to create a new test suite to run in the simonw/llm repository that executes integration tests by installing llm-openai and maybe one or two other key plugins and checking those still work against the latest changes to main.

This also means I can remove the concept of "default plugins" entirely:
https://github.com/simonw/llm/blob/e9a6998ca38946cfef75bdb7535d8bdc652ef381/llm/plugins.py#L8
https://github.com/simonw/llm/blob/e9a6998ca38946cfef75bdb7535d8bdc652ef381/llm/plugins.py#L36-L38
And the llm plugins --all flag too.
https://github.com/simonw/llm/blob/e9a6998ca38946cfef75bdb7535d8bdc652ef381/llm/cli.py#L947-L951

Lots of tests in https://github.com/simonw/llm/blob/e9a6998ca38946cfef75bdb7535d8bdc652ef381/tests/test_aliases.py refer to the OpenAI models and need updating to use mock instead.

Deleted this from test_keys.py:

def test_uses_correct_key(mocked_openai_chat, monkeypatch, tmpdir):
    user_dir = tmpdir / "user-dir"
    pathlib.Path(user_dir).mkdir()
    keys_path = user_dir / "keys.json"
    KEYS = {
        "openai": "from-keys-file",
        "other": "other-key",
    }
    keys_path.write_text(json.dumps(KEYS), "utf-8")
    monkeypatch.setenv("LLM_USER_PATH", str(user_dir))
    monkeypatch.setenv("OPENAI_API_KEY", "from-env")

    def assert_key(key):
        assert mocked_openai_chat.last_request.headers[
            "Authorization"
        ] == "Bearer {}".format(key)

    runner = CliRunner()

    # Called without --key uses stored key
    result = runner.invoke(cli, ["hello", "--no-stream"], catch_exceptions=False)
    assert result.exit_code == 0
    assert_key("from-keys-file")

    # Called without --key and without keys.json uses environment variable
    keys_path.write_text("{}", "utf-8")
    result2 = runner.invoke(cli, ["hello", "--no-stream"], catch_exceptions=False)
    assert result2.exit_code == 0
    assert_key("from-env")
    keys_path.write_text(json.dumps(KEYS), "utf-8")

    # Called with --key name-in-keys.json uses that value
    result3 = runner.invoke(
        cli, ["hello", "--key", "other", "--no-stream"], catch_exceptions=False
    )
    assert result3.exit_code == 0
    assert_key("other-key")

    # Called with --key something-else uses exactly that
    result4 = runner.invoke(
        cli, ["hello", "--key", "custom-key", "--no-stream"], catch_exceptions=False
    )
    assert result4.exit_code == 0
    assert_key("custom-key")

Urgh, so many tests in test_llm.py depend on that OpenAI mock.


Fix for #5495 : add setTrackbarMin

Is it possible to get list of errors from pullrequest build server?

@aman11dhanpat

Click "Show all checks" near "All checks have failed"
Click "Details" link which will go here

Thank you! Please add a description to your PR :) It can help for future searches.

:+1:

I forgot to compile with qt. Thought gtk was enough.
I'll raise a pr soon.

do not bother #5570


Us34 conexoes mapa

Changes Unknown when pulling 9ffffc7c473ad63d4245202e0f8d00eb8f49d9b2 on US34_Conexoes_Mapa into ** on master**.

Changes Unknown when pulling 9ffffc7c473ad63d4245202e0f8d00eb8f49d9b2 on US34_Conexoes_Mapa into ** on master**.

Coverage decreased (-12.09%) to 27.291% when pulling 06d564d71deb2ceca5ef6d466cd5d9d997a374fc on US34_Conexoes_Mapa into 67b3a96425eb5fe9161aac81048cd91d470d011b on master.

Coverage decreased (-12.09%) to 27.291% when pulling 4e9d188affff4a06770ac22bb3f232d6ab8a025a on US34_Conexoes_Mapa into 10e45732b9eb24ba72718abfef7239e615723593 on master.

Coverage decreased (-12.09%) to 27.291% when pulling e924e6c3fe2465eb0b3fea5356eaa3ce54c770c3 on US34_Conexoes_Mapa into 10e45732b9eb24ba72718abfef7239e615723593 on master.

Coverage decreased (-11.06%) to 28.571% when pulling 3b86d43605cb835097c6fbd2aea782244fc05245 on US34_Conexoes_Mapa into 1decd8aee3186ab5b7d70d196af0d857c4cc6367 on master.


empty states - all

What UI/UX improvements would you like to be implemented:
We need to have empty states for some pages that might have empty/blank value at start (e.g, Transaction page)
Why is this needed:
Which component/screens does this concern?:
Anything else we need to know?:

/triage accepted
/area ui-ux core
/priority urgent-now

/design in-progress
/assign @jtlntno-cake

/design ready

https://marvelapp.com/prototype/ce4111i/screen/81012762


Allow configurable exception_message

Right now, the 503 exception page does not show a message.
Because CI updates our staging environment every time something is merged in master, having no message is confusing for our test users.
This PR adds Service Temporarily Unavailable as default message.
Note / food for though
we actually do have a error503 template in place for prod, but as our staging and cd environments are set as debug=true environments so that templates won't be shown.
Before

After

@spike31 would be great if this can get released!

Done! :smile:
Sorry for the delay


feat: add kotlin and java template

Relies on: https://github.com/nitrictech/jvm-sdk/pull/3

LGTM just need to do some quick testing

Missing readme files @HomelessDinosaur
Will keep testing


Update manually does not work

Hi
I am trying to manually update Molly but while downloading at about 80 % the Accrescent is shutting down. I have noticed it is not the first time that molly does not want to update. Last update went smooth.

Hi it "jumps" to the home screen. I have tried many times. Closing the Accrescent, closing Molly, restarting the phone ,did not helped.
I have tried now after around 3 hours and I succeed to update.

Given there's been no further feedback, I think it safe to assume (as previously assessed) that the issue was simply a download timeout. Accrescent currently doesn't handle this gracefully, but I'm going to close this in favor of https://github.com/accrescent/accrescent/issues/10 since handling interrupted downloads is part of that feature.


What else do we need for a 0.1.0 release?

My little wishlist,
Device names in log entries
Direction of log entries (i.e from Dirigera or to Dirigera)

I would like to implement the websockets in the MQTT bridge first. Right now its polling the Dirigera endpoint, which is kind of hacky.

Device names in log entries

I thought about changing the logging to JSON format. This is less readable, but its straight to log more contextual information. It would also enable easy integrate into ELK. What do you guys think about this?

The reason I'm asking is so I can update the add-on in home assistant with a more traceable version.
Now it just uses the "latest" available every time I run an update.
It's not the highest priority atm but it would make it easier to keep track of what bugs have been implemented ;)

I thought about changing the logging to JSON format. This is less readable, but its straight to log more contextual information. It would also enable easy integrate into ELK. What do you guys think about this?

How about a toggle? Like you can toggle having the JSON format with more information for integration with ELK or even Elastic or a normal log for people that don't need the extensive information. This normal log would only display basic stuff like what message goes where with a basic set of information (like we have now)

I thought about changing the logging to JSON format. This is less readable, but its straight to log more contextual information. It would also enable easy integrate into ELK. What do you guys think about this?

How about a toggle? Like you can toggle having the JSON format with more information for integration with ELK or even Elastic or a normal log for people that don't need the extensive information. This normal log would only display basic stuff like what message goes where with a basic set of information (like we have now)

A reasonable idea. Log4J is very flexible in this terms. Its also possible to log classic messages on stdout and write json to a log file.

A reasonable idea. Log4J is very flexible in this terms. Its also possible to log classic messages on stdout and write json to a log file.

In terms of compatibility with the docker add-on I rather not have anything being written to a file.
However, if you go for log4j I can just overwrite the configuration for the logging with a custom one for docker that sends those directly to an ElasticSearch or Kibana instance. This obviously would only happen if the toggle is turned on and the default would be normal stdout for the add-on

In this case, i would argue keeping it simple and using the protocol format we already have. We can certainly refine the messages. I don't think ELK is a thing right now (except for myself). Docker/Hass should work with less overhead as possible, though. I expect the largest user base there.

I would like to implement the websockets in the MQTT bridge first. Right now its polling the Dirigera endpoint, which is kind of hacky.

In case you need a bit more info about the websocket events:
https://pastebin.com/7qG2LRzh

Websockets on the API is already working. Also, the data model is already available: dirigera-client-api/src/main/java/de/dvdgeisler/iot/dirigera/client/api/model/events. However, Websockets are not yet used in the MQTT module. The only thing missing is the change from polling to an event-driven approach.
If nothing comes up, I'll get to work on it tomorrow.

It's done. i replaced the polling with websocket events. However, while doing so, i faced a problem that i don't know how to solve properly: If the MQTT connection is interrupted for any reason, all subscriptions are lost after reconnecting. I have found a hook that notifies that the connection was lost, but none that notifies that the reconnect was successful. Therefore, i have no trigger to restore the subscriptions. As a result, the communication from Dirigera to HA works, but not vice versa, after a reconnect.
As a workaround, I implemented it to exit the application if the connection to the MQTT broker is lost. At least in docker, you have the option to restart the container automatically if it goes offline.

Isn't there some sort of heartbeat that could be sent? Like with the websocket you've the ping and pong events

The MQTT client has a keep-alive option, which is also enabled. But it is handled under the hood. The only callback I have found is triggered when it detects that the broker is no longer responding. However, I would need a callback indicating that the connection is restored to resubscribe to the topics.

Shall we do the first release?
Especially now that we had a major increase in usability and updated to websockets.
This would create a nice baseline for the home assistant add-on :)

I am just writing the release notes :)

It should do it automatically when you push a version like "v0.1.0" as tag :)

Damn, I used the github UI to do this.... I think I have screwed up now. The lates tag should point to the same commit as the 0.1.0, right?

Im not sure, i created / pushed the tag 0.1.0, but i cant see any action running

on:
  push:
    tags:
      - "v*"

i guess i have to prefix the tag by "v"

Yeah it needs to be "v0.1.0"

Works like a charm 👍


Brave download is broken

Current URL is listed as https://laptop-updates.brave.com/latest/osx, but this is a redirect to https://brave-browser-downloads.s3.brave.com/latest/Brave-Browser.dmg.
Not sure if it's best to change to the latter URL.  I tried substituting the current URL for $(curl -fs https://laptop-updates.brave.com/latest/osx) but did not complete successfully.

It appears the Team IDs may have changed as well?
I'm getting the following from latest download: KL8N8XSYF4

Curl will follow redirects because it uses the --location option, see line 1500.
Can confirm the Team ID changed.

Looks like this is at least partially addressed here: https://github.com/scriptingosx/Installomator/pull/74

@scriptingosx does the link actually work now, or is that still borked?

As I said in the MacAdmins Slack channel, I believe Brave has an issue in their CDN, in my testing, the download would work about half the time, and throw an error the other half.

Got it, didn't see the response in channel.


Include latest data in repository?

Thanks for the nice scraper. Was just wondering if you would mind putting a copy of the data in csv in your repository? I'm just asking in the context of an analysis of worldwide excess mortality I am doing and I would like to include influenza activity if possible, and it would be handy if right now I could just point to a csv on github in my R script (it would not be an issue for me right now if it was not updated daily or monthly or whatever, just that I have a somewhat recent version available)...
cheers & many thanks in advance!
PS Saw another scraper at https://github.com/MagnusBook/flunet-scraper that includes a csv, but unfortunately that one hasn't been updated for 3 years either

Thanks for reaching out, @tomwenseleers! I'd prefer not to put any data in the repo for a few reasons. First, I don't want to mislead people into thinking that I'd be doing that regularly; I'm worried that it might encourage people to routinely ask for updates. Second, while there's nothing technically stopping anyone from storing data in a Git repo, Git really isn't designed to store large data files (well, there technically is LFS, but I'd prefer not to use it unless there's a very strong justification). A full CSV dump will be rather large (totally ball-parking here, but I'm guessing something on the order of 40-50 MB).
Now, all that said, I'd normally be more than happy to just generate a single dump and send it directly to you since you asked so nicely, but the FLUMART website has actually been down for the last few weeks, and I'm not sure when it'll be fixed. It loads initially, but if you fill out the form and hit submit, you'll be greeted with this lovely error message:

Until the website is fixed, unfortunately no one will be able to collect data. I hope the WHO is able to fix this soon! FWIW, our team reached out to the FLUMART team a couple weeks ago (according to https://www.who.int/tools/flumart, it looks like<EMAIL_ADDRESS>is the right email address), but we haven't received a response. You might consider pinging the FLUMART folks as well.

Many thanks for getting back to me! I reached out to the FLUMART folks to ask the complete data, as I also got this server error when I tried that page, let's see what they say. And when I tried their PowerBI dashboard
https://app.powerbi.com/view?r=eyJrIjoiNjViM2Y4NjktMjJmMC00Y2NjLWFmOWQtODQ0NjZkNWM1YzNmIiwidCI6ImY2MTBjMGI3LWJkMjQtNGIzOS04MTBiLTNkYzI4MGFmYjU5MCIsImMiOjh9
I got the same Excel back with only a part of all the data, and the data is also the same no matter which time range I choose
(this is what I get back as an Excel - a file with just 2022 records:
https://www.dropbox.com/s/oprb6fqinad5jv5/flunet_powerbi.xlsx?dl=1). So that also didn't help... Shame that the WHO could not just provide some Github repo or ftp address with the complete database... Would be so much handier than scientists having to go to the lengths of having to write some web scraper... (Similar problem also with GISAID for Covid, for which people are writing scrapers now, https://github.com/Wytamma/GISAIDR, https://stackoverflow.com/questions/72632118/download-covid-patient-metadata-from-gisaid-website-in-r-using-rselenium)

Great, thanks for reaching out to them. Let me know if you hear a response, and if I hear a response, I'll let you know here as well.
Thanks for sending the link to the PowerBI dashboard. I actually wasn't aware of that! Out of curiosity, how did you find that?

Nice, thanks for that!
I'm wondering if they're actually working to migrate away from the FLUMART website in favor of PowerBI, and the fact that the FLUMART website is failing is not unexpected. FWIW, I'm seeing the same export behavior with that PowerBI interface, so that also needs to be fixed.

Might be something like that yes. Still no reply from them. PowerBI I personally really don't like - and even harder to scrape (well with RSelenium I guess it could always be done, but not at all practical, and it would require that their export at least was working as intended). I would be so happy if they could just make their latest data available through github or ftp. I don't think any bioinformatician / analyst cares about all those dashboards...

Ha finally received a reply from the WHO and the FluNet/FluMart & fluID data can be downloaded as a single CSV file from https://www.who.int/teams/global-influenza-programme/surveillance-and-monitoring/influenza-surveillance-outputs https://frontdoor-l4uikgap6gz3m.azurefd.net/FLUMART/VIW_FNT?$format=csv https://frontdoor-l4uikgap6gz3m.azurefd.net/FLUMART/VIW_FID_EPI?$format=csv data dictionary here https://frontdoor-l4uikgap6gz3m.azurefd.net/FLUMART/VIW_FLU_METADATA?$format=csv

Thank you for providing this information! I never ended up receiving a response. Did they happen to tell you if the FLUMART site is being decommissioned?

They didn't tell me that, but I presume so, yes... Anyway, if they now also provide everything in a single CSV file there should be no need anymore to scrape the info from that older Flumart site...


spring-cloud-starter-stream-rabbit activates Apache Tomcat

one of its transitive dependencies brings in Apache Tomcat which Spring Boot then starts. Please exclude Apache Tomcat so that it doesn't clobber other people's web server choices.

This is coming from Spring Boot itself. The transitive dependency that brings in Apache Tomcat is spring-boot-starter-web.  The only thing we can do on our end is to can discuss the extent to which we will want to bring the web starter in for the future. But it is good for metrics/actuator endpoints, so ATM I believe there's value to keep it in by default. It is however, possible to rely on applications supplying it in future versions.
The standard way of swapping servers is documented here: http://docs.spring.io/spring-boot/docs/current/reference/htmlsingle/#howto-use-jetty-instead-of-tomcat .

Closing this for now, as it is relates to the Boot web starter - we might want to reconsider the transitive dependency set for SCSt 2.


[Feature] Add local tablet reader and rpc interface

What type of PR is this：

[ ] BugFix
[x] Feature
[ ] Enhancement
[ ] Refactor
[ ] UT
[ ] Doc
[ ] Tool

Which issues of this PR fixes ：

Fixes #16535
Problem Summary(Required) ：

Checklist:

[ ] I have added test cases for my bug fix or my new feature
[ ] This pr will affect users' behaviors
[ ] This pr needs user documentation (for new or modified features or behaviors)

[ ] I have added documentation for my new feature or new function

Bugfix cherry-pick branch check:

[ ] I have checked the version labels which the pr will be auto backported to target branch

[ ] 2.5
[ ] 2.4
[ ] 2.3
[ ] 2.2

[FE PR Coverage Check]
:heart_eyes: pass : 0 / 0 (0%)

[FE PR Coverage Check]
:heart_eyes: pass : 0 / 0 (0%)

[FE PR Coverage Check]
:heart_eyes: pass : 0 / 0 (0%)

[FE PR Coverage Check]
:heart_eyes: pass : 0 / 0 (0%)

@decster starrocks_clang-format and starrocks_tscancode failed

[FE PR Coverage Check]
:heart_eyes: pass : 0 / 0 (0%)

[FE PR Coverage Check]
:heart_eyes: pass : 0 / 0 (0%)

run starrocks_fe_unittest

[FE PR Coverage Check]
:heart_eyes: pass : 0 / 0 (0%)

run starrocks_admit_test


Write a Python program to implement selection sort

Description
Write a Python program to implement selection sort
Selection sort is a sorting algorithm that selects the smallest element from an unsorted list in each iteration and places that element at the beginning of the unsorted list.
Pseudocode
procedure selection sort
   list  : array of items
   n     : size of list

   for i = 1 to n - 1
   /* set current element as minimum*/
      min = i

      /* check the element to be minimum */

      for j = i+1 to n
         if list[j] < list[min] then
            min = j;
         end if
      end for

      /* swap the minimum element with the current element*/
      if indexMin != i  then
         swap list[min] and list[i]
      end if
   end for

end procedure

Example
Input  : [8, 5, 2, 6, 9, 3, 1, 4, 0, 7]
Output : [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

How to contribute

Comment !assign to assign this issue to yourself
Fork this repository
Create a new branch
Save the solution in program/program/implement-selection-sort/implement_selection_sort.py
Commit the changes
Create a pull request

!assign

!assign


Avoid complicated error message for non-array objects in _concat_arrays

This PR is intended for solving the issue #2080. With this PR, the error message for this code becomes as follows. This is easier to interpret than before.
Traceback (most recent call last):
  File "/home/mkusumoto/.pyenv/versions/3.5.1/lib/python3.5/runpy.py", line 170, in _run_module_as_main
    "__main__", mod_spec)
  File "/home/mkusumoto/.pyenv/versions/3.5.1/lib/python3.5/runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "/home/mkusumoto/chainer/tmp/ttt.py", line 38, in <module>
    main()
  File "/home/mkusumoto/chainer/tmp/ttt.py", line 34, in main
    trainer.run()
  File "/home/mkusumoto/chainer/chainer/training/trainer.py", line 289, in run
    update()
  File "/home/mkusumoto/chainer/chainer/training/updater.py", line 173, in update
    self.update_core()
  File "/home/mkusumoto/chainer/chainer/training/updater.py", line 185, in update_core
    optimizer.update(loss_func, *in_vars)
  File "/home/mkusumoto/chainer/chainer/optimizer.py", line 390, in update
    loss = lossfun(*args, **kwds)
  File "/home/mkusumoto/chainer/chainer/links/model/classifier.py", line 68, in __call__
    self.loss = self.lossfun(self.y, t)
  File "/home/mkusumoto/chainer/chainer/functions/loss/softmax_cross_entropy.py", line 223, in softmax_cross_entropy
    use_cudnn, normalize, cache_score, class_weight)(x, t)
  File "/home/mkusumoto/chainer/chainer/function.py", line 189, in __call__
    self._check_data_type_forward(in_data)
  File "/home/mkusumoto/chainer/chainer/function.py", line 280, in _check_data_type_forward
    type_check.InvalidType(e.expect, e.actual, msg=msg), None)
  File "<string>", line 2, in raise_from
chainer.utils.type_check.InvalidType:
Invalid operation is performed in: SoftmaxCrossEntropy (Forward)

Expect: in_types[1].dtype == <class 'numpy.int32'>
Actual: int64 != <class 'numpy.int32'>

Hi,
I have the similar issue.
On NO GPU environment, your sample code fails at cuda.get_device which is before you fixed.
Traceback (most recent call last):
  File ".\ttt.py", line 38, in <module>
    main()
  File ".\ttt.py", line 34, in main
    trainer.run()
  File "C:\Python34\lib\site-packages\chainer\training\trainer.py", line 289, in run
    update()
  File "C:\Python34\lib\site-packages\chainer\training\updater.py", line 173, in update
    self.update_core()
  File "C:\Python34\lib\site-packages\chainer\training\updater.py", line 178, in update_core
    in_arrays = self.converter(batch, self.device)
  File "C:\Python34\lib\site-packages\chainer\dataset\convert.py", line 71, in concat_examples
    [example[i] for example in batch], padding[i])))
  File "C:\Python34\lib\site-packages\chainer\dataset\convert.py", line 95, in _concat_arrays
    with cuda.get_device(arrays[0]):
  File "C:\Python34\lib\site-packages\chainer\cuda.py", line 178, in get_device
    check_cuda_available()
  File "C:\Python34\lib\site-packages\chainer\cuda.py", line 83, in check_cuda_available
    raise RuntimeError(msg)
RuntimeError: CUDA environment is not correctly set up
(see https://github.com/pfnet/chainer#installation).CuPy is not correctly installed. Please check your environment, uninstall Chainer and reinstall it with `pip install chainer --no-cache-dir -vvvv`.

original error: cannot import name 'core'

Can you add test?

@okuta I added a new test. Could you check this?

@unnonouno Thank you for review, and sorry for overlooking the result of CI. I reflected your reviews and modified both the test code and the main code. In my commit code, the function simply converts to numpy.ndarray if the given array is a built-in type.
Now, it seems that continuous-integration/travis-ci/push outputs an error saying The command pip install theano exited with 2. I assume that my commit is not responsible for this error...

Ok, please ignore this error. Thank you!


[Event Request] Application “Tests-Misc”, Codeunit 138500 "Common Demodata"

[Event Request] Application “Tests-Misc”, Codeunit 138500 "Common Demodata"

Could you please insert the OnTestInitialize Event at the beginning of each test procedure?

Will this event shipped in a future update?


Need to think about how we will manage game modes. See comments.

As a community project, I'd like to think there will be many different game modes and players and their buddies can select whatever game mode they like. Some will want real physics. Some want arcade. Some want mplayer. Some don't. Some want to race to the end. Some want to rescue little green men. Different dev's will want to do different things and the only way to keep everyone happy is to allow for them all.   :)
I think we need to think about some sort of framework for the management of game modes. I don't know what that is. Maybe it's just a table. Maybe it's a module/file. IDK. I just think that any current or new dev's need to know it's possible to add new modes.
At the very least, we'll need a new settings slab or to adjust the existing settings slab.
Also see #148.

Im a bit against working on a game that "has it all". Projects like this often get abandoned pretty fast or end up in a mess.
I don't like games that try to please everyone. it just wouldn't feel right to me personally.
That doesn't mean I won't continue help working on the project or anything, Ill follow the flow of everyone else. :thumbsup:
Eager to see what others think about this topic.

Multiple game modes don't had to be exclusive and we're not trying to be everything.  Think of a fan-made mod. If ppl want to make one then they can make one. If fans find it fun then they will use it. If they don't then they won't use it.
If you think a different game mode is fun to code and fun to play them lets encourage that. That can be your project and if you deliver something on top of the base game then fantastic. If you don't finish or get distracted then the main branch continues.
This strategy is actually guarding against abandonment.
It does dilute our efforts but this is meant to be fun so let's do things that are fun without making decisions for the entire player base. :)

Just had a thought: instead of game modes like 'arcade mode' or 'better physics' mode so we want to have each individual item (within reason) a valid setting for any/all game modes?
eg if you want the arcade mode to have arcade mode + wind then go into settings and turn on wind. You don't have to have landing legs and top thrusters if you don't want to.
I think this will be super cool and easy to implement with the new code structure.
Madbyte can code one thing (e.g wind) with or help into a branch, give it a setting in the setting screen, then do a PR and now the player chooses if they want wind.
Later on we can bundle settings together as a new option for players to set multiple settings at once e.g.. 'better physics' will turn on wind and landing legs.


Links to SAP Article are dead

Hi Markus,
I would love to read your article that you reference multiple times, but the link no longer works.
Is the article available elsewhere, and can you update the links to point at the new url ?
Best regards
Anders Olsen

I'll update the links as soon as blog post gets published

https://blogs.sap.com/2023/09/20/data-maintenance-and-cleanup-of-a-sap-commerce-cloud-project/


help with simple code

New Issue Checklist

[x] Updated fastlane to the latest version
[x] I read the Contribution Guidelines
[x] I read docs.fastlane.tools
[x] I searched for existing GitHub issues

Issue Description
Hello i'm php and swift developer and i do not understand the basics of Ruby
sorry but please i want a simple code for ruby or shell (bash)
The code i want to do is simple:

sign in by email and password
register udid to developer account
download a profile with select all of device

Please Help me i want it :(

I prefer spaceship for using fastLane

For iOS there's match (https://docs.fastlane.tools/actions/match/).
If it's fine for you to create a new certificate you can setup new certificates with match (e.g. fastlane match -a XXX.YYY.ZZZ development, where XXX.YYY.ZZZ is your bundle identifier) and then in your Fastfile you can use
register_devices(
  devices: {
    "Name Device 1" => "UDID-DEVICE-1",
    "Name Device 2" => "UDID-DEVICE-2"
  },
  readonly: true
)

match(
  app_identifier: "XXX.YYY.ZZZ",
  type: "development",
  force_for_new_devices: true
)

You'd need to setup Fastlane first, then Match.
Disclaimer: I'm not an expert on this topic, just following my experiences from the last couple of days. Just follow the link https://docs.fastlane.tools/actions/match, there's plenty of documentation on this.

thank you .. but for now i want run in php script how ?
shell_exec or exec and how

Well, you could try executing commands from within php (http://be2.php.net/manual/en/function.exec.php). But I'm not sure if that makes sense at all.
Why exactly do you want to use Fastlane with php?

i want use spaceship with php for :

get udid from database
add to apple developer account
download profile with select all device
resign ipa file
Thank you very much

Well yes, you said that. But why would you want to use PHP in any of those steps?
If you want to use fastlane, there's fastlane init (https://docs.fastlane.tools) and match init (https://docs.fastlane.tools/actions/match). That should get you started.
Additionally there's action register_devices which allows you to pass a devices_file (potentially created by some PHP function that does the database request from step 1; use fastlane action register_devices for more information). The devices_file has to have the format one of these: https://devimages.apple.com.edgekey.net/downloads/devices/Multiple-Upload-Samples.zip .
For resigning there's action resign (fastlane action resign for more information; https://github.com/fastlane/fastlane/blob/master/fastlane/lib/fastlane/actions/resign.rb).
Combining these steps sounds like it's all you need.


Cannot mount with rclone mount

Cannot mount with rclone mount  we get an error:
Fatal error: failed to mount FUSE fs: fusermount: exec: "fusermount": executable file not found in $PATH

Seems we need to install:
sudo apt install fuse

We still get the same error

rclone mount test3:naavretest3 /s3_rclone_test
It gives 2022/12/19 15:07:00 Fatal error: failed to mount FUSE fs: fusermount: exec: "fusermount": executable file not found in $PATH

This is an issue with docker


Named Routes

For my i18n I want to change dynamically the path name of my route, but have the same component associated to it.
For instance:
pages
about-us.vue
// overwrite or extend the routes automatically generated by nuxt
import paths from 'paths'

const lang = $store.lang
const aboutUsPath = paths[lang].about

const router = new VueRouter({
  routes: [
    {
      path: aboutUsPath, // it changes according to the country code
      name: 'about-us',
      component: AboutUs
    }
  ]
})

and then I use nuxt linkto as follow:
<nuxt-link :to="{ name: 'about-us' }> {{ content.navigation.about }} </nuxt-link>

With the current implementation I have to create under pages many files:
pages
about-us.vue
chi-siamo.vue
quienes-somos.vue
qui-sommes-nous.vue
and then in each of them import the same component, where I load dynamically the localised content. Not very elegant solution.
How can I access nuxt routes and customize them as I want?

Hi @francescobm !
Try this way, I generated the router over Nuxt then I made aliases for each route.
In the vue-router you'll find documentation for aliases on router.
This is commented over here in issue #508
Good luck!

@epartipilo thanks a lot !
This solve part of my issue, the biggest part :-).
Now with the use of modules I can replace the router and create aliases for a page in different languages.
Only remaining problem is now to not make accessible routes that are not relevant for a country.
For instance:
block /quienes-somos if I am on .com, and block /about-us when I am on .es, and so on.
I think I will use a middleware for it. Thanks !

Hi,
Validate method or Middleware are good solutions.

Hi @alexchopin
I like your suggestion on Validate or Middleware, it's more clean and a better Nuxt way but, using Validate method or Middleware does't not make more unnecessary redirections than the router Aliases?
Also the checking the url by language is a little bit more tricky.
Thanks!


Tflite Conversion Issue with Scale

Hello,
I have successfully converted darknet pretrained model into tflite model using tensorflow 2.3.0 or rc version and opencv <IP_ADDRESS>. Then, I ran detect.py but the scales of bounding boxes do not match. Any suggestions? I have fixed configuration paramters for anchor sizes, input sizes and all I believe. If I have missed anything, please let me know.

Hi, I think you need to go .config file to change the anchor box setting.


mountPoint configuration not working

Description
I would like to mount a path from the host to a specific path in the guest using the mounts.[].mountPoint setting, but this seems to have no effect. With the template below, the host path is mounted to /Users/connoredwards/test, not /tmp.
images:
# Try to use release-yyyyMMdd image if available. Note that release-yyyyMMdd will be removed after several months.
- location: "https://cloud-images.ubuntu.com/releases/22.04/release-20220420/ubuntu-22.04-server-cloudimg-amd64.img"
  arch: "x86_64"
  digest: "sha256:de5e632e17b8965f2baf4ea6d2b824788e154d9a65df4fd419ec4019898e15cd"
- location: "https://cloud-images.ubuntu.com/releases/22.04/release-20220420/ubuntu-22.04-server-cloudimg-arm64.img"
  arch: "aarch64"
  digest: "sha256:66224c7fed99ff5a5539eda406c87bbfefe8af6ff6b47d92df3187832b5b5d4f"
- location: "https://cloud-images.ubuntu.com/releases/22.04/release/ubuntu-22.04-server-cloudimg-amd64.img"
  arch: "x86_64"
- location: "https://cloud-images.ubuntu.com/releases/22.04/release/ubuntu-22.04-server-cloudimg-arm64.img"
  arch: "aarch64"

mounts:
  - location: "/Users/connoredwards/test"
    mountPoint: "/tmp"
    writable: false

connoredwards@lima-test:/Users/connoredwards$ ls
test
connoredwards@lima-test:/Users/connoredwards$ ls /tmp/test
ls: cannot access '/tmp/test': No such file or directory

root@lima-test:/mnt/lima-cidata# cat lima.env
LIMA_CIDATA_NAME=test
LIMA_CIDATA_USER=connoredwards
LIMA_CIDATA_UID=501
LIMA_CIDATA_MOUNTS=1
LIMA_CIDATA_MOUNTS_0_MOUNTPOINT=/Users/connoredwards/test
LIMA_CIDATA_MOUNTTYPE=reverse-sshfs
LIMA_CIDATA_CONTAINERD_USER=1
LIMA_CIDATA_CONTAINERD_SYSTEM=
LIMA_CIDATA_SLIRP_DNS=<IP_ADDRESS>
LIMA_CIDATA_SLIRP_GATEWAY=<IP_ADDRESS>
LIMA_CIDATA_SLIRP_IP_ADDRESS=<IP_ADDRESS>
LIMA_CIDATA_UDP_DNS_LOCAL_PORT=55406
LIMA_CIDATA_TCP_DNS_LOCAL_PORT=49995

Lima version: limactl version 0.11.0
Host: macOS 11.4 (M1)

Ah ok, thanks a lot.


RLE encoder stuck when repeat_count_ >= 0x40000000

Steps to reproduce the behavior (Required)

CREATE a RLE encoder
Put into 0x40000000 same value
Flush

Expected behavior (Required)
See flush successful
Real behavior (Required)
Flush stuck in dead loop
StarRocks version (Required)

You can get the StarRocks version by executing SQL select current_version()
a328b681ec277ae502d04d168039e59d8538a953

This bug will lead to all compaction stuck in flush repeated run()


[AP-3366] check answers means

What
Link to story
Display expected check your answers sections and questions for new provider flow
Checklist
Before you ask people to review this PR:

Tests and rubocop should be passing: bundle exec rake
Github should not be reporting conflicts; you should have recently run git rebase main.
There should be no unnecessary whitespace changes. These make diffs harder to read and conflicts more likely.
The PR description should say what you changed and why, with a link to the JIRA story.
You should have looked at the diff against main and ensured that nothing unexpected is included in your changes.
You should have checked that the commit messages say why the change was made.


this feature is not working at all for existing triggers updated to use local time zone (and with start dates before DS changes)

I updated my existing triggers to use my local timezone (Indiana East), and set the trigger times to be in Indiana (East). Saved and made 300% sure that the changes are published (ensured it said "no new changes to publish" after publishing for the first time 🤷 ) -- even then, my triggers kicked off an hour earlier this morning. And under trigger runs, the time is not what I set in the trigger, it's 1 hour earlier.
Is this happening because the triggers were existing and their start dates were before DS changes happened yesterday? If yes. it's incorrect since if I am wanting to update my existing trigger to run at 10AM Eastern time every day, and the start date is 29th October, then even after the DS change on 1st Nov, my trigger should run at 10 AM eastern, and should not fall back to 9AM. Since I am configuring timing in my time zone.
PFA a couple of screenshots. See if the trigger IDs help as well
trigger IDs:
08585972812846735214144704509CU51
08585972830851479763434566073CU07

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

ID: 89177180-caeb-e2e1-5614-60719f593672
Version Independent ID: a3352be5-2343-ae87-38d0-32312a62d2b1
Content: Create schedule triggers in Azure Data Factory - Azure Data Factory
Content Source: articles/data-factory/how-to-create-schedule-trigger.md
Service: data-factory
GitHub Login: @chez-charlie
Microsoft Alias: chez

@rgg-amahajan Thanks for your feedback! We will investigate and update as appropriate.

@rgg-amahajan  please use Eastern Time Zone, which observes daylight saving, instead. Indiana (East) is a legacy time zone, back in early 2000s, when some counties in Indiana does not observe daylight saving

#please-close

@SaurabhSharma-MSFT thanks! @chez-charlie thank you. I will try it now and let you know -- it would help to as well clarify this in the description that appears underneath, when you select Indiana (East) from the timezone drop down. It just says this timezone observes daylight savings, and it is same as that of Eastern Time (US & Canada). So would be good to have this clarity there.


How to support Chinese filename path

from pathlib import Path
from llama_index import download_loader

UnstructuredReader = download_loader("UnstructuredReader")

loader = UnstructuredReader()
documents = loader.load_data(file=Path('./data/abc-页面.html'))

error thrown:
WARNING:unstructured:The MIME type of 'data\\BWK\\abc-页面.html' is "cannot open `data\\BWK\\WCPA156-\\346\\265\\213\\350\\257\\225\\345\\267\\245\\350\\243\\205.html' (No such file or directory)". This file type is not currently supported in unstructured.
Traceback (most recent call last):
  File "D:\www\llamaIndexDemo\demo2.py", line 7, in <module>
    documents = loader.load_data(file=Path('./data/BWK/abc-页面.html'))
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\Program Files\Python\Python311\Lib\site-packages\llama_index\readers\llamahub_modules/file/unstructured/base.py", line 36, in load_data
    elements = partition(str(file))
               ^^^^^^^^^^^^^^^^^^^^
  File "D:\Program Files\Python\Python311\Lib\site-packages\unstructured\partition\auto.py", line 104, in partition
    raise ValueError(f"{msg}. The {filetype} file type is not supported in partition.")
ValueError: Invalid file data\BWK\abc-页面.html. The FileType.UNK file type is not supported in partition.

Hmm, the following works for me on mac:
from pathlib import Path
from llama_index import download_loader

UnstructuredReader = download_loader("UnstructuredReader")

loader = UnstructuredReader()
documents = loader.load_data(file=Path('example-docs/fake-页面.html'))
print(documents[0].text)

where example-docs/fake-页面.html is a copy of https://github.com/Unstructured-IO/unstructured/blob/main/example-docs/fake-html.html
I suspect the str(filename) here is throwing it off in Windows given the (No such file or directory) message in the trace you posted.

@cragwolfe Yes, This is the result of running under Windows.

Going to close this one out since we haven't been able to replicate. We can reopen it later if we need to. For Windows you may also need path = Path('.\\data\\abc-页面.html') (the double forward slashes instead of backslashes).


add example timeline builder

Adds a simple example that builds a timeline from scratch using a list of files and times as input.

Codecov Report

Merging #993 (cf6c293) into master (d33bf24) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #993   +/-   ##
=======================================
  Coverage   85.60%   85.60%
=======================================
  Files         192      192
  Lines       18331    18331
  Branches     2056     2056
=======================================
  Hits        15693    15693
  Misses       2112     2112
  Partials      526      526

Flag
Coverage Δ

unittests
85.60% <ø> (ø)

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

Continue to review full report at Codecov.

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


Embed video thumbnails in audio files as cover art

So I found that the -f bestaudio feature downloads m4a files from youtube, which is great, but I'm missing my thumbnails. m4a files support embedding images in them, and video players such as mpv show those images as a static replacement of the video stream. Just like most of the music in video sites, but with a jpeg instead of a video with a single repeated frame.
I was considering writing a small script to get those files with youtube-dl --get-thumbnail and then embed them with AtomicParsley (a mpeg4 metadata manipulator, as this page suggests it's not working with ffmpeg), but then realized it would be a good feature to have as part of youtube-dl, since it already has features to add metadata to the video.
Does this sound like a desirable feature? Is the dependency with AtomicParsley an issue? If it's ok, I might go ahead and implement it, then send a PR later.

@cup, is right because AtomicParsley is not only the program that is able to embed metadata into a MPEG4 file. There are several others that do the same job. One worse or better than another. But, it seems the method of using AtomicParsley is quite easy because they provide pre-built binaries on their website.


wifi and Bluetooth, sound not working need help with gpu

Hi as said the wifi and Bluetooth is not working after installation there were some problems with my my graphics and can't  even access hyprland is there any way to disable the new greeter I don't want to set my primary gpu to nvidia and want to let it be to my intel Integrated any help will be appreciated thank you

Hi as said the wifi and Bluetooth is not working after installation there were some problems with my my graphics and can't even access hyprland is there any way to disable the new greeter I don't want to set my primary gpu to nvidia and want to let it be to my intel Integrated any help will be appreciated thank you

sure just comment out in instal_hyprland.sh
`if nvidia_detected; then
# Install hyprland-nvidia-git and nvidia automatically if an NVIDIA GPU is detected
sudo dnf install -y akmod-nvidia xorg-x11-drv-nvidia-cuda
fi`


🐛 | When creating Spotify Card IDs the title.txt and cover.jpg are not created correctly

Bug
What I did
I created a new card ID with a Spotify album linked to it.
What happened
The card ID was created successfully but cover.jpg and title.txt are no longer created correctly. They are both empty. Also on the "home" page of Phoniebox the card ID just shows the Spotify icon and no name next to it.
I expected this to happen
cover.jpg and title.txt should be set correctly and on home menu there should be the title next to the Spotify icon
Further information that might help
cover.jpg and title.txt are also not set correctly after playing the card.
Software
Base image and version
newest buster release with develop phoniebox installed today.
Branch / Release
develop
Installscript
one line installer
cd; rm buster-install-*; wget https://raw.githubusercontent.com/MiczFlor/RPi-Jukebox-RFID/develop/scripts/installscripts/buster-install-default.sh; chmod +x buster-install-default.sh; GIT_BRANCH=develop bash ./buster-install-default.s
Hardware
RaspberryPi version
3B+
RFID Reader
16c0:27db HXGCoLtd Keyboard
Soundcard
no external
Other notable hardware

I just can confirm that I have the same problem on master too

Possible duplicate of #799

Yes, it's a duplicate.


chart-diff: some diffs are hidden sometimes

One-liner
After the recent migration to the chart_config table (see https://github.com/owid/owid-grapher/pull/3767), some chart diffs are hidden in the app.
Context & details
Mojmir (from Slack):

It’s not easily fixable by code, but it’ll work if you re-save those charts in admin. (This will change their updatedAt timestamp and everything’s gonna work like before)

For the context - I only saw this issue on one staging server, not sure if any other were affected. The problem was that function _get_staging_creation_time didn't return the correct time of server creation.
I haven't thoroughly investigated why. We use the creation time of charts table (with show table status like 'charts'), but it got changed on that server and charts that were updated before weren't showing up.

From triage discussion, we think that you were the unlucky last person to experience it, and that it won't come up again for new work.


Currently runc needs to be built and installed and not installed using yum/dnf

In the setting started guide it is important to point out that currently runc and cri-o are being updated regularly with some dependencies.  Intsalling runc packages will not guarentee that cri-o will run successfully at this time. Therefore it is best to install runc from a local build. Point to runc repo and the build/install instructions.
If you have runc installed already from a package it is likely that cri-o will not run currently despite installing runc from build. The already installed runc may be in a the PATH and get picked up. It is best to remove the runc package from your system and only have the current build installed.
Perhaps make install of runc could check if runc package is already installed as a package and prompt the installer to remove the previous package.

We have updated README with expected version of runc.


Better performances and refactorizing

Refactorize all parts of code where it is possible.
Avoid menu icons from flickering especially for Cairo surfaces.
Think about freeing resources.

I improved performances and refactorized.


Add IonQ provider with JSON passthrough

Todo's:
[x] add unit tests
[x] refactor Job (see PR https://github.com/microsoft/qdk-python/pull/84)
[x] fix UT recording issue

@anpaz, I've done the Job refactor in this PR: https://github.com/microsoft/qdk-python/pull/84

UT recording issues are fixed in https://github.com/microsoft/qdk-python/pull/98

/azq run

/azp run

/azp run


ClientModel: third-party pageable types

API change check
APIView has identified API level changes in this PR and created following API reviews.
System.ClientModel


CameraPreview not syncing with the orientation of the phone

I'm new to Dart/Flutter and currently using the Flutter Camera Plugin but I am running into a problem with the CameraPreview for when the phone turns to landscape mode. The images stay vertical and don't rotate the 90degrees with the phone.
I have tried countless things including Transform.rotate(), but I can't seem to get the image to both, fill the screen and rotate 90degrees.
The pictures that were taken while the phone was sideways still saved in the correct orientation when I view them but using the _cameraPreviewWidget.
https://i.stack.imgur.com/nsAab.jpg
https://i.stack.imgur.com/qN0YE.png

/cc @mravn-google

/cc @sigurdm

im getting the same issue, will update if i find a fix.

We arrived on the same issue, we "solved" it by locking the orientation in the page to portrait.
Btw, camera plugin is missing in the readme.md in flutter/plugins page.

@maral Thanks for the heads up, https://github.com/flutter/plugins/pull/618

So what is the real solution?


feat: add delete endpoint (#345)

Description
It adds an endpoint to delete the drs object based on the object id
Fixes #(issue)
#333
Checklist

[x] My code follows the contributing guidelines of this project.
[x] I am aware that all my commits will be squashed into a single commit, using the PR title as the commit message.
[x] I have performed a self-review of my own code.
[ ] I have commented my code in hard-to-understand areas.
[x] I have updated the user-facing documentation to describe any new or changed behavior.
[x] My changes generate no new warnings.
[ ] I have added tests that prove my fix is effective or that my feature works.
[x] I have not reduced the existing code coverage.

Comments

Summary by Sourcery
Add a delete endpoint to the API for removing DRS objects by ID and update the documentation to reflect this new functionality.
New Features:

Introduce a new endpoint to delete a DRS object based on its ID.

Documentation:

Update the README to include documentation for the new deleteObject function, detailing its parameters and usage.

@psankhe28, please address the request changes and resolve conflicts with main so I can re-review.

Hey @psankhe28, can we have this merged?


GPU not found

Jax cannot find GPU device in ipython.
To reproduce, run the following code in ipython:
from jax import random
key=random.PRNGKey(0)

Jax output:
WARNING:absl:No GPU/TPU found, falling back to CPU. (Set TF_CPP_MIN_LOG_LEVEL=0 and rerun for more info.)
arg: 0	 type of arg <class 'jaxlib.xla_extension.DeviceArray'>
arg:<PHONE_NUMBER>	 type of arg <class 'numpy.uint32'>

I tried PyTorch in the same ipython environment and it can find the GPU device.
environment:

OS: Ubuntu 20.04.4 LTS, Linux kernel 5.14
CUDA: 11.6
cuDNN: 8.4,
GPU: NVIDIA GeForce RTX 3070
jax: 0.3.13, installed via pip
jaxlib: 0.3.10+cuda11.cudnn82
python: 3.10.4

I tested this problem in several ways and it turns out very weird.
In the same terminal

I tested it in the REPL python environment and get the same results.
I saved the command as a .py file and run it. GPU is not found either.

When I opened another terminal and run the same thing in ipython, REPL python and python script. In all cases, jax used GPU. So I guess in the first terminal there must be some configurations that cause the same issue. However, even if I follow the same commands I input in the first terminal, the issue cannot be reproduced.
In the first terminal, I set the TF_CPP_MIN_LOG_LEVEL=0 and get the following outputs:
2022-05-27 16:22:52.184138: I external/org_tensorflow/tensorflow/compiler/xla/service/service.cc:174] XLA service 0x561440d94db0 initialized for platform Interpreter (this does not guarantee that XLA will be used). Devices:
2022-05-27 16:22:52.184165: I external/org_tensorflow/tensorflow/compiler/xla/service/service.cc:182]   StreamExecutor device (0): Interpreter, <undefined>
2022-05-27 16:22:52.194915: I external/org_tensorflow/tensorflow/compiler/xla/pjrt/tfrt_cpu_pjrt_client.cc:176] TfrtCpuClient created.
2022-05-27 16:22:52.195878: I external/org_tensorflow/tensorflow/stream_executor/tpu/tpu_platform_interface.cc:74] No TPU platform found.
WARNING:absl:No GPU/TPU found, falling back to CPU. (Set TF_CPP_MIN_LOG_LEVEL=0 and rerun for more info.)

Since opening a new terminal can bypass this issue, I close this issue. I appreciate it if you can fix this weird issue.

On Google CoLab Pro, 'jax' recognizes the GPU but not the TPU.

My guess is that you had one or more environment variables set in the session where the GPU was not found that caused GPU initialization to fail. Ones that may be relevant include PATH, LD_LIBRARY_PATH and CUDA_VISIBLE_DEVICES.

TPUs not being found is another issue.
See: https://github.com/google/jax/tree/main/cloud_tpu_colabs for documentation about that. Note in particular you need
import jax.tools.colab_tpu
jax.tools.colab_tpu.setup_tpu()

at the top of the colab; see the examples. But also note the JAX/Colab/TPU stack is in flux, see the notes on that documentation page about the newer Cloud TPU VMs.

That worked! Thank You!
btw - Do you happen to know whether JAX will eventually support Apple Metal?

See https://github.com/google/jax/issues/8074 for Metal support.


Sort sector/systems in galaxy map accoring to distance to player

Description
Sort the sector/system lists in the galaxy map according to the current distance to the player to make it easier to find the more relevant points of interest.
Versions
N/A
Additional Information
N/A

Redundant due to #82


Update Makefile to include Ledger support

Closes: #XXX
Description

Adds Ledger support to Makefile

For contributor use:

[ ] Targeted PR against correct branch (see CONTRIBUTING.md)
[ ] Linked to Github issue with discussion and accepted design OR link to spec that describes this work.
[ ] Wrote unit and integration tests
[ ] Updated relevant documentation (docs/) or specification (x/<module>/spec/)
[ ] Added  relevant godoc comments.
[ ] Re-reviewed Files changed in the Github PR explorer

For admin use:

[ ] Added appropriate labels to PR (ex. WIP, R4R, docs, etc)
[ ] Reviewers assigned
[ ] Squashed all commits, uses message "Merge pull request #XYZ: [title]"

LGTM! Thank you for backporting this