support for GFA

Does this support GFA with genomes represented as Path records (as in vg and pggb)?

We were also thinking to support GFA. However, it seems some of the GFA files generated from tools, such as vg has no sample information, which makes the display of a graph less informative, for instance where specific nodes come from.
By the way, In this tool, we also support VCF. We can add functions to support GFA_v1 and GFA_v2 in later update if needed.

Most of the pangenome graphs that are built do not have sample information.
It is frequently not available because diploid assemblies are difficult to
obtain. In most cases, we have assemblies. In that case it's as if each
sample is haploid.
Where sample information is included, it is typically via a prefix of the
path name. This strategy is used in the HPRC. Including sample information
in the path name makes the graph and the FASTA that it is built from
contain identical sequence information. Other kinds of annotation break
this relationship and render any tool that works on FASTA incompatible with
the graph.
On Fri, Aug 6, 2021, 04:33 Yuxuan Yuan @.***> wrote:

We were also thinking to support GFA. However, it seems some of the GFA
files generated from tools, such as vg has no sample information, which
makes the display of a graph less informative, for instance where specific
nodes come from.
By the way, In this tool, we also support VCF. We can add functions to
support GFA_v1 and GFA_v2 in later update if needed.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/TF-Chan-Lab/panGraphViewer/issues/1#issuecomment-893957606,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AABDQEIGUFKZZDLNGWH3MLTT3NCWJANCNFSM5BT2BZ2Q
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&utm_campaign=notification-email
.

In v1.0.1, we have added a function to support GFA1 from such as your vg.

I'm closing this now and feel free to reopen

Hi @yuxuanyuan ,
I have a similar file as @ekg, but unfortunately, the conversion failed on the desktop and the app version of your tool
Last login: Thu Aug 22 11:56:24 on ttys002

The default interactive shell is now zsh.

To update your account to use zsh, please run `chsh -s /bin/zsh`.

For more details, please visit https://support.apple.com/kb/HT208050.

(base) C02W40N4J1GQ:~ waterhop$ cd Downloads/panGraphViewer/panGraphViewerApp

(base) C02W40N4J1GQ:panGraphViewerApp waterhop$ ls

README.md                   panGraphViewerApp.py        scripts

config.ini                  requirements.txt

config_default.ini          requirements_windows.txt

(base) C02W40N4J1GQ:panGraphViewerApp waterhop$ conda create -n pangraphviewerapp python=3.10

Channels:

 - conda-forge

 - bioconda

 - defaults

Platform: osx-64

Collecting package metadata (repodata.json): done

Solving environment: done

## Package Plan ##

  environment location: /Users/waterhop/miniconda3/envs/pangraphviewerapp

  added / updated specs:

    - python=3.10

The following NEW packages will be INSTALLED:

  bzip2              conda-forge/osx-64::bzip2-1.0.8-hfdf4475_7

  ca-certificates    conda-forge/osx-64::ca-certificates-2024.7.4-h8857fd0_0

  libffi             conda-forge/osx-64::libffi-3.4.2-h0d85af4_5

  libsqlite          conda-forge/osx-64::libsqlite-3.46.0-h1b8f9f3_0

  libzlib            conda-forge/osx-64::libzlib-1.3.1-h87427d6_1

  ncurses            conda-forge/osx-64::ncurses-6.5-h5846eda_0

  openssl            conda-forge/osx-64::openssl-3.3.1-h87427d6_2

  pip                conda-forge/noarch::pip-24.2-pyhd8ed1ab_0

  python             conda-forge/osx-64::python-3.10.14-h00d2728_0_cpython

  readline           conda-forge/osx-64::readline-8.2-h9e318b2_1

  setuptools         conda-forge/noarch::setuptools-72.2.0-pyhd8ed1ab_0

  tk                 conda-forge/osx-64::tk-8.6.13-h1abcd95_1

  tzdata             conda-forge/noarch::tzdata-2024a-h0c530f3_0

  wheel              conda-forge/noarch::wheel-0.44.0-pyhd8ed1ab_0

  xz                 conda-forge/osx-64::xz-5.2.6-h775f41a_0

Proceed ([y]/n)? y

Downloading and Extracting Packages:

Preparing transaction: done

Verifying transaction: done

Executing transaction: done

#

# To activate this environment, use

#

#     $ conda activate pangraphviewerapp

#

# To deactivate an active environment, use

#

#     $ conda deactivate

(base) C02W40N4J1GQ:panGraphViewerApp waterhop$ conda activate pangraphviewerapp

(pangraphviewerapp) C02W40N4J1GQ:panGraphViewerApp waterhop$ pip install -r requirements.txt

Collecting PyQt5==5.12.3 (from -r requirements.txt (line 1))

  Downloading PyQt5-5.12.3-5.12.10-cp35.cp36.cp37.cp38.cp39-abi3-macosx_10_6_intel.whl.metadata (2.2 kB)

Collecting PyQtWebEngine==5.12.1 (from -r requirements.txt (line 2))

  Downloading PyQtWebEngine-5.12.1-5.12.10-cp35.cp36.cp37.cp38.cp39-abi3-macosx_10_6_intel.whl.metadata (1.7 kB)

Collecting Django==3.1.3 (from -r requirements.txt (line 3))

  Using cached Django-3.1.3-py3-none-any.whl.metadata (3.7 kB)

Collecting django-bootstrap4==22.1 (from -r requirements.txt (line 4))

  Using cached django_bootstrap4-22.1-py3-none-any.whl.metadata (3.5 kB)

Collecting requests==2.28.1 (from -r requirements.txt (line 5))

  Using cached requests-2.28.1-py3-none-any.whl.metadata (4.6 kB)

Collecting django-environ==0.9.0 (from -r requirements.txt (line 6))

  Using cached django_environ-0.9.0-py2.py3-none-any.whl.metadata (10 kB)

Collecting djangorestframework==3.13.1 (from -r requirements.txt (line 7))

  Using cached djangorestframework-3.13.1-py3-none-any.whl.metadata (10 kB)

Collecting configparser==5.2.0 (from -r requirements.txt (line 8))

  Using cached configparser-5.2.0-py3-none-any.whl.metadata (11 kB)

Collecting natsort==8.1.0 (from -r requirements.txt (line 9))

  Using cached natsort-8.1.0-py3-none-any.whl.metadata (20 kB)

Collecting networkx==2.6.3 (from -r requirements.txt (line 10))

  Using cached networkx-2.6.3-py3-none-any.whl.metadata (5.0 kB)

Collecting fontawesome-free==5.15.0 (from -r requirements.txt (line 11))

  Using cached fontawesome_free-5.15.0-py3-none-any.whl.metadata (1.6 kB)

Collecting bokeh==2.2.3 (from -r requirements.txt (line 12))

  Using cached bokeh-2.2.3-py3-none-any.whl

Collecting dna_features_viewer==3.1.1 (from -r requirements.txt (line 13))

  Using cached dna_features_viewer-3.1.1-py3-none-any.whl.metadata (2.0 kB)

Collecting pysam==0.19.1 (from -r requirements.txt (line 14))

  Using cached pysam-0.19.1-cp310-cp310-macosx_10_9_x86_64.whl.metadata (1.4 kB)

Collecting pandas==1.3.5 (from -r requirements.txt (line 15))

  Using cached pandas-1.3.5-cp310-cp310-macosx_10_9_x86_64.whl.metadata (12 kB)

Collecting whitenoise==6.2.0 (from -r requirements.txt (line 16))

  Using cached whitenoise-6.2.0-py3-none-any.whl.metadata (3.3 kB)

Collecting jinja2==3.0.0 (from -r requirements.txt (line 17))

  Using cached Jinja2-3.0.0-py3-none-any.whl.metadata (3.5 kB)

Collecting numpy==1.21.6 (from -r requirements.txt (line 18))

  Using cached numpy-1.21.6-cp310-cp310-macosx_10_9_x86_64.whl.metadata (2.1 kB)

Collecting biopython==1.79 (from -r requirements.txt (line 19))

  Using cached biopython-1.79-cp310-cp310-macosx_10_9_x86_64.whl.metadata (12 kB)

Collecting matplotlib==3.5.2 (from -r requirements.txt (line 20))

  Using cached matplotlib-3.5.2-cp310-cp310-macosx_10_9_x86_64.whl.metadata (6.7 kB)

Collecting sqlparse==0.4.2 (from -r requirements.txt (line 21))

  Using cached sqlparse-0.4.2-py3-none-any.whl.metadata (3.4 kB)

Collecting tornado==6.2 (from -r requirements.txt (line 22))

  Using cached tornado-6.2-cp37-abi3-macosx_10_9_x86_64.whl.metadata (2.5 kB)

Collecting PyQt5_sip<13,>=4.19.14 (from PyQt5==5.12.3->-r requirements.txt (line 1))

  Downloading PyQt5_sip-12.15.0-cp310-cp310-macosx_10_9_universal2.whl.metadata (421 bytes)

Collecting asgiref<4,>=3.2.10 (from Django==3.1.3->-r requirements.txt (line 3))

  Using cached asgiref-3.8.1-py3-none-any.whl.metadata (9.3 kB)

Collecting pytz (from Django==3.1.3->-r requirements.txt (line 3))

  Using cached pytz-2024.1-py2.py3-none-any.whl.metadata (22 kB)

Collecting beautifulsoup4>=4.8.0 (from django-bootstrap4==22.1->-r requirements.txt (line 4))

  Using cached beautifulsoup4-4.12.3-py3-none-any.whl.metadata (3.8 kB)

Collecting charset-normalizer<3,>=2 (from requests==2.28.1->-r requirements.txt (line 5))

  Using cached charset_normalizer-2.1.1-py3-none-any.whl.metadata (11 kB)

Collecting idna<4,>=2.5 (from requests==2.28.1->-r requirements.txt (line 5))

  Using cached idna-3.7-py3-none-any.whl.metadata (9.9 kB)

Collecting urllib3<1.27,>=1.21.1 (from requests==2.28.1->-r requirements.txt (line 5))

  Using cached urllib3-1.26.19-py2.py3-none-any.whl.metadata (49 kB)

Collecting certifi>=2017.4.17 (from requests==2.28.1->-r requirements.txt (line 5))

  Using cached certifi-2024.7.4-py3-none-any.whl.metadata (2.2 kB)

Collecting PyYAML>=3.10 (from bokeh==2.2.3->-r requirements.txt (line 12))

  Using cached PyYAML-6.0.2-cp310-cp310-macosx_10_9_x86_64.whl.metadata (2.1 kB)

Collecting python-dateutil>=2.1 (from bokeh==2.2.3->-r requirements.txt (line 12))

  Using cached python_dateutil-2.9.0.post0-py2.py3-none-any.whl.metadata (8.4 kB)

Collecting pillow>=7.1.0 (from bokeh==2.2.3->-r requirements.txt (line 12))

  Using cached pillow-10.4.0-cp310-cp310-macosx_10_10_x86_64.whl.metadata (9.2 kB)

Collecting packaging>=16.8 (from bokeh==2.2.3->-r requirements.txt (line 12))

  Using cached packaging-24.1-py3-none-any.whl.metadata (3.2 kB)

Collecting typing-extensions>=3.7.4 (from bokeh==2.2.3->-r requirements.txt (line 12))

  Using cached typing_extensions-4.12.2-py3-none-any.whl.metadata (3.0 kB)

Collecting MarkupSafe>=2.0.0rc2 (from jinja2==3.0.0->-r requirements.txt (line 17))

  Using cached MarkupSafe-2.1.5-cp310-cp310-macosx_10_9_x86_64.whl.metadata (3.0 kB)

Collecting cycler>=0.10 (from matplotlib==3.5.2->-r requirements.txt (line 20))

  Using cached cycler-0.12.1-py3-none-any.whl.metadata (3.8 kB)

