Voltronic Axpert VM III TWIN 6 kW no data

Hi, I am using esp8266 for communication with the Voltronic Axpert VMIII Twin 6 Kw. I can't get the complete data in ESPhome .. The wiring is done correctly, i tried various yaml codes including: main, 2424mse1, hms-3k-24v, pip8048, and they all have the same result ie no data. I tried with another code but it sends me back to then displayed data. I am wondering if there is a solution for this new model? Thank you.
these are the data obtained in Log
[22:20:13][D][uart_debug:158]: >>> "^P005PIq\xC2\x8B\r"
[22:20:15][D][uart_debug:158]: >>> "QPI\xC2\xBE\xC2\xAC\r"
[22:20:15][D][uart_debug:158]: <<< "(NAKss\r"
[22:20:17][D][uart_debug:158]: >>> "QDIq\e\r"
[22:20:17][D][uart_debug:158]: <<< "(230.0 50.0 0030 42.0 54.0 56.4 46.0 60 0 0 2 0 0 0 0 0 1 1 1 0 1 0 54.0 0 1\xFD\xD8\r"

@eruc Do you have any updates, did you manage to get it working?

@syssi I am experiencing the same issue on the same model.
Here is my log output when running the above test
[17:31:33][I][main:424]: Testing PI30/PI30MAX/PI30REVO/PI41 commands...
[17:31:33][I][main:427]: This is the set of commands supported by the pipsolar component!
[17:31:33][D][uart_debug:158]: >>> "QPI\xBE\xAC\r"
[17:31:33][D][uart_debug:158]: <<< "(PI30\x9A\v\r"
[17:31:34][D][uart_debug:158]: >>> "QDIq\e\r"
[17:31:35][D][uart_debug:158]: <<< "(230.0 50.0 0030 42.0 54.0 56.4 46.0 60 0 0 2 0 0 0 0 0 1 1 0 0 1 0 54.0 0 1 000\x9E`\r"
[17:31:35][D][uart_debug:158]: >>> "QFLAG\x98t\r"
[17:31:35][D][uart_debug:158]: <<< "(EkxDabdjlnuvyz\x8D}\r"
[17:31:36][D][uart_debug:158]: >>> "QMN\xBBd\r"
[17:31:36][D][uart_debug:158]: <<< "(MKS2-6000\x10\xD7\r"
[17:31:37][D][uart_debug:158]: >>> "QMODI\xC1\r"
[17:31:37][D][uart_debug:158]: <<< "(L\x06\a\r"
[17:31:38][D][uart_debug:158]: >>> "QPIGS\xB7\xA9\r"
[17:31:39][D][uart_debug:158]: <<< "(222.5 49.9 222.5 49.9 0289 0213 004 401 54.50 000   0038 00.0 000.0 00.00 00000 00010101 00 00 00000 010 0 00 0000O\xE1\r"
[17:31:39][D][uart_debug:158]: >>> "QPIRI\xF8T\r"
[17:31:40][D][uart_debug:158]: <<< "(230.0 26.0 230.0 50.0 26.0 6000 6000 48.0 48.0 48.0 56.5 56.5 9 030 010 0 0 2 9 00 0 0 54.0 0 1 000\x99\xB5\r"
[17:31:40][D][uart_debug:158]: >>> "QPIWS\xB4\xDA\r"
[17:31:40][D][uart_debug:158]: <<< "(100000000000000000000000000000000000\x15\xCF\r"
[17:31:41][D][uart_debug:158]: >>> "QT'\xFF\r"
[17:31:41][D][uart_debug:158]: <<< "(20230102075052\xC4\x16\r"

I just want to add that currently I am monitoring my inverter with a Raspberry Pi.
I am using the following settings -
qpiri=103
qpiws=40
qmod=5
qpigs=120
Hope this helps :-)

This (and other TWIN models) have longer QPIGS
I've made a change that exists, for example, in pip8048 branch that supports it
Use
external_components:
  - source: github://syssi/esphome-pipsolar@pip8048

It works for my PIP6048MT (which is the same as VM3 TWIN)

It works for my PIP6048MT (which is the same as VM3 TWIN)

It works for me with VM III Twin (24V, 4.2kW). Failed to compile initially, but after change to idf versus arduino and tweaking with version, this solution is finally working.

It works for my PIP6048MT (which is the same as VM3 TWIN)

It works for me with VM III Twin (24V, 4.2kW). Failed to compile initially, but after change to idf versus arduino and tweaking with version, this solution is finally working.
Hi, I have an Axpert VMIV Twin (48V, 6KW) with what I believe is the same issue of a long QPIGS response. I tried to use the pip8084 branch, but I encountered an error during compilation. I'm using the recommended version of esp-idf. What kind of tweaks did you make to get it working? Which version? Thank you in advance for helping me.

`
esp32:
board: esp32dev
framework:
type: esp-idf
version: recommended
external_components:

source: github://syssi/esphome-pipsolar@pip8048
refresh: 0s

uart:

id: uart_inv
tx_pin: GPIO1
rx_pin: GPIO3
baud_rate: 2400

pipsolar:

uart_id: uart_inv
id: inverter0
update_interval: 5s

binary_sensor:

platform: pipsolar
pipsolar_id: inverter0
add_sbu_priority_version:
name: "inv add_sbu_priority_version"
configuration_status:
name: "inv configuration_status"
scc_firmware_version:
name: "inv scc_firmware_version"
load_status:
name: "inv load_status"
battery_voltage_to_steady_while_charging:
name: "inv battery_voltage_to_steady_while_charging"
charging_status:
name: "inv charging_status"
scc_charging_status:
name: "inv scc_charging_status"
ac_charging_status:
name: "inv ac_charging_status"
charging_to_floating_mode:
name: "inv charging_to_floating_mode"
switch_on:
name: "inv switch_on"
dustproof_installed:
name: "inv dustproof_installed"
silence_buzzer_open_buzzer:
name: "inv silence_buzzer_open_buzzer"
overload_bypass_function:
name: "inv overload_bypass_function"
lcd_escape_to_default:
name: "inv lcd_escape_to_default"
overload_restart_function:
name: "inv overload_restart_function"
over_temperature_restart_function:
name: "inv over_temperature_restart_function"

backlight_on:
name: "inv backlight_on"
sensor:

platform: pipsolar
pipsolar_id: inverter0
QPIRI

grid_rating_voltage:
name: "inv grid_rating_voltage"
grid_rating_current:
name: "inv grid_rating_current"
ac_output_rating_voltage:
name: "inv ac_output_rating_voltage"
ac_output_rating_frequency:
name: "inv ac_output_rating_frequency"
ac_output_rating_current:
name: "inv ac_output_rating_current"
ac_output_rating_apparent_power:
name: "inv ac_output_rating_apparent_power"
ac_output_rating_active_power:
name: "inv ac_output_rating_active_power"
battery_rating_voltage:
name: "inv battery_rating_voltage"
battery_recharge_voltage:
  name: "inv battery_recharge_voltage"
battery_under_voltage:
  name: "inv battery_under_voltage"
battery_bulk_voltage:
  name: "inv battery_bulk_voltage"
battery_float_voltage:
  name: "inv battery_float_voltage"

battery_type:
name: "battery_type"
current_max_ac_charging_current:
  name: "inv current_max_ac_charging_current"
current_max_charging_current:
  name: "inv current_max_charging_current"
input_voltage_range:
  name: "inv input_voltage_range"
output_source_priority:
  name: "inv output_source_priority"
charger_source_priority:
  name: "inv charger_source_priority"

parallel_max_num:
name: "inv parallel_max_num"
machine_type:
  name: "inv machine_type"

topology:
name: "inv topology"
output_mode:
  name: "inv output_mode"
battery_redischarge_voltage:
  name: "inv battery_redischarge_voltage"

pv_ok_condition_for_parallel:
name: "inv pv_ok_condition_for_parallel"
pv_power_balance:
name: "inv pv_power_balance"
# QPIGS
grid_voltage:
  name: "inv grid_voltage"
grid_frequency:
  name: "inv grid_frequency"
ac_output_voltage:
  name: "inv ac_output_voltage"
ac_output_frequency:
  name: "inv ac_output_frequency"
ac_output_apparent_power:
  name: "inv ac_output_apparent_power"
ac_output_active_power:
  name: "inv ac_output_active_power"
output_load_percent:
  name: "inv output_load_percent"
bus_voltage:
  name: "inv bus_voltage"
battery_voltage:
  name: "inv battery_voltage"
  id: invvoltage
battery_charging_current:
  name: "inv battery_charging_current"
battery_capacity_percent:
  name: "inv battery_capacity_percent"
inverter_heat_sink_temperature:
  name: "inv inverter_heat_sink_temperature"

# sila, anern 4.2k
#pv_input_current_for_battery:
  #name: "inv pv_input_current_for_battery"
#pv_input_voltage:
  #name: "inv pv_input_voltage"

# vm III twin (sunlife, twin)
pv1_input_current:
  name: "inv pv_input_current_for_battery"
pv1_input_voltage:
  name: "inv pv_input_voltage"

battery_voltage_scc:
  name: "inv battery_voltage_scc"
battery_discharge_current:
  name: "inv battery_discharge_current"
battery_voltage_offset_for_fans_on:
  name: "inv battery_voltage_offset_for_fans_on"
eeprom_version:
  name: "inv eeprom_version"
pv1_charging_power:
  name: "inv pv_charging_power"

text_sensor:

platform: pipsolar
pipsolar_id: inverter0
device_mode:
name: "inv device_mode"
last_qpigs:
name: "inv last_qpigs"

last_qpiri:
name: "inv last_qpiri"
last_qmod:
name: "inv last_qmod"
last_qflag:
name: "inv last_qflag"
select:

platform: pipsolar
pipsolar_id: inverter0
output_source_priority:
id: inverter0_output_source_priority_select
name: inverter0_output_source_priority_select
optionsmap:
"Utility first": "POP00"
"Solar only": "POP01"
"Solar Battery Utility": "POP02"
statusmap:
"0": "Utility first"
"1": "Solar only"
"2": "Solar Battery Utility"

platform: pipsolar
pipsolar_id: inverter0
charging_discharging_control:
See MAX_Communication_Protocol_20200526.pdf page 18
name: "${name} charging discharging control"
optionsmap:
"111": "PBATCD111"
"011": "PBATCD011"
"101": "PBATCD101"
"110": "PBATCD110"
"010": "PBATCD010"
"100": "PBATCD100"
"001": "PBATCD001"
"000": "PBATCD000"
statusmap:
"111": "111"
"011": "011"
"101": "101"
"110": "110"
"010": "010"
"100": "100"
"001": "001"
"000": "000"

platform: pipsolar
pipsolar_id: inverter0
charger_source_priority:
name: ${name} charger_source_priority_select
optionsmap:

"Utility first": "PCP00"
    "Solar first": "PCP01"
    "Solar and utility": "PCP02"
    "Solar charging only": "PCP03"
  statusmap:

"0": "Utility first"
    "1": "Solar first"
    "2": "Solar and utility"
    "3": "Solar charging only"

platform: pipsolar
pipsolar_id: inverter0
current_max_ac_charging_current:
name: ${name} current_max_ac_charging_current_select
optionsmap:
"2A": "MUCHGC0002"
"10A": "MUCHGC0010"
"20A": "MUCHGC0020"
"30A": "MUCHGC0030"
"40A": "MUCHGC0040"
"50A": "MUCHGC0050"
"60A": "MUCHGC0060"
"70A": "MUCHGC0070"
"80A": "MUCHGC0080"
"90A": "MUCHGC0090"
"100A": "MUCHGC0100"
"110A": "MUCHGC0110"
"120A": "MUCHGC0120"
statusmap:
"2": "2A"
"10": "10A"
"20": "20A"
"30": "30A"
"40": "40A"
"50": "50A"
"60": "60A"
"70": "70A"
"80": "80A"
"90": "90A"
"100": "100A"
"110": "110A"
"120": "120A"

platform: pipsolar
pipsolar_id: inverter0
current_max_charging_current:
name: ${name} current_max_charging_current_select
optionsmap:
"10A": "MCHGC010"
"20A": "MCHGC020"
"30A": "MCHGC030"
"40A": "MCHGC040"
"50A": "MCHGC050"
"60A": "MCHGC060"
"70A": "MCHGC070"
"80A": "MCHGC080"
"90A": "MCHGC090"
"100A": "MCHGC100"
"110A": "MCHGC110"
"120A": "MCHGC120"
statusmap:
"10": "10A"
"20": "20A"
"30": "30A"
"40": "40A"
"50": "50A"
"60": "60A"
"70": "70A"
"80": "80A"
"90": "90A"
"100": "100A"
"110": "110A"
"120": "120A"`

