[v2-main] Remove all legacy code

Remove all legacy code from V2-main.
There is a lot of code which is outdated. This will:

Reduce confusion for developers who try to look and repurpose code built for the old architecture.
Make v2 easier to document.

When/if features are reintroduced, we can look at the old implementation from master/github history if it is relevant.
Comments on specific files.
platform/core/src/classes/metadata

We only use the metadataprovider and DicomMetadataStore
platform/core/src/classes/StudyLoadingListener.js
DataSources are now external
platform/core/src/classes/StudyMetadataSource.js
DataSources are now external
platform/core/src/classes/StudyPrefetcher.js
DataSources are now external
platform/core/src/classes/OHIFError.js
Only used by metadata classes now not in use.
platform/core/src/classes/TypeSafeCollection.js
Only used by metadata classes now not in us.
platform/core/src/hanging-protocols
Unused as of yet, needs to be reimplemented as a service.
platform/core/src/utils/studyMetadataManager.js
Replaced with StudyMetadataStore
platform/core/src/DICOMSR/parseMeasurementsData.js
Replaced by measurements service.
platform/core/src/measurements
Replaced measurements API with measurements service. No timepoint API in use.
platform/core/src/utils/loadAndCacheDerivedDisplaySets.js
Need to implement derived dataSets differently through the displaySetService.
platform/core/src/lib/parsingUtils.js
Unused now we are using naturalized DICOM JSON everywhere.
platform/core/src/studies
Replaced with the DICOMWeb DataSource from the default extension.
platform/core/src/redux
No longer using redux.  It is unused. Are we actually setting web workers somewhere or is it just using defaults? If we aren’t we should move this to the cornerstone extension anyway.
platform/viewer/src/config.js
We aren’t using this anymore. Need to reimplement the errorHandler back into v2-main via appInit.js in the future.

@JamesAPetts, the only thing that concerns me are the conflicts. I'm not sure why we'd have any if these are for dead code.

Don't merge this yet, tested locally and the auto merge, although it has no conflicts, is broken.

Updated actually, was an easy fix, some unused code was pointing to removed redux code.


Improving the navbar of the website

The current navbar of the website looks bulky, has alignment, design and text issues. I want to make a better navbar with light animation, attractive design and better user interface that will attract more users and make it easier for users to navigate. Kindly assign me this issue.

I would like to contribute in this issue. kindly assign me with this issue

I can solve this issue very easily and fast.Please assign this to me under GSSOC'23 so i can start working on this


Failed to link subscription on startup: not implemented: SHOW SUBSCRIPTIONS

I'm getting the following error when trying to connect Kapacitor to InfluxDB (both running as Docker containers). When I disable subscriptions explicitly it seems to work, but why are subscriptions not working?
run: open server: open service *influxdb.Service: failed to link subscription on startup: not implemented: SHOW SUBSCRIPTIONS

InfluxDB version: 2.7
Kapacitor version: 1.6

v2 doesn't have the subscription API currently (?), according to another post I found ... disable subscriptions in the influxdb section with
disable-subscriptions = true

Just learned about kapacitor for the first time this morning and tried a minimal setup with docker. The provided examples use Influx 1.8 and as soon as I switch to 2.x I get the same error that OP experienced.
Is this a deprecated project? I am very surprised that kapacitor is meant to be used with influxdb, but it seems like current influxdb and current kapacitor can't talk to each other.

should we downgrade to influxdb 1.8 just to use kapacitor?


Footer is not always on bottom of page

🆕🐥 First Timers Only
This issue is reserved for people who have never contributed to Hiero or any open source project in general.
We know that creating a pull request (PR) is a major barrier for new contributors.
The goal of this issue and all other issues labeled by 'Good First Issue' is to help you make your first contribution to Hiero.
👾 Description of the issue
If you have a page with not much content the footer of the page is not always on the bottom of the page:

The given behavior can easily be recreated by adding a page (markdown) to content that defines simple as layout:
---
title: "Title of page"
layout: "simple"
---
content of the page

The footer is added directly in baseof.html.
📋 Step by step guide to do a contribution
If you have never contributed to an open source project at GitHub, the following step-by-step guide will introduce you to the workflow. More information and concrete samples for shell commands for each step can be found in our CONTRIBUTING.md file.
A more detailed general documentation of the GitHub PR workflow can be found here.

[ ] Claim this issue: Comment below that you are interested in working on the issue
[ ] Wait for assignment: A community member with the given rights will add you as an assignee of the issue
[ ] Fork the repository: You can do that in GitHub (by simply clicking the 'fork' button).
[ ] Check out the forked repository
[ ] Create a feature branch for the issue. We do not have a hard naming definition for branches but it is best practice to prefix the branch name with the issue id.
[ ] Solve the issue in your branch.
[ ] Commit your changes: Here, it is needed to add sign-off information to the commit to accept the "Developer Certificate of Origin" (https://developercertificate.org). More details can be found in our CONTRIBUTING.md
[ ] Start a Pull Request (PR): We have a pattern for naming pull requests that a GitHub Action checks. We use that pattern to support the creation of automatic release notes.
[ ] Check GitHub Actions: Several GitHub Actions will be triggered automatically for each PR. If a GitHub Action fails and you do not understand the cause of that error do not hesitate to add a comment to the PR and ask the Hiero developer community for support.
[ ] Wait for reviews: Members of the Hiero developer community will review your PR. If a reviewer finds any missing pieces or a problem, he or she will start a discussion with you and describe the next steps for solving the problem.
[ ] You did it 🎉: We will merge the fix in the develop branch. Thanks for being part of the Hiero community as an open-source contributor ❤

🎉 Contribute to Hacktoberfest
Solve this issue as part of the Hacktoberfest event and get a chance to receive cool goodies like a T-Shirt. 🎽
🤔 Additional Information
If you have any questions, just ask us directly in this issue by adding a comment. You can join our community chat at Discord. A general manual about open-source contributions can be found here.

Hello, I would like to contribute to this project.

Hi @hendrikebbers, I wish to contribute on this project.

@abinjustinkumaravel I assigned @perig99 since we commented earlier than you. @perig99 can you pls agree that you want to work on the issue? Otherwise I will assign @abinjustinkumaravel

I want to work on it :)

@hendrikebbers, I have a questin. Should I fork "main" or "hacktoberfest-text" branch? :)

@abinjustinkumaravel I will assign you

@hendrikebbers yes I will do that, Thanks for this opportunity.

Issue with Hugo Configuration File Not Being Located
Hi @hendrikebbers,
I'm encountering an issue when trying to run the project. Specifically, the hugo.toml configuration file is not being located properly. I tried installing Hugo using the following command:
sudo apt install hugo

However, I'm facing issues with the project configuration.
Here’s a screenshot of the error I'm getting:

Any help would be appreciated. Thanks in advance!


[BUG] windows server stops sending audio after a few seconds

Describe the bug
windows server stops transmitting sound after a few seconds - always. Then I have to stop server, and start server and reconnect from the remote phone to be able to hear again.
To Reproduce
Steps to reproduce the behavior:

Start server on windows, select device to capture, start server.
Connect from remote phone.
Wait for audio to stop transmitting without a network disconnection.

Expected behavior
Windows server to not stop sending audio until you hit stop server.
Server (please complete the following information):

OS: Windows 11 23H2 (22631.2861)
GUI or CMD: GUI
Version <IP_ADDRESS>/<IP_ADDRESS>

Android (please complete the following information):

Device: galaxy s23 ultra
OS: android 14
Version v0.0.14/15

Additional information
server.log:
[2024-01-13 11:24:46.090] [server] [info] tcp listen success on <IP_ADDRESS>:65530
[2024-01-13 11:24:46.090] [server] [info] endpoint_id: {<IP_ADDRESS>00000}.{f315e3f8-fc1b-49bc-95dd-8ddfe6594514}
[2024-01-13 11:24:46.090] [server] [info] udp listen success on <IP_ADDRESS>:65530
[2024-01-13 11:24:46.090] [server] [info] server started
[2024-01-13 11:24:46.090] [server] [info] select audio endpoint: Speakers (M-Audio M-Track Solo and Duo)
[2024-01-13 11:24:46.095] [server] [info] WAVEFORMATEX: wFormatTag: 65534, nBlockAlign: 8
[2024-01-13 11:24:46.095] [server] [info] AudioFormat:
format_tag: 3
channels: 2
sample_rate: 48000
bits_per_sample: 32

[2024-01-13 11:24:46.109] [server] [info] buffer size: 480000
[2024-01-13 11:24:46.114] [server] [info] device period: 3ms
[2024-01-13 11:24:50.576] [server] [info] accept <IP_ADDRESS>:50642
[2024-01-13 11:25:21.090] [server] [info] accept_udp_loop No connection could be made because the target machine actively refused it.
[2024-01-13 11:25:25.442] [server] [info] close <IP_ADDRESS>:50642
[2024-01-13 11:25:25.913] [server] [info] accept <IP_ADDRESS>:43018
[2024-01-13 11:26:05.101] [server] [info] close <IP_ADDRESS>:43018
[2024-01-13 11:26:05.481] [server] [info] accept <IP_ADDRESS>:35222
[2024-01-13 11:27:19.661] [server] [info] tcp listen success on <IP_ADDRESS>:65530
[2024-01-13 11:27:19.661] [server] [info] endpoint_id: {<IP_ADDRESS>00000}.{f315e3f8-fc1b-49bc-95dd-8ddfe6594514}
[2024-01-13 11:27:19.661] [server] [info] udp listen success on <IP_ADDRESS>:65530
[2024-01-13 11:27:19.661] [server] [info] server started
[2024-01-13 11:27:19.661] [server] [info] select audio endpoint: Speakers (M-Audio M-Track Solo and Duo)
[2024-01-13 11:27:19.664] [server] [info] WAVEFORMATEX: wFormatTag: 65534, nBlockAlign: 8
[2024-01-13 11:27:19.664] [server] [info] AudioFormat:
format_tag: 3
channels: 2
sample_rate: 48000
bits_per_sample: 32

[2024-01-13 11:27:19.678] [server] [info] buffer size: 480000
[2024-01-13 11:27:19.680] [server] [info] device period: 3ms
[2024-01-13 11:27:26.009] [server] [info] accept <IP_ADDRESS>:38038
[2024-01-13 11:27:56.682] [server] [info] accept_udp_loop No connection could be made because the target machine actively refused it.
[2024-01-13 11:28:00.108] [server] [info] server stopped
[2024-01-13 11:28:00.504] [server] [info] tcp listen success on <IP_ADDRESS>:65530
[2024-01-13 11:28:00.504] [server] [info] udp listen success on <IP_ADDRESS>:65530
[2024-01-13 11:28:00.504] [server] [info] endpoint_id: {<IP_ADDRESS>00000}.{f315e3f8-fc1b-49bc-95dd-8ddfe6594514}
[2024-01-13 11:28:00.504] [server] [info] server started
[2024-01-13 11:28:00.505] [server] [info] select audio endpoint: Speakers (M-Audio M-Track Solo and Duo)
[2024-01-13 11:28:00.506] [server] [info] WAVEFORMATEX: wFormatTag: 65534, nBlockAlign: 8
[2024-01-13 11:28:00.506] [server] [info] AudioFormat:
format_tag: 3
channels: 2
sample_rate: 48000
bits_per_sample: 32

