4.641: Froze and crash

I was in the middle of my weekly tournament stream. Went to load the next match and I got this error:
Traceback (most recent call last):
File "main.py", line 4, in
import src
File "", line 991, in _find_and_load
File "", line 975, in _find_and_load_unlocked
File "", line 671, in load_unlocked
File "PyInstaller\loader\pyimod03_importers.py", line 495, in exec_module
File "src_init.py", line 1, in
from .TournamentStreamHelper import *
File "", line 991, in _find_and_load
File "", line 975, in _find_and_load_unlocked
File "", line 671, in _load_unlocked
File "PyInstaller\loader\pyimod03_importers.py", line 495, in exec_module
File "src\TournamentStreamHelper.py", line 7, in
from src.TSHAboutWidget import TSHAboutWidget
File "", line 991, in _find_and_load
File "", line 975, in _find_and_load_unlocked
File "", line 671, in _load_unlocked
File "PyInstaller\loader\pyimod03_importers.py", line 495, in exec_module
File "src\TSHAboutWidget.py", line 7, in
from .StateManager import StateManager
File "", line 991, in _find_and_load
File "", line 975, in find_and_load_unlocked
File "", line 671, in load_unlocked
File "PyInstaller\loader\pyimod03_importers.py", line 495, in exec_module
File "src\StateManager.py", line 183, in
StateManager.LoadState()
File "src\StateManager.py", line 23, in LoadState
StateManager.state = json.load(file)
File "json_init.py", line 293, in load
File "json_init.py", line 357, in loads
File "json\decoder.py", line 337, in decode
File "json\decoder.py", line 355, in raw_decode
json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)

I was using the twitch auto load to pre load the information into the overlay. My TO either had mistaken the second stream name as our main stream. Or I was trying to mark the next stream match and while it was looking for the actual stream match, it found it while I was actually marking it. All I know is that it happen while I trying to preload the next stream match into into the program.

The strange thing is that my second stream had no issues and it is running current version as well.

Also, whenever I have to change something, like characters or swap with player position, like it will also freeze up for a moment and then the program crashes after.

Just got around to reading this from last night, my team has also reported the same thing with swapping players. I think it might be something in TSH passing something wrong to the StateManager and causing these issues.

I remember it working perfectly fine when I was using it last week. And there was no major hiccup when I was running both my streams. Granted, I was remotely running the second stream PC through my main one. I won’t know till next week to see if it was API or internet that cause my program to go the way it did. Or is it because I ran one too many programs.

I've added a commit to avoid the crash reported on the opening post, where after a crash the program wouldn't even open. I'll perform some internet drop tests here (this also validates cases where startgg itself fails).

Also had this issue yesterday after I updated my locals overlay to use 4.641. Would randomly close (mainly when selecting sets to autofill from the event it felt like) and at one point, it wouldn't open again without the error above. I had to emergency delete the overlay folder and paste the original back again which fixed the issue long enough for the tournament to end.

It's also worth noting that OBS showed a much higher than normal amount of dropped frames during the event. I was dropping around 0.5% on the network side, while that's usually around 0.1% for this venue. That could support the dropped connection theory

So last night, everything was running smoothly up until we got to losers finals. While using the load set to get the losers finals info, the program closes out while trying to load the player information. The program started up successfully but then crash after trying to load the set. Got the error, reinstalled the program again, Thought I could enter the tags manually, but it crashed as soon as I load up the first tag. Then it started working again after trying to use load set. When it was time for grands, the program froze up again and then crashed. Got an error on startup, but strange enough, the program was still was able to run. Finally got the names in, had to swap, then the program crashed again. Took at least another two attempts before the program was able to stay on after the set was loaded and player names swapped.

I've had a few JSON loading errors myself (Though not as often), which caused the program to crash on startup, and usually what I do to fix it is remove the out/program_state.json file
Granted we still need to try and find the core of the problem though, I'm guessing there must be some weird edge cases with data retrieval we're not catching

One thing I did notice last night, when I saw the program does it data retrieval, Like it start the countdown at 4 and freezes right there. It either leads to the program crashing or it retrieves the data and countdown timer jumps to 1 and it resumes as normal.

Is this crash still a thing? Did we get to the root cause of it? (Maybe I should rename it to something more explicit)

I haven't had this issue in a while, it just sort of slowly started happening less and less with new versions. Now I just rarely get a crash when doing something like loading bracket or player lists

OK, what I'm going to do then is close this specific bug for now if @shadowdragon2007 agrees. If you run into a crash again, please reopen a bug with a description of what you were doing, the tournament link as well as the following files:

assets/log.txt
assets/log_error.txt
out/program_state.json


GPL v2/3 compatibility question

There is an open source game engine based on Quake GPL source that wouldn't mind getting Google Cardboard SDK integrated.
The developer raised concerns that SDK may not be GPL compatible.
Could someone from Google clarify license stance and if SDK is compatible with GPL v2 or v3 ?
Thanks.

The Cardboard SDK license is Apache 2.0.

From the developer of the engine: "The sdk is apache 2, but the GPL covers the entire work, including any libraries. You can do what you want with the headers Google provides, but that's not the source, and thus not compatible."
I am guessing he is talking about whatever comes in .jar with SDK or any libs that come in object form with SDK.

Sorry, but we can't provide legal advice on whether the cardboard SDK is
compliant or not with the license of another product.
On Sun, Feb 7, 2016, 9:53 AM motorsep<EMAIL_ADDRESS>wrote:

From the developer of the engine: "The sdk is apache 2, but the GPL covers
the entire work, including any libraries. You can do what you want with the
headers Google provides, but that's not the source, and thus not
compatible."
I am guessing he is talking about whatever comes in .jar with SDK or any
libs that come in object form with SDK.
—
Reply to this email directly or view it on GitHub
https://github.com/googlesamples/cardboard-java/issues/52#issuecomment-181063199
.

I'm not a lawyer and I'm not a developer, but this link might clarify the situation for you:
What legal issues come up if I use GPL-incompatible libraries with GPL software?
If I understand it right (and, again, I might be getting it totally wrong!), you should ask the quake-like engine author for an exception to the license, in order to be able to integrate his/her code in your program.
Late answer, but this might be of some use to someone else.


Bugfix: Ensure creation time is set when records are created

According go the API docs, pretty much every record in the Braintree API has a created_at field – so we should have them as well.

Any updates?


Fix download path when generating documentation

We want the generated docs from benchmark to be processed by
docusaurus and thus we upload the artifact and then download it in the
documentation stage.

Seems like the problem came (in part) from configuration of the upload/download artifacts steps: I fixed it by setting an explicit name and path arguments which does not create directory with the artifact's name to contain its content. Also removed the markdown link checker step in favor of a scheduled job to check the actual website's links

@abailly-iohk note that the website links are checked already by Docusaurus upon building the documentation. So the markdown checks were here mainly for stuff outside of the docs/ folder, such as READMEs.

I know, but they were checking (potentially) the wrong thing, eg. a link on the deployed website while we are generating it for example. I think what we want is to ensure deployed links are not leading to 404 which is why I switched to another job/action.

Okay, but then we'll need to adjust the configuration in Docusaurus as well, to prevent this check when the documentation is built.

AFAIU docusaurus checks internal links, which is fine I think, whereas the scheduled job checks both internal and external links. Keeping boths does not hurt, does it?


Please update this to support newer versions of kubernetes

The v1beta1.PriorityLevelConfiguration, and v1beta1.FlowSchema are deprecated, please update to use the v1 versions of both as mentioned in the deprecation notice https://kubernetes.io/docs/reference/using-api/deprecation-guide/.

Hi, I'm no longer maintaining the repo, feel free to fork. Thanks


Enter key event is not fired in TextField when multiLine is false

 <TextField
          onChange={ (event , value) => {
            console.log(event);
            }
          }
          hintText="Add User Expression"
        />

enter key event is not coming.

I can not understand your issue, @KARTIK01, can you please elaborate better and also provide a running snippet of what you are trying to accomplish?

i was trying to say that, in TextField onChange event is not called when user presses Enter key (↵)
 <TextField
          onChange={ (event , value) =>
            console.log(event)
            }
          hintText="Press Enter"
   />

how can i solve this. please help me out.