Collecting fonttools>=4.22.0 (from matplotlib==3.5.2->-r requirements.txt (line 20))

  Using cached fonttools-4.53.1-cp310-cp310-macosx_10_9_universal2.whl.metadata (162 kB)

Collecting kiwisolver>=1.0.1 (from matplotlib==3.5.2->-r requirements.txt (line 20))

  Using cached kiwisolver-1.4.5-cp310-cp310-macosx_10_9_x86_64.whl.metadata (6.4 kB)

Collecting pyparsing>=2.2.1 (from matplotlib==3.5.2->-r requirements.txt (line 20))

  Using cached pyparsing-3.1.2-py3-none-any.whl.metadata (5.1 kB)

Collecting soupsieve>1.2 (from beautifulsoup4>=4.8.0->django-bootstrap4==22.1->-r requirements.txt (line 4))

  Using cached soupsieve-2.6-py3-none-any.whl.metadata (4.6 kB)

Collecting six>=1.5 (from python-dateutil>=2.1->bokeh==2.2.3->-r requirements.txt (line 12))

  Using cached six-1.16.0-py2.py3-none-any.whl.metadata (1.8 kB)

WARNING: The candidate selected for download or install is a yanked version: 'fontawesome-free' candidate (version 5.15.0 at https://files.pythonhosted.org/packages/6f/3a/98383624239a75c57f37c8846e627e32848b67c50da18b5b6c5a3c02131b/fontawesome_free-5.15.0-py3-none-any.whl (from https://pypi.org/simple/fontawesome-free/))

Reason for being yanked: <none given>

Downloading PyQt5-5.12.3-5.12.10-cp35.cp36.cp37.cp38.cp39-abi3-macosx_10_6_intel.whl (39.8 MB)

   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 39.8/39.8 MB 3.3 MB/s eta 0:00:00

Downloading PyQtWebEngine-5.12.1-5.12.10-cp35.cp36.cp37.cp38.cp39-abi3-macosx_10_6_intel.whl (56.8 MB)

   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 56.8/56.8 MB 3.4 MB/s eta 0:00:00

Using cached Django-3.1.3-py3-none-any.whl (7.8 MB)

Using cached django_bootstrap4-22.1-py3-none-any.whl (24 kB)

Using cached requests-2.28.1-py3-none-any.whl (62 kB)

Using cached django_environ-0.9.0-py2.py3-none-any.whl (17 kB)

Using cached djangorestframework-3.13.1-py3-none-any.whl (958 kB)

Using cached configparser-5.2.0-py3-none-any.whl (19 kB)

Using cached natsort-8.1.0-py3-none-any.whl (37 kB)

Using cached networkx-2.6.3-py3-none-any.whl (1.9 MB)

Using cached fontawesome_free-5.15.0-py3-none-any.whl (21.0 MB)

Using cached dna_features_viewer-3.1.1-py3-none-any.whl (30 kB)

Using cached pysam-0.19.1-cp310-cp310-macosx_10_9_x86_64.whl (3.2 MB)

Using cached pandas-1.3.5-cp310-cp310-macosx_10_9_x86_64.whl (11.3 MB)

Using cached whitenoise-6.2.0-py3-none-any.whl (19 kB)

Using cached Jinja2-3.0.0-py3-none-any.whl (133 kB)

Using cached numpy-1.21.6-cp310-cp310-macosx_10_9_x86_64.whl (17.0 MB)

Using cached biopython-1.79-cp310-cp310-macosx_10_9_x86_64.whl (2.3 MB)

Using cached matplotlib-3.5.2-cp310-cp310-macosx_10_9_x86_64.whl (7.3 MB)

Using cached sqlparse-0.4.2-py3-none-any.whl (42 kB)

Using cached tornado-6.2-cp37-abi3-macosx_10_9_x86_64.whl (419 kB)

Using cached asgiref-3.8.1-py3-none-any.whl (23 kB)

Using cached beautifulsoup4-4.12.3-py3-none-any.whl (147 kB)

Using cached certifi-2024.7.4-py3-none-any.whl (162 kB)

Using cached charset_normalizer-2.1.1-py3-none-any.whl (39 kB)

Using cached cycler-0.12.1-py3-none-any.whl (8.3 kB)

Using cached fonttools-4.53.1-cp310-cp310-macosx_10_9_universal2.whl (2.8 MB)

Using cached idna-3.7-py3-none-any.whl (66 kB)

Using cached kiwisolver-1.4.5-cp310-cp310-macosx_10_9_x86_64.whl (68 kB)

Using cached MarkupSafe-2.1.5-cp310-cp310-macosx_10_9_x86_64.whl (14 kB)

Using cached packaging-24.1-py3-none-any.whl (53 kB)

Using cached pillow-10.4.0-cp310-cp310-macosx_10_10_x86_64.whl (3.5 MB)

Using cached pyparsing-3.1.2-py3-none-any.whl (103 kB)

Downloading PyQt5_sip-12.15.0-cp310-cp310-macosx_10_9_universal2.whl (122 kB)

Using cached python_dateutil-2.9.0.post0-py2.py3-none-any.whl (229 kB)

Using cached pytz-2024.1-py2.py3-none-any.whl (505 kB)

Using cached PyYAML-6.0.2-cp310-cp310-macosx_10_9_x86_64.whl (184 kB)

Using cached typing_extensions-4.12.2-py3-none-any.whl (37 kB)

Using cached urllib3-1.26.19-py2.py3-none-any.whl (143 kB)

Using cached six-1.16.0-py2.py3-none-any.whl (11 kB)

Using cached soupsieve-2.6-py3-none-any.whl (36 kB)

Installing collected packages: pytz, pysam, fontawesome-free, whitenoise, urllib3, typing-extensions, tornado, sqlparse, soupsieve, six, PyYAML, PyQt5_sip, pyparsing, pillow, packaging, numpy, networkx, natsort, MarkupSafe, kiwisolver, idna, fonttools, django-environ, cycler, configparser, charset-normalizer, certifi, requests, python-dateutil, PyQt5, jinja2, biopython, beautifulsoup4, asgiref, PyQtWebEngine, pandas, matplotlib, Django, bokeh, dna_features_viewer, djangorestframework, django-bootstrap4

Successfully installed Django-3.1.3 MarkupSafe-2.1.5 PyQt5-5.12.3 PyQt5_sip-12.15.0 PyQtWebEngine-5.12.1 PyYAML-6.0.2 asgiref-3.8.1 beautifulsoup4-4.12.3 biopython-1.79 bokeh-2.2.3 certifi-2024.7.4 charset-normalizer-2.1.1 configparser-5.2.0 cycler-0.12.1 django-bootstrap4-22.1 django-environ-0.9.0 djangorestframework-3.13.1 dna_features_viewer-3.1.1 fontawesome-free-5.15.0 fonttools-4.53.1 idna-3.7 jinja2-3.0.0 kiwisolver-1.4.5 matplotlib-3.5.2 natsort-8.1.0 networkx-2.6.3 numpy-1.21.6 packaging-24.1 pandas-1.3.5 pillow-10.4.0 pyparsing-3.1.2 pysam-0.19.1 python-dateutil-2.9.0.post0 pytz-2024.1 requests-2.28.1 six-1.16.0 soupsieve-2.6 sqlparse-0.4.2 tornado-6.2 typing-extensions-4.12.2 urllib3-1.26.19 whitenoise-6.2.0

(pangraphviewerapp) C02W40N4J1GQ:panGraphViewerApp waterhop$ ls

README.md                   panGraphViewerApp.py        scripts

config.ini                  requirements.txt

config_default.ini          requirements_windows.txt

(pangraphviewerapp) C02W40N4J1GQ:panGraphViewerApp waterhop$ python panGraphViewerApp.py

/Users/waterhop/Downloads/panGraphViewer/panGraphViewerApp/panGraphViewerApp.py:99: DeprecationWarning: sipPyTypeDict() is deprecated, the extension module should use sipPyTypeDictRef() instead

  class WorkerSignals(QObject):

/Users/waterhop/Downloads/panGraphViewer/panGraphViewerApp/panGraphViewerApp.py:142: DeprecationWarning: sipPyTypeDict() is deprecated, the extension module should use sipPyTypeDictRef() instead

  class NodesInfoBrowser(QWidget):

/Users/waterhop/Downloads/panGraphViewer/panGraphViewerApp/panGraphViewerApp.py:148: DeprecationWarning: sipPyTypeDict() is deprecated, the extension module should use sipPyTypeDictRef() instead

  class about(QWidget):

/Users/waterhop/Downloads/panGraphViewer/panGraphViewerApp/panGraphViewerApp.py:155: DeprecationWarning: sipPyTypeDict() is deprecated, the extension module should use sipPyTypeDictRef() instead

  class vcf_2_rGFA(QWidget):

/Users/waterhop/Downloads/panGraphViewer/panGraphViewerApp/panGraphViewerApp.py:342: DeprecationWarning: sipPyTypeDict() is deprecated, the extension module should use sipPyTypeDictRef() instead

  class renameFaHeader(QWidget):

/Users/waterhop/Downloads/panGraphViewer/panGraphViewerApp/panGraphViewerApp.py:455: DeprecationWarning: sipPyTypeDict() is deprecated, the extension module should use sipPyTypeDictRef() instead

  class NodeShapes(QWidget):

/Users/waterhop/Downloads/panGraphViewer/panGraphViewerApp/panGraphViewerApp.py:659: DeprecationWarning: sipPyTypeDict() is deprecated, the extension module should use sipPyTypeDictRef() instead

  class GraphModify(QWidget):

/Users/waterhop/Downloads/panGraphViewer/panGraphViewerApp/panGraphViewerApp.py:803: DeprecationWarning: sipPyTypeDict() is deprecated, the extension module should use sipPyTypeDictRef() instead

  class Main(QMainWindow):

2024-08-22 12:53:01.695 python[58718:8999735] +[CATransaction synchronize] called within transaction

2024-08-22 12:53:07.650 python[58718:8999735] +[CATransaction synchronize] called within transaction

2024-08-22 12:53:07.654 python[58718:8999735] +[CATransaction synchronize] called within transaction

2024-08-22 12:53:07.666 python[58718:8999735] +[CATransaction synchronize] called within transaction

2024-08-22 12:53:07.682 python[58718:8999735] +[CATransaction synchronize] called within transaction

2024-08-22 12:53:07.692 python[58718:8999735] +[CATransaction synchronize] called within transaction

2024-08-22 12:53:07.704 python[58718:8999735] +[CATransaction synchronize] called within transaction

2024-08-22 12:53:07.723 python[58718:8999735] +[CATransaction synchronize] called within transaction

2024-08-22 12:53:07.738 python[58718:8999735] +[CATransaction synchronize] called within transaction

2024-08-22 12:53:07.744 python[58718:8999735] +[CATransaction synchronize] called within transaction

2024-08-22 12:53:07.775 python[58718:8999735] +[CATransaction synchronize] called within transaction

2024-08-22 12:53:07.807 python[58718:8999735] +[CATransaction synchronize] called within transaction

2024-08-22 12:53:07.826 python[58718:8999735] +[CATransaction synchronize] called within transaction

2024-08-22 12:53:07.829 python[58718:8999735] +[CATransaction synchronize] called within transaction

2024-08-22 12:53:07.866 python[58718:8999735] +[CATransaction synchronize] called within transaction

2024-08-22 12:53:07.974 python[58718:8999735] +[CATransaction synchronize] called within transaction

2024-08-22 12:53:07.981 python[58718:8999735] +[CATransaction synchronize] called within transaction

2024-08-22 12:53:08.009 python[58718:8999735] +[CATransaction synchronize] called within transaction

2024-08-22 12:53:08.022 python[58718:8999735] +[CATransaction synchronize] called within transaction

2024-08-22 12:53:08.041 python[58718:8999735] +[CATransaction synchronize] called within transaction

2024-08-22 12:53:21,394 [INFO] Checking file: '/Users/waterhop/chnVSjapVSkorVSauVSusa.PanSN-1-19.fasta.gz.gfaffix.unchop.Ygs.view.gfa'

2024-08-22 12:53:27.579 python[58718:8999735] +[CATransaction synchronize] called within transaction

2024-08-22 12:53:37.276 python[58718:8999735] +[CATransaction synchronize] called within transaction

2024-08-22 12:54:03.735 python[58718:8999735] +[CATransaction synchronize] called within transaction

2024-08-22 12:54:08,246 [INFO] Checking folder: '/Users/waterhop/Documents/panGraph_outputxxx'

2024-08-22 12:54:21,712 [INFO] The input file is in GFA1 format and we are converting it to rGFA. Please wait!

Traceback (most recent call last):

  File "/Users/waterhop/Downloads/panGraphViewer/panGraphViewerApp/scripts/gfa2rGFA.py", line 241, in <module>

    run.convert()

  File "/Users/waterhop/Downloads/panGraphViewer/panGraphViewerApp/scripts/gfa2rGFA.py", line 139, in convert

    S[newId] = {'seq':rev_comp(S[nodeId]['seq']),'len':S[nodeId]['len']}

KeyError: '1779060'

2024-08-22 12:57:21,487 [INFO] Parsing rGFA

2024-08-22 12:58:24,436 [WARNING] !!!!! Not the wanted rGFA format. Please refer to 'Manual' to generate a proper one

2024-08-22 12:58:25,097 [INFO] Parsing rGFA

Traceback (most recent call last):

  File "/Users/waterhop/Downloads/panGraphViewer/panGraphViewerApp/panGraphViewerApp.py", line 1405, in fmtcvtDone

    self.run = PanGraph(f"{self.gfa}", f"{self.outDir}")

  File "/Users/waterhop/Downloads/panGraphViewer/panGraphViewerApp/scripts/panGraph.py", line 134, in __init__

    self.inf = self.parseRGFA(nodeIdDict)

  File "/Users/waterhop/Downloads/panGraphViewer/panGraphViewerApp/scripts/panGraph.py", line 175, in parseRGFA

    with open(self.gfa) as f:

FileNotFoundError: [Errno 2] No such file or directory: '/Users/waterhop/Documents/panGraph_outputxxx/chnVSjapVSkorVSauVSusa.PanSN-1-19.fasta.gz.gfaffix.unchop.Ygs.view_converted.gfa'

Abort trap: 6

What did I miss?


[5.2] Stop supporting badly formatted class names

Class names are defined without a leading slash. Anyone that tries to include one is wrong. Their only purpose is to escape the namespace in actual code.
This yields a large performance improvement in an out of the box laravel app.

Can you tell how large the performance improvement is?

It's unclear. I'm getting between 10% off load times. Taylor tried it out using load loads per second as a metric, and the difference is smaller, more like 2%.

Just curious :smiley:! Well 2%-10% seems reasonable indeed.

Yeh, turns out on a native laravel 5.2 app, we call that function 92 times...

So this improvement is just because it affects the core of Laravel: The Container.
So if I get the purpose right these will work:
App::make('MyVendor\MyNamespace\MyClass');

App::make(\MyVendor\MyNamespace\Myclass::class);

And this works in 5.1 and won't work in 5.2 anymore right?:
App::make('\MyVendor\MyNamespace\Myclass');

And this works in 5.1 and won't work in 5.2 anymore right?:

Yeh, but the point is that nobody should be writing code that looks like that. We can just slip this into the upgrading guide for anyone that is.

@ArjanSchouten Yes, your examples were correct btw. :)

