import xmlsec fails on python 3.8/3.9, macOS Big Sur 11.0.1 and M1 chip

xmlsec version: 1.3.9
libxmlsec1 version: 1.2.31
libxml2 version: 2.9.10_2
(venv) tesh$ pkg-config --cflags xmlsec1
-D__XMLSEC_FUNCTION__=__func__ -DXMLSEC_NO_SIZE_T -DXMLSEC_NO_GOST=1 -DXMLSEC_NO_GOST2012=1 -DXMLSEC_NO_CRYPTO_DYNAMIC_LOADING=1 -DXMLSEC_CRYPTO_OPENSSL=1 -I/opt/homebrew/Cellar/libxmlsec1/1.2.31/include/xmlsec1<EMAIL_ADDRESS><EMAIL_ADDRESS>
It installs fine but fails when importing.
In [1]: import xmlsec
---------------------------------------------------------------------------
ImportError                               Traceback (most recent call last)
<ipython-input-1-43dd76db73dd> in <module>
----> 1 import xmlsec

ImportError: dlopen(/Users/tesh/rescale/venv3.9/lib/python3.9/site-packages/xmlsec.cpython-39-darwin.so, 2): Symbol not found: _xmlSecDSigNs
  Referenced from: /Users/tesh/rescale/venv3.9/lib/python3.9/site-packages/xmlsec.cpython-39-darwin.so
  Expected in: flat namespace
 in /Users/tesh/rescale/venv3.9/lib/python3.9/site-packages/xmlsec.cpython-39-darwin.so

Python 3.8 and 3.9
$ file $(which python)
/Users/tesh/rescale/venv/bin/python: Mach-O universal binary with 2 architectures: [x86_64:Mach-O 64-bit executable x86_64] [arm64:Mach-O 64-bit executable arm64]
/Users/tesh/rescale/venv/bin/python (for architecture x86_64):	Mach-O 64-bit executable x86_64
/Users/tesh/rescale/venv/bin/python (for architecture arm64):	Mach-O 64-bit executable arm64

$ file $(which python)
/Users/tesh/rescale/venv3.9/bin/python: Mach-O 64-bit executable x86_64

$ otool -L /Users/tesh/rescale/venv3.9/lib/python3.9/site-packages/xmlsec.cpython-39-darwin.so
/Users/tesh/rescale/venv3.9/lib/python3.9/site-packages/xmlsec.cpython-39-darwin.so:
	/usr/lib/libxslt.1.dylib (compatibility version 3.0.0, current version 3.26.0)
	/usr/lib/libz.1.dylib (compatibility version 1.0.0, current version 1.2.11)
	/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1292.60.1)
	/usr/lib/libicucore.A.dylib (compatibility version 1.0.0, current version 66.1.0)

Will really appreciate any help.

Hi @hitesh-raichandani, it looks like you have a Mac with the new M1 chip. Unfortunately, I don't have access to this hardware yet and Github Actions doesn't offer anything either, see https://github.com/actions/virtual-environments/issues/2187. I'm thus unable to play with building universal dists right now. Once my company sets up the infrastructure, I will come back to this, or maybe someone else will shed some light on it.

Hi @hitesh-raichandani, it looks like you have a Mac with the new M1 chip. Unfortunately, I don't have access to this hardware yet and Github Actions doesn't offer anything either, see https://github.com/actions/virtual-environments/issues/2187. I'm thus unable to play with building universal dists right now. Once my company sets up the infrastructure, I will come back to this, or maybe someone else will shed some light on it.

Thanks for the update @hoefling, added package versions to the issue details for clarity.

Thanks for the update @hoefling, added package versions to the issue details for clarity.

@hitesh-raichandani I still can't reproduce the issue due to missing hardware, but maybe you could attach the build log in the meantime? Simply pip install xmlsec -vvv --force-reinstall --no-cache-dir and drop the full output in the comments.

@hoefling, the attached file has build logs. Thanks!
xmlsex-build-log.txt

@hoefling, the attached file has build logs. Thanks!
xmlsec-build-log.txt

I'm running into the same issue except I am running python3.7 in the Rosetta2 compatibility mode

Same issue here with python 3.8 and M1.

Same issue found here. Any fix yet?

I can't investigate any issues with M1 since I don't own the necessary hardware. A colleague of mine could successfully compile xmlsec from current master though on his MacBook Pro M1, using the brewed libraries. The attached xmlsec-apple-m1.zip contains both wheels for xmlsec and lxml, which you can try out.
Beware though, that lxml seems to continue having issues with the import order, resulting in XMLSyntaxErrors if reusing the default parser instance; see related #84, #96 and the issues in lxml's tracker: 1880251, 1887848. Failing example:
import pathlib
pathlib.Path("doc.xml").write_text("<spam>eggs</spam>")

import xmlsec
from lxml import etree

etree.parse("doc.xml")
etree.parse("doc.xml")

I too have found this very same issue, any fix for this ?

I get the same issue with python 3.9 on a M1 chip, any updates on this?

Hi there, are there any plans on progressing on this issue anytime soon? I understand the constraints, and would just like to get some feedback so that we can plan for alternatives if needed.

Howdy! Any updates on the progression for this issue? I understand the scenario and would like to hear back regarding workarounds.
Thanks

Still having this issue on python 3.9 and M1. Any updates?

There's nothing to report. The company I worked at didn't manage to provide the M1 hardware and I changed the job recently, so no ETA at all. Feel free to give a :+1: on https://github.com/actions/virtual-environments/issues/2187, as accessing the M1 hardware via CI jobs will probably be most likely the only way for me.

It installed on my M1 machine.
You will need to build the wheel, thus, you will need to install libxmlsec1 and pkg-config.
You might need to brew update and reinstall those packages.
I have been able to builds the wheels for these versions: 1.3.10 to 1.3.12.
Anyone trying this issue also make sure to only try with Python versions 3.8.10 and greater since that's when official support was added.
❯ pip install xmlsec==1.3.12 --no-cache-dir
Collecting xmlsec==1.3.12
  Downloading xmlsec-1.3.12.tar.gz (64 kB)
     |████████████████████████████████| 64 kB 3.0 MB/s
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Installing backend dependencies ... done
    Preparing wheel metadata ... done
Requirement already satisfied: lxml>=3.8 in ./.venv/lib/python3.8/site-packages (from xmlsec==1.3.12) (4.6.3)
Building wheels for collected packages: xmlsec
  Building wheel for xmlsec (PEP 517) ... done
  Created wheel for xmlsec: filename=xmlsec-1.3.12-cp38-cp38-macosx_11_0_arm64.whl size=48084 sha256=74d628b8edf4a81bde35e4a0863e2c1d2e83a7f897c0c555c1612e6b25fb1ad4
  Stored in directory: /private/var/folders/j1/d109sd4n55qbk5ty8gzq5jgm0000gn/T/pip-ephem-wheel-cache-rt5nmgzu/wheels/2c/99/a3/98bcb24586c778eb35e23e30af30fbf1c34a0a9ed85e18576a
Successfully built xmlsec
Installing collected packages: xmlsec
Successfully installed xmlsec-1.3.12

❯ pkg-config --cflags xmlsec1
-D__XMLSEC_FUNCTION__=__func__ -DXMLSEC_NO_SIZE_T -DXMLSEC_NO_GOST=1 -DXMLSEC_NO_GOST2012=1 -DXMLSEC_NO_CRYPTO_DYNAMIC_LOADING=1 -DXMLSEC_CRYPTO_OPENSSL=1 -I/opt/homebrew/Cellar/libxmlsec1/1.2.32/include/xmlsec1<EMAIL_ADDRESS><EMAIL_ADDRESS>
❯ python -c "import xmlsec"

❯ file $(which python)
/Users/armenzg/code/sentry/.venv/bin/python: Mach-O 64-bit executable arm64

❯ otool -L .venv/lib/python3.8/site-packages/xmlsec.cpython-38-darwin.so
.venv/lib/python3.8/site-packages/xmlsec.cpython-38-darwin.so:
	/opt/homebrew/opt/libxmlsec1/lib/libxmlsec1-openssl.1.dylib (compatibility version 4.0.0, current version 4.32.0)
	/opt/homebrew/opt/libxmlsec1/lib/libxmlsec1.1.dylib (compatibility version 4.0.0, current version 4.32.0)
<EMAIL_ADDRESS>(compatibility version 1.1.0, current version 1.1.0)
	/usr/lib/libxslt.1.dylib (compatibility version 3.0.0, current version 3.26.0)
	/usr/lib/libxml2.2.dylib (compatibility version 10.0.0, current version 10.9.0)
	/usr/lib/libz.1.dylib (compatibility version 1.0.0, current version 1.2.11)
	/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1292.100.5)
	/usr/lib/libicucore.A.dylib (compatibility version 1.0.0, current version 66.1.0)

❯ brew info libxmlsec1
libxmlsec1: stable 1.2.32 (bottled)
XML security library
https://www.aleksey.com/xmlsec/
/opt/homebrew/Cellar/libxmlsec1/1.2.32 (220 files, 6.2MB) *
  Poured from bottle on 2021-05-17 at 08:58:46
From: https://github.com/Homebrew/homebrew-core/blob/HEAD/Formula/libxmlsec1.rb
License: MIT
==> Dependencies
Build: pkg-config ✔
Required: gnutls ✔, libgcrypt ✘, libxml2 ✔<EMAIL_ADDRESS>✔
==> Requirements
Build: Xcode ✘

❯ brew info pkg-config
pkg-config: stable 0.29.2 (bottled)
Manage compile and link flags for libraries
https://freedesktop.org/wiki/Software/pkg-config/
/opt/homebrew/Cellar/pkg-config/0.29.2_3 (11 files, 677.1KB) *
  Poured from bottle on 2021-05-17 at 08:53:19
From: https://github.com/Homebrew/homebrew-core/blob/HEAD/Formula/pkg-config.rb
License: GPL-2.0-or-later

Using xmlsec==1.3.12 with python 3.8.12 installed via rosetta-enabled homebrew<EMAIL_ADDRESS>worked for me. Thanks @armenzg.

@AddisonDunn you're welcome! How do you use rosetta with Python? I'm curious.

It's possible I didn't word that correctly but when using the Python 3.8.10 "universal" version for Mac downloaded from Python.org I had no luck, but using @python3.8 (version 3.8.12) installed via the rosetta-enabled homebrew I did.
arch -x86_64 /usr/local/bin/brew install @python3.8

I got my system working by installing python 3.9 via rosetta homebrew, xmlsec==1.3.12 following @armenzg's suggestion to upgrade to xmlsec 1.3.12 and installing libxmlsec1 and pkg-config. Thanks so much!

Unfortunately solution provided by @armenzg does not work for me.
> pip install xmlsec==1.3.12 --no-cache-dir
Collecting xmlsec==1.3.12
  Downloading xmlsec-1.3.12.tar.gz (64 kB)
     |████████████████████████████████| 64 kB 2.9 MB/s
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Installing backend dependencies ... done
  Preparing metadata (pyproject.toml) ... done
Collecting lxml>=3.8
  Downloading lxml-4.7.1.tar.gz (3.2 MB)
     |████████████████████████████████| 3.2 MB 7.0 MB/s
  Preparing metadata (setup.py) ... done
Building wheels for collected packages: xmlsec, lxml
  Building wheel for xmlsec (pyproject.toml) ... done
  Created wheel for xmlsec: filename=xmlsec-1.3.12-cp38-cp38-macosx_11_0_arm64.whl size=48043 sha256=433e9da210433b5af8cf16e8a563ddd8f370e699a2fc4df18eea7e55b1f2332e
  Stored in directory: /private/var/folders/5b/hykrf_4x6177k8kgq_jdnh9r0000gn/T/pip-ephem-wheel-cache-cul2b7uc/wheels/2c/99/a3/98bcb24586c778eb35e23e30af30fbf1c34a0a9ed85e18576a
  Building wheel for lxml (setup.py) ... done
  Created wheel for lxml: filename=lxml-4.7.1-cp38-cp38-macosx_11_0_arm64.whl size=1482686 sha256=3994d6749dcd214e234a5f4d2640a561c8722422598ae0afe64d93970bfca934
  Stored in directory: /private/var/folders/5b/hykrf_4x6177k8kgq_jdnh9r0000gn/T/pip-ephem-wheel-cache-cul2b7uc/wheels/c7/d8/ac/9c62a8804498b75b652f0cfbe020c93ae3f7265a9bbb40cee9