[2024-01-13 11:28:00.517] [server] [info] buffer size: 480000
[2024-01-13 11:28:00.519] [server] [info] device period: 3ms
[2024-01-13 11:28:01.642] [server] [info] accept <IP_ADDRESS>:48632
[2024-01-13 11:28:31.979] [server] [info] accept_udp_loop No connection could be made because the target machine actively refused it.
[2024-01-13 11:28:35.597] [server] [info] server stopped
[2024-01-13 11:28:35.948] [server] [info] tcp listen success on <IP_ADDRESS>:65530
[2024-01-13 11:28:35.948] [server] [info] endpoint_id: {<IP_ADDRESS>00000}.{f315e3f8-fc1b-49bc-95dd-8ddfe6594514}
[2024-01-13 11:28:35.948] [server] [info] udp listen success on <IP_ADDRESS>:65530
[2024-01-13 11:28:35.948] [server] [info] server started
[2024-01-13 11:28:35.948] [server] [info] select audio endpoint: Speakers (M-Audio M-Track Solo and Duo)
[2024-01-13 11:28:35.949] [server] [info] WAVEFORMATEX: wFormatTag: 65534, nBlockAlign: 8
[2024-01-13 11:28:35.949] [server] [info] AudioFormat:
format_tag: 3
channels: 2
sample_rate: 48000
bits_per_sample: 32

[2024-01-13 11:28:35.959] [server] [info] buffer size: 480000
[2024-01-13 11:28:35.963] [server] [info] device period: 3ms
[2024-01-13 11:28:37.497] [server] [info] accept <IP_ADDRESS>:51344
[2024-01-13 11:29:07.865] [server] [info] accept_udp_loop No connection could be made because the target machine actively refused it.
[2024-01-13 11:29:14.655] [server] [info] close <IP_ADDRESS>:51344
[2024-01-13 11:29:15.171] [server] [info] accept <IP_ADDRESS>:60074
[2024-01-13 11:29:18.530] [server] [info] server stopped
[2024-01-13 11:29:18.763] [server] [info] tcp listen success on <IP_ADDRESS>:65530
[2024-01-13 11:29:18.763] [server] [info] endpoint_id: {<IP_ADDRESS>00000}.{f315e3f8-fc1b-49bc-95dd-8ddfe6594514}
[2024-01-13 11:29:18.764] [server] [info] udp listen success on <IP_ADDRESS>:65530
[2024-01-13 11:29:18.764] [server] [info] server started
[2024-01-13 11:29:18.764] [server] [info] select audio endpoint: Speakers (M-Audio M-Track Solo and Duo)
[2024-01-13 11:29:18.764] [server] [info] WAVEFORMATEX: wFormatTag: 65534, nBlockAlign: 8
[2024-01-13 11:29:18.764] [server] [info] AudioFormat:
format_tag: 3
channels: 2
sample_rate: 48000
bits_per_sample: 32