Just to summarize ;)
It's strange indeed!

:+1:

:+1:

This ended up being not much of a performance gain.

Leaving this here for consideration, and benchmarking on actual apps.

We need more feedback here from the community. How does perform on your real word apps?

As soon as possible I will do some tests.

This has been handled in ff993b806dcb21ba8a5367594e87d113338c1670 :-)
(Laravel 5.4)


Write ports to the manifest

In order for tools to better describe multiple endpoints int the manifest, we must include port information. At runtime most of the port information is dynamically generated and thus not described (for anything but containers), that doesn't work well when trying to deploy to various environments. We allocate ports in situations where there are none to match the runtime behavior.
The exposed port (port in the manifest) is the port used to talk to this binding.
The target port (containerPort in the manifest) is the port the resource binds to.
Rules:
~1. For http and https schemes, if no port has been specified, we use 80 and 443 for http and https schemes.~

In the manifest, bindings MUST always have a target port. If there is none, one is dynamically allocated.
The exposed port is allocated if there's no container port is allocated.

Microsoft Reviewers: Open in CodeFlow

Replaced by https://github.com/dotnet/aspire/pull/3274


CB-20962 Elliminate the depencency on dhclient-enter-hooks

See detailed description in the commit message.

retest this please


secret in minikube needs to deleted while terminating HPO

While terminating the HPO in minikube, secret still exists. It needs to be deleted.

Fixed via #112


Are there any plans to make the app compatible with other h-sites? Or is it dead now?

I love the app, and I think it would be a shame if it just died. Can it be repurposed for use with other sites like nHentai?

I'm hoping he recodes the app to be able to view archives downloaded from EH, so that it can be an offline reader as well, since EH still exists but without the cursed tags.
If you want an app that reads other sites, tachiyomi and its plugins can do that easily.

If you want an app that reads other sites, tachiyomi and its plugins can do that easily.

True, already switched to it, but personally I prefer EhViewer's design, and Tachiyomi really is made more for regular manga. When you tap on a doujin in EhViewer for example, you immediately open the doujin. In Tachiyomi you first get the chapter list, which is inefficient and pointless for doujin.

Since e-hentai is still there, EhViewer is not dead, but dying.
EhViewer is e-hentai viewer. It's confusing if EhViewer supports other sites. I prefer developing a new app with another name, instead of changing the behavior of EhViewer.


Fix typo in vagrantfile

Patch for #133

Verified that @yoku0825 has signed the CLA. Thanks for the pull request!


[GCP] | Conditionally create project asset feed or organization asset feed

Issue:
When executing terraform apply with project feeds that already exist within the GCP account, Terraform fails and returns an error stating that the feed already exists.
Solution:
To support the use of existing feeds, an external script is introduced to ensure that Terraform skips the creation of an asset feed for a project or organization if it already exists, thereby preventing the duplication error.
Changes Include:

Added an external script to detect existing asset feeds within the specified project or organization.
Introduced an extra logic that conditionally bypasses the creation step when a feed is found.
Enhanced support for multi deployment setups by adding an extra variable environment. (e.g stg, prod)`
Updated default naming convention to utilize the given integration_name and environment.
e.g my-gcp-integration-prod, my-gcp-integration-stg,my-gcp-integration-dev

Benefits:

Prevents Terraform from failing due to duplicate feed errors.
Allows for smoother integration with pre-existing GCP asset feeds.
Easy identification of integration resources due to the consistent naming convention between Port and GCP integration

Testing:
Verified that terraform apply successfully skips the creation of existing feeds and applies changes without errors.

Do not merge yet

Review and Approve if okay, do not merge yet


Change Warzone to Modern Warfare 2019

Now that warzone is officially dead it's probably worth it to rename the game to modern warfare
Describe the bug
A clear and concise description of what the bug is.
Additional Details

Platform you are running BattleNetPrefill on:  [e.g Windows, Linux, Docker]
Discord Username (if you are part of the Lancache Discord Server) : [e.g username#0000]
Region : [e.g US East Coast, Germany, Australia]

Screenshots
If applicable, add screenshots to help explain your problem.

Released in v1.7.0


Turn 0.9.3 causes all tests in suite to be run rather than only changed files

Rails 3.2.1, turn 0.9.3 (from repo), rails-autotest 4.1.0 and 4.1.1, minitest 2.6.2, autotest-fsevent 0.2.7
(color and formatting are back and working)
in test_helper.rb - do NOT have 'require turn/autorun' - but have tried it both ways. Did have Turn.config.ansi = true
Any time any file is changed, entire suite of tests run.
Also, errors dump the entire stack trace - which again defeats pretty printing.
Have reverted to turn 0.8.3.
BTW - I like the PASS/FAIL/SKIP on the left rather than the right because I use really long test names, which makes a
very ragged right edge. If that is configurable, please add a couple of notes to the README
Thanks,
Mike

So it happens for 0.9.3 but not 0.8.3?
I don't see how turn has anything to do with deciding what autotest runs. What is the command line autotest is invoking?

I looked at this some more, and really have no idea why it's including all files in the same directory and not just the changed file. As previously mentioned, I don't know how Turn can even effect this. So I need something more to go on.
As for full stack trace. I am not seeing that. If $DEBUG is set to true it will dump a full trace instead of a filtered trace though.
I am going to go ahead and release 0.9.3 and then we can go from there and see if we can track these issue down further.


Improve GRADLE build Performance

Parallel test execution maxParallelForks, running multiple test cases in parallel is useful and helpful when there are several CPU cores.
According to Process forking options, Gradle will run all tests in a single forked VM by default. This can be problematic if there are a lot of tests or some very memory-hungry ones.
one option is to fork a new test VM after a certain number of tests have run. So our recommendation is to configure "forkEvery" and we give a specific value of 100
Disable report generation, Gradle will automatically create test reports by default which will slowing down the overall build. So it's better to disable the test reports while we don't need it
Compiler daemon, We found that the project had over 1000 Java and Groovy files, so running the Compiler as a separate process shortened the build time of this project
=====================
If there are any inappropriate modifications in this PR, please give me a reply and I will change them.

The failure here is caused by compilation error due to the inability locate classes generated by the annotation-processor I mentioned.  So it seems like parallel compilation does potentially (its parallel after all, its outcomes will be random) cause problems.

Thanks for your suggestions!@Sanne

We are going to delete the setting of Disable report generation

Parallel test can improve GRADLE build performance, however, this setting made this build failed . As it says :"Note that if you do run the tests in parallel, you will have to ensure that they are independent, i.e. don’t share resources, be that files, databases or something else. Otherwise there is a chance that the tests will interfere with each other in random and unpredictable ways."

Splitting this PR in smaller PRs is a good choice! And we will then put two  new PRs to discuss Process forking options and Compiler daemon

This PR is out of date based on the discussions and the split into separate PRs.  Let me know if I misremember.


Using hooks doesn't make so much sense

Using hooks doesn't make so much sense because it assume you have all the values needed to integrate already, however what if we fetch some data from the database, how do we then dynamically call the hook knowing fully well you cannot call a hook from within a function?

you can call a hook inside a function, but you cannot place a hook inside a nested function. There's a difference between the two

I think the issue the OP @himuraijujitsu  is trying to say is that the useFlutterWave takes in a config file at initialization stage.
This will pose an issue if there is an update to the config file.
To solve this issue, we could do something like:
const flutterwave= useFlutterWave(config)
flutterwave.sendPayment(config)
this will update the config at payment time.

I think the issue the OP @himuraijujitsu  is trying to say is that the useFlutterWave takes in a config file at initialization stage.
This will pose an issue if there is an update to the config file.
To solve this issue, we could do something like:
const flutterwave= useFlutterWave(config)
flutterwave.sendPayment(config)
this will update the config at payment time.


Pass arguments to subscriber callback

Hello, I wonder if it it is possible to pass an extra parameter to the subscriber callback. Does goroslib allow this somehow?  I checked the SubscriberConf struct definition,
https://github.com/aler9/goroslib/blob/978eeb6e825ee627aa2b33a765024ae9991139b2/subscriber.go#L24
and it does not seem have any field dedicated to this possibility. Is it possible to achieve this through the interface destined for the callback? The NewSubscriber function seems to limit this a bit
https://github.com/aler9/goroslib/blob/978eeb6e825ee627aa2b33a765024ae9991139b2/subscriber.go#L78
Context: my use case requires multiple topic subscriptions of the same type. For that I need to know to which topic, each message received belongs to. With rospy I would simply do something similar to what is suggested in the answer of this post https://answers.ros.org/question/231492/passing-arguments-to-callback-in-python/.
Apologies in advance if this is a golang specific question.
Best regards,
João Aguizo

Ahh perfect! That answered my question 👍 .
Thank you very much @aler9


Register app as share target for audio files

References:

https://developer.chrome.com/docs/capabilities/web-apis/web-share-target
https://web.dev/articles/workbox-share-targets
https://github.com/chromeos/bridging-the-native-app-gap/blob/master/fugu-journal/src/js/service-worker.js

Work in progress, but still not done.


Update versions for 0.1b3 release

Checklist

[X] Used a personal fork of the feedstock to propose changes
[X] Bumped the build number (if the version is unchanged)
[X] Reset the build number to 0 (if the version changed)
[x] Re-rendered with the latest conda-smithy (Use the phrase @conda-forge-admin, please rerender in a comment in this PR for automated rerendering)
[x] Ensured the license file is being packaged.

Hi! This is the friendly automated conda-forge-linting service.
I just wanted to let you know that I linted all conda-recipes in your PR (recipe) and found it was in an excellent condition.

@conda-forge-admin please rerender

I think this is ready to go @conda-forge-admin, please ping team

Hi! This is the friendly automated conda-forge-webservice.
I was asked to ping @conda-forge/text_extensions_for_pandas and so here I am doing that.


Fix the search baar sugetion issue

When we search for unknown items, it shows a message like 'No data found matching your search.

@codervivek5 Please assign me this issue. Please add gssoc-ext and hacktober-accepted labels.

please assign this task to me , i have done with making 3 websites for client ,so i am best for it


Slight wording tweak to skaffold continuous development info label

old:

new:

wdyt?

I wish there was an easy way to get the label to wrap properly. Currently it hides a portion of the text if the screen is made narrow enough.

It looks good, but about specified Kubernetes cluster, we don't choose one here (yet, until we have a selector for kubectl context), so could this be a bit misleading?

yeah good point. really, I want to say: ... to the Kubernetes cluster specified in your Skaffold configuration
But thats too long. Thinking..

I guess I'll just keep it as:
Watches the dependencies of your docker image for changes, so that on any change, Skaffold builds and deploy your application to a Kubernetes cluster.

The same thing you had before except for [a] Kubernetes cluster. Sound ok for now?


Naming of obs variables

What is your issue?
For ICOS data, when you do:
cp_data = retrieve_atmospheric(site="HPB",
                               force_retrieval=True,
                               force=True,
                               data_level=2,
                               species="n2o",
                               dataset_source="European ObsPack",
                               update_mismatch="from_source",
                               store=obs_store)
for x in cp_data:
    x.data.to_netcdf(...)

the variables in the object store have names formatted as e.g. n2o_variability, while the variables in the output .nc files have names formatted as e.g. n2o variability. I have been working on the parser for local icos format files (see PR #1140) - I tried to align the .nc output with the convention above (i.e. n2o variability), but in this case I end up with a space in the object store variable names as well. This is causing get_obs_surface to fail whenever an averaging period is specified, with the error:
---------------------------------------------------------------------------
ValueError                                Traceback (most recent call last)
/tmp/ipykernel_2936332/438447678.py in ?()
----> 1 obs = retrieve.get_obs_surface(site="cbw",
      2                                species="n2o",
      3                                network="icos",
      4                                inlet="207m",

~/openghg/openghg/retrieve/_access.py in ?(site, species, inlet, height, start_date, end_date, average, network, instrument, calibration_scale, keep_missing, skip_ranking, **kwargs)
    179             return ObsData(data=dataset, metadata=metadata)
    180         else:
    181             return None
    182     else:
--> 183         return get_obs_surface_local(
    184             site=site,
    185             species=species,
    186             start_date=start_date,

~/openghg/openghg/retrieve/_access.py in ?(site, species, inlet, height, start_date, end_date, average, network, instrument, calibration_scale, keep_missing, skip_ranking, **kwargs)
    426             rename[var] = "status_flag"
    427         if "integration_flag" in var:
    428             rename[var] = "integration_flag"
    429
--> 430     data = data.rename_vars(rename)  # type: ignore
    431
    432     data.attrs["species"] = species
    433

~/.conda/envs/openghg_dev_env/lib/python3.12/site-packages/xarray/core/dataset.py in ?(self, name_dict, **names)
   4396                 raise ValueError(
   4397                     f"cannot rename {k!r} because it is not a "
   4398                     "variable or coordinate in this dataset"
   4399                 )
-> 4400         variables, coord_names, dims, indexes = self._rename_all(
   4401             name_dict=name_dict, dims_dict={}
   4402         )
   4403         return self._replace(variables, coord_names, dims=dims, indexes=indexes)

~/.conda/envs/openghg_dev_env/lib/python3.12/site-packages/xarray/core/dataset.py in ?(self, name_dict, dims_dict)
   4231         set[Hashable],
   4232         dict[Hashable, int],
   4233         dict[Hashable, Index],
   4234     ]:
-> 4235         variables, coord_names = self._rename_vars(name_dict, dims_dict)
   4236         dims = self._rename_dims(dims_dict)
   4237
   4238         indexes, index_vars = self._rename_indexes(name_dict, dims_dict)

~/.conda/envs/openghg_dev_env/lib/python3.12/site-packages/xarray/core/dataset.py in ?(self, name_dict, dims_dict)
   4191             var = v.copy(deep=False)
   4192             var.dims = tuple(dims_dict.get(dim, dim) for dim in v.dims)
   4193             name = name_dict.get(k, k)
   4194             if name in variables:
-> 4195                 raise ValueError(f"the new name {name!r} conflicts")
   4196             variables[name] = var
   4197             if k in self._coord_names:
   4198                 coord_names.add(name)

ValueError: the new name 'mf_variability' conflicts

What is the right thing to do here? Get rid of the spaces everywhere (i.e. use n2o_variability in all cases)?

What is the right thing to do here? Get rid of the spaces everywhere (i.e. use n2o_variability in all cases)?
I would think this would be the right approach for consistency? We use "_" rather than spaces for all the other data variables I believe.

OK cool - in that case I will make the change to the standardise code that will do this. If you could look at the retrieve code to see why that ends up with spaces in the netcdf output that would be great!

But as long as we're happy that this is the way to go it isn't an urgent fix - it seems that the averaging expects the "_" so once I make this change to the standardise code Helene should be able to run her inversions


Where is the specification on what fields the Knowledge Base Search searches?

I THOUGHT the fields searched would be controlled by "Find" fields specified in the Knowledge Article Quick Find view but experimentation showed that is not the case.  By experimentation, I have found that it searches Title, Keywords, Description and Content.  It does NOT search Subject, which I find an odd omission.
This functionality needs to be spelled out so that Knowledge Articles can be developed in the most useful manner.

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

ID: 840288af-6763-d463-f8ab-dd74a603cf85
Version Independent ID: 43a55ad8-d881-fc83-fb52-b5440df8bef0
Content: Add the Knowledge Base Search control to Dynamics 365 Customer Engagement forms
Content Source: ce/customer-service/add-knowledge-base-search-control-forms.md
Service: dynamics-365-customerservice
GitHub Login: @anjgupta
Microsoft Alias: anjgup

The reader is requesting more information on the fields that are searched in a Knowledge base search. This has been discussed in detail in another topic, where we extensively talk about KB search:
https://docs.microsoft.com/en-us/dynamics365/customer-engagement/customer-service/customer-service-hub-user-guide-case-sla#search-for-knowledge-articles
So will give the link of that topic here for reference and will mark this as closed. The update will be available in the next merge.

Gosh darn!  I searched for half a day, both inside Dynamics documentation and on the web in general and didn't turn up that article.  Thanks for pointing me to it.

Thanks for the feedback, I can utilize your comments to make this and similar topics more searchable. Let me know if you are seeking more help around these topics.


Display matrix.to links to a specific user as "user tags"

Currently, when a message includes a tagged username, it is displayed just like a regular link. Instead, we should display it using a special element
Element displays user tags as shown below, and calls them "User Pills" because the displayed element is pill-shaped:

Discord displays them like so:

Implementation
Makepad's HTML widget supports displaying custom widgets as inline HTML components, so it should be straightforward to create a new widget (e.g., UserTag) and include that as a possible template for any HTML URL that is a matrix.to link to a specific user. User tag links look like this:
Kevin Boos

The Robrix-specific HTML widget instance is defined here: https://github.com/project-robius/robrix/blob/61f49943b3bb89161dfca26c8cfaec98705f1f42/src/shared/html_or_plaintext.rs#L34-L36
We will likely need to completely replace Makepad's default HtmlLink widget with a custom widget that supports displaying either a regular HTML link or a special UserTag. Once that widget is implemented, we'll need to override the default handling for the a HTML tag (a link), which is specified here in the code: https://github.com/project-robius/robrix/blob/61f49943b3bb89161dfca26c8cfaec98705f1f42/src/shared/html_or_plaintext.rs#L61
A UserTag should contain an Avatar and a Label with the user's displayable name.
Upon being clicked, a UserTag should open the UserProfileSlidingPane, which an Avatar already supports as of #78. This was implemented in #90.

PR #90 added support for handling when a user clicks on a matrix.to link or a user tag. But it doesn't change anything about how those links are displayed (they're still displayed as regular HTML links instead of the desired "User Pill" widget).


Benchmarks allocate memory during the benchmark

A lot of the benchmarks allocate memory during the bench. This skews -benchmem and ns/op results.
https://github.com/cloudfoundry/go-diodes/blob/1273221383160005b1d14fba9b1025db2a245c95/benchmarks_test.go#L32

This should be resolved by #15


Map exits and entrances

Use scenario engine to transition between two maps, having player leave one at a designated exit point, and enter another at the corresponding entrance point, changing the scenario.
After #8

MODIFICATION: A scene should support multiple maps. A character's starting position should be given by a map as well as coordinates, and the character should store their current map. Only characters on the current map should be rendered.


Scrolling issue on zoomed website on Chrome

When you zoom out on newest Chrome, and go to a subpage, the library crashes and disables scroll. As the result neither smoothscrolling and natoie browser scrolling are working.

Can you show me a concrete page that I can see?
Thanks

feel free to reopen if you have more details


Add tests for all inline documentation examples

Even better if the examples could be taken from the test suite, but that's a bit too ambitious for me today.

The test suite is such a disaster I'm going to close this ;)


modsec 2.9.2 and fail2ban

Hi all,
Recently i installed modsecurity v2.9.2 and my problem is the modsec_audit.log does not have the same format like other version and also i noticed the creation of new folder with the current date contains the real modsec_audit logs so i can't use the fail regex in the fail2ban tool in order to set up Fail2ban with Mod_Security 2.9.2
http://www.fail2ban.org/wiki/index.php/HOWTO_fail2ban_with_ModSecurity2.5
my config file :
LoadModule security2_module /usr/lib/apache2/modules/mod_security2.so
LoadModule unique_id_module /usr/lib/apache2/modules/mod_unique_id.so

SecRuleEngine On
SecRequestBodyAccess On
SecDebugLog /var/log/apache2/modsec_debug.log
SecDebugLogLevel 3
SecTmpDir /tmp/
SecUploadDir /tmp/
SecDataDir /tmp/
SecAuditEngine On
SecAuditLogType concurrent
SecAuditLogParts ABIDEFGHZ
SecAuditLog /var/log/apache2/modsec_audit.log
IncludeOptional /usr/share/modsecurity-crs/.conf
IncludeOptional /usr/share/modsecurity-crs/rules/.conf

problem solved juste i need to change SecAuditLogType concurrent ==> Serial

Closing as assuming problem was solved. Thanks for letting us know @rayenmessaoudi.


Convert animated gif to animated webp

Salutations Lovell !
What are you trying to achieve?
I think I miss something, but I though with one of the latest version of libvips, it's possible to output animated webp.
So I tried with the new version of sharp (0.23.0) to convert a gif to a webp (that works but only for the first frame, like before).
Am I missing something or it needs an enhancement ?
If it need an enhancement, I will be glad to do it (but if you can pinpoint the direction, it would be awesome)
Have a nice day!

Hello, I don't know sharp well, but at the command-line it's:
vips copy cogs.gif[n=-1] x.webp

ie. by default it just loads page 0. Set n (number of pages) to -1 to load all pages. Animated HEIC, PDF, TIFF etc. work in the same way.

(answering because I think Lovell is on holiday)

As John says, you'll need to let libvips know you want all the "pages" rather than the default behaviour of just using the first page/frame. This will be something like (untested):
sharp("cogs.gif", { pages: -1 }).toFile("x.webp")

https://sharp.pixelplumbing.com/en/stable/api-constructor/#parameters

Oh thanks! I missed this bit of docs :/
Thanks John too for the answer :)

@lovell I've managed to use that with no problem, and sure enough the output is an animated WebP. However, when using .resize() the output is just the first frame of the input GIF, with no animation. Is there something I'm missing?

Yes, if you run:
$ vips thumbnail cogs.gif[n=-1] tiny.gif 64

You get:

But:
$ vips resize cogs.gif[n=-1] tiny.gif 0.5

Makes:

This is because thumbnail has extra logic for resizing animated images. It has to pick a shrink factor which resizes each page exactly to the specified size, rather than resizing the whole toilet roll (sorry abou the name).

Are there any plans to implement the resizing of animated webp to Sharp? @lovell Would be very useful.

@shapish It's somewhat possible now if you use resize() and also manually set the pageHeight via .webp({ pageHeight }).
It will be much easier with #3013

all you need is to use  { animated: true } option
await sharp('in.gif', { animated: true }).toFile('out.webp');

this works for me

i want change this in webp but same animated in webp


Duplicating tab is significantly slower than new tab

Windows Terminal version
1.21.3231.0
Windows build number
10.0.26100.0
Other Software
zsh 5.9 (x86_64-ubuntu-linux-gnu)
Steps to reproduce

Set default profile to Ubuntu (might not be necessary, but I have only tested this on Ubuntu, with zsh as my shell)
Make sure that the PWD tracking is set upif test -n "$WT_SESSION"; then
    # See https://learn.microsoft.com/en-us/windows/terminal/tutorials/new-tab-same-directory
    __keep_current_path() { printf "\e]9;9;%s\e\\" "$(wslpath -w "$PWD")" }
    precmd_functions+=(__keep_current_path)
fi

Open new tab---this is always practically instant
Duplicate the tab---this sometimes takes 30s to even a minute; most of the times, this is roughly as fast as opening a new tab, but other times, it takes a long time (obviously, this is not WSL spin-up time, because WSL it already running, and even opening a new tab works immediately). No clear pattern to when it is going take longer to duplicate a tab though.

Expected Behavior
Duplicating a tab should not be faster than opening a new tab and running cd {prev tab working directory}
Actual Behavior
Duplicating the tab (sometimes) literally takes longer than me re-typing the whole path out by hand.

Do let me know if I can enable some tracing/logging that might help provide more details the next time that I hit upon the slowdown, to help reproduce the issue.


[github] can't create issues based on repository

Extension
https://github.com/raycast/extensions/tree/main/extensions/github0b1/extensions/github/
Description
After doing the initial setup to run the extension, trying to Create Issue is showing an error: "Failed to fetch data".
Steps To Reproduce

Install GitHub extension
Setup it (create the right token, with the right permissions)
Try to Create Issue
Search for a repository from another org, like my case
Wait some seconds while searching
See the error message

Current Behaviour
Display an error message "Failed to fetch data".
Expected Behaviour
Should display the right searched repository to allow me to go for the rest of the form to create the issue.

Do you have more details on the error? You should be able to copy the error logs with the Failed to fetch latest data error toast.

Do you have more details on the error? You should be able to copy the error logs with the Failed to fetch latest data error toast.

Oh, I'm sorry, I forgot to add the error log, adding it below:
Error:
Error: Something went wrong while executing your query. This may be the result of a timeout, or it could be a GitHub bug. Please include `CE4E:4ACB:19B30582:19F10D77:64620A89` when reporting this issue.: {"response":{"data":null,"errors":[{"message":"Something went wrong while executing your query. This may be the result of a timeout, or it could be a GitHub bug. Please include `CE4E:4ACB:19B30582:19F10D77:64620A89` when reporting this issue."}],"status":502,"headers":{}},"request":{"query":"query searchRepositories($query: String!, $numberOfItems: Int!) {\n  search(query: $query, first: $numberOfItems, type: REPOSITORY) {\n    nodes {\n      ...ExtendedRepositoryFields\n    }\n  }\n}\n\nfragment ExtendedRepositoryFields on Repository {\n  id\n  nameWithOwner\n  name\n  owner {\n    login\n    avatarUrl(size: 64)\n  }\n  url\n  mergeCommitAllowed\n  squashMergeAllowed\n  rebaseMergeAllowed\n  updatedAt\n  stargazerCount\n  viewerHasStarred\n  primaryLanguage {\n    id\n    name\n    color\n  }\n  hasIssuesEnabled\n  hasWikiEnabled\n  hasProjectsEnabled\n  hasDiscussionsEnabled\n  releases {\n    totalCount\n  }\n}","variables":{"query":"user:@me org:entria org:Open-Pix org:FantomRPG org:PepefyApp org:compsci-labs org:doskya-labs org:ccsseraphini org:learning-in-public org:Jeffaneios org:woovibr org:doskya","numberOfItems":100}}}
    at /Users/noghartt/.config/raycast/extensions/89648e03-cceb-4205-9f40-75fcb039a4c6/create-issue.js:220:23443
    at p (/Users/noghartt/.config/raycast/extensions/89648e03-cceb-4205-9f40-75fcb039a4c6/create-issue.js:220:16849)
    at Object.next (/Users/noghartt/.config/raycast/extensions/89648e03-cceb-4205-9f40-75fcb039a4c6/create-issue.js:220:16153)
    at l (/Users/noghartt/.config/raycast/extensions/89648e03-cceb-4205-9f40-75fcb039a4c6/create-issue.js:220:15711)
    at process.processTicksAndRejections (node:internal/process/task_queues:95:5)

Does it always fail or does it succeed sometimes?

Every time that I tried it, it fail. I tried some combinations of permissions on my token too, even putting all permissions together, didn't work.

Does your account or different orgs have lots of repositories?

Does your account or different orgs have lots of repositories?

Yes, more than 200 repositories summing all orgs + my account.

I am facing the same issue, I forked the extension to test it, and I found out that extension getting 100 repositories with the useMyRepositories function. When I changed that number to 10 it works fine ( but it retrieves 10 repository). Basically main issue is timeout. I also run the graphql with the same query and get the similar error. Maybe a pagination can fix this problem or the shrinking the retrieved data might help.

Unfortunately, pagination is a bit tricky to implement right now, but it's something we want to look into. The best thing to do now, as you said, would be to shrink the data and support typeahead search for repositories and other relevant fields.

Hey I have a similar issue
@noghartt
https://github.com/raycast/extensions/issues/6432

I think it's meanwhile working, can close.
Thanks for effort
On Tue, 6 Feb 2024, 09:05 raycastbot, @.***> wrote:

This issue has been automatically marked as stale because it did not have
any recent activity.
It will be closed if no further activity occurs in the next 10 days to
keep our backlog clean 😊
—
Reply to this email directly, view it on GitHub
https://github.com/raycast/extensions/issues/6519#issuecomment-1928972615,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABM5POMXNVHVEDKACA5HYT3YSHP3RAVCNFSM6AAAAAAYAILQMSVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSMRYHE3TENRRGU
.
You are receiving this because you commented.Message ID:
@.***>


How to use the pagination in redisson

If I have a list or set to save data,How can l get data by pagination?
Thanks

You can use List.subList method to implement pagination for RList object. For now pagination is not implemented.

As of 3.7.3 version you can use iterator method with batch/page size


Teams share dialog doesn't take the app added by user

Steps to reproduce
While sharing a content to teams, the share dialog always takes a particular app to show the preview, irrespective of the app added by the user in teams.
Also, the share dialog doesn't show the preview card directly, gets the show preview option before [the value of preview property is true by default].

Expected behavior
The share dialog should take the app added by user in teams and the preview card should come without show preview option.
Actual behavior
The share dialog takes a particular app and the preview card comes only after selecting the show preview option.
Error details
No response

@dharshini-s462 - Thanks for reporting your issue. We are checking this internally, we will update you soon.

@dharshini-s462 - We have tested using this sample.
We are also getting same show preview option.

We have raised a bug for the same. We will inform you once we get any updates on it.

@Nivedipa-MSFT  The preview card was shown directly without the show preview option before. May I know the actual behaviour of the preview in share dialog now?
Also please let me know if there are any updates on the other issue (While sharing a content to teams, the share dialog always takes a particular app to show the preview, irrespective of the app added by the user in teams.)

@Nivedipa-MSFT Kindly let us know if you have any updates on the issue.

@dharshini-s462 - We got an update from engineering team saying that share to teams only provide preview for the link you're sharing. Your link has to match a particular app for the preview to show up.

Hi @Nivedipa-MSFT , your comment doesn't answer our question.

If a user has an app added to teams from apps section, the share dialog always takes that particular app to show preview in share dialog. The behaviour has changed now. While sharing a card to teams, the share dialog takes a different app to show preview and doesn't pick the app added in teams.

The share dialog always gives show preview option instead of directly showing the preview card.  As you have already acknowledged this as a bug, can I get the detailed update on this part?


Essential steps for fuzzing

Hi,
I want to use SelectFuzz to fuzz my project and currently I'm trying to get it running with a small C++ program to test the setup.
Everything seems to be fine, i.e. there are no crashes or error messages, but the tool does not seem to find the crashes I manually inserted in the program.
I've checked the distance files and they contain distance information, as do BBcalls.txt, BBnames.txt, Ftargets.txt and all the other files in the temp folder.
Unfortunately, from the example fuzzing scripts it is not clear to me what steps are necessary to ensure successful fuzzing.
What is the usage of real.txt and why is it sometimes used equivalent to BBtargets.txt, sometimes not? Why do you use the genDistance.sh script in some cases, but not in all? And what is sense of compiling once more after genDistance.sh has been used, if the binary from the distance script (sometimes) is used for fuzzing anyways?
Could you please clarify the necessary steps to successfully run SelectFuzz? That would help me a lot.

Hi, thank you for the questions. First, real.txt includes the starting locations of basic blocks of your fuzzing targets, while BBtargets.txt is the code locations of your fuzzing targets. SelectFuzz uses real.txt but not BBtargets.txt. Second, we use genDistance.sh to generate input information and run it before the second instrumentation. That is why "what is sense of compiling once more after genDistance.sh has been used", as we generate distance in the first compilation and instrument in the second compilation (this is also the standard method in AFLGo). Third, I didn't find a case where there is no genDistance.sh, but SelectFuzz can also run without distance instrumentation as its main core is selective instrumentation.
For your question that you cannot trigger a vulnerability in your sample program, there might be multiple reasons. Did you write testing scripts following those in SelectFuzz/scripts/fuzz; Have you installed all dependency (or used the docker images we provide)? You can also check the binary size after the second compilation, it should be a little bit larger than binary without instrumentation and smaller than binary instrumented in AFLGo.

Hi,
thanks for your answer and explanations! I checked all again and it works now :-)
Just for helping me understand:
Why do you still include BBtargets.txt in the compiler flags using -targets=$TMP_DIR/BBtargets.txt if it is not used by SelectFuzz?
And I do not fully understand the definition of real.txt. How am I supposed to know the starting locations of basic blocks of my fuzzing targets? In my small sample file I used code locations for real.txt equivalent as I would have used for BBtargets.txt and it works, but as my example is small and simple, it could be accidental. My actual project is way larger so I'd like to understand it correctly in order to make sure it works.

You can ignore the BBtargets.txt since we do not use it.
About how to find the starting locations of basic blocks, you can check the definition of basic blocks first. A basic block is a sequence of instructions without any branches except at the beginning and end. After finding the basic blocks where the fuzzing targets are, you might set the starting code locations of the basic blocks in real.txt.

I think I still don't fully understand the usage.
I just ran my fuzzing script using only BBtargets.txt  and still the instrumentation run printed for most files [+] Instrumented x locations. Considering that AFL is used that makes sense, right? So where and how does real.txt come in? I grepped the code for usage of a file named like that but could not find it.

There's no change in binary size, whether I use BBtargets.txt only, real.txt only or both. Also fuzzing without real.txt works, i.e. finds new paths and all.
I grepped for real.txt in / and found a usage in a file called DFUZZPASS.cpp which is used by the getDistance.sh script.
So now I can understand the connection and the importance for the content of real.txt for the calculation of target instructions. But then I still don't understand why it works with only BBtargets.txt, too, as I could see in DFUZZPASS.cpp that there's not much calculation on the targets from that file and all the important code is on the content of real.txt?

Is the version of DFUZZPASS.cpp in the docker container the final version used for libDFUZZ.so that is used by getDistance.sh? Because as far as I can see in the code, BBtargets.txt should be necessary too:
      if (!TargetsFile.empty()) {

        if (OutDirectory.empty()) {
          //FATAL("Provide output directory '-outdir <directory>'");
          return false;
        }

        std::ifstream targetsfile(TargetsFile);
        std::string line;
        while (std::getline(targetsfile, line))
          targets.push_back(line);
        targetsfile.close();

        std::ifstream realFile(OutDirectory + "/real.txt");
        std::string line1;
        while (std::getline(realFile, line1)) {
          reals.push_back(line1);
          //debug << "real: " << line1 << "\n";
        }
        realFile.close();
      }

If there's no or an empty BBtarget.txt the body of the if-condition where the reals vector is populated is never executed.
So I assume this is an old version and the actual used library differs? This could explain my confusion.

Both real.txt and BBtarget.txt are opened, but if you check the code, BBtarget.txt is not used later. Only contents in real.txt are used.  You can modify the code in  /Adfuzz (which builds libDFUZZ.so, the building scripts are also in the docker) to open and use only real.txt. Or you can refer to the cases in *.sh.
To demonstrate the diff between real.txt and BBtarget.txt. Considering the following code "test.c":
int a, b, c;
if (a>10) {
   b=2; //(line 3)
   c=3; //fuzzing target (line 4)
}

In BBtarget.txt, the content should be "test.c:4" (the fuzzing target); but in real.txt, the content should be "test.c:3" as it is the starting line of basic block the target code is in.

@vannussina Hi. I have a question about the selectfuzz installation. Did you run this tool via manual installation? I followed the instructions in the repo page, but could not run the tool successfully (It seems that there is something wrong with afl-clang-fast). Currently the llvm I use is 4.0.0.

@5hEn918 Hi, I ended up running it in the provided Docker container in the beginning and then building my own Docker container because I didn't want to change proxy settings in environment variables and git with every container restart. I also could not get it to build on my local system, I guess there were some dependencies or paths missing because I had LLVM 4 installed alongside LLVM 11.
But in the provided Docker container and also the one I built for myself it worked well, so I would recommend that :)

@5hEn918 Hi, I ended up running it in the provided Docker container in the beginning and then building my own Docker container because I didn't want to change proxy settings in environment variables and git with every container restart. I also could not get it to build on my local system, I guess there were some dependencies or paths missing because I had LLVM 4 installed alongside LLVM 11. But in the provided Docker container and also the one I built for myself it worked well, so I would recommend that :)

Actually, I could run the tool well via Docker. Maybe there were dependencies or something wrong with my local machine need to check.
Thanks for your reply 👍


Improve install docs for Windows users -- suggest vcpkg

Please answer these questions before submitting your issue.
Should this be an issue in the gRPC issue tracker?
Yes, change is to INSTALL.md
What version of gRPC and what language are you using?
V1.42
C++
What operating system (Linux, Windows, …) and version?
Windows
What runtime / compiler are you using (e.g. python version or version of gcc)
MSVC
What did you do?
Spent a LOT of time trying to build from source, as recommended. There are lots of problems, as many have mentioned. e.g. https://stackoverflow.com/questions/39982065/grpc-c-on-windows/45543748#45543748 and https://github.com/grpc/grpc/issues/11763
What did you expect to see?
An easy way for a C++ Windows user to install grpc and its dependencies.
What did you see instead?
Various ways to build, all very time-consuming and complex. None successful.
Make sure you include information that can help us debug (full error message, exception listing, stack trace, logs).
I'll submit a pull request with a possible doc improvement.
Anything else we should know about your project / environment?
No

I think the current documentation is correct (=reflects the current state of build support on Windows), but according to numerous issues, users are still having trouble building gRPC library on Windows (as a part of their project). We'll try to look into this by revisiting our cmake build (hopefully in Q1 2018).
For now, I'll close this issue as there's not much that can be added here.


Request: Blackmagic Design Ultimatte module

We would be very glad if the Ultimatte 12 keyer by Blackmagic Design could be added to Companion. We use the Blackmagic Ultimatte Smart Remote for the basic setup of our Ultimatte but it would be nice to integrate some features for automation into our Companion workflow. The API is documented in the Ultimatte manual (link below) and first and foremost we need the ability to change the "LY Fade Mix" parameter but in the end implementing the whole API would be amazing, because the possibility for automation is only provided via some GPIO pins on the Ultimatte’s DE-15 connector, the (Windows based !) Smart Remote doesn’t work that great at times and is also quite expensive so to have a second option would be pretty cool for other people thinking about investing in an Ultimatte!
We've got an Ultimatte always setup in our studio and can test things when ever the studio isn't in use. If you've got any questions, please ask!
Here is the link to the manual including the API: https://documents.blackmagicdesign.com/UserManuals/Ultimatte12Manual.pdf?_v=1533193933100
Thank you all very much in advance!

Hi @josephdadams, will I find this module in mac-arm64-3.99.0+6431-develop or will it be in a later version?

I just pushed it so whenever the next beta builds run after whatever time I pushed this

Hi, same interest here - could you send me the beta for review/testing?
Located in germany, production company with small studio setup.
cheers
Uli

Just go download the latest beta build and enjoy

Hello, I am a user of your build for the ultimatte and am using the streamdeck + with the encoder wheels. Is there any chance we could add a way to increment and decrement values in the ultimatte so it can be assigned to the encoder wheels?
Thanks.


weird colors with "light" background tiles

When using tile providers with "light" colors (e.g. standard OpenStreetmap) the polygon fill colors get all messed up unless opacity is set to 1.
You can (maybe) reproduce this issue when replacing this line with L.tileLayer('https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png').addTo(map);
In Firefox on linux (Ubuntu 18.04) with default opacity I see:

whereas with opacity set to 1 I see:

Any ideas what might cause this strange behaviour? I am assuming this has something to do with shaders, but I have no experience with glsl.
For completeness, this was reported at https://github.com/tim-salabim/leaflet.glify/issues/4 where some more information can be found and which points to a browser issue as for some combinations of OS and browser this seems to be not a problem.

It look like its related to the premultipliedAlpha parameters of WebGL context canvas


Method Verification

Do the checklist before filing the issue:

[x] Do you have Node.js and all the relevant dev-dependencies installed?
[x] Is this a bug fix?
[ ] Is this an enhancement?
[ ] Is this a feature request?

NOTE: Provide a clear and concise description of the feature that needs to be added! Or if its a bug, then provide the necessary steps to reproduce it along with screenshots.

Give your answer below:

If you take a look at M.check(), M.find() & M.range() modules:
       ...
       return require(`../${arg}`).check;
       ...

       ...
       return require(`../${arg}`).find;
       ...

       ...
       return require(`../${arg}`).range;
       ...

If someone passes 'sum' as an argument then it wouldn't work since sum doesn't have an exported method namely, check, find & range;
So, provide an explicit error handling that throws an error whenever anyone passes another module name as an argument - Error: Invalid Argument!
Hint:
         ...
         const number = require('../${arg}');
         if('check' in number) return number.check;
         else /* throw an error */
         ...

Similarly, implement it for M.find() & M.range().

Hello, I'd like to take a crack at this bug. Is that alright?

@atsutton this issue is only for gssoc19 participants!

Hello!! i would like to work on it please assign it to me!!

@robotjellyzone you're assigned

@robotjellyzone your time's up!

can I work on this?

@devRD you're assigned


Missing before method when working with Rails 4.1.0-b1

When I put before_filter RubyCAS::Filter in my controller's script, it drops that undefined methodbefore' for RubyCAS::Filter:Class`...
I don't know why but rubycas-client-rails works just fine with Rails 4.0.2 in another app. Could you please help me to figure it out?