Successfully built xmlsec lxml
Installing collected packages: lxml, xmlsec
Successfully installed lxml-4.7.1 xmlsec-1.3.12

> pkg-config --cflags xmlsec1
-D__XMLSEC_FUNCTION__=__func__ -DXMLSEC_NO_SIZE_T -DXMLSEC_NO_GOST=1 -DXMLSEC_NO_GOST2012=1 -DXMLSEC_NO_CRYPTO_DYNAMIC_LOADING=1 -DXMLSEC_CRYPTO_OPENSSL=1 -I/usr/local/Cellar/libxmlsec1/1.2.33/include/xmlsec1<EMAIL_ADDRESS><EMAIL_ADDRESS>
> otool -L /Users/vpol/.miniforge3/envs/open-source/lib/python3.8/site-packages/xmlsec.cpython-38-darwin.so
/Users/vpol/.miniforge3/envs/open-source/lib/python3.8/site-packages/xmlsec.cpython-38-darwin.so:
        @rpath/libcrypto.1.1.dylib (compatibility version 1.1.0, current version 1.1.0)
        /usr/lib/libxslt.1.dylib (compatibility version 3.0.0, current version 3.26.0)
        /usr/lib/libxml2.2.dylib (compatibility version 10.0.0, current version 10.9.0)
        @rpath/libz.1.dylib (compatibility version 1.0.0, current version 1.2.11)
        /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1311.0.0)
        /usr/lib/libicucore.A.dylib (compatibility version 1.0.0, current version 68.2.0)

> brew info libxmlsec1
libxmlsec1: stable 1.2.33 (bottled)
XML security library
https://www.aleksey.com/xmlsec/
/usr/local/Cellar/libxmlsec1/1.2.33 (220 files, 5.7MB) *
  Poured from bottle on 2022-01-04 at 12:04:21
From: https://github.com/Homebrew/homebrew-core/blob/HEAD/Formula/libxmlsec1.rb
License: MIT
==> Dependencies
Build: pkg-config ✔
Required: gnutls ✔, libgcrypt ✔, libxml2 ✔<EMAIL_ADDRESS>✔
==> Requirements
Build: Xcode ✔
==> Analytics
install: 3,264 (30 days), 14,244 (90 days), 46,834 (365 days)
install-on-request: 2,500 (30 days), 10,810 (90 days), 35,185 (365 days)
build-error: 0 (30 days)

> brew info pkg-config
pkg-config: stable 0.29.2 (bottled)
Manage compile and link flags for libraries
https://freedesktop.org/wiki/Software/pkg-config/
/usr/local/Cellar/pkg-config/0.29.2_3 (11 files, 623.7KB) *
  Poured from bottle on 2020-04-11 at 22:07:37
From: https://github.com/Homebrew/homebrew-core/blob/HEAD/Formula/pkg-config.rb
License: GPL-2.0-or-later
==> Analytics
install: 179,346 (30 days), 581,711 (90 days), 2,396,573 (365 days)
install-on-request: 23,338 (30 days), 72,427 (90 days), 314,819 (365 days)
build-error: 169 (30 days)

> python
Python 3.8.12 | packaged by conda-forge | (default, Oct 12 2021, 21:21:17)
[Clang 11.1.0 ] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import pkgconfig
>>> config = pkgconfig.parse('xmlsec1-openssl')
>>> print(config['libraries'])
['xmlsec1-openssl', 'xmlsec1', 'crypto', 'xslt', 'xml2', 'z', 'pthread', 'icucore', 'm', 'xml2']

> python -c "import xmlsec"
Traceback (most recent call last):
  File "<string>", line 1, in <module>
ImportError: dlopen(/Users/vpol/.miniforge3/envs/open-source/lib/python3.8/site-packages/xmlsec.cpython-38-darwin.so, 0x0002): symbol not found in flat namespace '_xmlSecDSigNs'

I had the same issue - this is how I got around it.
I installed the homebrew for intel architecture.
And I built the the dependencies of xmlsec from that.
Then uninstall and reinstall xmlsec from pip with --no-cache-dir, it worked.

In my further investigation I've discovered that when building manually it does not link with homebrew-provided libxmlsec1 libraries:
ld: warning: ignoring file /usr/local/Cellar/libxmlsec1/1.2.33/lib/libxmlsec1-openssl.dylib, building for macOS-arm64 but attempting to link with file built for macOS-x86_64
ld: warning: ignoring file /usr/local/Cellar/libxmlsec1/1.2.33/lib/libxmlsec1.dylib, building for macOS-arm64 but attempting to link with file built for macOS-x86_64

@vpol I'm also facing the same issue (building for macOS-x86_64 but attempting to link with file built for macOS-arm64 xmlsec). Were you able to proceed further?

Same issue here.

Any solution?

@subavicky I'm working on a patch, but unfortunately can't provide ETA

Solved it. The cause of this error was installing the psycopg2-binary, which was meant to solve a similar error of "Symbol not found: _PQbackendPID".
Here is what solved it for me:

Remove any existing version of Homebrew for M1.
Install Homebrew only using Rosetta2 Terminal and use the intel version (google it).

pip3 uninstall psycopg2
brew install libpq --build-from-source
export LDFLAGS="-L/opt/homebrew/opt/libpq/lib" # Add to .zshrc
pip3 install psycopg2 --no-cache-dir
After doing this, psycopg2 no longer caused any problems, and the xmlsec error went away, everything works perfectly.
הקישור