[2024-01-13 11:29:18.773] [server] [info] buffer size: 480000
[2024-01-13 11:29:18.775] [server] [info] device period: 3ms
[2024-01-13 11:29:19.907] [

Open the task manager to check the network  traffic of "AudioShareServer.exe" to see whether  it send packets.

It does, 3.1 Mbps on average. The app doesn't register a disconnect or timeout either.

If there is always 3.1Mbps even when no sound, then it's the network reason. The phone can't receive the UDP packet from PC and won't disconnect TCP connection. It's a kind of packet loss. Audio Share use UDP to transfer the audio data, so it doesn't have any gaurantee to let phone receive the packets.
You can connect the PC using LAN to test it and see whether keep hearing sound.

I'll close this issue. If you still have problem, you can reopen it.

Yeah I still have the problem, but somehow sonobus doesn't for example. Without me plugging in a CAT5 and being on the same physical network with the receiver which is impossible to do geographically. Anyway, it's fine, thanks for looking into it.


Add cancel button to Create a new project/task forms

Motivation and context
Fixes #7579 I have added a cancel button to the Create a new project and Create a new task forms which will take the user to the main page of projects/tasks.

Checklist

[x] I submit my changes into the develop branch
[x] I have linked related issues (see GitHub docs)

License

[x] I submit my code changes under the same MIT License that covers the project.
Feel free to contact the maintainers if that's a concern.

Hello,
From you use-case:

When I created a project the first time and clicked the submit and continue button i was expecting it to create the project and take me back to the projects main page but it didnt and then i searched for a back button which wasnt there.

On create project page, what is the difference between "Cancel" button and "Projects" button in the header?
I believe instead of creating buttons we need proper navigation bar, e.g. using Antd breadcrumbs: https://ant.design/components/breadcrumb

Hello,
From you use-case:

When I created a project the first time and clicked the submit and continue button i was expecting it to create the project and take me back to the projects main page but it didnt and then i searched for a back button which wasnt there.

On create project page, what is the difference between "Cancel" button and "Projects" button in the header?
I believe instead of creating buttons we need proper navigation bar, e.g. using Antd breadcrumbs: https://ant.design/components/breadcrumb

If a user clicks on the 'Projects' button in the navbar, it will navigate them to the main or first page of projects. If the user was on the second or third page, this might result in a less optimal user experience. On the other hand, if the user clicks on the 'Cancel' button, they will be directed back to the page they came from. As for breadcrumbs I think, implementing them might be considered overkill since our project doesn't have a deep hierarchy.

I am not sure about the case when user creates a new project from page N and he needs to return to the same page. Why not to open a new browser tab when clicking "Add project" then?
Navigation with breadcrumps is not about you project. By contributing to the repository, many users will be affected by these changes. I do not think Cancel button provides natural way of navigation, it should be something unified on all the pages (We may also create jobs, cloud storages, ML models).

I am not sure about the case when user creates a new project from page N and he needs to return to the same page. Why not to open a new browser tab when clicking "Add project" then?
Navigation with breadcrumps is not about you project. By contributing to the repository, many users will be affected by these changes. I do not think Cancel button provides natural way of navigation, it should be something unified on all the pages (We may also create jobs, cloud storages, ML models).

I am not sure about the case when user creates a new project from page N and he needs to return to the same page. Why not to open a new browser tab when clicking "Add project" then?
Navigation with breadcrumps is not about you project. By contributing to the repository, many users will be affected by these changes. I do not think Cancel button provides natural way of navigation, it should be something unified on all the pages (We may also create jobs, cloud storages, ML models).

I have encountered situations where I am low on RAM because the project consumes a significant amount of it. Opening a new tab exacerbates the issue. When I refer to 'our project,' I am specifically talking about the CVAT project. Now, as I navigate through all the pages, I believe that the navigation system needs improvement, and implementing breadcrumbs could enhance it and I will work on it.

(We may also create jobs, cloud storages, ML models)
I dont understand what you are trying to say here.

Problem is more common then just getting back from Create task/project page. And, I agree that such solution may be quite complex to implement, but that is not a reason to implement "temporary" solutions as "Cancel" button.

As I was new to the project and hadnt used it for long so I didnt understand that the problem was common and thus the Cancel button didnt seem as a temporary solution. Implementing breadcrumbs isnt that complex to implement.

I like the first one

We will add breadcrumbs to all pages as is seen in other web apps?
If yes then we should decide on where should they be located.
If we implement breadcrumbs then we will remove the buttons like these?

the back button here

the cancel button here

Hello,

We will add breadcrumbs to all pages as is seen in other web apps? If yes then we should decide on where should they be located.

I think yes. Maybe except for annotation view, because there are a lot of elements. Sure, we need a design first before development.

If we implement breadcrumbs then we will remove the buttons like these?

Yes.

I have encountered situations where I am low on RAM because the project consumes a significant amount of it.

This is about performance. How much is significant amount? If you believe there are problems, need to investigate them, but we need more details. I know only annotation view may consume RAM to store decoded images in some amount and annotations. On other views it should not be a problem now.

I dont understand what you are trying to say here.

I meant that we may create other resources. But you proposed to add Cancel button to Project and Task only.
Also, IMHO, 3 buttons is too much in bottom of the forms

Hello,

We will add breadcrumbs to all pages as is seen in other web apps? If yes then we should decide on where should they be located.

I think yes. Maybe except for annotation view, because there are a lot of elements. Sure, we need a design first before development.

If we implement breadcrumbs then we will remove the buttons like these?

Yes.

I have encountered situations where I am low on RAM because the project consumes a significant amount of it.

This is about performance. How much is significant amount? If you believe there are problems, need to investigate them, but we need more details. I know only annotation view may consume RAM to store decoded images in some amount and annotations. On other views it should not be a problem now.

I dont understand what you are trying to say here.

I meant that we may create other resources. But you proposed to add Cancel button to Project and Task only.
Also, IMHO, 3 buttons is too much in bottom of the forms

So does the project have a ui designer who will design it?
Does the project have a figma file which has all of the ui made so we can design init? If not should we make one as it will be helpful I am quite proficient with figma?

Unfortunately, I do not think that sharing Figma project to 3rdparty contributors is possible :(

Unfortunately, I do not think that sharing Figma project to 3rdparty contributors is possible :(

So you will design it and send me the Pictures or should I just start it?
Having a proper design will help alot.

That is out of current scope for us. Let's postpone this modification.

That is out of current scope for us. Let's postpone this modification.

Ok.


Adding SAN filter to Vault Destination Plugin

Adds a regex filter to prevent non-matching SAN names from being uploaded to the Vault Destination.

This filter is completely optional, defaults to pass
If and SAN fails the regex filter the cert will not upload to Vault and the plugin will error
Logs record the certificate did not pass the SAN filter
Allows for more granular control of SAN certificates allowed per destination.

Coverage decreased (-0.06%) to 61.509% when pulling a801112cf6b757d49ff5258c2fb3a41f2d27dacc on alwaysjolley:lemur_vault_plugin into ec7da60d049de6bdd3ce30eb78df24759f036a39 on Netflix:master.

Thanks for the PR. Merging this.


Media information leaks

media.webkitVideoDecodedByteCount and media.webkitAudioDecodedByteCount seem to provide the byte count of a cross origin video after using media.play() not sure if that could be used in a attack still exists in chrome despite having a report from 2016 https://bugs.chromium.org/p/chromium/issues/detail?id=632380
The following can detect if a resource is of the type video, audio or image.
async function getType(url) {
    // Detect if resource is audio or video
    let media = document.createElement("video");
    media.src = url;
    await new Promise(r=>setTimeout(r,50));
    if (media.videoWidth) {
    return "video";
    } else if (media.duration) {
    return "audio"
    }
    // Detect if resource is an image
    let image = new Image();
    image.src = url;
    await new Promise(r=>setTimeout(r,50));
    if (image.width) return "image";
}

What do you think @terjanq ?

Looks good to me.

We could potentially extend these types with css / scripts / (maybe pdfs as well). Creating a new article for detecting media type would be nice to have, there is one in experimental but it's not working anymore.

Started on #109 Im also trying to document element proprieties that could be exploited.

Strange behavior when a resource gets blocked by CORB the time is > 1000 but valid javascript is < 1
However may need to run two times.
Any idea why this happens? @terjanq @masasron
function isScript(url) {
  a = document.createElement("script");
  a.src = url;
  a.onload = e => {
    loaded = performance.now();
  }
  document.head.appendChild(a);
  requestIdleCallback(() => {
    let renderTime = performance.now() - loaded;
    console.log(renderTime);
    console.log(renderTime < 100);
  });
}

With an image url the renderTime is > 10000 even but corb is meant to make it blank????

It seems to work because CORB does not cache blocked resources.
I should have noticed that :/

It would be interesting if render timings could be exposed by adding two checks with requestAnimationFrame to the browsers render queue.

Moved to https://github.com/xsleaks/wiki/pull/109


Module already loaded

If I install any extensions manually, I get the following error:
PHP Warning:  Module 'xml' already loaded in Unknown on line 0
(xml in this case which should be in fact installed by default)

BTW I am on 1.19.7

BTW I am on 1.19.7

What "manually" means in this case? phpbrew ext install xml or go to extension source and phpize...?

Sorry for missing info, phpbrew ext install xml

Ok, so you you installed xml as a bundled module - some variant like +default or +xml and then did phpbrew ext install xml at a later stage. The problem is that we currently don't check for bundled extensions before touching the .ini file and I guess we can improve this somehow.
I can't remember why we avoided this check in the past, let's see if it can be done now :)

Exact steps:
$ phpbrew install 5.6.8
$ phpbrew ext install xml

Exact steps:
$ phpbrew install 5.6.8
$ phpbrew ext install xml

Yes, the xml extension is installed by default if you don't give any variant too because the installers needs to read xml data from extensions.

I have ran into this problem as well. I cannot remember the steps clearly. it seems I installed an old php version, then use phpbrew ext install to install some extension, after that I installed another php with the extension
phpbrew install 5.5
phpbrew ext instan XXX
phpbrew install 5.6 +XXX

(XXX means one of the extensions)

Is it because we can't distinguish shared / static module?


feat: setup semantic release and crates.io publishing ( PROOF-624 )

Rationale for this change
We need to version the blitzar-rs code properly. For that, we use semantic-release with the guidelines highlighted here. Assets are published to both GitHub releases and crates.io during this process.
What changes are included in this PR?

Add semantic-release workflow to CI. It only executes during merges to the main.
Push the Blitzar crate to GitHub releases.
Publish the Blitzar crate to crates.io.
Add contributing file to the repository.

Are these changes tested?
No. We'll see the results after the code is merged into the main.

@rnburn @grabskimm ping

:tada: This PR is included in version 0.2.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


the completion stats page (/completion) on the diagnostics page is not populated

The completion stats diagnostics page for the analysis server doesn't seem to be populated. Perhaps just when running with the new analysis driver?

I suspect that there are other aspects of the status pages that are either obsolete (with the new driver) or just were not kept working with the new driver.


Split code tab and variable tab

Issue Report Checklist

[x] Searched the issues page for similar reports
[x] Read the relevant sections of the Spyder Troubleshooting Guide and followed its advice
[x] Reproduced the issue after updating with conda update spyder (or pip, if not using Anaconda)
[ ] Could not reproduce inside jupyter qtconsole (if console-related)
[x] Tried basic troubleshooting (if a bug/error)

[x] Restarted Spyder
[x] Reset preferences with spyder --reset
[x] Reinstalled the latest version of Anaconda
[ ] Tried the other applicable steps from the Troubleshooting Guide

[x] Completed the Problem Description, Steps to Reproduce and Version sections below

Problem Description
Some issue has been bugging me with Spyder 4, is that a certain point I cannot decrease the size of the variable explorer window tab, with the tab where the code being too small to read the code.
What steps reproduce the problem?

Happens usually when I have a lot of variables in the variable explorer tab
I increase its size, cannot decrease it back

What is the expected output? What do you see instead?
Ability to shift the variable tab more to the right of the screen (i.e. decrease it's width). As you see in the picture below, basically the width of the variable explorer tab is almost as big as that of the code tab and this cannot be decreased (by pulling the separator to the right).

Paste Traceback/Error Below (if applicable)

NA

Versions

Spyder version: 4.1.2
Python version: 3.7.4
Qt version: 5.9.6
PyQt version: 5.9.2
Operating System name/version: Windows 10

Dependencies

# Mandatory:
atomicwrites >=1.2.0           :  1.3.0 (OK)
chardet >=2.0.0                :  3.0.4 (OK)
cloudpickle >=0.5.0            :  1.3.0 (OK)
diff_match_patch >=20181111    :  20181111 (OK)
intervaltree                   :  None (OK)
IPython >=4.0                  :  7.13.0 (OK)
jedi =0.15.2                   :  0.15.2 (OK)
nbconvert >=4.0                :  5.6.1 (OK)
numpydoc >=0.6.0               :  0.9.2 (OK)
paramiko >=2.4.0               :  2.7.1 (OK)
parso =0.5.2                   :  0.5.2 (OK)
pexpect >=4.4.0                :  4.8.0 (OK)
pickleshare >=0.4              :  0.7.5 (OK)
psutil >=5.3                   :  5.7.0 (OK)
pygments >=2.0                 :  2.6.1 (OK)
pylint >=0.25                  :  2.4.4 (OK)
pyls >=0.31.9;<0.32.0          :  0.31.9 (OK)
qdarkstyle >=2.8               :  2.8 (OK)
qtawesome >=0.5.7              :  0.7.0 (OK)
qtconsole >=4.6.0              :  4.7.2 (OK)
qtpy >=1.5.0                   :  1.9.0 (OK)
rtree >=0.8.3                  :  0.9.3 (OK)
sphinx >=0.6.6                 :  2.4.4 (OK)
spyder_kernels >=1.9.0;<1.10.0 :  1.9.0 (OK)
watchdog                       :  None (OK)
zmq >=17                       :  18.1.1 (OK)

# Optional:
cython >=0.21                  :  0.29.15 (OK)
matplotlib >=2.0.0             :  3.1.3 (OK)
numpy >=1.7                    :  1.18.1 (OK)
pandas >=0.13.1                :  1.0.3 (OK)
scipy >=0.17.0                 :  1.3.1 (OK)
sympy >=0.7.3                  :  1.5.1 (OK)

@steff456, please take a look at this one to see if you can reproduce it.

@steff456  maybe to help in replicating this, if you open a fresh .py file, you can drag the separator to the the far right of the screen, but if you're on a old .py file with a lot of code already written in it there is a constrained limit as to how far you can pull the separator to the right. But today I find out a way to reset this limit, is doing a reset to the default layout.

I'm not able to reproduce this issue, even if I create more than 1000 long name variables with a very long string.

As I noticed, it's less related to the length of variable names, and more related to having a spyder project with a layout that becomes reloaded whenever you load the project. Like one instance I was able to see this is that if I open a new .py file I can slide left right normally. Switching the focus view on one of the py files of the project, the slider jumps to the last project related position and cannot be dragged all the way to the right. But in any case, I managed to have this dealt with using the reset to default layout option... So because it is hard to replicate, we can close this issue, unless others raise it?

Managed to get the issue again

And this after resetting the layout

As I noticed, it's less related to the length of variable names, and more related to having a spyder project that automatically saves a layout and reloads whenever you load the project. Like one instance I was able to see this is that if I open a new .py file I can slide left right normally. Switching the focus on one of the py files of a old project, the slider jumps to the last project related position and cannot be dragged all the way to the right. But in any case, I managed to have this dealt with using the reset to default layout option... So because it is hard to replicate, we can close this issue, unless others raise it?

Can you please give me more detail of how to replicate this issue, are you working in a project? Which changes did you do to the layout? If you can give me a step by step of how do you get the error will be amazing :)!

Well honestly I did not touch the default spyder layout... Yes I'm working on project linked to my github desktop somehow, I did not touch the layout at all. Honestly I don't know how to replicate it everytime, because I notice that it became this way all of a sudden. So probably I'm running a lot of code and some of the code involves printing pandas and lists in the console, maybe an overloaded console does this? I'll keep my eye on this, but I'm thinking that next time this happens (which is probably soon), I can try to save the layout maybe share it across

Ok I believe I know the cause now, basically, mid-way running the code I press accidentally F10, and it opened this and caused the seperator to be stuck

Ok I believe I know the cause now, basically, mid-way writing some code I press accidentally F10, and it opened this and caused the seperator to be stuck

This error is already fixed and it'll be part of our next version (4.1.3) to be released at the end of the month.

Hi @ccordoba12 ,
I just updated to 4.1.3 and the issue is still there, where the seperator is getting stuck and the right most pane of spyder is taking up a lot of the space and can't be shifted anymore... But on the positive side, when pressing F10 I am not getting an error anymore.

Hi @kaleb-keny, sorry to hear the issue is still there. Will reopen.
Question: is this happening when using projects only, or without projects you have seen the issue?
Cheers!

Hi thanks for reopening the issue, it occurs in both projects and without projects... It is quite annoying for me because I tend to use the F9 a lot and I often press F10  by mistake

Will try to check to see if we can reproduce it. Will need to launch the windows VM :-)

Let me know if I can help, thanks for having a look

@kaleb-keny tried for a while opening and closing projects and trying F9 and F10, but I cannot see the behavior. Are you using full screen mode? multiple monitors? anything "peculiar" in your setup?

@kaleb-keny I can reproduce this. The work around is to close the profiler pane. Go to view->panes->uncheck "profiler". Of course if you accidentally hit F10 it will open the profiler pane again. You could also change the profiler hotkey. Also consider code cells instead of running lines: https://docs.spyder-ide.org/editor.html#defining-code-cells
I guess the fix for this would be to decrease the minimum width of the profiler pane if possible.

@bcolsen you are right, indeed as you mentioned closing the profiler pane does the trick... Thanks for pointing it out. Definitely your solution would work.
Yeah I use code cells all the time...
@goanpeca I guess then the issue is that the width of the profiler pane has a fixed minimum that is much larger than that of the other panes on the right, and therefore taking up a lot of the space on the screen. So just to reproduce just pressing F10 would bring up the profiler pane that takes more of the space of the screen... For your questions, I wasn't using full screen mode, although using it the behavior still takes place, single monitor laptop with out of the box anaconda installation with the default specs.

@bcolsen I just changed the hotkey, the most obvious solution lol thanks a lot for pointing it out... Yeah I understand now what you meant by using the code cells, yeah I use them all the time, but in certain instances and I just want to know what this line exactly does... hence the use of F9... But thanks for the help, I believe you changing the shortcut does the trick for me with this.

Thanks @bcolsen for nailing this.
Glad you found a workaround @kaleb-keny 😅
We should probably provide the same minimum (reasonable) width for all plugins to avoid running into this issue in the future and with other layout configurations.


foxx-manager exit codes

Where can I find the exit values of foxx-manager? I'd like to script my (re)deployment and want to be sure my own exit values don't interfere with whatever foxx-manager uses.
I think this should be documented somewhere (for other commandline tools too). And/Or having a range of safe exit values that aren't used by any arango cli tool would useful too for people writing scripts.
If you could point out the place(s) or patterns to grep for in the source I'd be quite happy already

foxx-manager uses the "--javascript.execute" command line option to execute a single command and then terminate. I think it would be good to implement this: if that command throws an exception with an error code this error code is reflected in the exit code of the arangosh executable. Then foxx-manager script could report the error as well. I do not really know how difficult this.

fixed by 7780b48539718a59bcec00a82788dd9712dfe853


Dead link

Hi,
https://learn-anything.xyz/ -> dead actually
https://github.com/sdmg15/Best-websites-a-programmer-should-visit/blob/master/vorillaz.github.io/devicons -> 404

The link is walking https://learn-anything.xyz/

Bro can you help me with compilebox library?

Ok no problem but you should consider opening your  own issue. Thanks.


chore: increased timeout to other lang standards

Context: video API flaky across all languages
Fixes #1876 #1877

@tbpg Can u merge this for me?

This increases the delay between retry attempts. It doesn't increase the timeout of each individual attempt. Is that the intention?

I wanted to increase timeout on each attempt. How do I accomplish that?

This increases the delay between retry attempts. It doesn't increase the timeout of each individual attempt. Is that the intention?

I wanted to increase timeout on each attempt. How do I accomplish that?

We don't currently set a timeout on the client side. If you wanted, you could overwrite ctx using context.WithTimeout before this line:
https://github.com/GoogleCloudPlatform/golang-samples/blob/73d60a5de091dcdda5e4f753b594ef18eee67906/videointelligence/annotate/logo_detection_gcs.go#L42
Here is an example:
https://github.com/GoogleCloudPlatform/golang-samples/blob/73d60a5de091dcdda5e4f753b594ef18eee67906/storage/buckets/add_bucket_label.go#L39-L40
Of course, that will show up in the sample code itself, not just the test.

We don't currently set a timeout on the client side. If you wanted, you could overwrite ctx using context.WithTimeout before this line:
https://github.com/GoogleCloudPlatform/golang-samples/blob/73d60a5de091dcdda5e4f753b594ef18eee67906/videointelligence/annotate/logo_detection_gcs.go#L42
Here is an example:
https://github.com/GoogleCloudPlatform/golang-samples/blob/73d60a5de091dcdda5e4f753b594ef18eee67906/storage/buckets/add_bucket_label.go#L39-L40
Of course, that will show up in the sample code itself, not just the test.

@tbpg PTAL refactored accorinding to the feedback

@tbpg PTAL refactored accorinding to the feedback


No longer remove channels when their subscriptions are unregistered

Coverage increased (+0.06%) to 75.803% when pulling f278fcf17508b741792588b7b2bab7b3a2964f66 on configurable-channel-remove into aed5bb895533fc97815f57c27531aae23233d5e8 on master.


Board numbers validations should be dynamic

https://github.com/cyanfish/heltour/blob/master/heltour/tournament/models.py#L1128-L1144
this hard codes a max of 8 boards, it should dynamically pull that from the season settings.

the code linked here doesn't have anything to do with board numbers anymore.
the only hard coded board number i see in models.py is:
https://github.com/Lichess4545/heltour/blob/15dce1b2ab6bc21822ed258472396161933c4d41/heltour/tournament/models.py#L1159-L1172
so i assume it's about that. even if that's 12 boards now. i don't really think we will ever need more than 12 boards.
however probably would still be better if this was not hard coded.


Should we nest variables in s-strings?

To me it seems that while functions are defined through s-string substitutions, they are essentially opaque to the compiler so there's not much it can do to ensure semantic correctness.

Yes I think this is spot-on. We're using literal replacement and expecting semantic correctness. If we use semantic replacement, it works — i.e. func fun3 n d -> n / d.

I'm not sure of the best solution — the current design is correct is the literal sense, but at least with these examples, it's clearly not doing what the user intends.
Potential reasons to not wrap / nest the variable:

Are there cases where nesting the variable would be wrong? Seems unlikely at first glance.
I'm hesitate to have an additional parsing stage to remove superfluous parentheses

Alternatively, is there a simple heuristic we could use to decide whether to nest? e.g. "has non-word characters" (though this makes the special-cases worse, not better)
Originally posted by @max-sixty in https://github.com/prql/prql/issues/1116#issuecomment-1323588180

I also agree with @snth in #1116: the PRQL compiler cannot see inside the s-string.
I'm not so worried about simply leaving each function parameter's expansion wrapped in (...) - it would be correct, easily explicable, and mostly not "in the way". (The use case of people reading the generated SQL to learn PRQL will still work. Once you start using functions heavily, you've internalized most of how PRQL works.)
So... I think we agree that adding paren's to my numeric parameter example would "do the right thing". But what about string parameters? For example, the URL in the book:
select url = f"http{tls}://www.{domain}.{tld}/{page}"

turns into:
SELECT
  CONCAT(
    'http',
    tls,
    '://www.',
    domain,
    '.',
    tld,
    '/',
    page
  ) AS url
FROM
  web

In a one-out-of-one test, I used Postgres Online to test that example (I substituted "tls", "domain", etc names for columns in the "scientist" table), then ran the query. It worked as expected.
I then wrapped those parameters in (...) and the query also succeeded. One out of one! Ship it! :-)

the PRQL compiler cannot see inside the s-string.

That's the essence of it.
Compiler treats s-strings as a blackbox expression with unknown type. They are an escape hatch for accessing SQL underneath and when you use them, you take the responsibility for producing correct SQL.
@max-sixty I do have a counter example for adding parenthesis:
func set_schema_and_select column -> s"; SET search_path TO 'my_schema'; SELECT {column}"

from employees
select [set_schema_and_select first_name, last_name]

... which compiles to:
SELECT
;
SET
  search_path TO 'my_schema';
SELECT
  first_name,
  last_name
FROM
  employees

I think that we should treat s-strings as unsafe in Rust. Heavily discouraged, but available as a last resort.

Great example @aljazerzen

I think that we should treat s-strings as unsafe in Rust. Heavily discouraged, but available as a last resort.

✔

Great example @aljazerzen

I think that we should treat s-strings as unsafe in Rust. Heavily discouraged, but available as a last resort.

✔

So I would vote to not proceed with this at the moment; instead we should invest in minimizing the need for s-strings. They'll always be available, but will at times require active attention from the user.

Let me see if I understand the current state of the discussion, with an eye toward documenting it to avoid others from stumbling as I have.
The proposal is:

Leave S-strings and F-strings as-is, and put the responsibility for correctness to the user.
As we learn of new awkward cases, PRQL can add more facilities/functions to the language that it does check.

I think this is reasonable. Here's proposed wording to document the decision. Feel free to edit (or reject):

Warning: The PRQL compiler simply places a literal copy of each variable into the resulting string without further checking. Considerations:

Because F-strings and S-strings are opaque, the PRQL compiler cannot do any checking. You should ensure that the resulting SQL is what you expect.
Let us know if you encounter cases where it is difficult to generate the SQL that you need. We will consider extending PRQL to handle the case.

PS How did we find ourselves in this rabbit hole? Here's what I remember:
I wanted to make a "percent-increase" function. 100*( new - old ) / old. But that didn't give the correct result if it was all integer data. So I created a S-string to CAST() the numerator. But this lead to an incorrect result if the denominator was, itself, a quotient... So paren's around the denominator worked, but that felt alarming, so I wrote up the report.
BUT... PRQL now passes full decimal values through, so I can write 100.0 * (new - old)/old No need for S-string or CAST() - the PRQL compiler handles it all.
Thanks for listening

Thanks @richb-hanover
I think the docs text is good! I know you're more active on issues than code so I can add if you prefer...

Yes, please do add the text next time you're looking at the Book. Thanks.


Large parts in the parts panel

Hi, how could I reduce the size of the parts in the parts panel?
Thanks

Hi urllib2,
Do you mean relative size of some large parts, such as base plates? (which can be done in pli.js)
or the complete PLI, which is done by dragging the PLI window to the desired size?
or the default size which is done by setting the options pliMaxWidthPercentage and pliMaxHeightPercentage as shown and documented in sample_instructions.htm?
Best regards
/ Lasse

Hi Lasse,
I mean, in the parts panel there are some big parts. I want to know if there is a way that let me reduce their size so it becomes more realistic.

Right now the size is maximized in the PLI's (Parts list images) for the allowed size of the white box. The allowed size of the box is determined by the user dragging the handle, and in code by setting pliMaxWidthPercentage and pliMaxHeightPercentage.
If there is another restriction to the size of PLI's which you would like to see implemented, then please state how you would like to see the restriction on the size.

And in which file could I find the pliMaxWidthPercentage and pliMaxHeightPercentage settings?

Hi urllib2,
It is documented in sample_instructions.htm lines 131 and 132.
Best regards
/ Lasse


Fix: broken Xdai ref

[x] replace ../deployments/xdai.json with ..gnosis.json

Also need to change the network value in deployments/gnosis, looks like it's still currently xdai. Also cam change in hardhat config. Every reference to xdai (except potentially block explorer urls can be changed to gnosis I believe

ok, have fixed all the other locations I could find, apart from any references to the subgraph psparacino/v1-xdai-smart-invoices


Failed to send MGMT_COMMISSIONER_SET.req: NoBufs

Describe the bug A clear and concise description of what the bug is.
We deployed 100 devices with different PSKd. All devices are commissioning at the same time.

To Reproduce Information to reproduce the behavior, including:

Git commit id  https://github.com/openthread/ot-br-posix/commit/3a98779dc9f0875af9c7b137e764c9663bfdc9c3
IEEE 802.15.4 hardware platform
Build steps
Network topology

Expected behavior A clear and concise description of what you expected to happen.
Console/log output If applicable, add console/log output to help explain your problem.
Additional context Add any other context about the problem here.

@lancersky , thanks for raising this issue.
Can you provide more insight into how you are driving the Commissioner? A MGMT_COMMISSIONER_SET.req message is sent each time a joiner is added to the Commissioner. I suspect the NoBufs error is due to issuing multiple joiner add commands back-to-back. The OpenThread Commissioner is relatively simple and does not have any throttling mechanism when the user requests to add joiners back-to-back quickly. If this is the issue, is it possible to add some delay between each joiner add?

Hi @jwhui ,
I drove the Commissioner with the following command and no delay between each joiner add. I will add some delay to have a try. Thanks.
ubus call otbr joineradd '{"pskd":"String","eui64":"String","timeout":"Integer"}'

Hi @jwhui
I have another question.
Do I need to execute commissioner joiner remove before commissioner stop?

Hi @jwhui I have another question. Do I need to execute commissioner joiner remove before commissioner stop?

No, calling stop will also clear the joiner list.
https://github.com/openthread/openthread/blob/a6032491b85e49b2c0a42ffd9ba6be4205bddcb7/src/core/meshcop/commissioner.cpp#L348

Closing stale issue.


[1.20] Dissolution chamber not accepting inputs when inputs locked

Whenever I try to lock the recipe to automate a frame, for example, the machine wont accept any input.
Tried to set pull from any side of the machine with no luck at all, the only way I can use it is by crafting a frame at a time.
All of this by playing on Allthemods9.
Industrial Foregoing Version:
industrial-foregoing-1.20.1-3.5.9
Titanium Version:
titanium-1.20.1-3.8.21
Crashlog If Applicable (Upload to pastebin/gist):

A number of machines appear to have this behavior, like the plant sower, which also seems to have its placement grid rotated 90 degrees.

Hello, will you fix this with an update, or should we add the code ourselves?

Update titanium? It was marked as completed

I don't quite understand. You closed my ticket with a problem, with a duplicate reason and referred here. What is the solution to the problem?

The issue was fixed 8h ago. Update titanium

Workaround for the previous version:
Insert items one at a time. Vanilla hoppers can do it, as can setting LaserIO's item transfer being limited to one per action.

Still seeing the same bugged behavior on titanium-1.20.1-3.8.23 in DW20-1.20 1.3.1 pack.
To repo, I change the LaserIO node to insert from 1 item per 20 ticks (the workaround) to the default of 8. If the number trying to be inserted is greater than the the free slots for that item, nothing is inserted.


fix: fix value in sanitized options

Description

Fix value in sanitized options

Testing required outside of automated testing?

[x] Not Applicable

Screenshots (if appropriate):

[x] Not Applicable

Rollback / Rollforward Procedure

[x] Roll Forward
[ ] Roll Back

Reviewer Checklist

[ ] Description of Change
[ ] Description of outside testing if applicable.
[ ] Description of Roll Forward / Backward Procedure
[ ] Documentation updated for Change

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


fix: FindDependencyProperty AmbiguousMatchException

GitHub Issue (If applicable): closes #1198
PR Type
What kind of change does this PR introduce?

Bugfix

What is the current behavior?
FindDependencyProperty on an overridden property throws:

System.Reflection.AmbiguousMatchException: 'Ambiguous match found for 'Microsoft.UI.Xaml.UIElement Microsoft.UI.Xaml.Visibility Visibility'.'

What is the new behavior?
^ No more.
PR Checklist
Please check if your PR fulfills the following requirements:

[ ] Tested code with current supported SDKs
[ ] Tested the changes where applicable:

[ ] UWP
[ ] WinUI
[ ] iOS
[x] Skia
[ ] Android
[ ] WASM
[ ] MacOS

[ ] Updated the documentation as needed:

[ ] General Doc Update
[ ] Controls Doc Update
[ ] Extensions Doc Update
[ ] controls-styles.md
[ ] lightweight-styling.md (LightWeight Styling Resource Keys)

[x] Runtime Tests and/or UI Tests for the changes have been added (for bug fixes / features) (if applicable)
[x] Contains NO breaking changes
[x] Associated with an issue (GitHub or internal)
[x] Commits must be following the Conventional Commits specification.

@Mergifyio backport release/stable/6.1


Retry http requests if requested range differs from data size

Have you read the FAQ and checked for duplicate open issues?
Yes
Is your feature request related to a problem? Please describe.
Avoid external http download issues.
Let's imagine we request to a server a chunk using byte ranges ( bytes=X-Y ) and:

The server returning less bytes than Y-X+1
Or the implemented http client from browser not returning the entire range.

Then video element will throw a media decode error, but maybe retrying the download can fix the issue.
Describe the solution you'd like
I've modified shaka.media.StreamingEngine.prototype.fetch_ to check the requested size vs the data downloaded. See fetch_ modifications example:
lib_media_streaming_engine_fetch_example.txt
Describe alternatives you've considered
I suppose the best approach should be modifying NetworkingEngine, for example:

Adding a parameter at makeRequest:
shaka.net.NetworkingEngine.makeRequest = function(uris, retryParams, checkSize)
shaka.net.NetworkingEngine.makeRequest = function(uris, retryParams, expectedSize)
Or modifying .request method
shaka.net.NetworkingEngine.prototype.request = function(type, request, checkSize )
shaka.net.NetworkingEngine.prototype.request = function(type, request, expectedSize )
Or adding a filterResponse?

And modifying shaka.net.NetworkingEngine.prototype.makeRequestWithRetry_ to check this value
I'm not an expert but... if it's accepted the Feature request I can try to do my best sending the NetworkingEngine modifications
Additional context
Maybe if can be added a player configuration to enable this check for all the range requests

Is an HTTP server allowed to return the wrong amount of data?  I expect that the only valid HTTP response with less data than requested is if the file actually ends.  If that's the case, then the server isn't wrong and a retry wouldn't help.
If there's evidence in the HTTP spec to say that it's the client's responsibility to handle less than the requested data in cases other than end-of-file, we could try to implement what you're suggesting.  Otherwise, it seems that something is wrong on your server.

Ok, as you told it's not client responsibility but I thought protecting the player from external errors ( embedded system firmware issues / server side bugs ... ) could be helpful to avoid player errors. If you think it's not necessary we can close the ticket.
Thanks in advance


Regular maintenance 202405

CI: Update to codecov/codecov-action@v4
Chore: Update development dependency poethepoet

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

Project coverage is 82.48%. Comparing base (9f5a4f0) to head (790fe57).
Report is 3 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main      #27      +/-   ##
==========================================
- Coverage   82.56%   82.48%   -0.09%
==========================================
  Files          12       12
  Lines         218      217       -1
==========================================
- Hits          180      179       -1
  Misses         38       38

Flag
Coverage Δ

unittests
82.48% <ø> (-0.09%)
:arrow_down:

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

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


add chip costume

add the chip from the doober43 classic, chip. specifically frame 1. i need to make a spinning chip project.

i think ur supposed to make this in the pull request section. (if you added something)

add the chip from the doober43 classic, chip. specifically frame 1. i need to make a spinning chip projec

you inow you can import any image into your pronect right


chore(metadata): extract metadata child components

This extracts Locations, Parties, & Roles to seperate files.
Hopefully this will help make Metadata a little more manageable.

I left out keywords for now as that will likely need to be reworked at some point anyways.

There are too many conflicts and changes within Metadata at this point and too many remaining review comments.


Remove 3rd year of decision table

JMC decided to remove the third year of the catch in the decision tables.

I think we have now (as of Dec 11, 2024) agreed to leave them in, and ask the SRG what they want. So we can leave this open and revisit it after that meeting.


Target platform’s minimum alignment requirements: example is needed

In the text snippet above it would be beneficial to have an example of what is "minimum alignment requirement". When I read that sentence for the first time I was sure that "minimum alignment requirements" is 64 bytes. But later, after I read that sentence 5 times I understood that here you mean values like 4, 8 or16.

Thanks for reporting it!


Additionof RAML files

Thought I'd start an initial PR into your branch @simonrankine for peer review.

Perhaps worth noting that as this API is held in raml/APIs/ rather than APIs/ it won't work with the test suite. Unless there's a particularly good reason not to it would help if the RAML and associated schemas/examples could follow the same directory structure as the other specs.


ListEmptyComponent isn't working as (I) expected

Description
The footer component get's displayed even if the sections prop (of the SectionList) is an empty list and the empty List component never get's displayed.
Reproduction Steps
I pass down an empty list as a prop (holidays) and start async fetching the data in a parent component. Once the data is fetched I update the parent component's state and thereby the props to the child that contains the SectionList
Sample Code
footer() {
    return <Text>The End</Text>
  }

  emptyList() {
    return <Text>Fetching</Text>
  }

  render() {
    return (
      <SectionList
        style={styles.container}
        sections={this.props.holidays}
        renderItem={this.renderItem.bind(this)}
        renderSectionHeader={this.renderSectionHeader.bind(this)}
        ListFooterComponent={this.footer.bind(this)}
        ListEmptyComponent={this.emptyList.bind(this)}
      />
    )

Solution
If it's a bug then it needs to be fixed.
Else the documentation have to be update to be clear (I be gladly to help out).
Additional Information

react-native-cli: 2.0.1
react-native: 0.44.0
Platform: iOS
Development Operating System: macOS
Build tools: iOS 10.3

Hi @Norfeldt, I'll take a look at it as soon as possible :)
Do you have no sections or do you have no data ? Basically can you clarify if your sections is an empty array[] or something like [{data: [], title: 'one section'}]. Thanks!

Hi @Minishlink
I pass an empty array to sections.
I clean my code a bit to make it more readable:
class ListCards extends Component {
  renderSectionHeader = ({ section }) => {
    return (
      <View style={styles.sectionHeader}>
        <Text style={{ fontSize: 18 }}>{section.key}</Text>
      </View>
    )
  }

  renderItem = ({ item }) => {
    return (
      <Card
        {...someProps}
      />
    )
  }

  footerComponent() {
    return (
      <Text style={styles.footerText}>
        The End
      </Text>
    )
  }

  emptyListComponent() {
    return <ActivityIndicator size="large" />
  }

  render() {
    return (
      <SectionList
        style={styles.container}
        sections={this.props.data}
        renderItem={this.renderItem.bind(this)}
        renderSectionHeader={this.renderSectionHeader.bind(this)}
        stickySectionHeadersEnabled={true}
        ListFooterComponent={this.footerComponent.bind(this)}
        ListEmptyComponent={this.emptyListComponent.bind(this)}
      />
    )
  }
}

Thanks for your added information :)
I just checked and the current behavior is:

A) if sections is an empty array ([]), the ListEmptyComponent is displayed
B) if sections is an array of sections with no data ([{data: [], key: 's1'}]), nothing is displayed