external_components:

source: github://syssi/esphome-pipsolar@pip8048
refresh: 0s

Hi, sure! Sorry I'm really a newbie at these kinds of problems. I paste the compiler log, made with the home assistant esphome plugin.
logs_esphome-web-57072c_run (1).txt
I'm also posting the ESP32 test protocol log, in case it could be helpful. Thanks.
logs_esphome-web-57072c_logs (3).txt


manylinux2010 building fails

Hi,
I need to build the python wrapper for LCE.
I tried with the procedure described here without success.
I set the python version (3.7 in my case) and start the script .github/tools/release_linux.sh After a while I get the following errors:
ERROR: /root/.cache/bazel/_bazel_root/aa829f8eaa4f35b2fc6d736b3640d755/external/org_tensorflow/tensorflow/core/BUILD:1650:1: C++ compilation of rule '@org_tensorflow//tensorflow/core:framework_internal_impl' failed (Exit 4)
In file included from external/org_tensorflow/third_party/eigen3/unsupported/Eigen/CXX11/FixedPoint:46:0,
                 from external/org_tensorflow/tensorflow/core/framework/numeric_types.h:24,
                 from external/org_tensorflow/tensorflow/core/framework/allocator.h:26,
                 from external/org_tensorflow/tensorflow/core/framework/tensor.h:23,
                from external/org_tensorflow/tensorflow/core/util/batch_util.h:18,
                 from external/org_tensorflow/tensorflow/core/util/batch_util.cc:16:
The process ends up like this:
 ERROR: /tmp/lce-volume/larq_compute_engine/mlir/BUILD:263:1 C++ compilation of rule '@org_tensorflow//tensorflow /core:framework_internal_impl' failed (Exit 4)
 INFO: Elapsed time: 645.690s, Critical Path: 285.63s
 INFO: 800 processes: 800 local.
 FAILED: Build did NOT complete successfully
Here some data on my environment:

Debian 10 64 bit (VMWare virtual machine)
python 3.7
Docker installed and working (I successfully built lce_banchmark_model)
LCE source version is the latest (master branch)

Regards,
Bruno

Hi Bruno,
Thanks for your interest in LCE and for trying to build it. I just did the same steps on my machine in the same Docker container  (although with python 3.8) on the master branch, but I didn't get any error like this.
It might be possible that the compiler runs out of memory, because depending on the gcc version it can use more than 16 GB of RAM. Are there any other errors shown near this error that you got?
ERROR: /root/.cache/bazel/_bazel_root/aa829f8eaa4f35b2fc6d736b3640d755/external/org_tensorflow/tensorflow/core/BUILD:1650:1: C++ compilation of rule '@org_tensorflow//tensorflow/core:framework_internal_impl' failed (Exit 4)

If it is a memory issue, you could try creating a file .bazelrc.user in the compute-engine main directory and adding something like this to it:
build --local_ram_resources=HOST_RAM*.20
build --local_cpu_resources=2
startup --host_jvm_args=-Xmx1g

Let me know if that works!
Best regards,
Tom

Hi Bruno,
Thanks for your interest in LCE and for trying to build it. I just did the same steps on my machine in the same Docker container  (although with python 3.8) on the master branch, but I didn't get any error like this.
It might be possible that the compiler runs out of memory, because depending on the gcc version it can use more than 16 GB of RAM. Are there any other errors shown near this error that you got?
ERROR: /root/.cache/bazel/_bazel_root/aa829f8eaa4f35b2fc6d736b3640d755/external/org_tensorflow/tensorflow/core/BUILD:1650:1: C++ compilation of rule '@org_tensorflow//tensorflow/core:framework_internal_impl' failed (Exit 4)

If it is a memory issue, you could try creating a file .bazelrc.user in the compute-engine main directory and adding something like this to it:
build --local_ram_resources=HOST_RAM*.20
build --local_cpu_resources=2
startup --host_jvm_args=-Xmx1g

Let me know if that works!
Best regards,
Tom

Hi Tom,
The lack of memory was the problem indeed.
I played with .bazelrc.user and VM box and found a set-up that worked for me.
I increased the VM memory from 4GB to 8GB and set the Bazel parameters as follows.
build --local_ram_resources=HOST_RAM*.80
build --local_cpu_resources=2
startup --host_jvm_args=-Xmx2g

Many thanks for your help.
Kind Regards,
Bruno

Hi Tom,
The lack of memory was the problem indeed.
I played with .bazelrc.user and VM box and found a set-up that worked for me.
I increased the VM memory from 4GB to 8GB and set the Bazel parameters as follows.
build --local_ram_resources=HOST_RAM*.80
build --local_cpu_resources=2
startup --host_jvm_args=-Xmx2g

Many thanks for your help.
Kind Regards,
Bruno

Great to hear that! If you have any other issues, feel free to open another GitHub issue.

Great to hear that! If you have any other issues, feel free to open another GitHub issue.


Build consistency fixes

Fixed bgfx/bx flag with https://github.com/BabylonJS/bgfx.cmake/pull/68

@CedricGuillemet I can't approve my own PR, but I reviewed the changes you made and it looks good to me.


Added timestampFormat to default style options

Fixes #2217
Changelog Entry
Added timestampConfig option to the default style options, by @tdurnford, in PR #2295
Description
Added timestampConfig to the default style options. The developer can toggle the option between 'relative' and 'absolute' - the default is 'relative'.
Specific Changes
Created an AbsoluteTime component and added the ability to switch between absolute and relative time.

[x] Testing Added

ESLint failed, easy to fix:
botframework-webchat-component: /home/vsts/work/1/s/packages/component/src/Utils/AbsoluteTime.js
botframework-webchat-component:   14:5  error  Prefer React.Fragment over fragment shorthand  react/jsx-fragments

After ESLint succeeded, it will run npm test. It didn't run any tests right now, so, embrace for the test result!

Coverage increased (+0.06%) to 66.21% when pulling 38c64d7ffc40515742b8cfc2c746af8778796722 on tdurnford:2217 into 0ebc227913f8d810d6c444197d7a0fc997593a5e on microsoft:master.


Add an option to run the UI on IIS on VMs

Is your feature request related to a problem? Please describe.
I'd like to demo using this application and chaos studio / load testing on IAAS workloads.
Describe the solution you'd like
I'd like to move the React UI from App Service to IIS on IAAS VMs. There should be a parameter flag, similar to the private endpoints one to say whether it should be deployed on IAAS/PAAS.

[ ] #2
[ ] Create bicep code to deploy three IIS VMs across 3 AZs
[ ] Create a load balancer in front of the VMs to distribute traffic
[ ] #4

App Insights enablement


Remove hardcoding of static assets from the templates

Currently the url of static assets are hardcoded which is not a good practice. Replace with {% static '/path/to/asset.jpg' %} wherever the url of static asset is hardcoded

@rapperdinesh  Are you working on this issue ?

it will take a some time as it involves Django(learning currently). I am catching up tutorials(about "views" and other libraries+syntax). But I will complete it soon.

yes working on it....

Made a PR on this issue. plz review it


Attempt to fix git init problem in publishing

This PR was designed to solve the restart problem when using k8s with mounted repo folder (destination . is not empty) after restart (from healthcheck for example)
I checked it on local minikube with emptydir mount to make sure it works.
The bug defer the repo creation part and skip it if the repo folder exists and is not empty


application.screenupdating = false not working(Office 365 Mac)

Unfortunately application.screenupdating = false is not working with Office 365 for Mac.
Only the data in the grids are not shown, everything else is updated so it doesn't increase the speed of my macros any more. When merging 1.000 different Workbooks to a single Worksheets this brings me in real troubles!

@zechn  Hi, this is a bug in the product, not the documentation correct? Sorry this reply is so late. I inherited this repo only recently and am slogging through the backlog. Let me know if there's a topic you suggest I update. Please open an new issue and tag me! Thanks<EMAIL_ADDRESS>


Add missing call to parent constructor in SimulationDataset

The SimulationDataset was missing a call to the parent StreamingDataset constructor, which led to errors when accessing attributes that are set in that constructor, such as epoch_seed_change:
AttributeError: 'SimulationDataset' object has no attribute 'epoch_seed_change'
Traceback:
File "/home/scott/projects/streaming/.venv/lib64/python3.12/site-packages/streamlit/runtime/scriptrunner/exec_code.py", line 88, in exec_func_with_error_handling
    result = func()
             ^^^^^^
File "/home/scott/projects/streaming/.venv/lib64/python3.12/site-packages/streamlit/runtime/scriptrunner/script_runner.py", line 579, in code_to_exec
    exec(code, module.__dict__)
File "/home/scott/projects/streaming/simulation/interfaces/sim_ui.py", line 409, in <module>
    submit_jobs(shuffle_quality, dataset, time_per_sample, node_internet_bandwidth,
File "/home/scott/projects/streaming/simulation/interfaces/sim_ui.py", line 110, in submit_jobs
    for output in gen_sim:
                  ^^^^^^^
File "/home/scott/projects/streaming/simulation/core/main.py", line 110, in simulate
    samples_per_node = dataset.get_samples_per_node(epoch, 0)
                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/scott/projects/streaming/simulation/core/sim_dataset.py", line 367, in get_samples_per_node
    partition = generate_work(self.batching_method, self, self.world, epoch, sample_in_epoch)
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/scott/projects/streaming/streaming/base/batching/__init__.py", line 45, in generate_work
    return get(dataset, world, epoch, sample_in_epoch)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/scott/projects/streaming/streaming/base/batching/random.py", line 49, in generate_work_random_batching
    shuffle_units, small_per_big = dataset.resample_streams(epoch)
                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/scott/projects/streaming/streaming/base/dataset.py", line 878, in resample_streams
    epoch, self.epoch_seed_change)
           ^^^^^^^^^^^^^^^^^^^^^^

Closes https://github.com/mosaicml/streaming/issues/831.

Hey @srstevenson, we actually don't want to call StreamingDataset's constructor here -- SimulationDataset is meant to run on single process unlike StreamingDataset so there's some logic that's different between the two init methods. The epoch_seed_change attribute not being present is because when that attribute was added to StreamingDataset it was not also added to SimulationDataset. Admittedly, this isn't the best design pattern. But yeah the immediate solution would be to copy over that logic from StreamingDataset to SimulationDataset.

