Installation fails

I made a fresh installation on my RPi4 with 64bit Bullseye. So, Mosquitto, NodeRed and Zigbee2mqtt are really updated. I hope this daemon is exactly what I am looking for to read out miflora (and maybe other BLE-sensors, too)... but I cannot install:
sudo pip3 install -r requirements.txt
Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple
Collecting miflora==0.7.1
  Downloading https://www.piwheels.org/simple/miflora/miflora-0.7.1-py3-none-any                                                                .whl (23 kB)
Collecting bluepy==1.3.0
  Downloading bluepy-1.3.0.tar.gz (217 kB)
     |████████████████████████████████| 217 kB 2.7 MB/s
Collecting btlewrap==0.0.10
  Downloading https://www.piwheels.org/simple/btlewrap/btlewrap-0.0.10-py3-none-                                                                any.whl (19 kB)
Collecting paho-mqtt==1.4.0
  Downloading https://www.piwheels.org/simple/paho-mqtt/paho_mqtt-1.4.0-py3-none                                                                -any.whl (48 kB)
     |████████████████████████████████| 48 kB 1.1 MB/s
Collecting wheel==0.29.0
  Downloading https://www.piwheels.org/simple/wheel/wheel-0.29.0-py2.py3-none-an                                                                y.whl (66 kB)
     |████████████████████████████████| 66 kB 900 kB/s
Collecting sdnotify==0.3.1
  Downloading https://www.piwheels.org/simple/sdnotify/sdnotify-0.3.1-py3-none-a                                                                ny.whl (4.3 kB)
Collecting colorama==0.3.9
  Downloading https://www.piwheels.org/simple/colorama/colorama-0.3.9-py2.py3-no                                                                ne-any.whl (20 kB)
Collecting Unidecode==0.4.21
  Downloading https://www.piwheels.org/simple/unidecode/Unidecode-0.04.21-py2.py                                                                3-none-any.whl (228 kB)
     |████████████████████████████████| 228 kB 3.3 MB/s
Building wheels for collected packages: bluepy
  Building wheel for bluepy (setup.py) ... error
  ERROR: Command errored out with exit status 1:
   command: /usr/bin/python3 -u -c 'import sys, setuptools, tokenize; sys.argv[0                                                                ] = '"'"'/tmp/pip-install-v5kd4we3/bluepy_12e6272774d84703aedf0f2715964ef9/setup                                                                .py'"'"'; __file__='"'"'/tmp/pip-install-v5kd4we3/bluepy_12e6272774d84703aedf0f2                                                                715964ef9/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code                                                                =f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __f                                                                ile__, '"'"'exec'"'"'))' bdist_wheel -d /tmp/pip-wheel-ah5c0qzd
       cwd: /tmp/pip-install-v5kd4we3/bluepy_12e6272774d84703aedf0f2715964ef9/
  Complete output (11 lines):
  running bdist_wheel
  running build
  running build_py
  Working dir is /tmp/pip-install-v5kd4we3/bluepy_12e6272774d84703aedf0f2715964e                                                                f9
  execute make -C ./bluepy clean
  execute make -C bluepy -j1
  Failed to compile bluepy-helper. Exiting install.
  Command was 'make -C bluepy -j1' in /tmp/pip-install-v5kd4we3/bluepy_12e627277                                                                4d84703aedf0f2715964ef9
  Return code was 2
  Output was:
  b"make: Entering directory '/tmp/pip-install-v5kd4we3/bluepy_12e6272774d84703a                                                                edf0f2715964ef9/bluepy'\ntar xzf bluez-src.tgz\ntouch ./bluez-5.47/lib/bluetooth                                                                .c ./bluez-5.47/lib/hci.c ./bluez-5.47/lib/sdp.c ./bluez-5.47/lib/uuid.c ./bluez                                                                -5.47/attrib/att.c ./bluez-5.47/attrib/gatt.c ./bluez-5.47/attrib/gattrib.c ./bl                                                                uez-5.47/attrib/utils.c ./bluez-5.47/btio/btio.c ./bluez-5.47/src/log.c ./bluez-                                                                5.47/src/shared/mgmt.c ./bluez-5.47/src/shared/crypto.c ./bluez-5.47/src/shared/                                                                att.c ./bluez-5.47/src/shared/queue.c ./bluez-5.47/src/shared/util.c ./bluez-5.4                                                                7/src/shared/io-glib.c ./bluez-5.47/src/shared/timeout-glib.c\nPackage glib-2.0                                                                 was not found in the pkg-config search path.\nPerhaps you should add the directo                                                                ry containing `glib-2.0.pc'\nto the PKG_CONFIG_PATH environment variable\nNo pac                                                                kage 'glib-2.0' found\nPackage glib-2.0 was not found in the pkg-config search p                                                                ath.\nPerhaps you should add the directory containing `glib-2.0.pc'\nto the PKG_                                                                CONFIG_PATH environment variable\nNo package 'glib-2.0' found\ncc -L. -g -Wall                                                                  -Os -DHAVE_CONFIG_H -I./bluez-5.47/attrib -I./bluez-5.47 -I./bluez-5.47/lib -I./                                                                bluez-5.47/src -I./bluez-5.47/gdbus -I./bluez-5.47/btio -I./bluez-5.47/sys  -o b                                                                luepy-helper bluepy-helper.c ./bluez-5.47/lib/bluetooth.c ./bluez-5.47/lib/hci.c                                                                 ./bluez-5.47/lib/sdp.c ./bluez-5.47/lib/uuid.c ./bluez-5.47/attrib/att.c ./blue                                                                z-5.47/attrib/gatt.c ./bluez-5.47/attrib/gattrib.c ./bluez-5.47/attrib/utils.c .                                                                /bluez-5.47/btio/btio.c ./bluez-5.47/src/log.c ./bluez-5.47/src/shared/mgmt.c ./                                                                bluez-5.47/src/shared/crypto.c ./bluez-5.47/src/shared/att.c ./bluez-5.47/src/sh                                                                ared/queue.c ./bluez-5.47/src/shared/util.c ./bluez-5.47/src/shared/io-glib.c ./                                                                bluez-5.47/src/shared/timeout-glib.c \nbluepy-helper.c:33:10: fatal error: glib.                                                                h: No such file or directory\n   33 | #include <glib.h>\n      |          ^~~~~~                                                                ~~\ncompilation terminated.\n./bluez-5.47/attrib/att.c:33:10: fatal error: glib.                                                                h: No such file or directory\n   33 | #include <glib.h>\n      |          ^~~~~~                                                                ~~\ncompilation terminated.\n./bluez-5.47/attrib/gatt.c:32:10: fatal error: glib                                                                .h: No such file or directory\n   32 | #include <glib.h>\n      |          ^~~~~                                                                ~~~\ncompilation terminated.\n./bluez-5.47/attrib/gattrib.c:34:10: fatal error:                                                                 glib.h: No such file or directory\n   34 | #include <glib.h>\n      |          ^                                                                ~~~~~~~\ncompilation terminated.\n./bluez-5.47/attrib/utils.c:30:10: fatal error                                                                : glib.h: No such file or directory\n   30 | #include <glib.h>\n      |                                                                          ^~~~~~~~\ncompilation terminated.\n./bluez-5.47/btio/btio.c:37:10: fatal error:                                                                 glib.h: No such file or directory\n   37 | #include <glib.h>\n      |                                                                          ^~~~~~~~\ncompilation terminated.\n./bluez-5.47/src/log.c:38:10: fatal error: gl                                                                ib.h: No such file or directory\n   38 | #include <glib.h>\n      |          ^~~                                                                ~~~~~\ncompilation terminated.\n./bluez-5.47/src/shared/io-glib.c:30:10: fatal e                                                                rror: glib.h: No such file or directory\n   30 | #include <glib.h>\n      |                                                                          ^~~~~~~~\ncompilation terminated.\n./bluez-5.47/src/shared/timeout-glib.c:2                                                                2:10: fatal error: glib.h: No such file or directory\n   22 | #include <glib.h>\                                                                n      |          ^~~~~~~~\ncompilation terminated.\nmake: *** [Makefile:30: blu                                                                epy-helper] Error 1\nmake: Leaving directory '/tmp/pip-install-v5kd4we3/bluepy_1                                                                2e6272774d84703aedf0f2715964ef9/bluepy'\n"
  ----------------------------------------
  ERROR: Failed building wheel for bluepy
  Running setup.py clean for bluepy
