Packaging requests: katrain

Project description
KaTrain is a tool for analyzing games and playing go with AI feedback from KataGo:

Review your games to find the moves that were most costly in terms of points lost.
Play against AI and get immediate feedback on mistakes with option to retry.
Play against a wide range of weakened versions of AI with various styles.
Automatically generate focused SGF reviews which show your biggest mistakes.

Metadata

homepage URL: https://github.com/sanderland/katrain
source URL: https://github.com/sanderland/katrain
license: https://github.com/sanderland/katrain/blob/master/LICENSE
platforms: unix, linux, darwin, windows

Nice to see someone else using KaTrain. Here's a nix file I used for KaTrain, in case it helps with anybody trying to package it or something:
{ python39Packages }:
with python39Packages;

let
  ffpyplayer = buildPythonPackage rec {
    pname = "ffpyplayer";
    version = "4.3.5";

    src = fetchPypi {
      inherit pname;
      inherit version;
      hash = "sha256-vmsJLjFEaDD7EHOVXQQgplEJUtBo2nDmFjrXRCDw5DQ=";
    };

    nativeBuildInputs = with pkgs; [
      pkg-config
      cython
    ];

    buildInputs = with pkgs; [
      SDL2
      ffmpeg
    ];

    doCheck = false;
  };

  kivy2_1_0 = kivy.overrideAttrs (old: rec {
    version = "2.1.0";

    src = fetchPypi {
      pname = "Kivy";
      inherit version;
      hash = "sha256-Ohbzujtw1eeUPX7lxMu9UrxGdfONpL8rMAXBY51sBLM=";
    };

    patches = [ ];
  });

  kivymd = buildPythonPackage rec {
    pname = "kivymd";
    version = "0.104.1";

    src = fetchPypi {
      inherit pname;
      inherit version;
      hash = "sha256-ncvCy4r/3pyCVyGY/dsyyBTN1XJUoOSwDFOILbLI1qY=";
    };

    propagatedBuildInputs = [
      kivy2_1_0
      pillow
    ];

    doCheck = false;
  };
in
buildPythonPackage rec {
  pname = "KaTrain";
  version = "1.11.2";

  src = fetchPypi {
    inherit pname;
    inherit version;
    hash = "sha256-8gEkjvYVZUF3w3uVsrpp87PNIr/W+/ue0DCNKxQ1Wcw=";
  };

  propagatedBuildInputs = [
    chardet
    ffpyplayer
    kivymd
    numpy
    screeninfo
    urllib3
  ];

  doCheck = false;
}

I decided to update the expression slightly:
{ python3Packages }:
with python3Packages;

let
  ffpyplayer = buildPythonPackage rec {
    pname = "ffpyplayer";
    version = "4.5.1";

    src = fetchPypi {
      inherit pname;
      inherit version;
      hash = "sha256-1V1UVj/PbDNFBbRdS2SCXyT6+1rPp6nkcsCOh39UkGk=";
    };

    nativeBuildInputs = with pkgs; [
      cython
      pkg-config
      pytest
    ];

    buildInputs = with pkgs; [
      SDL2
      ffmpeg_6-headless
    ];
  };

  kivymd = buildPythonPackage rec {
    pname = "kivymd";
    version = "0.104.1";

    src = fetchPypi {
      inherit pname;
      inherit version;
      hash = "sha256-ncvCy4r/3pyCVyGY/dsyyBTN1XJUoOSwDFOILbLI1qY=";
    };

    nativeBuildInputs = [
      #docutils
    ];

    propagatedBuildInputs = [
      kivy
    ];

    doCheck = false;
  };
in
buildPythonPackage rec {
  pname = "KaTrain";
  version = "1.14.0";

  src = fetchPypi {
    inherit pname;
    inherit version;
    hash = "sha256-gMZ8b3oB/WReaK6aN7yLU+ZegGHi/sJpgvshXuxqcf4=";
  };

  nativeBuildInputs = [
    #docutils
  ];

  # Seems to be an optional runtime dependency
  buildInputs = [
    # wl-clipboard-x11

    # xclip
    # xsel
  ];

  propagatedBuildInputs = [
    chardet
    ffpyplayer
    kivymd
    numpy
    screeninfo
    urllib3
  ];

  doCheck = false;
}

Looks like new katrain (1.15) uses poetry and poetry2nix is unmaintained now.
I tried to use it to build but it fails with a pygame error...
Was someone able to build it?
Thanks

I managed to build it.
{ pkgs, ... }:
with pkgs;
let

  ffpyplayer = python3.pkgs.buildPythonPackage rec {
    pname = "ffpyplayer";
    version = "4.5.1";

    src = fetchPypi {
      inherit pname;
      inherit version;
      hash = "sha256-+a/9wS67pGSfEWlzueTgV9BnYbxjdYWUqR7IXxaHUv4=";
    };

    nativeBuildInputs = with pkgs.python312Packages; [
      cython
      pkg-config
      pytest
    ];

    buildInputs = with pkgs; [
      SDL2
      ffmpeg_6-headless
    ];
  };

  kivymd = python3.pkgs.buildPythonPackage rec {
    pname = "kivymd";
    version = "0.104.1";

    src = fetchPypi {
      inherit pname;
      inherit version;
      hash = "sha256-ncvCy4r/3pyCVyGY/dsyyBTN1XJUoOSwDFOILbLI1qY=";
    };

    nativeBuildInputs = [
      #docutils
    ];

    propagatedBuildInputs = [ python3.pkgs.kivy ];

    doCheck = false;
  };

  katrain = python3.pkgs.buildPythonPackage rec {
    pname = "katrain";
    version = "1.15.0";
    pyproject = true;
    src = fetchFromGitHub {
      owner = "sanderland";
      repo = "katrain";
      rev = "refs/tags/v${version}";
      sha256 = "sha256-Ii52mtuTVrQg+ziSGE4yi8En2ZYKBO03OS48fj2Pfec=";
    };
    build-system = [ python3.pkgs.poetry-core ];
    nativeBuildInputs = with python3.pkgs; [
      poetry-core
      poetry-dynamic-versioning
    ];

    propagatedBuildInputs = with python3.pkgs; [
      chardet
      docutils
      ffpyplayer
      kivy
      kivymd
      screeninfo
      urllib3
      numpy
      xclip
      xsel
      wl-clipboard-x11
    ];
  };