If you're in case A and the component is not displayed, there has to be an issue in your style or in your ListEmptyComponent...
For case B, it might indeed make sense to also display ListEmptyComponent when every sections has no data, or let users to render heterogeneously the ListEmptyComponent like renderItem...
In any way, I reckon that the documentation for SectionList's ListEmptyComponent could be improved.
Any insight @sahrens?

I'm pretty sure that it's case A, sine I in the parent element set it to be
an empty array.
I fail to see how it can be a style issue since I'm not fiddling around
with the 'visible' attribute. And regarding the component I tried to return
a simple react native 'Text' component..
On Wed, Jun 28, 2017, 22:04 Louis Lagrange<EMAIL_ADDRESS>wrote:

Thanks for your added information :)
I just checked and the current behavior is:

A) if sections is an empty array ([]), the ListEmptyComponent is
displayed
B) if sections is an array of sections with no data ([{data: [],
key: 's1'}]), nothing is displayed

If you're in case A and the component is not displayed, there has to be an
issue in your style or in your ListEmptyComponent...
For case B, it might indeed make sense to also display ListEmptyComponent
when every sections has no data, or let users to render heterogeneously the
ListEmptyComponent like renderItem...
In any way, I reckon that the documentation for SectionList's
ListEmptyComponent could be improved.
Any insight @sahrens https://github.com/sahrens?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/facebook/react-native/issues/14721#issuecomment-311771858,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AApbltq4Gbwyjg-0DicKicMDpQfOC6Ofks5sIrHKgaJpZM4OElaU
.