Failed to build bluepy
Installing collected packages: btlewrap, wheel, Unidecode, sdnotify, paho-mqtt,                                                                 miflora, colorama, bluepy
  Attempting uninstall: wheel
    Found existing installation: wheel 0.34.2
    Not uninstalling wheel at /usr/lib/python3/dist-packages, outside environmen                                                                t /usr
    Can't uninstall 'wheel'. No files were found to uninstall.
    Running setup.py install for bluepy ... error
    ERROR: Command errored out with exit status 1:
     command: /usr/bin/python3 -u -c 'import sys, setuptools, tokenize; sys.argv                                                                [0] = '"'"'/tmp/pip-install-v5kd4we3/bluepy_12e6272774d84703aedf0f2715964ef9/set                                                                up.py'"'"'; __file__='"'"'/tmp/pip-install-v5kd4we3/bluepy_12e6272774d84703aedf0                                                                f2715964ef9/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);co                                                                de=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, _                                                                _file__, '"'"'exec'"'"'))' install --record /tmp/pip-record-59ciryh_/install-rec                                                                ord.txt --single-version-externally-managed --compile --install-headers /usr/loc                                                                al/include/python3.9/bluepy
         cwd: /tmp/pip-install-v5kd4we3/bluepy_12e6272774d84703aedf0f2715964ef9/
    Complete output (11 lines):
    running install
    running build
    running build_py
    Working dir is /tmp/pip-install-v5kd4we3/bluepy_12e6272774d84703aedf0f271596                                                                4ef9
    execute make -C ./bluepy clean
    execute make -C bluepy -j1
    Failed to compile bluepy-helper. Exiting install.
    Command was 'make -C bluepy -j1' in /tmp/pip-install-v5kd4we3/bluepy_12e6272                                                                774d84703aedf0f2715964ef9
    Return code was 2
    Output was:
    b"make: Entering directory '/tmp/pip-install-v5kd4we3/bluepy_12e6272774d8470                                                                3aedf0f2715964ef9/bluepy'\ntar xzf bluez-src.tgz\ntouch ./bluez-5.47/lib/bluetoo                                                                th.c ./bluez-5.47/lib/hci.c ./bluez-5.47/lib/sdp.c ./bluez-5.47/lib/uuid.c ./blu                                                                ez-5.47/attrib/att.c ./bluez-5.47/attrib/gatt.c ./bluez-5.47/attrib/gattrib.c ./                                                                bluez-5.47/attrib/utils.c ./bluez-5.47/btio/btio.c ./bluez-5.47/src/log.c ./blue                                                                z-5.47/src/shared/mgmt.c ./bluez-5.47/src/shared/crypto.c ./bluez-5.47/src/share                                                                d/att.c ./bluez-5.47/src/shared/queue.c ./bluez-5.47/src/shared/util.c ./bluez-5                                                                .47/src/shared/io-glib.c ./bluez-5.47/src/shared/timeout-glib.c\nPackage glib-2.                                                                0 was not found in the pkg-config search path.\nPerhaps you should add the direc                                                                tory containing `glib-2.0.pc'\nto the PKG_CONFIG_PATH environment variable\nNo p                                                                ackage 'glib-2.0' found\nPackage glib-2.0 was not found in the pkg-config search                                                                 path.\nPerhaps you should add the directory containing `glib-2.0.pc'\nto the PK                                                                G_CONFIG_PATH environment variable\nNo package 'glib-2.0' found\ncc -L. -g -Wall                                                                  -Os -DHAVE_CONFIG_H -I./bluez-5.47/attrib -I./bluez-5.47 -I./bluez-5.47/lib -I                                                                ./bluez-5.47/src -I./bluez-5.47/gdbus -I./bluez-5.47/btio -I./bluez-5.47/sys  -o                                                                 bluepy-helper bluepy-helper.c ./bluez-5.47/lib/bluetooth.c ./bluez-5.47/lib/hci                                                                .c ./bluez-5.47/lib/sdp.c ./bluez-5.47/lib/uuid.c ./bluez-5.47/attrib/att.c ./bl                                                                uez-5.47/attrib/gatt.c ./bluez-5.47/attrib/gattrib.c ./bluez-5.47/attrib/utils.c                                                                 ./bluez-5.47/btio/btio.c ./bluez-5.47/src/log.c ./bluez-5.47/src/shared/mgmt.c                                                                 ./bluez-5.47/src/shared/crypto.c ./bluez-5.47/src/shared/att.c ./bluez-5.47/src/                                                                shared/queue.c ./bluez-5.47/src/shared/util.c ./bluez-5.47/src/shared/io-glib.c                                                                 ./bluez-5.47/src/shared/timeout-glib.c \nbluepy-helper.c:33:10: fatal error: gli                                                                b.h: No such file or directory\n   33 | #include <glib.h>\n      |          ^~~~                                                                ~~~~\ncompilation terminated.\n./bluez-5.47/attrib/att.c:33:10: fatal error: gli                                                                b.h: No such file or directory\n   33 | #include <glib.h>\n      |          ^~~~                                                                ~~~~\ncompilation terminated.\n./bluez-5.47/attrib/gatt.c:32:10: fatal error: gl                                                                ib.h: No such file or directory\n   32 | #include <glib.h>\n      |          ^~~                                                                ~~~~~\ncompilation terminated.\n./bluez-5.47/attrib/gattrib.c:34:10: fatal error                                                                : glib.h: No such file or directory\n   34 | #include <glib.h>\n      |                                                                          ^~~~~~~~\ncompilation terminated.\n./bluez-5.47/attrib/utils.c:30:10: fatal err                                                                or: glib.h: No such file or directory\n   30 | #include <glib.h>\n      |                                                                          ^~~~~~~~\ncompilation terminated.\n./bluez-5.47/btio/btio.c:37:10: fatal erro                                                                r: glib.h: No such file or directory\n   37 | #include <glib.h>\n      |                                                                          ^~~~~~~~\ncompilation terminated.\n./bluez-5.47/src/log.c:38:10: fatal error:                                                                 glib.h: No such file or directory\n   38 | #include <glib.h>\n      |          ^                                                                ~~~~~~~\ncompilation terminated.\n./bluez-5.47/src/shared/io-glib.c:30:10: fatal                                                                 error: glib.h: No such file or directory\n   30 | #include <glib.h>\n      |                                                                          ^~~~~~~~\ncompilation terminated.\n./bluez-5.47/src/shared/timeout-glib.c                                                                :22:10: fatal error: glib.h: No such file or directory\n   22 | #include <glib.h                                                                >\n      |          ^~~~~~~~\ncompilation terminated.\nmake: *** [Makefile:30: b                                                                luepy-helper] Error 1\nmake: Leaving directory '/tmp/pip-install-v5kd4we3/bluepy                                                                _12e6272774d84703aedf0f2715964ef9/bluepy'\n"
    ----------------------------------------
ERROR: Command errored out with exit status 1: /usr/bin/python3 -u -c 'import sy                                                                s, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-v5kd4we3/bluepy_12e                                                                6272774d84703aedf0f2715964ef9/setup.py'"'"'; __file__='"'"'/tmp/pip-install-v5kd                                                                4we3/bluepy_12e6272774d84703aedf0f2715964ef9/setup.py'"'"';f=getattr(tokenize, '                                                                "'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"                                                                ');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record /tm                                                                p/pip-record-59ciryh_/install-record.txt --single-version-externally-managed --c                                                                ompile --install-headers /usr/local/include/python3.9/bluepy Check the logs for                                                                 full command output.

Hey! Seems like this is an issue with bluepy. Maybe linked to the latest raspbian or the 64bit version.
Does sudo pip3 install bluepy succeed?

I had the same error, with a bit more detail:

b"make: Entering directory '/tmp/pip-install-awh6wojw/bluepy/bluepy'\ntar xzf bluez-src.tgz\ntouch ./bluez-5.47/lib/bluetooth.c ./bluez-5.47/lib/hci.c ./bluez-5.47/lib/sdp.c ./bluez-5.47/lib/uuid.c ./bluez-5.47/attrib/att.c ./bluez-5.47/attrib/gatt.c ./bluez-5.47/attrib/gattrib.c ./bluez-5.47/attrib/utils.c ./bluez-5.47/btio/btio.c ./bluez-5.47/src/log.c ./bluez-5.47/src/shared/mgmt.c ./bluez-5.47/src/shared/crypto.c ./bluez-5.47/src/shared/att.c ./bluez-5.47/src/shared/queue.c ./bluez-5.47/src/shared/util.c ./bluez-5.47/src/shared/io-glib.c ./bluez-5.47/src/shared/timeout-glib.c\nPackage glib-2.0 was not found in the pkg-config search path.\nPerhaps you should add the directory containing glib-2.0.pc'\nto the PKG_CONFIG_PATH environment variable\nNo package 'glib-2.0' found\nPackage glib-2.0 was not found in the pkg-config search path.\nPerhaps you should add the directory containing glib-2.0.pc'\nto the PKG_CONFIG_PATH environment variable\nNo package 'glib-2.0' found\ncc -L. -g -Wall  -Os -DHAVE_CONFIG_H -I./bluez-5.47/attrib -I./bluez-5.47 -I./bluez-5.47/lib -I./bluez-5.47/src -I./bluez-5.47/gdbus -I./bluez-5.47/btio -I./bluez-5.47/sys  -o bluepy-helper bluepy-helper.c ./bluez-5.47/lib/bluetooth.c ./bluez-5.47/lib/hci.c ./bluez-5.47/lib/sdp.c ./bluez-5.47/lib/uuid.c ./bluez-5.47/attrib/att.c ./bluez-5.47/attrib/gatt.c ./bluez-5.47/attrib/gattrib.c ./bluez-5.47/attrib/utils.c ./bluez-5.47/btio/btio.c ./bluez-5.47/src/log.c ./bluez-5.47/src/shared/mgmt.c ./bluez-5.47/src/shared/crypto.c ./bluez-5.47/src/shared/att.c ./bluez-5.47/src/shared/queue.c ./bluez-5.47/src/shared/util.c ./bluez-5.47/src/shared/io-glib.c ./bluez-5.47/src/shared/timeout-glib.c \nbluepy-helper.c:33:10: fatal error: glib.h: No such file or directory\n #include <glib.h>\n          ^~\ncompilation terminated.\n./bluez-5.47/attrib/att.c:33:10: fatal error: glib.h: No such file or directory\n #include <glib.h>\n          ^~\ncompilation terminated.\n./bluez-5.47/attrib/gatt.c:32:10: fatal error: glib.h: No such file or directory\n #include <glib.h>\n          ^~\ncompilation terminated.\n./bluez-5.47/attrib/gattrib.c:34:10: fatal error: glib.h: No such file or directory\n #include <glib.h>\n          ^~\ncompilation terminated.\n./bluez-5.47/attrib/utils.c:30:10: fatal error: glib.h: No such file or directory\n #include <glib.h>\n          ^~\ncompilation terminated.\n./bluez-5.47/btio/btio.c:37:10: fatal error: glib.h: No such file or directory\n #include <glib.h>\n          ^~\ncompilation terminated.\n./bluez-5.47/src/log.c:38:10: fatal error: glib.h: No such file or directory\n #include <glib.h>\n          ^~\ncompilation terminated.\n./bluez-5.47/src/shared/io-glib.c:30:10: fatal error: glib.h: No such file or directory\n #include <glib.h>\n          ^~\ncompilation terminated.\n./bluez-5.47/src/shared/timeout-glib.c:22:10: fatal error: glib.h: No such file or directory\n #include <glib.h>\n          ^~~~~~~~\ncompilation terminated.\nmake: *** [Makefile:30: bluepy-helper] Error 1\nmake: Leaving directory '/tmp/pip-install-awh6wojw/bluepy/bluepy'\n"

Which translates to
fatal error: glib.h: No such file or directory

Which et me to here
Where they advise to try:
sudo apt-get install libglib2.0-dev

Which solved the problem on my raspberry Pi

I am using rapsberian64 and in order to make it run I had to run this:
$ sudo apt-get install python3-pip libglib2.0-dev
$ sudo pip3 install bluepy

Hey guys,
in summary, what should be added to the README? PR welcome!!

As I faced the same issue, I suggest to added the following to the README, as by now this is not yet included:

In case you are running the service on an Raspberry Pi4 64 bit version, the following package is required too
sudo apt install libglib2.0-dev

Best Martin

PR https://github.com/ThomDietrich/miflora-mqtt-daemon/pull/170

Thanks!


(BKR-215) Document all of the options to #on and friends

updates shared options to be current (with info for
accept_all_exit_codes and friends)
yard doc does a single pass and you can't guarantee file ordering, so
you have to have the common options macro in each file that needs it -
duplication yay!
update usage of acceptable_exit_codes to accept_all_exit_codes when we are just passing acceptable_exit_codes a mega array

Refer to this link for build results (access rights to CI server needed):
http://jenkins-beaker.delivery.puppetlabs.net//job/qe_beaker_btc-intn/782/
Test FAILed.

Failure unrelated to patch.


Need Model N3 Image upload script

everything works fine except for the image uploading, both key Image and boot Image.
would you please take a look at the N3 image ~~

I don't own an N3, so I'm not sure how it's protocol differs from the MiraBox 293.
You may be able to find more information in the official cpp driver/sdk

https://github.com/MiraboxSpace/Linux-StreamDock-CPPSDK
https://sdk.key123.vip/en/