@KARTIK01 If you add an onKeyPress event handler to the TextField, then you can check the character code for the enter key:
<TextField  onKeyPress={this._onKeyPress/>
_onKeyPress(event) {   if (event.charCode === 13) {      // enter key pressed   }  }


Error running dynamic circuits on IBMQ

Environment

Qiskit version: 0.45.1
Python version: 3.11
Operating system: macOS Sonoma 14.3

What is happening?
I have a dense circuit (for an error-correcting code) with classical control flow instructions. The circuit runs on the simulator but fails on real device with the error - ERROR Failed to execute program: "'ClassicalRegister(6, 'measure_bit')' is not defined in the current context".
How can we reproduce the issue?
The qpy format of the circuit is attached below.
fq_flag.qpy.zip
I'm happy to provide further details here or on Slack.
What should happen?
The circuit should successfully run on the hardware.
Any suggestions?
The only reference I could find for the error message is https://github.com/Qiskit/qiskit/blob/edbb3981b7c8d425f9883ff46b31dd62fe6a4f1b/qiskit/qasm3/exporter.py#L434
which indicates an error in exporting the circuit to QASM3 for the backend.

I ran into other issues also when building the circuit initially. Some clarification on this would be appreciated:

Are multiple classical registers not supported if you use control flow instructions?
Initially, I had different classical registers for easy reference (syndrome, ancilla, flag, etc.) and if and switch on these separately. Running it on the simulator failed with the message Cannot convert condition in circuit with multiple classical registers to instruction. It also failed on a real device (with a different message).
Are switch statements supported on the backend? It is not listed in the feature table.

Hi @1ucian0
I'm unsure if the runtime repo is the right place for this since, on the surface, the trouble looks like a part of qiskit.

Maybe that's the problem?

I did try replacing the switch statement with if, but the issue persists.

Consider updating to 0.46/1.0 and extend on your example.

The issue is present in Qiskit 1.0

Patrick, from the IBM Quantum Support Team, shared the following concise code snippets, which raise the same error:
qr = QuantumRegister(4, "q")
cr = ClassicalRegister(3, "cr")
qc = QuantumCircuit(qr, cr)

with qc.if_test((cr[1], 1)) as _else:
    qc.x(0, label="X1111i").c_if(cr, 4)
with _else:
   qr1 = QuantumRegister(2, "qr1")
   cr1 = ClassicalRegister(2, "cr1")
   inst = QuantumCircuit(2, 2, name='t').to_instruction()
   qc.append(inst, [qr[0], qr[1]], [cr[0], cr[1]])
# qc.draw('mpl')
qc.draw(style={"showindex": True})

from qiskit.circuit import QuantumCircuit, Qubit, Clbit
q_bits = [Qubit(), Qubit(), Qubit()]
c_bits = ClassicalRegister(2,'cr')
qc = QuantumCircuit(q_bits, c_bits)

with qc.if_test((c_bits[1], 0)) as else_:
qc.x(0, label="pat").c_if(c_bits, 4)
with else_:
inst = QuantumCircuit(1, 1, name='t').to_instruction()
qc.append(inst, [0],[1])

I had to readjust the snippets, but they both worked when I ran them on qiskit 1.0.1 and qiskit 0.46.0:
from qiskit.circuit import QuantumCircuit, ClassicalRegister, QuantumRegister

q_bits = QuantumRegister(2, 'qr')
c_bits = ClassicalRegister(2,'cr')
qc = QuantumCircuit(q_bits, c_bits)

with qc.if_test((c_bits[1], 0)) as else_:
    qc.x(0, label="pat").c_if(c_bits, 4)
with else_:
    inst = QuantumCircuit(1, 1, name='t').to_instruction()
qc.append(inst, [0],[1])

from qiskit.circuit import QuantumCircuit, ClassicalRegister, QuantumRegister

qr = QuantumRegister(4, "q")
cr = ClassicalRegister(3, "cr")
qc = QuantumCircuit(qr, cr)

with qc.if_test((cr[1], 1)) as _else:
    qc.x(0, label="X1111i").c_if(cr, 4)
with _else:
   qr1 = QuantumRegister(2, "qr1")
   cr1 = ClassicalRegister(2, "cr1")
   inst = QuantumCircuit(2, 2, name='t').to_instruction()
   qc.append(inst, [qr[0], qr[1]], [cr[0], cr[1]])
qc.draw(style={"showindex": True})   # or qc.draw('mpl')

@prakharb10: apologies for the slow reply from us.  It's not excuse, this issue just happened to come in right in the middle of the Qiskit 1.0 final release push, and I think it got missed.
I can reproduce your issue when running on our hardware with this most minimal reproducer:
from qiskit import QuantumCircuit, QuantumRegister, ClassicalRegister

qr = QuantumRegister(27, "q")
cr = ClassicalRegister(3, "cr")
qc = QuantumCircuit(qr, cr)

with qc.if_test((cr[1], 1)):
    with qc.if_test((cr, 4)):
        qc.x(0)

That said, I got that reproducer from one of our internal support team, not from your QPY file, and then minimised it myself, so it might not be exactly the same problem you're seeing.
With my minimal reproducer, the problem seems to enter the circuit in our internal code that prepares the circuits to run.  That said, I think the actual root cause might be the "nested" issue I was foreseeing in this comment on Qiskit https://github.com/Qiskit/qiskit/issues/10108#issuecomment-1561681419 rearing its head (but I'm not certain).
In your QPY file, it looks like you're using a lot of nested classical instructions that act on classical data, with a lot of nested conditionals that act on registers, so the second part of that definitely appears to be an effect of what I mentioned in https://github.com/Qiskit/qiskit/issues/10108#issuecomment-1561681419, which is triggered by our internal code.
We're looking into how we reach that error state internally, but for right now, the status is that nested control-flow with register conditions will fail with this error.
It will look very ugly, but as a very temporary workaround, if you can write your conditions in terms of bitwise expressions, you might be able to get something working successfully.  Looking at your QPY file, that might be quite tricky (and certainly I don't love that I need to make this suggestion), but here I've written a function that converts conditions on registers to bitwise conditions.  If you replace all (register, value) tuples in your if_test calls with condition_to_expr(register, value), I think you should get something working:
from qiskit.circuit.classical import expr

def condition_to_expr(reg, value):
    def bit_compare(bit, value):
        return expr.lift(bit) if value else expr.logic_not(bit)

    new_condition = bit_compare(reg[0], value & 1)
    value >>= 1
    for bit in reg[1:]:
        new_condition = expr.logic_and(new_condition, bit_compare(bit, value & 1))
        value >>= 1
    return new_condition

So as an example, I modified my example above to this:
from qiskit import QuantumCircuit, QuantumRegister, ClassicalRegister

qr = QuantumRegister(27, "q")
cr = ClassicalRegister(3, "cr")
qc = QuantumCircuit(qr, cr)

with qc.if_test(condition_to_expr(cr, 1)):
    with qc.if_test(condition_to_expr(cr, 4)):
        qc.x(0)

and that executed successfully on hardware.

Luciano: I'll transfer this back to Qiskit for now, because at a minimum I think there's issues we need to solve on our side, and there's a separate tracking issue on the internal code base as well.


pm2 compatible #1759

@7flash Looks reasonable and am happy to merge this, but can you point me to some material on why this is needed? (I'm new to pm2...)

https://github.com/Unitech/pm2/blob/da59cb6dd761546686e5f89dbc8126672d8b3460/types/index.d.ts#L381
pm2 is waiting for event from the process to consider it's active, otherwise it's thinking it has failed and trying to restart it, that's what happens in #1759 issue
normally, http module will emit "listen" event, but since we are spawing a separate process, we need to emit "wait" event manually and run pm2 with flag "wait_ready"
__
  Tags: Inefficient


Upgrade the system plugin to retrieve the list of recently joined members

For administrative purposes, retrieve the list of recently joined members

Addressed in commit 95e16b7


Merging dev to main

Python test file was created with simple test and workflow file to run python tests was created. Tests run on push to dev as well on pull requests to main.

Checks passed able to merge with main


Docs - grammatical mistake

File: themes/default/content/registry/packages/aws/api-docs/organizations/account/_index.md
Section: "Create a Account Resource"
Should read "Create an Account Resource"

Thanks for this @4815162342  - we can get this looked at asap
@susanev I am transferring this back to the registry. This isn't an AWS bug as that "Create a " actually comes from docs gen. This isn't related to pulumi-aws and would need fixed in the docs page templating


Trailing whitespaces in file names cause errors

Output of restic version
restic 0.17.3 compiled with go1.23.3 on windows/amd64
What backend/service did you use to store the repository?
local
Problem description / Steps to reproduce
When tinkering with some unrelated scripts I produced some files whose file names ended on white space. When backing up my computer I received some errors. See the following bash script to reproduce this behaviour (tested on win11):
#!/bin/sh

set -x

restic version

mkdir data
echo "Some Data" > "data/someFile "
cat data/someFile
cat "data/someFile "

FLAGS="--verbose --insecure-no-password --repo repository"

restic init $FLAGS
restic $FLAGS backup ./data
restic $FLAGS snapshots
restic $FLAGS ls latest

rm --recursive --force data repository

On my system I get the following output:
+ restic version
restic 0.17.3 compiled with go1.23.3 on windows/amd64
+ mkdir data
+ echo 'Some Data'
+ cat data/someFile
cat: data/someFile: No such file or directory
+ cat 'data/someFile '
Some Data
+ FLAGS='--verbose --insecure-no-password --repo repository'
+ restic init --verbose --insecure-no-password --repo repository
created restic repository 98ef0df1e1 at repository

Please note that knowledge of your password is required to access
the repository. Losing your password means that your data is
irrecoverably lost.
+ restic --verbose --insecure-no-password --repo repository backup ./data
open repository
no parent snapshot found, will read all files
load index files
start scan on [./data]
start backup on [./data]
scan: CreateFile \\?\C:\Users\Marc\Desktop\restic-bug\data\someFile: The system cannot find the file specified.
scan finished in 0.002s: 0 files, 0 B
error: CreateFile \\?\C:\Users\Marc\Desktop\restic-bug\data\someFile: The system cannot find the file specified.

Files:           0 new,     0 changed,     0 unmodified
Dirs:            1 new,     0 changed,     0 unmodified
Data Blobs:      0 new
Tree Blobs:      2 new
Added to the repository: 692 B (592 B stored)

processed 0 files, 0 B in 0:00
snapshot b947ffe5 saved
Warning: at least one source file could not be read
+ restic --verbose --insecure-no-password --repo repository snapshots
ID        Time                 Host             Tags        Paths                                  Size
-------------------------------------------------------------------------------------------------------
b947ffe5  2024-11-25 16:34:42  DESKTOP-20R8BPL              C:\Users\Marc\Desktop\restic-bug\data  0 B
-------------------------------------------------------------------------------------------------------
1 snapshots
+ restic --verbose --insecure-no-password --repo repository ls latest
snapshot b947ffe5 of [C:\Users\Marc\Desktop\restic-bug\data] at 2024-11-25 16:34:42.5754196 +0100 CET by DESKTOP-20R8BPL\Marc@DESKTOP-20R8BPL filtered by []:
/data
+ rm --recursive --force data repository

Expected behavior
The file is backed up without an error.
Actual behavior
scan: CreateFile \\?\C:\Users\Marc\Desktop\restic-bug\data\someFile: The system cannot find the file specified.
scan finished in 0.005s: 0 files, 0 B
error: CreateFile \\?\C:\Users\Marc\Desktop\restic-bug\data\someFile: The system cannot find the file specified.

Do you have any idea what may have caused this?
No.
Did restic help you today? Did it make you happy in any way?
Not today, but the day will come without doubt :D

Duplicate of https://github.com/restic/restic/issues/2745 . According to the Windows docs filenames shouldn't end with spaces or dots. Unfortunately, the Windows function used to calculate absolute file paths also tries to fixes these issues and hence ends up corrupting the file name. See the other issue for more details.


config: enable cherrypicker for docs-dm and docs-tidb-operator

close https://github.com/ti-community-infra/configs/issues/279

/lgtm

/merge
/unhold


add example:tls easy-sign-csr-certificate

easy-sign-csr-certificate

It doesn't work because you missed validity_period_hours option.


elkarte community registration

Hello, and sorry to write here, did not find out how to contact forum administrators using the website. I am trying to register myself on the forum since a couple of days, without any success, don't receive registration emails with activation link. Have tried different email adresses, spam folders are empty, no luck.

tried one more time and it worked

Sorry to hear, but glad it solved!
I'll check the errors in the log to see if anything is listed there that can help.


Update the plugin

What does this PR do?
Except for the HTML template functionality, I basically rewrote the entire thing:
Babel to the rescue!
Instead of using the ng-annotate-loader for webpack, it now uses the angularjs-annotate plugin for Babel:

The loader is outdated.
A generic solution like this is easier to maintain.
projext already runs Babel, so now the transformation happens during the Babel process and not after it.
Thanks to the new Babel helper, the logic that adds support for the annotation has been reduced to two small calls.

EVERYTHING is "private/protected" now
I'm doing this on several plugins and projext services now: Methods and properties that weren't intended to be used outside its class are now prefixed with an underscore (_), to mark them as "protected/private".
Sometimes I consider some methods/properties to be "ok" as "public" as they may be of utility for someone, but it wasn't until a few releases ago that I realized that by thinking that, changing those methods/properties, would require a breaking release, when there was no "real" reason for those things to be "public".
So, from now on, use events and reducers and try to stay away from methods and properties prefixed with underscore.
Dependencies up to date
All production and development dependencies were updated to their latest version.
Now, there's a special mention: ESLint. It latest version is v5, but the Airbnb preset I use is still not compatible with it, so I updated ESLint to the last version before v5: v4.19.1.
I also updated a few things on the .eslintrc after getting the Airbnb preset last version:

lines-between-class-members: I disabled this rule because I already fill the space between methods with comments, so I see not reason for it.
operator-linebreak: I changed the default value from the Airbnb, before,  to after. The convention I use and which I believe is easier to read is with the operators at the end of the line.

hooks instead of install-hooks
The yarn/npm script to install the repositories hook has been changed to just hooks.
How should it be tested manually?
This shouldn't be breaking, so try to build your AngularJS app using this branch, it should be fine.
And of course...
npm test
# or
yarn test

Pull Request Test Coverage Report for Build 32

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

Totals

Change from base Build 30:
0.0%

Covered Lines:
53

Relevant Lines:
53

💛  - Coveralls


Incorrect handling of hyphens

The following  example:
let en_us = Standard::from_embedded(Language::EnglishUS).unwrap();
let hyphenated = en_us.hyphenate("self-aware");
let segments: Vec<&str> = hyphenated.iter().segments().collect();
println!("{:?}", segments);

yields the following output:
["self", "-aware"]

Am I correct in thinking that the proper output should be ["self-", "aware"]?

Note that iter().segments() only returns string slices without inserting a hyphen before breaks, meaning that your expected output would become ["self--", "aware"] once marked:
let hyphenated = en_us.hyphenate("self-aware");
let collected: Vec<String> = hyphenated.iter().collect();
// collected would be `vec!["self--", "aware"]`

While this is clearly inconsistent, I take you meant to say that hyphenate() should recognize the existing hyphen and break after it, with the final output being ["self-", "aware"] when marked, whereas the American English dictionary yields ["self-", "-aware"].  The output you suggest implies a preference for this style:
To his dismay, Bob realized the smart toaster had become self-
aware

whereas the TeX patterns lean toward doubling the hyphen:
To his dismay, Bob realized the smart toaster had become self-
-aware

Whether to open new lines with a second hyphen when breaking hyphen-joined compounds is an editorial decision, with some languages having stronger conventions than others. With reference to your example, it should be noted that the American English patterns do not cover hyphens generally; this specific result is produced by a rule to break after the "self" substring regardless of what follows.
It should also be noted that the hyphenation API does not handle existing hyphens on its own, as mentioned in the notes about word segmentation; individual dictionaries may do it, but only as a consequence of what's included in the TeX patterns.
(I had originally written v0.7 to handle hyphens independently, but ultimately decided against it, since diverging conventions apply, and adopting one is ultimately an editorial decision.  I'm not strictly against offering a default, mind, but not before the library sees some extended usage.)

Note that iter().segments() only returns string slices without inserting a hyphen before breaks, meaning that your expected output would become ["self--", "aware"] once marked:
let hyphenated = en_us.hyphenate("self-aware");
let collected: Vec<String> = hyphenated.iter().collect();
// collected would be `vec!["self--", "aware"]`

Thanks, I'm aware of that. In fact, I want to deal with the slices and not with the strings with the added hyphens and I had to dig into the code to realize that .iter().segments() was what I wanted.
Also, it might be worth noting that the current README has broken asserts:
let segments = hyphenated.into_iter();
let collected : Vec<String> = segments.collect();
assert_eq!(collected, vec!["hy", "phen", "ation"]);

While this is clearly inconsistent, I take you meant to say that hyphenate() should recognize the existing hyphen and break after it, with the final output being ["self-", "aware"] when marked, whereas the American English dictionary yields ["self-", "-aware"].

I knew about the existence of language specific hyphenation rules, but not about this one.

It should also be noted that the hyphenation API does not handle existing hyphens on its own, as mentioned in the notes about word segmentation; individual dictionaries may do it, but only as a consequence of what's included in the TeX patterns.
(I had originally written v0.7 to handle hyphens independently, but ultimately decided against it, since diverging conventions apply, and adopting one is ultimately an editorial decision. I'm not strictly against offering a default, mind, but not before the library sees some extended usage.)

Don't worry: I'm using a custom slice iterator when the word I'm hyphenating contains special characters, otherwise I just use hyphenation's slice iterator. The two iterators are unified via Either.

Thanks, I'm aware of that. In fact, I want to deal with the slices and not with the strings with the added hyphens and I had to dig into the code to realize that .iter().segments() was what I wanted.

Mh, I'll add some module documentation.  The function is nominally documented but not all that visibile.

Also, it might be worth noting that the current README has broken asserts:

Thank you, I'll fix those.  (I test code examples manually because Cargo / Rustdoc require them to be laid out in a rather unwieldy fashion, and things do slip through.)


ref2.tif not found error

excuse me. where can I get the ref2.tif to run the example code. I went into an error like this
DiffMetrology is using: cuda:0
Figure(800x600)
Traceback (most recent call last):
  File "misalignment_point.py", line 97, in <module>
    img = imread('./data/20210304/ref2.tif') # for now we use grayscale
  File "/home/ma-user/anaconda3/envs/PyTorch-1.8/lib/python3.7/site-packages/matplotlib/image.py", line 1560, in imread
    with img_open(fname) as image:
  File "/home/ma-user/anaconda3/envs/PyTorch-1.8/lib/python3.7/site-packages/PIL/Image.py", line 3092, in open
    fp = builtins.open(filename, "rb")
FileNotFoundError: [Errno 2] No such file or directory: './data/20210304/ref2.tif'

Thanks for spotting this.  Missing data has been uploaded.  Please pull to the latest version.


Also require the file argument for the "merge" subcommand

This makes the "merge" subcommand behave the same as the "cloud read"
and "cloud merge" subcommands.

bors r+


Feature Request: Scarlet/Violet tracker should include all Vivillon forms

Vivillon is a Pokemon who, when it evolves from Spewpa, can become one of many different forms. However, this only appears once in the tracker.

Particularly in the case of shiny hunting, where it's now possible to get the majority of shiny Vivillon forms in SV since v1.2, it is very difficult to track which ones you've gotten so far.
I haven't started shiny hunting these yet, but when I do it will be a tough process to remember which ones I've got and which I need. Pokedex Tracker should in theory support this, as the alternative option will be some kind of alternative tracker.

Merging into https://github.com/pokedextracker/pokedextracker.com/issues/256 as this is a generic request to support alternative forms.


Create contributors readme update workflow

📑 Description
This pull request adds a new GitHub Action workflow that automatically updates the README.md file with the list of project contributors. The workflow triggers every time a new contributor joins the project.
Changes included:

Created a new GitHub Action workflow for updating contributors.
The workflow retrieves the list of contributors and updates the README.md file.
Automated updates ensure the contributors section is always up-to-date.

✅ Checks

[x] My pull request adheres to the code style of this project
[ ] My code requires changes to the documentation
[ ] I have updated the documentation as required
[x] All the tests have passed

☢ Does this introduce a breaking change?

[ ] Yes
[x] No

ℹ Additional Information

Impact on functionality: Automates the process of keeping the contributors section updated, reducing manual effort.
Dependencies added: None
Screenshots: N/A

Summary by Sourcery
Add a GitHub Action workflow to automatically update the list of contributors in the README.md file.
Enhancements:

Update the README file to include sections for contributors and bots.

CI:

Add a GitHub Action workflow to update the contributors list in the README file.

Description by Korbit AI
What change is being made?
Create a GitHub workflow to automatically update README.md with the list of contributors on each push to the main branch, excluding when README.md itself is changed.
Why are these changes being made?
This change ensures that the list of contributors in the README.md file is always up-to-date without requiring manual updates, enhancing project transparency and acknowledging contributors. By leveraging an existing GitHub Action, we automate this process, which is a scalable and efficient approach.

Is this description stale? Ask me to generate a new description by commenting /korbit-generate-pr-description

Summary by CodeRabbit

New Features

Introduced a new GitHub Actions workflow to automatically update the contributors list in the README.
Added new sections in the README for "Contributors" and "Bots" to enhance documentation.

Documentation

Enhanced README with placeholders for contributor and bot information while maintaining existing content.

Tests

Commented out several test methods related to exception handling and message generation in the testing suite.

@gstraccini csharpier

@gstraccini csharpier


Invalid chunk index 1 vs all chunks 1

It looks like cypress-split can't handle the situation when there is only 1 chunk and chunk index is 1. I understand that it has no sense, but I really need to support such a scenario (e.g. only 1 build agent is free), and expect that all specs will be executed as usual.
Log:
[19:07:23 ] cypress-split: there are 0 found specs
[19:07:23 ] cypress-split: chunk 2 of 1
[19:07:23 ] Your configFile threw an error from: /mnt/agent/work/bb494e5cdc59eb2f/tests/cypress/cypress.config.ts
[19:07:23 ]
[19:07:23 ] The error was thrown while executing your e2e.setupNodeEvents() function:
[19:07:23 ]
[19:07:23 ] Error: Invalid chunk index 1 vs all chunks 1
[19:07:23 ]     at getChunk (/mnt/agent/work/bb494e5cdc59eb2f/node_modules/cypress-split/src/chunk.js:47:11)
[19:07:23 ]     at cypressSplit (/mnt/agent/work/bb494e5cdc59eb2f/node_modules/cypress-split/src/index.js:106:24)
[19:07:23 ]     at module.exports (/mnt/agent/work/bb494e5cdc59eb2f/tests/cypress/plugins/index.js:8:3)
[19:07:23 ]     at setupNodeEvents (/mnt/agent/work/bb494e5cdc59eb2f/tests/cypress/cypress.config.ts:21:43)
[19:07:23 ]     at /mnt/agent/work/bb494e5cdc59eb2f/node_modules/cypress_cache/13.3.0/Cypress/resources/app/node_modules/@packages/server/lib/plugins/child/run_plugins.js:122:14
[19:07:23 ]     at tryCatcher (/mnt/agent/work/bb494e5cdc59eb2f/node_modules/cypress_cache/13.3.0/Cypress/resources/app/node_modules/bluebird/js/release/util.js:16:23)
[19:07:23 ]     at Function.Promise.attempt.Promise.try (/mnt/agent/work/bb494e5cdc59eb2f/node_modules/cypress_cache/13.3.0/Cypress/resources/app/node_modules/bluebird/js/release/method.js:39:29)
[19:07:23 ]     at RunPlugins.load (/mnt/agent/work/bb494e5cdc59eb2f/node_modules/cypress_cache/13.3.0/Cypress/resources/app/node_modules/@packages/server/lib/plugins/child/run_plugins.js:119:9)
[19:07:23 ]     at RunPlugins.runSetupNodeEvents (/mnt/agent/work/bb494e5cdc59eb2f/node_modules/cypress_cache/13.3.0/Cypress/resources/app/node_modules/@packages/server/lib/plugins/child/run_plugins.js:59:17)
[19:07:23 ]     at EventEmitter.<anonymous> (/mnt/agent/work/bb494e5cdc59eb2f/node_modules/cypress_cache/13.3.0/Cypress/resources/app/node_modules/@packages/server/lib/plugins/child/run_require_async_child.js:185:22)
[19:07:23 ]     at EventEmitter.emit (node:events:514:28)
[19:07:23 ]     at EventEmitter.emit (node:domain:489:12)
[19:07:23 ]     at process.<anonymous> (/mnt/agent/work/bb494e5cdc59eb2f/node_modules/cypress_cache/13.3.0/Cypress/resources/app/node_modules/@packages/server/lib/plugins/util.js:33:22)
[19:07:23 ]     at process.emit (node:events:514:28)
[19:07:23 ]     at process.emit (node:domain:489:12)
[19:07:23 ]     at process.emit.sharedData.processEmitHook.installedValue [as emit] (/mnt/agent/work/bb494e5cdc59eb2f/node_modules/cypress_cache/13.3.0/Cypress/resources/app/node_modules/@cspotcode/source-map-support/source-map-support.js:745:40)
[19:07:23 ]     at emit (node:internal/child_process:951:14)
[19:07:23 ]     at processTicksAndRejections (node:internal/process/task_queues:83:21)

@denis-domanskii The chunk indices are 0-based. So in your case I believe your problem is that you're starting with index 1 (i.e. SPLIT_INDEX=1), when you really should start with 0

@dannyskoog thank you!
So, how abut to start chunks from 1, not 0? This is a common way for Jest (https://jestjs.io/docs/next/cli#--shard):
jest --shard=1/3
jest --shard=2/3
jest --shard=3/3

and for Playwright (https://playwright.dev/docs/test-sharding):
npx playwright test --shard=1/4
npx playwright test --shard=2/4
npx playwright test --shard=3/4
npx playwright test --shard=4/4

@denis-domanskii Sure, it's debatable whether to use 0- or 1-based indices for chunks. But even though I'm not the author of this library I don't think that such breaking change is justified.

I also think that it's late to change, but maybe some ENV variable at least? Because, for example, TeamCity CI start count batches from 1, so I need an extra step to read TeamCity generated value, subtract 1 and then pass it to cypress-split as SPLIT_INDEX. Replacing all these stuff with simple SPLIT_START_INDEX=1 make my setup much convenient.


messages coming off kafka topic with nested structure are incorrectly converted to entities

It seems that the code to convert a kafka message to an entity attempts to flatten nested objects. This results in an invalid entity as the urls created for the nested items are invalid.
Options to fix this include:

deal properly with nesting and create an array of objects. This would be the most correct thing to do as a client would not need to know about the flattening pattern used.
replace the invalid URI characters with something valid. Either URL encoding or some generic replacement for illegal characters.

we did the second option for now.


[GNU Social] Convert "somebody favorited something by otheruser..." notes into actual favoriting activities

As we discussed with @moshpirit in #279
we want to allow a User to see that somebody favorited his/her note (in Notifications timeline)
AND "somebody favorited something by otheruser:" words should be automatically removed from all incoming notes.
Using #ActivityPub terminology, AndStatus should::

Detect GNU Social "favoriting actions" formatted like ordinary notes (using "somebody favorited something by otheruser:" "favoriting prefix") during processing of downloaded timelines.
And convert such notes into LIKE actions of original ("favorited") notes. Text of that "original" note should be re-constructed by removing the "favoriting prefix".
As a result, timelines won't contain that "somebody favorited something by otheruser:" words, but will have LIKE (favoriting) actions of somewhat not fully reconstructed "favorited notes"...

As a side effect, this change will make timeline opening a bit faster, as the application won't need to search for that  "somebody favorited something by otheruser:" - it does this now in order to collapse duplicates...

I implemented this, but decided not to spend time on fixing notes that are already stored in the local cache. This means that the new feature will work for newly downloaded notes only.

Good enough! :) thanks!

Implemented in v.40

AWESOME!! Thank you so much!


performance do not copy input_block if column matches

Proposed changes
In most common cases, columns in slot_descs and tuple_desc->slots() will match and we don't need to convert input_block in MemTable::insert().
For materialized views, input_block will be converted by _column_offset as intended, see #9923.


required for all DICT in TOOL_CALL

JSON-SCHEMA allows for required in all (nested) dictionary types but we only support it at the top level

To be tested


Annotation styles versus annotation documents

This a conceptual change in annotation storage and display, as was discussed in today's meeting.
The problem: Current annotation model is somewhat confusing, especially the UI. Each annotation document can contain multiple styles (they are orthogonal concepts). Styles (the folder icon) are created automatically based on the "group" attribute of the annotation style, but the user is free to create as many documents as they want and there's no automatic grouping of documents.

Key considerations: Styles (defined by group attribute) - i.e. colors, fill, etc - are the most useful concept as far as the end user is concerned. However, having annotation documents is important as each document has its own set of permissions. So if we say, for example User 1 and User 2 both created 50 polygon of the style "lymphocyte", each user has access to their own set of annotations but not to the other person's. Another consideration is the complexity involved in querying annotations for a developer.
Proposed solution:
1- Only one style allowed per annotation document (eg. lymphocytes). The concepts of annotation style and annotation document should not be orthogonal.
2- Automatic assignment of annotation objects (line/point/polygon/etc) to annotation documents (styles) based on the creator_id i.e. the user who created the annotations.
3- This results in a two-level hierarchy, where top level is the annotation style and leafs are the annotation documents, each for a specific user within a specific style, as illustrated below:

4- Will need an "eye" icon to be able to control the viewing of annotations at both levels of the hierarchy; i.e. for individual styles, as well as for individual users within a style.
5- Somewhere in the API, and that's a lower priority but worth noting, handling the querying of numerous objects that have the same style. For example, there maybe 100,000 annotations of the style lymphocyte, which when queried in python would result in a single dictionary with 1e5 entries! Instead, they will need to be queried a few at a time, each time changing the offset when fetching a subset. This is possible using current API by creating a generator that changes the "offset" parameter and querying annotations a few at a time. Having a more streamlined way to do this, perhaps simply wrapping the whole "generator with changing offset" into a single API call, would simplify things a bit.

Potential counterpoint: As I keep scaling up the number of annotation polygons that need rendering, I notice a pragmatic use for the “annotation document” concept to allow viewing only a sunset of the polygons scalably. Implementing The proposed two-level hierarchy system here makes a lot of sense from the user perspective but will have to be accompanied by major improvements in scalable rendering, for example by using annotation layers and static semi-transparent overlays, before forcing the user to view all polygons of the same style at once.


chore: compile garn bin

Convert garn-bin.js to .ts.

I tried to force resolution of typescript 5.3.2 in my project now, and that appears to work after this change

@erik-kallen Tried that as well. Needs some additional work since there is some changed done in TS5 for modules. So we can take that in another PR. Version 0.8.0 should be deployed in a few minutes


Links in the readme to the-eye.eu don't work

Links such as https://the-eye.eu/public/AI/gptneo-release/GPT3_XL/ are currently broken. Any alternative download site?

There is a new community mirror up at http://mystic.the-eye.eu/
We are in the process of updating the links, thanks for the reminder to get this repo.


PS performance cleanups

By not getting data that we don't need and adding more locking
functions under the batch, we are able to cut the time for listing
50 containers in half.  More to come.
Signed-off-by: baude<EMAIL_ADDRESS>

LGTM, merging once tests green

@rh-atomic-bot r+


Synapse editor

Current Neuroscience efforts requires a way to save to persistent storage the modifications introduce by user when doing synapse editing.

Think that's now part of the Annotation Framework - not Neuroglancer.


Add FinanceIQ dataset

Motivation
Add FinanceIQ dataset for Chinese financial evaluations.
Modification
Create configs/datasets/FinanceIQ
Create opencompass/datasets/FinanceIQ.py  to load FinanceIQ dataset.
Modified the init files to load the classes.
What's need
Add FinanceIQ data files to OpenCompassData.zip. The dataset files can be found here: https://github.com/Duxiaoman-DI/XuanYuan/tree/main/FinanceIQ/data

TODO @Leymore Add https://huggingface.co/datasets/Duxiaoman-DI/FinanceIQ/tree/main to https://github.com/open-compass/opencompass/releases/tag/0.1.8.rc1


Generation mixes not created for certain scenarios

In the configuration I'm currently troubleshooting:

replace_egrid = False
model_specs["regional_aggregation"] = False
This configuration places us into generation_mix.create_generation_mix_df_from_egrid_ref_data but the region column gets incorrectly specified so no generation mixes are created.

I'm going to create a branch to hopefully get this working. I think the worst-case outcome is that this is added to the list of invalid configurations.

Created the pull request to resolve this. Issue can be closed upon merge.


Saving Excel Package

I just updated to the latest version of ImportExcel
My script was previously able to save successfully and as of the new update, saving fails.
The lack of detail makes it very hard to troubleshoot what the cause might be.
====
Exception calling "Save" with "0" argument(s): "Error saving file
ImportExcel\7.8.10\Public\Close-ExcelPackage.ps1:29 char:20

        else { $ExcelPackage.Save() }

               ~~~~~~~~~~~~~~~~~~~~

CategoryInfo          : NotSpecified: (:) [], MethodInvocationException
FullyQualifiedErrorId : InvalidOperationException

no idea. if you roll back to the other version, does it work?

I have to keep digging.
The issue might be related to formula I am using in excel columns, but I have not narrowed down the issue yet.
I do not think it is the number of columns which is around 56.
I have simpler tables with more columns.
I wish the error messages were more detailed, it makes troubleshooting very difficult.
Sent from my Verizon, Samsung Galaxy smartphone
-------- Original message --------
From: Doug Finke @.>
Date: 10/23/24 4:38 PM (GMT-05:00)
To: dfinke/ImportExcel @.>
Cc: Eduardo Luis Figueredo @.>, Author @.>
Subject: Re: [dfinke/ImportExcel] Saving Excel Package (Issue #1649)
no idea. if you roll back to the other version, does it work?
—
Reply to this email directly, view it on GitHubhttps://github.com/dfinke/ImportExcel/issues/1649#issuecomment-2433397989, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ACW4WWGGRCNFSQOGQJPDINTZ5ACLRAVCNFSM6AAAAABQO6GX22VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDIMZTGM4TOOJYHE.
You are receiving this because you authored the thread.Message ID: @.***>

That said.....I love ImportExcel!!!
Sent from my Verizon, Samsung Galaxy smartphone
-------- Original message --------
From: Doug Finke @.>
Date: 10/23/24 4:38 PM (GMT-05:00)
To: dfinke/ImportExcel @.>
Cc: Eduardo Luis Figueredo @.>, Author @.>
Subject: Re: [dfinke/ImportExcel] Saving Excel Package (Issue #1649)
no idea. if you roll back to the other version, does it work?
—
Reply to this email directly, view it on GitHubhttps://github.com/dfinke/ImportExcel/issues/1649#issuecomment-2433397989, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ACW4WWGGRCNFSQOGQJPDINTZ5ACLRAVCNFSM6AAAAABQO6GX22VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDIMZTGM4TOOJYHE.
You are receiving this because you authored the thread.Message ID: @.***>

if possible, send me the xlsx. may be possible to import that error message,

Thanks for the offer.
But it chokes before it can create the xlsx.
So I have to back track items in the codes until it works again to narrow down the issue.
Sent from my Verizon, Samsung Galaxy smartphone
-------- Original message --------
From: Doug Finke @.>
Date: 10/23/24 6:44 PM (GMT-05:00)
To: dfinke/ImportExcel @.>
Cc: Eduardo Luis Figueredo @.>, Author @.>
Subject: Re: [dfinke/ImportExcel] Saving Excel Package (Issue #1649)
if possible, send me the xlsx. may be possible to import that error message,
—
Reply to this email directly, view it on GitHubhttps://github.com/dfinke/ImportExcel/issues/1649#issuecomment-2433660794, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ACW4WWAADA55FKRWQG5OEDDZ5ARDFAVCNFSM6AAAAABQO6GX22VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDIMZTGY3DANZZGQ.
You are receiving this because you authored the thread.Message ID: @.***>

Doug,
Following up on the Excel file error.
I have a script that creates an Excel file with multiple worksheets.
Each worksheet has exactly one Excel table on it. Most columns have values. Some columns have formula. The problem is that if I format the formula incorrectly, it can fail to create the excel file and the error message generated does not give me a clue where the error is.
Ideally the error message would at least tell me which worksheet might be the culprit.
In a perfect world it would tell me which column or formula is the issue.
Do you have any way to provide more explicit error information?
Thank you,
Eduardo Figueredo
From: Doug Finke @.>
Sent: Wednesday, October 23, 2024 6:44 PM
To: dfinke/ImportExcel @.>
Cc: Eduardo Luis Figueredo @.>; Author @.>
Subject: Re: [dfinke/ImportExcel] Saving Excel Package (Issue #1649)
if possible, send me the xlsx. may be possible to import that error message,
—
Reply to this email directly, view it on GitHubhttps://github.com/dfinke/ImportExcel/issues/1649#issuecomment-2433660794, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ACW4WWAADA55FKRWQG5OEDDZ5ARDFAVCNFSM6AAAAABQO6GX22VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDIMZTGY3DANZZGQ.
You are receiving this because you authored the thread.Message ID<EMAIL_ADDRESS>

Doug,
I have another question….I have made good progress.
I am trying to put an Excel formula into a cell. For example:
[OfficeOpenXml.ExcelRange] $xlValueCell = $ws.Cells["$($v)$($r+2)"]
$xlValueCell.Formula = “=COUNTA(tblClusters[Cluster])”
At the time of adding this formula to the cell, the referenced Excel table already exists along with the column name.
However, when, the file is exported, and opened in Excel what I see in the formula for that cell is: “=COUNTA(#REF!)”
If I then manually create the formula in Excel, it works without any problem.
Do you know if OpenOffice supports using named table ranges?
Thank you,
Eduardo Figueredo
From: Doug Finke @.>
Sent: Tuesday, November 5, 2024 9:25 AM
To: dfinke/ImportExcel @.>
Cc: Eduardo Luis Figueredo @.>; Author @.>
Subject: Re: [dfinke/ImportExcel] Saving Excel Package (Issue #1649)
can you create an xlsx with 2 sheets, one that is good an the other with the bad formula?
—
Reply to this email directly, view it on GitHubhttps://github.com/dfinke/ImportExcel/issues/1649#issuecomment-2457317040, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ACW4WWF5KJLMEPGWZQYVIR3Z7DINRAVCNFSM6AAAAABQO6GX22VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDINJXGMYTOMBUGA.
You are receiving this because you authored the thread.Message ID: @.***>

Thanks for the question @efigueredo.
Is that a pre-existing workbook?
On the Export-Excel there is a switch AutoNameRange that creates names.
I believe I do it at the workbook level.
The $xlValueCell.Formula = “=COUNTA(tblClusters[Cluster])” - iirc there may be addtional syntax to make that work, check the Examples folder in the repo.


feat: add JsonLd

Closes  #649
Description
We implement Schema Webpage on all pages, except the home page using the Website.
Webpage combined with JsonLd Breadcrumb.
Here's a list of the Schema Markup we added:

Organization
Website
Webpage

https://user-images.githubusercontent.com/49445216/129440007-067ecb7f-9bb9-427d-b0d8-a70e5d5ae829.mp4

When I tried testing the deploy preview using Google's Rich Results test, it's still failing due to a response header.
https://search.google.com/test/rich-results?view=fetch-info&id=2PiMx8JOys2wo4UR_SXcSw

I think it's related to our response headers, please try to fix it, @renomureza. Thanks!
Do you have any idea on how to solve this issue, @resir014? 😁

Please list down on the description, what JSON-LD do you add on this PR.

Sorry mas @mazipan , I accidentally pressed the Update Branch button. I'm learning to contribute, please guide.
I'm checking Headers issue. when we remove interest-cohort=() the problem showing in console is gone. We can learn about this header here: https://web.dev/floc/

I'm checking Headers issue. when we remove interest-cohort=() the problem showing in the console is gone. We can learn about this header here: https://web.dev/floc/

I don't think we can simply remove that interest-cohort=() header. It's there for security reasons.
@resir014, do you have a better suggestion to solve this issue without imposing security vulnerability on our website?

I'm checking Headers issue. when we remove interest-cohort=() the problem showing in the console is gone. We can learn about this header here: https://web.dev/floc/

I don't think we can simply remove that interest-cohort=() header. It's there for security reasons.
@resir014, do you have a better suggestion to solve this issue without imposing security vulnerability on our website?

Mas @zainfathoni, this error does not appear in Firefox.
Firefox:

Chrome:

Firefox:

@resir014 I think there's another problem that I noticed here. Apparently, Google Analytics is blocked by our Content Security Policy. Could you please address this issue as well? 😁

Chrome:

That error means that Chrome doesn't recognize interest-cohort feature in the Permissions-Policy header. Is that a known issue, @resir014?

I don't think we can simply remove that interest-cohort=() header. It's there for security reasons.
@resir014, do you have a better suggestion to solve this issue without imposing security vulnerability on our website?

It's less security, and more privacy: https://amifloced.org/
Besides, this only exists in Chrome and not other browsers.

For the Google Analytics CSP rule, I fixed it in #735. Please check.


DDPB-3296 - Fix internal authentication and API endpoint URI

Purpose
Move from auth token to client secret authentication on Document and ReportSubmission UPDATE endpoints.
Fixes DDPB-3296
Approach
I've removed auth token security from the Documents and ReportSubmission endpoints as the callouts will never be made from a logged-in user. Instead, we're using the client secret authentication method. I also missed adding https to the Sirius API Gateway endpoint which was highlighted during some debugging with the integrations team.
Learning
This really highlighted to me the need for an integration test that ties all of the changes together made in #273. As I'd been mocking out the responses from the API while updating entities, the auth problems were masked.
Checklist

[x] I have performed a self-review of my own code
[ ] I have updated documentation (Confluence/ADR/tech debt doc) where relevant
[x] I have added tests to prove my work
[ ] The product team have approved these changes

Closing and merging into DDPB-3350.


add contrast to mass limits functionality

a la plot_contrasts_mjup from pynrc.nb_funcs with various models (what does Carter et al. use for sub Jupiter mass predictions? is that Linder et al. or something else?).

I think they are using the BEX evolutionary models. I can send them to you!


feat: Update Windows MSI to allow generation of manager.yaml

Proposed Change

Allow user to optionally configure OpAMP parameters through the installer UI:

Endpoint is required:

If a user is upgrading, skip install directory + opamp config steps

This change was made because we do not regenerate the opamp config when updating; So having these steps were confusing. It also led to a problem where the user config would be destroyed if they changed the directory they had installed to. This simplified workflow should mitigate that, while also being more painless for users.

Installing w/ OpAMP configuration using MSIExec would look like this:

msiexec /i "https://github.com/observIQ/observiq-otel-collector/releases/latest/download/observiq-otel-collector.msi" /quiet ENABLEMANAGEMENT=1 OPAMPENDPOINT=<your_endpoint> OPAMPSECRETKEY=<secret-key> OPAMPLABELS=<comma-separated-labels>

Checklist

[ ] Changes are tested
[ ] CI has passed

Saw OpAMP and figured I would take a look...
Two small pieces of feedback:

Instead of Labels (Comma separated), Labels (name1=value1,name2=value2,...) might be more clear regarding the format.
Labels and Secret Key aren't technically OpAMP things. They're Iris things and Iris uses OpAMP. I'm not sure if we are concerned about that.

Thanks for taking a look, @andykellr!
I've changed the wording to Labels (name1=value1,name2=value2,...), that definitely is more clear.

Re: Labels and secret key, this is a good callout. I've been avoiding calling out Iris until it's publicly available - I think it's fine as is for now, and we can re-evaluate the wording and structure here later when it's public.


Refactor dataservice

TODO
Leaving this in draft until #544 has been merged.
TODO:

rebase post #544
bump dmod.dataservice version.

@robertbartel, just rebased.

Thanks for the reviews! Ill fix this up and have it ready for re-review in the morning.

Just pushed up resolutions for the requested improvements. This is ready for re-review now, @robertbartel!

Thanks, @robertbartel!


ARXML: improve reference handling

This improves handling of references in ARXML insofar that arbitrary objects may now be referenced (instead of just elements of packages) and that the somewhat reasonable use cases for relative references are now supported.
Andreas Lauser<EMAIL_ADDRESS>on behalf of MBition GmbH.
Provider Information

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

58 of 66 (87.88%)  changed or added relevant lines in 1 file are covered.
6 unchanged lines in 4 files lost coverage.
Overall coverage increased (+0.5%) to 96.383%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

cantools/database/can/formats/arxml.py
58
66
87.88%

Files with Coverage Reduction
New Missed Lines
%

cantools/logreader.py
1
97.17%

cantools/tester.py
1
93.88%

cantools/subparsers/monitor.py
2
84.16%

cantools/subparsers/plot.py
2
97.58%

Totals

Change from base Build<PHONE_NUMBER>:
0.5%

Covered Lines:
5542

Relevant Lines:
5750

💛  - Coveralls

I cannot do an in-depth review on this. But since new features are welcome, just ask for a merge when done. Done?

Done?

regarding the ARXML functionality, yes: as far as I can see it works and it should not regress anything. You might have a few more general some objections, though. (e.g. I tend to mess up the coding style quite often...)

I see :). Most notably, there are a few places where you have violated Erics rule concerning the nowline before and after compund statements (if, for). I like that rule ^^.

I see :). Most notably, there are a few places where you have violated Erics rule concerning the newline before and after compund statements (if, for). I like that rule ^^.

okay, I hope to have fixed this by now. (note: given that this was rather trivial, it was quite a bit more work than I anticipated...)


4.x rebase fixes

The HHVM dropping commit got lost during the rebase.
Also some other changes got lost, so I added them here.

Thanks!


pass lifecycle configuration to autoscaling group

Is your request related to a new offering from AWS?
Is this functionality available in the AWS provider for Terraform?  - Yes ✅: https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/autoscaling_group
Is your request related to a problem? Please describe.
I'm using the eks module to create a cluster with a self_managed_node_group.
Later on I create a network load balancer using terraform and try to attach the automatically created autoscaling group from the eks module to the load balancer using the https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/autoscaling_attachment.
The aws provider documentation explains that it is necessary to add lifecycle ignore_changes arguments for the autoscaling group if you are using the autoscaling_attachment (see hint on https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/autoscaling_group).

NOTE on Auto Scaling Groups and ASG Attachments:
Terraform currently provides both a standalone aws_autoscaling_attachment resource (describing an ASG attached to an ELB or ALB), and an aws_autoscaling_group with load_balancers and target_group_arns defined in-line. These two methods are not mutually-exclusive. If aws_autoscaling_attachment resources are used, either alone or with inline load_balancers or target_group_arns, the aws_autoscaling_group resource must be configured to ignore changes to the load_balancers and target_group_arns arguments within a lifecycle configuration block.

Looking at the module code in https://github.com/terraform-aws-modules/terraform-aws-eks/blob/dc8a6eecddc2c6957ba309a939ee46f39b946461/modules/self-managed-node-group/main.tf#L407 I can see that it's currently not possible to configure the lifecycle of the autoscaling_group created by the module.
Describe the solution you'd like.
I would like to pass the lifecycle configuration for the autoscaling group through the self_managed_node_group configuration.
Describe alternatives you've considered.
I've considered to create the autoscaling group myself but don't know exactly how to connect or replicate the behaviour created by the eks module (and I would like to avoid this because it's one of the benefits of using this module).
Additional context
My autoscaling attachment currently looks like this:
resource "aws_autoscaling_attachment" "target-group-attachement" {
  for_each = module.eks.self_managed_node_groups

  autoscaling_group_name = each.value.autoscaling_group_name
  lb_target_group_arn  = aws_lb_target_group.extern.arn
}

If you need more information or there's a better way of solving my issue, please let me know.

unfortunately this is not supported by Terraform core at this time https://github.com/hashicorp/terraform/issues/27360

https://github.com/bryantbiggs/eks-desired-size-hack


problem: while using debug feature,if you want to extend the full list of a complex variable, it takes so much time and if you extend another variable, the whole debug process would stuck

when I want to extend the whole member of a complex data structure, and it keeps pending, however, if I want to extend the whole members of a simple data structure in DEBUG mode, the whole debug process would crash

Please file this on the debug extension you're using, with more detail, thanks


Update to Electron 2.0.9

Updated Electron fixes segfault on glibc 2.28 (see https://github.com/electron/electron/issues/13972 )

Thanks for sending this!  This must be the fix for the issue that prevented us from getting a clean Linux build for 2.0.8.  Looks like the VSTS Linux build failed for an unrelated issue so I'm going to run it again just in case.

Build looks good, thanks again!

That solves my issues too. Thanks


Ether spent multiple times when calling library

When calling a contract function that calls into a library, the Ether sent in the transaction is spent multiple times.
Steps to Reproduce
Failing testrpc test case added in this PR: https://github.com/ethereumjs/testrpc/pull/123
The code deploys a contract that calls into a library and sends 1 Ether to that function. When checking the balances, 2 Ether will have been spent.
The test will fail with the message
Amount spent should be (close to) 1 Ether, but is 2.000000000000014
Alternatively, here is a minimal complete example project using web3-loader: https://github.com/graup/testrpc-library-testcase
I also tested the example code against a geth testnet instance, which works as expected.

Example contract used:

library Lib {
  function something(int self) {
    self = self + 1;
  }
}

contract Main {
  using Lib for int;
  int foo;

  function Main() {

  }

  function doSomething() {
    foo.something();
  }
}

Version used: master (9a991e4)

I figured out how to show the same problem with a failing test in the testrpc code base. I will update the issue in a moment.

This appears to be true even if the library call is doing nothing at all (see here)
It seems like this issue isn't getting a lot of attention, but it really needs to be. Anyone doing serious development using Solidity is surely using libraries, and this makes writing (sensible) tests with testRPC impossible if ether transactions are used.

On my list. If someone else would like to take a stab at it it'd be much
appreciated.
On Aug 12, 2016 8:37 AM, "area"<EMAIL_ADDRESS>wrote:

This appears to be true even if the library call is doing nothing at all
(see here
https://ethereum.stackexchange.com/questions/7975/sendtransaction-results-in-double-send-with-arbitrary-library-call
)
It seems like this issue isn't getting a lot of attention, but it really
needs to be. Anyone doing serious development using Solidity is surely
using libraries, and this makes writing (sensible) tests with testRPC
impossible if ether transactions are used.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/ethereumjs/testrpc/issues/122#issuecomment-239480117,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAFp1cq75kncjxsbd4mg-A7YVw-r_afpks5qfJMfgaJpZM4JMvgh
.

@tcoulter: I'm happy to take a look. Any hints about where in the codebase the problem might be?

Unfortunately no. I was never aware this was an issue. In fact, it could live in the bowels of ethereumjs-vm, which handles transaction processing and the management of Ether. If it's not there, then the TestRPC is mangling/misinterpreting input somewhere.

I'm not always thrilled about mucking around in the bowels of anything, but I'm always willing to roll up my sleeves and try!

Thanks @raineorshine! Input mangling is definitely the easier option to rule out. Once you dive into ethereumjs-vm, let me know how I can help.

This has been fixed in ethereumjs-vm for quite some time but is blocking on some updates from their end. I'm going to consider running on custom fork unless these changes can get merged: https://github.com/ethereumjs/ethereumjs-vm/pull/84
CC @axic @wanderer

Hello.
I'm using testrpc 4.0.1.
I have a contract with a payable function that call a function stored in a library.
I've noticed that the value is spent twice. A similar problem reported in this issue.
When I use Geth as private network, my implementation works as expected.
Is this multiple spent problem when calling a lib on testrpc has a fix or a workaround?
Thanks

@eloudsa this should be fixed by building testrpc with ethereumjs-vm 2.1.0 (testrpc is currently using ethereumjs-vm version 2.0.1 in the yarn.lock file).

Hi,
This  issue is a blocker for us now.
Was anyone able to come up with a reasonable workaround until it's fixed?
Thanks

@szerintedmi I believe it's fixed in TestRPC v4.
For v3, I have been using a forked TestRPC for months: https://github.com/raineorshine/testrpc. It has the fix in this commit: https://github.com/raineorshine/ethereumjs-vm/commit/6d1e058ba948e7d92fa75c2b1cc83086b5a5bfe7.

@raineorshine : I'm using latest 4.0.1 and it's still there
Thank you for fork tip, I give them a try!

This will be fixed in the TestRPC in the next release, set for Monday, Aug. 21st.

I can confirm it's fixed with 4.1.0 release . Can be closed from my part.
Thank you!

Thanks for the confirmation! Closing this ticket. Thanks everyone involved for getting this figured out!


One link is dead in README.md

Description
One link in README.md file in the root directory of docker repository.
In the getting the development builds section , link "docs.master.dockerproject.org." is dead.

Describe the results you received:
Link is dead
Describe the results you expected:
I think this link should be linked to docs.master.dockerproject main page.

If it is a problem, then I will try to fix this one :)

I think this link (docs.master.dockerproject.org) is dead
In the dockerproject master link, it tells us above link is the master documentation, but the response is DNS_PROBE_FINISHED_NXDOMAIN.
I think it would be good to redirect this link to this link or this repo. Which one is more appropriate?

ping @AkihiroSuda

We can close this issue :)


I couldn't get it to work or it really doesn't work.

I followed all the steps in the tutorial with a Raspberry Pi Zero 2 and ReSpeaker 2 mic hat. I tried ok_nabu and hey_jarvis as sound models, but no matter what I did, I couldn't see anything in the logs. speaker's audio recording and audio playback functions (arecord and aplay) work fine. In the ps command output, I see that the wyoming-satellite and wyoming-openwakeword services and subprocesses are working correctly. Everything seems fine, but wake word does not work.
Any ideas on how to test it other than observing the system logs?

I have the same issue. I can successfully record and play audio.   I installed the LED service as well.  The LEDs are off initially.  When I speak OK Nabu the LEDs briefly turn Blue then go to Yellow and stay Yellow no matter what I say or do.  Even reloading the services.  The only way to get the LED's to change is to power cycle.  Then they are off until I say Ok Nabu.
Nothing appears to happen in HA either.  No Detection In Process, etc.
Look for ideas to debug as well.
Below is the journalctl output for all 3 services.  Nothing is added to the logs when I speak.
Not sue if this helps.
frank@pi2WVoice1:~ $ journalctl -u 2mic_leds.service -f
-- Journal begins at Tue 2023-12-05 00:31:03 CST. --
Jan 02 08:22:26 pi2WVoice1 systemd[1]: Started 2Mic LEDs.
Jan 02 08:22:29 pi2WVoice1 python3[330]: INFO:root:Ready
-- Boot d7c59930041c45f98a35f320d7700be7 --
Jan 02 21:56:50 pi2WVoice1 systemd[1]: Started 2Mic LEDs.
Jan 02 21:56:53 pi2WVoice1 python3[333]: INFO:root:Ready
Jan 02 22:12:13 pi2WVoice1 systemd[1]: Stopping 2Mic LEDs...
Jan 02 22:12:13 pi2WVoice1 systemd[1]: 2mic_leds.service: Succeeded.
Jan 02 22:12:13 pi2WVoice1 systemd[1]: Stopped 2Mic LEDs.
Jan 02 22:12:13 pi2WVoice1 systemd[1]: 2mic_leds.service: Consumed 1.278s CPU time.
-- Boot bb7246c4fdc04532a4fb5cfcd49f9e3d --
Jan 02 22:12:18 pi2WVoice1 systemd[1]: Started 2Mic LEDs.
Jan 02 22:12:21 pi2WVoice1 python3[331]: INFO:root:Ready
^C
frank@pi2WVoice1:~ $ journalctl -u wyoming-openwakeword.service.service -f
-- Journal begins at Tue 2023-12-05 00:31:03 CST. --
^C
frank@pi2WVoice1:~ $ journalctl -u wyoming-satellite.service -f
-- Journal begins at Tue 2023-12-05 00:31:03 CST. --
Jan 02 22:12:31 pi2WVoice1 run[645]: Recording raw data 'stdin' : Signed 16 bit Little Endian, Rate 16000 Hz, Mono
Jan 02 22:21:51 pi2WVoice1 run[645]: Aborted by signal Terminated...
Jan 02 22:21:51 pi2WVoice1 systemd[1]: Stopping Wyoming Satellite...
Jan 02 22:21:51 pi2WVoice1 systemd[1]: wyoming-satellite.service: Succeeded.
Jan 02 22:21:51 pi2WVoice1 systemd[1]: Stopped Wyoming Satellite.
Jan 02 22:21:51 pi2WVoice1 systemd[1]: wyoming-satellite.service: Consumed 25.904s CPU time.
Jan 02 22:21:51 pi2WVoice1 systemd[1]: Started Wyoming Satellite.
Jan 02 22:21:52 pi2WVoice1 run[764]: INFO:root:Ready
Jan 02 22:21:52 pi2WVoice1 run[764]: INFO:root:Connected to services
Jan 02 22:21:52 pi2WVoice1 run[766]: Recording raw data 'stdin' : Signed 16 bit Little Endian, Rate 16000 Hz, Mono
frank@pi2WVoice1:~ $ journalctl -u 2mic_leds.service -f
-- Journal begins at Tue 2023-12-05 00:31:03 CST. --
Jan 02 08:22:26 pi2WVoice1 systemd[1]: Started 2Mic LEDs.
Jan 02 08:22:29 pi2WVoice1 python3[330]: INFO:root:Ready
-- Boot d7c59930041c45f98a35f320d7700be7 --
Jan 02 21:56:50 pi2WVoice1 systemd[1]: Started 2Mic LEDs.
Jan 02 21:56:53 pi2WVoice1 python3[333]: INFO:root:Ready
Jan 02 22:12:13 pi2WVoice1 systemd[1]: Stopping 2Mic LEDs...
Jan 02 22:12:13 pi2WVoice1 systemd[1]: 2mic_leds.service: Succeeded.
Jan 02 22:12:13 pi2WVoice1 systemd[1]: Stopped 2Mic LEDs.
Jan 02 22:12:13 pi2WVoice1 systemd[1]: 2mic_leds.service: Consumed 1.278s CPU time.
-- Boot bb7246c4fdc04532a4fb5cfcd49f9e3d --
Jan 02 22:12:18 pi2WVoice1 systemd[1]: Started 2Mic LEDs.
Jan 02 22:12:21 pi2WVoice1 python3[331]: INFO:root:Ready
^C
frank@pi2WVoice1:~ $ journalctl -u wyoming-openwakeword.service.service -f
-- Journal begins at Tue 2023-12-05 00:31:03 CST. --
^C
frank@pi2WVoice1:~ $ journalctl -u wyoming-satellite.service -f
-- Journal begins at Tue 2023-12-05 00:31:03 CST. --
Jan 02 22:12:31 pi2WVoice1 run[645]: Recording raw data 'stdin' : Signed 16 bit Little Endian, Rate 16000 Hz, Mono
Jan 02 22:21:51 pi2WVoice1 run[645]: Aborted by signal Terminated...
Jan 02 22:21:51 pi2WVoice1 systemd[1]: Stopping Wyoming Satellite...
Jan 02 22:21:51 pi2WVoice1 systemd[1]: wyoming-satellite.service: Succeeded.
Jan 02 22:21:51 pi2WVoice1 systemd[1]: Stopped Wyoming Satellite.
Jan 02 22:21:51 pi2WVoice1 systemd[1]: wyoming-satellite.service: Consumed 25.904s CPU time.
Jan 02 22:21:51 pi2WVoice1 systemd[1]: Started Wyoming Satellite.
Jan 02 22:21:52 pi2WVoice1 run[764]: INFO:root:Ready
Jan 02 22:21:52 pi2WVoice1 run[764]: INFO:root:Connected to services
Jan 02 22:21:52 pi2WVoice1 run[766]: Recording raw data 'stdin' : Signed 16 bit Little Endian, Rate 16000 Hz, Mono

Not sure if this is related but might be worth a try. I had an issue where TTS was not working on my device. I had to make a change in my HA and it started working. Goto Settings... System... Network... under Home Assistant URL disable Automatic under `Local Network' and add your HA Network URL including:port in the field provided. I also had to add this device integration manually in HA as it was not automatically discovered.

I have the same issue. I can successfully record and play audio. I installed the LED service as well. The LEDs are off initially. When I speak OK Nabu the LEDs briefly turn Blue then go to Yellow and stay Yellow no matter what I say or do. Even reloading the services. The only way to get the LED's to change is to power cycle. Then they are off until I say Ok Nabu.
Nothing appears to happen in HA either. No Detection In Process, etc.
Looking for ideas to debug as well.
Below is the journalctl output for all 3 services. Nothing is added to the logs when I speak. Not sue if this helps.
frank@pi2WVoice1:~ $ journalctl -u 2mic_leds.service -f -- Journal begins at Tue 2023-12-05 00:31:03 CST. -- Jan 02 08:22:26 pi2WVoice1 systemd[1]: Started 2Mic LEDs. Jan 02 08:22:29 pi2WVoice1 python3[330]: INFO:root:Ready -- Boot d7c59930041c45f98a35f320d7700be7 -- Jan 02 21:56:50 pi2WVoice1 systemd[1]: Started 2Mic LEDs. Jan 02 21:56:53 pi2WVoice1 python3[333]: INFO:root:Ready Jan 02 22:12:13 pi2WVoice1 systemd[1]: Stopping 2Mic LEDs... Jan 02 22:12:13 pi2WVoice1 systemd[1]: 2mic_leds.service: Succeeded. Jan 02 22:12:13 pi2WVoice1 systemd[1]: Stopped 2Mic LEDs. Jan 02 22:12:13 pi2WVoice1 systemd[1]: 2mic_leds.service: Consumed 1.278s CPU time. -- Boot bb7246c4fdc04532a4fb5cfcd49f9e3d -- Jan 02 22:12:18 pi2WVoice1 systemd[1]: Started 2Mic LEDs. Jan 02 22:12:21 pi2WVoice1 python3[331]: INFO:root:Ready ^C
frank@pi2WVoice1:~ $ journalctl -u wyoming-openwakeword.service.service -f -- Journal begins at Tue 2023-12-05 00:31:03 CST. -- ^C
frank@pi2WVoice1:~ $ journalctl -u wyoming-satellite.service -f -- Journal begins at Tue 2023-12-05 00:31:03 CST. -- Jan 02 22:12:31 pi2WVoice1 run[645]: Recording raw data 'stdin' : Signed 16 bit Little Endian, Rate 16000 Hz, Mono Jan 02 22:21:51 pi2WVoice1 run[645]: Aborted by signal Terminated... Jan 02 22:21:51 pi2WVoice1 systemd[1]: Stopping Wyoming Satellite... Jan 02 22:21:51 pi2WVoice1 systemd[1]: wyoming-satellite.service: Succeeded. Jan 02 22:21:51 pi2WVoice1 systemd[1]: Stopped Wyoming Satellite. Jan 02 22:21:51 pi2WVoice1 systemd[1]: wyoming-satellite.service: Consumed 25.904s CPU time. Jan 02 22:21:51 pi2WVoice1 systemd[1]: Started Wyoming Satellite. Jan 02 22:21:52 pi2WVoice1 run[764]: INFO:root:Ready Jan 02 22:21:52 pi2WVoice1 run[764]: INFO:root:Connected to services Jan 02 22:21:52 pi2WVoice1 run[766]: Recording raw data 'stdin' : Signed 16 bit Little Endian, Rate 16000 Hz, Mono frank@pi2WVoice1:~ $ journalctl -u 2mic_leds.service -f -- Journal begins at Tue 2023-12-05 00:31:03 CST. -- Jan 02 08:22:26 pi2WVoice1 systemd[1]: Started 2Mic LEDs. Jan 02 08:22:29 pi2WVoice1 python3[330]: INFO:root:Ready -- Boot d7c59930041c45f98a35f320d7700be7 -- Jan 02 21:56:50 pi2WVoice1 systemd[1]: Started 2Mic LEDs. Jan 02 21:56:53 pi2WVoice1 python3[333]: INFO:root:Ready Jan 02 22:12:13 pi2WVoice1 systemd[1]: Stopping 2Mic LEDs... Jan 02 22:12:13 pi2WVoice1 systemd[1]: 2mic_leds.service: Succeeded. Jan 02 22:12:13 pi2WVoice1 systemd[1]: Stopped 2Mic LEDs. Jan 02 22:12:13 pi2WVoice1 systemd[1]: 2mic_leds.service: Consumed 1.278s CPU time. -- Boot bb7246c4fdc04532a4fb5cfcd49f9e3d -- Jan 02 22:12:18 pi2WVoice1 systemd[1]: Started 2Mic LEDs. Jan 02 22:12:21 pi2WVoice1 python3[331]: INFO:root:Ready ^C

I have the exact same issue

If your openwakeword is working in Home Assistant, try using the satellite with it (without local detection) before to help find the issue. Also, run from command line instead of the service, again, to simplify troubleshoot. You will see the logs live, without additional commands. Forget about LEDs until you have the rest working.
This is what you should see when running the satellite:
user@localhost:~/wyoming-satellite $ script/run   --debug   --name 'satellite'   --uri 'tcp://<IP_ADDRESS>:10700'   --mic-command 'arecord -D plughw:CARD=seeed2micvoicec,DEV=0 -r 16000 -c 1 -f S16_LE -t raw'   --snd-command 'aplay -D plughw:CARD=seeed2micvoicec,DEV=0 -r 16000 -c 1 -f S16_LE -t raw' --snd-command-rate 16000 --snd-command-channels 1
DEBUG:root:Namespace(mic_uri=None, mic_command='arecord -D plughw:CARD=seeed2micvoicec,DEV=0 -r 16000 -c 1 -f S16_LE -t raw', mic_command_rate=16000, mic_command_width=2, mic_command_channels=1, mic_command_samples_per_chunk=1024, mic_volume_multiplier=1.0, mic_noise_suppression=0, mic_auto_gain=0, snd_uri=None, snd_command='aplay -D plughw:CARD=seeed2micvoicec,DEV=0 -r 22050 -c 1 -f S16_LE -t raw', snd_command_rate=16000, snd_command_width=2, snd_command_channels=1, snd_volume_multiplier=1.0, wake_uri=None, wake_word_name=[], wake_command=None, wake_command_rate=16000, wake_command_width=2, wake_command_channels=1, wake_refractory_seconds=5.0, vad=False, vad_threshold=0.5, vad_trigger_level=1, vad_buffer_seconds=2, vad_wake_word_timeout=5.0, event_uri=None, startup_command=None, detect_command=None, detection_command=None, transcript_command=None, stt_start_command=None, stt_stop_command=None, synthesize_command=None, tts_start_command=None, tts_stop_command=None, streaming_start_command=None, streaming_stop_command=None, error_command=None, awake_wav=None, done_wav=None, uri='tcp://<IP_ADDRESS>:10700', name='satellite', area=None, no_zeroconf=False, zeroconf_name=None, zeroconf_host=None, debug_recording_dir=None, debug=True)
INFO:root:Ready
DEBUG:root:Detected IP: xxx.xxx.xxx.xxx
DEBUG:root:Zeroconf discovery enabled (name=d83add8f9abe, host=None)
DEBUG:root:Connecting to mic service: ['arecord', '-D', 'plughw:CARD=seeed2micvoicec,DEV=0', '-r', '16000', '-c', '1', '-f', 'S16_LE', '-t', 'raw']
DEBUG:root:Connecting to snd service: [aplay -D plughw:CARD=seeed2micvoicec,DEV=0 -r 22050 -c 1 -f S16_LE -t raw]
INFO:root:Connected to services
DEBUG:root:Connected to mic service
Recording raw data 'stdin' : Signed 16 bit Little Endian, Rate 16000 Hz, Mono
DEBUG:root:Server set:<PHONE_NUMBER>7595
INFO:root:Streaming audio

Note you must see the Streaming audio message before trying to talk. It coud be a few seconds (like 20s) before this message appears.
When you say the wake word, you must see:
DEBUG:root:Wake word detected
DEBUG:root:Event(type='transcript', data={'text': 'redacted'}, payload=None)
INFO:root:Streaming audio
DEBUG:root:Event(type='synthesize', data={'text': 'redacted', 'voice': {'name': 'AntonioNeural'}}, payload=None)
DEBUG:root:Connected to snd service
Playing raw data 'stdin' : Signed 16 bit Little Endian, Rate 16000 Hz, Mono

I believe you also made sure the arecord and aplay commands works when ran alone as per the tutorial.

Perhaps to help address what a few others are seeing - @llluis If you append the event service, it can cause everything to stall out. I'm not sure why yet, but can reproduce (it working fine when the LEDs are taken out of the equation).
  Okay.  Okay.'}, payload=None)
INFO:root:Streaming audio
DEBUG:root:Event(type='synthesize', data={'text': "It seems like you're trying to convey something. Is there anything specific you'd like to ask or discuss?", 'voice': {'name': 'en_US-danny-low'}}, payload=None)
DEBUG:root:Connected to snd service

Oddly, you don't get a "wake word detected" when this occurs - the lights flip on, and then that's it.

Perhaps to help address what a few others are seeing - @llluis If you append the event service, it can cause everything to stall out. I'm not sure why yet, but can reproduce (it working fine when the LEDs are taken out of the equation).
  Okay.  Okay.'}, payload=None)
INFO:root:Streaming audio
DEBUG:root:Event(type='synthesize', data={'text': "It seems like you're trying to convey something. Is there anything specific you'd like to ask or discuss?", 'voice': {'name': 'en_US-danny-low'}}, payload=None)
DEBUG:root:Connected to snd service

Oddly, you don't get a "wake word detected" when this occurs - the lights flip on, and then that's it.
EDIT: If you wait some time before using the wake word, and reload the integration from the HA console, it seems to work alright.

I have the leds working normally (with a few modifications / more states). Just to be sure, you always have to start the led process before the satellite (and don’t rely on systemctl starting them for you).

I had the same issues of it crashing and the LEDs staying on. I found rerunning
cd wyoming-satellite/
python3 -m venv .venv
.venv/bin/pip3 install --upgrade pip
.venv/bin/pip3 install --upgrade wheel setuptools
.venv/bin/pip3 install \
  -f 'https://synesthesiam.github.io/prebuilt-apps/' \
  -r requirements.txt \
  -r requirements_extra.txt

seems to have fixed it, but now my voice play back is comically fast?
Has anyone also see this, how can I change playback speed on the device?
Thanks

Hope this helps someone
I had the same issues of it crashing and the LEDs staying on. I found rerunning
cd wyoming-satellite/
python3 -m venv .venv
.venv/bin/pip3 install --upgrade pip
.venv/bin/pip3 install --upgrade wheel setuptools
.venv/bin/pip3 install \
  -f 'https://synesthesiam.github.io/prebuilt-apps/' \
  -r requirements.txt \
  -r requirements_extra.txt

seems to have fixed it, but now my voice play back is comically fast?
Has anyone also see this, how can I change playback speed on the device?
EDIT Ignore the playback speed thing, that was something I added myself lol
Thanks

what was it? the speed thing? Mines doing that now too and I have no clue what i did to make it happen

Speed thing? It seemed like installing the LED set up changed some version of python perhaps. Reinstalling the satellite seems to fix it.
That's only a guess though, im not sure what it was.

I did the upgrade today to use pulseaudio and allow it to play music and its stopped working :(
Did you guys get anywhere with it?

I also have nothing that looks off in the logs, but no detection and I've tested the recording and playback. I don't have the zero 2w/respeaker setup, but rather an rpi 3b with a blue yeti mic; I'm curious whether the sample rate and stereo input might be causing issues (it errored out with the defaults so I had to change it to 44.1/2-ch). I tried with the local wake word and the logs were similarly silent. The only other thing that might be off is the "Connection cancelled" messages (in debug logs below).
Default logs:
INFO:root:Ready
INFO:root:Connected to services
Recording raw data 'stdin' : Signed 16 bit Little Endian, Rate 44100 Hz, Stereo
INFO:root:Connected to server
INFO:root:Streaming audio

Debug logs:
[ha@smart-speaker wyoming-satellite]$ script/run --name 'wyoming' --uri 'tcp://<IP_ADDRESS>:10700' --mic-command 'arecord -D hw:2,0 -r 44100 -c 2 -f S16_LE -t raw' --snd-command 'aplay -r 22050 -c 1 -f S16_LE -t raw' --awake-wav test.wav --debug
DEBUG:root:Namespace(mic_uri=None, mic_command='arecord -D hw:2,0 -r 44100 -c 2 -f S16_LE -t raw', mic_command_rate=16000, mic_command_width=2, mic_command_channels=1, mic_command_samples_per_chunk=1024, mic_volume_multiplier=1.0, mic_noise_suppression=0, mic_auto_gain=0, mic_seconds_to_mute_after_awake_wav=0.5, mic_no_mute_during_awake_wav=False, mic_channel_index=None, snd_uri=None, snd_command='aplay -r 22050 -c 1 -f S16_LE -t raw', snd_command_rate=22050, snd_command_width=2, snd_command_channels=1, snd_volume_multiplier=1.0, wake_uri=None, wake_word_name=[], wake_command=None, wake_command_rate=16000, wake_command_width=2, wake_command_channels=1, wake_refractory_seconds=5.0, vad=False, vad_threshold=0.5, vad_trigger_level=1, vad_buffer_seconds=2, vad_wake_word_timeout=5.0, event_uri=None, startup_command=None, detect_command=None, detection_command=None, transcript_command=None, stt_start_command=None, stt_stop_command=None, synthesize_command=None, tts_start_command=None, tts_stop_command=None, tts_played_command=None, streaming_start_command=None, streaming_stop_command=None, error_command=None, connected_command=None, disconnected_command=None, awake_wav='test.wav', done_wav=None, uri='tcp://<IP_ADDRESS>:10700', name='wyoming', area=None, no_zeroconf=False, zeroconf_name=None, zeroconf_host=None, debug_recording_dir=None, debug=True, log_format='%(levelname)s:%(name)s:%(message)s')
INFO:root:Ready
DEBUG:root:Detected IP: <IP_ADDRESS>
DEBUG:root:Zeroconf discovery enabled (name=b827eb73eee0, host=None)
DEBUG:root:Connecting to mic service: ['arecord', '-D', 'hw:2,0', '-r', '44100', '-c', '2', '-f', 'S16_LE', '-t', 'raw']
DEBUG:root:Connecting to snd service: ['aplay', '-r', '22050', '-c', '1', '-f', 'S16_LE', '-t', 'raw']
INFO:root:Connected to services
DEBUG:root:Connected to mic service
Recording raw data 'stdin' : Signed 16 bit Little Endian, Rate 44100 Hz, Stereo
DEBUG:root:Server set:<PHONE_NUMBER>471
INFO:root:Connected to server
INFO:root:Streaming audio
DEBUG:root:Event(type='run-pipeline', data={'start_stage': 'wake', 'end_stage': 'tts', 'restart_on_end': True, 'snd_format': {'rate': 22050, 'width': 2, 'channels': 1}}, payload=None)
DEBUG:root:Connection cancelled:<PHONE_NUMBER>935
DEBUG:root:Ping enabled
DEBUG:root:Connection cancelled:<PHONE_NUMBER>027
DEBUG:root:Connection cancelled:<PHONE_NUMBER>015

So Im really not sure what my issue was, after rebuilding a few times it went away. But then came back when I put the Pi Zero into a case. So connection could have been the issue all along, removing the case from the Zero and its been pretty stable ever since.
Im sure thats not much help though lol

So Im really not sure what my issue was, after rebuilding a few times it went away. But then came back when I put the Pi Zero into a case. So connection could have been the issue all along, removing the case from the Zero and its been pretty stable ever since.
Im sure thats not much help though lol

Thanks I'll try rebuilding; it's not a connection issue in my case because none of the on-device stuff works either and I'm connected via ethernet.

I'm having a new problem my Pi Zero W running Wyoming Voice Satellite shows both services active but my journal never says streaming audio, when I access HA the assist in progress never comes on. any help is appreciated.

@joshdean1569 , you have the same issue described here: https://github.com/rhasspy/wyoming-satellite/issues/105

I followed all the steps in the tutorial with a Raspberry Pi Zero 2 and ReSpeaker 2 mic hat. I tried ok_nabu and hey_jarvis as sound models, but no matter what I did, I couldn't see anything in the logs. speaker's audio recording and audio playback functions (arecord and aplay) work fine. In the ps command output, I see that the wyoming-satellite and wyoming-openwakeword services and subprocesses are working correctly. Everything seems fine, but wake word does not work. Any ideas on how to test it other than observing the system logs?

i have the exact same problem. raspberry zero 2w with mic 2 head.   led turn quick blue after wakeword, then turns yellow an stopped working.

For anyone using the 2mic hat on a Pi Zero, I mapped the button on the hat to restart the service - this is useful when it tends to go from Blue LEDs to Yellow and then just sit on Yellow.
sudo apt update sudo apt install python3-rpi.gpio
First thing I did was test which GPIO pin the button was mapped to, for me it was 17, but yours may be different, this is a small python script to check, you can change the number to find what works for you.
`
import RPi.GPIO as GPIO
import time
BUTTON_PIN = 17  # Replace with the actual GPIO pin for the button
GPIO.setmode(GPIO.BCM)
GPIO.setup(BUTTON_PIN, GPIO.IN, pull_up_down=GPIO.PUD_UP)
GPIO.add_event_detect(BUTTON_PIN, GPIO.FALLING, callback=button_pressed, bouncetime=300)
try:
print("Monitoring button...")
while True:
time.sleep(1)
except KeyboardInterrupt:
print("Exiting...")
finally:
GPIO.cleanup()
`
Save it as "button_test.py"
python3 button_test.py
The next thing to do is create a new script or amend that one to include a restart function:
`
import RPi.GPIO as GPIO
import os
import time
BUTTON_PIN = 17
GPIO.setmode(GPIO.BCM)
GPIO.setup(BUTTON_PIN, GPIO.IN, pull_up_down=GPIO.PUD_UP)
def button_pressed(channel):
print("Button pressed! Restarting Wyoming Satellite service...")
os.system("sudo systemctl restart wyoming-satellite.service")
print("Service restarted.")
GPIO.add_event_detect(BUTTON_PIN, GPIO.FALLING, callback=button_pressed, bouncetime=300)
try:
print("Waiting for button press...")
while True:
time.sleep(1)  # Keep the script running
except KeyboardInterrupt:
print("Exiting...")
finally:
GPIO.cleanup()
`
Since the script requires sudo, I added it to:
sudo visudo
pi ALL=(ALL) NOPASSWD: /bin/systemctl restart wyoming-satellite.service # Change PI to whatever your username is here.
I wanted to create a service so that it was always running.
sudo nano /etc/systemd/system/button-listener.service
Populated it with:
`
[Unit]
Description=Button Listener for Restarting Wyoming Satellite Service
After=multi-user.target
[Service]
ExecStart=/usr/bin/python3 /path/to/restart_service.py # CHANGE PATH
Restart=always
User=pi  # CHANGE USERNAME
[Install]
WantedBy=multi-user.target
`
Then enabled and started the service:
sudo systemctl enable button-listener.service sudo systemctl start button-listener.service
Now if the service hangs, I can restart it with a button press on the Mic Hat, without having to SSH into the device.


cli: remove unnecessary initErr type

- What I did
Removed unnecessary initErr type. It closes #22754
- How I did it
Took @runcom suggestion from #22754 and applied it
- How to verify it
Compile docker and try commands
- Description for the changelog

- A picture of a cute animal (not mandatory but encouraged)

ping @aaronlehmann @runcom @vdemeester

Ok, it doesn't work :D

LGTM (assuming the other way @aaronlehmann isn't feasible)

LGTM 🐯

LGTM


Question: How can I version control the installed servers

I have all my nvim config version controlled.
Goal: I also want to version control the list of installed lsp servers
Is there a file where nvim-lsp-installer keeps a list of installed servers? Or is it possible/advisable to have a block in my nvim config? Something like the vim-plug config?
Is this something that depends on the outcome of https://github.com/williamboman/nvim-lsp-installer/issues/184? If so, then from a user perspective I would really love to see it work as simple as vim-plug, just for lsp servers :)

Hey! Most servers (if not all) supports installing a specific version, this is done by appending the version number to the server name being installed, for example rust_analyzer@nightly or<EMAIL_ADDRESS>This can then be provided to either ´:LspInstall <server_name>orrequire("nvim-lsp-installer").install(server_name)`.

Is there a file where nvim-lsp-installer keeps a list of installed servers? Or is it possible/advisable to have a block in my nvim config? Something like the vim-plug config?

There's no manifest file or single orchestration layer as such. It's all done via filesystem entries, where a server is considered installed if it exists on the filesystem.

Thanks @williamboman ! I do not have the requirement to pin the version, although that might come in handy.
What I would really like is the workflow like for vim-plug:

have a nvim config file where I define each server I want to be installed -> This file I can put under version control with the rest of my nvim config
whenever I change something or setup a new machine, I just call :LspInstallAll and all configured servers get installed

Ah then perhaps this snippet in the wiki might be helpful. :help nvim-lsp-installer might provide some more information about what APIs are available!

Hi @williamboman, based on the snippet, the API and the idea, that I want it to work somewhat like vim-plug, I whipped up this: nvim-lsplug. Would love your feedback!

Cool, looks very useful!
Maybe the API could be a bit less imperative? Lua lends itself pretty nicely to DSL-like expressions. Maybe something like:
require("nvim-lsplug").setup {
     "sumneko_lua",
     "vimls",
     { "jsonls", {
        commands = {
          Format = {
            function()
              vim.lsp.buf.range_formatting({},{0,0},{vim.fn.line("$"),0})
            end
          }
        }
    }
}

-- or packer.nvim-style

require("nvim-lsplug").setup(function (enable)
  enable { "sumneko_lua", "vimls" } -- neovim dev LSPs
  enable { "tsserver", "graphql", "eslint" } -- web LSPs
  -- this would make conditionally opting in for certain servers very easy too
  if work_computer then
    enable { "clangd", "rust_analyzer" }
  end
end)

And as for the commands, I think it's a pretty established convention to prefix them with :Lsp (like you already do), but also make sure the following character is uppercase. I think sticking to that aids with discoverability and autocompletion.

Btw this is a feature I've been planning to add to this plugin, I've seen it's a very common thing people put in their own configs.

Thanks for the feedback! I will adapt your recommendation for the casing of the command. Your hint to make it more DSL-like: what I like about the more imperative vim-plug style: it is very modular. I can do stuff, like your if clause, in between, or even split it through several files. To that end, I think your second proposal is a good compromise.
If this project supports something like the above, I think all my requirements that lead to making my plugin would be solved. And I agree: many people manage the installed servers in their "dotfiles" to make it reproducible. It would reduce the amount of boilerplate that users put around nvim-lsp-installer.

Hi @williamboman

Btw this is a feature I've been planning to add to this plugin, I've seen it's a very common thing people put in their own configs.

So will this be added (or  has already been added) natively to nvim-lsp-installer or the idea is to use @benjaminbauer 's plugin? Thanks in advance

It's not been added so far. You can either use that plugin or add it yourself, there's really not a lot of code needed and there's an example in the Wiki.


Task to create a Google Batch Job

Feature description
Based on the existing work done for the Google Batch task runner.

We've discussed that we'll avoid the same functionality as a task runner and task. The preference long-term is to deprecate:

K8s PodCreate task (in favor of KubernetesTaskRunner)
VertexAI task (in favor of VertexAITaskRunner)

to have one holistic UX for all script/container tasks


Add emitter

This PR adds a new underlying queuing technology to "vice" called Emitter which is a high-performance, low-latency, and secure platform based on MQTT. More details can be found at emitter.io.

friendly ping

@gmlewis thanks a ton for your contribution!
Apologies for the delay GitHub didn't push a notification my way when you first opened it and I've on vacation followed by being swarmed at work and didn't notice it!
I'll give it a look over the weekend!

An initial question (forgive me if it's too obvious but I'm not 100% expert in MQTT + Emitter) but do you think it is necessary to have an explicit version for Emitter as oppose to having a general purpose MQTT driver that can be configured to use Emitter or other MQTT implementations 🤔

Hmmm... that's an excellent question, @ojizero - and honestly, since I wrote that PR, I've been learning more about nats.io and am wondering if I should change my current systems to start using nats.io and stop using emitter.io. At the time, I thought Emitter provided some really nice features like the securing of channels, but now I'm kinda wondering if there is added benefit.
If you come to the same conclusion, then I'm totally fine if you just want to simply close this PR. :grin:


Update AWS SDK gem

@aleksandrs-ledovskis @j15e I have a feature for it along with a rake task which will wait for a CF invalidation to complete. I'll open a PR after #30 is merged and you can decide if you want to release a new major version (there is a breaking change in endpoint config for aws-sdk v2)

Great! I will review that PR

Submitted #32 which includes the AWS SDK update.

Solved with #32 and updated to ~> 2.6.


Handle Android RN 0.47 breaking change

https://github.com/facebook/react-native/commit/ce6fb337a146e6f261f2afb564aa19363774a7a8

You are welcome! Thanks for your excellent library. It saved me lots of time.