Awesome, thanks!

cool. it works for me . thanks @jimee02


Composer + Telephony Package encode locale string with "", making them non-funtional

Describe the bug
When you put SSML tags inside of the speech variant node, occasionally a locale string needs to be included - say en-US.  The Composer unfortunately is encoding those strings with a "", making them non-functional:

Please press 1 for English or 2 for Spanish.

Stop Silence

We need to not encode these tags in the edit box, or decode them as well so they stay functional.
Version
Version:  2.1.2
Electron: 8.2.4
Chrome: 80.0.3987.165
NodeJS: 12.13.0
V8: 8.0.426.27-electron.0
OS

[ ] macOS
[X] Windows
[ ] Ubuntu

To Reproduce
Steps to reproduce the behavior:
Add the telephony package
Add a multi-choice with silence detection node
Add a speech variant
Paste the following into the box:

Please press 1 for English or 2 for Spanish.
Stop Silence

Nave away and back to the node; it shows encoded locales.
Expected behavior
No Encoding applied
Additional context
Impacts users of Dynamics Omnichannel trying to build voice skills for DTMF handling.

We have been able to replicate the issue, but only when using multi-line SSML tags. This issue was reported here, but the PR with the fix is not yet merged.

Duplicate


Create 2020-2023 Notes Securing Critical Projects OSS WG.md