Thanks, @snarayan21, that makes sense. I've marked this PR as draft for now, and will update it to set epoch_seed_change without calling the parent constructor.

@snarayan21 I've updated this to just set epoch_seed_change with the same logic as in the parent class, PTAL.


What about unrated?

I have added in CDS SupplierEntity a Whole Number (0 to 5) rating field, that works well but in the rating control, it shows 3 stars for Suppliers those unrated yet, while their numeric rating value is blank. It remains 3 stars even I set their numeric value 0. It starts working when I set their numeric value as 1. But 1 is a rating not unrated.
I think rating control needs to deal with unrated (0 numeric value) scenarios.

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

ID: 34ce9f69-404e-ba75-154e-ac12a69194f0
Version Independent ID: a03bcf39-f04e-3b15-0137-59270377501e
Content: Rating control: reference - PowerApps
Content Source: powerapps-docs/maker/canvas-apps/controls/control-rating.md
Service: powerapps
GitHub Login: @fikaradz
Microsoft Alias: fikaradz

That's a good point, I agree with you.
Unfortunately this cannot be done today.  We are currently reimplementing this control and will look to introduce this feature.

@YahyaManasrah Thanks for your feedback! Closing this issue.
cc: @fikaradz


fix: Use "." instead of getwd()

Feedback from PR #55 :  using "." is generally considered good practice because it makes the code more portable and easier to understand. When you use getwd(), it returns the absolute path of the current working directory, which can vary depending on the system or user running the script. This does not impact whirl code as the processing occurs in the temporary directory but would be great to align with good practice.

Checked main branch and all uses of getwd() left are cases where we do need the absolute branch.


chore: dconde-appstest1 to 0.0.1

chore: Promote dconde-appstest1 to version 0.0.1

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by:
To fully approve this pull request, please assign additional approvers.
We suggest the following additional approvers:
If they are not already assigned, you can assign the PR to them by writing /assign  in a comment when ready.
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment


(&CringeMeta) gen9chimerarandbats24: adding tour code

&CringeMeta: "adding tour code"
Created via Iolanthe on Fri, 07 Apr 2023 12:47:35 GMT.

(Test.)

I don't like it but...


[lve-tools] Support for Chat format in test.prompt files

The lve CLI should support parsing line-based Chat format directly from the test.prompt file.
E.g. a test.prompt file of the following format, should be equivalent to specifying it in the test.json file:
{"role": "system", "content": "You are a calculator that only answers in single number results"}
{"role": "user", "content": "What is {a} + {b}?"}

See 4e5797b for an implementation and the dummy lves there for the use.
Currently the "parser" guesses the used syntax from the content. However, we could also use file extensions to guide it.


Digital PUL?

Closes #223. I ran "Digital PUL" by @marvinmarvinb yesterday. He wasn't completely sold, but I think it's a better brand than Plum, so let's run with it for now.
Feedback welcome on the blurb.

Tests really want it to be called Plum.

fFxed (I think) and rebased. Didn't occur to me that that might have coverage.

:+1: (though I'm still hoping to come up with a backronym for POND)

Like Amelia Pond? Challenge on!
:tardis:

Well, I was thinking of upgrading the PUDL, but whatever floats your :boat:

Princeton ON Deposit

Princeton ONline Digitallibrary was the best I've come up with (though maybe that's a name for Pom, not Plum?)

or Display, but I don't really like display as our motivation...

Princeton ONline Discovery?

Yeah... not sure about that either. Plum and pom could probably share s
brand.
-Js
Sent via mobile. Please excuse typos, brevity, etc.

Though you know this is going to lead to trying to make a backronym for POCEAN for the next generation...

Backronym generator that changes the name every day?

Every day? Config file of backronyms with a random one selected per-request!

Oh, I was thinking a file of words starting with P O N & D
-Js
Sent via mobile. Please excuse typos, brevity, etc.


Voxels not generating

Able to select to select layers for the voxel, name, and chose density, but after pushing "Create", site goes to Voxels page, but no voxel or status update. Nothing generates even when left to sit for a while. Page throws two errors in console.
Uncaught TypeError: Cannot read property 'PropTypes' of undefined     at Object.exports.__esModule (react-bootstrap.js:1268)     at __webpack_require__ (react-bootstrap.js:30)     at Object.exports.default.target (react-bootstrap.js:1060)     at __webpack_require__ (react-bootstrap.js:30)     at Object.<anonymous> (react-bootstrap.js:794)     at __webpack_require__ (react-bootstrap.js:30)     at Object.exports.default.obj.__esModule.default (react-bootstrap.js:77)     at __webpack_require__ (react-bootstrap.js:30)     at react-bootstrap.js:50     at react-bootstrap.js:53 4:18 Uncaught TypeError: $(...).top is not a function     at HTMLDocument.<anonymous> (4:18)     at fire (jquery-1.11.3.js:3148)     at Object.fireWith [as resolveWith] (jquery-1.11.3.js:3260)     at Function.ready (jquery-1.11.3.js:3472)     at HTMLDocument.completed (jquery-1.11.3.js:3503)

Update: it works sometimes. maybe when it isn't working, the voxel is too big? In that case, it would be good to know what the limitations are.

Fixed here


UTC timestamps in Opta F7 no present before 08.05.2022

Currently, databallpy uses the following attributes from the Stat element of the Opta F7 XML:

first_half_start_utc
first_half_stop_utc
second_half_start_utc
second_half_stop_utc

From what I could find, these fields only exist for matches more recent than the 8th of May 2022.
I recommend using the non utc counterparts instead, as those exist in ALL datasets.
Moreover, the error thrown when these fields do not exist is not handled correctly.

The same thing is valid for the timestamp_utc attribute of the Event element from the Opta F24 XML.

Hi @rdghe and @DaanGro,
First of all thanks for looking into this and sorry I could not respond earlier, but I think something went wrong in the solution. As far as I can see the proposed solution code ignores time zones.
For the match on 2023-01-22 (winter time) everything is fine:
<Stat Type="first_half_start">20230122T133209+0000</Stat>
<Stat Type="first_half_start_utc">20230122T133209+0000</Stat>
For the match on 2023-04-07 (summer time) there is an hour difference:
<Stat Type="first_half_start">20230407T190136+0100</Stat>
<Stat Type="first_half_start_utc">20230407T180136+0000</Stat>
simply parsing the date with utc=True will result in wrong times. I think what is happening here is that times (without _utc) are localized to the headquarters of opta in England. UTC does not change with regard to summer and winter times, and is equal to the English time zone in the winter, but since the English timezone does change with regard to winter and summer times, in the summer UTC and English time are not equal.
I propose to use .dt.localize("Europe/London"), and then later changing it to dutch timezone.

@Alek050 I am not sure that I get your concern, the two datetime strings are parsed into equivalent datetime objects when using pd.to_datetime() with utc=True. To test that you can run the following example:
import pandas as pd

datetime_string_non_utc = '20230407T190136+0100'
datetime_string_utc = '20230407T180136+0000'

datetime_non_utc = pd.to_datetime(datetime_string_non_utc, utc=True)
datetime_utc = pd.to_datetime(datetime_string_utc, utc=True)

datetime_non_utc == datetime_utc

You will see that the output of the last statement is True, as both datetimes resolve to Timestamp('2023-04-07 18:01:36+0000', tz='UTC').

Aah thats right, the +0100 already indicates the timezone of course. Thanks for the explanation.


MacOS 12.1 (21C52) 安装报错