--
Venlig hilsen/Yours sincerely
Lasse Nørfeldt

I'm having the same problem. Passing an empty array to the SectionList sections prop renders the list header and footer, and doesn't render whatever is passed in the ListEmptyComponent prop.
I've had a quick look, and there is logic for rendering ListEmptyComponent in VirtualizedList here:
https://github.com/facebook/react-native/blob/master/Libraries/Lists/VirtualizedList.js#L635-L647
I can't see any similar logic in either SectionList or VirtualizedSectionList

Oh! I'm sorry I haven't paid attention enough to your additional information... You're on React Native v0.44, while ListEmptyComponent has been added in 0.45.1 :)

@Minishlink ah yes that would be why it's not working for me.
Also realised that VirtualizedSectionList renders a VirtualizedList and the ListEmptyComponent prop gets passed to it

Oh! I'm sorry I haven't paid attention enough to your additional information... You're on React Native v0.44, while ListEmptyComponent has been added in 0.45.1 :)

@Minishlink this solved my problem.
Thanks!

I dont understand the point B)
If the sections var is set as follow:
const sections = [
  {key:'hello 1', data:[{stuff:'one'}, {stuff:'two'}]},
  {key:'hello 2', data:[{stuff:'one'}, {stuff:'two'}, {stuff:'three'}]},
  {key:'hello 3', data:[{stuff:'one'}, {stuff:'two'}]},
  {key:'hello 4', data:[]}, // <--- This should create an empty row under its header?
  {key:'hello 5', data:[{stuff:'one'}, {stuff:'two'}, {stuff:'three'}, {stuff:'four'}]}
]