2020- 2023 Meeting Notes

Thanks for archiving this!


chore: add example of convert from payload to custom struct

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 0   changed or added relevant lines in 0 files are covered.
43 unchanged lines in 4 files lost coverage.
Overall coverage decreased (-0.04%) to 99.151%

Files with Coverage Reduction
New Missed Lines
%

core/src/ast/mod.rs
1
99.83%

core/src/executor/evaluate/mod.rs
3
99.36%

core/src/executor/execute.rs
9
96.33%

core/src/executor/aggregate/mod.rs
30
84.21%

Totals

Change from base Build<PHONE_NUMBER>:
-0.04%

Covered Lines:
49056

Relevant Lines:
49476

💛  - Coveralls


Migrate GitHub Actions to shared reusable workflows INTER-72

INTER-208

:tada: This PR is included in version 1.2.0-test.1 :tada:
The release is available on:

npm package (@test dist-tag)
GitHub release

Your semantic-release bot :package::rocket:

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Add a Dart api for Windows window messages

Use case

On Windows, plugins can handle window messages[^1].
It would be good if these were accessible in Dart directly, without a custom plugin.
This would be useful in conjunction with the win32 package, that allows you to interact with various Windows APIs without having to write a plugin and C++; which is great because that way you're able to use hot reload for example.
With pure Dart applications, you can manage the message event loop through win32, however with Flutter, it's managed by the windows runner[^2]. The runner then forwards events to plugins, but not to the Dart part of the Flutter app, even if no plugin can handle the message.
Proposal