Unfortunately the core protocol is a compiled library, however I was able to decompile it enough to get an idea how the protocol works in addition to analyzing the packets I captured between the 293 & the official windows app/driver via WireShark + usbpcap in a VM.
For decompiling, I've used https://dogbolt.org/ and tried a few different decompilers to get a fairly readable output - this is not perfect, but it helped me figure out the protocol.

https://github.com/MiraboxSpace/Linux-StreamDock-CPPSDK/blob/main/libtransport.so


Live demo is broken

The live demo codesandbox shows this error:
Could not fetch dependencies, please try again in a couple seconds: Could not fetch version for reinspect@file:../dist: ENOENT: no such file or directory, open '/var/dist/package.json'
In package.json the module's version number seems wrong "reinspect": "file:../dist".
It works for me if I leave it as an empty string, but I assume it should be the version number.

Needs a bump to the reinspect version (the refresh icon next to it in dependencies).

still broken.


Implements CART (Classification And Regression Trees) algorithm

Implemented CART algorithm for training decision trees.
This will add CART capability (both regression and classification) in golearn library as used in scikit learn:
Sklearn DecisionTreeClassifier
Sklearn DecisionTreeRegressor
Following Important Hyperparameters are included:
Classification
Impurity Criterion - GINI or ENTROPY
MaxDepth - Maximum Depth of Tree, -1 for growing the tree until nodes are pure
Labels - Unique Target Labels (Dependent on the Dataset used)
Regression
Impurity Criterion - From MAE or MSE
MaxDepth - Maximum Depth of Tree, -1 for growing the tree until nodes are pure
In terms of accuracy, this implementation was compared with sci-kit learn.
For the exact same dataset, this implementation and sci-kit learn have the exact same accuracy, to all decimal digits. When comparing the tree structure, this implementation and sci-kit learn learn the exact same tree, including threshold and feature to use.

Cool, awesome, thanks for this! Unfortunately, it still looks like trees/tmp is still there.

Cool, awesome, thanks for this! Unfortunately, it still looks like trees/tmp is still there.

Sorry, I think there was a confusion. I thought that I should revert the file to what is was before my edits. Just removing the file right now.

Cool, thanks for the fix.


Changing Navigation bar color

Navigation bar changes color after tap on search field and tap Cancel. after that if return to parent view, navigationBar color changed and there. After second time, in the bottom of navigationBar appears black line.

Kindly provide a sample project where this issue can be reproduced.

Closing due to inactivity.


Remove MakeLeave as a function from the membership

Remove MakeLeave function as it is only used during testing to get the membership into a certain state, instead we will use Update with crafted changes for this as that is the most public interface to interact with the membership.
NOTE: This PR is on top of #159, its only purpose is to remove MakeLeave from the memberlist
/cc @mennopruijssers

Coverage decreased (-0.1%) to 94.669% when pulling 9db6ea25e3248aaa7b3273f590fc956edc39963c on feature/remove-make-leave into 197c0d2f33bba933ed9eef5131f85bd310768523 on feature/local-member.

Awesome!

LGTM


Yc/debug graphcast2

Earth-2 MIP Pull Request
Taking the branch in #134 and merging recent changes from main.
Solving some conflict and applying noqa to asserts.
Renaming tests --> test and combining the files from the two branches.
Description

Checklist

[x] I am familiar with the Contributing Guidelines.
[x] New or existing tests cover these changes.
[x] The documentation is up to date with these changes.
[x] The CHANGELOG.md is up to date with these changes.
[x] An issue is linked to this pull request.

Dependencies

/blossom-ci

Moved here: https://github.com/NVIDIA/earth2mip/pull/145
Closing.


Feature Request - PyLoad Support

http://forum.htpcbeginner.com/showthread.php?tid=164

Jackett has now been added. I've updated the title to reflect we still need to look at PyLoad.

pyLoad has now been added :-).
It would be really appreciated if anyone can confirm it installs and works OK on their system?
Thanks
Tom

No sooner have I added this, It appears they've changed how it needs to be installed. I'll get round to fixing this over the next few days.

I've now fixed this again and will push the changes up to the master branch soon.

Changes are now in the master branch.


Add multiple imagery selection

Contributes to #22. This replaces #30 as work-in-progress PR because add/select-mosaic branch is hooked to Reforestamos staging website and we want to avoid breaking it.
Current status: can create new projects and open existing ones.
To do:

[ ] Fix all Cypress specs
[ ] Introduce spec to test worflow where the user changes the mosaic of a existing project
[ ] Resolve or ticket comments marked as TODO in the codebase
[ ] Fix issue where AOI geometry is not available on AOI edit (only new AOIs are working)
[ ] Style imagery source cards

cc @LanesGood @geohacker

I'm closing this in favor of #33.


RYA-393 MongoDB Batch Writer Duplicate Key Exception

Description
Fixed MongoDB DAO Batch Writer from dropping statements when batch contains duplicate keys.
Tests
Integration Tests
Links
Jira
Checklist

[ ] Code Review
[ ] Squash Commits

People To Review
@amihalik
@meiercaleb
@pujav65
@isper3at

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/incubator-rya-master-with-optionals-pull-requests/511/

Looks good.  @isper3at , yes catching the exception prevents the drops because it will keep going rather than crapping out on individual adds -- that was why there was a catch for that exception in the original dao before we introduced the batch writing stuff.

I'm going to hold off on merging this for a minute.  This exception talk has me thinking there are other exceptions that we are not processing correctly. brb

The more I look at this, the more I’m confident that this has to more with the mongo libs and not anything that we wrote for Rya. I’ll try to put together an example tomorrow.

@ejwhite922 There's a couple issues with the batch writer and it doesn't have to do with exceptions being caught.  (1) the QueueFullChecker thread should not be a daemon thread.... "The Java Virtual Machine exits when the only threads running are all daemon threads" means that the JVM will exit while flushing to mongo.  (2) It doesn't seem like the secondary indexer (i.e. geoindexer) is flushed when I close down the sail layer.  Can you double check that?
Also, it seems like the JVM takes a very long time to exit after I call sailrepository.shutDown().  I think has to do with the BatchWriter as well.

wrt to the secondary flushes -- I think there is a jira ticket already for secondary indexers not being flushed appropriately.

There is another JIRA ticket for indexers not being flushed: RYA-72.  I went ahead and addressed that in this ticket and had the DAOs flush all indexers whenever they flush.

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/incubator-rya-master-with-optionals-pull-requests/523/

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/incubator-rya-master-with-optionals-pull-requests/530/

Asfbot build

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/incubator-rya-master-with-optionals-pull-requests/537/


ImageOverlay accept ImageElement

Added the ability to pass an existing element, to enable more customability in general.

Hi,
I saw this comment, but it wrote before 4 years. Today, VideoOverlay accept VideoElement #5661, so it's very wired that ImageOverlay can't accept ImageElement.

Hi,
To me #2127 is more about an arbitrary DOM Element, which is not so easy because you might not want using CSS transform to scale your Element when zooming, as explained by @danzel.
Whereas in the specific case of an <img>, both CSS transform and CSS width / height produce the same effect.
Therefore this PR might still make sense, especially wrt L.VideoOverlay as pointed out by @ronikar indeed.
That being said, maybe we should make it clear that Leaflet fiddles with the supplied Element (classes, event listeners, attributes, CSS transform style…), since one of the incentive for supplying one's own Element is probably the ability to customize it entirely, but Leaflet will interfere with some of it.
Same applies to VideoOverlay.

@ronikar indeed, if VideoOverlay may accept DOM node, ImageOverlay should as well.
I have one suggestion - let's update this._url in _initImage method if wasElementSupplied is true to make sure this._url always keeps an url, not a DOM node


Client.appointments.list() broken

First of all #7 prevents filtering on schedule_id. After locally fixing this bug another bug follows. The response is not parsed correctly. The appointment api implementation tries to read 'bookings' from an list and leads to an error.
The traceback:
Traceback (most recent call last):
  File "manage.py", line 10, in <module>
    execute_from_command_line(sys.argv)
  File "<python path>/lib/python2.7/site-packages/django/core/management/__init__.py", line 364, in execute_from_command_line
    utility.execute()
  File "<python path>/lib/python2.7/site-packages/django/core/management/__init__.py", line 356, in execute
    self.fetch_command(subcommand).run_from_argv(self.argv)
  File "<python path>/lib/python2.7/site-packages/django/core/management/base.py", line 283, in run_from_argv
    self.execute(*args, **cmd_options)
  File "<python path>/lib/python2.7/site-packages/django/core/management/base.py", line 330, in execute
    output = self.handle(*args, **options)
  File "<project path>/supersaas_sync/management/commands/sync_booked.py", line 50, in handle
    print(self.client.appointments.list(schedule_id=supersaas_id))
  File "<python path>/lib/python2.7/site-packages/SuperSaaS/API/Appointments.py", line 47, in list
    return self.__map_slots_or_bookings(res)
  File "<python path>/lib/python2.7/site-packages/SuperSaaS/API/Appointments.py", line 140, in __map_slots_or_bookings
    return [Appointment(attributes) for attributes in obj.get('bookings', [])]
AttributeError: 'list' object has no attribute 'get'

Good spot! The API's appointments endpoint can return variously formatted JSON depending on the schedule type, and in this case wasn't being deserialized for the right payload. Fixed in 0.10.3. Thanks again.


[Feat] Functions to transfer the IP addresses of DNS servers to UE using Protocol Configuration Options (PCO)

Issue Description
What's the version are you using

free5GC Version: v3.0.2
UE: Huawei 5G CPE Pro

Is your feature request related to a problem? Please describe.
Free5GC can not return the IP addresses of DNS servers when an UE requests the DNS addresses in PCO.
This leads to any UE being not able to communicate with Internet services.

Describe the solution you'd like
I would be grateful if you could implement the DNS related functions of PCO so that the network can transfer the IP addresses of DNS servers to UE.
In particular, I would like the SMF to return the IP addresses of DNS servers in a PDU session establishment accept message only if SMF receives the DNS address request in a PDU session establishment request.
Describe alternatives/workarounds you've considered
Nothing.
Additional context
See <IP_ADDRESS>A in TS 3GPP TS 24.008 [12] or 3GPP TS 24.501 for PCO.
Issue Template Checklist

Would you be willing to resolve this issue by submitting a Pull Request?

[ ] Yes, I have the time and I know how to start.
[ ] Yes, I have the time but I don't know how to start, I would need guidance.
[x] No, I don't have the time, although I believe I could do it if I had the time...
[ ] No, I don't have the time and I wouldn't even know how to start.

This issue has been mentioned on free5GC. There might be relevant details there:
https://forum.free5gc.org/t/how-do-i-set-the-ip-addresses-of-dns-servers-in-pco-protocol-configuration-options/124/3

Hi @am677 ,
We have release latest free5gc v3.0.3 and add PCO feature. Please reference to https://github.com/free5gc/free5gc/blob/master/config/test/smfcfg.single.test.conf and try it!
Thanks for your report!