Is there a simple (and intuitive) way to have a SectionList with header's sections, with empty rows?
Not working as follow looks like a bug...
The following code can be tested online here
https://repl.it/N5Vk/46
import React, { Component } from 'react';
import { Text, View, StyleSheet, SectionList, Dimensions } from 'react-native';

var {height, width} = Dimensions.get('window');

export default class App extends Component {
  renderSectionHeader = ({ section }) => {
    return (
      <View style={styles.header}>
        <Text style={styles.headerText}>{section.key}</Text>
      </View>
    )
  }

  renderItem = ({ item }) => {
    return (
      <View style={styles.row}>
        <Text style={styles.rowText}>
          {item.stuff}
        </Text>
      </View>
    )
  }

  footerComponent() {
    return (
      <View style={styles.footer}>
        <Text style={styles.footerText}>
          This is the `SectionList` Footer
        </Text>
      </View>
    )
  }

  emptyListComponent() {
    return (
      <View style={styles.empty}>
        <Text style={styles.emptyText}>
          no data for this row
        </Text>
      </View>
    )
  }

  render() {
    const sections = [
      {key:'hello 1', data:[{stuff:'object one'}, {stuff:'object two'}]},
      {key:'hello 2', data:[{stuff:'object one'}, {stuff:'object two'}, {stuff:'object three'}]},
      {key:'hello 3', data:[{stuff:'object one'}, {stuff:'object two'}]},
      {key:'hello 4', data:[]}, // <--- This should create an empty section row.
      {key:'hello 5', data:[{stuff:'object one'}, {stuff:'object two'}, {stuff:'object three'}, {stuff:'object four'}]}
    ];
    return (
      <SectionList
        sections={sections}
        style={styles.container}
        renderItem={this.renderItem.bind(this)}
        renderSectionHeader={this.renderSectionHeader.bind(this)}
        stickySectionHeadersEnabled={true}
        ListFooterComponent={this.footerComponent.bind(this)}
        ListEmptyComponent={this.emptyListComponent.bind(this)}
      />
    )
  }
}

const styles = StyleSheet.create({
  container : {width, alignItems: 'center', justifyContent: 'flex-start', paddingTop: 30, backgroundColor: '#ccf0f1'},

  header    : {width, backgroundColor:'red'},
  headerText: {width, fontSize: 18, fontWeight: 'bold', textAlign: 'center', color: '#fff'},

  row       : {padding: 3, borderBottomWidth: 1, borderBottomColor: '#ccc' },
  rowText   : {fontSize: 13, fontWeight: 'normal', textAlign: 'left', color: '#333'},

  empty     : {padding: 3, backgroundColor: 'orange'},
  emptyText : {fontSize: 14, fontWeight: 'bold', textAlign: 'center', color: '#34495e'},

  footer    : {width, padding: 24, backgroundColor: 'yellow'},
  footerText: {fontSize: 18, fontWeight: 'bold', textAlign: 'center', color: '#34495e'},
});


Fix for ViaVersion autoupdate code

Fixes #34

Can confirm the proposed fix results in retrieving the version properly:
❯ curl --no-progress-meter -k -L -H "Accept-Encoding: identity" -H "Accept-Language: en" -L -A "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/<IP_ADDRESS> Safari/537.36" https://ci.viaversion.com/job/ViaVersion/lastBuild/artifact/build/libs/ | grep -P '(?<=href=")ViaVersion[^"]+' -o --max-count=1 | head -n1
ViaVersion-5.0.4-SNAPSHOT.jar

It would be great to see this get merged so that the standard docker run command in the repo readme would work again!

Accepted, thank you!


Split target for DBE to build only necessary files

and do not build server, omnisql, and etc.

implemented as packaging here: https://github.com/intel-go/omniscidb/pull/73


chore: update for deno 1.33

This PR updates the code for Deno 1.33.x to solve errors on the CI. See https://github.com/denoland/fresh/actions/runs/4834957340/jobs/8616765955?pr=1138

Hm looks like puppeteer has trouble starting in a particular test.

Investigated a little bit and it seems like browser.close() hangs for multiple minutes. The test itself runs fairly quick.

@marvinhagemeister The puppeteer issue should bee fixed in 1.33.1 I think. @littledivy was working on it yesterday.

Oh I see - it only hangs on the close. I wonder if the new WebSocket implementation is not sending the "close" event for some reason.

It is reproducible in a minimal example: https://github.com/denoland/deno/issues/18912.
Maybe let's lock the tests to 1.32.5 until this is fixed (and disable canary).

Since there is now a fix in canary, I have disabled 1.x tests for now. We can re-enable after 1.31.2 is released.


Only do the TBasket work in WritableTree.extend once enough data is available

The documentation of WritableTree.extend(data) has a warning saying "be sure that each call to extend includes at least 100 kB per branch/array."
I'm calling extend once per iteration inside a loop in my code. Unfortunately in quite some cases I can get very little data per iteration and it gets below the 100 kB limit. As a solution what I have to do now seems is to be that I have to create another array for each branch I'm filling that accumulate results of individual loops. Then somewhere in each iteration I have to check whether I have reached an acceptable size in the accumulated arrays and only if that is the case I call extend. This seems to be very complicated.
Instead it would be very convenient if extend already had exactly this functionality inside and would keep around accumulated arrays internally, only doing the actual work once these are large enough. This would remove a lot of the work asked from the user and it would also remove the necessity of the warning inside the documentation.

The Accumulator looks nice. Probably will copy that into my code. If it could be part of Uproot, it would be perfect.


My first branch

I added an introduction for GitHub as a demo for educational purposes

My (not actually) first file


trouble during setup

hi
Great project, wanted to try it, but having these problems during setup:
private-chatbot-mpt30b-langchain$ python ingest.py
Traceback (most recent call last):
File "/home/im/Downloads/private-chatbot-mpt30b-langchain/ingest.py", line 6, in
from dotenv import load_dotenv
ModuleNotFoundError: No module named 'dotenv'
and:
private-chatbot-mpt30b-langchain$ poetry run python chat.py
Traceback (most recent call last):
File "/home/im/Downloads/private-chatbot-mpt30b-langchain/chat.py", line 5, in
from langchain.callbacks.streaming_stdout import StreamingStdOutCallbackHandler
ModuleNotFoundError: No module named 'langchain'
Am I missing some dependencies or smth else? Seems like I might be missing smth related to LangChain (but already did: pip install langchain)?. rgds, IM

This project uses poetry for managing the packages. Please follow the steps given in the installation exactly.
pip install poetry
cd <directory_where_you_cloned>
poetry install
cp .env.example .env
python download_model.py

Thx for your answer. I followed these steps before trying to run ingest
etc. Kind rgs
man. 3. jul. 2023 kl. 12.29 skrev Vijayasaradhi @.***>:

This project uses poetry for managing the packages. Please follow the
steps given in the installation exactly.
pip install poetry
cd <directory_where_you_cloned>
poetry install
cp .env.example .env
python download_model.py
—
Reply to this email directly, view it on GitHub
https://github.com/mayooear/private-chatbot-mpt30b-langchain/issues/3#issuecomment-1617850080,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ASTBDRFDAUB24PUFLJUNGP3XOKNG3ANCNFSM6AAAAAAZ4DJRKU
.
You are receiving this because you authored the thread.Message ID:
@.***>

python download_model.py
Traceback (most recent call last):
File "/workspace/ai/pgpt/private-chatbot-mpt30b-langchain/download_model.py", line 3, in
from huggingface_hub import hf_hub_download
ModuleNotFoundError: No module named 'huggingface_hub'

I downloaded the bin file in models but now getting this error "  python ingest.py
Traceback (most recent call last):
File "/workspace/ai/pgpt/private-chatbot-mpt30b-langchain/ingest.py", line 6, in
from dotenv import load_dotenv
ModuleNotFoundError: No module named 'dotenv'"

If you have installed poetry and installed the required libraries, you can run
poetry run python ingest.py

If you are using poetry, please use poetry run python  to activate the right environment. Otherwise you can use pip in a new environment.


Level System

Assigned to: Igotlazy

Implemented the visuals
And its possible to get the Level and XP via script now


Support for additional parameters?

I don't believe this was covered explicitly in your documentation exactly, so just want to check.
If we want to pass an additional parameter, can we just add them as perhaps one would expect?
e.g. for adding temperature is this ok?:
        response = @client.chat(
          parameters: {
              model: "gpt-3.5-turbo",
              messages: messages,
              temperature: 0.7
          })

etc.

Hi buddy, yes you certainly can. I've tweaked the README to make this a bit clearer

You are a :star thanks!


Dead documentation links in section "Showing a message box"

There are dead links in the paragraph

And finally add code to call the MessageBoxA function (also see MessageBoxA in the Rust documentation for the Windows API, which includes a link to MESSAGEBOX_STYLE).

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

ID: 9a621c9b-3a97-3d49-4de9-b309a491a75b
Version Independent ID: 492ab689-9940-02ee-2f38-bafcd1dc9ad2
Content: RSS reader tutorial (Rust for Windows with VS Code)
Content Source: hub/dev-environment/rust/rss-reader-rust-for-windows.md
Product: dev-environment
Technology: windows-rust
GitHub Login: @stevewhims
Microsoft Alias: stwhi

Thanks, @ts-62020. I've updated the links to point to the new destination urls.
-Steve


feat: ignore donation amounts below minimum

Description
For low-value trades the affiliate fee we collect is lower than the gas fee requried to get it to our wallet.
For 0x it's included in the gas fee the user pays.
For THORChain we lose 0.02 RUNE worth of the affiliate fee to get it to our affilite wallet. Affiliate amounts lower than that are lost, so we shouldn't bother collecting them.
This PR hides the donation UX, and removes affiliate fees from THORSwaps where the affiliate fee collected would be at or below 0.02 RUNE.
Pull Request Type

[ ] :bug: Bug fix (Non-breaking Change: Fixes an issue)
[ ] :hammer_and_wrench: Chore (Non-breaking Change: Doc updates, pkg upgrades, typos, etc..)
[x] :nail_care: New Feature (Breaking/Non-breaking Change)

Issue (if applicable)
N/A
Risk
Small.
Testing
Test that small THORTrades do not show the donation UI or include an affiliate fee in the memo.
Test that 0x donations are unaffected by this PR.
Engineering
☝
Operations
☝
Screenshots (if applicable)
N/A

Current dependencies on/for this PR:

develop

PR #4392

PR #4393   👈

This comment was auto-generated by Graphite.


api: remove dead code

This is a follow-up of f825d97de4d45dcbbff85fba7ed3f95d50f4640d.
cc @mxinden

@simonpasquier Sorry for missing that. Thanks for the cleanup.


hrm: callout sni forwards immediately

/cc @wsong

Deploy preview for modest-edison-79d82e ready!
Built with commit 6fac75ad0f21ca9129de69aa4eb4e548e26c4caf
https://deploy-preview-7049--modest-edison-79d82e.netlify.com

@bermudezmt If this looks good, please merge. PTAL.


FluffyCard + OptionTile components

FluffyCard + OptionTile components