/usr/local/Homebrew/Library/Homebrew/os/mac/version.rb:32:in `block in from_symbol': unknown or unsupported macOS version: :dunno (MacOSVersionError)

手动安上了


Clean up import statements

These two import statements were hidden
in the main content below, but already
present in the beginning, i.e. they were
duplicate.

Split of from #140

@kba Feel free to add to this branch more code cleaning commits.

This looks ready now, right? I think, this should be fine to merge @kba.

I still have commits removing the __all__ = ...  in ocrolib/init.py and making the import * imports explicit but I'd prefer to test all the tools first. I'll post-pone those until CI and more tests.

Okay, thank you for the commits here!
You can open a new PR whenever the other commits are ready and tested.


chore: add linting config for javascript example

This commit applies our typical eslint/prettier settings to
the javascript example project.


Prepare 0.3.0 release

Signed-off-by: Daniel Egger<EMAIL_ADDRESS>

r? @burrbull
(rust_highfive has picked a reviewer for you, use r? to override)

bors retry


⚠ Zoom Overall has degraded performance

In 35cc3f1, Zoom Overall (https://status.zoom.us/api/v2/status.json) experienced degraded performance:

HTTP code: 200
Response time: 146 ms

Resolved: Zoom Overall performance has improved in 7f4243b.


investigate jwt for saucelabs integration in PRs

Apparently, using json web tokens, we can run our browser tests (on SauceLabs) on pull requests.  Currently, we're not doing this, because security.
Not sure when Travis-CI introduced its JWT addon, but we should be able to leverage it.

this will be closed by #2861

Did this end up happening in the Sauce launcher consolidation, or do we still need to give it a try?

@ScottFreeCode I haven't looked at JWT, no.

This has surfaced again from tests passing on PR but causing master to fail. I can have a go.

The JWT addon is deprecated and will be discontinued on April 17, 2018.


Outline view doesn't remember sizing between restarts

Steps to Reproduce:

Enable centered layout mode
Resize outline menu
Restart and outline menu will be near top of the page

Thanks
VSCode-Go: 0.11.0
Version: 1.35.1
Commit: c7d83e57cd18f18026a8162d042843bda1bcf21f
Date: 2019-06-12T14:27:31.086Z
Electron: 3.1.8
Chrome: 66.0.3359.181
Node.js: 10.2.0
V8: 6.6.346.32
OS: Linux x64 4.15.0-47-generic

This is caused by centerEditorLayout function which internally calls layout which calls saveViewSizes from viewsViewlet.ts that saves the size of the outline view which occupies the whole explorer-viewlet space because the explorer-folders-view is still not created.
Created a PR to make centerEditorLayout not call layout, not sure if this is the right fix but it seems to not break anything.


add uart to usb bridge to make it one stop solution for usb -> common io

Used some MIT licensed code to add usb->uart function. Added 2 cdc usb interface corresponding to the 2 uart hardware in pico.
The debug is disabled all the way so that it does not pollute uart0.
It is also possible to add one additional cdc interface so that the debug can be run independently of the uart, but one downside is that the host might not be able to connect to the cdc interface when pico boots. But I am open to suggestions/request for this feature.

Thanks for this PR, I don't know when I get a chance to look at it in detail but this gives me an incentive to finish this project and do a release. I wished I had done this project on Pi Zero instead to get USB2 throughput which is helpful especially for SPI so that's the reason I haven't returned to complete the project.
I'm currently working on a project that will take some time to finish so I don't know when I can return to this project.
One thing I can give feedback on now is that I want to keep one uart for debugging output, so only 1 CDC. I did a quick look to see if I could use PIO as a debug uart, but it adds more complexity with little gain and there are other projects that are multi uart bridges that can be used if more uarts are needed.

Thanks for this PR, I don't know when I get a chance to look at it in detail but this gives me an incentive to finish this project and do a release. I wished I had done this project on Pi Zero instead to get USB2 throughput which is helpful especially for SPI so that's the reason I haven't returned to complete the project.
No MCU can achieve full 480M speed.

One thing I can give feedback on now is that I want to keep one uart for debugging output, so only 1 CDC.
The default behavior is to bind stdout to uart1. And currently, uart1 is  relayed to cdc1. If you need debug output, just redefine LOG1/LOG2 macro, it just outputs to cdc1 and also outputs to pin0/1(uart1_tx/rx pins). Uart2 is relayed to cdc2, which operates independantly.

In addition to these two 2 cdcs, it is also possible to add another cdc and bind stdout to it as debug output. The only downside is that the usb host might not have enough time to open the /dev/cdcacm* before pico prints early boot messages. It will correctly show debug mesg afterwards (maybe just 1 sec after cdcacm is found by host).

I did a quick look to see if I could use PIO as a debug uart, but it adds more complexity with little gain and there are other projects that are multi uart bridges that can be used if more uarts are needed.
Two ways: 1. use pio to define a uart interface. I saw people implement a usb host.  2. just borrow some soft serial library exists in arduino.

I did end up writing my own uart code for several reasons:

uart_write_bytes() has a bug, it has to use memove not memcpy. This is an indication that the code has not been used/tested much.
Use of blocking mutex in an interrupt function. In general this is bad, if it's ok in this instance there should be a comment explaining why.
FIFO is disabled, no explanation as to why.
The code is rather complex with the buffering and my testing has shown that the RX FIFO is big enough on its own.
Running on 2 cores adds complexity wrt locking. Locking is hard to get right. And AFAIK tinyusb doesn't use any locking primitives on RP2040, so how can the stack run on of both cores safely? At least that would require a comment explaining why it's safe in case the tinyusb internals change in the future.

I've kept support for 2 uarts, pinmuxing happens on first use and it stays even if the port is closed. I was unsure if I should release the pins, but I guess if you use the uart then you want the pinmuxing to stay. It can be changed later if people think otherwise.
I've used your other patches, thanks for your work on this!


[VS Code] Joining collaboration session: Collaboration session not found.

%0A%0A%23%23 Error:%0AJoining collaboration session: Collaboration session not found.%0A%0A%23%23 Steps to Reproduce:%0A1.%0A2.%0A%0A||Version Data|%0A|-:|:-|%0A|**extensionName**|VSLS|%0A|**extensionVersion**|1.0.182|%0A|**protocolVersion**|2.2|%0A|**applicationName**|VSCode|%0A|**applicationVersion**|1.34.0|%0A|**platformName**|Windows|%0A|**platformVersion**|10.0.17134|

This is by design, looks like the host unshared. @setaskin Another instance where we don't want to show report a problem.


Flow Traits are now stored locally for every user

Breakpoints state (node and pins) was not serialized and after launching editor all breakpoints was disabled.

Yes, this is intended behavior. It would serialize the Enabled property, it would make it possible to submit assets with enabled breakpoints to the repository. That would later infuriate other team members - suspending the game out of the blue. So they would disable breakpoint and submit to the repository. It would be a vicious cycle.
That's why blueprints only save "a breakpoint was placed here", but not an "Enabled" state.
Thus I cannot accept change in this form. I would gladly take it in, if you would find a way to keep this state as local, user-specific data. Not as information serialized to the game asset itself.

Thanks for your quick response!
Yes, very good argument for not making this serializable. I will try to find the way how it is done in Blueprints and implement this properly.

Moved traits from UFlowGraphNode to UFlowGraphEditorSettings, which is using config EditorPerProjectUserSettings, so now traits will not be part of an asset. I decided to store them per node, as it was previously. Also enum EFlowTraitType was added to leave possibility to easily add new trait in future. Previously it was enough to add new UFlowGraphNode member FFlowPinTrait Something;, but now it is not the case anymore, so I decided enum would be optimal solution. All functions to work with traits now contained in UFlowDebuggerSubsystem as static functions, FFlowDebugTrait can be modified only by UFlowDebuggerSubsystem.
For reference was taken UBlueprintEditorSettings and FKismetDebugUtilities.
Tested scenarios:

Add/remove/toggle/disable breakpoints and restarting editor - everything restores as it should
Remove all breakpoints - PerNodeSettings map is cleared in config
Delete pin/node with added breakpoint - breakpoint is deleted from PerNodeSettings
Rename pin (regular and context pins) - new pin is generated and new one is created, so breakpoint is deleted with the old one
Breakpoint actions on ghost nodes (with unset or deleted UFlowNode) - everything work as for normal node
Breakpoins are not duplicated when duplicating node/graph

It is very easy to add new trait types. For example, we want to add "Log" trait, which will print to log node/pin execution.
First we need to add new type to the EFlowTraitType:

then we need to define how this trait will work:

and create and bind all corresponding UI actions
And after adding Log trait to some nodes and pins we get this result:

Of course new trait will require some visual representation and organizing its actions in context menu, but I think it is not urgent right now.

Hi, please grab the latest changes as this change has merge conflicts with just accepted Flow AddOns.

Updated!


Update go-openapi runtime

This fixes the runtime setting the Transfer-Encoding: chunked header in cases where it did not need to.
Fixes #39

lgtm


netcoredbg: 1.2.0-825 -> 2.0.0-895

Description of changes
ZHF: https://github.com/NixOS/nixpkgs/issues/172160
Failed build: https://hydra.nixos.org/build/173937987/nixlog/1/tail
Build failed with complaint about unknown std::numeric_limits constant, because on older gcc versions  header was implicitly included and now it does not (https://gcc.gnu.org/gcc-11/porting_to.html#header-dep-changes)
Things done
Added a small patch with  include and also bumped versions of netcoredb and dotnet-sdk.

Built on platform(s)

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

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] 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/)
22.05 Release Notes (or backporting 21.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
[ ] (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes

[ ] Fits CONTRIBUTING.md.

ping https://github.com/orgs/NixOS/teams/nixos-release-managers

Result of nixpkgs-review pr 172551 run on x86_64-linux 1

1 package built:

netcoredbg


When I use zen, nothing is displayed on the homepage. Is this normal?

Description
I added some custom rules, but I can’t see any prompts on the software homepage.
In addition, can I add rules to block ads that appear when YouTube plays videos?
Version
0.3.0
Operating System
win11
Steps to Reproduce
No response
Additional Context
No response

Doesn't seem to be right, do you mind sharing a screenshot?"
Regarding the YouTube ads - there are plans to implement more powerful in-browser blocking, but I haven't gotten around to it yet.


How to get dependencies?

The build fails for me, probably due to missing libraries:
g++ -Wl,-O1 -Wl,-O1,--sort-common,--as-needed,-z,relro,-z,now -o ../bin/qvgeapp main.o qvgeMainWindow.o qrc_qvgeapp.o moc_qvgeMainWindow.o   -L/home/papa/aur/_graphdb/qvge/src/qvge/src/qvgeapp/../lib -lcommonui -lqvge -lqvgeio -lqtpropertybrowser -lqsint-widgets -logdf -lQt5X11Extras -lX11 /usr/lib/libQt5OpenGL.so /usr/lib/libQt5PrintSupport.so /usr/lib/libQt5Widgets.so /usr/lib/libQt5Gui.so /usr/lib/libQt5Xml.so /usr/lib/libQt5Network.so /usr/lib/libQt5Core.so /usr/lib/libGL.so -lpthread
/usr/bin/ld: cannot find -lcommonui
/usr/bin/ld: cannot find -lqvge
/usr/bin/ld: cannot find -lqvgeio
/usr/bin/ld: cannot find -lqtpropertybrowser
/usr/bin/ld: cannot find -lqsint-widgets
/usr/bin/ld: cannot find -logdf

I've just found ogdf, but where may I get

commonui
qtpropertybrowser
qsint-widgets

from?

Hello,
All these libraries should be built before the main application (they are under src/3rdParty).
You have to call "qmake -r qvgeapp.pro" out of src directory first, then make.

Oh, thanks.

@ArsMasiuk How do I build it when I already have libogdf installed system-wide? Can I skip somehow and not mess with different versions "my" and "supplied"??


Remove test Data

There is a lot of testing Data inside the instances. f.i.: Walks and "Orte"

This is related to #16

do you mean to delete all test data and keep the test teams and users as they are right now? Is it sufficient to delete this data with phpmyadmin? If we make an new deployment, all testdata will be deleted anyway... and "fresh start data" will be available.

just keep teams, users and tags?

Yes keep it for an easy Start for newbies

Also added SystemicQuestions to test data cause at least one is needed to create a walk.


Update destination service to send NoEndpoints updates

In this branch I'm updating the destination service to start sending NoEndpoints events when a client subscribes, and when a service no longer exists.
The destination service code isn't heavily tested, but I manually verified this change using the destination-client script.
If I subscribe before a service exists, and then create the service, I see the following events:
$ ./bin/go-run controller/script/destination-client -path books.default.svc.cluster.local:7002
INFO[0000] NoEndpoints:
INFO[0000] - exists:false
INFO[0000]
INFO[0023] Add:
INFO[0023] - <IP_ADDRESS>:7002
INFO[0023]
INFO[0025] Add:
INFO[0025] - <IP_ADDRESS>:7002
INFO[0025]
INFO[0025] Add:
INFO[0025] - <IP_ADDRESS>:7002

When I then delete the service, I see:
INFO[0044] Remove:
INFO[0044] - <IP_ADDRESS>:7002
INFO[0044]
INFO[0044] Remove:
INFO[0044] - <IP_ADDRESS>:7002
INFO[0044] - <IP_ADDRESS>:7002
INFO[0044]
INFO[0046] NoEndpoints:
INFO[0046] - exists:false

Whereas if I subscribe after the service has already been created, then I see the following events:
$ ./bin/go-run controller/script/destination-client -path books.default.svc.cluster.local:7002
INFO[0000] NoEndpoints:
INFO[0000] - exists:true
INFO[0000]
INFO[0000] Add:
INFO[0000] - <IP_ADDRESS>:7002
INFO[0000] - <IP_ADDRESS>:7002
INFO[0000] - <IP_ADDRESS>:7002

When I then delete the service, I see:
INFO[0009] Remove:
INFO[0009] - <IP_ADDRESS>:7002
INFO[0009]
INFO[0009] Remove:
INFO[0009] - <IP_ADDRESS>:7002
INFO[0009] - <IP_ADDRESS>:7002
INFO[0009]
INFO[0010] NoEndpoints:
INFO[0010] - exists:false

Fixes #563.

I think this makes sense.  Just out of curiosity, does this mean that every stream will always start with a NoEndpoints message?  Is it necessary to send the initial NoEndpoints message if the service does exist?  Is there a semantic difference between NoEndpoints{exists=true} and the absence of any messages?  As far as I understand, in both of those cases the client should not fall back to DNS.

@adleong I should have linked to it in the PR description, but there's a longer description of this API in #564, here: https://github.com/runconduit/conduit/pull/564/files#diff-f2176355288276a6d05ceb390603f5e9R13

Thanks!  According to that description, NoEndpoints(true); add is equivalent to add so I'm not sure I understand why we send the NoEndpoints(true) at all.

Thanks! According to that description, NoEndpoints(true); add is equivalent to add so I'm not sure I understand why we send the NoEndpoints(true) at all.

I created the original design specifically to allow NoEndpoints(exists) to be sent as the first message by the Destination server, regardless of the value of exists, because I thought that simplifies the implementation of the Destination service. However, based on the discussion in #573, I'm going to revise the protocol so that we can't take that shortcut by disallowing NoEndpoints(true) when there are >0 endpoints.


Update CODEOWNERS

Thanks for the catch @raphael-theriault-swi!  One more review please :)

Phew 🙈 , thank you @raphael-theriault-swi !


Smooth PSTH in test_network

The standard deviations of PSTH values are too variable to be a reliable test. So the PSTH's should be convolved with a Gaussian kernel first

Probably a measure based on CV would be better than PSTH


Getting error "unable to convert 10.16 to a codename"

Hi,
when Karumi Shot is trying to save screenshots on MAC OS  11.5.2, I'm getting this error unable to convert 10.16 to a codename.
Any idea of what it could be?
Thanks

First time I see this error @xyzwilliamxyz could you please provide a sample project reproducing the error?

Hi @pedrovgs, thanks for the reply. I think this issue was related to something in the current state of the OS which was not working properly with some other library used under Shot (I saw this message in other places through the internet). After formating the OS, it started working again. I think we can close this issue.

Hi @pedrovgs, thanks for the reply. I think this issue was related to something in the current state of the OS which was not working properly with some other library used under Shot (I saw this message in other places through the internet). After formating the OS, it started working again. I think we can close this issue.

Ok, thanks for the info @xyzwilliamxyz


Prevent horizontally scrolling wide chars erasing themselves

When the buffer contains wide characters that occupy more than one cell,
and those cells are scrolled horizontally by exactly one column, that
operation can result in the wide characters being completely erased.
This PR attempts to fix that bug, although it's not an ideal long term
solution.
Although not really to blame, it was PR #13626 that exposed this issue.
The root of the problem is that scrolling operations copy cells one by
one, but wide characters are written to the buffer two cells at a time.
So when you move a wide character one position to the left or right, it
can overwrite itself before it's finished copying, and the end result is
the whole character gets erased.
I've attempt to solve this by getting the affected operations to read
two cells in advance before they start writing, so there's no risk of
losing the source data before it's fully output. This may not work in
the long term, with characters wider than two cells, but it should at
least be good enough for now.
I've also changed the TextBuffer::Write call to a WriteLine call to
improve the handling of a wide character on the end of the line, where
moving it right by one column would place it half off screen. It should
just be dropped, but with the Write method, it would end up pushed
onto the following line.
Validation Steps Performed
I've manually confirmed this fixes all the test cases described in
#14626, and also added some unit tests that replicate those scenarios.
Closes #14626

So when you move a wide character one position to the left or right, it can overwrite itself before it's finished copying, and the end result is the whole character gets erased.

for some reason this is hilarious to me. Like, of course it does, classic wide char code 🙃


Fixed missing UUID for FakeGatoHistory service.

The exported service FakeGatoHistory has no UUID assigned.

Hi, are you getting any specific issue with the present code? The UUID for Fakegato service is already set at line 146 (and line 132 for Plarform API). I suppose the line you modified is a leftover from some code refactoring.

Hi,
the UUID set in line 132 is actually the UUID of the class FakeGatoHistoryService which is not exported. The only exported class FakeGatoHistory never receives an UUID.
Yes, I had a specific error fixed with that: I'm trying to integrate your service into the homebridge-shelly plugin, which uses following pattern to access services:
get service() {
    return this.platformAccessory.getService(FakeGatoHistoryService)
}

As the getService method of homebridge tries to access the static UUID of the service, the service was never returned, as the exported class of your module did not have any UUID assigned.

Also to remove the service from an accessory the UUID is quite handy:
for (const s of this.platformAccessory.services) {
  if (s.UUID == FakeGatoHistoryService.UUID) {
    this.platformAccessory.removeService(s)
  }
}

As I said, UUID is also already set for FakegateHistory at line 146.
Then it is set for FakegatoHistoryService at line 132 if needed (see function registerEvents).
This section has not been changed for a long time and a long time, and no issue has been reported so far, so it’s very strange.
Did you check in debug if you are entering these two lines, depending on whether your accessory is platform or accessory type? Which version of homebridge are you using? Could you share your code? @NorthernMan54 could you have a look at this?

I've just checked in debug with both a platform and an accessory type plugin, and in both cases UUID for FakegatoHistory service is set by line 146
super(accessory.displayName + " History", FakeGatoHistoryService.UUID);
And it has to be, otherwise Eve would not recognize the service. So I can only suppose that for some reasons that line is skipped or not working as expected in your setup. I'm on homebridge 1.5.3, but I suppose many other users are already on 1.6.0. Please debug and check around that line.

@8191 I just checked my running implementation and the history service is created correctly

Am thinking this line might be a typo from a few years ago
To get the internal representation of the service from Homebridge you can run this against your environment
https://github.com/NorthernMan54/homebridge-alexa#homebridge-accessory-dump

Thanks for having a look into this, @simont77 @NorthernMan54! In the meanwhile I found out, that the problem is maybe something else than the missing UUID: the HistoryService cannot be correctly deserialized when starting homebridge. It's being deserialized as a Service instead of as a HistoryService. I believe that caused my problem, but I've fixed that in a different way...


[Plugin] Sphinx documentation support

Summary
It would be great to have a plugin that can compile an publish Sphinx documentation to a Backstage server. A lot of python code is already documented with Sphinx, which also is well integrated with code.
Project website
https://www.sphinx-doc.org/en/master/

Hi @igor-petrik-invitae thanks a lot for opening this issue with a suggested plugin for Sphinx documentation. To understand the use case a bit better, is your experience that Sphinx is mainly used for API documentation? Or other types of documentation too? I'm curious as we do have the API plugin, as well as the TechDocs plugin and if Sphinx documentation can be integrated in any of those or if you think its more valuable as a separate plugin?

is your experience that Sphinx is mainly used for API documentation?

I've been exploring Backstage and TechDocs and landed here.  Although Sphinx and RST are not Python specific, it's probably much more popular in the Python community than elsewhere.  There are tons of documentation written in RST and AFAIK, Sphinx is the only static site builder that consumes RST.  It can consume MD too with plugins.  Probably one of the most popular open source documentation sites using Sphinx+RST is ReadTheDocs.
Sphinx is used for both prose and API documentation and it has many extensions (both built-in and third party) to automatically extract API docs from Python code, especially when type hinting is added and docstrings are written in a standard format.
That said, in all honesty MD is way more popular of a source format and in my own doc solution we're debating whether to continue to support RST.  The biggest unanswered question atm is what to do about Python API docs.  We'd need both that functionality and the high quality docs that current solutions provide.
(I'm personally a fan of Sphinx and RST, but I've been a user of them for a very long time, and it's also a maintenance burden to support multiple formats and builders.)

@warsaw Thanks for providing that perspective, very valuable!

what to do about Python API docs

Would something like a build time extension like https://github.com/mkdocstrings/mkdocstrings or alternatively a render time "addon" on top of TechDocsm that let you embed code from any repo, help you solve your needs do you think?
Would you still prefer having the API docs as a part of the rest of your technical documentation (for example by using TechDocs) or as a separate thing but still close to the entity (for example by using the API Docs plugin)?

It's tricky with APIs I always think. Overview information about the API fits fine in a tool like TechDocs. But the actual reference information for the API - I feel - belongs close to the API commands. But you are asking about a separate plugin. Perhaps I am missing something, but I can see the sense of that in this case. To make everything homogenous, you would want to surface the documentation under Docs and, if relevant, in the software catalog. And then link the output up to search. So you'd be using the same framework as TechDocs - but making docs in another way. Am I correct here @emmaindal or confused?

I also landed here after a while of search. Following the "documentation as code" mantra, I also feel like it's preferable to have as much as the documentation as possible inside actual in-code docstrings in the source rather than in some orthogonal markdown file structure. This transcends public APIs as e.g. Sphinx documentation is also nice to document the high-level structure of code and responsibilities of classes, etc.
I was not even looking for backstage integrating Sphinx, it would probably be enough for me to just host and link the static HTML docs produced by Sphinx. Is something like this possible? I browsed the documentation and did some experiments, but I don't seem to get it to work.
The tipp with mkdocstrings of @emmaindal seems pretty helpful. I will try that when I have some time.

My original thought was an implementation was something along the lines of what @jjedele proposed.
To give perspective that may answer some of your other questions, Sphinx builds static pages from RST files that exist in a docs folder. These contain general documentation that I would say is analogous to the purpose of TechDocs. The convenient thing is, though, that integrates tightly with inline API documentation within the code itself, and can "import" these chunks of documentation throughout other parts of the code. This makes it convenient to not repeat yourself, while still having API documentation in both the docs and inline in the code.
Since Sphinx can already do all this work and generate static HTML files, I think it would be convenient for Backstage to provide a way to host these sites built by Sphinx in a way that is integrated into the rest of the platform.
One solution I had considered was using a custom Sphinx rendered to transpile Sphinx docs into markdown, and feed those into TechDocs, but this is less than ideal, since markdown lacks many of the features of RST, so a lot of the formatting would be lost.

Also, RST has build-time extension builtin with specific syntax for arbitrary logic in documentation (directives and roles), while Markdown is designed to be extended via HTML.  The recommended implementation for writing Markdown for Sphinx (MyST parser) added directives using the code-block Markdown syntax.
There are a few very large documentation built with Sphinx, namely parts of AWS and GCP docs, Linux kernel, MongoDB, Openshift, and more.
Also, Sphinx has a extremely powerful crossreference engine spanning over foreign documentation roots (see intersphinx), also making the crossreference way easier to maintain than anything built with Markdown-powered documentation engines. How Sphinx handles this is basically what is suggested in https://github.com/backstage/backstage/issues/14844. Sphinx also nicely integrates with Doxygen (C/C++,Java,C#,PHP,...).
I don't know much about techdocs' architecture, but along with the issue about enabling dbt, allowing different documentation engines could be interesting.

There are a few very large documentation built with Sphinx, namely parts of AWS and GCP docs, Linux kernel, MongoDB, Openshift, and more.

Don't forget, CPython's full documentation suite as well!

This would be a very welcomed addition to Backstage. Having Sphinx docsites generated, hosted and indexed for search by Backstage would be very useful.

Adding my voice to this too. I actually think the problem is more acute -- since Sphinx is creating a bunch of static files, I see the problem better phrased as 'TechDocs plugin should be publisher agnostic'. That is, I feel there should be a very basic client that can be pointed to, say, an S3 bucket and just told 'there's some static content there -- serve it!'. The implementation as it stands right now seems to be heavily reliant on the presence of the mkdocs.yml file in the remote storage location, but I don't understand why that should be a necessary component.

One way to possibly make this work is to build the sphinx docs to markdown and serve those as techdocs. Not sure if this works for all sphinx plugins etc. but might be worth a try. See https://github.com/clayrisser/sphinx-markdown-builder

One way to possibly make this work is to build the sphinx docs to markdown and serve those as techdocs. Not sure if this works for all sphinx plugins etc. but might be worth a try. See https://github.com/clayrisser/sphinx-markdown-builder

This would remove all the benefits of using Sphinx.  Markdown is designed to be an easy to write and simpler version of HTML for single-page articles, not full-fledged indexed documentations and is user-extensible like no markdown-esque engine can be.  You can alreay write Sphinx documentation with the MyST parser.
Backstage could be a game changer by hosting the static files AND adding the indices to its multi-site search engine (a multi-site search index is what is missing in Sphinx, but also out of its scope). The Sphinx search engine and database is always included in its built files (build-time indexation). What I am saying is that by doing less (and thus being less coupled), Backstage could do more.

@JimNero009 That is also my opinion, except one thing: the TechDoc Search plugin. By decoupling TechDoc from MkDocs we could certainly write a Sphinx-compatible collator with the existing documentation.
@drodil That would make using Sphinx and RestructuredText completly pointless. Mardown was designed for single page documents, extensible only using HTML (and CSS), and documentation system such as MkDocs need to find clever holes in the Markdown language specification to add features to it. On the other hand, RestructuredText was designed for extendability using roles and directives, which is clearly the feature we need for non-trivial documentation endeavors.
The MyST parser did a great job at fitting roles and directives in the Markdown language, but this is not usable by a general-purpose Markdown parser.
The only way to go for Backstage, is to decouple it from MkDocs. Sphinx (and other document processor) themes could be nice to have for a consistent user experience, as well as dedicated collator implementations.

https://github.com/backstage/backstage/issues/9172#issuecomment-1025684371
Just to expand on this. Sphinx also offers plugins for a ton of languages and a ton of things. Trying to cram all that functionality into mkdocs is almost certainly a loosing proposition.

#9172 (comment)
Just to expand on this. Sphinx also offers plugins for a ton of languages and a ton of things. Trying to cram all that functionality into mkdocs is almost certainly a loosing proposition.

I am the author of a few Sphinx extensions, namely defining mapping for HCL (Terraform) and Gherkin (Cucumber) and I fully agree

Sorry, started reclassifying this but changed my mind. Leaving it as a plugin for now


feat!: allow disabling modules

Adds the possibility within the core to disable a module easily. All command-related interactions will automatically be disabled when a guild disabled it, events will require manual handling.
Depends on #49.

 If anyone reads this, don't mind the commit history.

F* this pull request


[AutoPR advisor/resource-manager] Add C# SDK generation settings for Advisor

Created to sync https://github.com/Azure/azure-rest-api-specs/pull/3213

This PR has been merged into https://github.com/Azure/azure-sdk-for-go/pull/2156


Streamed Blob Upload not defined by spec

The spec declares that there are two modes of blob upload: monolithic and chunked. [0]
It goes on to describe that a chunked upload is done via PATCH. It states that the PATCH will include the Content-Range header.
However, the conformance tests seem to suggest a third type of blob upload: streamed [1]

This test case issues a single PATCH without Content-Range, followed by a closing PUT

It is unclear what this conformance test is for. I see the existence of a "streamed" upload specification previously[2], but I am not sure when it was removed. If "streamed" upload is indeed part of v1.0.0, the spec is not clear how it should be conducted.
Furthermore, whether or not "streamed" upload is part of the spec: I think the "chunked" section is ambiguous about whether the three request headers MUST be included (see quoted text below). It puts some requirements on the contents of these headers, but not their presence (at least not explicitly, anyway).
To upload a chunk, issue a PATCH request to a URL path in the following format, and with the following headers and body:

URL path: <location>

Content-Type: application/octet-stream
Content-Range: <range>
Content-Length: <length>

I apologize that I am not in a position to produce a PR to disambiguate this situation, but I am hoping someone can clear up my confusion, and I'd be happy to contribute to improving the spec (or conformance suite) if possible.
[0] https://github.com/opencontainers/distribution-spec/blob/main/spec.md?plain=1#L197
[1] https://github.com/opencontainers/distribution-spec/blob/main/conformance/02_push_test.go#L21
[2] https://github.com/opencontainers/distribution-spec/commit/92e1994a4f13cff06c03f11d86b40ade4ed92730#

This seems ubiquitous enough that it should probably be documented?

I don't understand why the OCI spec created its own "chunked" upload, using non-standard (at least to the HTTP RFCs) Content-Range values, when Transfer-Encoding: chunked exists... I wonder if this can be simplified in a future version of the specification.
In practice, barely anybody uses chunked uploads? I see mostly POST + monolithic PATCH + PUT. Doing multiple PATCH requests is slower and less robust. Also more work to implement: e.g. python's builtin urllib abstracts Transfer-Encoding: chunked away for large uploads, whereas this custom OCI chunked upload has to be implemented by hand (typically at the cost of performance, since urllib doesn't keep the connection alive between requests).


Convert Hook useState to useMemo

https://stackoverflow.com/questions/68853647/usememo-not-running-when-data-from-apollo-usequery-hook-returns-a-new-value-fo


allow '\0' '\n' in quoted columns

main addition is templating LineReader to allow it the following functionality: next_line() will stop on the first end_line char it finds. this is not ideal since quoted column may include a line_end char which will make the new_line() return prematurely. in addition, find_next_column_end() will return prematurely as will if it encounters a null-char inside a quoted column. my usage of this parser happens to include both end-line and null chars (and other non-ascii chars) inside quoted columns and I had to add those changes to make it work. I added a template argument [null_terminated] to the double-quote policy that by default will make it behave the same as before the change. but if changed to 'false', it will allow '\0' inside quoted column instead of throwing exception.  2. moved no_quote_escape policy up (compiler warning). 3. cast 2 methods to int to match return type. (also compiler warning)

If I understand the code correctly, then you do no do any Windows- to Linux-newline conversion inside quoted strings. This seems like a problem in the making.
Suppose you have an application that writes \n and expects \n when reading it in. Next somebody open the csv file under Windows using the wrong editor, change a single digit somewhere, and saves again. Now all Linux newlines got changed to Windows \r\n newlines. When reading the CSV file back in again, your program fails as it expects \n.
The typical Windows user is not aware of the \r\n and \n distinction. All he sees is your application failing. Now you get a cryptic "I change one number and the program broke!" bug report without any mention of Windows nor the editor used. I do not want to debug that.
Not allowing newlines in quoted seems bad at first, but it does prevent people from running into the problem above.
If the library supported automatic \r\n translation in strings, then I am certain that somebody would come with a usecase where this is the wrong behavior. This means that there should be a policy to do newline translation where \r\n -> \n translation should be the default.


Does this library have apis that deletes the image of registry?

Environment:

Jib version:
Build tool:
OS:

Description of the issue:
Does this library have apis that deletes the image of registry?
Expected behavior:
Steps to reproduce:

jib-maven-plugin Configuration:
PASTE YOUR pom.xml CONFIGURATION HERE

jib-gradle-plugin Configuration:
PASTE YOUR build.gradle CONFIGURATION HERE

Log output:
Additional Information:

Hi @Bryce-huang,
I'll assume you're talking about the Jib Core library, which is a general-purpose container-building library for Java. It's not just a Java library for the container registry API, and it doesn't have the functionality to delete an image (manifest and blobs) on a container registry. Hope this answers your question.

Perhaps crane from ggcr could work?
https://github.com/google/go-containerregistry

Hi @chanseokoh @loosebazooka
Thank you very much for your answers, but I am looking for a docker registry library implemented by java


GraphQL, Typescript and Node.js

I've created backend repo with graphql and typescript in node.
Current Status

Codebase WIP - https://github.com/huczk/realworld-ts-gql
Demo - https://realworld-ts-gql.herokuapp.com/graphql

Todo:

[x] 🏁Fork the starter repo & post the link in this issue
[x] 🎨 Create logo for repo
[x] 🔨 Implement all of Conduit's functionality per the spec & API
[ ] 👀 Peer review of final codebase by RealWorld admins & community (RFC)
[ ] 🎉Tag v1 release, move repo to main org, and officially list it on the README!

I have also made example frontend app than uses graphql api.
Fronted was made with reasonML and apollo client.
But I assume that firstly we must agreed upon graphql schema for all future graphql implementations then add backend apps.  Only then frontends can be added.

Hello, we moved the addition of new implementations to this website : https://codebase.show/projects/realworld
Please submit your implementation there.


authenticationInput.lastKnownUsername is hashed

I have created a cognito User pool. I have chosen to let the user to use an email address as their "username" to sign up and sign in ("Allow email checked")
When the user launch the mobile app, the login screen is presented and the login field is filled if a lastKnownUser exists :
extension SignInViewController: AWSCognitoIdentityPasswordAuthentication {

public func getDetails(_ authenticationInput: AWSCognitoIdentityPasswordAuthenticationInput, passwordAuthenticationCompletionSource: AWSTaskCompletionSource<AWSCognitoIdentityPasswordAuthenticationDetails>) {
        self.passwordAuthenticationCompletion = passwordAuthenticationCompletionSource
        DispatchQueue.main.async {
            if (self.username?.text == nil || (self.username?.text?.isEmpty)!) {
                self.username?.text = authenticationInput.lastKnownUsername
            }
        }
    }

The problem is that I get a hashed username  in lastKnownUsername instead of the email used by the previous user to log in
How can I get the mail of the lastKnownUsername or should I modify the Cognito settings ?
Thks

Hello @pdegouville
You should be able to get the username of the last authenticated user using this API http://aws.github.io/aws-sdk-ios/docs/reference//Classes/AWSCognitoIdentityUserPool.html#//api/name/currentUser.
Please try this and let us know if you run into issues.

Hi @cbommas,
The result i received from currentUser.username is still a Hash String?
Any idea how to get the original username ?
Thanks

You should call this function to get the email address in hash map task.result?.userAttributes
func getUserAttribute() {
        mPool?.currentUser()?.getDetails().continueWith(block: { (task) -> Any? in
            print("AWSCognitoManager getUserAttribute \(task.result?.userAttributes) ")
        })
    }

This looks like it is resolved. Open another issue if this is not resolved. Closed issues are not monitored.


0.3.10 error when authentication

Hello
Thanks for wonderful app!
I found a problem in it:
When I put correct token into api key field I get:
"VM313:2 Uncaught SyntaxError: Unexpected token < in JSON at position 1"
Investigation shows that server under /api-docs/ url returns HTML instead of JSON.  Downgrading to version 0.3.9 solved the issue.
Furthermore: installing only version 0.3.9 w/o reloading web page still shows the issue, so it seems like some headers are being sent incorrectly and trigger HTML response instead of JSON.

Hi, this is captured in #497. Thanks!


Drivers: Sensors: Bosch bmp390 merge into bmp388

Add support for Bosch bmp390 sensor, the drop in replacement for the bmp388 with same register but different chip-id. This patch make use of "bosch_bmp390" or "bosch_bmp388" and set the specific chip-id in a data->chip-id variable, which then used to check against the register value.
Additional, manual shift operation had been replaced with ENDIAN safe macros, and calibration values with target variable of int16_t add a cast for it.

Saw you reopened, gave it a quick peek. Mostly small things, very nice stuff 👍

Yes I had this weird situation that the command line git see my 4 files only differ from the fresh upgraded and merged main. And then when I pushed it I had 199 commits ahead and same time 196 synced. So I dropped it to save the other maintainers the "ah-- again".
Back to my development. Looking good, I fitted your review already but the twister #3 failed in a SPI test with a missing
auto generated macro. Line 4443 in the failure report. That is a cs-gpio not need to add this anywhere in the test/../spi.dtsi
Can you please have a look?

You gotta add a phandle here:
https://github.com/zephyrproject-rtos/zephyr/blob/main/tests/drivers/build_all/sensor/app.overlay#L141

You gotta add a phandle here: https://github.com/zephyrproject-rtos/zephyr/blob/main/tests/drivers/build_all/sensor/app.overlay#L141

You make my day. I go have a beer now and wait for the tests finish, cross fingers no big issues pop up and I can release the draft.

@faxe1008 , I'm testing the driver with SPI not working correct. The bmp390 return 0xff for the chip-id.
Find this when google:
https://github.com/esphome/feature-requests/issues/2680
the current implentation send (0x00|0x80) , 0xFF  with 0xFF is the dummy byte to receive the register. But the bmp390 hick up on it. We need a (0x00|0x80), 0x00 to make it work.

@faxe1008 , I'm testing the driver with SPI not working correct. The bmp390 return 0xff for the chip-id. Have my digital analyzer on it.  That can not work.

I got the 0xff dummy byte fixed , but the clock still stops ~30us and start again after a break.

@faxe1008 , I'm testing the driver with SPI not working correct. The bmp390 return 0xff for the chip-id. Have my digital analyzer on it.  That can not work.

I got the 0xff dummy byte fixed , but the clock still stops ~30us and start again after a break.

@faxe1008 , I'm testing the driver with SPI not working correct. The bmp390 return 0xff for the chip-id. Have my digital analyzer on it.  That can not work.

I got the 0xff dummy byte fixed , but the clock still stops ~30us and start again after a break.

Nice work. I'll wait to +1 since you're still debugging some runtime issues, but the code changes LGTM.

I running diagnostic with the nrf5340, and it looks like a problem in the chip. The spi_write_dt() works correct.
But the spi_transceive_dt somehow drop the clock and introduce a delay. This is problem I going to solve with Nordic.

Nice work. I'll wait to +1 since you're still debugging some runtime issues, but the code changes LGTM.

I found the issue, even with the gap can read the register properly. The original implementation to read the register via spi was wrong. Fixed and tested.

Changed the spi_read using rx and tx buffer same size to avoid clock stop and delay.
Please refer to https://devzone.nordicsemi.com/f/nordic-q-a/114484/zephyr-spi-on-nrf52---spi_transceive_dt-delay-between-bytes/501576

I rebase against latest main and solve the conflict in i2c.dtsi - once again.
Please review, Thanks.

Hi @MaureenHelm and @faxe1008
Was busy with other project related coding. Update to latest main and merge fix the conflicts and apply the clang changes. Please have a look and if happy please merge it. Thank you!

I'd rename anywhere the 388 is mentioned to 3xx for consistency.

I would do this in a second pull request where the file name would move from bmp388/bmp388*  to bmp3xx/bmp3xx*
with all variable in the code too.

Hmm, I'd prefer it if there was one atomic commit for it. Opinions of sensor maintainers (@yperess @teburd @MaureenHelm )?


Question: I don't know how to build using stack.

I would like to build using the stack.
What should I do?

Make Hoed a dependency of your project
Import Debug.Hoed in the module you want to debug
Add observe annotations to the functions you suspect of being faulty
Run stack ghci then evaluate runO e where e is the expression that returns an unexpected value

@MaartenFaddegon
Thank you for quick reply.
OK.I will be try below documentation example.
https://www.stackage.org/haddock/nightly-2017-09-26/Hoed-0.4.0/Debug-Hoed.html
This code is work?I think so that is there two main.
import Test.QuickCheck

isOdd :: Int -> Bool
isOdd n = isEven (plusOne n)

isEven :: Int -> Bool
isEven n = mod2 n == 0

plusOne :: Int -> Int
plusOne n = n + 1

mod2 :: Int -> Int
mod2 n = div n 2

prop_isOdd :: Int -> Bool
prop_isOdd x = isOdd (2*x+1)

main :: IO ()
main = printO (prop_isOdd 1)

main :: IO ()
main = quickcheck prop_isOdd

That is an example of a misbehaving program, QuickCheck is used to demonstrate that the program has a defect.
Starting from the counterexample prop_isOdd 1 you can find the defect by adding annotations as follows (copied from the documentation you link to):
import Debug.Hoed

isOdd :: Int -> Bool
isOdd = observe "isOdd" isOdd'
isOdd' n = isEven (plusOne n)

isEven :: Int -> Bool
isEven = observe "isEven" isEven'
isEven' n = mod2 n == 0

plusOne :: Int -> Int
plusOne = observe "plusOne" plusOne'
plusOne' n = n + 1

mod2 :: Int -> Int
mod2 = observe "mod2" mod2'
mod2' n = div n 2

prop_isOdd :: Int -> Bool
prop_isOdd x = isOdd (2*x+1)

main :: IO ()
main = printO (prop_isOdd 1)

Note though that the version released on Stackage does not include the graphical interface, but rather will ask you questions from the interpreter. I need to update the documentation to reflect this.

Thanks. above code is fine! But, I ran into another problem.
Start interpreter following command:
$ stack script ex3.hs --resolver nightly-2017-10-02
Using resolver: nightly-2017-10-02 specified on command line
=== program output ===

False

=== program terminated ===
Please wait while the computation tree is constructed...

=== Statistics ===

28 events
4 computation statements
4 nodes + 1 virtual root node in the computation tree
4 edges in computation tree
computation tree has a branch factor of 1.3333333333333333 (i.e the average number of children of non-leaf nodes)

=== Debug Session ===

hdb> help
help              Print this help message.
observe [regexp]  Print computation statements that match the regular
                  expression. Omitting the expression prints all statements.
adb               Start algorithmic debugging.
exit              leave debugging session

Now, I tried adb command.
hdb> adb
======================================================================= [0-0/4]
isOdd <?>

  = <?>

What mean<?> symbol?
And, what should I do after this?

The <?> symbol is used in special cases only (namely, when you ask the debugger not to trace values of a specific type).
Did you maybe changed the code I shared above? Because for me the debugging session with the above example is as follows:
[maarten@angua example]$ ghci example.hs
GHCi, version 8.0.2: http://www.haskell.org/ghc/  :? for help
Loaded GHCi configuration from /home/maarten/.ghci
[1 of 1] Compiling Main             ( example.hs, interpreted )
Ok, modules loaded: Main.
*Main> main
=== program output ===

False

=== program terminated ===
Please wait while the computation tree is constructed...

=== Statistics ===

28 events
4 computation statements
4 nodes + 1 virtual root node in the computation tree
4 edges in computation tree
computation tree has a branch factor of 1.3333333333333333 (i.e the average number of children of non-leaf nodes)

=== Debug Session ===

hdb> adb
======================================================================= [0-0/4]
isOdd 3

  = False
? wrong
======================================================================= [1-0/4]
plusOne 3

  = 4
? right
======================================================================= [1-1/4]
isOdd 3

  = False
? wrong
======================================================================= [1-1/4]
isEven 4

  = False
wrong
======================================================================= [2-1/4]
mod2 4

  = 2
? wrong
======================================================================= [3-1/4]
Fault located! In:
mod2 4

  = 2

My full source code:
# example.hs
import Debug.Hoed

isOdd :: Int -> Bool
isOdd = observe "isOdd" isOdd'

isOdd' n = isEven (plusOne n)

isEven :: Int -> Bool
isEven = observe "isEven" isEven'

isEven' n = mod2 n == 0

plusOne :: Int -> Int
plusOne = observe "plusOne" plusOne'

plusOne' n = n + 1

mod2 :: Int -> Int
mod2 = observe "mod2" mod2'

mod2' n = div n 2

prop_isOdd :: Int -> Bool
prop_isOdd x = isOdd (2 * x + 1)

main :: IO ()
main = printO (prop_isOdd 1)

$ stack script example.hs --resolver nightly-2017-10-09
Using resolver: nightly-2017-10-09 specified on command line
=== program output ===

False

=== program terminated ===
Please wait while the computation tree is constructed...

=== Statistics ===

28 events
4 computation statements
4 nodes + 1 virtual root node in the computation tree
4 edges in computation tree
computation tree has a branch factor of 1.3333333333333333 (i.e the average number of children of non-leaf nodes)

=== Debug Session ===

hdb> adb
======================================================================= [0-0/4]
isOdd <?>

  = <?>
? wrong
======================================================================= [1-0/4]
plusOne <?>

  = <?>
? right
======================================================================= [1-1/4]
isOdd <?>

  = <?>
wrong
======================================================================= [1-1/4]
isEven <?>

  = <?>
? wrong
======================================================================= [2-1/4]
mod2 <?>

  = <?>
? wrong
======================================================================= [3-1/4]
Fault located! In:
mod2 <?>

  = <?>

It remains <?>. Is something wrong?
Environment
$ stack --version
Version 1.5.1, Git revision 2a22d1577afb5aef6cf6f80255399cbfa16f7893 x86_64 hpack-0.18.1

$ cat /etc/lsb-release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=17.10
DISTRIB_CODENAME=artful
DISTRIB_DESCRIPTION="Ubuntu Artful Aardvark (development branch)"

This example project shows how to debug your Stack project with Hoed.
I am not quite sure why your stack script command behaves so strangely. For now I think you should consider stack script as not supported by Hoed.


Bump Log4j 2.17.0

Update for potential security issues
logj4 2.15.0 ->2.16.0
logj4 2.15.0 ->2.17.0

https://www.cisecurity.org/log4j-zero-day-vulnerability-response/
CVE-2021-45046, CVE-2021-4104

hello, when do you plan to release the package with log4j 2.17.0?


Fixes issue #575

Checks if player is dead before healing them, therefore preventing another death without respawning

I made changes from the wrong build, please don't consider this pull request


avscan can't work with network drive

Hi Anyone,
I don't know why avscan can't work with network drive.
I mapped drive Z as a network share drive. Then work on this drive, but avscan didn't capture any events.
Does anyone know about it? please help?
Thanks

Hi, pls check this:
https://github.com/microsoft/Windows-driver-samples/blob/ea026ed7e82fe5b45f0d978661e68c7f3249f3fc/filesys/miniFilter/avscan/filter/avscan.c#L371


Update clip_back.py

Return image embeddings

A few things to do here:

Put it under an option of the API so by default it doesn't get returned
check if the serialization is good
Run it (eg on a small index) to make sure it works

Could you do that ?

It's a little difficult and may take a few days. But I'll try my best.

Why close ?


Running it the second time it does not look like the wallet is actually deleted and recreated.
First, postgres logs do not show any "DROP" statements as the Indy SDK code would suggest. Second, debugging the AcaPy and breaking before the wallet should be recreated, I see that the tables in the wallet_db still exist.

Also in the context of aca-py provision the wallet does not seem to be recreated. Instead, I am receiving the error Error: Wallet with this name already exists
Traceback (most recent call last):
  File "/home/indy/aries_cloudagent/indy/sdk/wallet_setup.py", line 103, in create_wallet
    credentials=json.dumps(self.wallet_access),
  File "/home/indy/.pyenv/versions/3.6.13/lib/python3.6/site-packages/indy/wallet.py", line 61, in create_wallet
    create_wallet.cb)
indy.error.WalletAlreadyExistsError

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/home/indy/aries_cloudagent/commands/provision.py", line 52, in provision
    root_profile, public_did = await wallet_config(context, provision=True)
  File "/home/indy/aries_cloudagent/config/wallet.py", line 49, in wallet_config
    profile = await mgr.provision(context, profile_cfg)
  File "/home/indy/aries_cloudagent/indy/sdk/profile.py", line 163, in provision
    opened = await indy_config.create_wallet()
  File "/home/indy/aries_cloudagent/indy/sdk/wallet_setup.py", line 111, in create_wallet
    ) from x_indy
  File "/home/indy/aries_cloudagent/indy/sdk/wallet_setup.py", line 103, in create_wallet
    credentials=json.dumps(self.wallet_access),
  File "/home/indy/.pyenv/versions/3.6.13/lib/python3.6/site-packages/indy/wallet.py", line 61, in create_wallet
    create_wallet.cb)
aries_cloudagent.core.error.ProfileDuplicateError: Cannot create wallet 'lissi_agent_wallet', already exists: Error: Wallet with this name already exists
  Caused by: Plugin returned error

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/home/indy/.pyenv/versions/3.6.13/lib/python3.6/runpy.py", line 193, in _run_module_as_main
    "__main__", mod_spec)
  File "/home/indy/.pyenv/versions/3.6.13/lib/python3.6/runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "/home/indy/aries_cloudagent/__main__.py", line 74, in <module>
    main(sys.argv)
  File "/home/indy/aries_cloudagent/__main__.py", line 71, in main
    run(args)
  File "/home/indy/aries_cloudagent/__main__.py", line 64, in run
    run_command(command, args)
  File "/home/indy/aries_cloudagent/commands/__init__.py", line 37, in run_command
    module.execute(argv)
  File "/home/indy/aries_cloudagent/commands/provision.py", line 86, in execute
    loop.run_until_complete(provision(settings))
  File "/home/indy/.pyenv/versions/3.6.13/lib/python3.6/asyncio/base_events.py", line 488, in run_until_complete
    return future.result()
  File "/home/indy/aries_cloudagent/commands/provision.py", line 69, in provision
    raise ProvisionError("Error during provisioning") from e
aries_cloudagent.commands.provision.ProvisionError: Error during provisioning

Suggestions on what actions should happen?  Should we check and error off to say that "start" and "--recreate-wallet" are not compatible?  Are there code changes needed?   What is the expected behaviour?
I'm going to close this and request that if appropriate, a new issue be opened with expected behaviour.

Hello everyone, I would like to ask for your suggestion. after I run the above code, I received an error which its message is
Traceback (most recent call last):
File "/home/ubuntu/.local/lib/python3.8/site-packages/aries_cloudagent/commands/start.py", line 72, in init
await startup
File "/home/ubuntu/.local/lib/python3.8/site-packages/aries_cloudagent/commands/start.py", line 28, in start_app
await conductor.setup()
File "/home/ubuntu/.local/lib/python3.8/site-packages/aries_cloudagent/core/conductor.py", line 121, in setup
self.root_profile, self.setup_public_did = await wallet_config(context)
File "/home/ubuntu/.local/lib/python3.8/site-packages/aries_cloudagent/config/wallet.py", line 55, in wallet_config
profile = await mgr.open(context, profile_cfg)
File "/home/ubuntu/.local/lib/python3.8/site-packages/aries_cloudagent/indy/sdk/profile.py", line 188, in open
indy_config = IndyWalletConfig(config)
File "/home/ubuntu/.local/lib/python3.8/site-packages/aries_cloudagent/indy/sdk/wallet_setup.py", line 61, in init
load_postgres_plugin(self.storage_config, self.storage_creds)
File "/home/ubuntu/.local/lib/python3.8/site-packages/aries_cloudagent/indy/sdk/wallet_plugin.py", line 43, in load_postgres_plugin
stg_lib = cdll.LoadLibrary("libindystrgpostgres" + file_ext())
File "/usr/lib/python3.8/ctypes/init.py", line 451, in LoadLibrary
return self._dlltype(name)
File "/usr/lib/python3.8/ctypes/init.py", line 373, in init
self._handle = _dlopen(self._name, mode)
OSError: libindystrgpostgres.so: cannot open shared object file: No such file or directory
could you help me with this? thank you very much!


[func-sig-opts][projection] All projection trees during the run on a …

…function should share the same bump ptr allocator.
Found while reading code.

@swift-ci smoke test and merge


Decouple implementation/tests from concrete implementations

See https://github.com/yiisoft/db/blob/master/src/Connection/Connection.php#L189 and https://github.com/yiisoft/db/commit/d9f958a7c6c0a558ecf5befb2c9a2f1589158e39

Done.


west: mbedtls: Updated mbedtls revision

Updated west manifest to take in a new mbedtls revision. This is a
refactoring only. There are no code changes.
Signed-off-by: Sebastian Bøe<EMAIL_ADDRESS>

This is OK as it's still ahead of bbcb1b, but since this PR we have also merged 4f1e8f5a78dc08aa42a47cc1ad059cce558c26c3 into the mbedtls fork; mind updating to that?

PR #19093 updates to 4f1e8f5a78dc08aa42a47cc1ad059cce558c26c3

PR 19093 updates to 4f1e8f5a78dc08aa42a47cc1ad059cce558c26c3

Let's better have the habit of pointing to the latest unless they is a very good reason not to, and not relaying on PRs merged in the rights order.
Otherwise we will be facing issues where merging new PRs reverts back and nobody realizes (SHAs are not nice in this regard, I would propose we started tagging the west modules with ISO dates as tag names (YYYY_MM_DD) each time we want the default west manifest updated, so it would be evident if we are doing something silly).

Bumped the revision again


Fix typo in documentation - parameters description

Summary
A small typo:

sequence much mast the number

instead of

sequence must match the number

 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.You have signed the CLA already but the status is still pending? Let us recheck it.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 0   changed or added relevant lines in 0 files are covered.
26 unchanged lines in 5 files lost coverage.
Overall coverage increased (+0.03%) to 85.886%

Files with Coverage Reduction
New Missed Lines
%

crates/accelerate/src/vf2_layout.rs
1
86.44%

crates/qasm2/src/expr.rs
1
93.76%

crates/accelerate/src/sabre_swap/mod.rs
2
99.53%

crates/qasm2/src/lex.rs
4
90.13%

crates/qasm2/src/parse.rs
18
96.18%

Totals

Change from base Build<PHONE_NUMBER>:
0.03%

Covered Lines:
70979

Relevant Lines:
82643

💛  - Coveralls


Last Week in Pony - July 26, 2020

Audio from the July 14, 2020 Pony Development sync is available.
Topics included ponyup and changes the standard library String API.

Version 0.5.3 of ponylang-mode has been released.
See the release notes for more details.


IModuleAssemblyInitializer does not run

I have a C# module with a module init that uses a static class to maintain a cache. The cache does not get generated when importing the module and can be confirmed by trying to get the items from the cache. I can create the ModuleInitializer class manually and call OnImport() without issue and verify the cache is generated.
Steps to reproduce
Create C# module with module initializer class.
public sealed class ModuleInitializer : IModuleAssemblyInitializer
    {
        public void OnImport()
        {
            // do stuff
        }
    }

Import module using tracing.
Trace-Command -Name Modules,PSSnapInLoadUnload -Expression { Import-Module Test } -PSHost

You're able to instantiate a ModuleInitializer class and run OnImport method without issue.
Expected behavior
Module init OnImport method is ran.
Actual behavior
Module init OnImport method isn't ran. Tracing does not output message saying Executing IModuleAssemblyInitializer.Import for {0}
DEBUG: 2020-08-09 17:22:14.3711 PSSnapInLoadUnload Information: 0 : Analyzing assembly C:\Temp\module.dll for cmdlet and providers
DEBUG: 2020-08-09 17:22:14.3754 PSSnapInLoadUnload Information: 0 : Get-Thing from type Test.GetThingCommand is added as a cmdlet.

Environment data

Name                           Value
----                           -----
PSVersion                      7.1.0-preview.5
PSEdition                      Core
GitCommitId                    7.1.0-preview.5
OS                             Microsoft Windows 10.0.19041
Platform                       Win32NT
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0…}
PSRemotingProtocolVersion      2.3
SerializationVersion           <IP_ADDRESS>
WSManStackVersion              3.0

@ThomasNieto can you provide a more specific repo?  I have a module with an initializer that is still working on 7.1.0-preview.5

@SeeminglyScience did some more testing and was able to rule out that its a PowerShell issue.

@ThomasNieto Do you recall what impacted the execution of that interface in your use case?


Image Preview added

Added image preview feature before uploading a post. This works for single as well as multiple images
Please review the changes.
Issue : #106

Hi @kshitij01042002 thanks for your contribution!
I have reviewed the changes and there's just 1 thing left to be done before merging. Please check that.
:)

Don't merge this pr, I am raising a new PR which consists of three issues merge that one

wait, try having single pr per issue, it eases the maintainability as well as point distribution

Should I close this pull request? Since the these changes are present in new pr as well.

even if I merge this pr, it won't create problem in the new pr. No need to close this :)


Styled-components theme not working

For some reason, my rebass components are not detecting the theme I'm providing it. The weirdest thing is that through styled-components, the theme works well.
Main Theme:
const fontSizes: any = [
  "12px",
  "13px",
  "14px",
  "16px",
  "18px",
  "20px",
  "24px",
  "32px"
];

fontSizes.tiny = fontSizes[0];
fontSizes.small = fontSizes[1];
fontSizes.body = fontSizes[2];
fontSizes.body2 = fontSizes[3];
fontSizes.big = fontSizes[5];
fontSizes.display = fontSizes[6];

const space: any = [
  0,
  '5px',
  '10px',
  '15px',
  '20px',
  '25px',
  '30px',
  '35px',
  '40px',
  '45px',
  '65px',
  '80px'
];

space.tiny = space[1];
space.small = space[3];
space.medium = space[4];
space.big = space[6];
space.huge = space[8];

export default {
  fontSizes,
  space,
  colors: {
    text: '',
    background: 'white',
    primary: 'red',
    gray: '#dfdfdf',
  },
  breakpoints: ["38em", "62em", "68em", "110em"],
};

SideBar
import styled, { ThemeProvider } from 'styled-components';
import MenuItem from './MenuItem';
import { Box } from 'rebass';
import main from '../../../themes/main';

const SidebarContainer = styled.div`
  background-color: ${props => props.theme.colors.background};
  grid-row: sidebar-start / sidebar-end;
  grid-column: sidebar-start / sidebar-end;
  /* padding: ${props => props.theme.space.small}; */