in
{
  home.packages = [
    katrain
  ];
}

Can confirm your expression works. Though I'm unable to play because I've been experiencing https://github.com/sanderland/katrain/issues/691. Welp.

It would be nice if we find a way to link it to current katago in the system.

I think adding katago to the profile and pasting the output of which katago is fairly simple and a one-time task.


Add Job Update Timeout command to the JS Client

Hello!
Please add Job Update Timeout command to the JS Client (@camunda8/sdk)

https://github.com/camunda/camunda-8-js-sdk/blob/alpha/src/proto/zeebe.proto#L962

Thanks for the link, Josh!
But I can't find the function in ZeebeGrpcClient.
const zeebe = c8.getZeebeGrpcApiClient();
zeebe.updateJobTimeout

@aim-dot-antares that was a note for me to help with the implementation.
Are you using the JS SDK at the moment and need this feature?

@jwulf
I wanted to receive user tasks through a worker and set different blocking times for them. And I didn’t find a solution until I read about adding a function in the Zeebe API.
But at the moment I am considering the option of reading data about user tasks from the elastic index. In this case (as far as I understand) the TIMEOUT events do not occur. So adding a function is no longer relevant for me.
However, I thought it would be a good idea to report her absence.

Available in 8.5.5 and 8.6.0.
Documentation: https://camunda.github.io/camunda-8-js-sdk/classes/index.Zeebe.ZeebeGrpcClient.html#updateJobTimeout


Up to date phase 2 and reassessments files

I took out the thompson creek assessment from the report objects because it is in skeena 2021. Hope that was alright. If not I can always roll back and revert. Pscis phase 2 sheet seems to be ready for submission. Just one question about the reassessments, refer to my latest comment on this skeena issue.


[ISSUE] databricks bundle validate when creating a bundle manually

Description
Calling databricks bundles validate returns the following error:
Error: unexpected error handling request: json: cannot unmarshal number into Go struct field APIErrorBody.error_code of type string. This is likely a bug in the Databricks SDK for Go or the underlying REST API. Please report this issue with the following debugging information to the SDK issue tracker at https://github.com/databricks/databricks-sdk-go/issues.
Reproduction
Going through these guides ...
https://docs.databricks.com/en/dev-tools/bundles/work-tasks.html
https://docs.databricks.com/en/dev-tools/bundles/settings.html#examples
... to create a Databricks Asset Bundle manually.

Create empty repository in VSCode
Install YAML language server support extension
Generate Databricks Asset Bundle configuration JSON schema file by running:
databricks bundle schema > bundle_config_schema.json
Use VSCode to create or open a bundle configuration file within the current directory, name it "databricks.yml"
Add the following comment to the beginning of your bundle configuration file:
# yaml-language-server: $schema=bundle_config_schema.json
Fill in the bundle configuration files, e.g by using the contents from this source: https://docs.databricks.com/en/dev-tools/bundles/settings.html#examples
like this content:

bundle:
  name: hello-bundle

targets:
  dev:
    default: true
    resources:
      jobs:
        hello-job:
          name: hello-job
          tasks:
            - task_key: hello-task
              existing_cluster_id: 1234-567890-abcde123
              notebook_task:
                notebook_path: ./hello.py

Validate the bundle configuration files by running:
databricks bundle validate