I encountered this and fixed it by installing python-xmlsec from source. You can follow the instructions in the README.md. When installing from wheel, the binary is not correctly linked (e.g. pkg-config shows correct link arguments but otools -L doesn't show xmlsec1.dylib). I am not sure why it silently fails. But when installed from source, the output binary is correctly linked.
If I find the cause, I'll put up a PR.

@cadedaniel did you install HEAD or 1.3.12?

In my further investigation I've discovered that when building manually it does not link with homebrew-provided libxmlsec1 libraries:
ld: warning: ignoring file /usr/local/Cellar/libxmlsec1/1.2.33/lib/libxmlsec1-openssl.dylib, building for macOS-arm64 but attempting to link with file built for macOS-x86_64
ld: warning: ignoring file /usr/local/Cellar/libxmlsec1/1.2.33/lib/libxmlsec1.dylib, building for macOS-arm64 but attempting to link with file built for macOS-x86_64

where did you see these ld warnings @vpol ? I presume I'm getting the same problem (otool -L against the built lib is not reporting xmlsec1.dylib) but I'd like to confirm. I've tried @cadedaniel 's workaround but it's not working for me

In my further investigation I've discovered that when building manually it does not link with homebrew-provided libxmlsec1 libraries:
ld: warning: ignoring file /usr/local/Cellar/libxmlsec1/1.2.33/lib/libxmlsec1-openssl.dylib, building for macOS-arm64 but attempting to link with file built for macOS-x86_64
ld: warning: ignoring file /usr/local/Cellar/libxmlsec1/1.2.33/lib/libxmlsec1.dylib, building for macOS-arm64 but attempting to link with file built for macOS-x86_64

where did you see these ld warnings @vpol ? I presume I'm getting the same problem (otool -L against the built lib is not reporting xmlsec1.dylib) but I'd like to confirm. I've tried @cadedaniel 's workaround but it's not working for me

You can see it if you do pip install -v --no-cache-dir xmlsec. I was able to solve this issue for one of my devs today by installing libxml2, libxmlsec1, and pkg-config with arch -x86_64 /usr/local/homebrew/bin/brew, and then adding the following values to ~/.zshrc:
export LDFLAGS="-L/usr/local/opt/libxml2/lib -L/usr/local/opt/libxmlsec1/lib"
export CPPFLAGS="-I/usr/local/opt/libxml2/include -I/usr/local/opt/libxmlsec1/include"

Python - 3.6.15, getting same error.
ImportError: dlopen(/Users/shwetasingh/.pyenv/versions/3.6.15/lib/python3.6/site-packages/xmlsec.cpython-36m-darwin.so, 0x0002): symbol not found in flat namespace '_xmlSecAddIDs'

I just installed on Mac OS without a problem my steps are:
everything worked for arm64 without issues.
brew install libxmlsec1
brew install pkg-config
pip install xmlsec
Btw Im running Ventura but should work on Monterrey also

After struggling with this problem for 4 days, here is what solved it:
My environment:
I only installed Homebrew in a rosetta terminal: which brew gives me: /usr/local/bin/brew
I changed my python version to 3.8.16, then:
brew install libpq --build-from-source
brew install postgresql
pip install psycopg2  # _this wasn't installing until I installed Postgres - I didn't want to install the `-binary` version_
pip install xmlsec==1.3.12

And then the dlopen...xmlsec error went away.

I had the same problem but the solutions above unfortunately didn't work in my case.
Without any hope I tried to manually install libxmlsec1===1.2.37 from brew and it seems to work (I believe I reverted all previous attempts to solve this).
I found the full solution here: https://github.com/xmlsec/python-xmlsec/issues/254#issuecomment-1511135314
Not sure if it was required, but I removed xmlsec from installed pip dependencies and installed it again after downgrading libxmlsec1.
Versions:
Homebrew 4.0.14
initially some latest libxmlsec1 via brew
Python 3.9.2 via pyenv
xmlsec==1.3.13 in requirements.txt
Mac OS Ventura 13.3.1

I'm having the same issue.  Doing:
pip install xmlsec==1.3.11

Fails with:
... a ton of output ...

      5 errors generated.
      error: command '/usr/bin/clang' failed with exit code 1
      [end of output]

  note: This error originates from a subprocess, and is likely not a problem with pip.
  ERROR: Failed building wheel for xmlsec
Failed to build xmlsec
ERROR: Could not build wheels for xmlsec, which is required to install pyproject.toml-based projects

I've installed libxml2 libxmlsec1 pkg-config via brew.  Tried multiple versions of Python (3.9.7 and 3.10.4, both installed by pyenv).  OSX Monterey 12.6.5.


feat!: array ops

Codecov Report
Attention: Patch coverage is 87.03428% with 87 lines in your changes missing coverage. Please review.

Project coverage is 83.12%. Comparing base (6929fa2) to head (7f8025b).

Files with missing lines
Patch %
Lines

src/custom/prelude/array.rs
86.78%
5 Missing and 53 partials :warning:

src/emit/test.rs
77.08%
6 Missing and 5 partials :warning:

src/utils/unwrap_builder.rs
84.61%
0 Missing and 8 partials :warning:

src/utils/array_op_builder.rs
92.63%
0 Missing and 7 partials :warning:

src/utils/int_op_builder.rs
90.00%
0 Missing and 2 partials :warning:

src/utils/logic_op_builder.rs
66.66%
0 Missing and 1 partial :warning:

Additional details and impacted files
@@            Coverage Diff             @@
##             main      #96      +/-   ##
==========================================
+ Coverage   81.67%   83.12%   +1.44%
==========================================
  Files          19       24       +5
  Lines        2641     3282     +641
  Branches     2641     3282     +641
==========================================
+ Hits         2157     2728     +571
+ Misses        304      303       -1
- Partials      180      251      +71

Flag
Coverage Δ

rust
83.12% <87.03%> (+1.44%)
:arrow_up:

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

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


[ENH] add softmax to math module

PR Description
Please describe the changes proposed in the pull request:

This PR adds softmax to the math module

This PR resolves #902
PR Checklist
Please ensure that you have done the following:

[X] PR in from a fork off your branch. Do not PR from <your_username>:dev, but rather from <your_username>:<feature-branch_name>.
[X] If you're not on the contributors list, add yourself to AUTHORS.rst.
[X] Add a line to CHANGELOG.md under the latest version header (i.e. the one that is "on deck") describing the contribution.

Do use some discretion here; if there are multiple PRs that are related, keep them in a single line.

Automatic checks
There will be automatic checks run on the PR. These include:

Building a preview of the docs on Netlify
Automatically linting the code
Making sure the code is documented
Making sure that all tests are passed
Making sure that code coverage doesn't go down.

Relevant Reviewers
Please tag maintainers to review.

@ericmjl

Tag @samukweku, I think we're getting errors on test_dual_conditions_ne_and_eq. Could I ask if you could help here please?

@loganthomas @ericmjl Upon rerun the error doesnt pop up. I need to rework the logic for conditional_join and address the error issue. Something that is a bit more convenient and easier to wrap the head around (for me at least :grin: ). I'll find time to get to it.

Thanks @samukweku!
@ericmjl Just curious what is causing codecov to complain. I think my PR is 100% covered. Why would it fail if that is the case?

@loganthomas codecov has been finnicky lately. Let's keep monitoring it, might be an issue with their cache of metrics, possibly.


Revert "Update README.md"

Reverts Akaedes/banking-protection-#6

The personal account I had received my payment on was taken over and my money transfered, then my account was closed. They framed me with a unsecure deposit and charged me fees that put my account in a negative balance. I had my employer set direct deposit now I haven't been paid in 6 months. I have to get a hold of someone that can tell me why my whole life savings wasn't protected by my bank.


Proposal: ItemsRepeater ChildrenTransitions support

Proposal: ItemsRepeater ChildrenTransitions support
Summary
Allow adding predefined children transitions on ItemsRepeater, like on Panel derived classes.

I think this is what ElementAnimator is for, but it's still in preview. @micahl to handle this one.

@pfresnay thanks for initiating this proposal.  Are the kinds of predefined transitions you'd like to see something you'd want to define and customize yourself or are you more interested in having the equivalent of the AddDeleteThemeTransition and RepositionThemeTransition?

@micahl thanks for feedback. I'm interested to use *ThemeTransition like the ones that you mention : AddDeleteThemeTransition, RepositionThemeTransition, etc.

@pfresney, got it, thanks!  We've done some initial work to support animations, but it isn't final and will almost certainly change so it would be great to get any early feedback on it.
There's an ElementAnimator type that is only available in the prerelease packages, but it is just a base type similar to Transition.  We don't include a concrete implementation in the package so to be useful you'd have to create one.  We do have a sample of one that mimics the behavior of the AddDeleteThemeTransition + RepositionThemeTransition.  Check out the DefaultElementAnimator sample code in our repo.  It might cover some of what you want right now.
What are the other *ThemeTransitions you'd want to see?

@micahl EntranceThemeTransition with IsStaggeringEnabled would be great !

@pfresnay, early this morning at //build some members of the team gave a talk (State of the Union: The Windows Presentation Platform) that I'd encourage you to go watch as it provides useful context in understanding the long-winded answer I'm about to give.
We intentionally built the ItemsRepeater control as part of the WinUI library so that it could be readily used by apps that run on in-market versions of the OS.  The alternative would have been building the control in the platform, but that would have meant apps couldn't use it in practice until their users had upgraded their machine to be running a given release of Windows 10.  Although the ItemsRepeater is not tied to a release of Windows 10, the Transition-derived classes, however, are.  They've been part of the platform since the early releases of Windows 10 (and 8) and the animation system for UWP has historically been tightly coupled to OS releases.
Against that backdrop, some feedback we've been given in the past is that developers wanted to be able to customize the animations on a virtualized collection of items.  When we initially started thinking about how to that, starting with the Transition-derived types wasn't really an option as that would have implied it would only be available on the latest OS and apps wouldn't be able to use it until the majority of their users had upgraded.  That led us to create the ElementAnimator in WinUI which would also support customization.  Additionally, it provides the ability to more easily coordinate some animations across disparate parts of the UI tree, something that the Transition-based types don't do (see #165).
But, as was presented in the //build talk, we're doing work to decouple the larger presentation platform to become part of WinUI.  Once that is in place, we'll have more flexibility in delivering new functionality.  It might be that evolving the Transition-derived types is the way for us to go.  Or, maybe not.  At any rate, this is why the ElementAnimator is only in the "preview" releases for now and we're continuing to seek feedback.  ;)

@micahl that for this great feedback, it makes sense !

Any updates on this? I really would like to use EntranceThemeTransition with IsStaggeringEnabled. At the very least, would anyone know to implement the same animation effect using whatever ItemsRepeater supports? I'm not an expert on animations, so the EntranceThemeTransition animations with ItemsControl was hugely beneficial.

Hey @dpaulino, inside the MUXControlsTestApp there actually is a sample on animations around ItemsRepeater. That showcases a few things and provides some implementations iirc. If you want, we can take a look at this together (message me on discord if you are interested in that) 🙂

@chingucoding when you say MUXControlsTestApp do you mean XAML Controls Gallery?

@chingucoding when you say MUXControlsTestApp do you mean XAML Controls Gallery?

@dpaulino No I am referring to the MUXControlsTestApp inside this repository: https://github.com/microsoft/microsoft-ui-xaml/tree/main/test/MUXControlsTestApp

Any updates on this?

This is still an open topic.
I had to fallback to ItemsControl now, as it supports ItemContainerTransitions, but not ItemsRepeater.
ItemsRepeater meanwhile has gained the ItemTransitionProvider which in theory allows for custom transitions, but unfortunately it's too abstract and you have to implement the animations on your own.
Maybe it would be possible for WinUI to provide a derived ItemCollectionTransitionProvider class that implements the same animations/transitions as in ItemContainerTransitions (AddDeleteThemeTransition, ...).


Removing getOwner Polyfill since is deprecated since Ember 2.3

When trying to test this addon I ran into an issue of the ember-getowner-polyfill module not being found. This polyfill is deprecated so here's a pr removing it from package.json and updating dynamic-forms.js.
cheers

Thanks so much @supersabillon.  I guess the question is anyone using this addon pre-getOwner.  That's the reason the proposed fix is breaking CI (ember try on 1.13).  I'm willing to cut the next release and say that this no longer supports pre-2.3, but will need to remove 1.13 from ember-try.

Going ahead and ending 1.13 support (removed from travis).  Merging this and will cut a new release.
Thanks @supersabillon !


Ignored Workspaces displaying

To reacreate this you just need to make a file inside a ignored folder without saving it to the working directory. This is also the case if opening a external file in current working directory. I think this is because it checks the current directory of a file and not the vscode workspace directory maybe. (I have not looked at the code just assuming this).
When doing this it will show In (workspace Name) Working on untitled-1. When it should not say the workspace name.

Doing more testing this is related to ignored workspaces when user is remote ssh into a vscode instance
#36 This prob be fixed apart of this issue

cd4fabbd920077229269b6b37806e11ad6f06c93 might hopefully fix this, i will push the update out soon

nevermind, can you please give me your settings so i can test it

Hey @xhayper,
Here are my settings. There also looks to be a  regression. Now it only shows idle and not the ignoreWorkspacesText. When going to a new file it then shows the repo. This only happens when you are ssh'ed inot a seperate machine coding also
	"rpc.buttonInactiveLabel": "Check Out My Github", 	"rpc.buttonInactiveUrl": "https://github.com/nick22985", 	"rpc.appName": "Visual Studio Code", 	"rpc.ignoreOrganizations": ["IgnoredOrg"], 	"rpc.ignoreWorkspaces": ["Repo1", "Repo2", "Repo3", "Repo4", "Repo5", "Repo6"], 	"rpc.ignoreWorkspacesText": "[Redacted]", 	"rpc.buttonEnabled": true, 	"rpc.enabled": true, 	"rpc.checkIdle": true, 	"rpc.resetElapsedTimeAfterIdle": true,

ah shoot, i dont know how ssh coding work, this might be s trouble for me to debug

@xhayper I did some digging into this. What it appears to be is that window?.activeTextEditor?.document.uri returns undefined
Causing the check for the isExcluded to fall over and not run
https://github.com/leonardssh/vscord/blob/b3c4ae021e1c3622be12488c9b179480d9efafda/src/activity.ts#L105

this is really REALLY a problem, because that's the only way we know how to find it

currently trying to think of a way we can work around this

@xhayper
Maybe this is actually an issue with the vscode npm plugin
My one thought which would be kinda quick and dirty would be to regex whatever value is the string for the workspace folder. But I assume this will cause more issues for other things so prob better finding a better soloution to this.
My next idea would be trying to use workspace.workspaceFolders as this gets back the folders. The issue here being it contanins a array of worspace folders. Unsure how you can have multiple workspace folders in vscode so I cant rlly play around with this and see if the array is in some sort of order
https://gyazo.com/77aabefb8508751f752bbfb609912dc8/draw

the problem with this is we need to use the current folder, so we have to figure out how the index affect the array before we use .workspaceFolders

Yea that why I was saying idk how to get multiple workspaces to see if there is some sort of index or order to it

i will figure it out soon

So been thinking about this and poking around the vscode API docs. We can figure out if something is a remote by looking at the remoteName in the env. If it is not a remote it returns undefined. Thinking that we could encoperate a check around this to get the current file and folders a different way. Unsure atm just writing this here for now. When I get some time will see if I can figure out a good way of doing this

that sounds like a great idea, unfortunately, i am working on a rewrite of config system and it's might for me right now
i will work on it tomorrow after the config system, you can help me by writing the description of each config :P

Happy to help in anyway, not sure what u want me to do wtih the docs if you wanna talk about it more. Explain it here or u can add me on discord if u would like nick22985#1228

should be fixed in dd7e1b6397cd147020df6dcd9b033e5e02ae5c89


add sqlite mime-type

I was a little worried about the uniqueness of the file extension "db", but I guess it's today by far most popular for sqlite databases and it will have a small impact anyway. However, what about adding "s3db" to that list, it is mentioned quite frequently on the internet.

good idea

@s-ludwig done

Thanks, merging.


middleware not accepting named parameter

Laravel Version: ^8.40
PHP Version:8.0.1

Description:
Route::middleware( middleware:'guest')->group( callback: function () {

})

this will produce error below

ErrorException
Undefined array key 0

if i remove middleware: then it works fine .

Yes, because middleware is not a real function it is implemented via magic __call method here so it does not support named variables.


properly validate date, including when instance = Date but is Invalid…

… Date
Fixes bug reported by @dagstuan
IDK what you people are doing for tests, it's very complicated to figure out where to put a test. meteor-test, typescript-test, grunt file test task, qtest, karma w/ qunit... meanwhile no test directory, no test folder anywhere? No spec files?
But if you could just add a test like
expect(isDate(new Date('asdf')).to.be.false
This will prove this code is working.
Cheers

IMO fundamentally an invalid date is still a date. I haven't dug though the code but I feel like this could potentially break a ton of logic. Five tests are already failing due to this change. I think this is a no-go.

Hmmm...
Maybe you could compromise by keeping your isDate function the way it is, but making the isValid() function properly check whether both isDate() && is actually a valid date?

We're using qunit.  Tests go in /src/test.  You can see existing validity tests here.
Which bug in particular are you referring to?  Please reference by issue number.  A search for issues with author:dagstuan returned nothing.

@mj1856 It was reported on Gitter, there is no existing issue to describe it. The issue is:
moment().year("asdf").isValid()
=> true
moment().year("asdf").toString()
=> "Invalid date"

Usually, in JS when we're checking for valid dates, a date is only "valid" if it also is actually not an Invalid Date.
var d = new Date('asdf')
> undefined
d
> Invalid Date
d instanceof Date
> true
Object.prototype.toString.call(d)
> "[object Date]"

The method from this PR is an old tried and true way of making sure that the date is not an instanceof Date that is also an Invalid Date

It's an input validation bug with the year function.  It has nothing to do with isValid.  Please log it separately as an issue if you would.

See https://github.com/moment/moment/issues/3481

Now lives as #3483.


panic when ollama doesn't have the model

I happened to have ollama running while setting up smartcat. It does not have the phi3 model installed. Here is the output from running sc for the first time:
❯ sc
Prompt config file not found at /Users/thomas/.config/smartcat/prompts.toml, generating one.
...
API config file not found at /Users/thomas/.config/smartcat/.api_configs.toml, generating one.
...
No API key is configured.
How to configure your API keys:
https://github.com/efugier/smartcat/#configuration

thread 'main' panicked at /Users/thomas/.cargo/registry/src/index.crates.io-6f17d22bba15001f/smartcat-2.1.0/src/utils.rs:12:9:
API request failed with status 404 Not Found: {"error":"model \"phi3\" not found, try pulling it first"}
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
zsh: abort      sc

I assume phi3 comes from the .api_configs content:
[ollama]
url = "http://localhost:11434/api/chat"
default_model = "phi3"
timeout_seconds = 180

I see that you often return panics when smartcat encounters an error. It would be nice to just return the error text instead of the full panic.
❯ sc
thread 'main' panicked at /Users/thomas/.cargo/registry/src/index.crates.io-6f17d22bba15001f/smartcat-2.1.0/src/text/api_call.rs:75:37:
version required for Anthropic, please add version key to your api config
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
zsh: abort      sc

Thank for your making a really cool piece of software!
Hehe, I just mean that instead of
❯ sc
thread 'main' panicked at /Users/thomas/.cargo/registry/src/index.crates.io-6f17d22bba15001f/smartcat-2.1.0/src/text/api_call.rs:75:37:
version required for Anthropic, please add version key to your api config
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
zsh: abort      sc

I would expect (and perhaps in red)
❯ sc
Error:
version required for Anthropic, please add version key to your api config

If this is a lot of work, then don't worry about it. This is "nice to have". Most people will figure out how to fix from the original error - it's just that when I got a panic, my first thought was "uh oh, something is wrong with smartcat, not with my config". Perhaps especially when I got the panic in my main message above, which was the very first time I ran smartcat.

it's just that when I got a panic, my first thought was "uh oh, something is wrong with smartcat

Oh interesting! Is that an acknowledged pattern or were you unfamiliar with rust panics?
I am not super versed in the best practices of error handling in rust, but I was under the impression that when the error is final and would induce an unrecoverable state in your program, calling a panic to exit with an error message was the thing to do: https://doc.rust-lang.org/book/ch09-03-to-panic-or-not-to-panic.html
I checked the cases where I used panic! and they all fit that definition in my eyes: what I want is an "exit now with this message and tell the shell it is an error" function, and I don't know of another that would fit the bill and produce a more appealing output.
I know about using Result and passing the errors along, but it seemed like overengineering in those cases.
I agree that panics may read weird at first but I've always seen them as simply errors in rust with a bit a extra text around them give some insight. I genuinely don't know if that's a fallacy :thinking:
Happy to read your thoughts on that matter!

I am definitely not an expert on the matter! I am mostly familiar with rust through polars, where the main author treats panics as bugs. I can't find a reference there right now though. But even though polars does it, it doesn't mean that this is the way™.
Your link was a good one. I agree that it looks like you have it the right way. I wish that that page included more examples including "panics that tell the user how to fix a situation", since I do find it a bit odd that this is totally accepted behaviour.
All that said, I think I would leave things mostly as they are in smartcat, but perhaps try to ensure that when panics do happen, the error should be clearly distinguishable from the rust debug messages. Not exactly sure how to do that, though 🤔

Not exactly sure how to do that, though 🤔

Neither am I! I know of a few crates that prettify the panic output but I usually try to keep dependencies that aren't absolutely required to a minimum but I might consider it.
I'll look inside popular and established rust tool to see how they do :slightly_smiling_face:

Sounds good! Thanks for a nice discussion!


How to cite the dataset

Hello, thanks for your work, can I use the dataset(Images1 and Images2) in my paper and how to cite in my paper?

Hello, thanks for bringing up this issue. At the moment, the dataset and the model implementation have been released together, through this paper : https://www.sciencedirect.com/science/article/pii/S0927025620300847 . Please cite this paper if you would be using our dataset.
Hope this was helpful.


Retrieving email addresses in "From" and "To" headers

Hello,
When using $message->getPayload()->getHeaders() the returned headers show names and not email addresses (names and email addresses are disguised to preserve participants' privacy):
[12] => Array
(
[name] => From
[value] => Jane Doe
)
[16] => Array
(
[name] => To
[value] => Jane Doe 2 , Jane Doe 3 , Jane Doe 4
)
Whereas in the "tryit" part of the api doc the returned headers are the correct ones:
{
"name": "From",
"value": "Jane Doe<EMAIL_ADDRESS>},
{
"name": "To",
"value": "Jane Doe 2<EMAIL_ADDRESS>Jane Doe 3<EMAIL_ADDRESS>Jane Doe 4<EMAIL_ADDRESS>},
There is no parsing involved (I'm printing the headers right after making the request).
Any clues would be greatly appreciated.

 It just doesn't show on the page, I assume it's because of the < and > .
3 hours of work down the drain.


Move top navigation bar into left-side drawer menu

At present, we have both top and bottom navigation menus, which is a non-standard layout and can cause confusion for the user.
We should create a left-side drawer menu, which would allow us to get rid of the top navigation bar. This is in line with the approach take by Slack and Discord mobile apps, among others. The overall plan would be:

Move "All messages", "Starred messages" and "@-mentions" into the left-side drawer.
Consolidate gear and avatar menus into a single item.
Move search to the bottom navigation bar (replacing the gear).

See #mobile-team > left-side drawer nav

We should also move the org switcher directly into the drawer nav, instead of burying it under a menu.

Linking discussion at https://chat.zulip.org/#narrow/stream/243-mobile-team/topic/left-side.20drawer.20nav/near/1311269.

We have decided to take a different approach to navigation, so closing out this one.


seniority-calc-appgyver-db-deployer deploy failed

hello, could someone tell me what caused this error?

i solved the various compatibility problems and i updated npm, but i don't understand why if i look at the service log files it tells me that they are not up to date
seniority-calc-appgyver-db-deployer-2022-05-10 13_17_47.368+0000.txt
if you also need to load the files of the terminal operation
seniority-calc-appgyver-db-deployer.log
seniority-calc-appgyver-srv.log
OPERATION.log

edit: I don't know if they are linked as problems (but I think so, so I add it here) but when I open "EmployeeProfile" the value field is empty

Hi @MattiaRedaelli - Root cause is this error:
Error: com.sap.hana.di.tabledata: The "include_filter" definitions match with 4 records that already exist in the "SAP_CAPIRE_SENIORITYCALC_EMPLOYEE" table
It is complaining that the sample data we provided with the project is already in your database tables. You can just delete the csv files from srv/external/data and the problem should be resolved. We also return an empty array/object if there are no matching records between the Employee table (in HANA Cloud and populated during hire/rehire/terminate events) and the same userId on the SFSF side.

Hi @jmsrpp - after deleting the csv files and running "mbt build" this error appears:
[2022-05-17 09:09:32]  INFO Cloud MTA Build Tool version 1.2.7
[2022-05-17 09:09:32]  INFO generating the "Makefile_20220517090932.mta" file...
[2022-05-17 09:09:32]  INFO done
[2022-05-17 09:09:32]  INFO executing the "make -f Makefile_20220517090932.mta p=cf mtar= strict=true mode=" command...
[2022-05-17 09:09:32]  INFO validating the MTA project
[2022-05-17 09:09:32]  INFO running the "before-all" build...
[2022-05-17 09:09:32]  INFO executing the "npm set registry=https://registry.npmjs.org/ --production" command...
npm WARN config production Use --omit=dev instead.
[2022-05-17 09:09:33]  INFO executing the "npm install --production" command...
npm WARN config production Use --omit=dev instead.
.
up to date, audited 245 packages in 814ms
48 packages are looking for funding
run npm fund for details
found 0 vulnerabilities
[2022-05-17 09:09:34]  INFO executing the "npx -p @sap/cds-dk cds build --production" command...
.[cds] - determining build tasks for project [/home/user/projects/successfactors-extension-calculate-employee-seniority].
[cds] - the following build tasks will be executed
[cds] -    {
"build": {
"target": "gen",
"tasks": [
{"for":"hana", "src":"db", "options":{"model":["db","srv","srv/external/PhotoUser"]}},
{"for":"node-cf", "src":"srv", "options":{"model":["db","srv","srv/external/PhotoUser"]}}
]
}
}
[cds] - building project [/home/user/projects/successfactors-extension-calculate-employee-seniority], clean [true]
[cds] - cds [5.9.5], compiler [2.13.8], home [/home/user/projects/successfactors-extension-calculate-employee-seniority/node_modules/@sap/cds]
[cds] - done >
[cds] - [ERROR] srv/emp-service.cds:21:49-62: Artifact “PhotoUser.EmpEmployment” has not been found (in entity:“EmployeeService.EmpEmployment”)
[cds] - [ERROR] srv/emp-service.cds:22:13-19: Element or variable “userId” has not been found (in entity:“EmployeeService.EmpEmployment”/element:“userId”)
[cds] - [ERROR] srv/emp-service.cds:22:21-35: Element or variable “lastDateWorked” has not been found (in entity:“EmployeeService.EmpEmployment”/element:“lastDateWorked”)
[cds] - [ERROR] srv/emp-service.cds:22:37-50: Element or variable “seniorityDate” has not been found (in entity:“EmployeeService.EmpEmployment”/element:“seniorityDate”)
[cds] - [ERROR] srv/emp-service.cds:22:52-59: Element or variable “userNav” has not been found (in entity:“EmployeeService.EmpEmployment”/element:“userNav”)
[cds] - [ERROR] srv/emp-service.cds:32:15-28: Artifact “PhotoUser.EmpEmployment” has not been found (in entity:“EmployeeService.EmployeeProfile”)
[ERROR] srv/emp-service.cds:21:49-62: Artifact “PhotoUser.EmpEmployment” has not been found (in entity:“EmployeeService.EmpEmployment”)
[ERROR] srv/emp-service.cds:22:13-19: Element or variable “userId” has not been found (in entity:“EmployeeService.EmpEmployment”/element:“userId”)
[ERROR] srv/emp-service.cds:22:21-35: Element or variable “lastDateWorked” has not been found (in entity:“EmployeeService.EmpEmployment”/element:“lastDateWorked”)
[ERROR] srv/emp-service.cds:22:37-50: Element or variable “seniorityDate” has not been found (in entity:“EmployeeService.EmpEmployment”/element:“seniorityDate”)
[ERROR] srv/emp-service.cds:22:52-59: Element or variable “userNav” has not been found (in entity:“EmployeeService.EmpEmployment”/element:“userNav”)
[ERROR] srv/emp-service.cds:32:15-28: Artifact “PhotoUser.EmpEmployment” has not been found (in entity:“EmployeeService.EmployeeProfile”)
[2022-05-17 09:09:36] ERROR the "before-all"" build failed: could not execute the "npx -p @sap/cds-dk cds build --production" command: exit status 1
make: *** [Makefile_20220517090932.mta:28: pre_build] Error 1
Error: could not build the MTA project: could not execute the "make -f Makefile_20220517090932.mta p=cf mtar= strict=true mode=" command: exit status 2

@MattiaRedaelli - Any chance you accidentally deleted ./external/PhotoUser.csn? Those errors are stating that the underlying model artifacts/elements are missing.

@MattiaRedaelli maybe so but it is a totally different file from the one here:
https://github.com/SAP-samples/successfactors-extension-calculate-employee-seniority/blob/sfsf-mobile-appgyver/srv/external/PhotoUser.csn
Please update and confirm.

@jmsrpp I ran the update and now the "mbt build" command works, but the initial error apparently remains the same, I show you the logs
seniority-calc-appgyver-srv.log
OPERATION.log
seniority-calc-appgyver-db-deployer.log

@MattiaRedaelli - Root cause is now about the table data again:
Error: com.sap.hana.di.tabledata: The "include_filter" definitions match with 6 records that already exist in the "SAP_CAPIRE_SENIORITYCALC_EMPLOYEE" table
Check out this answer, where the solution was just to truncate the table. You can do this by clicking the 3 boxes icon next to your HDI container in BAS. Then, find the SAP_CAPIRE_SENIORITYCALC_EMPLOYEE table and run a truncate statement on it.
https://answers.sap.com/questions/13168093/sap-cap-cds-deploy-import-csv.html

@jmsrpp - I'm sorry, but I didn't understand how I should access the table. I tried to look for it in the files, but without success and I looked for an icon with three boxes, but the only one is that of extensions. I try to follow the question and manually delete the fields

@jmsrpp - ok, I couldn't find that icon because I was inside the project, now I'll try again

@jmsrpp - unfortunately I could not find a solution to this problem, any ideas?

closing as we determined the env was corrupt.


Custom S3 Backend

Custom XCOM to upload xcom values to the S3 bucket for the given name.
Adding ENV AIRFLOW__CORE__XCOM_BACKEND: astronomer.providers.amazon.aws.xcom_backends.s3.S3XComBackend in the docker-compose.yaml or where the airflow is running will enable the custom XCOM forS3.
closes #559

Thanks Rajath, for addressing the comments. It is good to me. Any thoughts if we can improve these env names??
PREFIX = os.getenv("PREFIX", "s3_xcom_")
AWS_CONN_ID = os.getenv("CONNECTION_NAME", "aws_default")
BUCKET_NAME = os.getenv("XCOM_BACKEND_BUCKET_NAME", "airflow_xcom_backend_default_bucket")


Check output of 'Check Path Lengths' for files we don't need to ship

Check the output of the 'Check Path Lengths' task for Windows build. From the files with the longest paths, look for any files we shouldn't be shipping/could be gotten rid of, and do so.

Done for 1.30.0


Is libOpenCL an absolute requirement?

Are there perhaps ways to build on vulkan or just plain OpenGL?
Thanks

I see. thank you for the response. And I suppose implementing a Vulkan or GL-based runtime is not on the roadmap for android-nn-driver?

Thank you for the response.  And a Vulkan or GL-based implementation is not on the roadmap?


[Discuss] Support viewport config.

750px is used as the default viewport width in weex. It's really convenient in most cases, however, 1 device(fixed) pixel is hard to implement.

Another question & advice from @yahooyee is how to let developers get/calculate the width/height of current viewport.

displayWidth: 750(default)  will cause serious sub-pixel problems, and there is no way to fix it right now.
For example, if screen width is 720px, the border in the code snippet won't be display.
displayWidth: 750(default)

.a{
     border-width:1;
}

<div class="a">

Refer to DPI mechanism in Android, maybe a scale factor(positive, integer, could be 1) which depends on screen width would be a better solution.

Proposal:
DSL Design
Ref: W3C Spec CSS Device Adaptation
Adding item in config script
<script type="config">
  {
    "viewport": {
    	"width": "device-width",
    	...
    },
    ...
  }
</script>

Supported properties:

width: number or "device-width" or "device-height"
height: number or "device-width" or "device-height"
initial-scale (not supported)
minimum-scale (not supported)
maximum-scale (not supported)
user-scalable (not supported)

JS-Native API Design

module: "dom" | "instanceWrap" (both fine)
method: "setViewport"
args: [viewportObject] (just same as viewport object in config script)

It must be called at the beginning of an instance and behind any of other dom method calls, otherwise it will not work.
This also needs implementation from JS framework and native renderer.

From another perspective, I think we also should add an absolute unit.
In the current version, Weex will ignore all style units, if we set the viewport (default is 750), all style values are treated as relative values. If we add an absolute unit, it can be very easy to draw a 1 pixel line ( #27 , #1022 ), and writing non-responsive layouts ( #491 #965 #1543 ).
There are two candidate units:
+ pt, the absolute units used in CSS and iOS.
  + dp, the absolute unit used in Android.
I personally think it's more appropriate to use pt, because CSS already has this attribute. Doing so reduces the learning costs of users and avoids introducing our own concepts.
Draw a box with a pixel-wide border:
`Css .box {    Width: 500;    Height: 300;    Border-width: 1pt;    Border-color: # 666666;    Border-style: solid; }} `

The proposal of CSS units is separated to #1641 .

看完了，没看明白

就是

This PR/issue doesn't receive response since Weex migrated to Apache two years ago and this repository is no longer active yet.
Feel free to ask question in new repository and thanks for your contribution.

This issue is outdated for a long time and will be closed now. You can create a new one if you still have questions.

This issue is outdated for a long time and will be closed now. You can create a new one if you still have questions.


Card Jitsu Fire Sensei loop

its the photo of the proof

nothing in the houdini World server side

Back my old account was deleted

From previous experience with this when I worked cjf for my source. You'll need to edit the domain locks in the fire.swf. You can use programs like ASV to edit the constants.

This feature will be available in the coming weeks. You can play Card Jitsu fire so long as you're using our media server and you have the Fire starter deck & ninja mask in your inventory.
Locking this.


Added Linked List Cycle in Python

Kindly consider the pull request, thanks.

this is amazing @mansadixit
thanks for the contribution in my repo and please share in social media and tag me on twitter


Microprimes don't stake

Microprimes stopped staking after the rate decrease...haven't had a stake payout since 1/15.

Yeah... for some reason no-one notified me on that one for awhile. Should be fixed by https://github.com/PaycoinFoundation/paycoin/pull/469 but it's a forking commit so I can't just merge it at will.


Documentation

Pull Request Test Coverage Report for Build 424

0 of 0 (NaN%) changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 91.693%

Totals

Change from base Build 423:
0.0%

Covered Lines:
2627

Relevant Lines:
2865

💛  - Coveralls


Private repo

Hey,
Thank you for this repo. It works perfect with public repo as for private I have some issues. Take the following config
  - name: automation-pr
    type: pull-request
    source:
      repo: ahelal/mypriverepo
      private_key: {{github_private_key}}
      access_token: {{github_token}}

The check works and i get a Ref, but In the get part fails with the following error
Cloning into '/tmp/build/get'...
fatal: could not read Username for 'https://github.com': No such device or address
/opt/resource/lib/in.rb:25:in `<main>': git clone failed (RuntimeError)

not sure what am I doing wrong ?

You need to set the uri on source to the git SSH url.
From the README:
uri: Optional. The URI to the github repo. By default, it assumes https://github.com/`repo`.

Let me know if that works for you.

thanks that works 👍


Revert 'Remove --gc-sections for all targets for now (#5707)'

It should work with lld now that the lld flag -z nostart-stop-gc was added with apple/swift#60544 and apple/swift-driver#1153.

@swift-ci test

@swift-ci please smoke test


[Miner] Foundation for the Miner submodule

Objective
Create a foundation for the Miner submodule in the poktroll repo for the Shannon upgrade.
Origin Document
The business logic for mining relays from the Relay Mining paper.
Goals

Enable an E2E HTTP relay with basic session and account management
Build the foundation for the Miner submodule for the Relayer
Identify time-consuming TODOs to be done during the integration and testing stages

Deliverables

[ ] Reference structures and types in the poktroll-alpha repo, the v1 repo and v0 repo to understand and use other definitions as a foundation
[ ] A single PR that introduces the Miner structure & interface
[ ] A single PR that adds business logic, with the appropriate placeholders & TODOs, to add Miner functionality
[ ] A single PR that integrates the miner with other components (e.g. SessionManager, Proxy, Relayer, Client, etc...) to enable E2E functionality
[ ] A single PR that integrates with the SMT for proof validation & verification
[ ] Multiple small PRs that migrate the necessary utilities from the poktroll-alpha repo to the poktroll repo

Non-goals / Non-deliverables

WebSocket support (HTTP only is okay)
Accounting for all possible edge cases and situations

General deliverables

[ ] Comments: Add/update TODOs and comments alongside the source code so it is easier to follow.
[ ] Testing: Add new tests (unit and/or E2E) to the test suite.
[ ] Makefile: Add new targets to the Makefile to make the new functionality easier to use.
[ ] Documentation: Update architectural or development READMEs; use mermaid diagrams where appropriate.

Creator: @Olshansk
Co-Owners: @bryanchriswhite @red-0ne

@bryanchriswhite Looking at the deliverables of this ticket, I would argue it is not complete yet.

@Olshansk agreed, thanks for re-opening. Are you aware of a way to prevent the issue from automatically closing when a linked PR is merged? Perhaps I should just not link them in the "development" section?

---
title: Clients Dependency Tree
---
flowchart

sup[SupplierClient]
tx[TxClient]
bl[BlockClient]
evt[EventsQueryClient]

sup --"#SignAndBroadcast()"--> tx
tx --"#CommittedBlocksSequence()"--> bl
tx --"#EventsBytes()"--> evt
bl --"#EventsBytes()"--> evt

@bryanchriswhite I believe this was closed by accident, so I've reopened it.
Feel free to close if that was intentional.


Experiment with rehype-tree-sitter

Our React Markdown renderer uses plugins to parse and alter what it displays, including Rehype:
https://github.com/tarasglek/chatcraft.org/blob/029165e1f53e7aef8d6df1a35dcd1561ee09a6bb/src/components/Markdown.tsx#L62
https://github.com/haze/rehype-tree-sitter is supposedly a good syntax highlighter.  What we use now works, but is not well maintained.  We could do an experiment to try this.

Good testcase would be toml. It's something we don't support atm, but it exists at https://tree-sitter.github.io/tree-sitter/
# packer.toml

[[builders]]
type = "amazon-ebs"
region = "us-east-1"

currently we can't render packer tomls

I did a test with this, and it doesn't look ready for use.  No TypeScript support, fails to build properly with vite, etc.  We might want to let it bake a bit more.

sadness


fix(x): register v1beta1 types to allow legacy queries

fixes #1587
Signed-off-by: Artur Troian<EMAIL_ADDRESS>

This pull request has been mentioned on Akash Accelerator. There might be relevant details there:
https://forum.akash.network/t/incident-report-some-validators-missing-blocks-due-to-version-conflict/4629/1


Unsupport size for ToogleButton

I realize that the ToogleButton do have the size prop, but the typescript is not fully supported.

Your Environment 🌎

Tech
Version

Material-UI
v4.7.2

React
v16.12.0

Browser
Chrome (Latest)

TypeScript
3.7.3

etc.

Solved in #18778


Wiki could be clearer on matcher usage

From looking at the wiki, it isn't immediately clear that mockito-kotlin introduces its own matcher functions (eq(), any(), etc.) that should be used instead of Mockito's functions.

Thanks! I have included this in the Wiki.


Modifications and deletions of Istio-healthz VS are not reconciled properly

Description
When istio-healthz virtual service is deleted, reconciler restores it into a wrong namespace(kyma-system instead of istio-system). Also when port property of Istio-healthz is changed, reconciliation doesn't restore it to original value. Only deletion of Istio-healthz, reconciles port number properly(resource is still in wrong namespace). Istio-healthz resource was added in this PR(it is not available in kyma 2.0.0).
Expected result
During reconciliation Istio-healthz is restored into Istio-system namespace and port property is restored to original value.
Actual result
During reconciliation Istio-healthz is restored into kyma-system namespace, port property is not restored to original value.
Steps to reproduce

Install kyma from: main using reconciler ./bin/mothership-darwin local --value=global.domainName=<domain_name>  --profile=production
delete istio-healthz VS: k delete virtualservice istio-healthz -n istio-system
reconcile certificates: ./bin/mothership-darwin local --value=global.domainName=<domain_name> --components certificates  --profile=production
check virtual services: k get virtualservices.networking.istio.io --all-namespaces
istio-healtz VS is restored into kyma-system namespace
change port property in Istio-healthz and reconcile again
port is not restored to original value

Troubleshooting

Checked with the team and this seems to not be an issue anymore.


⚠ Bofrost.fr has degraded performance

In aedcaec, Bofrost.fr (https://www.bofrost.fr) experienced degraded performance:

HTTP code: 200
Response time: 974 ms

Resolved: Bofrost.fr performance has improved in 68069d1 after 9 minutes.


Example: Select action throws error

Describe the Bug
When clicking on the Select action inside the properties panel to open the element templates chooser, nothing happens and it throws an error on the current master.

EventBus.js?fdb0:385 unhandled error in event listener TypeError: Cannot read properties of undefined (reading 'id')
at _.ChangeMenuResult [as constructor] (ChangeMenuResult.js?96d4:20:16)
at _.O [as render] (preact.module.js?da65:1:7979)
at j (preact.module.js?da65:1:5671)
at w (preact.module.js?da65:1:2130)
at j (preact.module.js?da65:1:5834)
at w (preact.module.js?da65:1:2130)
at L (preact.module.js?da65:1:7176)
at j (preact.module.js?da65:1:6107)
at w (preact.module.js?da65:1:2130)
at L (preact.module.js?da65:1:7176)

Steps to Reproduce

npm start
Select element
Click on Select in the properties panel
Nothing happens + console shows an error

Expected Behavior
Element template chooser should appear as expected.
Environment

Host (Browser/Node version), if applicable: Chrome 102.0.5005.61
OS: macOS 11.6.5
Library version: master

This is related to the example as most example connectors do not provide a category. We could either make the component more forgiving or add categories to the example templates.

Opted for option :two:, making the component more forgiving via https://github.com/bpmn-io/bpmn-js-connectors-extension/pull/44.


Recommendation for README.md (did the whole thing in ChatGPT with Bing) Figured out how to PR it.

Sure, I can definitely help you write a tutorial on this. First, I'll go through the basic steps of using Git, followed by instructions on how to use the specific repository with a Minetest server. For this tutorial, I'm assuming that the person has access to a terminal/command line and has Minetest installed on their machine. If Minetest isn't installed yet, you can find instructions on the Minetest official website.
Part 1: Introduction to Git
Step 1: Install Git
If Git is not yet installed, you will need to install it. The exact method depends on your operating system:

On Ubuntu or other Debian-based Linux distributions, use the command: sudo apt-get install git
On Fedora, use the command: sudo dnf install git
On Windows, download the installer from the Git website
On macOS, you can install git via Homebrew with the command: brew install git

Step 2: Clone the Repository
The next step is to clone the GitHub repository to your local machine. Cloning creates a local copy of the repository on your computer. This allows you to edit files and make commits to the project.

Open a terminal/command line.
Navigate to the directory where you want to clone the repository using the cd (change directory) command. For example: cd /path/to/your/directory/.
Clone the repository using the git clone command followed by the URL of the repository. In this case, the command is git clone http://github.com/CryptechTest/cryptech.

After running the git clone command, you should have a local copy of the repository on your computer. You can confirm this by navigating to the directory in your file explorer or by typing ls (list files) in the terminal, which should now list a 'cryptech' directory.
Step 3: Understand the Repository Structure
Based on the information on the GitHub page, the repository contains several important files and directories【7†source】:

media: This directory likely contains media assets required for the game mode.
menu: This directory may contain files related to the game mode's menu.
mods: This directory likely contains the mods for the game mode.
.gitignore: This file specifies files and directories that Git should ignore.
.gitmodules: This file is used to store metadata about Git submodules.
LICENSE.md: This file contains information about the license under which the code is released.
README.md: This file typically contains information about the project and instructions for use.
export_remote_media: The purpose of this file is unclear without more context, but it may be a script related to media assets.
game.conf: This file likely contains configuration information for the game mode.
minetest.conf: This file likely contains configuration information for Minetest.

The repository is written primarily in Lua (99.2%) with a small amount of Shell scripting (0.8%)【9†source】.
Part 2: Using the Repository with a Minetest Server
Now that we have a basic understanding of Git and the structure of the repository, let's move on to using the repository with a Minetest server.
Step 1: Copy the Game Mode to the Minetest Game Modes Directory

In your terminal/command line, navigate to the cloned repository directory (i.e., cd /path/to/your/directory/cryptech).
Copy the entire contents of the repository to your Minetest game modes directory. The exact location

of this directory will depend on your operating system and where Minetest is installed:

On Linux, it is typically located in ~/.minetest/games/.
On Windows, it is typically located in C:\Users\<YourUsername>\Documents\Minetest\games\.
On macOS, it is typically located in ~/Library/Application Support/minetest/games/.

The command to copy the files will look something like this: cp -r * /path/to/minetest/games/cryptech. This command copies all files and directories (-r stands for recursive, meaning it includes subdirectories) from the current directory to the specified directory.
Step 2: Configure the Minetest Server

If you have a minetest.conf file in the repository, you can replace your existing Minetest configuration file with this one. This file is typically located in the same directory as the Minetest executable. Be sure to make a backup of your existing minetest.conf file before replacing it.
If you don't have a minetest.conf file in the repository, or if it doesn't contain all the settings you need, you will need to edit your existing minetest.conf file to configure your Minetest server. The specific settings you need will depend on the game mode and your specific requirements.

Step 3: Start the Minetest Server
You can now start your Minetest server with the new game mode. The exact command will depend on your operating system and where Minetest is installed, but it will look something like this: minetest --worldname world --gameid cryptech.
In this command, worldname is the name of the world you want to use with the new game mode, and gameid is the ID of the new game mode, which should be the same as the name of the directory you copied to the games directory.
Conclusion
Congratulations, you have now set up a Minetest server with a new game mode from a GitHub repository! Remember, this is a basic guide and your actual implementation might require additional steps depending on the specifics of the game mode and your server setup. Always refer to the README.md file and any other documentation provided in the repository for more detailed instructions.
Also, remember that this guide assumes that you are comfortable using a terminal/command line interface. If you're not, there are many resources available online to help you learn, including the official Git documentation and tutorials on websites like Codecademy and Khan Academy. If you have any further questions, feel free to ask.

Looks good... Check the PR


Copyright infringement

You are doing massive harm to both your professional and personal reputations.
People simply aren't going to see you as trustworthy, especially those who may need to give you access to confidential materials.
The evidence is ironclad. Even if you rewrite everything from scratch, you've still demonstrated traits of untrustworthiness and deception, broken multiple international laws, and violated terms and conditions of both GitHub and Nuget.
https://twitter.com/MrPeterLMorris/status/1786750236137857371
I recommend removing your repo and nuget packages before your reputation is damaged to the point you become unemployable.

@mrpmorris Hope you remember issue Date Picker Component #142.
You praised our work and requested for DatePicker component. Just check, how those components implemented before raising all these.
If you are a fan of Blazorise, please go and use it.
Is Blazorise scared of BlazorBootstrap growth? BlazorBootstrap will be free and open source.
Every BlazorBootstrap component works as native as Bootstrap. Our implementation is native to Bootstrap.
I don't know why you are creating unnecessary drama here by comparing old code, creating GitHub issues to defame BlazorBootstrap. Just check all the components how those are actually implemented not the Enum name matching, etc. Please check the latest repo. There is no need to learn rocket science to write a Blazor component library.
Please educate us on the relevant international laws and section numbers with references.
If they have any issues, they will come to us, why you are worried, I don't understand.
Hope you know what's going on between us and Blazorise. If not, educate yourself.

I did praise the work, I just didn't realise at the time you were stealing it from someone else.
If you steal someone else's work and they don't like it, that doesn't make them scared, it just makes you unethnical. I'm not creating drama, I am making you aware of the damage you are doing.
The law is called "copyright".

I will leave this here for future reference. The following screenshots are part of Blazorise SLA starting from June 2021, two months before blazorbootstrap contained the first copy of Blazorise files and source code:

Which clearly states that you broke Blazorise T&C. Aside from the part that you copied Blazorise code. You also modified it to a large extent and redistributed it to third parties.

@stsrki @mrpmorris
We informed the BlazorBootstrap community that if they are using an older version for commercial purposes, they should reach out to the Blazorise team for licensing.
https://docs.blazorbootstrap.com/blog/2024/02/25/upgrade-to-v2.0.0

Your latest source is still a copy, they'll still be breaking the law.
And telling them also doesn't change the fact that you broke the law when you did it, and are continuing to do so.
But I am not here to teach you the law. I recommend you seek advice from a legal expert in copyright law before deciding what to do next.


Tunnel factory to provide error message for notification toast

We currently can contribute a tunnel factory through the embedder so that VS Code can open tunnel connections.
The problem is that if something goes wrong within that factory we have no control on what we show to the user because every error falls back to this error handler.
It would be nice if the tunnel factory could provide a custom error to show as part of the notification to the user and fallback to the default in case an uncaught error was thrown.
cc @alexr00

This feature request is now a candidate for our backlog. The community has 60 days to upvote the issue. If it receives 20 upvotes we will move it to our backlog. If not, we will close it. To learn more about how we handle feature requests, please see our documentation.
Happy Coding!

Tentatively adding for August.

@osortega were you able to try out providing an error message?

@alexr00 yes! Works perfectly, thank you so much!


Real-time viability?

I have a question about the real time performance of the method. What hardware is expected for it to run, and what is the latency of the pipeline on certain hardware configurations?

We run our pipeline on NVIDIA GeForce RTX 3070 and i7-9700K CPU. Our latency is 17ms based on that configuration.

Thanks.


fmt: empty byte slice prints one value with format "% 02x"

https://play.golang.org/p/S51xT7K4Au
package main
import "fmt"
func main() {
fmt.Printf("% 02x\n", []byte{0})
fmt.Printf("% 02x\n", []byte{})
}
prints 00.

So?
https://play.golang.org/p/35pyRrGLXN
package main

import "fmt"

func main() {
	fmt.Printf("% 08x\n", []byte{1})
}

prints:
00000001

Are those leading zeros wrong too?
The user asked for it to be zero-padded.

I think while this is surprising, it isn't a bug as it works as documented in https://golang.org/pkg/fmt/:
"""
For most values, width is the minimum number of runes to output, padding the formatted form with spaces if necessary.
0	pad with leading zeros rather than spaces;
"""
"% 08x" applied to an argument of type []byte doesn't mean "format the bytes in the argument with 8 hex characters per byte, separated by spaces."
It means "format the bytes in the argument with 2 hex characters per byte, separated by spaces, and then pad the result with 0s on the left if the string has length less than 8."
Thus, fmt.Printf("% 04x", []byte{}) first produces "" which is padded to "0000".
And fmt.Printf("% 04x", []byte{2}) first produces "02" which is padded to "0002".
Examples: https://play.golang.org/p/lvP2PBEdJZ

"For compound operands such as slices and structs, the format applies to the elements of each operand, recursively, not to the operand as a whole. Thus %q will quote each element of a slice of strings, and %6.2f will control formatting for each element of a floating-point array."
So for an empty slice it should print nothing. Fix coming.

As brad asked, isn't this change effectively make width not applicable for string and byte slices? Should we mention that in docs?
It seems, the previous behavior was adhering to the following statement in the docs.
"For most values, width is the minimum number of runes to output, padding the formatted form with spaces if necessary."
raj@rajender:~/go/src> cat ~/a.go
package main
import "fmt"
func main() {
fmt.Printf("% 20x\n", []byte{1})
fmt.Printf("% 20x\n", []byte{1, 1})
fmt.Printf("% 20x\n", []byte{1, 1, 1})
fmt.Printf("% 20x\n", []byte{1, 1, 1, 1})
}
raj@rajender:~/go/src> ~/go1.4/bin/go version
go version go1.4.2 linux/amd64
raj@rajender:~/go/src> ~/go1.4/bin/go run  ~/a.go
01
01 01
01 01 01
01 01 01 01
raj@rajender:~/go/src> ~/go/bin/go version
go version devel +2f98bac Tue Apr 14 07:22:44 2015 +0000 linux/amd64
raj@rajender:~/go/src> ~/go/bin/go run  ~/a.go
01
01 01
01 01 01
01 01 01 01
raj@rajender:~/go/src> cat ~/a.go
package main
import "fmt"
func main() {
fmt.Printf("% 05s\n", []byte{})
}
raj@rajender:~/go/src> ~/go/bin/go version
go version devel +2f98bac Tue Apr 14 07:22:44 2015 +0000 linux/amd64
raj@rajender:~/go/src> ~/go/bin/go run  ~/a.go
00000

hi,
the statement in the patch notes that the loop applies the padding is false.
See a testcase like:
{"% 03x", []byte{1, 2, 3}, "001 002 003"},
it works for 02x because hex 1 is already 01.
i was working on the todo in the function that changed and had make some testcases for the old padding behavior which as explained above by rob would be wrong. They are failing now but also reveal that no padding is applied anymore regardless if it should per element or not.
{"%20X", []byte("xyz"), "              78797A"},
{"% 20X", []byte("xyz"), "            78 79 7A"},
{"%#20X", []byte("xyz"), "            0X78797A"},
{"%# 20X", []byte("xyz"), "      0X78 0X79 0X7A"},
{"%-20X", []byte("xyz"), "78797A              "},
{"% -20X", []byte("xyz"), "78 79 7A            "},
{"%-#20X", []byte("xyz"), "0X78797A            "},
{"%-# 20X", []byte("xyz"), "0X78 0X79 0X7A      "},
--- FAIL: TestSprintf (0.00s)
fmt_test.go:729: Sprintf("%20X", [120 121 122]) = "78797A" want "              78797A"
fmt_test.go:729: Sprintf("% 20X", [120 121 122]) = "78 79 7A" want "            78 79 7A"
fmt_test.go:729: Sprintf("%#20X", [120 121 122]) = "0X78797A" want "            0X78797A"
fmt_test.go:729: Sprintf("%# 20X", [120 121 122]) = "0X78 0X79 0X7A" want "      0X78 0X79 0X7A"
fmt_test.go:729: Sprintf("%-20X", [120 121 122]) = "78797A" want "78797A              "
fmt_test.go:729: Sprintf("% -20X", [120 121 122]) = "78 79 7A" want "78 79 7A            "
fmt_test.go:729: Sprintf("%-#20X", [120 121 122]) = "0X78797A" want "0X78797A            "
fmt_test.go:729: Sprintf("%-# 20X", [120 121 122]) = "0X78 0X79 0X7A" want "0X78 0X79 0X7A      "

adding to the above - not sure if this is another inconsistency if we need to format per element:
currently:
Sprintf("% 02x", [1]) = "01"
but if the format is applied per element shouldnt the ' ' mean we need to make a space for the sign?
Sprintf("% 02x", [1]) = " 01"

Reverting this change. An empty slice or empty string printed with padding should show the padding. I will adjust the documentation to make this clear.


Add Snapshot Create API

This PR adds support for Elasticsearch's snapshot create API.
Example program:
package main

import (
	"context"
	"log"
	"os"
	"time"

	elastic "gopkg.in/olivere/elastic.v5"
)

func main() {
	client, err := elastic.NewClient()
	if err != nil {
		panic(err)
	}

	// create snapshot repo
	repo := elastic.
		NewSnapshotCreateRepositoryService(client).
		Repository("repo1").
		BodyJson(map[string]interface{}{
			"type": "fs",
			"settings": map[string]interface{}{
				"location": "/tmp/elasticsearch",
			},
		})

	repoResponse, err := repo.Do(context.TODO())
	if err != nil {
		panic(err)
	}

	if !repoResponse.Acknowledged {
		panic("could not ack repository create")
	}

	// create snapshot
	service := elastic.
		NewSnapshotCreateService(client).
		Repository("repo1").
		Snapshot(time.Now().Format("2006-01-02-15-04-05")).
		WaitForCompletion(true).
		BodyJson(map[string]interface{}{
			"indices":              "website",
			"ignore_unavailable":   false,
			"include_global_state": true,
		})

	response, err := service.Do(context.TODO())
	if err != nil {
		panic(err)
	}

	if response.Snapshot.State != "SUCCESS" {
		panic("elasticsearch snapshot state != SUCCESS: " + response.Snapshot.State)
	}
}

The PR is looking good. Can you please take a look at those comments, so I can merge in the next run. I'm off for vacation next week so it'll take a few more days, I'm afraid.

Thanks @olivere, I looked at your comments and pushed some changes.

It'll roll with 5.0.39. Thanks.

Thanks @olivere, can I backport it to v3?

@wedneyyuri Sure. That seems to be really easy. All you need to do is change some import paths.


Not able to add annonatated graphql schema file path whlie doing amplify api add

Describe the bug
Error: ENOENT: no such file or directory, copyfile '/amplify/backend/api/amplireactappdemo2/schema.graphql' -> '/home/hrudra/amplireactappdemo2/amplify/backend/api/amplireactappdemo2/schema.graphql'
at Object.copyFileSync (fs.js:1724:3)
at serviceWalkthrough (/home/hrudra/.nvm/versions/node/v10.14.2/lib/node_modules/@aws-amplify/cli/node_modules/amplify-category-api/provider-utils/awscloudformation/service-walkthroughs/appSync-walkthrough.js:110:8)
at process._tickCallback (internal/process/next_tick.js:68:7)
To Reproduce
do amplify api add and then provide the schema.graphql path
its showing above error
Expected behavior
successfully add schema.graphql file path and do amplify publish
Screenshots
Please look into attache screen shot and .txt file for detailed error info
Desktop (please complete the following information):

OS: windows 10 pro using windows subsystem for Linux.

Additional context
Add any other context about the problem here.
AmplifyAddAPI error.txt

Can any one please help me on above issue
Thanks in advance

@Rudra815 Looking at the error, it looks like there is no pre-existing file at this location -> '/amplify/backend/api/amplireactappdemo2/schema.graphql. Can you cat '/amplify/backend/api/amplireactappdemo2/schema.graphql and see if the Graphql schema exists at the given location?

@Rudra815 Closing this issue due to lack of issue creator response and the inability to reproduce this behavior. Please feel free to re-open this issue if you're still seeing the same problem.


mr_create: Add number of commits to create metadata

First time GitLab users can make mistakes that result in a large merge
request being generated.  For example, new users may get the target branch
wrong, or push a branch that hasn't been updated, etc.  These errors always
result in way more commits than intended being pushed.
After a push to one of their hosted repositories, GitLab provides a URL
to a webpage that allows users to change the target branch and look at the
commits that are going to be pushed.  One convenient value on that page is
the number of commits that are being pushed.  In order to prevent users
from making simple mistakes, like the above, it would be good to also
provide that information the default 'lab mr create' message.
Provide the number of commits in 'lab mr create'.
Signed-off-by: Prarit Bhargava<EMAIL_ADDRESS>

@bmeneguele , this results in the default 'lab mr create' message changing from
# Requesting a merge into upstream:8.3 from prarit:83_test
to, for example,
# Requesting a merge into upstream:8.3 from prarit:83_test (10 commits)
Note that I am keeping it simple and using 'commits'.  Yeah, I could have done a singular/plural thing there but will implement that later on when I get sufficiently annoyed at it :)

Note that I am keeping it simple and using 'commits'. Yeah, I could have done a singular/plural thing there but will implement that later on when I get sufficiently annoyed at it :)

:smile: no problem.
@prarit but I think you forgot to update the test using the template you modified (added the commit number ;).

@prarit actually the build test is failing because both
https://github.com/zaquestion/lab/blob/f3c8fb228452ac5a1e246517590c655c6245a37e/cmd/mr_create_test.go#L20
https://github.com/zaquestion/lab/blob/f3c8fb228452ac5a1e246517590c655c6245a37e/cmd/mr_create_test.go#L40
It's required the (%d commits) at the end of the line, which was added by your patch :)


incorrect # of records

https://staging-gudmap3.gudmap.org/chaise/recordset/#2/Gene_Expression:Gene_Thumbnail_Display@sort(NCBI_GeneID)
Click show more on description.. You will see displaying 25 of 128479 Records. The number of records is too high..

Actually, @ljpearlman just mentioned that there are 128479 in the system.. So this is not a bug.


Change #!/usr/bin/python to #!/usr/bin/env python

This was creating python version issues during installation. usr/bin/python points to a different version of python, than used in virtual env. Somehow, due to restrictions, can't change usr/bin/python. So changed to #!/usr/bin/env python. Already have a PR merged for this issue.

Is this up to date and has actual test failure or does it need a rebase for tests to pass?


G-Suite Signatures

Hello,
More of a question than an issue. Is there a way for the html signature to automatically fill in the user details like Full Name and Job Title?
Thanks in advance

Hi Thea,
I am not sure if it can be done in GAM but here is a Stackoverflow article on how to do it in Apps Script.
https://stackoverflow.com/questions/40936257/how-to-use-the-gmail-api-oauth2-for-apps-script-and-domain-wide-delegation-to/40936258#40936258

This is available in Advanced GAM:
https://github.com/taers232c/GAMADV-XTD3/wiki/Tag-Replace#user-attribute-replace-tag-userreplacement-processing
Ross

You could print users organization details to a csv
print users organizations >> ~/Desktop/orgusers.csv
And then use the bulk command to add signatures for multiple users using the CSV file.
Add signatures for multiple users using that CSV file and a template .html file
gam csv signatures-list.csv gam user ~primaryEmail signature file signature-template.html replace Job\ Title ~organizations.0.title

Not a GAM answer, but these guys work well if you need this quickly:
https://signaturesatori.com/


Adding a banner   & tapping overview button quickly , causes exception

In my app ( also in the code itself) - we use timeout - to show the ad.
However - i've noticed a rare scenario where If I navigate (angular) to a screen which in its ngOninit has  this :
 setTimeout(() =>
                       {
                           this._admobService.createBanner();
                       }, 3000);

if I click the Overview button ( android's most right screen button) within that 3 seconds - then I get this :

It's probably becuase it can't find anything to put the banner on.
Is there a check that can be made in our code  - not to cause exception ?

Suggested PR :
 setTimeout(function() {
     if (frame.topmost() !== undefined) {

         frame && frame.topmost() &&
         frame.topmost().currentPage &&
         frame.topmost().currentPage.android &&
         frame.topmost().currentPage.android.getParent() &&
         frame.topmost().currentPage.android.getParent().addView(adViewLayout, relativeLayoutParamsOuter);

     } else {
       //same idea here....
         application.android.foregroundActivity.getWindow().getDecorView().addView(adViewLayout, relativeLayoutParamsOuter);
     }
 }, 0);

Sorry but there's no a?.b yet in js.... ( what are they waiting for ???)

@EddyVerbruggen  Hi.
If you want , It should be added also in the Hidebanner function.
admob.hideBanner = function (arg) {
  return new Promise(function (resolve, reject) {
    try {
      if (admob.adView !== null) {
        var parent = admob && admob.adView && admob.adView.getParent();   //<------
        if (parent !== null) {
          parent.removeView(admob.adView);
        }
        admob.adView = null;
      }
      resolve();
    } catch (ex) {
      console.log("Error in admob.hideBanner: " + ex);
      reject(ex);
    }
  });
};


Find command

Hi,
The following lines say:
find . -name ".f"
tries to find all files below "."
Does this find all files below .? And what is "."?

This commit closes a different issue.


fcitx5-gtk: 5.0.14 -> 5.0.15

Automatic update generated by nixpkgs-update tools. This update was made based on information from https://repology.org/metapackage/fcitx5-gtk/versions.
meta.description for fcitx5-gtk is: "Fcitx5 gtk im module and glib based dbus client library"
meta.homepage for fcitx5-gtk is: "https://github.com/fcitx/fcitx5-gtk"
meta.changelog for fcitx5-gtk is: ""
Updates performed

Version update

To inspect upstream changes

Compare changes on GitHub

Impact

Checks done (click to expand)

built on NixOS
fcitxresult is not automatically checekd because some binaries stick around

Rebuild report (if merged into master) (click to expand)

2 total rebuild path(s)

2 package rebuild(s)

2 x86_64-linux rebuild(s)
0 x86_64-darwin rebuild(s)

First fifty rebuilds by attrpath
fcitx5-gtk
fcitx5-with-addons

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/1n98ghzhdd4rf5lc0nmywlf1n8zj3a3m-fcitx5-gtk-5.0.15 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A fcitx5-gtk https://github.com/r-ryantm/nixpkgs/archive/a1d6df4f81f4c425490587dd6ebf58321bf157e6.tar.gz

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/1n98ghzhdd4rf5lc0nmywlf1n8zj3a3m-fcitx5-gtk-5.0.15
ls -la /nix/store/1n98ghzhdd4rf5lc0nmywlf1n8zj3a3m-fcitx5-gtk-5.0.15/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review run on x86_64-linux 1

2 packages built:

fcitx5-gtk
fcitx5-with-addons

Maintainer pings
cc @poscat0x04 for testing.

With https://github.com/fcitx/fcitx5-gtk/pull/18, can we cleanup those NIX_CFLAGS_COMPILE?
https://github.com/NixOS/nixpkgs/blob/a1d6df4f81f4c425490587dd6ebf58321bf157e6/pkgs/tools/inputmethods/fcitx5/fcitx5-gtk.nix#L64-L67

can we cleanup those NIX_CFLAGS_COMPILE?

Right, it can do that now. I make a new pr #179157 for this and update the fcitx5 tools as well.


Warnings in Sphinx-Needs demo

I was trying out the Sphinx-Needs demo on Gitpod and the found that a clean build always throws these warnings.

Would be nice if these are checked and fixed.

Additionally, some hints in Readme.md would be nice for a newbie on how to use the sandbox. For example,
cd docs/
make html

Heya, this should be opened on https://github.com/useblocks/sphinx-needs-demo,
but anyhow there is a new https://sphinx-needs.readthedocs.io/en/latest/tutorial.html in the docs here that replicates some of them docs 😄


Bug: /feed redirect breaks "Workspace" and other headers when logging in

Describe the bug
When logging into prod, the top header is broken:

This is fixed by removing the ?redirectedFrom=%2F query param. You can see I do that in this second gif. This seems to fix the issue.
But, if you log out and log back in again, go to the feed, it returns to that same behavior.
Steps to reproduce

Log out
Log in
Go to the feed / "Highlights"
Attempt to go to workspaces by clicking the top nav "Workspaces" header - unsuccessful: note the ?redirectedFrom=%2F in the query

Browsers
Confirmed this behavior on Firefox and Chrome
Additional context (Is this in dev or production?)
No response
Code of Conduct

[X] I agree to follow this project's Code of Conduct

Contributing Docs

[X] I agree to follow this project's Contribution Docs

The issue appears to be related to a client-side redirect introduced in #2695. IT doesn't hapen in a local development environment, but it looks like the useEffect doesn't kick in properly in prod for some reason.
Based on this comment, https://github.com/open-sauced/app/pull/2695/files#r1492982293, it makes sense to make this a server-side redirect.


Conglomerate of PRs with tests

I was looking at this module and saw a few open pull requests that seem to have been abandoned by their submitters. I went ahead and implemented some of the changes, complete with tests, for the following PRs: #29, #43, #49.
Highlights

Simplify the snmpd.conf template with some ruby magic
Allow the community and network variables to be strings or arrays
Change default groups to be empty, prevent DDoS
Allow service_config_perms to be a class parameter
Validate additional arrays in init class
Add test coverage for new code as well as some old code

@razorsedge How's this look? I made the modifications you requests with #61.

@razorsedge Does this need anything else before you can merge it in?

@jrwesolo Those "Merge branch" commits should not be in there.  Did you fork from develop or master?

Also, I am not a fan of PR#43, as it changes long-standing defaults without documenting them.  I fail to see how it helps prevent DDoS.

Yes, I branched from master. Let me clean that up and do some quick research about PR#43. If I can find a good reason for it, I'll get that info to you. Otherwise, I'll remove that. Standby.

@razorsedge Should be good now. I cleaned up the commits and removed the stuff from PR#43.

Closes #29 and #49.

Version 3.6.0 released to the Forge.


Read results and update skipfile

Redraft of skipfile reading results
To do before review:

[x] Get a generated list of boards that would be counted as "all"
[x] Remove/align the lib.sh and squad-register-skipfile-callback.sh with the original code from LKFT pipeline https://gitlab.com/Linaro/lkft/pipelines/common/ so these don't have to be maintained in here
[x] General tidy up of read-skipfile-results and resolving of outstanding TODOs

@roxell if you could review this when you have the opportunity that would be great :raised_hands:

patch "run-and-push-skipfile-results: delete script" maybe say that we remove it since we push the resutls when submitting to tuxsuite with the callback command.


RT_14.2 gribi_route_test.go

Hi,
Moving giribi client configuration code to main function.

Pull Request Functional Test Report for #3588 / bcb99fe7e7420100004651e93e3e748e648c92b1
Virtual Devices

Device
Test
Test Documentation
Job
Raw Log

Arista cEOS

RT-14.2: GRIBI Route Test

Cisco 8000E

RT-14.2: GRIBI Route Test

Cisco XRd

RT-14.2: GRIBI Route Test

Juniper ncPTX

RT-14.2: GRIBI Route Test

Nokia SR Linux

RT-14.2: GRIBI Route Test

Openconfig Lemming

RT-14.2: GRIBI Route Test

Hardware Devices

Device
Test
Test Documentation
Raw Log

Arista 7808

RT-14.2: GRIBI Route Test

Cisco 8808

RT-14.2: GRIBI Route Test

Juniper PTX10008

RT-14.2: GRIBI Route Test

Nokia 7250 IXR-10e

RT-14.2: GRIBI Route Test

Help

Pull Request Test Coverage Report for Build<PHONE_NUMBER>1
Details

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 55.268%

Totals

Change from base Build<PHONE_NUMBER>4:
0.0%

Covered Lines:
1983

Relevant Lines:
3588

💛  - Coveralls


feat(iOS): Remove GCDWebServer

Removes the GCDWebServer and simplifies code. It requires iOS 11+
BREAKING CHANGE: Sets deployment-target to 11, so will only work on iOS 11+

Changed the file scheme to app-file as on Android
Kept ionic:// for the main serving scheme.
Made localhost the default Hostname instead of app for consistency
Updated docs

iOS 11 only?
https://github.com/apache/cordova-ios/issues/415#issuecomment-440695674
https://forum.ionicframework.com/t/ionic-webview-plugin-version-compatibility/151218


[Bug Report] InvertedDoublePendulumEnv always gives "alive_bonus"

Describe the bug
https://github.com/Farama-Foundation/Gymnasium/blob/c4f67b9fd9e09e222cc37d1a2240ecaa7472054a/gymnasium/envs/mujoco/inverted_double_pendulum_v4.py#L155
This is given regardless of if the step is terminating or not
Shouldn't it be
 alive_bonus = 10 * (not terminated)

Code example
No response
System info
No response
Additional context
No response
Checklist

[X] I have checked that there is no similar issue in the repo

Yes, I think that is a reasonable thing to consider adding for v5. @rodrigodelazcano thoughts?

https://github.com/Farama-Foundation/Gymnasium/blob/c4f67b9fd9e09e222cc37d1a2240ecaa7472054a/gymnasium/envs/mujoco/inverted_pendulum_v4.py#L118
The same appears to be the case for InvertedPendulumEnv

That is a good catch. I agree with @pseudo-rnd-thoughts . This should be added to v5 since v4 only updates to the mujoco bindings and this reward error comes from older versions as well.

Here is some code verifying the bugs
>>> env = gymnasium.make('InvertedPendulum-v4')
>>> env.reset()
(array([-0.00114481,  0.00315834, -0.00689603, -0.00764207]), {})
>>> env.step([1])
(array([ 0.0052199 , -0.01239018,  0.32425438, -0.76226102]), 1.0, False, False, {})
>>> env.step([1])
(array([ 0.02474693, -0.05746427,  0.65169342, -1.48966764]), 1.0, False, False, {})
>>> env.step([1])
(array([ 0.05732965, -0.13159401,  0.97709572, -2.21890001]), 1.0, False, False, {})
>>> env.step([1])
(array([ 0.10286945, -0.23521879,  1.29895519, -2.96571882]), 1.0, True, False, {})
>>> env.step([1])
(array([ 0.16112042, -0.36907483,  1.6112052 , -3.72861976]), 1.0, True, False, {})
>>> env.step([1])
(array([ 0.23148975, -0.53346372,  1.902614  , -4.48774083]), 1.0, True, False, {})

>>> env = gymnasium.make('InvertedDoublePendulum-v4')
>>> env.reset()
(array([-0.05209413, -0.03106399, -0.05757982,  0.9995174 ,  0.99834091,
       -0.00319314, -0.10766195,  0.09683618,  0.        ,  0.        ,
        0.        ]), {})
>>> env.step([1])
(array([ 7.67962813e-04, -1.44606909e-01,  8.22320453e-02,  9.89489182e-01,
        9.96613210e-01,  2.11193186e+00, -4.45134196e+00,  5.49346477e+00,
        0.00000000e+00,  0.00000000e+00,  0.00000000e+00]), 9.17710405832815, False, False, {})
>>> env.step([1])
(array([ 0.15545075, -0.44371616,  0.43168352,  0.89616738,  0.90202513,
        3.9987776 , -7.74866516,  7.9830774 ,  0.        ,  0.        ,
        0.        ]), 8.877556821859912, False, False, {})
>>> env.step([1])
(array([ 0.39199627, -0.77051144,  0.69186829,  0.63742617,  0.72202373,
        5.38530052, -8.71215195,  3.8089483 ,  0.        ,  0.        ,
        0.        ]), 8.807853136081622, True, False, {})

Here is the v4 vs v5 (the only difference in v5 is the reward being fixed)
As expected the v5 version has a faster learning transience

v4 is the current v4 version
v4-fixed is the current v4 version, with the reward_alive fixed
v5 is the current v4 version, with the reward_alive fixed and the observation fix (https://github.com/Farama-Foundation/Gymnasium/issues/228)

This is a massive reward difference.
This shouldn't explain to me the performance difference as the primary difference is if terminated=True as alive_bonus = 0 so I expected that the episode reward might be 10 points lower.
@Kallinteris-Andreas Am I misunderstanding something?

The episodic reward being 10 points happens only if the episode terminates (which does not happen after some training regardless of the reward function).
The best policy of all the cases resulted in the same return (~9360), it is just that with the fixed reward function it is possible to get there more consistently
Note: I have double-checked the source codes, nothing is wrong there.

That doesn't explain the ~4000 point increase shown by

To me, the change to the reward function is only when terminated=True such that reward_alive=0. Have I misunderstood something?

No, your understanding of change in the reward function is correct

Because on some runs with the old reward function, the agent is not able to learn how to "escape" an unbalanced state
The optimal results are identical with both reward functions (since the "optimal" policy, would not be unbalanced)

Wow, that is amazing if purely changing that variables causes such a massive change in performance