`;

const SideBar: React.FC = () => {
  return (
    <SidebarContainer>
      <ThemeProvider theme={main}>
        <Box px="2" backgroundColor="primary">
          <MenuItem>My Questions</MenuItem>
        </Box>
      </ThemeProvider>
    </SidebarContainer>
  );
};

export default SideBar;

If you're using the latest Rebass, you'll need to import from rebass/styled-components if you're using the styled-components library

@jxnblk Uh oh, didn't know that. I'll try that, thank you. By the way, any place where I can read the motivations that led you to change styled-components for emotion in the main package?

Great! The motivation is fairly similar to the motivation in Theme UI here: https://theme-ui.com/motivation/ but Emotion has an API to clean up props from the HTML output, which Styled Components does not have

Thank you! I'll check that out.

For anybody coming here and:

using Styled Components
using the standalone reflexbox package to import their Box and Flex components
noticing their breakpoints as defined in their theme.js aren't working

It's quite simple, as described here: https://rebassjs.org/reflexbox/
Change your import from
import { Box, Flex } from 'reflexbox';
into
import { Box, Flex } from 'reflexbox/styled-components;
Took me a little while to find this, hence this comment. Hope it helps 👍 🎉


[Bug]: Open Graph image is not available

Description
Below og tag is used for open graph image
<meta property="og:image" content="https://www.4c.rocks/logo.jpg"/>

And https://www.4c.rocks/logo.jpg url is giving 404 error.

To Reproduce
NA
Anything else?
No response
Code of Conduct

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

The image actually works for me @theritikchoure.

The image actually works for me @theritikchoure.

I think there's a bit of a problem. Do you want to take this issue?

Ok, I can fix it, you can assign me

Awesome! It's all yours!