Expected behavior
Some kind of output string that indicates the configuration file is synthetically correct. (Can't further specify since it is nowhere written how the correct execution of the command looks like or what it outputs)
Is it a regression?
Using Databricks CLI v0.212.2
Debug Logs
Request log:
GET /api/2.0/preview/scim/v2/Me
> * Host:
> * Accept: application/json
> * Authorization: REDACTED
> * User-Agent: cli/0.212.2 databricks-sdk-go/0.29.1 go/1.21.6 os/windows cmd/bundle_validate auth/pat
< HTTP/2.0 403 Forbidden
< * Content-Length: 52
< * Content-Type: application/json; charset=utf-8
< * Date: Thu, 01 Feb 2024 10:37:20 GMT
< * Server: databricks
< * Vary: Accept-Encoding
< * X-Databricks-Reason-Phrase: Invalid access token.
< {
<   "error_code": 403,
<   "message": "Invalid access token."
< }

Other Information

OS: Windows
Version: 10

Additional context
Add any other context about the problem here.

I tried everything there is to troubleshoot.. empty cache, create new .databrickscfg file, generate new token, ... the whole thing and I am not entirely sure what made the differnce in the end..
After ensuring you authenticate correctly, try to run:
databricks jobs list
... it should list all the jobs for your DEFAULT profile.
then run:
databricks jobs list --profile=YOUR_DESIRED_PROFILE_TO_USE_DAB
and it should list the jobs for the other host.
I then ran:
databricks bundle init (specified the unique name and the additional stuff)
and it worked then.

I tried everything there is to troubleshoot.. empty cache, create new .databrickscfg file, generate new token, ... the whole thing and I am not entirely sure what made the differnce in the end..
After ensuring you authenticate correctly, try to run:
databricks jobs list
... it should list all the jobs for your DEFAULT profile.
then run:
databricks jobs list --profile=YOUR_DESIRED_PROFILE_TO_USE_DAB
and it should list the jobs for the other host.
I then ran:
databricks bundle init (specified the unique name and the additional stuff)
and it worked then.


Add "Max" button to Make Flow

Max calculation should also factor in the signer fee.

https://www.figma.com/file/DTJwC2mQ9kvyjM0171tqHR/airswap-web?node-id=10495%3A9993
please also consider the comment jop made


Remove Black theme

Just continue with the previous theme. Dark theme isn't much attractive

I think we could have both

We have both now


Update egg-python-generic.json

Patch git clone
Description
Patch git clone using git stash first
Checklist for all submissions

[X] Have you followed the guidelines in our Contributing document?

[X] Have you checked to ensure there aren't other open Pull Requests for the same update/change?

[X] Have you tested and reviewed your changes with confidence that everything works?

[X] Did you branch your changes and PR from that branch and not from your master branch?

If not, why?:

[X] You verify that the start command applied does not use a shell script

[X] If some script is needed then it is part of a current yolk or a PR to add one

[X] The egg was exported from the panel

This should not mather as it is intended as a pull only, you are supposed to not edit any files in the panel itself.

I know what @QuintenQVD0 the stash isn't even kept it's just so git knows that the server is not up to date.
If you don't do that then it will always say that local is up to date even though it's out of sync with the git repo


Mac instructions are unclear

I am on a mac, attempting to show lyrics in front of a video feed. Admittedly, I am new to OBS, but nonetheless.
Here's my setup:

I'm looking for the text source back in the script, and it doesn't show up.

Am I missing something, or is this a bug?
Thanks for any help you may have.

@ntatko Hi, I'm not sure why it's not showing. In the "Scripts" window, click the refresh button and then see if the source populates. Also, try not using a FreeType 2 text source, but a GDI text source. See if that helps.

try not using a FreeType 2 text source, but a GDI text source

GDI is a windows only option - I have no such option on my mac.

Hey, I don't have a mac unfortunately. No other mac users have reported this issue. Please try updating both the script and OBS, then make sure to follow the instructions on the main page of this repository.

Has this issue been resolved? @ntatko

No, it's still an issue, but I ended up not using this plugin for my event. You can close the issue if you want.


azureml-core fails with wrong numpy version available

azureml-core:
Version: 1.58.0
OS: any
Python: any

Describe the bug
numpy is not stated as dependency, still in azureml.core.metrics.py it tries to import and it will be ok if not available, however it fails if the wrong version is available, since numpy > 2 has removed: np.unicode
To Reproduce
Steps to reproduce the behavior:

install numpy > 2 side by side with azureml.core
try to submit a pipeline job
boom

Expected behavior
A clear and concise description of what you expected to happen.
Traceback
Result: Failure Exception: AttributeError: `np.unicode_` was removed in the NumPy 2.0 release. Use `np.str_` instead. Stack: File "/azure-functions-host/workers/python/3.10/LINUX/X64/azure_functions_worker/dispatcher.py", line 604, in _handle__invocation_request call_result = await self._loop.run_in_executor( File "/usr/local/lib/python3.10/concurrent/futures/thread.py", line 58, in run result = self.fn(*self.args, **self.kwargs) File "/azure-functions-host/workers/python/3.10/LINUX/X64/azure_functions_worker/dispatcher.py", line 933, in _run_sync_func return ExtensionManager.get_sync_invocation_wrapper(context, File "/azure-functions-host/workers/python/3.10/LINUX/X64/azure_functions_worker/extension.py", line 215, in _raw_invocation_wrapper result = function(**args) File "/home/site/wwwroot/TrainingScheduler/__init__.py", line 287, in main raise e File "/home/site/wwwroot/TrainingScheduler/__init__.py", line 284, in main run(msg_body=msg.get_body().decode('utf-8')) File "/home/site/wwwroot/TrainingScheduler/__init__.py", line 278, in run raise e File "/home/site/wwwroot/TrainingScheduler/__init__.py", line 271, in run on_retraining(request, event_handler) File "/home/site/wwwroot/TrainingScheduler/__init__.py", line 211, in on_retraining create_and_upload_training_definition(request) File "/home/site/wwwroot/function_helpers/blob_storage.py", line 37, in create_and_upload_training_definition submit_azureml_job(blob_name) File "/home/site/wwwroot/function_helpers/azureml.py", line 30, in submit_azureml_job job = experiment.submit(pipeline,pipeline_parameters={'input_datapath':datapath}) File "/home/site/wwwroot/.python_packages/lib/site-packages/azureml/core/experiment.py", line 238, in submit run = submit_func(config, self.workspace, self.name, **kwargs) File "/home/site/wwwroot/.python_packages/lib/site-packages/azureml/pipeline/core/graph.py", line 4838, in _submit_published_pipeline return published_pipeline.submit(workspace=workspace, experiment_name=experiment_name, File "/home/site/wwwroot/.python_packages/lib/site-packages/azureml/pipeline/core/graph.py", line 5142, in submit pipeline_run = PipelineRun(experiment=context._experiment, run_id=pipeline_run_id, File "/home/site/wwwroot/.python_packages/lib/site-packages/azureml/pipeline/core/run.py", line 87, in __init__ super(PipelineRun, self).__init__(experiment, run_id, **kwags) File "/home/site/wwwroot/.python_packages/lib/site-packages/azureml/core/run.py", line 173, in __init__ super(Run, self).__init__(experiment, run_id, outputs=outputs, **kwargs) File "/home/site/wwwroot/.python_packages/lib/site-packages/azureml/_run_impl/run_base.py", line 53, in __init__ from azureml._run_impl.run_history_facade import RunHistoryFacade File "/home/site/wwwroot/.python_packages/lib/site-packages/azureml/_run_impl/run_history_facade.py", line 22, in <module> from azureml._restclient.metrics_client import MetricsClient File "/home/site/wwwroot/.python_packages/lib/site-packages/azureml/_restclient/metrics_client.py", line 11, in <module> from azureml.core._metrics import (Artifact, InlineMetric, INLINE_METRICS, File "/home/site/wwwroot/.python_packages/lib/site-packages/azureml/core/_metrics.py", line 191, in <module> class Metric(ChainedIdentity): File "/home/site/wwwroot/.python_packages/lib/site-packages/azureml/core/_metrics.py", line 212, in Metric _type_to_converter[np.unicode_] = str File "/home/site/wwwroot/.python_packages/lib/site-packages/numpy/__init__.py", line 400, in __getattr__ raise AttributeError(

Additional context
Falling over this on azure function.

Hi @mortbauer, Could you please let us know the Python version you're using to reproduce this issue? Kindly ensure that the  azureml-core 1.58.0 is compatible with numpy version 1.23.5; using any other version may result in an exception. Thank you

we have addressed this issue and in the next release it will be fixed.


Special Coverage optional end date

@mparent61 @benghaziboy

 Make special coverage end date optional

Coverage decreased (-0.2%) to 86.041% when pulling d637c2206fd7623b21670ef2ace0c67e4ac30430 on sc-optional-end into 0532a3b617512020751d7e63fa8257a943e10888 on master.

There are potentially many filters that will require refactoring to support NULL end dates. Here's just a few from a quick search:
API Filtering: https://github.com/theonion/django-bulbs/blob/501c6a7486f1d0f92e3d8991a05ea574026c6f17/bulbs/api/views.py#L512
Percolator Filtering: https://github.com/theonion/django-bulbs/blob/master/bulbs/content/models.py#L508

Coverage decreased (-0.2%) to 85.95% when pulling 8bdc7de7a799b9a11ec3b936584f4d3581fd03a7 on sc-optional-end into 0532a3b617512020751d7e63fa8257a943e10888 on master.

Coverage decreased (-0.2%) to 85.99% when pulling acdd05e9f056175a01e548c7fdfecc91669fc2d3 on sc-optional-end into 0532a3b617512020751d7e63fa8257a943e10888 on master.

Coverage decreased (-0.2%) to 85.996% when pulling 1f6fe965651f1b2337ba67636788f20e08543dad on sc-optional-end into 0532a3b617512020751d7e63fa8257a943e10888 on master.

Coverage decreased (-0.05%) to 86.417% when pulling c06e5998fc305a03ac6e2ea2faa55143933a196e on sc-optional-end into c43f761cb3093741a996bd7bc914f84f8c2e75ae on master.

@mparent61 @benghaziboy

Coverage decreased (-0.3%) to 86.218% when pulling b528bf728525737587e5684f730ea6270a26248f on sc-optional-end into c43f761cb3093741a996bd7bc914f84f8c2e75ae on master.

I give it 💋

LGTM

Coverage increased (+0.007%) to 86.417% when pulling 0806c6f161c294cac1d4d993fd7a939afdf5decf on sc-optional-end into 3f6592866a6c74f296207e86a97853316f7035de on master.

Coverage increased (+0.007%) to 86.417% when pulling 0806c6f161c294cac1d4d993fd7a939afdf5decf on sc-optional-end into 3f6592866a6c74f296207e86a97853316f7035de on master.

Coverage increased (+0.007%) to 86.417% when pulling 0806c6f161c294cac1d4d993fd7a939afdf5decf on sc-optional-end into 3f6592866a6c74f296207e86a97853316f7035de on master.

Coverage increased (+0.03%) to 86.493% when pulling 2ebb0b8a5bb9e8076df279ed1d864dc685ec7a0f on sc-optional-end into 304bcd1e78b00a99ba6dbd36ef902e2755295b2d on master.


Fix some lints and firewalld policies

Linked Issues
Partially close #321

You will need to sign all commits submitted. See https://github.com/k3s-io/k3s-ansible/pull/323/checks?check_run_id=23445098776

@psztoch Did you still want to handle this PR, or are you going to just carry patches in your fork?

Closing in favor of https://github.com/k3s-io/k3s-ansible/pull/329 and https://github.com/k3s-io/k3s-ansible/pull/326


code cleanup/refactor

Refactor to use es6 classes and async/await instead of callbacks.
This will make it easier to switch to a different ticker api in the
future if needed.
More useful console logging added to help users debug updates.

On #15 , I tried to create a brand new manual holdings and wow, it started updating... so going to transfer over each of my items.
While testing this PR, the name of $BAT is "Basic Attention Token" but pfcrypto said it was going to skip this one.
skipping account named: 'BASIC ATTENTION TOKEN'

I can switch to $BAT but not sure if its expected behavior to skip over it

It searches for id or symbol, not "name" in the https://api.alternative.me/v1/ticker/?limit=0 endpoint.
so you would want basic-attention-token or BAT. In the v2 endpoint example you shared (not used) id seems to now be website_slug

Suggest changing this in readme.md.
Add a holding in the account edit page. Enter the full name of the crypto currency, or the ticker symbol. Example: "BITCOIN" or "BTC". Enter the number of coins you hold (decimal is fine) and any price.
Only under Troubleshooting does it say to use the id or symbol.

Updated the readme and added support to lookup by name, so Basic Attention Token should now work. To prevent collisions in the map, a coin won't overwrite another so you may have to fall back to 'symbol', then 'name' in that order if it gives incorrect data.

It takes my login 8-10 seconds per coin too, that's all on personal capital tho.

I tested trying to put receive addresses for my wallets in the descriptions.
This happened.
mapping crypto prices to pc holdings...
personalcapital.js:241 skipping account named: ''
personalcapital.js:249 mapping wallet balances for 14 accounts...
personalcapital.js:258 attempting to find balance for account BITCOIN-CASH
personalcapital.js:258 attempting to find balance for account ETHEREUM
personalcapital.js:258 attempting to find balance for account BITCOIN
personalcapital.js:158 Uncaught (in promise) TypeError: Cannot destructure property 'key' of 'BlockCypherAPI.balanceMap[symbol]' as it is undefined.
    at Function.getBalance (personalcapital.js:158)
    at personalcapital.js:266
    at Array.map (<anonymous>)
    at main (personalcapital.js:253)
getBalance @ personalcapital.js:158
(anonymous) @ personalcapital.js:266
main @ personalcapital.js:253
async function (async)
main @ personalcapital.js:207
(anonymous) @ personalcapital.js:313
postMessage (async)
(anonymous) @ VM197:1
(anonymous) @ personalcapital.js:326

@didyouexpectthat thank you for all the testing. Added a note to the readme for the coins that wallet balance is supported on (BTC, ETH, LTC, DOGE, erc20 tokens) and fixed the nonexistent key.

Thank you!
My balance always go to 0. I use Coinbase mainly so not sure exactly which address to try since it generates a new address for every transaction... when I query my receive addresses on ethplorer and blockcypher, I can confirm they all show 0 balance as well... so I will look into why that is... but otherwise, no major issues seen in latest refactor.
On my setup, I have personalcapital.js:241 skipping account named: '' but zero idea where a blank account name is at. Is it possible to add which investment account in PC this is coming from in the console so I can delete/recreate or review/fix? like skipping account named '' from '$investmentaccountname' ?

I have the same empty ticker in my accounts, its a hidden cash account. I added better logging there to show the details on the account.
No idea about coinbase, my only advice is: if you don't own your private key, you don't own your coins. You can skip the wallet address in the description and set your shares manually.

Ahhh, the cash account. Adding the details helps clarify that, too. Thanks! That being said, I've tested up to what I have available for me to test right now. I am not having any issues with it updating the coins anymore. 🙇 🙇
I hear you about the coin ownership. I will eventually migrate off of Coinbase and keep them local.
Thanks again.


fix: renamed peak to peaks

Codecov Report

Merging #12 (57cd626) into master (bd44f28) will decrease coverage by 0.11%.
The diff coverage is 66.66%.

@@            Coverage Diff             @@
##           master      #12      +/-   ##
==========================================
- Coverage   87.70%   87.58%   -0.12%
==========================================
  Files          56       56
  Lines         732      733       +1
  Branches      190      191       +1
==========================================
  Hits          642      642
  Misses         89       89
- Partials        1        2       +1

Impacted Files
Coverage Δ

src/data/spectrum13C.ts
100.00% <ø> (ø)

src/data/spectrum1H.ts
100.00% <ø> (ø)

src/data/spectrumDEPT135.ts
100.00% <ø> (ø)

src/data/spectrumEditedHSQC.ts
100.00% <ø> (ø)

src/data/spectrumHSQC.ts
100.00% <ø> (ø)

src/utilities/signals/getSignals1D.ts
92.00% <50.00%> (-3.84%)
:arrow_down:

src/utilities/signals/getSignals2D.ts
94.59% <100.00%> (ø)

Continue to review full report at Codecov.

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


feat!: update iOS installation to Hyperledger and installation instructions

This PR expands upon @niallshaw-absa's efforts in #54, and places the IndySDK framework file and podspec within this Hyperledger repo. I've left the podspec author under @niallshaw-absa, as you performed the majority of the work, but I'd be happy to change this if desired. Again, thank you to your efforts @niallshaw-absa!
Additionally, this PR updates:

The iOS instructions to include configuring of setting the Bitcode and Build Libraries for Distribution, and notes that Simulators are currently not supported.
The Android instructions to install Hermes and remove an unnecessary Java import.

If any testing is desired, an essentially identical setup is available using
source 'https://github.com/JamesKEbert/indy-sdk-react-native'

I've marked this as a breaking change, as noted by @TimoGlastra in https://github.com/hyperledger/indy-sdk-react-native/pull/54#issuecomment-1217811816

@JamesKEbert Thanks for the updates 👍
Hermes is actually not needed if set android:extractNativeLibs="true" see https://github.com/hyperledger/indy-sdk/issues/2346#issuecomment-944254027. So, maybe just mention it in your Hermes description.
Also, I'm not sure if it's a good idea to put binary files into the repo with source code 🤔 🤷♂ If we add Android libs It might bloat the size of the repo to almost 50 MB and that might grow with eventual updates of those libraries (I'm not sure how GitHub handles incremental updates for binary files now). Does Hyperledger have some shareable storage for such cases?

Hey @jakubkoci, thanks for the review & comments! I didn't quite follow on your comment surrounding Hermes, based off of what you mentioned in the linked thread, android:extractNativeLibs="true" will also crash the app with a ZMQ error, so I'm not quite sure how that helps.

App with React Native 0.64.2 also crashes with ZMQ error when you set the following flag in AndroidManifest.xml file

Let me know what I'm missing though.

I'm not sure if it's a good idea to put binary files into the repo with source code 🤔 🤷♂ If we add Android libs It might bloat the size of the repo to almost 50 MB

I do agree on this, but I don't think we need to add the Android libs, as the existing CI/CD referenced for Android installation works fine for Android, it's just iOS it's broken with as the last version available is 1.8.2.

and that might grow with eventual updates of those libraries (I'm not sure how GitHub handles incremental updates for binary files now).

Given the frequency of updates is low--the last release, 1.16.0, was released in February of 2021, I don't expect the amount of storage required to be immense here. We've had a community issue of not having a consistent location at which the Indy.Framework file has been made available, which has contributed to reducing the ease of use of indy-sdk-react-native.
I am okay if we have a different place in mind for the Indy.Framework, but using the Hyperledger Github seemed like the least controversial location, but I'm definitely not set on it.

Does Hyperledger have some shareable storage for such cases?

@TimoGlastra do you have any insight here?

(I'm not sure how GitHub handles incremental updates for binary files now)

This did make me realize that the zip file should likely have a version in the name, that way we don't override it or break backwards compatibility with any future indy releases.
--
I would definitely like to hear additional thoughts on the above though! Thank you :)

@TimoGlastra do you have any insight here?

Not sure. Jakub and I have been disagreeing on this for a long time. In my opinion we should first focus on ease of use (so adding it to the repo) and later focus on reducing repo / package size.
We're now just using expo for everything with the indy-sdk-expo-plugin meaning we're not affected by this issue ourselves anymore. That repo has the binaries stored in the repo / npm package / plugin itself.

I told you @JamesKEbert , this was a hot topic some time ago and you revamped it 😛.
While I agree with both sides, I'm a bit curious about why this IndySdk.zip cannot be uploaded to the repo from where it came from (indy-sdk or the sovrin releases). I feel that it would be more 'trustable' a binary stored in repo.sovrin (even if it was uploaded manually) than a repo in github. I'm sure there is a good story behind this: I'll be happy to hear it 😄

@JamesKEbert Ah, it works when it's set to android:extractNativeLibs="false", which is currently default. Sorry for the confusion. The point is that our app is running without Hermes and connection to the ledger without a problem.
Regarding the binaries :)
To me knowledge the removing binary files from git is not an easy task:

Remove binaries and big files from git repo |
GIT remove large binary Files -

I did it for our Absa React Native wallet repo when it has 300 MB and I was lucky that we were just 2 developers and I could push to a newly created repo on Github.
If our argument is easy-to-use, then we’re good with the current setup, aren’t we?
If the problem is that Absa is hosting it, which can be an issue when Absa goes out of business or decides to remove it or restrict access, then I 100 % agree with you. But I’m sorry I’m a bit hesitant about an approach when we try to solve it the easiest way for us now without worrying about future developers and maintainers.

I've been thinking, and what if we add the indy-sdk binary to the release on github. You can add multiple assets, and that way we can download it from the HL github, but it is not actually in the repo.
I've added it as an example to the 0.2.2 release:

https://github.com/hyperledger/indy-sdk-react-native/releases/download/0.2.2/IndySdk.zip
https://github.com/hyperledger/indy-sdk-react-native/releases/0.2.2

The approach I've been meaning to pursue was to ask Ry if there are any build hosting resources that Hyperledger has available (which I can still do if we want to). Your solution seems an elegant approach to me though @TimoGlastra!

I've been thinking, and what if we add the indy-sdk binary to the release on github. You can add multiple assets, and that way we can download it from the HL github, but it is not actually in the repo.

💯 👍

I've updated the PR as discussed in the AFJ Call 10-13-22.
Thing of note--since we've updated to 1.16.0 of indy I made the assumption that we'd upload to 0.2.2 the Indy.Framework created by Berend from https://github.com/animo/Indy.Framework that would be named ios-indy-sdk-1.16.0.zip @TimoGlastra. I created a corresponding 1.16.0 podspec as well.

Thing of note--since we've updated to 1.16.0 of indy I made the assumption that we'd upload to 0.2.2 the Indy.Framework created by Berend from https://github.com/animo/Indy.Framework that would be named ios-indy-sdk-1.16.0.zip
Looks like we will also have to rename the existing IndySdk.zip to ios-indy-sdk-1.15.0.zip also, right?

I created a corresponding 1.16.0 podspec as well.

Will the latest podspec automatically be used?

Any further update on this, or can the change be merged and released?

Just want to get confirmation that it actually works with the new url when you do a pod install / add it to a project. If someone can test this, we can merge it and create a new release

I've confirmed no raw.githuberusercontent urls are present--unfortunately the source command cannot specify a branch, so it must be main, which means that it must be merged in order to be tested. I can replicate on my personal repo if desired, but assuming the changes look good, I'd rather merge and then test.
Happy to help as needed 👍

Will the latest podspec automatically be used?

Yes--since we don't specify a version for Indy in the indy-sdk-react-native.podspec it should use the most recent version.


Remove backslash escapes within code spans

@brendanzagaeski : Thanks for your contribution! The author, @rachel-msft, has been notified to review your proposed change.

#sign-off


ValueError: Filter must not be larger than the input: Filter: (8, 8) Input: (4, 84)

Hello, I install all dependencies and run the first train command python async_dqn.py --experiment breakout --game "Breakout-v0" --num_concurrent 8, but it come out an error. It seems that the input size (4,84) is wrong?

I got this error when I was running tensorflow version 10, upgrading to 11 fixed it.

vim ~/.keras/keras.json and change 'tf' to 'th', it will solve this problem.

@LinZichuan Thanks, it works for me.


override_config in multithreaded (parallel) tests execution

Our test suite that utilizes override_config decorator sometimes fails when we execute tests in parallel (value in config in the test body is different than the one defined in override_config).
My theory is that config in test_A gets overridden in the middle of the test execution by test_B that started after override_config from test_A has been applied.

For parallel testing and overriding, have you considered using another backend that would prevent this from happening (try in-memory for example). It would also help to know which one you are using in the tests.

Which one would work? If they are running on the same machine in parallel, they would still grab the value from the same spot

Recently I've run through a pretty similar issue. In my case using the database backend with different spots for each site it turned out it also used the in-memory cache which affected all the sites and messed up config values.
For such case you can either turn the cache off
CONSTANCE_DATABASE_CACHE_BACKEND
or (like I do) set a different cache store prefix for each site
CONSTANCE_DATABASE_PREFIX

Currently trying this (using pytest):
@pytest.fixture(scope='session', autouse=True)
def setup_constance_prefix(worker_id):
    """For parallel test-running, use non-overlapping prefixes for Constance config vars to avoid clobbering."""
    if worker_id:
        settings.CONSTANCE_REDIS_PREFIX = 'constance:{}:'.format(worker_id)

Isolation in parallel run should be configured in project (django-constance while running does not know if this is a parallel run of test which should be separated or if it is usual run where separation is not needed.


Ledger not compatible with Runes

Got a user report that Ledger does not seem to be compatible with Runes. When interfacing with MagicEden and UniSat, they get an error when trying to list:

FWIW they are also having this issue on Xverse with Ledger, and are unable to even Transfer Runes to another wallet from there. So it looks to be a more Ledger-specific issue.
I just wanted to put this issue in for tracking purposes, and hopefully we can triage with Ledger.

Possibly related to https://github.com/leather-wallet/extension/issues/4619

Ledger has resolved the issue, their update of the Bitcoin app to version 2.2.3 (or higher) will allow users to
Sign minting Runes with Leather connected to a Ledger device
Sign Etching runes                                "
Sign transferring runes                          "
When you use Luminex.io for example.
Listing Runes on ME is still broken, likely due to #4619 and fails with "the operation on device was rejected".


Generation of Client for ServiceBus

Hi
the Specs for ServiceBus were just added (6 hours ago) - please can we get an SDK generated for it? :)
Thanks
Paul

This is in Azure Go SDK new release now.
Version v3.2.0-beta.


how change DOCKER_CUSTOM_IMAGE_NAME appsetting to LinuxFxVersion

1, where can I find the old DOCKER_CUSTOM_IMAGE_NAME appsetting.
2, can I change json in Microsoft.Resources->deployments? Actions(POST,DELETE) is banned.
any document or link will be grateful.

Got it.
Microsoft.Web->sites->yourResourceGroupName->appsettings, I change DOCKER_CUSTOM_IMAGE_NAME to LinuxFxVersion and worked


Type checker: subclasses inside generics aren't treated as subclasses

Feel free to update the title of this issue
Compiler version: 0.35.1
Operating system: Ubuntu 20.04
Minimal Example
def foo : Array(Int)
  [] of Int32
end

foo

 1 | def foo : Array(Int)
               ^
Error: method must return Array(Int) but it is returning Array(Int32)

Another Example
This isn't just with Int, Array, or other builtin types. Another example:
class A(T)  ; end
class B     ; end
class C < B ; end

def foo : A(B)
  A(C).new
end

foo

 5 | def foo : A(B)
               ^
Error: method must return A(B) but it is returning A(C)

Note
The expected behavior here is up to the language designers. This works in TypeScript and mypy, but fails in Java.
class A<T> {}
class B {}
class C {}

function foo(): A<B> {
    return new A<C>();
}

foo();

class Main {
    public static class A<T> {}
    public static class B {}
    public static class C extends B {}

    public static A<B> test() {
        return new A<C>();
    }

    public static void main(String[] args) {
        test();
    }
}

Main.java:7: error: incompatible types: A<C> cannot be converted to A<B>
        return new A<C>();
               ^
1 error

Duplicate of #3803

Missed that one when I searched 👍


On dial, if caller hangs up first, when callee hangs up there is an error

Ok, that protocol error occurs when:

Farside -> nearside
Farside hangs up first
nearside stays nailed up
Error throws when nearside hangs up

If nearside hangs up first, the farside gets hung up just fine
https://gist.github.com/1f928559e0b4d417707b
Also, here is once where it causes the actor to die:
https://gist.github.com/ccdfd08c9d1c7135293b

Here it is again:
https://gist.github.com/11cb5687cbe81614c35c

Fixed


Add ingress

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.special.fy seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.


Moving content tree state after checking the error

Moving content tree state from RESOLVING_TAG to RESOLVED_TAGS after
checking the error in resolver status.
Signed-off-by: Rishabh Gupta<EMAIL_ADDRESS>

Does this fix some outstanding bug or issue?

Nope. Found that while iterating over the code.


Bugfixes

This will address the issues in #11. It will also use the new taggable trait and the new test suite.

This could not be properly tested until we merge https://github.com/php-cache/taggable-cache/pull/9 and tag it with version 0.2.

Current coverage is 100.00%

Merging #12 into master will not affect coverage as of 8a2df06

@@            master     #12   diff @@
======================================
  Files            2       2
  Stmts          100     132    +32
  Branches         0       0
  Methods         20      23     +3
======================================
+ Hit            100     132    +32
  Partial          0       0
  Missed           0       0

Review entire Coverage Diff as of 8a2df06

Powered by Codecov. Updated on successful CI builds.

Thank you for reviewing this.


Stop loading a page after timeout

Some times I need to force stop loading a web page by timeout (max loading but not longer than timeout). pageLoadStrategy doesn't help in this case.
If this functionality is interesting not only for me - lets do it!
How to implement it:
Future: http://stackoverflow.com/questions/28108022/running-asynchronous-code-in-java-with-timeout
And executeJavascript(): https://stackoverflow.com/questions/978740/javascript-how-to-detect-if-document-has-loaded-ie-7-firefox-3
with:
window.stop();

Hi @vasilevichra!
This problem is actual for us too. Sometimes Chromedriver hangs when executing our tests.
Yes, your proposed solution could help, but probably there is simpler solution.
As you know, Selenium webdriver communicates with real browser via HTTP requests.
Selenium just could use shorter timeouts for these requests.
Currently Selenium sets too big timeout (about 5 or 10 minutes), and this is hardcoded. We cannot configure/change it.
I suggest the following: we could make a pull request for selenium webdriver to make this timeout configurable. What do you think, does it resolve your problem?

hi @asolntsev !!!
I agree with you. My proposal look like a workaround.
Making timeout in Selenium will solve this problem.
Will you make pull request?

@vasilevichra Yes, I will do the pull request.

Close old issue. Feel free to reopen and start disscussion again if it still needs to implement.


API call (csstemplateasyncmodelview/api/read) fails with 401 in "Embedded Dashboard/IFrame" for token obtain by Admin User or any other user

Bug description
We are embedding the superset dashboard in one of our sites. When the user clicks on the dahsboard menu (3 dot option on top right corner), he gets 401 error for "csstemplateasyncmodelview/api/read" GET API call.
Everything else on the dashboard loads properly with all the data. Just this one error shows.
We are generating a guest token in the backend, and using this guest token to load the the superset dashboard within the Iframe in our portal.
Initially we thought it's a permission issue, but even if I use "Admin" user to generate the guest token we face same issue.
How to reproduce the bug

Load superset dashboard in iframe with Guest Token
Try to access(click on 3 dots) dashboard menu within Iframe.

Screenshots/recordings
superset-dashboard-error.pdf
Superset version
master / latest-dev
Python version
3.9
Node version
16
Browser
Chrome
Additional context
No response
Checklist

[X] I have searched Superset docs and Slack and didn't find a solution to my problem.
[X] I have searched the GitHub issue tracker and didn't find a similar bug report.
[x] I have checked Superset's logs for errors and if I found a relevant Python stacktrace, I included it here as text in the "additional context" section.

Hi there... since this bug is (a) seemingly stale and (b) pre-dating the Superset 4.0 release (now the currently oldest supported version), we'll close this as stale officially. If you're still facing this with Superset 4.0/4.1, we can revisit/reopen this, but clearly we're not getting a lot of corroboration/attention here, so we might need additional repro/setup steps, error details, etc.


fix: Replace 'Twitter' with 'X' to prevent 302/301 redirects

Hi @joseluismolina @brandoncorbin @silent1mezzo
Description:
This pull request updates all instances of "Twitter" to "X" across the relevant components to prevent 302/301 redirects when integrating with the updated platform. The change ensures that references to the deprecated "Twitter" URL now point correctly to "X", eliminating any potential redirect issues.
I have tested this update in a new project setup, implementing the updated X component. The functionality works as expected without any redirects or errors, confirming the implementation is correct.
Changes:

Replaced all occurrences of "Twitter" with "X" in components and code files.
Updated the X component to ensure proper integration without redirects.
Updated related documentation (if applicable) to reflect the name change.

Testing:

Set up a new project with the updated code.
Implemented the X component and verified that no 302/301 redirects occur.
All functionality tested successfully in the new environment.

This update improves compatibility with the new platform and avoids the redirect errors caused by the outdated Twitter references.

This full change will require a major bump since it'd break anyone who's importing the components and customizing them. I'm more inclined to just change the URL and keep the component names the same to prevent this

Hi @silent1mezzo
The repo has been updated back to twitter .
Could you please check this out?
Thanks

@rajpatel2435 can you revert the file change too? Then we can do that in a separate 3.x launch

Hi @silent1mezzo
the package.json or all file changes?

Hi @silent1mezzo
Can you please check this out? As I removed the unnecessary stuff that your requested.
Thanks

Looks good, thanks @rajpatel2435. I'll cut a release later tonight

2.0.3 has been published