This update adds a couple of new components, notably FluffyCard and OptionTile.
The base Card component was refactored with modern Blue standards, as well as
CSS-in-JS styling.
I did a beta test build with Card within Embed (to double check), and everything worked
fine.
OptionTile (specifically OptionIcon) is the first Blue component setup to use CSS-in-JS
based theming, defined by a ThemeProvider. This will make it easier to implement into a
user-themable environment like Embed.
Stories, docs, and tests for added for all the new components.
Interactions and styles based on @digitaldesigner 's Codepen:
https://codepen.io/buzzusborne/full/982b39329647ad92088b496705a74c78/
How to test

Pull down this branch
run npm start
Go to https://localhost:8900
Find OptionTile or OptionIcon or FluffyCard in storybook

Example
The component API for these guys should be relatively simple as well!
<ThemeProvider theme={myTheme}>
  <OptionTile.Container>
    <OptionTile icon="search" title="Go searchin" />
    <OptionTile icon="search" title="Go chattin" />
  </OptionTile.Container>
</ThemeProvider>

Coverage remained the same at 100.0% when pulling 2cfbd53b369c5552400663714c634c9b1d34bd85 on fluffy-card into aeeb82dedbcb52431bb63e0a881892ed035d2e37 on master.

Thanks @Charca ! 🤗

Thanks all! Merging and make a minor release!


Update to include AKS

Fixes #1280

OPS Build status updates of commit 202bc2d:
:clock10: Preparing: average preparing time is 46 sec(s)

OPS Build status updates of commit 202bc2d:
:clock10: Incremental building: average incremental building time is 23 sec(s)

OPS Build status updates of commit 202bc2d:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docs/guide/technology-choices/compute-overview.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.

OPS Build status updates of commit 0a84b15:
:clock10: Preparing: average preparing time is 46 sec(s)

OPS Build status updates of commit 0a84b15:
:clock10: Incremental building: average incremental building time is 23 sec(s)

OPS Build status updates of commit 0a84b15:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docs/guide/technology-choices/compute-overview.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


Complete crash with userns-remap option

In order to have only one docker on my local machine even for non-kubernetes projects, I aliased the microk8s one and followed this solution to avoid root file creation:
➜ cat /var/snap/microk8s/current/args/dockerd
--add-runtime nvidia=${SNAP}/usr/bin/nvidia-container-runtime
-H unix://${SNAP_DATA}/docker.sock
--exec-root ${SNAP_COMMON}/var/run/docker
--graph ${SNAP_COMMON}/var/lib/docker
--pidfile ${SNAP_COMMON}/docker-pid
--config-file=${SNAP_DATA}/args/docker-daemon.json
--userns-remap=sullivan

But with this option, none of the containers in kubernetes want to start:
➜ kubectl get all --all-namespaces
NAMESPACE            NAME                                                  READY   STATUS             RESTARTS   AGE
container-registry   pod/registry-7fc4594d64-9x5jt                         0/1     CrashLoopBackOff   11         25m
kube-system          pod/heapster-v1.5.2-64874f6bc6-lcrdk                  0/4     CrashLoopBackOff   44         16m
kube-system          pod/hostpath-provisioner-599db8d5fb-h5l7p             0/1     CrashLoopBackOff   23         25m
kube-system          pod/kube-dns-6ccd496668-4g4h5                         0/3     CrashLoopBackOff   75         25m
kube-system          pod/kubernetes-dashboard-654cfb4879-tn666             0/1     CrashLoopBackOff   22         25m
kube-system          pod/monitoring-influxdb-grafana-v4-6679c46745-v2pjr   0/2     CrashLoopBackOff   44         25m
kube-system          pod/tiller-deploy-69ffbf64bc-55lmw                    0/1     CrashLoopBackOff   22         25m

NAMESPACE            NAME                           TYPE        CLUSTER-IP       EXTERNAL-IP   PORT(S)             AGE
container-registry   service/registry               NodePort    <IP_ADDRESS>    <none>        5000:32000/TCP      25m
default              service/kubernetes             ClusterIP   <IP_ADDRESS>     <none>        443/TCP             26m
kube-system          service/heapster               ClusterIP   <IP_ADDRESS>    <none>        80/TCP              25m
kube-system          service/kube-dns               ClusterIP   <IP_ADDRESS>    <none>        53/UDP,53/TCP       25m
kube-system          service/kubernetes-dashboard   ClusterIP   <IP_ADDRESS>   <none>        443/TCP             25m
kube-system          service/monitoring-grafana     ClusterIP   <IP_ADDRESS>   <none>        80/TCP              25m
kube-system          service/monitoring-influxdb    ClusterIP   <IP_ADDRESS>   <none>        8083/TCP,8086/TCP   25m
kube-system          service/tiller-deploy          ClusterIP   <IP_ADDRESS>   <none>        44134/TCP           25m

NAMESPACE            NAME                                             READY   UP-TO-DATE   AVAILABLE   AGE
container-registry   deployment.apps/registry                         0/1     1            0           25m
kube-system          deployment.apps/heapster-v1.5.2                  0/1     1            0           25m
kube-system          deployment.apps/hostpath-provisioner             0/1     1            0           25m
kube-system          deployment.apps/kube-dns                         0/1     1            0           25m
kube-system          deployment.apps/kubernetes-dashboard             0/1     1            0           25m
kube-system          deployment.apps/monitoring-influxdb-grafana-v4   0/1     1            0           25m
kube-system          deployment.apps/tiller-deploy                    0/1     1            0           25m

NAMESPACE            NAME                                                        DESIRED   CURRENT   READY   AGE
container-registry   replicaset.apps/registry-7fc4594d64                         1         1         0       25m
kube-system          replicaset.apps/heapster-v1.5.2-56c546dbb8                  0         0         0       16m
kube-system          replicaset.apps/heapster-v1.5.2-64874f6bc6                  1         1         0       16m
kube-system          replicaset.apps/heapster-v1.5.2-6bc7c4965d                  0         0         0       25m
kube-system          replicaset.apps/hostpath-provisioner-599db8d5fb             1         1         0       25m
kube-system          replicaset.apps/kube-dns-6ccd496668                         1         1         0       25m
kube-system          replicaset.apps/kubernetes-dashboard-654cfb4879             1         1         0       25m
kube-system          replicaset.apps/monitoring-influxdb-grafana-v4-6679c46745   1         1         0       25m
kube-system          replicaset.apps/tiller-deploy-69ffbf64bc                    1         1         0       25m

And I have no log from them.
If I remove the userns-remap, it work as indented.
Note: A simple docker run works, the issue is only with Kubernetes.
It looks like a bug, but I have currently no idea how to troubleshoot this...
inspection-report-20190225_211409.tar.gz

I am not sure if this is doable in k8s even as of 1.14.  there is an issue open and i dont think it will land in 1.14.
https://github.com/kubernetes/enhancements/issues/127
Did u get this user namespace remapping in none microk8s, like minikube?

I am not sure if this is doable in k8s even as of 1.14.  there is an issue open and i dont think it will land in 1.14.
https://github.com/kubernetes/enhancements/issues/127
Did u get this user namespace remapping in none microk8s, like minikube?

@Soullivaneuh you may have heard we will be switching to containerd with the 1.14 release. This should address the problems we have when deploying MicroK8s next to an already existing dockerd. You can try a preview of MicroK8s with containerd with:
snap install microk8s --classic --channel=1.13/edge/secure-containerd

Let me know how we can smooth this transition for you. Thanks.

when deploying MicroK8s next to an already existing dockerd

I don't have any other dockerd, I expecially want to use the microk8s one only. :-)

Oh right @ktsakalozos, I misunderstood what you said.
So I will not be able to use docker directly on microk8s.
What should I do for classic docker-composed legacy project? Can I still interact them with microk8s in some ways?

Dockerd will not be available in the 1.14 release of MicroK8s; dockerd is going to be replaced with containerd.
If you want dockerd from MicroK8s you should stick to the 1.13 release series with:
snap refresh --channel=1.13/stable microk8s

More info on what is coming up in v1.14: https://itnext.io/containerd-on-a-more-secure-microk8s-c2c97ac0268f
If you want to use docker-compose you should deploy docker with apt-get install docker.io and use it as you normally would. Have you seen the Kompose project https://github.com/kubernetes/kompose ? This should be able to create the yamls for Kubernetes in the same way docker-compose does.

If you want dockerd from MicroK8s you should stick to the 1.13 release

Hell no, let's move on! :-)
I'm sure you know what you are doing. ;-)
I'll just re-install my own docker in that case and yes, I know kompose, I'm learning how to use it right now.
Thanks for the great explanation! :+1:


Module fails to import when Python is ran with -OO

Since -OO removes docstrings, the module fails on import as shown in the following trace:
[...]
    from cloudpathlib import AnyPath, CloudPath
  File "/home/javier/.virtualenvs/WebsiteTopicClassifier/lib/python3.6/site-packages/cloudpathlib/__init__.py", line 3, in <module>
    from .anypath import AnyPath
  File "/home/javier/.virtualenvs/WebsiteTopicClassifier/lib/python3.6/site-packages/cloudpathlib/anypath.py", line 5, in <module>
    from .cloudpath import InvalidPrefixError, CloudPath
  File "/home/javier/.virtualenvs/WebsiteTopicClassifier/lib/python3.6/site-packages/cloudpathlib/cloudpath.py", line 136, in <module>
    class CloudPath(metaclass=CloudPathMeta):
  File "/home/javier/.virtualenvs/WebsiteTopicClassifier/lib/python3.6/site-packages/cloudpathlib/cloudpath.py", line 127, in __init__
    docstring = getattr(Path, attr).__doc__ + " _(Docstring copied from pathlib.Path)_"
TypeError: unsupported operand type(s) for +: 'NoneType' and 'str'

@jruere This is released now in version 0.10.0 on PyPI


Refactoring and improving code

Repository Base:

Add Exceptions at base level.
Make sure methods async.

Need to Implement Logging and global error handling.

Will be creating individual issues.


prometheus-operator: Make namespace info explicit

For all the configs that have missing namespace information, this commit
adds following line to metadata of those namespaced objects.
namespace: {{ .Release.Namespace }}

Checklist

[x] DCO signed

The namespace to install the chart into is specified by the helm --namespace argument. What's the benefit of adding these?

The namespace to install the chart into is specified by the helm --namespace argument. What's the benefit of adding these?

That's right. This value is placed by helm cli/tiller, somewhere. But this behavior is inconsistent with the helm rendering libraries. So if you go ahead and use libraries to parse certain charts which has no parameterizing like above they won't have namespace field in it.
Following is run in the prometheus dir that is downloaded from stable. In kubectl the default namespace is default.
$ helm fetch \
    --repo https://kubernetes-charts.storage.googleapis.com \
    --untar \
    --untardir ./ \
    prometheus-operator

$ helm template --namespace monitoring . | kubectl apply -f -
podsecuritypolicy.extensions/release-name-grafana created
podsecuritypolicy.extensions/release-name-kube-state-metrics created
podsecuritypolicy.extensions/release-name-prometheus-node-exporter created
...
servicemonitor.monitoring.coreos.com/release-name-prometheus-op-operator created
servicemonitor.monitoring.coreos.com/release-name-prometheus-op-prometheus created
Error from server (NotFound): namespaces "monitoring" not found
Error from server (NotFound): namespaces "monitoring" not found