Flutter users should be able to handle window events without having to write plugins.
Such an API would allow users to define a handler function that, given the received code and parameters, should decide if it wants to handle the event and then act on it.
This functionality would fit well into the flutter services library, perhaps as a Win32WindowMessage wrapper on a  MethodChannel or something like that.
[^1]: For a concrete list of the different window messages, here's the header file where they are defined
[^2]: Here's someone who already ran into this issue

Window message handling returns a synchronous result, so it's not clear to me how you are proposing this work. There's no way to synchronously call into Dart.

Window message handling returns a synchronous result, so it's not clear to me how you are proposing this work. There's no way to synchronously call into Dart.

Maybe I'm misunderstanding your concerns, but why can't the message handling result just be copied and handled asynchronously in Dart?
Roughly like this:

A message is received in the flutter runner message queue
The runner tries to handle the message
The runner asks the registered plugins to handle the message
(new) The runner puts the message into a MethodChannel to Flutter
The next message can be handled
(asynchronous) At some point the Dart in the Flutter app receives the message from the method channel and can act on it.

I haven't looked at the code for that, but isn't Gamepad and Keyboard Input also forwarded from the OS into Dart? Wouldn't something similar to that work?

My concrete use case is that I'm creating tray icons through win32 and want to be able to interact with them; for starters clicking on them should bring the app window into focus.
I can manipulate the window through win32, however to be notified that my icon was clicked, I'd need to be able to receive messages.
In practice, on the NOTIFYICONDATA struct you can specify a uCallback, which is typically a message type id like WM_APP + 42.
Inside a plugin you could then overload that MessageHandler function to deal with the message == WM_APP + 42 case.

Hi @benthillerkus, Thanks for filing the issue. Leaving this issue open for further insights from the team.

wndProc is a synchronous function that returns a result.

why can't the message handling result just be copied and handled asynchronously in Dart?

Handlers don't handle the result, handlers return the result. And they must do so synchronously. Consider the resize handler message, for instance, which must synchronously change values in order to do anything.

Roughly like this:

You are missing a step where the code doing steps 1-4 must return a value indicating whether the message was handled, and in some cases synchronously change other values. Such, since it is synchronous, is before step 6 runs.

I haven't looked at the code for that, but isn't Gamepad and Keyboard Input also forwarded from the OS into Dart? Wouldn't something similar to that work?

Only for messages where it's safe to unconditionally suppress them and then send new copies later. Not all messages work that way.

Flutter users should be able to handle window events without having to write plugins.

Can you explain why a plugin that does the forwarding you describe--which anyone could use without having to rewrite it--wouldn't address your use case? Something that is both extremely platform-specific, and also will have caveats about which messages will and won't work, seems far better suited to a plugin.


[FP]: CVE-2017-16055 affecting a C# project

Package URl
None
CPE
cpe:2.3:a:sqlserver_project:sqlserver::::::node.js::*
CVE
CVE-2017-16055
ODC Integration
{"label"=>"CLI"}
ODC Version
8.3.1
Description
The message I get is:

location: /home/vsts/work/1/s//tools//.csproj, project-references: [  ]

The thing is, it's a C# project, so I'm not sure why this CVE is triggered.
The contents of the project file:
<Project Sdk="Microsoft.NET.Sdk">

  <PropertyGroup>
    <OutputType>Exe</OutputType>
    <TargetFramework>net6.0</TargetFramework>
    <ImplicitUsings>enable</ImplicitUsings>
    <Nullable>enable</Nullable>
    <UserSecretsId><redacted></UserSecretsId>
  </PropertyGroup>

  <ItemGroup>
    <PackageReference Include="AutoMapper" Version="12.0.1" />
    <PackageReference Include="AutoMapper.Extensions.Microsoft.DependencyInjection" Version="12.0.1" />
    <PackageReference Include="MediatR" Version="12.1.1" />
    <PackageReference Include="Dapper" Version="2.0.143" />
    <PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="7.0.9" />
    <PackageReference Include="Microsoft.Extensions.Configuration.UserSecrets" Version="7.0.0" />
    <PackageReference Include="Newtonsoft.Json" Version="13.0.3" />
    <PackageReference Include="Serilog" Version="3.0.1" />
    <PackageReference Include="Serilog.Extensions.Hosting" Version="7.0.0" />
    <PackageReference Include="Serilog.Sinks.Console" Version="4.1.0" />
    <PackageReference Include="<redacted>.<redacted>.<redacted>" Version="1.0.45308" />
    <PackageReference Include="<redacted>.<redacted>.<redacted>.<redacted>" Version="0.1.45500" />
    <PackageReference Include="Microsoft.Azure.Cosmos" Version="3.35.2" />
  </ItemGroup>

  <ItemGroup>
    <ProjectReference Include="..\..\src\<redacted>.csproj" />
    <ProjectReference Include="..\..\src\<redacted>.csproj" />
    <ProjectReference Include="..\..\src\<redacted>.csproj" />
  </ItemGroup>

</Project>

looking again at your project file (overlooked it on first read) I suspect     <PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="7.0.9" /> will trigger it
But nevertheless interested in what evidences are present in your report that have sqlserver in their value.

I'm unable to find an HTML report to be honest. We're running it in Azure DevOps and it produces 3 files AFAIK:

Standard_Console_Output.log
Standard_Error_Output.log
dependency-check-junit.xml

I don't see anything called evidence inside those files. Can you guide me in the right direction?

Which would mean the Azure DevOps is configured to only produce the junit-format report, one of the worst for further analysis due to the restrictions on the junit format.
Assuming your integration is https://marketplace.visualstudio.com/items?itemName=dependency-check.dependencycheck you should be able to add additional formats (they have their screenshot sample to create HTLM, JSON and JUNIT format reports). The HTML format is the most useful one for human interpretation (may have to be downloaded to make the embedded Javascript routines work properly to show and hide the various sections).

Thanks @aikebah!
This is the evidence part of the report:

@kipusoep From that I would suspect that you have a file CosmosDb2SqlServerMigration_2.dll or CosmosDb2SqlServerMigration-2.dll in your project that the analyzers (typically AssemblyAnalyzer and the experimental PEAnalyzer) could not extract information from so that you're left with only the information extracted by the FileNameAnalyzer.
(could also be something else than a DLL, but DLL would be my best guess based on your project type and the fact that often there are DLLs that create issues in the analysis by the Assembly- and PE-Analyzers. The clear symptom is that only the FileNameAnalyzer manages to extract some evidences, where the CosmosDb2SqlServerMigration is expected to be the part before a _ or - separating the filename part from the version part in the filename)

It doesn't seem like I have a file called like that.
Anyway, it's a FP right? Or should I do something to fix it?

As you have a C# project it will definitely be a FP.
On the html report there is a 'suppress' button next to the CPE. That should give you a suppression rule to suppress it. My gut feel based on the evidences you listed would be that it's going to suppress by sha1 hash, which means it will only work as long as the file on which it hits retains its sha1 hash checksum.
If it's listed for a file that is expected to frequently change that could be found to be problematic.
As long as you do not add any node.js to the project it would be possible to create a generic CPE suppression to suppress the sqlserver_project:sqlserver CPE. in such a case I would advice adding an expiry on it so that periodically it's re-evaluated that the project is indeed a pure C# project not using any node.js.

Hmm I would like to be able to surpress, the downside is that our pipeline calling the dependency check is a template, so shared for all our repositories (micro services).
I've just tested supplying a --suppression argument with a file that doesn't exist (so we can opt-in by creating a file in the repo root, or leave it as-is), but it complains about the file missing unfortunately.
So that would mean we have to check with bash or powershell if the file exists and adapt the argument with that.


Implement FieldSqrt hint

Resolves issue #178

@cicr99 I added a new test cases for when the input is quadratic non-residue.
I also added a comments for the Legendre method with a link that gives the mathematical reasoning how it works. What do you think?


[Discovery] Investigate splitting of compound words in contextionary

When a compounded word such as driehoeksbroodje is not found in the c11y, we should evaluate if partial matches (such as driehoek and broodje) can be found instead.
Goal
Investigate potential algorithms which aren't terribly expensive but yield good results
cc @fefi42 @byronvoorbach

Splitting of compound words for Dutch language can be a real pain, if needed we can help with some test cases

@byronvoorbach that would certainly be helpful thanks.

Splitting of compound words [for Dutch] language can be a real pain

We also have the C11y validation avaiable (e.g., using driehoeksbroodje, driehoek will be available driehoeks probably not) and word occurrences (e.g., in driehoeksbroodje, driehoek probably occures less often than drie therefor you could bias it towards driehoek) available as well, this might help in creating the compounding ago.
I believe this could be a generic algorithm for Germanic and Latin languages.

I have some test implementations lined up @bobvanluijt @byronvoorbach I could now use some example words to compare them.

I created a gist with a few compound words. Let me know if you need more or need it to be in a different format :)

These are the results of the best splitter:
Splitted blauwekaas into: [blauwe kaas]
Splitted vaatwastabletten into: [vaat wastabletten]
Splitted sojadrink into: [soja drink]
Splitted italiaansegroente into: [italiaanse groente]
Splitted babyvoeding into: [baby voeding]
Splitted pastagroenten into: [pasta groenten]
Splitted pizzabodem into: [pizza bodem]
Splitted sojayoghurt into: [soja yoghurt]
Splitted wijnglas into: [wijn glas]
Splitted snoeptomaten into: [snoep tomaten]
Splitted broodbeleg into: [brood beleg]
Splitted rundergehakt into: [runde gehakt]

The only error in this test is vaat wastabletten instead of vaatwas tabletten. The reason is that vaat is also a valid word and both results would have the same score so it just takes the first one. I don't think we can fix issues like this with a simple splitter. By simple I mean not machine learning based.

https://github.com/semi-technologies/contextionary/pull/36

Closing as this has already been publicly released and is also explained in the docs.


How to define Tensorflow as Backend?

How can define Tensorflow as Backend?
if I import optimizer from tf.keras I will get:ValueError: Could not interpret optimizer identifier (tf.keras)
but there is no problem with tf.keras, I am using it currently with other project and no problem.

Hi, please, carefully read README and documentation first, than create issues, thanks.

oh just seen it


Support OME-Zarr images

