segfault when reporting unraisable ResourceWarnings on 3.11

Bug Report
Current Behavior A clear and concise description of the behavior.
Input Code
when running on https://github.com/urllib3/urllib3/commit/8b07436c42d14cfb6a8c81c1b2bfc892883364f6
/home/graingert/projects/urllib3/.nox/test-3-11/bin/pytest --memray -s
================================================================================================================================== test session starts ===================================================================================================================================
platform linux -- Python 3.11.0, pytest-7.2.0, pluggy-1.0.0
rootdir: /home/graingert/projects/urllib3, configfile: pyproject.toml
plugins: flaky-3.7.0, timeout-2.1.0, freezegun-0.4.2, memray-1.3.1
collected 2271 items

test/test_collections.py Memray WARNING: Correcting symbol for malloc from 0x421530 to 0x7fd8cbd4f120
Memray WARNING: Correcting symbol for free from 0x4219b0 to 0x7fd8cbd4f460
........................................
test/test_compatibility.py .
test/test_connection.py ...........................
test/test_connectionpool.py ........................................................Connection pool is full, discarding connection: localhost. Connection pool size: 1
Connection pool is full, discarding connection: localhost. Connection pool size: 1
.....Retrying (Retry(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'SSLError()': /
Retrying (Retry(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'SSLError()': /
Retrying (Retry(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'SSLError()': /
Retrying (Retry(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'SSLError()': /
Retrying (Retry(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'SSLError()': /
Retrying (Retry(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'SSLError()': /
Retrying (Retry(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'CertificateError()': /
Retrying (Retry(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'CertificateError()': /
Retrying (Retry(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'CertificateError()': /
Retrying (Retry(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'CertificateError()': /
Retrying (Retry(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'CertificateError()': /
Retrying (Retry(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'CertificateError()': /
Retrying (Retry(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'HTTPException()': /
Retrying (Retry(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'HTTPException()': /
...Connection pool is full, discarding connection: google.com. Connection pool size: 1
Connection pool is full, discarding connection: google.com. Connection pool size: 1
.Connection pool is full, discarding connection: google.com. Connection pool size: 1
Connection pool is full, discarding connection: google.com. Connection pool size: 1
...Connection pool is full, discarding connection: google.com. Connection pool size: 1
Connection pool is full, discarding connection: google.com. Connection pool size: 1
....Retrying (Retry(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'TimeoutError()': /
Retrying (Retry(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'TimeoutError()': /
Retrying (Retry(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'HTTPException()': /
Retrying (Retry(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'HTTPException()': /
Retrying (Retry(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'OSError()': /
Retrying (Retry(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'OSError()': /
Retrying (Retry(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'ProtocolError()': /
Retrying (Retry(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'ProtocolError()': /
..
test/test_exceptions.py ..............
test/test_fields.py ....................
test/test_filepost.py .........
test/test_no_ssl.py ..
test/test_poolmanager.py ....................................
test/test_proxymanager.py .....Retrying (Retry(total=None, connect=1, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7fd8c5d12190>: Failed to establish a new connection: [Errno 111] Connection refused')': http://localhost/
Retrying (Retry(total=None, connect=1, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7fd8c5d12190>: Failed to establish a new connection: [Errno 111] Connection refused')': http://localhost/
Retrying (Retry(total=None, connect=0, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7fd8c5cebf10>: Failed to establish a new connection: [Errno 111] Connection refused')': http://localhost/
Retrying (Retry(total=None, connect=0, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7fd8c5cebf10>: Failed to establish a new connection: [Errno 111] Connection refused')': http://localhost/
.
test/test_queue_monkeypatch.py .
test/test_response.py .........................................................................................
test/test_retry.py ............................................................
test/test_ssl.py ..................................
test/test_ssltransport.py ....Fatal Python error: Segmentation fault

Thread 0x00007fd8c7370640 (most recent call first):
  File "/usr/lib/python3.11/ssl.py", line 1136 in read
  File "/usr/lib/python3.11/ssl.py", line 1263 in recv
  File "/home/graingert/projects/urllib3/dummyserver/testcase.py", line 31 in consume_socket
  File "/home/graingert/projects/urllib3/test/test_ssltransport.py", line 121 in socket_handler
  File "/home/graingert/projects/urllib3/dummyserver/server.py", line 145 in _start_server
  File "/home/graingert/projects/urllib3/dummyserver/server.py", line 149 in run
  File "/usr/lib/python3.11/threading.py", line 1038 in _bootstrap_inner
  File "/usr/lib/python3.11/threading.py", line 995 in _bootstrap

Current thread 0x00007fd8cbca9000 (most recent call first):
  File "/usr/lib/python3.11/traceback.py", line 353 in _walk_tb_with_full_positions
  File "/usr/lib/python3.11/traceback.py", line 416 in _extract_from_extended_frame_gen
  File "/usr/lib/python3.11/traceback.py", line 688 in __init__
  File "/usr/lib/python3.11/traceback.py", line 139 in format_exception
  File "/home/graingert/projects/urllib3/.nox/test-3-11/lib/python3.11/site-packages/_pytest/unraisableexception.py", line 72 in unraisable_exception_runtest_hook
  File "/home/graingert/projects/urllib3/.nox/test-3-11/lib/python3.11/site-packages/_pytest/unraisableexception.py", line 88 in pytest_runtest_call
  File "/home/graingert/projects/urllib3/.nox/test-3-11/lib/python3.11/site-packages/pluggy/_callers.py", line 55 in _multicall
  File "/home/graingert/projects/urllib3/.nox/test-3-11/lib/python3.11/site-packages/pluggy/_manager.py", line 80 in _hookexec
  File "/home/graingert/projects/urllib3/.nox/test-3-11/lib/python3.11/site-packages/pluggy/_hooks.py", line 265 in __call__
  File "/home/graingert/projects/urllib3/.nox/test-3-11/lib/python3.11/site-packages/_pytest/runner.py", line 260 in <lambda>
  File "/home/graingert/projects/urllib3/.nox/test-3-11/lib/python3.11/site-packages/_pytest/runner.py", line 339 in from_call
  File "/home/graingert/projects/urllib3/.nox/test-3-11/lib/python3.11/site-packages/_pytest/runner.py", line 259 in call_runtest_hook
  File "/home/graingert/projects/urllib3/.nox/test-3-11/lib/python3.11/site-packages/flaky/flaky_pytest_plugin.py", line 138 in call_and_report
  File "/home/graingert/projects/urllib3/.nox/test-3-11/lib/python3.11/site-packages/_pytest/runner.py", line 131 in runtestprotocol
  File "/home/graingert/projects/urllib3/.nox/test-3-11/lib/python3.11/site-packages/_pytest/runner.py", line 112 in pytest_runtest_protocol
  File "/home/graingert/projects/urllib3/.nox/test-3-11/lib/python3.11/site-packages/flaky/flaky_pytest_plugin.py", line 94 in pytest_runtest_protocol
  File "/home/graingert/projects/urllib3/.nox/test-3-11/lib/python3.11/site-packages/pluggy/_callers.py", line 39 in _multicall
  File "/home/graingert/projects/urllib3/.nox/test-3-11/lib/python3.11/site-packages/pluggy/_manager.py", line 80 in _hookexec
  File "/home/graingert/projects/urllib3/.nox/test-3-11/lib/python3.11/site-packages/pluggy/_hooks.py", line 265 in __call__
  File "/home/graingert/projects/urllib3/.nox/test-3-11/lib/python3.11/site-packages/_pytest/main.py", line 349 in pytest_runtestloop
  File "/home/graingert/projects/urllib3/.nox/test-3-11/lib/python3.11/site-packages/pluggy/_callers.py", line 39 in _multicall
  File "/home/graingert/projects/urllib3/.nox/test-3-11/lib/python3.11/site-packages/pluggy/_manager.py", line 80 in _hookexec
  File "/home/graingert/projects/urllib3/.nox/test-3-11/lib/python3.11/site-packages/pluggy/_hooks.py", line 265 in __call__
  File "/home/graingert/projects/urllib3/.nox/test-3-11/lib/python3.11/site-packages/_pytest/main.py", line 324 in _main
  File "/home/graingert/projects/urllib3/.nox/test-3-11/lib/python3.11/site-packages/_pytest/main.py", line 270 in wrap_session
  File "/home/graingert/projects/urllib3/.nox/test-3-11/lib/python3.11/site-packages/_pytest/main.py", line 317 in pytest_cmdline_main
  File "/home/graingert/projects/urllib3/.nox/test-3-11/lib/python3.11/site-packages/pluggy/_callers.py", line 39 in _multicall
  File "/home/graingert/projects/urllib3/.nox/test-3-11/lib/python3.11/site-packages/pluggy/_manager.py", line 80 in _hookexec
  File "/home/graingert/projects/urllib3/.nox/test-3-11/lib/python3.11/site-packages/pluggy/_hooks.py", line 265 in __call__
  File "/home/graingert/projects/urllib3/.nox/test-3-11/lib/python3.11/site-packages/_pytest/config/__init__.py", line 167 in main
  File "/home/graingert/projects/urllib3/.nox/test-3-11/lib/python3.11/site-packages/_pytest/config/__init__.py", line 190 in console_main
  File "/home/graingert/projects/urllib3/.nox/test-3-11/bin/pytest", line 8 in <module>

Extension modules: memray._memray, _brotli, zstandard.backend_c, _cffi_backend, tornado.speedups (total: 5)
[1]    34017 segmentation fault (core dumped)  /home/graingert/projects/urllib3/.nox/test-3-11/bin/pytest --memray -s

Expected behavior/code A clear and concise description of what you expected to
happen (or code).
Environment

Python(s): [e.g. python3.8, python3.9, ...] Python 3.11.0 (main, Oct 24 2022, 19:56:13) [GCC 11.2.0] on linux

Ubuntu 22.04.1 LTS
Possible Solution

Additional context/Screenshots Add any other context about the problem here. If
applicable, add screenshots to help explain.

Nevermind, I will transfer this issue.

@graingert I cannot checkout your commit from urllib3 because it says that "This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository."

It looks like the segfault is not inside memray:
0x00007ffff7dbf0ef in write () from /usr/lib/libc.so.6
(gdb) up
#1  0x00007ffff54e100c in ?? () from /usr/lib/libcrypto.so.3
(gdb)
#2  0x00007ffff54d066b in ?? () from /usr/lib/libcrypto.so.3
(gdb)
#3  0x00007ffff54d4416 in ?? () from /usr/lib/libcrypto.so.3
(gdb)
#4  0x00007ffff54d4557 in BIO_write () from /usr/lib/libcrypto.so.3
(gdb)
#5  0x00007ffff54d5962 in ?? () from /usr/lib/libcrypto.so.3
(gdb)
#6  0x00007ffff54d51b1 in BIO_ctrl () from /usr/lib/libcrypto.so.3
(gdb)
#7  0x00007ffff52cdab6 in ?? () from /usr/lib/libssl.so.3
(gdb)
#8  0x00007ffff52c02b7 in ?? () from /usr/lib/libssl.so.3
(gdb)
#9  0x00007ffff5898e4d in _ssl__SSLSocket_do_handshake_impl (self=<optimized out>)
    at /tmp/python-build.20221123143409.94845/Python-3.11.0/Modules/_ssl.c:954
954     /tmp/python-build.20221123143409.94845/Python-3.11.0/Modules/_ssl.c: No such file or directory.
(gdb)
#10 _ssl__SSLSocket_do_handshake (self=0x7ffff48255b0, _unused_ignored=<optimized out>)
    at /tmp/python-build.20221123143409.94845/Python-3.11.0/Modules/clinic/_ssl.c.h:19
19      /tmp/python-build.20221123143409.94845/Python-3.11.0/Modules/clinic/_ssl.c.h: No such file or directory.
(gdb)
#11 0x00005555556fdab7 in cfunction_vectorcall_NOARGS (
    func=<built-in method do_handshake of _ssl._SSLSocket object at remote 0x7ffff48255b0>, args=<optimized out>,
    nargsf=<optimized out>, kwnames=<optimized out>) at Objects/methodobject.c:486
486     Objects/methodobject.c: No such file or directory.

This looks like a CPython issue

@graingert I cannot checkout your commit from urllib3 because it says that "This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository."

you can get it from https://github.com/graingert/urllib3/commit/8b07436c42d14cfb6a8c81c1b2bfc892883364f6

or did you already get it repeating on your machine?

Yeah, I tried applying the commit to this PR: https://github.com/urllib3/urllib3/pull/2790

This is a CPython problem. I can reproduce the segfault by adding this to the test/test_ssltransport.py file:
pytest.fixture(autouse=True)
def foo():
    def blech(*args):
        return None

    p = sys.getprofile()
    sys.setprofile(blech)
    yield
    sys.setprofile(p)

Just running normal pytest segfaults:
❯ pytest test/test_ssltransport.py
========================================================= test session starts ==========================================================
platform linux -- Python 3.11.0+, pytest-7.2.0, pluggy-1.0.0
rootdir: /home/pablogsal/github/memray/urllib3, configfile: pyproject.toml
plugins: freezegun-0.4.2, memray-1.3.1, timeout-2.1.0, flaky-3.7.0, cov-4.0.0
collected 17 items

test/test_ssltransport.py ....Fatal Python error: Segmentation fault

Thread 0x00007f5c5713e6c0 (most recent call first):
  File "/home/pablogsal/github/python/3.11/Lib/ssl.py", line 1136 in read
  File "/home/pablogsal/github/python/3.11/Lib/ssl.py", line 1263 in recv
  File "/home/pablogsal/github/memray/urllib3/dummyserver/testcase.py", line 31 in consume_socket
  File "/home/pablogsal/github/memray/urllib3/test/test_ssltransport.py", line 132 in socket_handler
  File "/home/pablogsal/github/memray/urllib3/dummyserver/server.py", line 145 in _start_server
  File "/home/pablogsal/github/memray/urllib3/dummyserver/server.py", line 149 in run
  File "/home/pablogsal/github/python/3.11/Lib/threading.py", line 1038 in _bootstrap_inner
  File "/home/pablogsal/github/python/3.11/Lib/threading.py", line 995 in _bootstrap

Current thread 0x00007f5c5a62a740 (most recent call first):
  File "/tmp/venv2/lib/python3.11/site-packages/_pytest/unraisableexception.py", line 43 in _hook
  File "/tmp/venv2/lib/python3.11/site-packages/_pytest/python.py", line 195 in pytest_pyfunc_call
  File "/tmp/venv2/lib/python3.11/site-packages/pluggy/_callers.py", line 39 in _multicall
  File "/tmp/venv2/lib/python3.11/site-packages/pluggy/_manager.py", line 80 in _hookexec
  File "/tmp/venv2/lib/python3.11/site-packages/pluggy/_hooks.py", line 265 in __call__
  File "/tmp/venv2/lib/python3.11/site-packages/_pytest/python.py", line 1789 in runtest
  File "/tmp/venv2/lib/python3.11/site-packages/_pytest/runner.py", line 167 in pytest_runtest_call
  File "/tmp/venv2/lib/python3.11/site-packages/pluggy/_callers.py", line 39 in _multicall
  File "/tmp/venv2/lib/python3.11/site-packages/pluggy/_manager.py", line 80 in _hookexec
  File "/tmp/venv2/lib/python3.11/site-packages/pluggy/_hooks.py", line 265 in __call__
  File "/tmp/venv2/lib/python3.11/site-packages/_pytest/runner.py", line 260 in <lambda>
  File "/tmp/venv2/lib/python3.11/site-packages/_pytest/runner.py", line 339 in from_call
  File "/tmp/venv2/lib/python3.11/site-packages/_pytest/runner.py", line 259 in call_runtest_hook
  File "/tmp/venv2/lib/python3.11/site-packages/flaky/flaky_pytest_plugin.py", line 138 in call_and_report
  File "/tmp/venv2/lib/python3.11/site-packages/_pytest/runner.py", line 131 in runtestprotocol
  File "/tmp/venv2/lib/python3.11/site-packages/_pytest/runner.py", line 112 in pytest_runtest_protocol
  File "/tmp/venv2/lib/python3.11/site-packages/flaky/flaky_pytest_plugin.py", line 94 in pytest_runtest_protocol
  File "/tmp/venv2/lib/python3.11/site-packages/pluggy/_callers.py", line 39 in _multicall
  File "/tmp/venv2/lib/python3.11/site-packages/pluggy/_manager.py", line 80 in _hookexec
  File "/tmp/venv2/lib/python3.11/site-packages/pluggy/_hooks.py", line 265 in __call__
  File "/tmp/venv2/lib/python3.11/site-packages/_pytest/main.py", line 349 in pytest_runtestloop
  File "/tmp/venv2/lib/python3.11/site-packages/pluggy/_callers.py", line 39 in _multicall
  File "/tmp/venv2/lib/python3.11/site-packages/pluggy/_manager.py", line 80 in _hookexec
  File "/tmp/venv2/lib/python3.11/site-packages/pluggy/_hooks.py", line 265 in __call__
  File "/tmp/venv2/lib/python3.11/site-packages/_pytest/main.py", line 324 in _main
  File "/tmp/venv2/lib/python3.11/site-packages/_pytest/main.py", line 270 in wrap_session
  File "/tmp/venv2/lib/python3.11/site-packages/_pytest/main.py", line 317 in pytest_cmdline_main
  File "/tmp/venv2/lib/python3.11/site-packages/pluggy/_callers.py", line 39 in _multicall
  File "/tmp/venv2/lib/python3.11/site-packages/pluggy/_manager.py", line 80 in _hookexec
  File "/tmp/venv2/lib/python3.11/site-packages/pluggy/_hooks.py", line 265 in __call__
  File "/tmp/venv2/lib/python3.11/site-packages/_pytest/config/__init__.py", line 167 in main
  File "/tmp/venv2/lib/python3.11/site-packages/_pytest/config/__init__.py", line 190 in console_main
  File "/tmp/venv2/bin/pytest", line 8 in <module>

Extension modules: memray._memray, tornado.speedups (total: 2)
[1]    346015 segmentation fault (core dumped)  pytest test/test_ssltransport.py

@graingert I'm closing this issue. Do you mind reporting this against CPython and add me as a reviewer in that issue?
The problems seems to be that deallocating frames when there is a profile function installed segfaults.

Ah, actually I can reproduce it with the latest 3.11 without even a profile function!

ok I've hacked the repro down a bit - it's definitely not memray at fault here https://github.com/graingert/segfault-repro/blob/default/test_ssltransport.py

Do you mind reporting this against CPython and add me as a reviewer in that issue?

here's the issue https://github.com/python/cpython/issues/99729


Can't find how to read body in chunks

Hi, I'm building an api gateway.
And inside my proxy method i have this code section. I want to know what is the right way of reading and sending in chunks instead of load all the body in memory. Could you help me, I wasn't able to find a method to load the body in chunks
    let client = reqwest::Client::new();

    let mut request_to_destination_server_builder = client
        .request(req.method().clone(), &destination_url)
        .query(req.queries())
        .headers(req.headers().clone());

    //  If request  have content length put that body in the request to
    //  destination server
    if req.headers().get("Content-Length").is_some() {
        let payload = match req.payload_with_max_size(MAX_SIZE_BODY).await {
            //Cloning the req.payload() is ok because it just clones the Bytes object and not the internal
            //buffer (buffer is where all the bytes of the body are stored)
            Ok(v) => v.clone(),
            Err(e) => {
                eprintln!("{}", e);
                res.status_code(StatusCode::BAD_REQUEST);
                let message =
                    "GW: Content-length header set but couldn't extract request body".to_string();
                res.render(Text::Plain(&message));
                info_for_open_observe.status_code = StatusCode::BAD_REQUEST.as_u16();
                info_for_open_observe.error = super::tracking::ErrorInfo {
                    is_client_error: false,
                    is_host_server_error: false,
                    is_gateway_error: true,
                    message,
                };
                info_for_open_observe.timing = super::tracking::TimingInfo {
                    total_time_in_gateway: start_time.elapsed().as_millis(),
                    total_time_host_server_answer_in_ms: None,
                };
                return crate::gateway::tracking::ProxyResultVariants::SendToOpenObserve(
                    info_for_open_observe,
                );
            }
        };
        request_to_destination_server_builder =
            request_to_destination_server_builder.body(payload.clone());
    }

    //  NOTE: Initialize struct to store durations

Try to take Request's body and give it to request_to_destination_server_builder.


⚠ Bofrost.es has degraded performance

In 9fd8cd5, Bofrost.es (https://www.bofrost.es) experienced degraded performance:

HTTP code: 200
Response time: 1515 ms

Resolved: Bofrost.es performance has improved in f1ff745.


yield call isn't working on React Native

packages {
"react-native": "0.55.3",
"redux-saga": "^1.0.0-beta.1",
}
i have a few nested yield calls together like this.
function* rootSaga() {
yield all([
   takeEvery(ACTION, handleAction)
])
}

function* handleAction() {
   yield call(fetchAsync, data)
}

function* fetchAsync() {
   yield call(startApiRequest)
   yield put(fetchCompleted)
}

function* startApiRequest() {
   console.log('this never gets hit')
   const response =    yield call(axios....)
   return response
}

somehow, startApiRequest never gets called. Instead it returns this:
Error
This seems to work fine on redux-saga 0.16.0.
Any ideas what might have changed between 0.16.0 and 1.0.0 beta-1?

Not sure what this was, but i had redux-saga installed in the root and mobile directories, and it caused this error. removing it from the mobile directory seems to have fixed it
root
package.json
/mobile
package.json


Upload prints to standard output when everything is OK

Hi folks,
I'm currently wrapping ano in a program to automate some unit testing on a real board. It works fine but I noticed that ano upload (and the call to avrdude) prints to the error output, which is sad when everything goes well.
Can it be fixed by Arturo or is the problem somewhere else?
avrdude: AVR device initialized and ready to accept instructions

Reading | ################################################## | 100% 0.00s

avrdude: Device signature = 0x1e950f
avrdude: reading input file ".build_ano/uno/firmware.hex"
avrdude: writing flash (7182 bytes):

Writing | ################################################## | 100% 1.17s

avrdude: 7182 bytes of flash written
avrdude: verifying flash memory against .build_ano/uno/firmware.hex:
avrdude: load data flash data from input file .build_ano/uno/firmware.hex:
avrdude: input file .build_ano/uno/firmware.hex contains 7182 bytes
avrdude: reading on-chip flash data:

Reading | ################################################## | 100% 0.93s

avrdude: verifying ...
avrdude: 7182 bytes of flash verified

avrdude: safemode: Fuses OK (E:00, H:00, L:00)

avrdude done.  Thank you.

Yeah, sorry. This is avrdude not Arturo.

I know, but I actually fixed it in #64 by adding a new option -q on the upload command. :smile:


Siegfried error on Windows if root of drive is selected as input

On Windows 10, i've noticed that if the input is the root of a drive, a Siegfried error appears.
brunnhilde.py  -n D:\ C:\Users\kiera\Desktop\reportttt
2024-08-01 15:26:22,075 - INFO - Brunnhilde started. Source: D:\.
2024-08-01 15:26:22,093 - INFO - Running Siegfried. This might take a while...
2024/08/01 15:26:22 [FATAL] file access error for D:" : CreateFile D:" : The filename, directory name, or volume label syntax is incorrect.
2024-08-01 15:26:22,164 - INFO - Siegfried scan complete. Processing results.
2024-08-01 15:26:22,493 - INFO - Brunnhilde characterization complete. Reports written to C:\Users\kiera\Desktop\reportttt.

Siegfried itself has no issues when running with the input as the drive root. I wonder if it's just an escaping issue?

Actually it is an escaping issue. I can replicate in sf if I remove the colon:
C:\Users\kiera>sf D
---
siegfried   : 1.11.1
scandate    : 2024-08-01T15:40:51+01:00
signature   : default.sig
created     : 2024-06-21T16:01:11+10:00
identifiers :
  - name    : 'pronom'
    details : 'DROID_SignatureFile_V118.xml; container-signature-20240501.xml'
2024/08/01 15:40:51 [FATAL] file access error for D: CreateFile D: The system cannot find the file specified.


Git Pull Not Working in ST3 on Yosemite

Issue #150 opened on Aug 4, 2014
Not fixed Yet!
All office waiting for it! Man!

+1

Yep!

If you need some help with OS X platform testing i can do that. Or use teamviewer with me, but please fix it!

Why it doesn't work!?

I also want to use it, pls fix this!

Why contributor @michaelpedersen ignore so many issues and so important like this?

What is funny is that an alert popups up once in awhile requesting us to pay! YEAH RIGHT I am not paying for this great support!

I did pay for it, and regret it almost daily. It's the most unstable, poorly supported software I've used in a while. Just use the open source "Git" package from Package Control, it's open source, much more stable, and has most of the same features. And it works perfectly on Yosemite.

Yes i tried the open source Git and works. I am jumping back to brackets.io which has at 100% free git plugin with a GUI

First off, thank you for creating a new issue just to vent. It's very helpful.
@Alanaktion I'm sorry that it has apparently caused you a limitless amount of regret. As for the "unstable" part, I've failed to find the bug you've filed for that?
I've just released v1.0.33, which tries to address this issue. Please let me know if it's working.

bug...
/Applications/Xcode.app/Contents/Developer/usr/libexec/git-core/git-pull: line 11: git-sh-setup: No such file or directory

Now work! Thanks. Work only with "git_force_path": ["/usr/local/bin", "/usr/bin", "/bin"] in user settings. And Restart Sublime!!!
My Conf:
SublimeGit v1.0.33,
git version 2.2.2 (from brew)
OS X Yosemite (Latest update)

If I left only
/usr/local/bin
I have this
/usr/local/Cellar/git/2.2.2/libexec/git-core/git-sh-setup: line 83: basename: command not found
/usr/local/Cellar/git/2.2.2/libexec/git-core/git-sh-setup: line 83: sed: command not found
/usr/local/Cellar/git/2.2.2/libexec/git-core/git-sh-setup: line 299: uname: command not found
error: cannot run ssh: No such file or directory
fatal: unable to fork

With /usr/bin works fine.


Enhancement: Need a global --help (-h) flag to show the help information shown when the 'help` command is selected

Right now running mint -h or mint --help prints this error: Incorrect Usage: flag: help requested. We need to handle these use cases properly. For that we need to define an extra global flag to handle --help (with -h as an alias) and print the same info when mint help is typed.  This would be similar to what happens with the global --version flag.

/assign

The spf13/pflag library is an indirect dependency and it's not used by the app itself. The CLI commands and flags are handled with the urfave/cli library.
Feel free to work on the enhancement. If you have any questions add them here.


Change join_on translation to joined_on and include placeholder for the date

The correct thing to do is to translate the entire phrase into a single string. The previous translation assumed all languages have a space between the "joined on" and the date (and that "joined on" comes before the date).
Some languages, like Hebrew, have no space between the "joined on" and the date. For example:
joined_on=נרשם ב-%s

If this lands I will send a similar PR for settings.add_on


test upgrade hcsshim to v0.12.4

Reason for Change:

Issue Fixed:

Requirements:

[ ] uses conventional commit messages

[ ] includes documentation
[ ] adds unit tests
[ ] relevant PR labels added

Notes:

need to upgrade windows agent pool golang version to 1.21


[from qiskit] QAOA callback attribute docstring incorrectly includes best measurement

What should we add?
The QOAO callback attribute docstring says this
        callback (Callable[[int, np.ndarray, float, dict[str, Any]], None] | None): A callback
            that can access the intermediate data at each optimization step. These data are: the
            evaluation count, the optimizer parameters for the ansatz, the evaluated value, the
            the metadata dictionary, and the best measurement.

Whereas the callback parameter in the constructor does not have and the best measurement nor does the SamplingVQE callback, in either situation, that this class extends where the callback is done by the parent. I believe and the best measurement should just be simply removed unless there was somehow an intent to have had this - but the callback signature does not accommodate such presently.

Opened by @woodsp-ibm
Original issue & discussion: https://github.com/Qiskit/qiskit/issues/10434


Decide how to upgrade TextResource for Property upgrades

For example Checkstyle.config is TextResource. Should we handle that as a @Nested property or we should do anything special.

We need to decide on the future of TextResource in general.

Looking at the usages of this class, I think we can replace most of our usages (code quality, wrapper task, groovydoc, reporting) with file properties. We would then deprecate the TextResource-accepting methods.
For 9.0, we can leave TextResource around since it solves some use cases like:

Downloading text files
Applying remote buildscripts with apply from: <TextResource>

As a migration path, we can have TextResource implement Provider<RegularFile> or perhaps preferably add an asProvider method so users can easily transition to the new APIs.

As a migration path, ... perhaps preferably add an asProvider method so users can easily transition to the new APIs.

Yes, definitely asProvider() rather than a Provider subtype.

I'll mark this as has:decision: so basically we agreed to leave TextResource properties for 9.0.
We should also provide  methods to bridge Provider API and TextResource API.

I think we can replace most of our usages (code quality, wrapper task, groovydoc, reporting) with file properties.

I wonder if we should have String properties instead. The users can go from files to strings easily with fileContents method, while the other direction is rather cumbersome. The naive implementation is going to have some overhead of parsing the origin and dumping it into some temporary file, but we can optimize it later.
I suspect that the need to accept non-files in a uniform way is what brought TextResource to live in the first place, so those who are using non-file sources now will be stuck with TextResource making it harder for us to remove it later.

This has been marked with has:decision. Can we close this now?

Closing, as a decision has been made


Use sysconf(_SC_NPROCESSORS_CONF) to get number of processors

Port https://github.com/dotnet/coreclr/pull/18053/

You can safely ignore the stuck WebAssembly PR jobs.


Add unix build dependence on make

The x86_64 CentOS 6 image used for build includes 'make' in the
default install, but other architectures (e.g. aarch64 & ppc64le)
use a CentOS 7 image that doesn't include make. The unix build.sh
requires make so will fail on those architectures, and even on x86
we should use conda' make rather than system's make.

Checklist

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

@conda-forge-admin please rerender

Thanks!


Allow module-level query expressions

Purpose
$title.
Fixes #28389
Fixes #28390
Approach
n/a
Samples
ref: test cases
Remarks

todo: #28879

Check List

[x] Read the Contributing Guide
[ ] Updated Change Log
[ ] Checked Tooling Support (#)
[x] Added necessary tests

[x] Unit Tests
[ ] Spec Conformance Tests
[ ] Integration Tests
[ ] Ballerina By Example Tests

[x] Increased Test Coverage
[ ] Added necessary documentation

[ ] API documentation
[ ] Module documentation in Module.md files
[ ] Ballerina By Examples

For the moment changing the order of desugaring seems favorable looking the amount of effort requires to desugar queries in desugarGlobalVariables function.


Apollo 1.0 build error, about "rules_cc".

IPC : Nuvo 6108GC
OS : Ubuntu 14.04.6 LTS （4.4.32-apollo-2-RT）
docker ： 18.06.3-ce
git clone from apollo， checkout v1.0.0，
as doc “quick start dev” say， “bash docker/scripts/dev_start.sh" then, "bash docker/scripts/dev_into.sh", git clone "apollo-platform" and checkout 1.0.0, build it.(passed)
then, cd APOLLO_HOME, and "bash apollo.sh build"
at this step, an error occurred.
some info as follows:
//:x86_64
//:arm64
WARNING: Running Bazel server needs to be killed, because the startup options are different.
ERROR: /home/adc/.cache/bazel/_bazel_adc/3e6945e88a09b92cd643f4d260dc4b07/external/org_pubref_rules_protobuf/protobuf/internal/require.bzl:46:13: error loading package '@boringssl//boringssl-master-with-bazel': Encountered error while reading extension file 'cc/defs.bzl': no such package '@rules_cc//cc': error loading package 'external': The repository named 'rules_cc' could not be resolved and referenced by '//external:libssl'.
ERROR: Analysis of target '//modules/planning:lib_planning' failed; build aborted.
I have tried to debug it......but failed......beg for help

Hey, i have the same problem. Could you solve it?

This seems to be caused by bazel version mismatch.  Apollo 1.0 used bazel 0.5.3, while boringssl used bazel 2.x or 3.x.

Okay thanks :) But how can i solve this? And why only we have this problem?

I have the same issue, don't know how to solve it. Does anyone have some ideas?

Okay thanks :) But how can i solve this? And why only we have this problem?

I guess it will take a lot of pain to get it fixed, as bazel 0.5.3 is too-old as of Jun 2020, and only the master and r5.5.0 branch are actively maintained at present. The Apollo team is working on  upgrading bazel support from  0.5.3 to  3.1+.  Please stay tuned.


Questions about this repository

An official, signed Debian APT Software Repository for Filecoin software.

Hey, this repo has come to our (some lotus implementers) attention and we have a couple of questions

Who is/are the maintainer(s) of this repository and do they plan to provide long-term support for this repo and the packages released from here?

Are the Filecoin implementers who are maintaining this?

As a user, should I treat this as the source of the truth release repository, for what Filecoin software?
Side note: is there a reason why all packages are chosen to be distributed from GH rather than, say launchpad?

I chatted with Magik on this, and it seems like maybe this repo is better renamed as curio-apt.
I also briefly discussed this within the Lotus team, and we currently don't have a plan to support distributing the Lotus Debian package. We will consider that if we receive user requests. And we likely will be uploading the to launchpad instead of GH if we were adding the support!

I am hoping it will become how many Filecoin software packages get distributed going forward as it's the only path today that can auto-upgrade all the kinds of software we have,  so it's a technology we can use for consistency.
Ubuntu Launchpad seems to be approaching End of Life, and it's not Debian-friendly.
I'm looking forward to sharing the process (once established) with all the interested projects so we can all use this to distribute PGO-optimized binaries.
As such,  having one Filecoin repo to set up makes sense to users than 3-5.

@snadrus Sounds good!  I think option 2 is best for what you are aiming for, and i think the end goal is 👍 ! Hopefully we get more user feedback & see how folks will use this!
Oh i didnt know launchpad is sunsetting, is there a place folks upload debain package?

Its documentation is old & scattered and they're pushing snaps (which don't
work for Curio, nor do they seem adopted by Debian or others). So it seemed
to me that going with DEB files are a solid solution, and it's what other
top-tier Linux-supporting companies do (NVidia, Steam).
On Tue, May 28, 2024 at 1:08 PM Jiaying Wang @.***>
wrote:

@snadrus https://github.com/snadrus Sounds good! I think option 2 is
best for what you are aiming for, and i think the end goal is 👍 !
Hopefully we get more user feedback & see how folks will use this!
Oh i didnt know launchpad is sunsetting, is there a place folks upload
debain package?
—
Reply to this email directly, view it on GitHub
https://github.com/filecoin-project/apt/issues/1#issuecomment-2135839717,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAOU4LWP4P4DFURPQKM7TETZETBY5AVCNFSM6AAAAABIMBGNYKVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDCMZVHAZTSNZRG4
.
You are receiving this because you were mentioned.Message ID:
@.***>

--
Andrew Jackson
President of Curio Storage, Inc. http://curiostorage.org


Improve flexibility

Goal:

Be able to use nexus while under http (local test purposes)
Upload files which are stored under a different name than the ones to be uploaded

@GuillaumeDSM Thanks for the changes :) Once my comments are addressed and you add some tests, I'll add these changes into the next minor version.

It should be fine now :)


node-red-contrib-function-npm updated to slow when bindind to debug node

#I am trying to use Hx711 sensor for load cell. I managed to make it work, but this node is making the debug  console update too slow. I want it to update 4 times in a second but i am only allowed once in a second, even though if I use the trigger node to trigger every 250ms.
Is it a function-npm problem, and how to fix it?

Closing this issue since I haven't received any feedback.


Adapt gardener-scheduler to work with core.gardener.cloud/v1alpha1 resources

What this PR does / why we need it:
With this PR the gardener-scheduler is adapted to only work with the core.gardener.cloud/v1alpha1 resources.
Special notes for your reviewer:

Part of #1376
:warning: Depends on #1430 which should be merged first

Release note:

The `gardener-scheduler` is now working only with `core.gardener.cloud/v1alpha1` instead of `garden.sapcloud.io/v1beta1` resources.

Once #1430 is merged I'll rebase and remove the reviewed/do-not-merge label, however, reviewing the actual adaption commit is already possible.

PR is ready for review now.


bug: Origin opcode isn't well tested in test_kakarot.py

Bug Report
Current behavior:
In test_kakarot.py Origin opcode is failing because when executing kakarot.execute(params).call(caller_address=X) on contract get_tx_info() returns a wrong TxInfo which is not initialized well and account_contract_address field is 0.
Expected behavior:
account_contract_address in TxInfo should return the caller address
Steps to reproduce:
Isolate ORIGIN test in test_cases.py and run it through test_kakarot.py
TxInfo is retrieved in exec_origin()
Idea to fix it:
Use MockSigner (https://github.com/OpenZeppelin/cairo-contracts/blob/main/tests/signers.py#L149) instead of using Kakarot.execute().call()

hey @hurrikaanig  i'm interested in taking this
Just to check if my understanding of the issue is correct:
so ORIGIN opcode should return origin evm address of the transaction initializer.
In kakarot that's the end user who is "executing the opcode". So it should return end-users evm address. In our test_kakarot.py this transaction is initialized via "kakarot" python object which is a mock "kakarot" contract on starknet.
So for this case "caller_address"  in execute method in "contract.py" file is not correctly passed to cairo -- not sure why, but that's how starkware python test library works?
So we can fix it this way: instead of executing method via kakarot.execute() we should call the execute() this way:
from utils import MockSigner

PRIVATE_KEY =<PHONE_NUMBER>87654321
signer = MockSigner(PRIVATE_KEY)
# Then send single transactions with the send_transaction method.

response = await signer.send_transaction(account, contract_address, 'method_name', [])

and that response should have the same (or similar) output where we can pull stack and memory data.

Yes you're right, not sure if it will work with MockSigner but that's an idea we had. Also you can find example of how it is being used here https://github.com/sayajin-labs/kakarot/blob/90e007133d651d2e62695d9132159553f2604a76/tests/integration/eoa/test_ethaa.py line 80

@ClementWalter Please assign this issue to me.
Regarding using MockSigner, I investigated this, and openzeppelin doesn't provide the python package for this, so I guess we should just copy-paste the code and include it in our repo.
It also uses some nile packages and i couldn't import cairo-nile with poetry because it's incompatible with the version of starknet-dev package which is 0.3.x and latest version is 0.4.x. Now I saw that in the commit hash above MockSigner is not using nile packages but just wanted to note this, maybe it's possible without nile packages.
Anyway will update later on this when I try more.
one question: should this be implemented for all bytecode tests or only for ORIGIN opcode? cc @hurrikaanig

Actually I don't know if it's possible, once we had this issue we posted on the tg and no one was able to find a solution, not sure if it's the best things to do rn

I believe this issue is now re-enabled since our origin refactor #617


[Bug fix] notification system/exam pop ups

Checklist

[x] I tested all changes and all related features with different users (student, tutor, editor, instructor, admin) on the test server https://artemistest.ase.in.tum.de.

[x] Client: I added multiple screenshots/screencasts of my UI changes

Motivation and Context

This is a follow-up PR to #3903. It fixes the following issues :

Bigger problem statements work now as they should (no internal server error)
Markdown formatting is correctly displayed in the diff. view
The button text has the same style as the other buttons now (e.g. First Letter Uppercase)

Description

Detailed issue description and how I fixed them:

If the problem statement was bigger than a certain length (small) an internal server error would occur. This was due to the fact that to transport the problem statement via the notification it has to be appended to one of its properties (i.e. target property). Before sending notifications they get saved in the db. In the db the target property has a max size (ca. VARCHAR 255), so it is very easy to make a bigger problem statement than this.
I talked with Stephan about this issue and we decided to simply not save the problem statement in the db together with the target property but continue to send it via the notification. I just added a simple check if the notification that should be saved is related to an exam and if so remove the problem statement, save the notification, and add it again for sending.

Previously when looking at the difference view (with new green changes and red old ones) the markdown (e.g. headers or paragraphs, etc.) was removed. This was due to the implementation of an external function I used to calculate the difference.
I copied and modified this function so it keeps the preexisting markdown intact.
(diff_prettyHtml from DiffMatchPatch)

trivial change in translation
A gif showing that it works with longer text now without any errors.

Image showing that markdown formatting is preserved in the diff. view :

Steps for Testing

The functionality of the feature was not touched, therefore I think that manual testing is not too critical here.
(Especially because it seems to be quite hard/unpopular to test this kind of multiple users exam-mode PRs)
If you still want to test it manually please look at the mentioned predecessor PR, there you can find a very detailed explanation.
Simply look at the code changes.
Test Coverage
Quite small changes so no change in coverage.

I close this PR because its changes were merged into the original PR https://github.com/ls1intum/Artemis/pull/3903 already.


[promethesus-adaptor] use the new tag name

Is this a new chart
No
What this PR does / why we need it:
Some metrics labels (namely pod_name and container_name) have been
removed in Kubernetes 1.16 (deprecated for a few releases). This patch
switch to use the new metrics labels so that metrics can be properly
retrieved and parsed from Prometheus.
See more details about the removal of metrics labels here:
https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG-1.16.md#removed-metrics
Which issue this PR fixes
Special notes for your reviewer:
Checklist
[Place an '[x]' (no spaces) in all applicable fields. Please remove unrelated fields.]

[x] DCO signed
[x] Chart Version bumped
[x] Variables are documented in the README.md
[ ] Title of the PR starts with chart name (e.g. [stable/mychartname])

/assign @hectorj2f

@steven-sheehy Thanks for the review. I updated the min k8s version in readme to 1.14 given that the new labels are introduced in 1.14:
https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG-1.14.md


[BUG] CAN NOT RUN APP

../../../.pub-cache/git/flutter_wechat_assets_picker-b6d82ba0e88b0114a93cea5ae65a2ec3f75e0520/lib/src/delegates/asset_picker_builder_delegate.dart:1639:35: Error: Required named parameter 'isOriginal' must be provided.
return LocallyAvailableBuilder(
^
../../../.pub-cache/hosted/pub.dev/wechat_picker_library-1.0.3/lib/src/widgets/locally_available_builder.dart:13:9: Context: Found this candidate, but the arguments don't match.
const LocallyAvailableBuilder({
^^^^^^^^^^^^^^^^^^^^^^^
../../../.pub-cache/git/flutter_wechat_assets_picker-b6d82ba0e88b0114a93cea5ae65a2ec3f75e0520/lib/src/widget/builder/video_page_builder.dart:229:35: Error: Required named parameter 'isOriginal' must be provided.
return LocallyAvailableBuilder(
^
../../../.pub-cache/hosted/pub.dev/wechat_picker_library-1.0.3/lib/src/widgets/locally_available_builder.dart:13:9: Context: Found this candidate, but the arguments don't match.
const LocallyAvailableBuilder({
^^^^^^^^^^^^^^^^^^^^^^^

i have save issue


Update Conqueror.toml for tesntet-15

Merged PRs
https://github.com/anoma/namada-testnets/pull/1797
https://github.com/anoma/namada-testnets/pull/1391
Description
All previous genesis validators should name their PRs "Update {validator_alias}.toml for tesntet-15" and provide links to previous PRs merged.
If this is an UPDATE for a previous genesis validator
Checks are made against your net_address. If this has changed since the previous testnet, make sure you provide links of previous prs merged from your previous git username.
Thanks in advance!
Checklist before merging

[x] Only one toml is added in this PR
[x] The file being added is indeed a .toml file
[x] The toml being added is to the correct folder, and only to the correct folder
[x] The eth_hot_key and eth_cold_key are present
[x] The email, discord, elements telegram, and twitter fields are present and valid

Successfully validated transactions.toml file for commit hash e9644cc


[chore] fix typo in resource attributes docs

Changes
This fixes what looks like a typo in resource attributes documentation for the telemetry.distro.* group.
Merge requirement checklist

[x] CONTRIBUTING.md guidelines followed.
[x] Change log entry added, according to the guidelines in When to add a changelog entry. changelog entry not needed

If your PR does not need a change log, start the PR title with [chore]

[x] schema-next.yaml updated with changes to existing conventions. not needed.

Nit: both telemetry.sdk.* and telemetry.distro.* attributes here are in one section called Telemetry SDK. Do we want them in separate sections in docs/resource/README.md? I don't have a strong opinion, works either way for me.

Nit: both telemetry.sdk.* and telemetry.distro.* attributes here are in one section called Telemetry SDK. Do we want them in separate sections in docs/resource/README.md? I don't have a strong opinion, works either way for me.

What do you suggest here, having a single Telemetry section instead with all the telemetry.* attributes ?
I can definitely do that in a follow-up PR once this is merged (just :+1: on this comment and I'll do that).


Preset disable feedback and improvements

a0bd64a9fe7fd3e8f26935b5e1819e3b29b629d3 added way for disabling presets. When presets contain some configurations to plugin enabled values e.g. skybox = true, that preset can be disabled with turning the toggle switch off.  Disabling will turn every plugin off that has the enabled = true in the preset.
With this you can make easy toggles for plugins by simply creating a preset and then adding some configurations to it. Turning the preset off will turn the plugins off and turning on will enable them back. It does not edit plugin settings so if you wan't to edit e.g. skybox colour, it has to be made as before.
I'd like to hear your toughts and some feedback about this feature

@Jademalo Would you be interested to test this and give some feedback?

Seems to be working as I would expect, though I did note a couple of little things.
If a profile is disabled that is also an auto-updating profile, the auto-updating should be set to standby before the profile is disabled, same as if another profile is loaded. Disabling a preset like this can lead to some weird situations, such as;

If you have two presets that are the same except one of them has a plugin on/off setting selected, when you select the preset without that selected the other preset will flicker on and off.
(Actually, I think this is the same bug as I mentioned in #53)

The only other bit of feedback I have is it can feel a bit... Unclear?
I've ended up in a couple of situations when testing where a plugin has been disabled without me noticing, since there's no feedback that it's been disabled instead of a profile just not matching.
I'm wondering if there needs to be a third visual state for the toggle switch associated with this disabled state, since it's pretty easy now to end up in weird situations, but after a good bit of thinking about it I can't really think of a good way to make it work.
Another thought is maybe require this to be specifically enabled on a per-preset basis, but I think that might actually make the vagueness worse.
Another idea could be to automatically and forcibly enable plugin on/off state as a saved option if a preset has any settings selected for a plugin, but that again feels like a less than elegant solution since you're forcing something to be set.
I think ultimately I feel like as currently implemented, this conflicts with how the plugin is meant to work adding an off switch to something that can't entirely be turned off.
If the core design of the plugin was different such as having a base config set and then the presets all being overlays, this would make a lot more sense I think since you'd be able to "disable" a specific preset as a whole. That's ultimately a different plugin entirely, though.

After having a think, the way I think I would implement this honestly is to simplify and separate this by having a totally different type of preset that specifically has the job of enabling and disabling plugins.
Maybe have another right click option on the + icon for "Create new toggle preset", which gives a simplified list that lets you select which plugins you want it to control. Enabling this preset enables the selected plugins, disabling it disables the selected plugins, nothing else.
This could then have 3 visual states on the toggle - Yellow on for matching/all enabled, Red off for all disabled, and grey off for partially matching (so some are enabled and some are disabled).
There would probably need to be a visual indication that the preset is a toggle preset instead of a standard preset, but I think this would go a long way in terms of getting rid of vagueness and keeping functionality clear.

So to sum up my thoughts - It works well as implemented, but for me personally I feel like the current implementation conflicts with the core design of the plugin.

Thanks for the feedback. You are right about it feeling a little unclear or "out of the design". This was a little test I wanted to make since having a feature that allows for simple toggling would be usefull most of the basic RL people out there. Not many people needs a complex preset setup for every activity, mostly just a simple toggle for fishing plugin when fishing etc. This would make it possible to easily switch multiple plugins on/off instead of using the settings tab.
This commit didn't include any ux changes other that the preset disabling since that is something to be discussed more later when the design is finnished. Most importantly you made it clear that it works but its not very intuitive.
I was thinking of some sort of toggle for presets for having "toggler presets" before making this but I wanted to test if this was good as it is but clearly its not. You are right that it conflicts with the base logic of the plugin since you really don't have any means of seeing if preset was manually disabled or it was toggled of because the configs differ. This could be fixed with the third style of toggle or some other ui addition like some text describing a preset is a "toggler".
The end goal for this is to have a way for easily toggle plugins included in presets for easy switches in one preset. The question is how do we implement this. You can do this now with having 2 presets that store different enabled values e.g. for fishing and the switch between them. Maybe you could convert some preset to be a toggler or alternatively you could "stack" 2 presets together by storing configs that get loaded when the preset is enabled and what when disabled.
One thing is sure that if there is preset disabling (the switch turning off) there needs to be a way to see if preset is disabled or if it does not match your configurations.

Or alternatively you could "stack" 2 presets together by storing configs that get loaded when the preset is enabled and what when disabled.

I had originally written a lot more here, but honestly after thinking I think this is the best way to go about it. Link two presets that represent two states into one, allowing an on/off toggle.
This would function essentially like the overlays thing I mentioned, it would allow a lot of flexibility, and it would stay true to the design of the plugin imo.
In my favourite Main/Iron example, those two presets could be collapsed into one called Iron. Enabling it overlays the config necessary for playing an iron, disabling it loads the config for a standard acc.

he only thing I can think is a toggle switch that goes between left, middle, and right, with left and right being yellow and middle being grey

I'd like to keep the simple on/off switch because it matches with the RuneLite settigns and mostly "its part of the design". I tought about having current on off for the configurations matching and one much darker off switch for displaying if a preset is disabled.
How would the preset linking or stacking work ux wise? Right click context menu like item highlights? Drag and drop is out of the question client wise.
If there was a way to stack presets, I'd say there still should be a way to convert one single preset to a toggler (e.g. it converts itself to a stacked preset with on anf off states). Current preset stacking would be just a addition to the current plugin logic and the toggler switch would be a nice addition to that. Making stacked on/off states is somewhat time consuming so for simple toggles, that is needed.
Maybe something like this for displaying the preset has been linked or stacked to some other and then have similiar double arrow icon to swap between the presets. Toggling the preset off would bring the other to the front and the also have the ability to separate the presets.

I've had a go at something, but honestly this feels like a different feature entirely. I'm struggling to think of a good idea without inventing a new UI element for a three state toggle.

This is the best I can come up with, where the linked profile you select is given a highlighted orange name. Clicking the other name will switch to that profile.
...but then what is the point of this, why not just use two profiles as you can now.
The problem is that the toggle switch is very specifically On/Off in it's design, but we're trying to use it to denote A/B (or C).
Green and red are used in the standard Runelite UI for the Google account login, the only thing I can think is having the toggle switch be red on the left/off position, green on the right/on position, and grey if neither match. But that definitely feels like a stretch as far as UI conventions go.
I'll have another think, but I'm struggling to come up with any ideas. The problem is that if we've got two profiles stacked/linked, we're using the switch to denote A/B when in all other scenatios in the plugin the switch means matching/not matching.

How do we denote that a preset is a "toggler"?

I think maybe an icon similar to the cloud icon now, next to the name. I don't know what icon to use, but that seems most logical to me. It might be worth having icons for both standard and toggler presets honestly, for consistency sake.

Do toggler presets include also plugin settigns or just the enabled state?

In my opinion, I think the right way to do this is to just have the enabled state. Make these presets very basic, with only a single function. If you want more complex function you'd use preset pairs anyway, this is specifically a simple easy toggle so the functionality should be simple imo.

How should they behave when the preset has been enabled and then its configs differ after a while?

Assuming by configs differ we're talking about plugins being inconsistently enabled/disabled, I think the best way to handle togglers would be to not change the toggle switch at all automatically, and only have it change on user input.
If the user toggles it from the off to on state, all plugins associated with it are turned on, regardless of their current state.
If the user toggles it from the on to off state, all plugins associated with it are turned off, regardless of their current state.
If a user got it into a weird state where the preset was set to on but some plugins were off and they wanted to use it to turn all plugins on, they could flip it twice.
It might be worth having a separate indicator for if it's out of "sync", maybe turning the icon that indicates it being a toggle preset grey or something?

I don't know if this feature is just something I think someone would need and maybe we should think of some real scenario where toggler preset and also normal presets were used. The thing I like about the togglers is that its very easy to use and does what I think most people do... turn plugins on/off between different activities. I don't think many people change plugin settings so often other than red player indicators to wildy etc etc. And also togglers are just one on/off preset so much simpler to understand vs current presets.

Honestly I think you've answered your own question - This is for people who just want a very basic on/off for a set of plugins. Sure there are people like me who will really go deep and use the complex features to their full effect, but this will definitely be useful for some imo.

I'll see what I can come up with. Currently wating for RuneLites core profile switcher to be released https://github.com/runelite/runelite/commit/831189459ba51538b239a33b7d632bd2d9e4e8a3. I think that we need to make some changes to this plugin to not do things that the core will do so I'm waiting a little with this to see how that goes.

Oh wow, interesting to see it finally be tackled in core. Honestly wasn't expecting that


feat: shell and composer cosmetics

https://github.com/dxos/dxos/assets/3398896/6f50121e-9c61-44d1-ba76-bc53115fe1f5

🤖 Generated by Copilot at 0f0d72f
Summary
📚🌈🎛

This pull request adds Storybook support and a ProgressBar component to the composer-app package, and updates some UI components in the react-shell package to use the Action component and the aurora-theme variables. It also modifies some style variables and animations in the aurora-theme package, and changes the vault.html file to use the dark theme.

We added some stories and styles
To make our UI components beguile
We used Action and ProgressBar
And tweaked some colors and props so far
And tested them all with Storybook's dial

Walkthrough

Add Storybook configuration and stories for the composer-app package (link, link, link, link, link, link)
Implement and use the ProgressBar component to show loading indicators in the composer-app package (link, link, link, link, link, link)
Replace the Button component with the Action component in the react-shell package, and add a variant prop to the Action component (link, link, link, link, link, link, link, link, link, link, link)
Add a cutout prop to the InvitationManagerView component in the react-shell package, to create a different background and border style (link)
Force the dark theme in the vault.html file in the vault package, for testing purposes (link)
Modify the groupSurface variable in the surface.ts file in the aurora-theme package, to add transparency, blur, and dark mode (link)

I think I'd prefer to take a path that doesn’t trade the main area’s usability / expressive range for the topbar’s visual appeal, which is the only reason I'm requesting changes. I'm looking forward to trying out all the other ideas here!

we should discuss this in more detail, it's unclear to me what the concrete position is here (e.g. usability/expressive range?)

Looking good. Some minor comments:

I assume the "flashing circle" when clicking is an artifact of how you're recording this?
The scroll-under header opacity is clean in this demo, but I think it will work well with other plugins (e.g., Table plugin) and think we should instead go with a Notion-like header bar.
I would really like to see larger dedicated buttons to create a space and create objects (i.e., with a drop down that just lists object types).
I feel strongly that the main surface area for the text document (or any other input) should be #fff.
Markdown => Documents and use the Folder icon for the folder.
Mobile.

The scroll-under header opacity is clean in this demo, but I think it will work well with other plugins (e.g., the Table plugin, which also scrolls and the Sketch plugin, which doesn't) and think we should instead go with a Notion-like header bar.

I agree with @richburdon on this one. I appreciate that you're trying to explore a distinct design direction here with the glass scroll-under look and I understand the priority of not chewing up vertical space with a fixed element, but I think a fixed header provides the most flexibility and control for plugins.
Here's some use cases I'm thinking of:
Some plugins will want additional "menu" or controls in their main area and the scroll under will just look weird. For example, the TLDraw plugin:
LIGHT:

DARK:

In cases like these, how do we create a visual separation between the header and plugin's UI such that they don't clash?
Some plugins don't scroll, or scroll within the main area in creative ways. For example, Kanban rows won't scroll up, the scrollviews are within each column. The table plugin will have fixed headers that won't scroll.
LIGHT:

DARK:

Same challenge: how to differentiate from the "plugin's area" and the header in a cohesive way.
Some ideas:

If you're really committed to the "glassy" design direction (we're not yet using that style anywhere else in the UI that I see), you could make the header fixed and also transparent/glassy on scroll-under. When there's not content underneath, the transparency wouldn't take effect.
Another option would be for plugins in the main area to opt-in to different header styles if more vertical space is desired.
Yet another option is for the header to "auto-hide" on scroll down and "show" on scroll-up, which frees up the vertical space in cases where plugins are long and scroll-y.

All that being said, it seems to me the quickest thing here is to just "copy Notion" or one of the many examples of fixed header, three-column layouts.

A few random comments:

Can we have a dedicated "+" to add item button on Space hover as discussed in Figma?

A la Notion:

Can we use the same icon to open/close the two sidebars? I like this icon, but really don't care as long as they are the same on both sides:

I know we just moved the "Powered by DXOS" into the settings, but it actually did a nice job of anchoring the bottom of the left sidebar. Minor vote for moving it back there again. :-P


SparkSession breaks CoverageDistribution python code

closed by https://github.com/bigdatagenomics/mango/pull/359


Add dataset

Improvements on the add dataset functionality.

refactor: Extract out make search query
refactor: Use enum for SearchCubeFilterType
fix: Use correct value for TemporalDimension
fix: Use correct component iri when tweaking iri to be joinBy
feat: ControlTabField handle multi components field
fix: Missing localized string
wip fix nan
feat: Show multiple for vertical axis in case of combo chart + show merged temporal dimension according to time unit
feat: Use chart spec to known where are the iri attributes
feat: Show correct dimension label in metadata panel

Thanks for this Bartosz, the flash of filters is due to previous data not being kept in the filters (the useQuery hook not returning the data if the key changes), previous data behavior should be tweaked for the filters. I'll do this in another PR. I'll also check the year filter not coming back there.

In fact, I took a look and saw that if I added the keepPreviousData attribute handling (like in react-query), I could manage not to have the filters "reload" and show a loading indicator. The change of loading the multi-dataset data prior to actually changing the chart config must help there.


New Glue - Herbs2memcached

I'm suggesting a new herbs glue for storing and fetching entities in an in-memory database
Initially, the idea is to build the glue for Memcached and then replicate it for Redis as well.
Here is the first (and not optimized) alpha version: https://github.com/jhomarolo/herbs2memcached/tree/main/testdb
I thought about replicating the methods (set, setmulti, get, getmulti) and still doing some abstractions like getAll and getbyId.
Additionally, I'm trying to resolve a known timeout issue in the Memcached library (https://github.com/3rd-Eden/memcached/pull/199)
Feedbacks are welcome

Here are some thoughts.
Before starting going deep into the code, I would like to understand the use case. There are two scenarios that I can think of where memcached could be used:
no database, just memcached
In this case, memcached is the main repository, no other database is used. The approach you are presenting is good for this scenario. However, I can't think of a real use case for this scenario, where all the data is stored in a volatile memory, with no persistence. Probably there are some, but it is more a exception. In this case would be worth the effort?
database + memcached
Here, the memcached is used as a cache for the database.
In this case, the glue should be a cache adapter (or something like that [1]), not a repository.
The adapter wouldn't need a data mapper to save the entity, the serialization is straightforward (JSON.stringify) and could use the metadata to set the key (entity IDs).
To fetch the entity, the adapter would need a data mapper to deserialize the a valid entity since it would not interact with the repository. And fallback to the repository if the entity is not in the cache.
The adapter should be able to work with any repository. This can be a challenge, since the adapter would need to know the the interface of different repositories (herbs2knex, herbs2mongo, etc).
// very simplified example
const User =
        entity('User', {
          id: id(String),
          nickname: field(String),
          password: field(String)
        })

const user = new User({ id: '1', nickname: 'john', password: '123' })

const userRepo = new UserRepo()
const userCache = new UserCache(userRepo)

await userCache.insert(user, { ttl: 1000 })
const userFromCache = await userCache.getById('1')

[1] If not a adapter, maybe a chain of responsibility of repositories, where the first handler is the cache and the second is the repository.
Does it make sense?


Static Code Analysis Not Reading .pylintrc file

I have a .pylintrc file in the Spyder project directory and in the file directory (it is located in a subdirectory). It has the following line in the [MASTER] block:
extension-pkg-whitelist=numpy
It also has the following lines in the [TYPECHECK] block:
ignored-modules=numpy
ignored-classes=optparse.Values,thread._local,_thread._local,numpy
However, the code analysis still gives me an error on the second line of these two:
time1 = df.index.to_datetime()
time2 = np.array([time1.year, time1.month, time1.day,
time1.hour, time1.minute,
time1.second, time1.microsecond/1000]).transpose()
The error is [E1101] Instance of 'list' has no 'transpose' member
Is there another directory that Spyder's call of Pylint must be reading from? How do I check this? Also, my project is on a shared network drive (temporarily).
Versions and main components

Spyder Version: 3.2.3
Python Version: Anaconda 3.6
Qt Version: 5.6.2
PyQt Version: 5.6.0
Operating system: Windows 7

Sorry, at the moment we don't read the contents .pylintrc when running Pylint inside Spyder.
You're welcome to send us a pull request to provide this functionality.

I've been able to do this just fine on a per-user basis on Windows by just editing the .pylintrc file in my user folder (/Users/username/,pylintrc). I would guess what is missing is per-project reading/overriding of this?

I think so, yeah.

I suggest using self.process.setWorkingDirectory(getcwd_or_home()) in https://github.com/spyder-ide/spyder/blob/master/spyder/plugins/pylint/widgets/pylintgui.py#L320 and specifying the full path to the file in https://github.com/spyder-ide/spyder/blob/master/spyder/plugins/pylint/widgets/pylintgui.py#L341 and https://github.com/spyder-ide/spyder/blob/master/spyder/plugins/pylint/widgets/pylintgui.py#L343
Alternatively, we could check for a .pylintrc file in the project directory and - if found - make note of it in the GUI widget. In the widget we can give the user an option to use this .pylintrc (checkbutton) and - if so - explicitly pass the path to the .pylintrc file by adding the --rcfile option to the p_args in https://github.com/spyder-ide/spyder/blob/master/spyder/plugins/pylint/widgets/pylintgui.py#L348
What do you think, which one do you prefer?

@tovogt, thanks for your suggestions. We were thinking to implement something similar with @goanpeca.
@goanpeca, what do you think?

Yes, indeed this is in out to do list. I prefer the option that does not add any extra options for the user and does "the right thing"
Is there an actual use case where a user might be with a project open and wants to use a different pylint? like the global one? if this is the case then indeed we might have to add an option to select between global pylint config and current project config (if a project is open of course)

You could have a .pylintrc in the project's root and additional .pylintrc files in subdirectories that are supposed to apply only to the files in the subdirectories. This as open issue with pylint, see https://github.com/PyCQA/pylint/issues/618.

Hi, can I ask if this is still true?
"Sorry, at the moment we don't read the contents .pylintrc when running Pylint inside Spyder."
I have tried putting .pylintrc in various places, even in the environmental variable PYLINTRC , but it seems like running Code Analysis within Spyder does not read any .pylintrc file at the moment. It would be good if you could confirm, thanks.

Hi, can I ask if this is still true?
"Sorry, at the moment we don't read the contents .pylintrc when running Pylint inside Spyder."

Yes, it is. We'll try to fix it in a couple of months.

@ccordoba12 Modifying pylint settings via a .pylintrc in my home directory used to work as of my message above), but I can confirm it doesn't as of Spyder 4.x (not sure about before; of course, per project settings with the .pylintrc in the working directory doesn't work either), while running the standalone pylint command from the same conda env on the same file does pick up the custom settings. I understand why per-project settings doesn't work but I'm not sure why Pylint isn't still falling back to the .pylintrc in the user home directory, as I don't see anywhere obvious that Spyder is overriding this.
For reference, the one approach that does work currently with Spyder is including the .pylintrc in a parent directory of the file in question, inside the package directory (e.g. project_dir/src/package_name/.pylintrc for a file project_dir/src/package_name/subpackage_name/module_name.py) so that pylint finds it; however this won't work for code that isn't in a package (analysis scripts, tests, etc), and separate .pylintrc files will be needed for every package (due to global configuration in the home dir apparently not being picked up).
While the change in #10751 will make this approach stop working (since the working directory will no longer be inside the module, unless the user manually puts it there), a duplicate .pylintrc file in the project directory is needed anyway if one wants to run pylint from the command line or use an automated linter (e.g. on a CI) on the project, as I will be. This actually does have one small advantage, however, as the user can enable different checks to be run in Spyder and in an external/automated/CI linter run in the normal fashion; one use case of this is ignoring failed imports in Spyder but not on a CI—since Spyder runs Pylint in Spyder's environment, not that of the project. However, with some extra work, one can simply specify a different config file or Pylint options on the command line when calling Pylint outside of Spyder so this certainly isn't worth keeping just for this behvior.


Fixing description of why a transpose rule is not needed

closes #1
cc @shoyer

Thanks :D
iclearlyhavenoideawhatimdoing.gif

Thanks :D
iclearlyhavenoideawhatimdoing.gif


 I would really like it, because that way I can also easily backup my settings, etc.
Any hints?

I don't think I understand what you mean persistent storage - can you clarify that, or what the problem is exactly? If you'd like to do something like export your settings, use the rssbackup command, and to re-import them into another container for example use the restore command


Fix upload image bug

Tried "apollo-server-core/graphql-upload" : "^11.0.0".
But it didn`t fix the issue with auto-rewriting "graphql-upload" to "^8.0.2" in package-lock.json
The project works without this fix.

Tried "apollo-server-core/graphql-upload" : "^11.0.0".
But it didn`t fix the issue with auto-rewriting "graphql-upload" to "^8.0.2" in package-lock.json
The project works without this fix.


GrowingSpheres search path has wrong order and length

          Noticed that for some reason we end up with twice as many samples in the path as number of iterations. Also the generated plot doesn't really make sense, because the last sample in the search path is not necessary the counterfactual

Originally posted by @pat-alt in https://github.com/JuliaTrustworthyAI/CounterfactualExplanations.jl/pull/252#discussion_r1245349641

Note that this also leads to inconsistencies in the evaluate and benchmark functions (see #271)


Get intermediate weights of a CNN in graph model

Hi,
I am using graph model with one input and two outputs. I have several convolution and pooling layers. I want to obtain the weights after the first convolution layer (named as 'conv1'). I implemented  the code given in the documentation. Here is the pertinent code for obtaining the weights.
model.fit({'input':X_train, 'output1':y1_train, 'output2':y2_train}, batch_size=128, nb_epoch=250)

# Save the model weights
model.save_weights('model_weights.h5', overwrite=True)

# Convolution Layer weights
get_conv_layer_output = theano.function([model.inputs[i].input for i in model.input_order], model.outputs['conv1'].get_output(train=False), on_unused_input='ignore')
	conv_output = get_conv_layer_output({'input':X_train})
	print("Printing conv1 layer weights: ",conv_output)

I got the following error.
File "train.py", line 269, in <module>
get_conv_layer_output = theano.function([model.inputs[i].input for i in model.input_order], model.outputs['conv1'].get_output(train=False), on_unused_input='ignore')
KeyError: 'conv1'

Can someone please tell me how I can save the weights after the convolution layer in a graph model?

convout1_f = theano.function([model.get_input(train=False)],
                              convout1.get_output(train=False))

Where convout1 is your convolution layer.
You can have a look at this notebook where I think I do what you want.


SSL errors with id.twitch.tv

The underlying exception seems to be:
aiohttp.client_exceptions.ClientConnectorCertificateError: Cannot connect to host id.twitch.tv:443 ssl:True [SSLCertVerificationError: (1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:997)')]

For some reason twitchio won't work for me anymore due to SSL errors. Is this on Twitch's end? Is it an issue in aiohttp that can't be addressed in twitchio? Or is it just a configuration on my end? This previously worked fine then stopped after my latest OS update to macOS Monterey 12.2.1 so perhaps that's the culprit.

Hey, can you try the following for me:
Navigate to your Applications/Python 3.X/ folder and double click the Install Certificates.command.

Hello @EvieePy and thank you for the fast response!
I unfortunately don’t have such a file on my computer. I had seen this on some other forum posts elsewhere also and so even downloaded the Install Certificates.command from the Python GitHub repo but to no avail. I’ve also tried uninstalling and reinstalling certifi, aiohttp, twitchio, and Python itself. None of this seems to work.

@EvieePy this issue was just confined to me. I deleted my entire virtual environment for this project and rebuilt it and now it works fine. Thanks for your help!

Hi! I am seeing this same exact error, suddenly, starting Thursday or Friday.
Traceback (most recent call last):
  File "/home/thatsamorais/.local/share/virtualenvs/twitch-creamery-MpouS0DB/lib/python3.9/site-packages/twitchio/client.py", line 178, in connect
    await self._connection._connect()
  File "/home/thatsamorais/.local/share/virtualenvs/twitch-creamery-MpouS0DB/lib/python3.9/site-packages/twitchio/websocket.py", line 128, in _connect
    data = await self._client._http.validate(token=self._token)
  File "/home/thatsamorais/.local/share/virtualenvs/twitch-creamery-MpouS0DB/lib/python3.9/site-packages/twitchio/http.py", line 318, in validate
    async with self.session.get(url, headers=headers) as resp:
  File "/home/thatsamorais/.local/share/virtualenvs/twitch-creamery-MpouS0DB/lib/python3.9/site-packages/aiohttp/client.py", line 1117, in __aenter__
    self._resp = await self._coro
  File "/home/thatsamorais/.local/share/virtualenvs/twitch-creamery-MpouS0DB/lib/python3.9/site-packages/aiohttp/client.py", line 520, in _request
    conn = await self._connector.connect(
  File "/home/thatsamorais/.local/share/virtualenvs/twitch-creamery-MpouS0DB/lib/python3.9/site-packages/aiohttp/connector.py", line 535, in connect
    proto = await self._create_connection(req, traces, timeout)
  File "/home/thatsamorais/.local/share/virtualenvs/twitch-creamery-MpouS0DB/lib/python3.9/site-packages/aiohttp/connector.py", line 892, in _create_connection
    _, proto = await self._create_direct_connection(req, traces, timeout)
  File "/home/thatsamorais/.local/share/virtualenvs/twitch-creamery-MpouS0DB/lib/python3.9/site-packages/aiohttp/connector.py", line 1051, in _create_direct_connection
    raise last_exc
  File "/home/thatsamorais/.local/share/virtualenvs/twitch-creamery-MpouS0DB/lib/python3.9/site-packages/aiohttp/connector.py", line 1020, in _create_direct_connection
    transp, proto = await self._wrap_create_connection(
  File "/home/thatsamorais/.local/share/virtualenvs/twitch-creamery-MpouS0DB/lib/python3.9/site-packages/aiohttp/connector.py", line 971, in _wrap_create_connection
    raise ClientConnectorCertificateError(req.connection_key, exc) from exc
aiohttp.client_exceptions.ClientConnectorCertificateError: Cannot connect to host id.twitch.tv:443 ssl:True [SSLCertVerificationError: (1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1129)')]

I am on Ubuntu v20.x, and these actions did not resolve my issue.
sudo apt-get install ca-certificates
sudo update-ca-certificates --fresh
sudo apt-get remove ca-certificates

Removing the virtual environment as a solution implied by @danzek does not change anything for me, and might not get to the root cause. Following the above steps, I tried this again, but I am not seeing a change.
Could you elaborate a little on whether there is an analogous action I can take to accomplish "Install Certificates.command" in linux? I believe that is an OS X solution.

* TCP_NODELAY set
* Connected to id.twitch.tv (<IP_ADDRESS>) port 443 (#0)
* ALPN, offering h2
* ALPN, offering http/1.1
* successfully set certificate verify locations:
*   CAfile: /etc/ssl/certs/ca-certificates.crt
  CApath: /etc/ssl/certs
* TLSv1.3 (OUT), TLS handshake, Client hello (1):
* TLSv1.3 (IN), TLS handshake, Server hello (2):
* TLSv1.2 (IN), TLS handshake, Certificate (11):
* TLSv1.2 (IN), TLS handshake, Server key exchange (12):
* TLSv1.2 (IN), TLS handshake, Server finished (14):
* TLSv1.2 (OUT), TLS handshake, Client key exchange (16):
* TLSv1.2 (OUT), TLS change cipher, Change cipher spec (1):
* TLSv1.2 (OUT), TLS handshake, Finished (20):
* TLSv1.2 (IN), TLS handshake, Finished (20):
* SSL connection using TLSv1.2 / ECDHE-RSA-AES128-GCM-SHA256
* ALPN, server accepted to use h2
* Server certificate:
*  subject: CN=id.twitch.tv
*  start date: May 26 00:00:00 2021 GMT
*  expire date: Jun 24 23:59:59 2022 GMT
*  subjectAltName: host "id.twitch.tv" matched cert's "id.twitch.tv"
*  issuer: C=US; O=Amazon; OU=Server CA 1B; CN=Amazon
*  SSL certificate verify ok.
* Using HTTP2, server supports multi-use
* Connection state changed (HTTP/2 confirmed)
* Copying HTTP/2 data in stream buffer to connection buffer after upgrade: len=0
* Using Stream ID: 1 (easy handle 0x56476eefae30)
> HEAD / HTTP/2
> Host: id.twitch.tv
> user-agent: curl/7.68.0
> accept: */*
>
* Connection state changed (MAX_CONCURRENT_STREAMS == 128)!
< HTTP/2 404
HTTP/2 404
< date: Sun, 20 Feb 2022 16:27:52 GMT
date: Sun, 20 Feb 2022 16:27:52 GMT
< content-type: text/plain; charset=utf-8
content-type: text/plain; charset=utf-8
< content-length: 19
content-length: 19
< server: nginx/1.18.0
server: nginx/1.18.0
< x-content-type-options: nosniff
x-content-type-options: nosniff
< x-ctxlog-logid: 1-62126c08-0d91cb1132873268659244a9
x-ctxlog-logid: 1-62126c08-0d91cb1132873268659244a9

I was setting up certbot and nginx so I could run an eventsub webhook callback, and when I went to test, all of my bots emit this error.
Thank you for your time!

@ThatsAMorais I'd recommend joining the discord to discuss this further but may I ask what you are importing into your bot? Would you happen to be using a MySQL lib?

I should join the discord, thank you! I assume the link is somewhere on the repo home page?
Can confirm that I am not using a MySQL lib, as I do not yet have any database integrations.
Thank you for your quick reply!

After downgrading my pipenv python version to 3.8 from 3.9.9 it fixed my issue.

Some potentially helpful links:
https://stackoverflow.com/a/58394602/868044
https://stackoverflow.com/a/70834894/868044
https://stackoverflow.com/a/70180553/868044
I think I also uninstalled and reinstalled the certifi lib via pip while diagnosing my issue as well, but only rebuilding my virtual environment altogether ultimately resolved my issue.


Xilinx_DSP pass throws std::out_of_range

Steps to reproduce the issue
bugreport.tar.gz
Run the command in command.txt (after either setting YOSYS environment variable or editing the file).
Expected behavior
Produce an output (without crashing) that contains DSPs.  We are not super concerned about the actual number of DSPs being produced at this point, and are not very sure about the exact number of DSPs that should be produced.
Actual behavior
25.18. Executing XILINX_DSP pass (pack resources into DSPs)
...
terminate called after throwing an instance of 'std::out_of_range'
what():  vector::_M_range_check: __n (which is 0) >= this->size() (which is 0)
[1]    6930 abort (core dumped)  /scratch/safe/SymbiFlow/yosys.fresh/yosys -E .deps -p "tcl synth_xilinx.tcl"

Testcase reduced to:
module top(...);
input wire [31:0] A;
output wire [31:0] P;

assign P = A * 32'h12300000;

endmodule

Hi @andrewb1999. Thanks for the report, and sorry for the delay in getting back to you -- I've been on leave for the past few weeks. Please do keep reporting any issues you're coming across and I'll be much more responsive moving forward.
I can see that @mwkmwkmwk just got to this before I was back, and I can confirm that his #1499 PR gets past the problematic xilinx_dsp in your testcase until terminating with:
5.44. Executing CLKBUFMAP pass (inserting global clock buffers).
Inserting BUFG on leaf.clk_bft[0].
Inserting BUFG on leaf.leaf_interface_inst.sfc.ConCtrl.fifo1_inst.async_cmp.dirset_n[0].
Inserting BUFG on leaf.leaf_interface_inst.sfc.opc.output_port_cluster[0].OPort.fifo1_inst.async_cmp.dirset_n[0].
Inserting BUFG on leaf.leaf_interface_inst.sfc.opc.output_port_cluster[1].OPort.fifo1_inst.async_cmp.dirset_n[0].
ERROR: TCL interpreter returned an error: can't read "::env(symb_dir)": no such variable

but this seems to be a separate issue.


Add/fix accessibilityLabel property values for Clipboard, XAML and Lottie Example pages

Description
Fix accessibilityLabel values to prevent issues with UIA ControlType/LocalizedControlType values being the same, or UIA Name property values being null on Lottie, Clipboard and XAML example pages.
Why
Resolves #453
Resolves #454
Resolves #474
What
What changes were made to the codebase to solve the bug, add the functionality, etc. that you specified above.
Screenshots
Clipboard before:

Clipboard After:

Lottie Before:

Lottie After:

XAML Before:

XAML After:

Microsoft Reviewers: Open in CodeFlow

@marlenecota for the accessibilityLabel changes, removing the component name for the label is intentional, since that is what is causing the issue within the UIA tree. Since the screen reader reads out the 'Name' property and 'ControlType' property consecutively, the 'Name' property cannot have the same value as the ControlType, since the screen reader will read out the same value twice.
E.g if accessibilityLabel='Simple combobox example', then Name='Simple combobox example' and ControlType='Combobox', and the screenreader will say 'Simple combobox example, combobox' which is a problem for understandability.


how to get current url ?

I need to store the url that I browse, does it exist in puppeteer any function that can get the url? through sun I can not, because the buttons are not links

page.url()?

How can I get a dynamically created URL ?
For instance, I click a button, and the URL gets updated (without a refresh). So it goes from home to home/imsaidomasd
It also gets copied into the clipboard, but I think the first way is a more straightforward solution

Yep, can confirm page.url() works fine for me in 2021

page.url() Not working at the moment 23-FEB-2022, can you help me?

@samimhakimi Can you provide a small code fragment that reproduces your issue?

@vsemozhetbyt Yes please check below code snippets. As in console, it shows blank.

(async () => {
  // The location

  const browser = await puppeteer.launch({
    headless: true,
  });

  const page = await browser.newPage();
  const url = await page.mainFrame().url();
  console.log(url);
  await page.goto(url, { waitUntil: "networkidle0" });

  await page.pdf({
    path: "page.pdf",
    format: "A4",
    printBackground: true,
    scale: 0.5,
    displayHeaderFooter: false,
    margin: { bottom: "50px" },
  });

  await browser.close();
})();

//

// Downloading PDF files
app.get("/downloadPDF", (req, res) => {
  // express.js
  res.download("./page.pdf");
});
//

I do not work with Puppeteer anymore

@samimhakimi  Sorry, I cannot reproduce, I get about:blank in the console, it is the URL of a new empty page.

@vsemozhetbyt  Yes, I am trying to get the URL of the new page when the user clicks the new page it should take the new page screenshots.

@samimhakimi Sorry, I cannot reproduce, I get about:blank in the console, it is the URL of a new empty page.

Same here


Starting to build out compactor daemon

Daemonizing the Compactor
Design goals:

Always be running compactions
Enqueue repos eagerly based on activity, more active repos should be compacted more frequently
Easily re-compact all repos
Get state of currently running compaction
Verbose output from compactions with stats and timing etc.

Gonna roll this out to the test environment once it's done backfilling repos


add name and desc

Description
adds name and description to the pipeline
Check the relevant boxes:

[ ] Bug fix (nonbreaking change that fixes an issue)
[ ] New feature (nonbreaking change that adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] Examples or tests (addition or updates of examples or tests)
[ ] Documentation update
[x] CI related update (pipeline, etc.)

Checklist

[ ] If relevant, a test for the change has been added or updated as part of this PR.
[ ] If relevant, documentation for the change has been added or updated as part of this PR.

Merge

Merge using "Squash and merge".
Make sure to use a relevant conventional commit message that is based on the PR contents. The commit message determines whether a new version of the modules needs to be released, and if so, which semver number to use).

@SirSpidey Can you rebase with main branch please?


The Payments wizard (transaction drill down) needs to show Payment memo and Payment ACK memo

Probably just combine them onto one panel, not two as in the Send wizard which is done because there is a server round trip in between

I've added a panel onto the Payments wizard to show the memos from the Payment Protocol, if available.
It looks like this:
I cannot show you it populated as I haven't got a payment server working yet with a successful exchange.

Needs reviewing to check memos actually appear once #483 is proven with a running payment protocol server.

The correct plural of memo is "memos" but perhaps "notes" is better visually and consistent with regular users expectations.

I've changed it already to 'memos'.
We might as well keep it as memo as that is what it is called in the protobuf so (most probably) is what other implementations will call it.

Memo in the context of an invoice seems rather technical to me. Notes is much more accessible to ordinary folk and is used throughout the rest of the application. Can we change it to notes and then if other wallets use memo we'll just update accordingly?

Sure no problem.

Screenshot with persisted Payment and PaymentACK notes:

The easiest way to test this is:

Start up the PaymentProtocolHTTPSServer. This runs on localhost:8443
Fire up MBHD with the command line parameter: file:////multibit-hd/mbhd-core/src/test/resources/fixtures/payments/localhost-signed.bitcoinpaymentrequest
Run through the use case from the alert

Awaiting review and closing

Verified working.
One observation: in the case where the Payment send fails the note is not recorded. This might be better entered as "Failed to send" but actually just shows up as blank in both fields. This is a corner case that can be picked up in Release 0.1.
Closing.


[Tech Debt] Move task-impls to hotshot

Closes #2294
This PR:
Demotes task-impls from a crate to a part of hotshot
This PR does not:
include any additional refactorings
Key places to review:
hotshot::tasks submodule, which is where task-impls was moved.

@shenkeyao can you re-approve please? Had to merge main since GitHub complained about conflicts

Since this already has some conflicts can we hold off on this until: https://github.com/EspressoSystems/HotShot/pull/2500 is merged since it changes so much in task_impls

This is unblocked now


lime display with include.xml files

It would be nice to have code completion support for libraries. I think this more or less just comes down to having lime display work with include.xml files?

It's a good thought, but I don't think we can do that. The problem is Haxe's code completion requires a main class, which libraries lack.
The obvious workaround is to give the library a simple/placeholder main class. But at that point, you might as well create a basic project (Main.hx plus project.xml are enough to get off the ground). Then Lime will attempt to generate code completion for every library imported by project.xml.
Basically, this should all just work as-is. If not, there may be something in the library's code that breaks code completion.

The problem is Haxe's code completion requires a main class, [...].

That's not true.

Really? Ok, then in theory this is possible. Not high priority since you can work around it, but we'll keep it in the list.

Looking at this a bit closer, CommandLineTools calls findProjectFile(), which deliberately excludes include.xml. This is, presumably, to avoid building/testing/running a library, but it also prevents code completion.
Fortunately, you can skip findProjectFile() if you specify lime display include.xml <target>. Other than that, I guess we could carve out an exception using a series of optional arguments.


[Help Wanted][SFTP] Directory Structuring issue

My Setup

Directory Structure

note here that I have multiple folders open in my workspace. One of these folders is what I want to sync.

settings.json (for sftp)

Issue

Deploy current file/folder

Warning :

Could you point out what is it that I'm doing incorrectly here
I have explicitly defined the target as "AWS GPU"

Resources/Instructions from this repo

Open (or create) your settings.json in your .vscode subfolder of your workspace.

Add a deploy section
Add the subsection packages and add one or more entry
Add the subsection targets and add one or more entry
SFTP Wiki

I even referred to the following issues

deplyOnSave

Resolved

So I was trying to use individual settings.json file for each directory by having the .vscode/settings.json within the directory itself. Is there any way to this?

Issue2

I now have a directory called "code", where all my other repos are.
This folder contains .vscode/settings.json
But, when I try to upload a small enough repo (refer to CycleGAN above) of around 120KB, there is no output in the terminal at all. I have to sync sub-folders of my repo to get this done. Is this a bug or am I doing something incorrectly?
updated settings.json file :


Support the unique ID docker 1.12 passes to match mount/unmount requests

New docker feature to pass a unique ID on mount and unmount reqs to ensure that mount/unmount requests are matched.

Tried out printing the ID thats passed on mount/unmount , getting a null string from docker. Debugging the plugin-helper and docker (its 1.12 rc2). Will try a newer 1.12 RC.
2016-07-25 22:55:09.59181396 -0700 PDT [INFO] Mounting volume name="dvol_2"
2016-07-25 22:55:09.591921092 -0700 PDT [INFO] Mount - name="dvol_2" mount-id=

Depends on #542

Made an issue on go-plugin-helpers to fix the request structure to allow mount IDs to get copied correctly - issue 55

Made an issue to docker (25331), the opaque ID doesn't seem to be coming in from docker on the unmount.

Issues in go-plugin-helpers are fixed and raised separate PR to update into repo.

Docker issue 25331 is fixed and changes should be available in the next RC. As discussed this issue isn't really fixing a bug thats not already addressed by volume ref counting in the plugin. Lowering priority on this issue and will take up later once we have a newer docker RC that has the fix for 25331.

Closing this issue as these IDs are of no use in the plugin, The plugin implements ref counting itself which is working fine as is. Keeping multiple IDs per volume and matching mount to unmount seems way more costly than a single ref count per volume.