Above in template sub-command I expect that the namespace I am giving is placed under the namespace field in metadata of each object. But it only replaces {{ .Release.Namespace }}.
The last two errors are because it is looking for namespace monitoring which does not exists. Even if it is present this means that half of the things will be created in monitoring namespace and other half in the default namespace.
$ kubectl get pods
NAME                                                   READY   STATUS                  RESTARTS   AGE
release-name-grafana-5759d4d766-rwk88                  0/2     Init:CrashLoopBackOff   5          3m45s
release-name-grafana-test                              0/1     Error                   0          3m46s
release-name-kube-state-metrics-856fbc6f6-nq69k        1/1     Running                 0          3m45s
release-name-prometheus-op-operator-7fc4955ddd-zhqbv   0/1     CrashLoopBackOff        5          3m45s

Above does not deploy very well.
You might argue that this should be fixed in upstream helm tool. But prometheus operator uses this way of fixating namespace in some places.
e.g.: https://github.com/helm/charts/blob/3840c5edae9530a659007b2c38882b1b0355db68/stable/prometheus-operator/templates/prometheus-operator/cleanup-crds.yaml#L4-L7
IMHO being explicit is no harm.

/assign @anothertobi

@vsliouniaev updated this PR as well!

@surajssd, in order for this to work with all the resources provisioned by the chart, you would also have to do this for charts listed in the requirements.yaml kube-state-metrics and prometheus-node-exporter don't have the namespace made explicit. There's a pull request open for Grafana here, that hasn't gotten much traction: https://github.com/helm/charts/pull/14325. I think these charts would have to accept this change first before prometheus-operator can incorporate it.
If you want to install the chart into a specific namespace using rendered templates, you can accomplish this by setting the correct namespace on the kubectl context. If you want to create templates with the namespace already populated, I think you can achieve this with some creative use of the yq tool.


Problem with zbassmusic.dll

Hi,
I have a problem with running your plugin. I can't run it on a clean installation of Gothic II NotR. Stepps I did before:

Installation of G2NotR (Polish CD edition)
G2MDK 2.6
G2MDK 2.6a
Playerkit + UNION 1.0m (with Resource Manager)
I copied my modification files to _work\data (scripts\System\Musicinst.d I left unchanged)
I copied zBassMusic.vdf to Gothic II\Data
I copied zBassMusic.dll, bass.dll, UnionAPI.dll to Gothic II\System
I did reparse scripts and got an Access Violation like that:

The fun fact is that I could run that on my second laptop and it works perfectly. My friends also have an AV error like that or the plugin just doesn't work for them.
Maybe I did something wrong?

I found out why it won't work. I had to install plugin Marvin Helper. Could you explain why is it needed to work with your plugin and why it is not mentioned in your readme?

Marvin Helper is not required for the plugin - it should be standalone, but the order of .dll loading could be an issue because UnionAPI.dll should load first before other .dll. To verify the order you can enable Union Console in SystemPack.ini:
[CORE]
ShowDebugWindow = true

Then you can check if UnionAPI.dll is loaded first.
The Console also has zBassMusic logs that may contain other useful information.
Possible fix: load UnionAPI.dll first
Inside SystemPack.ini (or your mod .ini file) you can specify plugin list to force UnionAPI.dll first:
[PLUGINS]
PluginList = *UnionAPI

We'll try to replicate this Access Violation and update docs with Troubleshooting section when we gather root causes of possible errors.

You're right, zBassMusic.vdf is loading before Union.vdf but it loads automatically from data/plugins.

I don't know how to change priority of vdf preloading at the start but still when I tried to set it up with systempack.ini it still doesn't worked when I removed vdfs from data\plugins. I just left the union.vdf in data folder and wrote in systempack.ini. All dlls are in system. My system\autorun is empty.
[PLUGINS]
PluginList = UnionAPI.dll, zBassMusic.dll, bass.dll
UseVDFS = true

I tried to change UseVDFS to false but It doesn't worked too.
Screenshots with removed marvinhelper (caused Access Violation):

@Rafiss92 Your problem have been fixed in the 0.0.19 . Try now and see if it works for you.

@Rafiss92 Your problem have been fixed in the 0.0.19 . Try now and see if it works for you.


discord: Use regions for raiding activity and remove varbit handling

Currently, after being in a ToB party, Jagex does not properly unset Varbits.THEATRE_OF_BLOOD when leaving the Theatre area, only when returning. Since we use that varbit for discord activity, if you were to do a ToB and then leave afterward, your discord activity would continue to show Theatre of Blood regardless of your location, until you either log out or return to Ver Sinhaza.
With that in mind, it is much easier to use the regions for raiding activity rather than the varbits. With those changed, it is no longer necessary to handle varbits within the discord plugin, thus all code related to varbits can be removed.

Updated PR to use regions instead of varbits for raiding activity and to remove varbit-related code from Discord plugin.

Updated PR to use regions instead of varbits for raiding activity and to remove varbit-related code from Discord plugin.


Fix updateHeaderExtension for cloned MediaEngine

Description
It addresses the issue that unable to updateHeaderExtension for cloned
MediaEngine, which is resulted from previous commit:
c8b7aa386a92100a0377fd32660c810d6e4e7e28
Reference issue
Fixes a possible(?) side-effect from the PR for #1662

OK, would provide another commit to make it always initialize later. It would be less complicated.

I've looked around codes for negotiatedHeaderExtensions, and think it's still better to keep the last commit.
The behavior: updateHeaderExtension would do nothing if RegisterHeaderExtension is not called seems reasonable.
Being of two minds.


trying to add a property with context of a folder doesn't work

When clicking "+ Add Property" in folder note view and trying to set the property's context to a folder (instead of just "File Metadata") the "Save Property" button / link (whatever you want to call it) doesn't respond and no error presents itself in the upper right corner.  The button must be working because if you don't enter a name and click "Save Property" it will tell you that the property needs a name.
The "Cancel" button / link / whatever it's called works properly though.  Also "Save Property" works fine if you choose "File Metadata"

This has been patched, thanks for reporting this


Flutter will crash when use TextField to input Chinese with maxLength in iOS

Steps to Reproduce

Sample Code
TextField(
   maxLength: 2,
)

Very easy to reappear，such as input “hh” when use Chinese input method

Actual results:
-[__NSCFString substringWithRange:]: Range {2, 1} out of bounds; string length 2

CoreFoundation | ___exceptionPreprocess + 224
-- | --
1 libobjc.A.dylib | objc_exception_throw + 56
2 CoreFoundation | -[__NSCFString characterAtIndex:].cold.1
3 CoreFoundation | -[__NSCFString hasPrefix:].cold.1
4 CoreFoundation | -[_CFXNotificationNameRegistration find:observer:matching:]
5 UIKitCore | -[UIKeyboardImpl hasMarkedText] + 144
6 UIKitCore | -[UIKeyboardImpl _keyboardBehaviorState] + 96
7 UIKitCore | -[UIKeyboardImpl updatedKeyBehaviors] + 36
8 UIKitCore | -[UIKeyboardImpl _updateKeyboardConfigurations] + 176
9 UIKitCore | -[UIKeyboardImpl removeAutocorrectPrompt] + 32
10 UIKitCore | -[UIKeyboardImpl removeAutocorrectPromptAndCandidateList] + 28
11 UIKitCore | -[UIKeyboardImpl deleteFromInputWithFlags:executionContext:] + 1460
12 UIKitCore | -[UIKeyboardImpl handleAutoDeleteWithExecutionContext:] + 296
13 UIKitCore | ___56-[UIKeyboardScheduledTask handleDeferredTimerFiredEvent]_block_invoke + 140
14 UIKitCore | -[UIKeyboardTaskEntry execute:] + 180
15 UIKitCore | -[UIKeyboardTaskQueue continueExecutionOnMainThread] + 316
16 UIKitCore | -[UIKeyboardScheduledTask handleDeferredTimerFiredEvent] + 196
17 CoreFoundation | ___invoking___ + 144
18 CoreFoundation | -[NSInvocation invoke] + 300
19 UIKitCore | -[_UIActionWhenIdle invoke] + 76
20 CoreFoundation | ___CFRUNLOOP_IS_CALLING_OUT_TO_AN_OBSERVER_CALLBACK_FUNCTION__ + 32
21 CoreFoundation | ___CFRunLoopDoObservers + 420
22 CoreFoundation | ___CFRunLoopRun + 968
23 CoreFoundation | CFRunLoopRunSpecific + 424
24 GraphicsServices | GSEventRunModal + 160
25 UIKitCore | UIApplicationMain + 1932
26 SuperHigh | main (main.m:21)
27 libdyld.dylib | _start + 4

This crash is reported in 1.17.1 stable, however not reported in  1.12.13+hotfix9 stable.

Logs

[✓] Flutter (Channel stable, v1.17.1, on Mac OS X 10.15.4 19E287, locale
    zh-Hans)
    • Flutter version 1.17.1 at /Users/gzh/dev/flutter
    • Framework revision f7a6a7906b (2 weeks ago), 2020-05-12 18:39:00 -0700
    • Engine revision 6bc433c6b6
    • Dart version 2.8.2

[✓] Android toolchain - develop for Android devices (Android SDK version 29.0.2)
    • Android SDK at /Users/gzh/Library/Android/sdk
    • Platform android-29, build-tools 29.0.2
    • Java binary at: /Applications/Android
      Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build
      1.8.0_212-release-1586-b4-5784211)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 11.5)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 11.5, Build version 11E608c
    • CocoaPods version 1.9.1

[✓] Android Studio (version 3.6)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin version 45.1.1
    • Dart plugin version 192.8052
    • Java version OpenJDK Runtime Environment (build
      1.8.0_212-release-1586-b4-5784211)

Perhaps related https://github.com/flutter/flutter/issues/25511

Hi @MrLittleStrong
this is exactly the case of the issue you provided
Please follow up on that issue, I'm closing the current one as duplicate.
If you disagree, please write in the comments and I will reopen it.
Thank you

Hi @MrLittleStrong
this is exactly the case of the issue you provided
Please follow up on that issue, I'm closing the current one as duplicate.
If you disagree, please write in the comments and I will reopen it.
Thank you

According to 'This crash is reported in 1.17.1 stable, however not reported in 1.12.13+hotfix9 stable.' I guess this crash was solved in previous releases, but was brought in in 1.17.1 somehow. A better solution is to close that relate issue and keep this issue open because the related issue got no attention. Anyway, if some one is looking into this, it doesn't matter.


Add support for character class shortcuts in Xeger

Fixes #288
Code shamelessly copied from Generex.
I've decided to just copy the relevant code from Generex, instead of introducing a new dependency in the Build. If you prefer otherwise, I have a branch for that which uses Generex instead of Xeger: https://github.com/alonpeer/pact-jvm/tree/alt-regex-gen
Also notice the last commit in this PR which deals with this issue I've found: https://github.com/mifmif/Generex/issues/26
This is reproducible with both Xeger and Generex. I couldn't find a way to resolve it so far. In any case, this has nothing to do with the character class shortcuts, which weren't supported correctly so far anyway.

I have no idea why this fails in AppVeyor, it works for me locally.

I've kicked the AppVeyor again, but travis passes so I'm happy to merge.

Thanks for the PR.
I would prefer a build dependency. The only reason I inlined Xeger is because there was no published jar at the time.

Thanks for merging it. As I mentioned, if you prefer a dependency, there's this PR: https://github.com/alonpeer/pact-jvm/tree/alt-regex-gen
From what I could tell, Generex and Xeger are quite similar.