Thank you for successful implementation!
I confirmed that free5gc return the DNS server addresses.

This issue has been mentioned on free5GC. There might be relevant details there:
https://forum.free5gc.org/t/does-free5gc-support-ue-requests-to-obtain-the-ipv4-address-after-the-pdu-session-establishment-procedure-by-dhcpv4/347/2


Update CLI extensions available doc

Update CLI extensions available doc.
Triggered by Azure/azure-cli-extensions - TRAVIS_BUILD_ID=452984201
https://github.com/Azure/azure-cli-extensions/commit/a800a5f2d8b2cc45a1c32b17b24f81b4721108f0

:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docs-ref-conceptual/azure-cli-extensions-list.md
:white_check_mark:Succeeded
View (azure-cli-latest) View (azure-cli-2017-03-09-profile) View (azure-cli-2018-03-01-hybrid)

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


openjdk: 12.0.2 -> 13.0.2

Motivation for this change
Things done

[x] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS)
Built on platform(s)

[x] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nix-review --run "nix-review wip"
[x] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Ensured that relevant documentation is up to date
[x] Fits CONTRIBUTING.md.

Notify maintainers
cc @shlevy @NeQuissimus @lopsided98

please rebase on top of master to fix conflicts
git pull -r origin master

weird ... my git client resolve that conflict automatically.  but I checked manually and it seems right to me (the NIX_CFLAGS_COMPILE setting from 203ba052b2c09211d64fa08e58020424687ec1bc is preserved in openjfx/13.nx).

it still needs to be folded into the previous commit to adhere to the contributing guidelines.
git reset HEAD^
git commit -a --amend --no-edit

Done, sorry!

okay, I admit I didn't try rebuilding after I rebased.  I'll take a look.

it's why we have reviews, no worries :)

Ugh, the errors are all like this:
> Task :graphics:linkLinuxGlassGlass
In file included from /nix/store/375635822k7wgr9l49b4rrdwdh6b3h5f-gtk+-2.24.32-dev/include/gtk-2.0/gtk/gtkobject.h:37,
                 from /nix/store/375635822k7wgr9l49b4rrdwdh6b3h5f-gtk+-2.24.32-dev/include/gtk-2.0/gtk/gtkwidget.h:36,
                 from /nix/store/375635822k7wgr9l49b4rrdwdh6b3h5f-gtk+-2.24.32-dev/include/gtk-2.0/gtk/gtkcontainer.h:35,
                 from /nix/store/375635822k7wgr9l49b4rrdwdh6b3h5f-gtk+-2.24.32-dev/include/gtk-2.0/gtk/gtkbin.h:35,
                 from /nix/store/375635822k7wgr9l49b4rrdwdh6b3h5f-gtk+-2.24.32-dev/include/gtk-2.0/gtk/gtkwindow.h:36,
                 from /nix/store/375635822k7wgr9l49b4rrdwdh6b3h5f-gtk+-2.24.32-dev/include/gtk-2.0/gtk/gtkdialog.h:35,
                 from /nix/store/375635822k7wgr9l49b4rrdwdh6b3h5f-gtk+-2.24.32-dev/include/gtk-2.0/gtk/gtkaboutdialog.h:32,
                 from /nix/store/375635822k7wgr9l49b4rrdwdh6b3h5f-gtk+-2.24.32-dev/include/gtk-2.0/gtk/gtk.h:33,
                 from /build/rt-13+14/modules/javafx.graphics/src/main/native-glass/gtk/wrapped.c:36:
/nix/store/375635822k7wgr9l49b4rrdwdh6b3h5f-gtk+-2.24.32-dev/include/gtk-2.0/gtk/gtktypeutils.h:236:1: error: 'GTypeDebugFlags' is deprecated [-Werror=deprecated-declarations]
 void            gtk_type_init   (GTypeDebugFlags    debug_flags);
 ^~~~
In file included from /nix/store/sqvbi2ypbnldgxl7fsx0jzcsvl8y0047-glib-2.62.0-dev/include/glib-2.0/gobject/gobject.h:24,
                 from /nix/store/sqvbi2ypbnldgxl7fsx0jzcsvl8y0047-glib-2.62.0-dev/include/glib-2.0/gobject/gbinding.h:29,
                 from /nix/store/sqvbi2ypbnldgxl7fsx0jzcsvl8y0047-glib-2.62.0-dev/include/glib-2.0/glib-object.h:23,
                 from /nix/store/sqvbi2ypbnldgxl7fsx0jzcsvl8y0047-glib-2.62.0-dev/include/glib-2.0/gio/gioenums.h:28,
                 from /nix/store/sqvbi2ypbnldgxl7fsx0jzcsvl8y0047-glib-2.62.0-dev/include/glib-2.0/gio/giotypes.h:28,
                 from /nix/store/sqvbi2ypbnldgxl7fsx0jzcsvl8y0047-glib-2.62.0-dev/include/glib-2.0/gio/gio.h:26,
                 from /nix/store/375635822k7wgr9l49b4rrdwdh6b3h5f-gtk+-2.24.32-dev/include/gtk-2.0/gdk/gdkapplaunchcontext.h:30,
                 from /nix/store/375635822k7wgr9l49b4rrdwdh6b3h5f-gtk+-2.24.32-dev/include/gtk-2.0/gdk/gdk.h:32,
                 from /nix/store/375635822k7wgr9l49b4rrdwdh6b3h5f-gtk+-2.24.32-dev/include/gtk-2.0/gtk/gtk.h:32,
                 from /build/rt-13+14/modules/javafx.graphics/src/main/native-glass/gtk/wrapped.c:36:
/nix/store/sqvbi2ypbnldgxl7fsx0jzcsvl8y0047-glib-2.62.0-dev/include/glib-2.0/gobject/gtype.h:679:1: note: declared here
 {
 ^
In file included from /nix/store/375635822k7wgr9l49b4rrdwdh6b3h5f-gtk+-2.24.32-dev/include/gtk-2.0/gtk/gtktoolitem.h:31,
                 from /nix/store/375635822k7wgr9l49b4rrdwdh6b3h5f-gtk+-2.24.32-dev/include/gtk-2.0/gtk/gtktoolbutton.h:30,
                 from /nix/store/375635822k7wgr9l49b4rrdwdh6b3h5f-gtk+-2.24.32-dev/include/gtk-2.0/gtk/gtkmenutoolbutton.h:30,
                 from /nix/store/375635822k7wgr9l49b4rrdwdh6b3h5f-gtk+-2.24.32-dev/include/gtk-2.0/gtk/gtk.h:126,
                 from /build/rt-13+14/modules/javafx.graphics/src/main/native-glass/gtk/wrapped.c:36:
/nix/store/375635822k7wgr9l49b4rrdwdh6b3h5f-gtk+-2.24.32-dev/include/gtk-2.0/gtk/gtktooltips.h:73:3: error: 'GTimeVal' is deprecated: Use 'GDateTime' instead [-Werror=deprecated-declarations]
   GTimeVal last_popdown;
   ^~~~~~~~
In file included from /nix/store/sqvbi2ypbnldgxl7fsx0jzcsvl8y0047-glib-2.62.0-dev/include/glib-2.0/glib/galloca.h:32,
                 from /nix/store/sqvbi2ypbnldgxl7fsx0jzcsvl8y0047-glib-2.62.0-dev/include/glib-2.0/glib.h:30,
                 from /nix/store/sqvbi2ypbnldgxl7fsx0jzcsvl8y0047-glib-2.62.0-dev/include/glib-2.0/gobject/gbinding.h:28,
                 from /nix/store/sqvbi2ypbnldgxl7fsx0jzcsvl8y0047-glib-2.62.0-dev/include/glib-2.0/glib-object.h:23,
                 from /nix/store/sqvbi2ypbnldgxl7fsx0jzcsvl8y0047-glib-2.62.0-dev/include/glib-2.0/gio/gioenums.h:28,
                 from /nix/store/sqvbi2ypbnldgxl7fsx0jzcsvl8y0047-glib-2.62.0-dev/include/glib-2.0/gio/giotypes.h:28,
                 from /nix/store/sqvbi2ypbnldgxl7fsx0jzcsvl8y0047-glib-2.62.0-dev/include/glib-2.0/gio/gio.h:26,
                 from /nix/store/375635822k7wgr9l49b4rrdwdh6b3h5f-gtk+-2.24.32-dev/include/gtk-2.0/gdk/gdkapplaunchcontext.h:30,
                 from /nix/store/375635822k7wgr9l49b4rrdwdh6b3h5f-gtk+-2.24.32-dev/include/gtk-2.0/gdk/gdk.h:32,
                 from /nix/store/375635822k7wgr9l49b4rrdwdh6b3h5f-gtk+-2.24.32-dev/include/gtk-2.0/gtk/gtk.h:32,
                 from /build/rt-13+14/modules/javafx.graphics/src/main/native-glass/gtk/wrapped.c:36:
/nix/store/sqvbi2ypbnldgxl7fsx0jzcsvl8y0047-glib-2.62.0-dev/include/glib-2.0/glib/gtypes.h:551:8: note: declared here
 struct _GTimeVal
        ^~~~~~~~~
cc1: all warnings being treated as errors

I think there was a massive GTK update that landed recently, probably that's the cause ...

cc @worldofpeace for gtk knowledge

The big GTK thing landing I was thinking of was actually Gnome 3.34 (#68608), but still may be related.  That was between the earlier version of this PR that did build and this one.  The old version was based on d484f2b7fc0834a068e8ace851faa449a03963f5 so the cause of this breakage must be between there and b943338ea582aeb9b0a406d7fb75f3f62bc16a9d.

@jerith666 Try adding NIX_CFLAGS_COMPILE = [ "-DGLIB_DISABLE_DEPRECATION_WARNINGS" ]; they moved a lot of things into deprecation and usually these warnings get treated as compile errors.
And yes that glib updated happened in https://github.com/NixOS/nixpkgs/pull/68608 so it's directly related.

That did the trick -- thanks!

See #71016

rebuilding now to try this out, will post an update here once I see it working -- thanks!

Okay, bootstrapping with AdoptOpenJDK 13 works; new version pushed.

Hm ... well, correction ... bootstrapping works on x86_64-linux, but not on i686-linux.  I'd rather not have to drop 32-bit just to achieve a "cleaner" bootstrapping process ... :-/

https://github.com/AdoptOpenJDK/openjdk-build/issues/986 is the issue for AdoptOpenJDK 32-bit x86.

I mentioned that problem in my comment - we can produce our own bootstrap tarball like we have for other OpenJDK versions. There are scripts to do this but they haven't been used since JDK 10 so they may need some updates. Ideally, the tarball would be reproducible, so that multiple people could help verify that it has not been tampered with.

Okay, I just pushed a version that bootstraps with adoptopenjdk on 64-bit, but with openjdk 12 on 32-bit.  I think that's the best I can do on my own.
I haven't tested darwin b/c I don't have a machine that can do that.

I think that is a good solution for now.
I have been thinking of a way to create a somewhat trustworthy bootstrap tarball. I doubt the OpenJDK build itself is reproducible, but we can let Hydra build OpenJDK 13 with the current bootstrapping method. This gives a trusted build of OpenJDK that can hopefully be used to reproducibly create a bootstrap tarball, which would allow others to verify that it has not been tampered with.

conflicts fixed and bumped to 13.0.2.

What is a status of this? This blocks update to OpenJDK 14, as OpenJDK 13 compiler is needed for that.

I just noticed that this conflicts with 74d9a1f228262b6baa35746e768c03fc03ed55a1; testing a fix now.

okay, jetbrains-jdk conflict fixed; this is once again ready to merge!

I will run nix-review and unless anyone raises new concerns I would merge it. Meanwhile JDK 14 was released as -ga.

19 package built:
openjdk13-bootstrap adoptopenjdk-jre-hotspot-bin-13 adoptopenjdk-jre-openj9-bin-13 adoptopenjdk-openj9-bin-13 jdk13 jdk13_headless jetbrains.clion jetbrains.datagrip jetbrains.goland jetbrains.idea-community jetbrains.idea-ultimate jetbrains.jdk jetbrains.phpstorm jetbrains.pycharm-community jetbrains.pycharm-professional jetbrains.rider jetbrains.ruby-mine jetbrains.webstorm openjfx13


Request: Server Logs

Project looks great, especially love the rich html parsing of the logs.
Is it on the cards to extend the capabilities to also be able to capture the running of nwserver, and rotating server-logs in a similar fashion (Although separately, as the host running the server might also use the client, and I think they should rotate independently).
Unsure of how the parsing works, it'd be a great half-step to just dump the serverlogs in unformatted html for a while until the parser was built-up to manage it.
Thanks very much for considering.

Yep, it's totally possible, at least some degree, off a surface glance. I don't have many example server logs to go with, to test my Regular Expressions against, but when I'm done the current list of improvements, I'll look into getting various log sources and types and see what patterns can be beautified.

In my particular use-case, the server is only online for a few hours a week - So parsing when it goes down is excellent (Especially if it crashes. Over the week we can remember to manually copy-paste to rotate, but if it crashes it's easy to forget in the rush to bring the server back up.)
Agree that for broader use-cases there should probably be some sort of "every x-hours" rotation, but I don't know enough about programming to comment on that feasibility 😅

If you have any non-private (or censored) logs you could provide it would help. Currently I don't have any server logs (as I'm not as active atm in the game) and I'd like to have at least a few before proceeding.

Do you have any example server logs, with obfuscated private text I could use as a reference? I don't have much time these days to play and I'd like to build a collection before parsing.

I'll get one prepared with as much of the different types of content as I can.

nwserverLog1.txt
Sorry for the delay. Please find attached an example server log extract. I've cut out a lot of repeated stuff everywhere, so No. of players might not match up etc. The only interaction I can think of that is not covered by this is a Server Message sent via the server console. I'll whip up a quick example of that and see if it appears & differs from anything here.
Note that anything following a # is a comment by myself. The actual server log does not contain any #'s

Thanks for getting that to me! I'll try to work on implementing this somehow soon. let me know if you find anything more about the Server Message.

Hello, I stumbled into the same interrogation. Have you managed to write something for the nwserver logs rotation ? Thank you :)

I will re-look into this now hopefully after the next round of client changes in the other open issue. I'm happy to see it still being used and I would love to deliver a better product that also encompasses the server log as well.

So it occurs to me that I don't really have a 'huge' server log, so to speak, though the example is helpful, I don't know exactly what the possibilities of text are, what differs between servers, and without that I can't really make a helpful tool.

Well, I did the preliminary part, of including it. I don't have many server logs to parse, so it doesn't do anything advanced. If you could please provide feedback in a new issue that would be fantastic.
Good luck!


Map params

Completed

Updated reading configure files by getting the path to the directory instead of the filename
Added a mapping function for concentrations and corresponding species from user input
Added a mapping function for photolysis rate constants  and its user input of them
Updated the unit and integration tests for the mapping functions
Updated the copy constructors for Phase and Property
Updated variable length array to dynamic array in process_set because other compilers except for GCC don't support variable length array.
Optimized reading and parsing configure files by reducing copy operations
Update reading configure files focusing on configuring the given data for extensibility instead of just creating SolverParameters
Moved Conditions class to its own header file (conditions.hpp) because #include header files induces circular dependency between state.hpp and rate_constant.hpp
Removed condition.hpp
Autoformatted - it often changes one line of code into separate lines that I didn't mean to..

To Discuss

[x] Conditions and Condition class

[x] heap allocation and de-allocation for every iteration in process_set

Still to do

[x] Update unit tests ; Currently almost all unit tests are not updated because I wanted to discuss whether those changes make more sense and wanted to receive feedback before updating them because they are lots of work!

Codecov Report
Patch coverage: 96.80% and project coverage change: +0.66 :tada:

Comparison is base (2412993) 93.10% compared to head (59522a1) 93.76%.

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #104      +/-   ##
==========================================
+ Coverage   93.10%   93.76%   +0.66%
==========================================
  Files          23       23
  Lines        1567     1605      +38
==========================================
+ Hits         1459     1505      +46
+ Misses        108      100       -8

Impacted Files
Coverage Δ

include/micm/process/rate_constant.hpp
60.00% <ø> (ø)

include/micm/configure/solver_config.hpp
85.78% <93.10%> (+3.43%)
:arrow_up:

include/micm/process/process.hpp
95.23% <100.00%> (ø)

include/micm/process/process_set.hpp
99.33% <100.00%> (+<0.01%)
:arrow_up:

include/micm/solver/state.hpp
100.00% <100.00%> (ø)

include/micm/system/phase.hpp
100.00% <100.00%> (ø)

include/micm/system/property.hpp
100.00% <100.00%> (ø)

include/micm/system/species.hpp
84.61% <100.00%> (ø)

include/micm/system/system.hpp
94.11% <100.00%> (+3.20%)
:arrow_up:

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


feat(chord_pattern): add intervalSteps factory constructor

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

5 of 5 (100.0%)  changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 100.0%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
607

Relevant Lines:
607

💛  - Coveralls


Make footer collapsible

The footer is cool and necessary, but on smaller-ish screens, being able to collapse it would free up a not-inconsiderable amount of real estate.  A box to close it would work, but then would get rid of "report a problem" which I don't think would be good to do.

The only reason it's there is for 1) NSF ack, 2) reporiting issues. If we can agree that having 1) on the main page (or somewhere less prominent in the dashboard Menu > About ?) it can go away entirely.

I would propose that having the NSF ack somewhere else is fine.  The dashboard menu would be fine.

Fixed https://github.com/whole-tale/ngx-dashboard/pull/113

Fixed https://github.com/whole-tale/ngx-dashboard/pull/113


Include an alternative to the sh command:

When I ran the command as-is, I did not receive an error message that could help me fix the issue. My output looked as follows:
$ curl -sfL https://get.k3s.io | sh -
[INFO]  Finding release for channel stable
[INFO]  Using stable as release
[INFO]  Downloading hash https://github.com/k3s-io/k3s/releases/download/stable/sha256sum-amd64.txt
$ k3s kubectl get node
Command 'k3s' not found, did you mean:
command 'k9s' from snap k9s (0.7.12)
command 'k3b' from deb k3b (19.12.3-0ubuntu1)
command 'kds' from deb kylin-display-switch (1.0.4-1)
See 'snap info ' for additional versions.
For Rancher (product) docs only
When contributing to docs, please update the versioned docs. For example, the docs in the v2.6 folder of the rancher folder.
Doc versions older than the latest minor version should only be updated to fix inaccuracies or make minor updates as necessary. The majority of new content should be added to the folder for the latest minor version.

This is currently a bug with the stable channel. No need to change the docs.


Update tmux syntax file

The change updates the tmux syntax files since there have been several releases since it was originally submitted.
CC: @blueyed who filed https://github.com/ericpruitt/tmux.vim/issues/6.

Codecov Report

Merging #2923 into master will decrease coverage by <.01%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master    #2923      +/-   ##
==========================================
- Coverage   75.65%   75.64%   -0.01%
==========================================
  Files          92       92
  Lines      135014   135014
==========================================
- Hits       102145   102137       -8
- Misses      32869    32877       +8

Impacted Files
Coverage Δ

src/message.c
74.59% <0%> (-0.2%)
:arrow_down:

src/term.c
59.61% <0%> (-0.11%)
:arrow_down:

src/ui.c
46.62% <0%> (-0.08%)
:arrow_down:

src/os_unix.c
54.48% <0%> (-0.05%)
:arrow_down:

src/window.c
82.17% <0%> (-0.04%)
:arrow_down:

src/syntax.c
78.26% <0%> (-0.03%)
:arrow_down:

src/gui_gtk_x11.c
47.98% <0%> (ø)
:arrow_up:

src/gui.c
49.3% <0%> (ø)
:arrow_up:

src/if_xcmdsrv.c
84.53% <0%> (+0.17%)
:arrow_up:

src/gui_beval.c
63.09% <0%> (+0.42%)
:arrow_up:

Continue to review full report at Codecov.

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

Do not use that. Use syntax iskeyword instead.

Why?

Why?

Because the option influences too many areas in Vim (e.g. what is being matched by /\k, how the word movements work, etc.). You do not want to have those side effects just for a syntax rule. Therefore the specific command :syntax iskeyword has been introduced. That does not have the side effects and only allows to specify what to consider keywords in syntax files. I think the help also talks about it at :h syn-iskeyword

Thanks. I believe suggestions should be accompanied with explanations so the people you're correcting can learn. I'm not the original author of this syntax file, and I'm not particularly knowledge about Vim's many syntax highlighting commands.

I tried replacing that line with syntax iskeyword=@,48-57,_,192-255,-, but this results in none of the keywords in tmuxOptions and tmuxCommands being highlighted. What am I doing wrong?

syntax iskeyword=@,48-57,_,192-255,-

According to the help, it should be syntax iskeyword @,48-57,_,192-255,- I think.

I've updated the pull request so.


Good Project!

you're doing a great job, just the look of the app that is not very nice, when will it be ready do you have a prediction of when it will end?

Hi Anderson,
I am working on the UI part, it will be completed soon.
Thanks and Regards
Leslie Correa

Congratulations, is there any material available that helps me build a shopping cart like yours? I'm in great need of it.

Hi Anderson,
For badge on a toolbar item check https://github.com/LeslieCorrea/Xamarin-Forms-Shopping-Cart/tree/master/ShoppingCarts/ShoppingCarts/ContentView in my repo,for an example check https://social.technet.microsoft.com/wiki/contents/articles/37733.xamarin-shopping-cart-counter-in-forms-navigation-bar.aspx
If want full project you can check https://grialkit.com/ it has mostly all kind of UI but it is paid.

Hi Anderson,
I have updated most of the UI, please check the latest commits.
-Leslie Correa


use latest release version of metrics

Could you do a release soon so that new outputs (ganglia/graphite) could be supported and use features from metrics 3.1.1?

+1

Ping. Is this project still active?

@davidkarlsen This version supports graphite and ganglia reporters, and it fully supports 3.1.1, it just isn't compiled against it. I aim to get a new version out soon, but I have a couple other fixes I need to make before I bump the version.

Any status update?

I really need it also ...

This is fixed - closing pull request.


Link projects together via pinto pipeline

pinto has functionality for executing multiple projects in a sequence from a shared config as a Pipeline (a good example from DeepClean is here. Might be worth starting to string some of these projects together to kick off a single job (download background, generate waveforms and glitches, train on them), with options to skip data generation if the indicated data files already exist (or with a force argument to recreate them even if the do exist).

Cool idea. We currently don't have a "generate_background" project, although I can't imagine it being more than a few lines of code. I can put one together.

That would be awesome. I'm even wondering if it would make sense to move all of the data generation libraries (background, glitches, injections) into the bbhnet.data library to more tightly integrate how these tools write data to how the various data loaders read and process that data. Probably out of scope for this particular issue, but could be worth thinking about.


python3Packages.django-json-widget: init at 2.0.1

Adding django-json-widget, a „Alternative widget that makes it easy to edit the jsonfield field of Django“.

Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[x] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
24.11 Release Notes (or backporting 23.11 and 24.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[x] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

@ofborg build python312Packages.django-json-widget


Investigate a way of sending configuration option and commands to clients

Allow clients to receive commands from Eva for things like calibrating audio/listening threshold, muting, sending audio specific to client, etc.
Maybe use the same anypubsub channel method for communication with specific channels names.

This probably depends on #11


Create Boilerplate HTML document

Every app has to start somewhere!

Add a title element with the hame halogen

I love to create the boilerplate. Could you assign me this ?

I love to create the boilerplate. Could you assign me this ?

I love to create the boilerplate. Could you assign me this ?

Hey @code-reaper08! Sorry we went ahead without you on this one, On Saturday mornings we have a beginner developer class, and use this repo as a learning tool. I'd be glad to assign you an issue in the future though if you'd like! For the next few months the issues will be very very beginner focused.

I love to create the boilerplate. Could you assign me this ?

Hey @code-reaper08! Sorry we went ahead without you on this one, On Saturday mornings we have a beginner developer class, and use this repo as a learning tool. I'd be glad to assign you an issue in the future though if you'd like! For the next few months the issues will be very very beginner focused.

Thanks for your reply 😃

Thanks for your reply 😃


Azure Pipelinesを構成する

このパイプライン構成は、アプリケーションをビルドし、リリース構成のビルドを生成します

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.:x: daiki-kasahara sign nowYou have signed the CLA already but the status is still pending? Let us recheck it.


Update rest api endpoints using ChainDataProvider and ValidatorDataProvider

All REST endpoints that use ChainDataProvider can potentially return a 204/503 error via the generic handler, when a ChainDataUnavailableException is raised, or a ServiceUnavailableException.
Any rest api endpoints that are affected will extend MigratingEndpointAdapter.
For all endpoints that use ChainDataProvider or ValidatorDataProvider, in their metadataBuilder, they should be calling .withChainDataResponses(), and should not be listing their own response of 204 (SC_NO_CONTENT) or 503 (SC_SERVICE_UNAVAILABLE).
The rest api handlers are located in data/beaconrestapi/src/main/tech/pegasys/teku/handlers. They'll all have private providers that look like one of:
ValidatorDataProvider provider;
ChainDataProvider provider;
The flow on effect is that the MigratedOpenApiIntegrationTest will require that files get updated to include the responses, basically the change is in output and just needs to be applied to the write resource paths for the test.
Unit tests should be added for the adapters that didn't list these return codes, they'll be basically:
  @Test
  void metadata_shouldHandle204() {
    verifyMetadataEmptyResponse(handler, SC_NO_CONTENT);
  }
  @Test
  void metadata_shouldHandle503() throws JsonProcessingException {
    verifyMetadataErrorResponse(handler, SC_SERVICE_UNAVAILABLE);
  }

Hi @rolfyone , is this still an open issue? If so, I am happy to pick it up.

Still open, some details have changed ever so slightly...
MigratingEndpointAdapter is no more, they all extend RestApiEndpoint now, we've finished our conversion and renamed it.
MigratingOpenApiIntegrationTest is now renamed to OpenApiIntegrationTest
The rest of the details look good :) Let me know if you need a concrete example!

Assign me to this issue, please


https://github.com/refindlyllc/python-rets/issues/24

Description
Session now does what Configuration did and Configuration is removed.
GitHub Issues
https://github.com/refindlyllc/python-rets/issues/24

Coverage decreased (-3.1%) to 62.846% when pulling 3d540f99190367f1dafa53414288393f354605f6 on frozenjava:local-dev into c9918f5c7556c4fa533b23f3e9342b07d320431d on refindlyllc:development.


exec error in Tick script

I get exec plugin error as below :
E! exec command failed: Output: : fork/exec /usr/local/bin: permission denied
when i try to run a shell script from Tick script.
Please find the alert node as below :
alert
        .log('/tmp/disk_alert_log.txt')
        .slack()
        .channel('#devops')
        .exec('/usr/local/bin','recoverDisk')

Thanks,
Sunil

@xylene1980 This is just a user permission problem. As what user you are running kapacitor?
Does that user has permission to run 'recoverDisk'?
Else, try giving "755" permission to 'recoverDisk'.

@adityacs Kapacitor is running as '496' user

@xylene1980 The syntax used is wrong. Usage is as below
node.exec(executable string, args ...string)
'/usr/local/bin' is not executable '/usr/local/bin/recoverDisk' is executable path. "args" are args to your executable.


add option for max connection

add option in config file

Hi, thank you for the PR. I think MaxConnection makes sense and is useful.
I put some comments to get your PR to be merged.

Thanks for your consideration of my PR. I've rearranged log and moved var connection as you commented. But I think it's better to log into a separate line, it's more readable.

@zyfdegh Thanks for the update.
I want to keep the log in a single line.

If the log for a single event is separated into multiple lines, it's hard to track events, especially gotty receives two or more requests in a small duration
The current number of connections is not so important information enough to give it a dedicated line  for most use cases

I therefore want to merge these two lines.

Okay, I forgot about concurrency. I've merged now. ;-)

Thanks!


cluster snapshot

Think about a
riak-mesos cluster snapshot
command

https://github.com/basho/leveldb/wiki/mv-hot-backup
https://github.com/basho/leveldb/tree/mv-hot-backup

In the snapshot instance, we could expose the files via https, etc.
and or
riak-mesos cluster fork

https://github.com/basho-labs/riak_explorer/issues/151


use falcon-unzip for tetraploid

Hi,
Is it possible to use falcon-unzip for tetraploid or hexaploid genome assembly and phasing?
Jason gave me a short answer: you cat get haplotype-fused contigs but not haplotype seperated halpotigs.
May I have more information?

please see https://speakerdeck.com/jchin/pagxxiv-2016-bioinformatics-workshop
during FALCON, it does not using any SNP information to layout contigs. For polyploid genome, as long as there is difference between different haplotype remains small, they will create a single "bundle" in the assembly graph and we can layout the contigs regardless the ploidy, but the next step uses the assumption there are only two haplotypes.


Address the release review feedback from Ed Burns

Description
Ed wrote in the spec release review voting thread with the following info.

I have a question. This question pertains in both SemConv v1.27.0 and v1.26.0, so it is relevant to MP 2.0:
Consider this text from: https://opentelemetry.io/docs/specs/semconv/general/attribute-requirement-level/#conditionally-required

When a Conditionally Required attribute’s condition is not satisfied, and there is no requirement to populate the attribute, semantic conventions MAY provide special instructions on how to handle it. If no instructions are given and if instrumentation can populate the attribute, instrumentation SHOULD use the Opt-In requirement level on the attribute.

I wonder if MP telemetry should say something about what MP telemetry implementations should do in this case? Not required but just curious. Maybe forward this on to Don Bourne?

From discussion on today's MP Telemetry call:
In the MP Telemetry 2.0 spec, we list the following conditionally required metric attributes on the http.server.request.duration metric:

error.type

OTel sem conv says: Conditionally Required If request has ended with an error.

http.response.status_code

OTel sem conv says: Conditionally Required If and only if one was received/sent.

http.route

OTel sem conv says: Conditionally Required If and only if it’s available

In the 3 attributes listed above, it's fairly clear that if the info isn't available or doesn't apply then implementations shouldn't fill it in. We discussed that we didn't want the MP Telemetry spec to say that impls must not provide the attribute in those situations since there are cases where including the attribute with an empty string as the value is more appropriate. One such case is for impls providing a /metrics endpoint, which will likely use the Prometheus client, and the Prometheus client requires all instances of a metric with the same name to use the same set of attribute names.

network.protocol.name

OTel sem conv says: If not http and network.protocol.version is set.

For the attribute above, we discussed that we thought MP implementations would likely always use http as the value, since none of the other values listed seemed appropriate.  We also discussed that we should open an issue with OpenTelemetry semantic convention to get clarity on what "If not http and network.protocol.version is set" means.
In summary, while the MP Telemetry spec doesn't say what to do when conditions for conditionally required attributes are not satisfied, the conditions themselves make it reasonably clear what implementers should do already.

@edburns , please take a look at the comment above -- does that adequately address the concern you had earlier?


MPI-aware threading defaults

Closes #197

That requires https://github.com/emer/empi/issues/11. I see that this PR would break LVIS MPI training .

Related: https://github.com/emer/empi/issues/11

the job submission script should know this.. Also, under SLURM used on many clusters, it automatically sets GOMAXPROCS based on actual allocated number of cores, so this calculation would be off there.
Overall, I think it is better to keep it simple in the axon code and leave this to the submission script.

Sorry I wasn't aware there was a conversation still going on and I just approved the PR. Please decide what you want and do it!


Hangman.py

Hangman is a guessing game for two or more players. the machine randomly chooses a word, and the player tries to guess it by suggesting letters within a certain number of guesses. I have used recursive implementation. Machine asks for guesses. Through the if- else conditionals if the letter is right it continues else the hangman grows and once its fully drawn game gets over.


Stubbing the same method on more than one consecutive tests fails

I've got sample code here: gist
The situation is as follows: I've got a module (someModule in gist) that has two methods that fetch data from a store. Both methods use the same query-like method (obj.method in gist) from another module (obj in gist) to query the data store (using callbacks). I've written a test for both methods in someModule, and attempted to create a stub for obj.method with specific args before each test, which is then reset and restored after each test.
The first test runs fine, but the second one times out (regardless of the order I run them in, only the first one to run works). I debugged everything, and found that when the second test calls obj.method, the invoke method called for the underlying spy has some weird behavior. Upon reaching this line spy.js#L155, this.fakes resolves to an array that contains one fake, but the matchingArguments property for it contains the args from the first test's stub, instead of the second one.
Is this a bug, or am I just missing something in how I'm creating and cleaning my stubs?

This seems strange. Can you post a full runnable example that reproduces the issue? It's kind of hard to try and reproduce by emulating everything in my head.

Sure thing. Give me a few minutes, and I'll edit this post with some new gists

I'll go ahead and close this issue. As I was working on creating as close an example as possible, and getting frustrated because the example DID work properly, I realized the problem was in the way one of my modules is built, not with sinon. Thanks for the quick response, anyways. Love the work you've done with sinon.

:+1:


Uncertain

This should be merge-able pretty soon

Hi Harry, I think I'll need write access to your simulator repo as well in order to resolve these conflicts. I have the required changes all ready.


fix(type-safe-api): add empty README.md for generated python projects

The poetry install that runs as part of post synthesis expects there to be some code present, but code isn't generated until build time. This means that the first install will fail when either generating the project for the first time or checking out a fresh copy (since generated code is not checked in to version control).
To fix this, we add a blank README.md file in addition to the init.py file as the first install step to keep poetry happy until the generator overwrites it.
Fixes #813

No. Poetry looks for a README.md at the same level as the pyproject.toml
which is the package root. The source code starts in the module directory,
so the init.py goes there.
On Sun, Aug 4, 2024, 22:11 Adrian Dimech @.***> wrote:

@.**** commented on this pull request.
In
packages/type-safe-api/src/project/codegen/infrastructure/cdk/generated-python-cdk-infrastructure-base-project.ts
https://github.com/aws/aws-pdk/pull/818#discussion_r1703463451:

 ["install", "install:ci"].forEach((t) =>

   this.tasks
     .tryFind(t)
     ?.prependExec(

     `mkdir -p ${this.moduleName} && touch ${this.moduleName}/__init__.py`

     `mkdir -p ${this.moduleName} && touch ${this.moduleName}/__init__.py README.md`

Shouldn't this be ${this.moduleName}/README.md ?
In
packages/type-safe-api/src/project/codegen/runtime/generated-python-runtime-base-project.ts
https://github.com/aws/aws-pdk/pull/818#discussion_r1703463522:

 ["install", "install:ci"].forEach((t) =>

   this.tasks
     .tryFind(t)
     ?.prependExec(

     `mkdir -p ${this.moduleName} && touch ${this.moduleName}/__init__.py`

     `mkdir -p ${this.moduleName} && touch ${this.moduleName}/__init__.py README.md`

Shouldn't this be ${this.moduleName}/README.md ?
—
Reply to this email directly, view it on GitHub
https://github.com/aws/aws-pdk/pull/818#pullrequestreview-2217904012,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAAUYCSDS4QAGLUTHNJPC7DZP3NODAVCNFSM6AAAAABL3AXBNWVHI2DSMVQWIX3LMV43YUDVNRWFEZLROVSXG5CSMV3GSZLXHMZDEMJXHEYDIMBRGI
.
You are receiving this because you authored the thread.Message ID:
@.***>

% pwd
packages/api/generated/runtime/python
% ls -R
README.md				poetry.lock
api_detective_api_python_runtime	poetry.toml
dist					project.json
docs					pyproject.toml
openapitools.json

./api_detective_api_python_runtime:
__init__.py
...


No x/y axis labels?

Great card, thank you!
I just tried using it and I'm scratching my head as there seem to be no controls for the X/Y axis.  The default graph doesn't label them for me and all the examples show them but none of the accompanying YAML seem to explicitly enable them.
Here is my YAML:
type: custom:history-explorer-card
cardName: historycard-90178479
defaultTimeRange: 21d
combineSameUnits: true
entityOptions:
  ymin: 0
  ymax: 100
uiColors:
  gridlines: dimgray

I have two sensors added interactively, both are temperature related.

I must be missing something ... thanks.
-Fred

What theme are you using ? Looks like it's not declaring the dark mode flag correctly.
Try to add this to your card yaml:
uimode: dark

Did that help ?
If yes, then please close the issue. Thanks !

Yes, that appears to be it, it was probably rendering them in the wrong foreground color, thank you.   I was using 'slate', one of the themes on HACs.  Changed it to default and then it showed up.
-Fred

OK, thanks for confirming. The Slate theme is notorious about not being compliant with standards by not setting the dark flag. The next version of the history explorer card will include some additional logic to detect dark mode without having to rely on the flag.


Aries seems to ignore timed effects

Describe the bug
After #536 has been closed I continued trying using timed effects with the aries engine.
However, the engine seems to disregard them.
To Reproduce
Save the following as issue.hddl:
(define (domain test)

(:requirements :hierarchy)

(:predicates
    (deadline)
    (goal)
)

(:task main :parameters ())

(:method main-m
    :parameters ()
    :task (main)
    :subtasks (and
        (main-a)
    )
)

(:durative-action main-a
    :parameters ()
    :duration (= ?duration 40)
    :condition (at end (not deadline))
    :effect (at end (goal))
)

)

Then, save the following as issue-instance.hddl:
(define (problem test) (:domain test)

(:htn
    :tasks (and
        (main)
    )
)

(:init (and
    (not deadline) (not goal)
    (at 15 (deadline))
))
)

Then run the following:
from unified_planning.shortcuts import *
import unified_planning.io as io

reader = io.PDDLReader()

p = reader.parse_problem('issue.hddl', 'issue-instance.hddl')

with OneshotPlanner(name = 'aries') as planner:
    print(planner.solve(p))

I get the following output:
status: SOLVED_SATISFICING
engine: aries
plan: Hierarchical TimeTriggeredPlan:
    0.0: main-a [40.0]

Expected behavior
The problem should be unsatisfiable, because the action requires (not deadline) at the end and its duration is 40 but the timed effect sets deadline at time 15.
If one makes print(p) the output correctly shows the timed effect, so the parser is not at fault here.

Hi @nicola-gigante
support for timed initial literals was added to aries when it appeared in the protobuf export.
If you update aries to version 0.3.2 it should work as expected.
(Note that there is still a minor discrepancy of semantics with PDDL2.1 discussed in PR #393 )

Yes, it works now, thank you!


Improves composer package description and tags

This helps for better search of this module in packagist.org.

Solves issue: Doesn't solves any problem, it just improve the package searchability.
Description: Improves package searchability, since this packages should be added to packagist.org.
Tested with Magento editions/versions: -
Tested with PHP versions:  -

add pull request into master


Fixed version

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

Comparison is base (0c081b1) 96.11% compared to head (14353d6) 96.11%.
Report is 6 commits behind head on main.

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@           Coverage Diff           @@
##             main      #63   +/-   ##
=======================================
  Coverage   96.11%   96.11%
=======================================
  Files           9        9
  Lines         875      875
=======================================
  Hits          841      841
  Misses         34       34

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


goldwarden: init at 0.2.7

Description of changes
Homepage: https://github.com/quexten/goldwarden
Closes: https://github.com/NixOS/nixpkgs/issues/278180

Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[x] Tested basic functionality of all binary files (usually in ./result/bin/)
24.05 Release Notes (or backporting 23.05 and 23.11 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[x] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

@quexten I looked at the aur package and it only seems to install a binary and a polkit rule, that's what is being done here. Are there any other steps needed in the package?

If selinux is present (does nix have it?), the polkit rule's permissions need to be adjusted as well. Other than that no, it's just installing the binary.
Do beware that you do need at least dbus, and a pinentry client (https://pkg.go.dev/github.com/twpayne/go-pinentry#section-readme) are required to use the package. I'm not sure if these are present on a default nixos installation.

Oh, since I do see darwin listed above, I will note that while packages are built for darwin in the project's GitHub CI at the moment, they are very much untested and some features are missing. I'm not sure they should be released for darwin just yet until more testing has been done there. https://github.com/quexten/goldwarden/issues/4

Oh, since I do see darwin listed above, I will note that while packages are built for darwin in the project's GitHub CI at the moment, they are very much untested and some features are missing. I'm not sure they should be released for darwin just yet until more testing has been done there. quexten/goldwarden#4

Understood, I'll mark it as linux-only and link the issue.

If selinux is present (does nix have it?), the polkit rule's permissions need to be adjusted as well. Other than that no, it's just installing the binary.
Do beware that you do need at least dbus, and a pinentry client (https://pkg.go.dev/github.com/twpayne/go-pinentry#section-readme) are required to use the package. I'm not sure if these are present on a default nixos installation.

No, we currently don't support SELinux.
I added the packages to the binary's path, so they'll always be there.

I think the required system services should be directly be installed in the package or setup by a NixOS module. The imperative setup commands don't fit NixOS very well.

I think the required system services should be directly be installed in the package or setup by a NixOS module. The imperative setup commands don't fit NixOS very well.

I couldn't find the required file, so I think it is generated at runtime. @quexten what do you think? Do you have plans to have a preset file so we can copy from? Do you want to have a hardcoded file or let upstream handle the service? Keep in mind that it would be desirable to have a service in NixOS in case your app gets options to be enabled etc.

For the other packaging formats I have the upstream issue https://github.com/quexten/goldwarden/issues/12, which I have not been able to deal with just yet. For now, the service file is a hard-coded string https://github.com/quexten/goldwarden/blob/e15cee5aa92749b395960498dd069b8794025e68/cmd/setup_linux.go#L69-L77, but if it helps you, I can make this a dedicated file upstream that you can just use. This is installed as a user-service.

For the other packaging formats I have the upstream issue quexten/goldwarden#12, which I have not been able to deal with just yet. For now, the service file is a hard-coded string https://github.com/quexten/goldwarden/blob/e15cee5aa92749b395960498dd069b8794025e68/cmd/setup_linux.go#L69-L77, but if it helps you, I can make this a dedicated file upstream that you can just use. This is installed as a user-service.

This would be awesome! Thanks!

I gave this a try, but it would never show a pinentry for me, even after I added pinentry-gtk2 to the system packages. (Maybe I should have restarted or at least re-logged-in?)
But somehow the journal log says
Mär 25 21:21:11 riviera .goldwarden-wrapped[2553526]: [INF] [21:21] [Goldwarden > Pinentry] >>> Asking for pin |Unlock Goldwarden|Enter the vault PIN|

without any indication that it couldn’t fin a pinenry or so?
Maybe the package should have a suitable pinentry as a runtime dependency so that it will work for everyone? Not sure.

Probably a good idea. Upstream has a GTK based custom pinentry fallback for the UI, which is currently only available as a Flatpak, but @SuperSandro2000 is looking into packaging the full UI version without flatpak for nix which would also have this fallback: #293117

Yeah, just found that PR and saw it installs config.programs.gnupg.agent.pinentryPackage. I guess I will wait for that PR.


Enhancement: 'book mode'

What happens if someone wants to generate an audio book? They should be able to just copy/paste the text of the book into a phrase file (without having to specify the semicolon or durations). Need to experiement and see what happens with long lines; paragrpahs; etc.

Good point, would be nice if the app can handle a bunch of lines without durations and handles it in a sensible way.

Rudimentary implementation in <IP_ADDRESS>.


Can't add a notifier to an alert

Version - 2.2 master 12/6
Steps to reproduce (least amount of steps as possible):

Enable monitoring
Create a notifier
Go to alerts and edit and try to add notifier

Result:  Notifier fields are missing

You have to create a new group and config the notifier there.


Adds undeclared dependency on setuptools

Before submitting

[ ] Was this discussed/agreed via a Github issue? (no need for typos and docs improvements)
[ ] Did you read the contributor guideline, Pull Request section?
Did you make sure to update the docs?
[ ] Did all existing and newly added tests pass locally?

What does this PR do?
Fixes the undeclared dependency on setuptools. There is an undeclared dependency on setuptools here https://github.com/Lightning-AI/utilities/blob/84cafbcdac24431820ff1c22c9699b84b088fad5/src/lightning_utilities/core/imports.py#L14
While it is true that most python environments will have setuptools pre-installed, this is not always safe to assume.
Fixes # (issue).
PR review
Anyone in the community is free to review the PR once the tests have passed.
If we didn't discuss your PR in GitHub issues there's a high chance it will not be merged.

We don't have this dep in lightning either, should it be there? @Borda and @carmocca know better about this than me :)

Where is it used? I guess in setup.py ony, right?


Adding headers for throttled responses

For all throttled responses added the following headers:
X-RateLimit-Limit
X-RateLimit-Remaining
X-RateLimit-Reset

@twiduch Thanks for helping make rack-attack better!
(For reference, this was discussed in #29.)
I'd rather not change the default responses, since whether to publicly expose this throttle rate depends on the use-case. Developers can always opt-in by customizing their responses.
This also introduces some logic to handle X-RateLimit-Reset. Could you explain why that's important for your use case?

@ktheory I just believe this should be the default option. Specially when different requests have different limits - e.g. POST 2/10sec, GET 20/15sec
That allows consumer to queue the calls appropriately.
If you do not want to set headers, I understand. You just prefer to move the logic to devs. However, they do not have info about expiry
The information delivered currently:
"rack.attack.throttle_data"=>{"api/get/ip"=>{:count=>11, :period=>60, :limit=>20}}
should be
"rack.attack.throttle_data"=>{"api/get/ip"=>{:count=>11, :period=>60, :limit=>20, :expires_in=>7}}
Without that you cannot set 'X-RateLimit-Reset'
In my opinion most APIs need that info. We could make it optional, if you think that flexibility is needed.
I mean: by default set headers automatically, but with the ability to switch that off in a configuration file.
class Rack::Attack
self.throttle_headers = false
end

One more thing.
When throttle is hit, with that line of code - no info is available for devs, and default header 'Retry-After'  is set

Definitely, would be great to have this as an opt-in option.
@ktheory even if you don't agree with the idea of exposing all these headers, at least we could find a way of exposing the expire window in case we want to add X-RateLimit-Reset header.

I understanding what you're asking for, but what's needed here is a use-case explaining why X-RateLimit-Reset is important.
@twiduch:

In my opinion most APIs need that info

What's an example? What's your use-case?

@ktheory in my case, I have to give the consumers the information on when their window will reset, so that they can balance the requests based on that.
Basically, they need to calculate how many requests they can make before the next window and if there are few, they can choose between the most important ones.

@ktheory
My particular use-case is that I allow 1 request for 10/sec and 5 requests / 100sec. That is normally more than enough. But if a client needs more, he needs information when to send the next call. That is good for them and my server.
That said, I think a specific use-case is irrelevant to this discussion.
We deliver a tool which gonna be used by clients. How they use it is up to them. When I take a look at the current available data
{:count=>11, :period=>60, :limit=>20} the time_to_reset is missing.
I would even say that {:time_to_reset=>12 , :remaining_requests=>6} would be enough instead of those 3 above - all clients need to know how many calls they can trigger in a specific timeframe.
remaining_requests can be inferred from data above, but time_to_reset - not

@wpolicarpo, @twiduch:
For background, please keep in mind that Rack::Attack's primary use-case is preventing harm from abusive clients. Since exposing X-RateLimit headers doesn't clearly help stop abusive clients, it won't be the default.
But a secondary use-case is assisting well-behaved clients use a site appropriately. That's what these X-RateLimit-* headers are for.
Turns out we can determine X-RateLimit-Reset from the match_data's period and Time.now. E.g.:
now = Time.now
match_data = env['rack.attack.match_data']

{ 'X-RateLimit-Reset' => (Time.now + (match_data[:period] - now.to_i % match_data[:period])).to_s }

In #193, I added a section to the README for how to customize you're throttle_response to set X-RateLimit-* headers. Please check out this section
Given that this functionality is already possible using throttle_response, I'm going to close this out.


Accounts not showing

Whenever I press start it shows, couldnt scrape any links, then it shows got 10 links only once, and the accounts never show.

That may be due to the fact that you're IP is blacklisted, or worse, your ISP blacklists some websites. But in most cases using a VPN or proxies should fix the issues. Since you seem to be using default configuration, that can't be the problem.

Not running on my Windows 10 Pro (12GB RAM i5)
I tried installing the things on the readme but still not working.

Hey check settings.txt in the settings folder and change the regex according to what you want. It should like this if you want email:pass combos or similar to that.
Image: https://ibb.co/9hH1n6B
Hope this helped


Revert "chore(bazel): [Many APIs] Update WORKSPACE files for rules_gapic, gax_java, generator_java versions"

Reverts googleapis/google-cloud-java#8305

This revert PR wouldn't work.


query d1

Example where a D1 database is queried

hi @irvinebroque (Confidence said to tag you lol)

Removed the csvtosql.py file and edited the README.md linking to the sql file hosted on Hugging Face!

Nice! Looks good except the csvtosql.py file still appears to be in here.

Fixed :)


Not an issue. The font name

Sorry. This is not an issue. Just a question.
What is the font you are using in the 1st 2 screenshots:
https://raw.githubusercontent.com/ginfuru/vscode-onedark-raincoat/master/images/js.png

Found it:
https://dank.sh/

@ivandj Hey sorry yeah - I use Dank Mono - totally worth the $


MacOSX Service provider - Running services are not restarted

Version:
12.2.1
Environment:
MacOSX
Any cookbook that uses the provider service/macosx.rb
source: https://github.com/chef/chef/blob/master/lib/chef/provider/service/macosx.rb
Scenario:
Restart services when they are running or stopped.
It just restart the service when it is stopped. However when it is running just stop it.
Steps to Reproduce:
Use the provider service in some cookbook and run it in a MacOSX.
Example:
service "SOME-SERVICE" do
action :restart
end
Expected Result:
Expect to the service be restarted.
Actual Result:
When the service is running, it is stopped but not started. Debug message:
[2015-04-01T14:41:25+01:00] DEBUG: service[thoughtworks.go-agent-1] already running, not starting
[2015-04-01T14:41:25+01:00] INFO: service[thoughtworks.go-agent-1] restarted
When the service is stopped, it is started correctly.
Problem in source:
When start_service and stop_service methods are called it is checked if the attribute 'running' is 'true' or 'false' respectively. However this attribute is defined at the beginning of the service instance definition and not updated if it the service is stopped or started.
When you restart the service when it is running, the flag is defined as "true" and the stop_service stops the service. However the start_service doesn't do nothing because the 'running' attribute is still 'true' (not updated).
Proposed solution:
Remove in the start_service method (line 81 source code) the conditional:
if @current_resource.running
Chef::Log.debug("#{@new_resource} already running, not starting")
And to be consistent remove also in the stop_service method (line 93 source code) the conditional:
unless @current_resource.running
Chef::Log.debug("#{@new_resource} not running, not stopping")

looks like fixed by #3051


[REQUEST] TCP blocks with byte array inputs

Hey, I'm unable to use TCP Blocks, because bytes -> ascii conversions that take place above charcode 127 are wrong. Above 127 most characters happen to be question marks.
I have tried different encodings in both OB2 and Node environment, but I couldn't find any that would magically not turn half of my bytes into question marks.
https://github.com/openbullet/OpenBullet2/blob/701e25c5f9bde89655bc0af732ab354fab2318a9/RuriLib/Blocks/Requests/Tcp/Methods.cs
TcpSendRead, TcpSend, TcpRead
I suggest adding TcpSendReadBytes, TcpSendBytes, TcpReadBytes or renaming current methods to TcpSendReadString, TcpSendString, TcpReadString and adding new.

Regards

No worries I can add them right now

Mind that I did not have time to test this so please do let me know if it's working, thanks!

It is working well, but I found a typo "Use U TF8" instead of "Use UTF8" checkbox.

It's not a typo, it's the parameter name generator that does that, I didn't implement a custom parameter name attribute yet. It's something I plan on doing though, if you want feel free to open an issue about it.


Fork arrow2 and get rid of polars

While we want to migrate from the arrow2 crate to arrow (https://github.com/rerun-io/rerun/issues/3741), it is a big task that we would rather punt on right now. It is technical debt, but the debt is not going to grow significantly. The gains don't justify the potential rabbit hole of paint it could turn into.
One of the major reasons to migrate away from arrow2 is because DataType has a huge overhead, especially when cloned.
We have a PR to fix it (https://github.com/jorgecarleitao/arrow2/pull/1469) but it is unmerged, because arrow2 in unmaintained.
So: we fork arrow2 as re_arrow2, merge our PR, and solve our immediate memory issue.
Since polars  require arrow2, we need to stop using it. We only have it for a few tests.

We should revisit the migrating away from arrow2 when we start exposing arrow things to the users (e.g. support data queries in the SDK) and/or when we want to interface with a some data frame crate.

One question is: what do we do with the tests and examples we have that depend on polars?

fwiw, Polars also forked arrow2 into polars-arrow, and I don't think it has a dependency on arrow2 anymore

We want to get rid of polars anyhow because of its huge dependency tree

Blocked on landing caching to avoid conflicts

Forking of arrow2 happening in https://github.com/rerun-io/arrow2/pull/2
I suggest we use it as arrow2 = { package = "re_arrow2", version = "0.18" }. That way we can keep using arrow2 in the code for a smaller diff.


Sourceforge support?

I'm wondering should I add it.
Or some other open source code hosting service.
If anybody knows any, feel free to suggest.

I'm not familiar with this, what are the benefits?

Sourceforge was a open source sharing platform used before github. https://sourceforge.net/
They were bought by some company and they implemented shady tactics like putting in search bar installers in the install files of binaries etc.
From what I gather they have cleaned their act and they still do host some open source projects there. Most projects migrated to GitHub obviously. But I thought there might be some value in this.
I've been busy lately. But I might have time to look at implementing this now. Might be fun too.

I'll skip this idea for now. But I'm willing to merge a PR if somebody is interested in coding this feature.