User story
Vitessce is a really nice visualization tool and it would be great to export Images, ROIs and other data from OMERO in a form that can be viewed by Vitessce. We already have the ability to export Images as OME-Zarr (https://ngff.openmicroscopy.org/latest/) so if Vitessce could open these then that would be very cool.
Also, we hope that OME-Zarr becomes a more widely used format and other users would benefit from OME-Zarr support in Vitessce.
Maybe this issue should be on the viv repo instead of here, but since, OME-Zarr is already supported by vizarr e.g. https://hms-dbmi.github.io/vizarr/?source=https://s3.embassy.ebi.ac.uk/idr/zarr/v0.1/9822152.zarr I wondered if an alternative is for Vitessce to use vizarr instead of viv?
Preferred solution
In the raster.json config file, set e.g. "url": "https://s3.embassy.ebi.ac.uk/idr/zarr/v0.1/9822152.zarr" and it "just works".
Possible alternatives
In the shorter term, I was trying to add the additional dimensions into the raster.json file (and create a consolidated .zmetadata) so that Vitessce would read the 5D OME-Zarr (TCZYX) data, but I couldn't get this to work (didn't know what values and types to use for the extra t and z dimensions, or if this is even going to work?
"dimensions": [
    {
        "field": "t",
        "type": "?",
        "values": ?
    },
    {
        "field": "channel",
        "type": "nominal",
        "values": [
            "polyT",
            "nuclei"
        ]
    },
    {
        "field": "z",
        "type": "?",
        "values": ?
    },
    {
        "field": "y",
        "type": "quantitative",
        "values": null
    },
    {
        "field": "x",
        "type": "quantitative",
        "values": null
    }
],

@will-moore I probably need to dig into this a bit more, but to start I think you've come to the right place considering the functionality we have here (selection tools, saving state etc).  At first glance, OME-Zarr (and the OMERO metadata schema in general) as outlined here needs need to be converted into raster.json somewhere.   I think it could be easier, perhaps, to create/add a new loader than to do this "server-side" by adding to the zarr metadata - see here for a recent example of adding new loaders.
This process is actually less painful than it sounds.  It really just involves writing a loader class and adding it and its "name" to a certain global object as linked above. This loader would probably look somewhat similar to the RasterJsonLoader except it has an extra step to convert to the images object within the raster.json schema since that is used internall - check out this method and its returned value for what I mean: https://github.com/hubmapconsortium/vitessce/blob/03de2096b4c567d86fc9f938235b939109f45331/src/loaders/RasterJsonLoader.js#L54-L75
The z and time dimensions are ordinal (I think you can check this on the loaders in vizarr with loader.dimensions but could be wrong).
Other than that, I think the other missing thing is ROI's which have been on our radar for a while.  I don't think that'll be too hard since we already have the ability to make bounding boxes but that could get in the weeds of our internal data model.   We have docs coming soon so apologies for that.
Am I missing anything here?  I hope this provides a nice little roadmap if you're interested in trying this out.  Am I missing anything @keller-mark @manzt?

I agree that it should be easier, and a new loader could help. Rather than using raster.json, ideally you could write
...,
"datasets": [
    {
        "uid": "my-dataset",
        "files": [
            {
                "type": "raster",
                "fileType": "raster.ome-zarr",
                "url": "https://s3.embassy.ebi.ac.uk/idr/zarr/v0.1/9822152.zarr"
            }
        ]
    }
],
...

And if there are required parameters for Vitessce that are not stored directly in the OME-Zarr or OME-TIFF metadata, the loader could take extra parameters through an "options" field
...,
"datasets": [
    {
        "uid": "my-dataset",
        "files": [
            {
                "type": "raster",
                "fileType": "raster.ome-zarr",
                "url": "https://s3.embassy.ebi.ac.uk/idr/zarr/v0.1/9822152.zarr",
                "options": {
                       "someOption": true
                 }
            }
        ]
    }
],
...


[NEED FEEDBACK] Generation of unions for oneOf return types in responses

Hey guys, first of all amazing library. We use your library at work to generate GraphQL types for our internal Swagger APIs. We have pretty huge schemas at our company and some of them rely on the usage of oneOf for polymorphism in responses.
I created a pull request with my current changes and as you can see in #330 it now correctly generates unions for oneOf responses. It took a lot of effort on my behalf to figure out where to apply even these small changes and now I'm kinda stuck. My changes are probably a bit naive, so I'm reaching out and asking for your help and feedback to get this change into your library. :)
I already tested this change against our internal .yaml which is about 2500 lines and everything was generated without a problem. So I'm pretty confident it's "ok". Still...
What am I probably missing, that could break this? What tests do I have to add if any? I'm really looking forward to your response, because we are in need of that feature to continue using your library.
Thanks in advance and best regards
Flo

@ftatzky Thank you so much for your kind words! It is always very exciting to hear from our users! And to hear that you are using our tool on large production schemas is also very cool!
I took a look at your PR and also did some of my own investigation. This is definitely a problem that needs to be resolved. I'll provide more feedback in the PR.
I apologize if our code base is difficult to navigate! We've tried our best to provide plenty of comments but unfortunately, the task of wrapping REST APIs in GraphQL is still quite a complex one. I'm curious about your experience however, trying to understand our source code, and also if you have any ideas on how we can make it easier for people to learn our code base.


Hidden linestring and/or offline map not visible. Bug or User Error?

Hi!
I'm trying to write a hiking app with support for offline maps.
I have my own tile server, and I have downloaded zoom levels 0 to 10 and saved in an mbtiles file.
I also have about 10x mbtiles files, one for each GPX file with zoom levels 13 to 17.
I turn off data on my phone and load the offline files (assuming this is happening in a random order) and import the GPX. Depending on parameters I get
a) blurry map. The dedicated mbtiles files are not overlaying ontop of the country map, or "shining" through to become visible at zoom levels not present in the country mbtiles file
b) gpx linestring not visible
Here are a few attempts:
//Map not clear. GPX visible
//var mbTilesTileSource = new MbTilesTileSource(new SQLiteConnectionString(file, true), null, MbTilesType.BaseLayer, false, true);

//Map not clear. GPX not visible
//var mbTilesTileSource = new MbTilesTileSource(new SQLiteConnectionString(file, true), null, MbTilesType.Overlay, true, true);

//Remove australia map file with zoom 0 to 10. Map is clear and GPX visible
//var mbTilesTileSource = new MbTilesTileSource(new SQLiteConnectionString(file, true), null, MbTilesType.BaseLayer, false, true);

//Remove australia map file with zoom 0 to 10. Map is clear and GPX not visible
//var mbTilesTileSource = new MbTilesTileSource(new SQLiteConnectionString(file, true), null, MbTilesType.BaseLayer, true, true);

Why does determineZoomLevelsFromTilesTable=true make the linestring invisible or hidden?
Does mapsui not make missing tiles at different zoom levels "transparent" so more detailed mbtiles become visible?
Do I need to load australia map first, and then the rest of the map files?

I'm using Mapsui 3.0.0-alpha.4

Try one thing at a time. Did you succeed to show your gpx trail on tip of the OSM map that is used in most samples?

This was reported before the first beta of v4. Assuming this is not relevant anymore.


pex init won't work: unable to connect to github.com

> pex init
fatal: unable to connect to github.com:
github.com[0: <IP_ADDRESS>]: errno=Operation timed out

@OlgaPaw I have no clues what init is here, so my exploration:
$ pex -V
2.1.119
$ pex init
Python 3.10.6 (main, Nov 14 2022, 16:10:14) [GCC 11.3.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
(InteractiveConsole)
>>> import init
>>> init.__file__
'/home/jsirois/.pex/installed_wheels/db4122f6069d12eaf47e56bae7f59df9e9205fb62780af0d11d0988dbe902a6b/init-0.1.0-py3-none-any.whl/init/__init__.py'
>>>
now exiting InteractiveConsole...

So that says init is a requirement and Pex resolves it just fine. I see: https://pypi.org/project/init/ and that indicates there is an init console script from its examples; so:
$ pex init --script init -- --help
Traceback (most recent call last):
  File "/usr/lib/python3.10/runpy.py", line 196, in _run_module_as_main
    return _run_code(code, main_globals, None,
  File "/usr/lib/python3.10/runpy.py", line 86, in _run_code
    exec(code, run_globals)
  File "/tmp/tmpoescwa1o/__main__.py", line 103, in <module>
    bootstrap_pex(__entry_point__, execute=__execute__, venv_dir=__venv_dir__)
  File "/tmp/tmpoescwa1o/.bootstrap/pex/pex_bootstrapper.py", line 600, in bootstrap_pex
    pex.PEX(entry_point).execute()
  File "/tmp/tmpoescwa1o/.bootstrap/pex/pex.py", line 551, in execute
    sys.exit(self._wrap_coverage(self._wrap_profiling, self._execute))
  File "/tmp/tmpoescwa1o/.bootstrap/pex/pex.py", line 458, in _wrap_coverage
    return runner(*args)
  File "/tmp/tmpoescwa1o/.bootstrap/pex/pex.py", line 489, in _wrap_profiling
    return runner(*args)
  File "/tmp/tmpoescwa1o/.bootstrap/pex/pex.py", line 592, in _execute
    return self.execute_script(self._pex_info.script)
  File "/tmp/tmpoescwa1o/.bootstrap/pex/pex.py", line 725, in execute_script
    return self.execute_ast(dist_script.path, ast, argv0=script_name)
  File "/tmp/tmpoescwa1o/.bootstrap/pex/pex.py", line 768, in execute_ast
    exec_function(program, globals_map)
  File "/tmp/tmpoescwa1o/.bootstrap/pex/compatibility.py", line 109, in exec_function
    exec (ast, globals_map, locals_map)
  File "/home/jsirois/.pex/installed_wheels/db4122f6069d12eaf47e56bae7f59df9e9205fb62780af0d11d0988dbe902a6b/init-0.1.0-py3-none-any.whl/.prefix/bin/init", line 9, in <module>
    from init import cli, info
  File "/home/jsirois/.pex/installed_wheels/db4122f6069d12eaf47e56bae7f59df9e9205fb62780af0d11d0988dbe902a6b/init-0.1.0-py3-none-any.whl/init/cli.py", line 285
    except TypeError, exc:
           ^^^^^^^^^^^^^^
SyntaxError: multiple exception types must be parenthesized

Ok, that looks like a Python 2 syntax attempted under Python 3 error; so:
$ pex --python python2.7 init --script init -- --help

  init 0.1.0

  Usage: init <command> [option]

  Options:

    -h, --help      output the help menu
    -V, --version   output the version number
    -l, --list      show available templates
    -v, --verbose   show more logs
    -q, --quiet     show less logs

  Commands:

    license         show available licenses.
    install         install a template to ~/.init-template/
    update          update templates in ~/.init-template/

  Examples:

    $ init python
    $ init init-template/python

  Find templates on https://github.com/init-template

Ok, that seems more like what you're after? You'll need to provide much more detailed information here. What version of Pex are you using? What version of Python are you trying to use? Is pex init really your command line? That does not seem right, that should causes pex to resolve init from PyPI and drop you into a REPL session with init on the sys.path like in my 1st example.

What is it you're expecting pex init to do? What it is actually doing is installing a requirement named init (https://pypi.org/project/init/) into a pex file and then dropping into an interpreter in that pex, which is probably not what you intend?
As to why even that is not working, I'm not sure why it cares about github access. Do other requirements have the same issue? E.g., pex ansicolors?


IOS using module without iCloud capability

Can it work without iCloud? I have not access to adding iCloud support in apple dev, can i use the module without it? Why iCloud required?
have the error: http://prntscr.com/fwp2h4
can't enable iCloud: http://prntscr.com/fwp36y

for using document picker in ios it requires enabled iCloud and iCloud documents in apple dev


Invalid license

I am not a laywer and don't know the implications in court but this should probably be fixed:
https://github.com/tinyfpga/TinyFPGA-Bootloader/blob/97f6353540bf7c0d27f5612f202b48f41da75299/LICENSE#L190

This is the correct way to apply the license see http://www.apache.org/dev/apply-license.html and https://opensource.google/docs/releasing/preparing/#Apache-header