Speech_recognition broken for new Bing API

Steps to reproduce

Register for a Bing Speech API key
Try to use sr.recognize_bing()

Expected behaviour
Speech recognition (speech to text)
Actual behaviour
Error - tried two different keys, multiple machines - Bing API has been updated, appears to no longer authenticate correctly with Speech_recognition 3.8.x - worked a few months ago - only thing I changed was getting a new API key.
Traceback (most recent call last):
  File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/speech_recognition/__init__.py", line 935, in recognize_bing
    credential_response = urlopen(credential_request, timeout=60)  # credential response can take longer, use longer timeout instead of default one
  File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/urllib/request.py", line 223, in urlopen
    return opener.open(url, data, timeout)
  File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/urllib/request.py", line 532, in open
    response = meth(req, response)
  File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/urllib/request.py", line 642, in http_response
    'http', request, response, code, msg, hdrs)
  File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/urllib/request.py", line 570, in error
    return self._call_chain(*args)
  File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/urllib/request.py", line 504, in _call_chain
    result = func(*args)
  File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/urllib/request.py", line 650, in http_error_default
    raise HTTPError(req.full_url, code, msg, hdrs, fp)
urllib.error.HTTPError: HTTP Error 401: Access Denied

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/Users/bpayne/Downloads/voice_control_mac_2018-11.py", line 22, in <module>
    MY_API_KEY,"en-US")
  File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/speech_recognition/__init__.py", line 937, in recognize_bing
    raise RequestError("credential request failed: {}".format(e.reason))
speech_recognition.RequestError: credential request failed: Access Denied

System information
My system is Mac OS X 10.13.6 High Sierra, and Win 10 Pro/Enterprise - tested on 3 machines.
My Python version is 3.6.3 to 3.6.7, tested across 3 machines/versions. (You can check this by running python -V.)
My Pip version is 18.1
My SpeechRecognition library version is 3.8.1
My PyAudio library version is 0.2.11

Same happens to me.

I found the issue - as MS phases out the Bing Speech API in favor of Cognitive Speech Services, it's changing its servers. It was an issue in the Authentication section (Lines 1010 and 1035) of init.py. An updated copy of init.py is attached - just have to unzip and replace it in your
C:\Users\{your_user_name}\AppData\Local\Programs\Python\Python36\Lib\site-packages\speech_recognition folder on a PC or
/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/speech_recognition folder on Mac.
Hope it's of help.
Bryson
init.zip

I issued a pull request for init.py with the updated URLs for the newer Speech APIs. Glad to contribute to a great library like Speech_Recognition

I issued a pull request for init.py with the updated URLs for the newer Speech APIs.
Glad to contribute to a great library like Speech_Recognition.

Yes, you are right. However, I found a question is that directly using your modified code may still fail. From the code, I see that you are in west US. But, I'm in East US. Thus, I failed too. I modified your code to East US. Success! So, other people should pay attention on this.
Thanks @brysonpayne

I've created a PR to add the new Azure Speech API (now that the Bing API is not working).
https://github.com/Uberi/speech_recognition/pull/389
If the Bing API definitely doesn't work, I can delete that code as well in the PR.

For anyone else who went down the rabbit hole to solve a bug in the second lab in Microsoft's AI Program (second lab of the first course), it still refers to the Bing Speech API and links to this speech_recognition library.
It looks like once #389 is merged, theoretically the line in MS's Jupyter notebook can be changed from transcription = r.recognize_bing(audio, key=speechKey) to transcription = r.recognize_azure(audio, key=speechKey)

I'm working on that lab right now, but I still can't figure out how to fix the issue. I'm not sure how to use #389 -- how do I "merge" it?

When I try using recognize_azure, I'm getting the following error:
AttributeError: 'Recognizer' object has no attribute 'recognize_azure'
I noticed when I run the following, the other methods (e.g. recognize_google) show up, but not recognize_azure:
import speech_recognition as sr
import inspect
r = sr.Recognizer()
print(inspect.getmembers(r, predicate=inspect.ismethod))

Output:
[
('__enter__', <bound method AudioSource.__enter__ of <speech_recognition.Recognizer object at 0x10e65a5f8>>),
('__exit__', <bound method AudioSource.__exit__of <speech_recognition.Recognizer object at 0x10e65a5f8>>),
('__init__', <bound method Recognizer.__init__ of <speech_recognition.Recognizer object at 0x10e65a5f8>>),
('adjust_for_ambient_noise', <bound method Recognizer.adjust_for_ambient_noise of <speech_recognition.Recognizer object at 0x10e65a5f8>>),
('listen', <bound method Recognizer.listen of <speech_recognition.Recognizer object at 0x10e65a5f8>>),
('listen_in_background', <bound method Recognizer.listen_in_background of <speech_recognition.Recognizer object at 0x10e65a5f8>>),
('recognize_api', <bound method recognize_api of <class 'speech_recognition.Recognizer'>>),
('recognize_bing', <bound method Recognizer.recognize_bing of <speech_recognition.Recognizer object at 0x10e65a5f8>>),
('recognize_google', <bound method Recognizer.recognize_google of <speech_recognition.Recognizer object at 0x10e65a5f8>>),
('recognize_google_cloud', <bound method Recognizer.recognize_google_cloud of <speech_recognition.Recognizer object at 0x10e65a5f8>>),
('recognize_houndify', <bound method Recognizer.recognize_houndify of <speech_recognition.Recognizer object at 0x10e65a5f8>>),
('recognize_ibm', <bound method Recognizer.recognize_ibm of <speech_recognition.Recognizer object at 0x10e65a5f8>>),
('recognize_sphinx', <bound method Recognizer.recognize_sphinx of <speech_recognition.Recognizer object at 0x10e65a5f8>>),
('recognize_wit', <bound method Recognizer.recognize_wit of <speech_recognition.Recognizer object at 0x10e65a5f8>>),
('record', <bound method Recognizer.record of <speech_recognition.Recognizer object at 0x10e65a5f8>>),
('snowboy_wait_for_hot_word', <bound method Recognizer.snowboy_wait_for_hot_word of <speech_recognition.Recognizer object at 0x10e65a5f8>>)
]

I found the issue - as MS phases out the Bing Speech API in favor of Cognitive Speech Services, it's changing its servers. It was an issue in the Authentication and Recognition in the Bing section (Lines 1010 and 1040) of init.py. An updated copy of init.py is attached - just have to unzip and replace it in your
C:\Users\{your_user_name}\AppData\Local\Programs\Python\Python36\Lib\site-packages\speech_recognition folder on a PC or
/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/speech_recognition folder on Mac.
Hope it's of help.
Bryson
init.zip

Esto me funciono !

2020 same error

For anyone interested, I fixed this in my branch. As this repo seems to be abandoned, and my past PRs have been ignored, it's unlikely it will ever be fixed here. That said, I'm not using Bing anymore myself (as it's enormously expensive), but it's accuracy is fantastic.

The version should be bumped, tag a new release, and published to PyPI.
For now anyone finding this, install with VCS or tarball/zip:

python -m pip install git+https://github.com/Uberi/speech_recognition.git
python -m pip install https://github.com/Uberi/speech_recognition/archive/master.zip

The version should be bumped, tag a new release, and published to PyPI.
For now anyone finding this, install with VCS or tarball/zip:

python -m pip install git+https://github.com/Uberi/speech_recognition.git
python -m pip install https://github.com/Uberi/speech_recognition/archive/master.zip

@rbrisita, hi, I followed your comments to reinstall the library but I still have the problem with azure. Any idea? Thanks.
r.recognize_azure
Traceback (most recent call last):
File "", line 1, in
r.recognize_azure
AttributeError: 'Recognizer' object has no attribute 'recognize_azure'

The version should be bumped, tag a new release, and published to PyPI.
For now anyone finding this, install with VCS or tarball/zip:

python -m pip install git+https://github.com/Uberi/speech_recognition.git
python -m pip install https://github.com/Uberi/speech_recognition/archive/master.zip

@rbrisita, hi, I followed your comments to reinstall the library but I still have the problem with azure. Any idea? Thanks.
r.recognize_azure
Traceback (most recent call last):
File "", line 1, in
r.recognize_azure
AttributeError: 'Recognizer' object has no attribute 'recognize_azure'

It seems that Python is still accessing an old version. Make sure you are working in the correct environment. Please review venv then try one of the install methods I mentioned before.

It seems that Python is still accessing an old version. Make sure you are working in the correct environment. Please review venv then try one of the install methods I mentioned before.

I think the endpoint should be changed so, it is better to provide both key and endpoint from the user side. The author has assigned the fixed endpoint which is not same (https://api.cognitive.microsoft.com/sts/v1.0/issuetoken) for every user.
def recognize_bing(self, audio_data, key,endpoint_url, language="en-US", show_all=False):
"""
Performs speech recognition on audio_data (an AudioData instance), using the Microsoft Bing Speech API.
    The Microsoft Bing Speech API key is specified by ``key``. Unfortunately, these are not available without `signing up for an account <https://azure.microsoft.com/en-ca/pricing/details/cognitive-services/speech-api/>`__ with Microsoft Azure.

    To get the API key, go to the `Microsoft Azure Portal Resources <https://portal.azure.com/>`__ page, go to "All Resources" > "Add" > "See All" > Search "Bing Speech API > "Create", and fill in the form to make a "Bing Speech API" resource. On the resulting page (which is also accessible from the "All Resources" page in the Azure Portal), go to the "Show Access Keys" page, which will have two API keys, either of which can be used for the `key` parameter. Microsoft Bing Speech API keys are 32-character lowercase hexadecimal strings.

    The recognition language is determined by ``language``, a BCP-47 language tag like ``"en-US"`` (US English) or ``"fr-FR"`` (International French), defaulting to US English. A list of supported language values can be found in the `API documentation <https://docs.microsoft.com/en-us/azure/cognitive-services/speech/api-reference-rest/bingvoicerecognition#recognition-language>`__ under "Interactive and dictation mode".

    Returns the most likely transcription if ``show_all`` is false (the default). Otherwise, returns the `raw API response <https://docs.microsoft.com/en-us/azure/cognitive-services/speech/api-reference-rest/bingvoicerecognition#sample-responses>`__ as a JSON dictionary.

    Raises a ``speech_recognition.UnknownValueError`` exception if the speech is unintelligible. Raises a ``speech_recognition.RequestError`` exception if the speech recognition operation failed, if the key isn't valid, or if there is no internet connection.
    """
    assert isinstance(audio_data, AudioData), "Data must be audio data"
    assert isinstance(key, str), "``key`` must be a string"
    assert isinstance(language, str), "``language`` must be a string"

    access_token, expire_time = getattr(self, "bing_cached_access_token", None), getattr(self, "bing_cached_access_token_expiry", None)
    allow_caching = True
    try:
        from time import monotonic  # we need monotonic time to avoid being affected by system clock changes, but this is only available in Python 3.3+
    except ImportError:
        try:
            from monotonic import monotonic  # use time.monotonic backport for Python 2 if available (from https://pypi.python.org/pypi/monotonic)
        except (ImportError, RuntimeError):
            expire_time = None  # monotonic time not available, don't cache access tokens
            allow_caching = False  # don't allow caching, since monotonic time isn't available
    if expire_time is None or monotonic() > expire_time:  # caching not enabled, first credential request, or the access token from the previous one expired
        # get an access token using OAuth
        #credential_url = "https://api.cognitive.microsoft.com/sts/v1.0/issueToken"
        #credential_url = "https://westeurope.api.cognitive.microsoft.com/sts/v1.0/issuetoken"
        credential_url = endpoint_url
        credential_request = Request(credential_url, data=b"", headers={
            "Content-type": "application/x-www-form-urlencoded",
            "Content-Length": "0",
            "Ocp-Apim-Subscription-Key": key,
        })

        if allow_caching:
            start_time = monotonic()

        try:
            credential_response = urlopen(credential_request, timeout=60)  # credential response can take longer, use longer timeout instead of default one
        except HTTPError as e:
            raise RequestError("credential request failed: {}".format(e.reason))
        except URLError as e:
            raise RequestError("credential connection failed: {}".format(e.reason))
        access_token = credential_response.read().decode("utf-8")

        if allow_caching:
            # save the token for the duration it is valid for
            self.bing_cached_access_token = access_token
            self.bing_cached_access_token_expiry = start_time + 600  # according to https://docs.microsoft.com/en-us/azure/cognitive-services/speech/api-reference-rest/bingvoicerecognition, the token expires in exactly 10 minutes

    wav_data = audio_data.get_wav_data(
        convert_rate=16000,  # audio samples must be 8kHz or 16 kHz
        convert_width=2  # audio samples should be 16-bit
    )

    url = "https://speech.platform.bing.com/speech/recognition/interactive/cognitiveservices/v1?{}".format(urlencode({
        "language": language,
        "locale": language,
        "requestid": uuid.uuid4(),
    }))

    if sys.version_info >= (3, 6):  # chunked-transfer requests are only supported in the standard library as of Python 3.6+, use it if possible
        request = Request(url, data=io.BytesIO(wav_data), headers={
            "Authorization": "Bearer {}".format(access_token),
            "Content-type": "audio/wav; codec=\"audio/pcm\"; samplerate=16000",
            "Transfer-Encoding": "chunked",
        })
    else:  # fall back on manually formatting the POST body as a chunked request
        ascii_hex_data_length = "{:X}".format(len(wav_data)).encode("utf-8")
        chunked_transfer_encoding_data = ascii_hex_data_length + b"\r\n" + wav_data + b"\r\n0\r\n\r\n"
        request = Request(url, data=chunked_transfer_encoding_data, headers={
            "Authorization": "Bearer {}".format(access_token),
            "Content-type": "audio/wav; codec=\"audio/pcm\"; samplerate=16000",
            "Transfer-Encoding": "chunked",
        })

    try:
        response = urlopen(request, timeout=self.operation_timeout)
    except HTTPError as e:
        raise RequestError("recognition request failed: {}".format(e.reason))
    except URLError as e:
        raise RequestError("recognition connection failed: {}".format(e.reason))
    response_text = response.read().decode("utf-8")
    result = json.loads(response_text)

    # return results
    if show_all: return result
    if "RecognitionStatus" not in result or result["RecognitionStatus"] != "Success" or "DisplayText" not in result: raise UnknownValueError()
    return result["DisplayText"]

I found the issue - as MS phases out the Bing Speech API in favor of Cognitive Speech Services, it's changing its servers. It was an issue in the Authentication and Recognition in the Bing section (Lines 1010 and 1040) of init.py. An updated copy of init.py is attached - just have to unzip and replace it in your C:\Users\{your_user_name}\AppData\Local\Programs\Python\Python36\Lib\site-packages\speech_recognition folder on a PC or /Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/speech_recognition folder on Mac. Hope it's of help. Bryson init.zip

Continuing an old thread, but this is unfortunately still an issue with using the SpeechRecognition package with recognize_bing(). I went into that init.py file and changed the url to the one you provided, except with eastus.api instead of westus.api. If azure requires a specific url dependent on server location to accompany the api key, they should add that as an argument to provide to the recognize_bing function so it can be interpolated into the string.


Update build_bench_wasm.sh

Explanation:
Comments have been added to explain the general purpose of the script and specific functions.
Variables have more descriptive names to improve readability.
Logic for cleaning and creating the target directory is clarified.
Additional comments in the loop sections to explain the purpose of each step.
Comments added for clarification in some loop steps.

Explanation:
Comments have been added to explain the general purpose of the script and specific functions.
Variables have more descriptive names to improve readability.
Logic for cleaning and creating the target directory is clarified.
Additional comments in the loop sections to explain the purpose of each step.
Comments added for clarification in some loop steps.


Update README.md

🛠 Fixed broken 🔗

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

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

Thanks for the update. Could you also sign the CLA?

Thanks for the update. Could you also sign the CLA?

Done -- Thanks for commenting on that and sorry for the wait.  The extra ping helped. :)

Done -- Thanks for commenting on that and sorry for the wait.  The extra ping helped. :)

merged. thanks for the catch!

merged. thanks for the catch!


Create BleakScanner object on mount

This should fix the error on macOS that let the application fail to start.

Codecov Report

Merging #27 (b8d8211) into main (064d95a) will not change coverage.
The diff coverage is 0.00%.

@@           Coverage Diff           @@
##             main      #27   +/-   ##
=======================================
  Coverage   33.33%   33.33%
=======================================
  Files           6        6
  Lines         303      303
  Branches       54       54
=======================================
  Hits          101      101
  Misses        202      202

Impacted Files
Coverage Δ

src/humble_explorer/app.py
0.00% <0.00%> (ø)

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.


Add support for Verilator as a diagnostic backend in Veridian

Please refer to my feature request at #175.
The following changes are made:

feat: add verilator to diagnostic backend options
feat: display precise warning type info prepending to the lint message, e.g. "Warning-ASSIGNIN: <warning details>"
chore: patch the lexical-core repository as an ad-hoc way to bypass the build issue on latest rustc toolchain

Nice work, this looks really good! The patched version of lexical-core is an interesting idea as well. I attempted a full dep upgrade for #174 but the parser tests ended up being too brittle to get passing.
A few requirements for this to be merged:

passing CI
there needs to be a test added for verilator (you'll need to install verilator in ci.yml)
the readme needs to be updated to document the new config options

I realized that adding a "-Wno-context" arg to Verilator would make the get_diagnostic pass faster. Shall we default this Verilator arg (i.e. "hardcode" it) inside Veridian?

That's a good idea, I was wondering if it had an option to made the output more machine-readable

Any update on this? I would like to fix the blockers.

@hakan-demirli sorry for the delayed response. I don't believe that there are any blockers apart from rebasing the changes onto master and testing which I've created a new PR to complete.

PR merged in #188


Bookshelf Format Support

Thanks for open sourcing this guys! Really helpful work.
Can someone help me get moving with the bookshelf format of the DAC2012 superblue benchmarks?
https://github.com/abk-openroad/RePlAce/commit/c02698e016144d806f59ed833a59cddd94515a07
It looks like support was removed for these benchmarks and I'd love to play around with the routability driven placement portion of this work.

Hi ArEsKay3,
You can find the RePlAce that supporting bookshelf on the following link:
https://github.com/abk-openroad/RePlAce/tree/1.1.0
https://github.com/abk-openroad/RePlAce/releases/tag/1.1.0
and this is the last version that supporting bookshelf.
(This version contains DAC2012 benchmark as an example run.)
We choose not to support bookshelf anymore because academic format(bookshelf) has lots of limitations in the real world placement. As you know, Bookshelf format can't provide information like macro-HALO, rectilinear DIEAREA, fragmented-ROW shape, irregular metal layer pitch, PDN metal, and PDN location, etc...
But, commercial format (e.g. LEF/DEF) can already handle these limitations. I'm still trying to enable these things, but I've faced with huge brittleness of RePlAce because all of the RePlAces' structures are based on the simple, research-oriented format (bookshelf).
Hence, We've concluded that we'll not support bookshelf anymore.
I hope this answer could help you.
Thanks,
-- mgwoo

Thanks mgwoo!
I've been able to build and run the test/run.sh at this tag, but I get the below error when running.
./execute_bookshelf.py superblue19
ERROR: RouteInst failed to get LAYER information from LEF
Do you know what I might be missing?

Oops, Sorry about this.
Could you try again with the previous version? (e.g. 1.0.0 or 1.0.1 or initial commit?)
I think that should be fine for bookshelf formats. Somehow, I'll modify the description on 1.1.0.

Thanks, I'll give that a shot.
So none of the bookshelf formats will work with your timing driven features? Or do they exist at 1.0.1? Just curious to look at that too.
Which are the benchmarks you are using which use lef/def in case I wanted to look at those instead?

The bookshelf format doesn't have any timing information, so timing-driven placement in bookshelf format is impossible. You should have *.lef, *.def, *.lib, *.sdc, and *.v to execute Timing-Driven Placement.
(Timing-info is on *.lib and *.sdc)
To check the timing-driven engine, I already updated one benchmark (wb_dma_top) in the following link:
https://github.com/abk-openroad/RePlAce/tree/master/test/a2a_wb_dma_top

Oh, ok. I hadn't even looked at that yet, but that makes sense (wrt timing and bookshelf files).
I can get 1.0.0 to build but run on the ICCAD benchmarks. I had to link my bookshelf dir to src/SB_orig and am still getting errors related to a convert1.tcl file.
INFO:  Temp. placement solution for Global Router has been written at
       ../output/etc/superblue19/experiment4/router/tier0/inflarion_iter0/superblue19.pl

sh: 1: convert1.tcl: not found
ERROR: ERROR: Cannot open: ../output/etc/superblue19/experiment4/router/tier0/inflarion_iter0/superblue19.est file

(the below is FYI if anyone else stumbles on this)
I can't get 1.0.1 to build (there seems to be a problem with 'char const *' or 'const char *' in the verilog-parser module at that tag, maybe related to https://github.com/abk-openroad/RePlAce/issues/17#issuecomment-449868976 ).
g++ -g -gstrict-dwarf -gdwarf-2 -m64 -O3 -fPIC -fno-strict-aliasing -fexceptions -DIL_STD -Wno-ctor-dtor-privacy -fno-permissive verilog_ast.o verilog_ast_common.o verilog_ast_mem.o verilog_ast_util.o verilog_parser.tab.o verilog_parser_wrapper.o verilog_preprocessor.o verilog_scanner.o verilog_writer.o main.o -o parser -O3 -fPIC -g -ggdb -fno-permissive -static-libstdc++
verilog_parser_wrapper.o: In function `verilog::verilog_parse_string(char*, int)':
/opt/RePlAce/module/verilog-parser/src/verilog_parser_wrapper.c:49: undefined reference to `yy_scan_bytes(char const*, int)'

And in order to get 1.1.0 to build I had to do the following.
# Fix for locating tcl.h and linking libtcl8.6
# (the first part might be because I have 8.6 instead of 8.5, or because I'm on Ubuntu16, idk)
 sed -i 's!tcl.h!tcl/tcl.h!g' src/timingSta.cpp
 sed -i 's!tcl.h!tcl/tcl.h!g' src/timing.h
 sed -i 's!tcl.h!tcl/tcl.h!g' module/OpenSTA/util/Report.hh
 sed -i 's!ltcl8.5!ltcl8.6!g' src/Makefile

# Fix .jpg issues (the second line is a bit of a hack to find the proper linker line in the makefile)
# This might be because I didn't use the scripts in prerequisites directory,
# I just installed everything manually
 gawk -i inplace '/CImg.h/ { print "#define cimg_use_jpeg"; print; next}1' src/plot.cpp
 sed -i 's!llef !llef -ljpeg !g' src/Makefile```

I think you don't have to compile previous versions.
I uploaded a compiled binary on the release section.
I think you found the correct path in 1.0.0.
Could you try with the attached zip file? I hope this file contains tcl files that you're looking for.
tcls.zip
(I found these from a folder that had been created a long time ago.)
For issues in 1.0.1 and 1.1.0, the current RePlAce doesn't have these problems anymore.
(I've removed Verilog-parser dependency, and RePlAce is compiled on CMake now.)

I do if I want to play around with the code! :)
The attached zip file solved my problem and I'm able to run global route now on bookshelf designs!
I'm aware these issues are fixed now, just wanted to post in case anyone wants to go back to the bookshelf benchmarks like I did.
Thanks so much for the quick and helpful replies, I'm all set for now.

ArEsKay3


GDScript does not update cached singleton references when GDExtension is reloaded

Godot version
v4.2.rc.mono.custom_build [ad72de508]
System information
Windows 10
Issue description
As I pointed out several times earlier in #80284, the references to singletons in GDScript are still not updated after the GDExtension reload.
https://github.com/godotengine/godot/assets/7782218/f90052a5-0de2-4310-8235-f0b9e2f74b3a
Singletons themselves are updated and work correctly, but references to these singletons are not updated in @tool scripts. That is, Engine.get_singleton returns the actual working reference, but using the singleton directly through its name causes errors.
Steps to reproduce

Clone 4.2.reload_singleton branch from the MRP repository https://github.com/DmitriySalnikov/gde_test_cases/tree/4.2.reload_singleton
Build as usual
Open the project from the project/ folder
Add one character to the source code and rebuild
Focus on the editor to reload extension
Watch for error spam when calling by singleton name

Minimal reproduction project
https://github.com/DmitriySalnikov/gde_test_cases/tree/4.2.reload_singleton

Thanks for creating this issue!
I'm still not sure how to fix this - I think we'll need some help from the GDScript team to figure out if/how to refresh those references.


Allow Code Lens features to be configured at a more granular level

https://ruby-dx.slack.com/archives/C0515KVRNE4/p1690113893796309
e.g. allow the Gemfile Code Lens to be disabled independently from the test running ones.
We would still want to have a single Code Lens request, but adjusted to accept a configuration option.
A corresponding change will be needed for vscode-ruby-lsp.
We may also need to to consider how to 'migrate' users to the new configuration.

Hi there! 🙂
I would have been really interested in this feature. Being able to disable the Gemfile Code Lens would be 👌
Cheers ❤

@snutij sorry about the delay. To support this we will need to start receiving inlay hint configurations from the initialize options, similar to what we do for formatter.
We'd need to store the configuration for inlay hints in the Store class and then pass it to inlay hint here.
I think we can define the options structure to be like this
{
  inlayHint: {
    gemLinks: false,
    implicitRescue: true,
    implicitHashValue: false,
  }
}

I'd start with only the rescue hint enabled by default since it seems this feature is quite controversial. After the server supports the new config, then we need to change the extension to surface this in VS Code.
We will need a new setting using an object type, where each property is the name of the hint with a boolean value (to match the server). Then we need to read the configured hints and send them to the server as part of the initialization options.


Ressource not found when trying to create a card registration

Hi,
I'm trying to register a new card with this code
`private function mangopayCardRegistration() {
try {
        $obj_cardregister = new MangoPay\CardRegistration();
        $obj_cardregister->UserId = $this->buyer_mangopay_userid;  //required
        $obj_cardregister->Currency = Configuration::get('MANGOPAY_CURRENCY'); //required
        $obj_cardregister->CardType = 'CB_VISA_MASTERCARD';
        echo 'begin';
        var_dump($this->obj_api->CardRegistrations->Create($obj_cardregister));
        echo 'end';
        exit;
    } catch (Exception $e) {
        die($e->getMessage());
    }
}`

But i got this error in sandbox mode
Not found. The ressource does not exist
Thanks.

Are you sure the user is defined? However, I noticed you can get way more information from Mangopay errors. You should try var_dump instead.

Thanks @iammichiel  for your response,
With
var_dump($obj_cardregister);
it return this
object(MangoPay\CardRegistration)#418 (13) { ["UserId"]=> string(9) "221744622" ["AccessKey"]=> NULL ["PreregistrationData"]=> NULL ["CardRegistrationURL"]=> NULL ["CardId"]=> NULL ["RegistrationData"]=> NULL ["ResultCode"]=> NULL ["Currency"]=> string(3) "EUR" ["Status"]=> NULL ["Id"]=> NULL ["Tag"]=> NULL ["CreationDate"]=> NULL ["CardType"]=> string(18) "CB_VISA_MASTERCARD" }
When using the Production mode
I got this error
`\MangoPay\ResponseException: Code: 405
Message: Method not allowed. The requested resource does not support http method 'GET'.
Details: MangoPay\Error Object ( [Message] => The requested resource does not support http method 'GET'. [Errors] => )`
I don't know how it uses GET request, i didn't use it.
PS: i'm using Prestashop

Any help?
up!

Hi there @tarekfellah!
I can't imagine why there would be a GET request from your code, it seems like you have made the call correctly.
Could you post the full URL and any other HTTP details (Headers, Request/Response Body etc.) that you can? Hopefully we can then figure it out.
Thanks!

Hi @tarekfellah, could you provide @paulhristea extra informations ?

Sorry for the delay,
The website is https://www.thefullroom.com and the payment page https://www.thefullroom.com/modules/mangopayprestashop/payment.php,
Sorry i don't  know how to get HTTP details (Headers, Request/Response Body etc.), it's not me that created the module.
Thanks.

@tarekfellah
Sorry, I do not see you're using Prestashop module for Mangopay !
We do not provide support for this module, because it's not a module we own.
Please contact directly its developer for further informations and help !
Mickaël


Tasks in a callout under a header in the same callout, when queried with a group by clause on the header do not get grouped and instead go under "(No Heading)" or the last declared heading outside the callout

Please check that this issue hasn't been reported before.

[X] I searched previous Bug Reports didn't find any similar reports.

Expected Behavior
When using the group by in a query, the header should be displayed in the query view if the header is in a callout with the tasks.
Current behaviour
When you query a task that is in a callout and group by header the resulting display shows the header as No Heading
Steps to reproduce

Create a note called "Untitled" at the root of the vault
Paste the below example and notice that the header does not appear in the query and instead appears as (No Heading) rather than Header as in the callout

```dataviewjs
const query = `
not done
path includes ${dv.current().file.path}
# you can add any number of extra Tasks instructions, for example:
group by heading
`;

dv.paragraph('```tasks\n' + query + '\n```');
```

```tasks
not done
path includes Untitled
group by heading
```

> [!todo]- Title
>## Header
>- [ ] Task 1
> 	- [ ] Sub task
>- [ ] Task 2

Which Operating Systems are you using?

[ ] Android
[ ] iPhone/iPad
[X] Linux
[ ] macOS
[X] Windows

Obsidian Version
1.3.4
Tasks Plugin Version
3.8.0
Checks

[X] I have tried it with all other plugins disabled and the error still occurs

Possible solution
Potentially use the title of the callout rather than the header in the callout? This could cause issues with multiple headers in a single callout but may be easier to implement? Not sure, it would work for my use case but perhaps not for others.
Update -
After discussing with maintainers there appears to be discrepancy with how obsidian itself is interpreting headers.

In the Outline view headers are only considered headers when outside of a callout
In the reading view headers appear to be considered and rendered as headers as headers both inside and outside of a call

See here for screenshot of this behavior
https://github.com/obsidian-tasks-group/obsidian-tasks/issues/1989#issuecomment-1568907333

You can probably ignore the dataviewjs query as the much simpler example does not work, happy to provide it as well below for completeness.

Create a note called "Untitled" at the root of the vault
Paste the below example and notice that the header does not appear in the query and instead appears as (No Heading) rather than Header as in the callout

```dataviewjs
const query = `
not done
path includes ${dv.current().file.path}
# you can add any number of extra Tasks instructions, for example:
group by heading
`;

dv.paragraph('```tasks\n' + query + '\n```');
```

```tasks
not done
path includes Untitled
group by heading
```

> [!todo]- Title
>## Header
>- [ ] Task 1
> 	- [ ] Sub task
>- [ ] Task 2

@declan-morris I tried this on my side and I confirm the behavior, however this seems to be aligned with what Obsidian and markdown considers a heading - something that starts with # and not >#.
You may see on my screenshot that the second heading doesn't appear in the file outline on the right pane of Obsidian.

Thank you both for the replies...
Firstly, @declan-morris please could you update the summary so that it correctly reflects the information discovered?
It's currently rather non-specific - it would help if it said what was in the call-out - and was more specific than 'does not work'.
Then, let's leave it open for now, as I may write it up in the docs as a known limitation, and this being open will remind me to do so.
It's certainly true that callouts are a corner-case in terms of how Obsidian parses them, compared to simple markdown. They have taken up quite a lot of support time - hence my inclination to just document the limitation.

@declan-morris oh, cool, I actually don't use the reader view, so thanks for this insight. I tried >## header in https://markdownlivepreview.com and it recognises the header correctly... So I agree that there is an issue somewhere. Maybe the way to go is to open an issue on the Obsidian forum and link it here. When Obsidian team decides what to consider a header or not, Tasks plugin shall follow that.
But the final decision is up to @claremacrae. I'm just proposing ideas =)

Maybe the way to go is to open an issue on the Obsidian forum and link it here. When Obsidian team decides what to consider a header or not, Tasks plugin shall follow that.

If you do go ahead and submit an issue of the forum, please do add a link to it here...

Thanks @claremacrae and @ilandikov.
I've updated the description, tried to make it specific but not too verbose and updated the initial post with a bit more detail.
I've checked the forums and I found this  which seems to indicate the same as what we've found here. Happy to create another post if you think this warrants it though.

Thanks - I've tweaked it to make it clear that the heading in the callout is ignored...
One thing you might like to clarify...
It says that they go under '(No Heading)' - but that may be because your sample file did not have any earlier heading.
What happens if you put an ordinary (non-callout) heading before your callout... my guess, which I believe was confirmed by ilandikov's example earlier, is that the previous ordinary heading will be applied...
If that's true, a more accurate description would be that the 'previous ordinary heading is used' - in which case, '(No Heading)' is just the ordinary behaviour when there was no earlier heading...

Yeah you're right! The last declared heading outside of the callout does appear to be used. I thought (No Heading) would be useful in the title as that's what I was searching for existing issues with.

Thanks!


[WFLY-10939] taglib-location pointing to jar fails to deploy

https://issues.jboss.org/browse/WFLY-10939

Stopping CI for this one as it is not urgent and all the slaves are busy, and I need to test other things


Relocate functions exporting data

Pull Request doc
Purpose
Relocate functions taking care of exporting data to files or other objects
What the code is doing
New modules are created:

powersimdata.export.export_scenario_inputs enclosing the functions that create the case mat file and the CSVs of the transformed profiles
powersimdata.export.export_to_pypsa enclosing the function that translate a Grid or a Scenario object to PyPSA Network object
Removed the logic around the import of the pypsa package (check for it in the test though to avoid failure) since the export_to_pypsa function is now in its own module, an ImportError won't affect  import of any other function anymore.

Testing
Run existing unit tests
Where to look
In the new PowerSimData/powersimdata/export/ directory
Usage Example/Visuals
N/A
Time estimate
10min

Do we want to delete export_data.py (since I think everything was relocated)?

Do we want to delete export_data.py (since I think everything was relocated)?

done

I just realize that the export_to_pypsa hass been modified in #608. How should we proceed?


Start Arabic Translation for K8S

Start a new PR for the Arabic translation, because there is no progress for the previous two PRs, I contact with the owners of PR, some of them didn't respond and one of them contacted me, and he told me he is not interested anymore. So I hope this PR becomes successful and get merged, can't wait to start contributing to it ASAP.

Hey @remyleone, This is my new PR, take a look and support it

"/verify-owners"

"/verify-owners"

/verify-owners

I don't speak Arabic so I can't review the content maybe @mohamedkhaledhafez @Benwa-98 could provide a review and help with the requirements linked by @sftim

/verify-owners

@mohamedkhaledhafez @Benwa-98 need ur review guys!

@mohamedkhaledhafez in https://github.com/kubernetes/website/pull/19758#pullrequestreview-378987785 did you mean: /lgtm
?

REQUEST: New membership for (me) @mohamedsgap, issue ref https://github.com/kubernetes/org/issues/1726

/approve

/verify-owners

/approve

/assign @tengqm

/assign @mohamedsgap

/unassign @tengqm

@mohamedkhaledhafez Could you open an issue similar to this one: https://github.com/kubernetes/org/issues/1726

-/lgtm

/approve

@sftim I've translated the required pages of K8S, I need my PR to be merged to translate more on the top of it.

@mohamedsgap can I check that you are the author of all the changes in this PR
If these are collaborations, can you revise the commits to add Co-Authored-By information and confirm that those collaborators have signed the CLA?

@mohamedsgap, would you like any help with this pull request?

If you like, I can start a new branch for this work (related to https://github.com/kubernetes/website/pull/19758#pullrequestreview-378790725) so that you can make progress without having to get everything right in the first pull request.

Hi @sftim, I think this PR can be merged now, I don't know what's wrong with this one, but you can merge it, and we can start a new one to improve our progress on the merged PR.

@mohamedsgap you need to make sure that this pull request meets all the requirements for a new localization, including:

two contributors, members of the Kubernetes organisation, to act as owners for the localization
minimum content translated
continuous integration checks are passing

Have a look at the build failure as this might well give you some hints about how to fix the technical issues. You can view your changes locally to get confidence that the changes work OK.
I recommend that if you want to move this forward, we set up a new branch based on v1.18 so that you and other contributors (there needs to be more than one!) can get this ready to merge into master. You can reuse the translation work from this pull request, you do not need to discard the work so far. Would you be willing to take that approach?

Hey @sftim, I think we should move forward with a new branch, but how to avoid reworking  all changes and updates that we have done on this one!

I think we should move forward with a new branch, but how to avoid reworking all changes and updates that we have done on this one!
Do I need to make a new pull request with a new branch?

OK. I will see if I can get time to make a new branch and then ask you and other contributors to make pull requests. There's a few things I can do to make that easier (eg: I can suggest little bits of shell script that you can run if you're happy with them).

@mohamedsgap I have made a new branch: dev-1.18-ar.1
Here's how I think you could move forward, using Git locally to revise, resolve conflicts and squash:
# This assumes you have a Git remote for k/website named "upstream"
# and that the remote for your fork of that repo is called "origin"
command git checkout master
command git fetch upstream dev-1.18-ar.1
command git fetch upstream pull/16894/head # fetch previous work
command git fetch upstream pull/16942/head # fetch previous work
command git checkout -b k8s-arabic-redone upstream/dev-1.18-ar.1
command git push origin k8s-arabic-redone:k8s-arabic-redone
# This first cherry pick will need manual conflict resolution
command git cherry-pick c1bd7aa282618d7dd8d9c2ba7d3a4d07212dd083 # a commit from PR #16894
# MANUALLY fix the conflict by editing" README.md", then
command git add README.md
command git cherry-pick --continue # Finish first cherry pick
command git cherry-pick 650d58a3b8f345b79c4d385ec5e7e6114a14d38a # a commit from PR #16894
command git checkout 9e0835079629baa146a74bb65cd14f986437e94a -- i18n/ar.toml # fetch revised content
command git add i18n/ar.toml
command git commit # Apply fixes originating from commit 9e08350
# The following cherry pick will need manual conflict resolution (because Ukrainian localization arrived)
command git cherry-pick effb3656e250265b6c426667ae2ae51115c69876 # a commit from this PR
# MANUALLY fix the conflict by editing "config.toml", then
command git add config.toml
command git cherry-pick --continue # Finish cherry pick
command git cherry-pick cdf290e59f5aaa4b28a2ae98f30d710fe7fbc414 # a commit from this PR
# Fix uk / ar mixup
mkdir -p content/ar/community/static
mv content/uk/community/static/{README,cncf-code-of-conduct}.md content/ar/community/static
command git add content/{ar,uk}/community/static/ # Stage changes
command git commit --amend --no-edit # commit fixup
command git cherry-pick c398d25d7e48aa233734218f53ae92be4c9321a5 # a commit from this PR
command git cherry-pick 99ffd3b8e5c8ba89947ccdc98ed73730fa2fb09d # a commit from this PR
command git cherry-pick 73420b1b2932451d956222039d7c880329444c1e  # a commit from this PR
command git cherry-pick 6846c73c00d2ae6ddd32e4de1ddb8699dbd0226f # a commit from this PR
command git cherry-pick 5a9a2f41ce509cb00a5baf8e4ad0dee6a33515bf # a commit from this PR
command git cherry-pick 19990d2ef5f0b35b4de9770d35b6c269c247b640 # a commit from this PR
command git reset HEAD~1 # prepare to squash a fixup into the original commit
command git add content/ar/docs/tutorials/hello-minikube.md
command git commit --amend --reset-author --no-edit # do the squash
command git push origin k8s-arabic-redone:k8s-arabic-redone

If all of that went OK, you can now visit https://github.com/kubernetes/website/compare/dev-1.18-ar.1...mohamedsgap :k8s-arabic-redone?expand=1 to finish making a pull request based on that work.
to start again if you need to:
git reset --hard HEAD # this DISCARDS your work in progress
git checkout master
git branch -D initial-arabic-content
git branch -D origin/initial-arabic-content
git branch -d -r upstream/dev-1.18-ar.1

Nice, @sftim , I gonna work on it :+1:

I'm on Slack - see http://slack.k8s.io/ - in #sig-docs if you'd like advice @mohamedsgap

I think PR #20343 supersedes this

@sftim so we should close this one!

/close
(you can close your own PR BTW)

/language ar


LemnaTec: Added Several Vegetation Indices

I added several vegetation indices to the script.
Some require wavelengths which may not be available. I was not able to test the code so please have a look.
Christopher Schardt (LemnaTec)

Chris -
Thank you for your contributions but this code is deprecated and had been replaced by the extractors-hyperspectral repository
Could you please submit your pull request there? It will likely two some updates.
Might be a good idea for you to coordinate directly with Henry @hmb1
@hmb1 could you please remove all deprecated scripts from those repo? Can you give Chris access to the VM you are using so that he can test  (and write tests for) his code?

@hmb1 how we can iterate through sets of indices in NCO?
tnx

HI Chris,
I will manually merge your changes as I have an updated version I am working on a later version that has not been formally pushed.. I will put the latest version on the VM machine ( the machine is <IP_ADDRESS> )
Ask @craig-willis for  alogin to the machine
...Henry

Solmaz,
can you post the algorithms /  formulas you want implemented please
And I'll see what I can do
...Henry

for example: The SG is the mean of reflectance across the 500 nm to 600 nm

HI Somaz,
below is a code snippet that calculates the pixel mean across R500-R600
It is on ROGER at location     /home/butowskh/rgr/SG.nco  along with an example run SG.nc
please let me know if this is what you want.
`   // example of iterating over wavelengths
srt=min_coords(wavelength,5.0e-7);
end=min_coords(wavelength,6.0e-7);
// double check ranges
print(wavelength(srt));
print(wavelength(end));
if( fabs(wavelength(srt)-5.0e-7) > 0.01e-7d )
{
print("wavelength R500 not in wavelength coord\n");
exit(1);
}
if( fabs(wavelength(end)-6.0e-7) > 0.01e-7d )
{
print("wavelength R600 not in wavelength coord\n");
exit(1);
}
idx=0;
SG=rfl_img(srt,:,:);
for(idx=srt+1;idx<=end;idx++)
SG+= rfl_img(idx,:,:);
// calculate mean
SG=SG / (end-srt+1);
`

@ac-gl-chris
"DWSI-1","DWSI-2","DWSI-3","DWSI-4","DWSI-5"
The above vars will have be renamed as '-' means subtract
@hmb1

Hi, sorry I was off work.
@hmb1, so from what I understood, Henry you took the code from the pull request and done some changes on a local repo? Do you need any contribution from me?
However, I don't know how to run the nco script at all. So without someone showing me accessing the VM would make no sense I guess :)
Chris

Chris -- please email me at<EMAIL_ADDRESS>for access.

HI  Christoper,
I added your indices (phew) to the main ncap2 script please review it on the pull request
https://github.com/terraref/extractors-hyperspectral/pull/20
...Henry

Hi @ac-gl-chris ,
the ncap2 script is now in good shape. Please pull master branch from []https://github.com/terraref/extractors-hyperspectral/(url)
When you have a moment  Ill gibe you a quick tutorial on how to run ncap2 script and the most essential commands in NCO
...Henry

@ac-gl-chris
please add the meta-data as you wish
...Henry

@hmb1 Craig sent me a short description on how to access the workbench and use the docker environment to call the hyperspectral_workflow.sh
Going to try it...
Chris

HI @ac-gl-chris
When you have a moment ill give you a quick intro to NCO and cnap2
...HEnry

@hmb1 With the help of Craig I was able to run the hyperspectral_workflow. But I don't know how to interpret the output. What is the output?
I'm off work for weekend now, maybe you can give me a quick overview how the system is actually working, never heard of nco or ncap :)
Chris

HI Chris
let me know when your free next week.
If can read up a little on netCDF files that would help
...Henry
On 07/04/17 15:07, ac-gl-chris wrote:

@hmb1 https://github.com/hmb1 With the help of Craig I was able to
run the hyperspectral_workflow. But I don't know how to interpret the
output. What is the output?
I'm off work for weekend now, maybe you can give me a quick overview
how the system is actually working, never heard of nco or ncap :)
Chris
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/terraref/computing-pipeline/pull/294#issuecomment-292546060,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AGIX8MaM7oNEirxtF3vteCyioXx9_TvEks5rtkMVgaJpZM4Mj0iu.

@ac-gl-chris you can also

open the file in something like Panoply
take a look at (and extend) the tutorials https://github.com/terraref/tutorials/blob/master/sensors/04-netCDF-tutorial.ipynb

@hmb1 When does it suit you? I would prefer early in the morning at your side. Maybe we can use Skype.

Hi Chris,
you are up very early and i am up quite late
would 10.00 GMT tomorrow suit ?
my Skype handle is henry.butowsky
...Henry

Hi Henry,
would suit me yes. But I'm also available from 06.00 GMT so we could do it even earlier.
Going to add you in Skype then
Chris

Replaced by https://github.com/terraref/extractors-hyperspectral/pull/20


All the social media icons are now visible in smaller devices on the login/signup page

Description
Now all the social media icons are visible in smaller devices also on the login/signup page
Fixes:  #409

Type of change

[x] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)

Checklist:

[x] My code follows the style guidelines of this project
[x] I have performed a self-review of my own code
[x] I have commented my code, particularly in hard-to-understand areas
[x] I have made corresponding changes to the documentation
[x] My changes generate no new warnings

ATTACH SCREEN-SHOTS / DEPLOYMENT LINK

@sk66641 in the issue you had given level 2 label.


[WIP]detect flaky tests

@testcafe-build-bot retest

So, do we have enough statistics to start fixing unstable tests?

The situation with tests became better after some manipulations with Travis by @AndreyBelym and statistics is not actual anymore, so I'll close this PR for now.


32-bit openj9 installation auto-discovered as "large heap"

I have a x64 Windows with installed 32-bit AdoptOpenJDK's "OpenJDK8U-jdk_x86-32_windows_openj9_8u275b01_openj9-0.23.0.msi". That installation was auto-discovered as "large heap". As it's 32-bit, I think it really can only be "normal heap". So, I assumе there is a bug somewhere in the auto-discovery of the heap size.
The incorrect heap size leads to an error when checking for updates for this installation (the checker doesn't find any distribution with the requested parameters). To workaround this, I manually override the auto-discovered heap size to "normal".

The app version on the affected machine currently is 2.0.2, but it was 2.0.1 when I noticed this problem for the first time.
Interestingly, the app auto-discovered the previous 32-bit JDK 8 installation on the same machine (AdoptOpenJDK's "OpenJDK8U-jdk_x86-32_windows_openj9_8u242b08_openj9-0.18.1.msi") correctly as "normal heap". And successfully updated it to the current version!

Hi,
Please confirm that your C:\Program Files (x86)\AdoptOpenJDK\jdk-8.0.275.1-openj9\release file contains
HEAP_SIZE="Large"
while it should be normal, so this is an bug in AdoptOpenJDK itself, and not my updater.My updater just ultimately trusts that metadata file, if it's available (without metadata, detecting heap size for openj9 is a bit tricky & cumbersome...).
I strongly suggest that you open a ticket in https://github.com/AdoptOpenJDK/openjdk-support/issues (with the data from both your and my posts), because this bug will likely appear in future AdoptOpenJDK/openj9 releases as well...
P.S. While investigating, I also noticed a minor POI in my fallback code (it works when there is no release file).
It was not the cause of this problem, but I will investigate it (and fix if there is a bug there) in the next version. Thank you for your report!
P.P.S. As for OpenJDK8U-jdk_x86-32_windows_openj9_8u242b08_openj9-0.18.1.msi - its release file does not contain HEAP_SIZE, so there just my fallback code was working - and it detected "normal heap" correctly.

Please confirm that your C:\Program Files (x86)\AdoptOpenJDK\jdk-8.0.275.1-openj9\release file contains
HEAP_SIZE="Large"

Confirmed.

I strongly suggest that you open a ticket in https://github.com/AdoptOpenJDK/openjdk-support/issues (with reference to this issue), because this bug will likely appear in future AdoptOpenJDK/openj9 releases as well, if not fixed...

You're much, much faster than me!

The issue AdoptOpenJDK/openjdk-build/issues/2412 was closed some time ago and the next available release of the problem installation (8.0.292+1) was detected today correctly as "normal heap". The problem is successfully fixed!


storage: fix watchable_store notify to hash-lookup once

We should just assign events and ok at first, and check the
boolean value, instead of looking up the map twice.
/cc @xiang90 @heyitsanthony
Thanks,

lgtm

Thanks!


[BUG] Vercel: binary with name "go" not found

Describe the bug
Hinode Docs ( @ https://github.com/gethinode/docs ) 55b519f (17 July 2023) was building fine on Vercel.
Building the latest e71b4e7 (22 July 2023) throws the following error on Vercel:
Error: failed to load modules: failed to download modules: binary with name "go" not found
Error: Command "npm run build" exited with 1
To reproduce
Build e71b4e7 (22 July 2023) on Vercel.
Expected behavior
Successful build instead of failed build.
Log file
[05:06:50.415] Running build in San Francisco, USA (West) – sfo1
[05:06:50.474] Skipping build cache, deployment was triggered without cache.
[05:06:56.329] Cloning completed: 5.860s
[05:06:56.478] Running "vercel build"
[05:06:56.954] Vercel CLI 31.0.4
[05:06:57.481] Installing dependencies...
[05:07:02.814]
[05:07:02.815] added 532 packages in 5s
[05:07:02.815]
[05:07:02.815] 178 packages are looking for funding
[05:07:02.815]   run `npm fund` for details
[05:07:02.833] Detected `package-lock.json` generated by npm 7+...
[05:07:02.833] Running "npm run build"
[05:07:03.082]
[05:07:03.082] ><EMAIL_ADDRESS>prebuild
[05:07:03.082] > npm run clean
[05:07:03.082]
[05:07:03.319]
[05:07:03.319] ><EMAIL_ADDRESS>clean
[05:07:03.320] > rimraf public resources
[05:07:03.320]
[05:07:03.379]
[05:07:03.379] ><EMAIL_ADDRESS>build
[05:07:03.379] > npm run -s mod:update && hugo --gc --minify
[05:07:03.379]
[05:07:03.870] Update module in /vercel/path0
[05:07:04.419] Error: failed to load modules: failed to download modules: binary with name "go" not found
[05:07:04.450] Error: Command "npm run build" exited with 1
``

Could you check if the npm scripts in your own  repo’s package.json are in sync with those of the main Hinode repo? I added several mod statements to add Hugo module compatibility. On 23 Jul 2023, at 04:12, Ervins Strauhmanis @.> wrote:
Describe the bug
Hinode Docs ( @ https://github.com/gethinode/docs ) 55b519f (17 July 2023) was building fine on Vercel.
Building of the latest e71b4e7 (22 July 2023) throws the following error on Vercel:
Error: failed to load modules: failed to download modules: binary with name "go" not found
Error: Command "npm run build" exited with 1
To reproduce
Build e71b4e7 (22 July 2023) on Vercel.
Expected behavior
Successful build instead of failed build.
Log file
[05:06:50.415] Running build in San Francisco, USA (West) – sfo1
[05:06:50.474] Skipping build cache, deployment was triggered without cache.
[05:06:56.329] Cloning completed: 5.860s
[05:06:56.478] Running "vercel build"
[05:06:56.954] Vercel CLI 31.0.4
[05:06:57.481] Installing dependencies...
[05:07:02.814]
[05:07:02.815] added 532 packages in 5s
[05:07:02.815]
[05:07:02.815] 178 packages are looking for funding
[05:07:02.815]   run npm fund for details
[05:07:02.833] Detected package-lock.json generated by npm 7+...
[05:07:02.833] Running "npm run build"
[05:07:03.082]
[05:07:03.082] > @@. prebuild
[05:07:03.082] > npm run clean
[05:07:03.082]
[05:07:03.319]
[05:07:03.319] > @@.*** clean
[05:07:03.320] > rimraf public resources
[05:07:03.320]
[05:07:03.379]
[05:07:03.379] > @@.*** build
[05:07:03.379] > npm run -s mod:update && hugo --gc --minify
[05:07:03.379]
[05:07:03.870] Update module in /vercel/path0
[05:07:04.419] Error: failed to load modules: failed to download modules: binary with name "go" not found
[05:07:04.450] Error: Command "npm run build" exited with 1
``
—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you are subscribed to this thread.Message ID: @.***>

I found this thread on GH too - apparently the Go binary is not included on the Vercel's runner by default: https://github.com/orgs/vercel/discussions/38

Could you check if the npm scripts in your own  repo’s package.json are in sync with those of the main Hinode repo? I added several mod statements to add Hugo module compatibility.

Tried replacing package-lock.json + package.json from Hinode v0.16.3 — result was the same:
[18:46:09.519] Running build in San Francisco, USA (West) – sfo1
[18:46:09.579] Skipping build cache, deployment was triggered without cache.
[18:46:14.861] Cloning completed: 5.287s
[18:46:15.080] Running "vercel build"
[18:46:15.560] Vercel CLI 31.0.4
[18:46:16.091] Installing dependencies...
[18:46:22.247]
[18:46:22.247] added 550 packages in 6s
[18:46:22.247]
[18:46:22.247] 183 packages are looking for funding
[18:46:22.247]   run npm fund for details
[18:46:22.266] Detected package-lock.json generated by npm 7+...
[18:46:22.266] Running "npm run build"
[18:46:22.507]
[18:46:22.508] ><EMAIL_ADDRESS>prebuild
[18:46:22.508] > npm run clean
[18:46:22.508]
[18:46:22.746]
[18:46:22.746] ><EMAIL_ADDRESS>clean
[18:46:22.746] > rimraf public resources
[18:46:22.746]
[18:46:22.816]
[18:46:22.816] ><EMAIL_ADDRESS>build
[18:46:22.817] > hugo --gc --minify
[18:46:22.817]
[18:46:23.057] Total in 2 ms
[18:46:23.057] Error: failed to load modules: failed to download modules: binary with name "go" not found
[18:46:23.077] Error: Command "npm run build" exited with 1

I found this thread on GH too - apparently the Go binary is not included on the Vercel's runner by default: https://github.com/orgs/vercel/discussions/38

It seems that Go Runtime would be coming to Vercel in future — presently in beta:
https://vercel.com/docs/concepts/functions/serverless-functions/runtimes/go

The thread in https://github.com/orgs/vercel/discussions/38 mentions a workaround, does that work for you?

I tried the following build command:
amazon-linux-extras install golang1.19 && npm run build
NB: latest golang version presently is 1.19.10-1.amzn2.0.2
The output was the following:
[21:48:29.340]  71  golang1.19=latest        enabled      [ =stable ]
[21:48:29.340]  72  collectd-python3         available    [ =stable ]
[21:48:29.825]
[21:48:29.825] ><EMAIL_ADDRESS>prebuild
[21:48:29.826] > npm run clean
[21:48:29.826]
[21:48:30.322]
[21:48:30.322] ><EMAIL_ADDRESS>clean
[21:48:30.322] > rimraf public resources
[21:48:30.322]
[21:48:30.428]
[21:48:30.428] ><EMAIL_ADDRESS>build
[21:48:30.428] > hugo --gc --minify
[21:48:30.428]
[21:48:32.818] hugo: downloading modules …
[21:48:45.147] hugo: collected modules in 14329 ms
[21:48:45.150] Start building sites …
[21:48:45.150] hugo v0.115.4-dc9524521270f81d1c038ebbb200f0cfa3427cc5+extended linux/amd64 BuildDate=2023-07-20T06:49:57Z VendorInfo=gohugoio
[21:48:45.150]
[21:48:45.185] WARN  File "docs/latest" not found, skipping.
[21:51:42.285] Total in 191470 ms
[21:51:42.285] Error: error building site: "/vercel/path0/content/en/docs/latest/advanced-settings/server-headers.md:16:1": failed to render shortcode "docs": failed to process shortcode: "/tmp/hugo_cache/modules/filecache/modules/pkg/mod/github.com/gethinode/hinode@v0.16.2/layouts/shortcodes/docs.html:61:17": execute of template failed: template: shortcodes/docs.html:61:17: executing "shortcodes/docs.html" at <os.Stat>: error calling Stat: file does not exist
[21:51:42.328] Error: Command "amazon-linux-extras install golang1.19 && npm run build" exited with 1

I suppose that the error may be due to the golang not being the latest version.
Another workaround mentioned was:

Write a bash script to curl the latest releases of Hugo and download the linux variant of the binary and run it during the buildstep
Run the binary during the build

But tI am not sure how to do that one.

Have you tried the —ignoreCache flag? https://github.com/orgs/vercel/discussions/38#discussioncomment-2719295

Indeed I did that earlier — that had no effect.
However, building of the Hinode Docs e71b4e7 does succeed now — what I did, is I reverted to the package-lock.json + package.json supplied with Hinode Docs e71b4e7.
Log:
[07:16:10.003]  71  golang1.19=latest        enabled      [ =stable ]
[07:16:10.003]  72  collectd-python3         available    [ =stable ]
[07:16:10.502]
[07:16:10.502] ><EMAIL_ADDRESS>prebuild
[07:16:10.502] > npm run clean
[07:16:10.502]
[07:16:11.003]
[07:16:11.004] ><EMAIL_ADDRESS>clean
[07:16:11.004] > rimraf public resources
[07:16:11.004]
[07:16:11.094]
[07:16:11.094] ><EMAIL_ADDRESS>build
[07:16:11.094] > npm run -s mod:update && hugo --gc --minify
[07:16:11.094]
[07:16:11.992] Update module in /vercel/path0
[07:16:13.998] hugo: downloading modules …
[07:16:25.880] hugo: collected modules in 13882 ms
[07:16:26.219] go: downloading github.com/gethinode/hinode v0.16.3
[07:16:28.556] go: upgraded github.com/gethinode/hinode v0.16.2 => v0.16.3
[07:16:31.158] Start building sites …
[07:16:31.159] hugo v0.115.4-dc9524521270f81d1c038ebbb200f0cfa3427cc5+extended linux/amd64 BuildDate=2023-07-20T06:49:57Z VendorInfo=gohugoio
[07:16:31.159]
[07:16:31.190] WARN  File "docs/latest" not found, skipping.
[07:21:45.939]
[07:21:45.940]                    | EN
[07:21:45.940] -------------------+------
[07:21:45.940]   Pages            |  99
[07:21:45.940]   Paginator pages  |   2
[07:21:45.940]   Non-page files   |   0
[07:21:45.940]   Static files     | 111
[07:21:45.941]   Processed images | 558
[07:21:45.941]   Aliases          |  15
[07:21:45.941]   Sitemaps         |   1
[07:21:45.941]   Cleaned          |   0
[07:21:45.941]
[07:21:45.941] Total in 314790 ms
[07:21:46.271] Build Completed in /vercel/output [6m]
[07:21:46.592] Deploying outputs...
[07:21:56.245] Deployment completed
[07:22:02.532] Uploading build cache [24.29 MB]...
[07:22:03.229] Build cache uploaded: 696.316ms

Thank you for the help, Mark!

Great to see you got it working. I found another example of how to extend the runner: https://gist.github.com/DirtyF/4f89704ecd619c0dcd439d74115da542


refactor(common): split inventory from common

Split the inventory from the common folder to allow for adding capabilities along with the inventory.  This also solves the multiple folder issue that was being reported by the inventory file being in the common folder and directed toward an inventory service capability.

@sandersms please clone security-skip.yml and security.yml for inventory
we want CI to trigger make

@sandersms this line  needs fix
- option go_package = "github.com/opiproject/opi-api/common/v1/gen/go";
+ option go_package = "github.com/opiproject/opi-api/inventory/v1/gen/go";


feat: allow querying models owned by other users

Description
This PR aims to solve #504 to handle scenarios where a user has access to multiple models with the same name.
Juju namespaces models by username, i.e. user-1 and user-2 can both have a model called "foo". Currently the provider doesn't handle such cases properly.
This PR addresses the issue by:

Adjust the model cache to understand that multiple models with the same name but different owners can exist.
Allow a model name to be either <model-name> or <model-owner>/<model-name>. This keeps backwards compatibility with the existing provider semantics.

Consider a scenario where a user-1 creates a model and grants user-2 with admin access to that model. User-2 can now write "user-1/model-name" in their plan to reference user-1's model. This is mainly useful when you are not creating the model in your plan, just referencing one that already exists. See "Additional notes" below for the scenario where the plan uses a reference to a model rather than hardcoding strings.
The concrete changes implemented:

Move model cache into a separate package
Rework model cache to handle multiple models with the same name but different owners
Small tweak to testAccPreCheck to use sync.Once to fix potential race condition
Add test for deploying to a model owned by a different user

Fixes: #504, CSS-10769
Type of change

Logic changes in resources (the API interaction with Juju has been changed)
Bug fix (non-breaking change which fixes an issue)
Requires a documentation update

QA steps
The change allows for the following TF plan. Assuming you are the admin user on the controller,
resource "juju_model" "this" {
	name = "test"
}

resource "juju_application" "this" {
	name = "myApp"
	model = "admin/${juju_model.this.name}"
	charm {
	name = "jameinel-ubuntu-lite"
	}
	trust = true
	expose{}
}

If you have access to 2 models called test you can specify the model by switching the model owner from admin.
Additional notes
I am still looking at how best to update the documentation.
There is 1 scenario worth mentioning:

When referencing a model like juju_model.model-name.name, the model name does not contain the owner. If the Juju user has access to 2 models with this name, there will be an error returned to the user. The fix for this would be to do something like "<username>/${juju_model.this.name}" in your plan as is done in the tests.

There are two acceptance tests for the new behaviour.

A simple test that deploys an application referencing a model by a fully specified name
A more involved test that creates a new Juju user and creates a model as that user. Then grant the original user with access to the model and deploying to the model with Terraform. This test requires shelling out to the CLI. Possibly this is overdoing things and not necessary but open to opinions here.

Closing in favour of an approach where we use model UUIDs as reference with a possibility of maintaining backwards compatability.


#191 installer errors

I get this when I install #191:
cp: cannot create regular file ‘/usr/local/share/arkmanager/arkmanager-uninstall.sh’: No such file or directory
chmod: cannot access ‘/usr/local/share/arkmanager/arkmanager-uninstall.sh’: No such file or directory
sed: can't read /usr/local/share/arkmanager/arkmanager-uninstall.sh: No such file or directory
System start/stop links for /etc/init.d/arkmanager already exist.
Ark server will now start on boot, if you want to remove this feature run the following line
update-rc.d -f arkmanager remove
A previous version of ARK Server Tools was detected in your system, your old configuration was not overwritten. You may need to manually update it.
A copy of the new configuration file was included in /etc/arkmanager. Make sure to review any changes and update your config accordingly!
It seems to have trouble with installing the uninstaller?  I'm not sure.

Fixed in 195.


Version being bumped repeatedly without changes

When running versionize repeatedly without any commits being added in between (aside from the ones versionize creates with each release), it keeps bumping the version number and generating new commits, tags, etc...
I would like to see Verzionize recognizing this situation and refusing to bump the version in such a case.
Any thoughts about this?
I would be willing to make a PR for this if the author likes the idea.

I like the idea :) I guess having a command line flag to trigger enable that behavior would be best for compatibility. In some workflows it makes sense to create a new version even if no change occured.


Connection stays open permanently

There is no connection closing in the example

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

ID: b9745566-0266-330b-b99f-d5215575ae5f
Version Independent ID: 055418ac-a22d-56db-b2d5-0f31216b6e2f
Content: Use Node.js to query a database - Azure SQL Database & SQL Managed Instance
Content Source: azure-sql/database/connect-query-nodejs.md
Service: sql-database
Sub-service: connect
GitHub Login: @dzsquared
Microsoft Alias: drskwier

Solved on #8044

Thanks, @EstebanDalelR for Confirming that issue is resolved.


⚠ dev-deces.matchid.io search API has degraded performance

In da73773, dev-deces.matchid.io search API (https://dev-deces.matchid.io/deces/api/v1/search?q=pompidou) experienced degraded performance:

HTTP code: 200
Response time: 5824 ms

Resolved: dev-deces.matchid.io search API performance has improved in 31b8299 after 5 minutes.


missing "ui" folder

Hi Mor,
Thanks for your amazing work. I was trying to build the project and found that there is no UI folder (I guess this should contain some front-end code). Do you have any plan to release the full code in near future?
Thanks!
Paul

Paul,
Apologies for this and thanks for opening the issue! :pray:
The ui directory was missing by mistake and I just pushed it into the main branch.
It includes the front-end react code for the prediction view.
Please let me know if you run into any issues.
Thanks,
Mor


fix: first step logic enhancement for CreateTearsheet

Closes #5813
fixes an issue where step state was being reset when the usage of dynamic step functionality was used outside of the introStep step. the bug was introduced after implementing a fix for https://github.com/carbon-design-system/ibm-products/issues/4465 this fix respects the includeStep={false} prop to ensure the first step is set properly without needlessly updating state and resetting the create flow.
you can test this locally by checking it against both of the examples used to replicate each bug.
5813 example
4465 example

@devadula-nandan @anamikaanu96 please review when you can. ty!

Hello @davidmenendez, thank you for the fix. Can the Carbon team merge the PR and release it soon? Our product is waiting for it. Appreciate very much!


Add Silver Golem

About the PR
Adds Silver Golem, using the old sprites of the removed holoparasites, they have the same movement as the ifrit and have the psychokinesis power AKA Teleportation like the blink spell, of course i added a way to craft him but his silver core needs to be researched in epistemics in the teleportation research tech.
Media
https://user-images.githubusercontent.com/80334192/229988330-f15519cc-57d9-4563-ad16-683526fed13f.mp4
Changelog
:cl: Leander

add: Added Silver Golem.

uhh there is still some stuff in the meta.json to fill about the copyright and just iron out the tiny details but ill do it tomorrow

Very nice that there's a research-locked golem.

Works when testing locally; it seems a little fast but I guess everything it's designed to kill is faster. Merging.


docs: structure of a AsyncAPI document

Description
As part of Google Season of Docs 2023 at AsyncAPI, we're going to write in-depth explanations of the different sections of an AsyncAPI document to avoid difficulties in implementing EDAs.
For this document issue, we'll introduce the structure of a AsyncAPI document, why it is necessary and the root elements of it.
Related issue
This task is part of the GSoD Docs EPIC: https://github.com/asyncapi/website/issues/1508.
Resolves #1508

Hey @jonaslagoni , Yes. Currently I am working on my initial draft for Request/Reply Document referring to the issue here. I will be done with the draft and raising a PR for the same in couple of days. Post which, I will be working on the weekend to make the required edits and modifications based on the suggestions provided for the document in this PR. I will have changes made and update the files soon. Thanks :)

/rtm


feat: remove scc-related services from project

PR summary
This commit removes the Configuration Governance
and Posture Management services from the project.
These services are now available at
https://github.com/IBM/scc-go-sdk.
Signed-off-by: Phil Adams<EMAIL_ADDRESS>PR Checklist
Please make sure that your PR fulfills the following requirements:

[x] The commit message follows the Angular Commit Message Guidelines.
[x] Tests for the changes have been added (for bug fixes / features)
[x] Docs have been added / updated (for bug fixes / features)

Current vs new behavior

Does this PR introduce a breaking change?

[x] Yes
[ ] No

Other information

:tada: This PR is included in version 0.29.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Update clap to remove suppressions

A Friday afternoon jaunt.
To be merged after #2855; does the remaining work to close #2277 (and closes off some things that Dependabot was trying to upgrade).
Tested by manually running the commands; we don't have good coverage for this kind of stuff. OTOH, most of these commands are for the experimental local fuzzing mode, which is not fully supported yet. I did specifically test the onefuzz-task managed command which is the one used in production.
Details

Bump clap to 4.1.6

Remove structopt as this is subsumed by clap now

Bump envlogger to 0.10 (removes problematic dependency)
Set default-features=false on proc-maps (removes a feature which is only needed to support FreeBSD), and bump it to 0.3

The main changes migrating clap are:

value_t! is gone; now use matches.get_one::<T>. If T is not String then a parser must have been registered on the Arg when it was created, with arg.value_parser(value_parser!(T)).
Command::with_name and Arg::with_name are now called new.
Command and Subcommand were unified, and App is removed.
arg.takes_value(true) is gone; it is the default. For flags use arg.action(ArgAction::SetTrue) and then retrieve the flag value with matches.get_flag.

This code would be simplified a lot by using the clap::Parser on structs, but that requires reworking the code significantly as we cannot dynamically add/remove arguments the way that this is currently done.
Also found
Found one bug while manually testing the onefuzz-task local commands; see comment below.

Codecov Report

Merging #2856 (d8707ec) into bump-clap-proxy (daeccef) will decrease coverage by 1.49%.
The diff coverage is n/a.

:exclamation: Current head d8707ec differs from pull request most recent head b299509. Consider uploading reports for the commit b299509 to get more accurate results

@@                 Coverage Diff                 @@
##           bump-clap-proxy    #2856      +/-   ##
===================================================
- Coverage            28.08%   26.59%   -1.49%
===================================================
  Files                  302      125     -177
  Lines                35651    13414   -22237
===================================================
- Hits                 10012     3568    -6444
+ Misses               25639     9846   -15793

Impacted Files
Coverage Δ

...c/agent/dynamic-library/src/bin/dynamic-library.rs

src/agent/onefuzz-agent/src/main.rs

src/agent/onefuzz-task/src/local/cmd.rs

src/agent/onefuzz-task/src/local/common.rs

src/agent/onefuzz-task/src/local/coverage.rs

...c/agent/onefuzz-task/src/local/generic_analysis.rs

...ent/onefuzz-task/src/local/generic_crash_report.rs

.../agent/onefuzz-task/src/local/generic_generator.rs

src/agent/onefuzz-task/src/local/libfuzzer.rs

...t/onefuzz-task/src/local/libfuzzer_crash_report.rs

... and 167 more

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

Passed check-pr.


Updates needed

Hi,
it would be great if you can update this page as following statements should be outdated by now:
"Your environment must be in the United States region.
Your account must have English (United States) as the browser language."
Sources:
We are excited to announce that Copilot for Power Apps is now Generally Available for app makers.
https://powerapps.microsoft.com/en-us/blog/build-better-apps-faster-copilot-in-power-apps-is-now-generally-available/
"Copilot and generative AI features for Microsoft Power Platform and Microsoft Dynamics 365 was released in Europe starting Tuesday, October 31st, 2023!"
https://www.linkedin.com/posts/jackrowbotham_availability-azureopenai-openai-activity-7118097971476369409-Rnjv/
Thank you

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

ID: fdc86775-f71a-5828-52dd-997d9adf6a6f
Version Independent ID: fdc86775-f71a-5828-52dd-997d9adf6a6f
Content: AI Copilot overview - Power Apps
Content Source: powerapps-docs/maker/canvas-apps/ai-overview.md
Service: powerapps
Sub-service: canvas-maker
GitHub Login: @mduelae
Microsoft Alias: tapanm

Thanks for your comment, @MichaelWeberMSFT. This issue has been assigned to the doc author for review.


Check whether HTTP_PROXY is a breaking change when moving into go 1.16

Checking if https://golang.org/doc/go1.16#net/http would affect the agent and looking at the config docs it seems like it won't https://docs.newrelic.com/docs/infrastructure/new-relic-infrastructure/troubleshooting/https-proxy-configuration-missing/#131
But I don't see any validation on non HTTPS when HTTP_PROXY is used https://github.com/newrelic/infrastructure-agent/blob/30d0e84f3526ab0e1398d7908cc6e73193a21109/pkg/backend/http/proxy.go#L128

It would be nice to develop a list of check to sign off before we bump go version. Could we started this list somewhere within this task?


Ui design of home page

@khushi-joshi-05 I can make the home page user interface more attractive. So assign this task to me.
and add the tags and labels.

@khushi-joshi-05 , i have 3years of experience in frontend  and  will develop  visual and interactive  Ui design of the home page .Assign the task to me , and add tags & labels too.


Upgrade to System.Text.Json 8 RC1

Motivation
We know we're going to need some STJ 8 functionality for trim/NativeAOT support. This will allow us to begin experimenting in advance.
Modifications

Upgrade the libraries
Remove the JsonNullableDateConverter, custom converters now handle Nullable<T> correctly in source-generated contexts without a custom converter
Drop our internal JsonStringEnumConverter<T> implementation in favor of the new implemenation in STJ 8 which is trim-compatible.
Add RequiresUnreferencedCode and RequiresDynamicCode annotations to the JsonTypeSerializer constructors
Add another constructor which accepts a JsonSerializerContext and doesn't produce those warnings
Use the new JsonSerializerOptions.MakeReadOnly(true) overload to ensure the passed options has a reflection resolver (if required)
Use the JsonContext.Create overload that takes JsonTypeInfo

Results
Until .NET 8 is released we can't use the main branch to create SDK releases unless they have prerelease versions. However, we can move forward with trim/NativeAOT work in preparation for .NET 8. We don't currently plan to release Yardarm 0.5.0 prior to Nov 2023 so this shouldn't be a blocker.

/merge


Toast audio Loop = true breaks notification

See: http://stackoverflow.com/questions/35039001/scheduled-toast-notification-alarm-loop

Fixed with commit: https://github.com/WindowsNotifications/NotificationsExtensions/commit/c4549bde7bec02eeb91c629d34e8d5805ee937bc


Berkeley migration verifier/recompute ledger hash

Explain your changes:
This PR does the ledger hash check comparison
Explain how you tested your changes:
*
Checklist:

[ ] Dependency versions are unchanged

Notify Velocity team if dependencies must change in CI

[ ] Modified the current draft of release notes with details on what is completed or incomplete within this project
[ ] Document code purpose, how to use it

Mention expected invariants, implicit constraints

[ ] Tests were added for the new behavior

Document test purpose, significance of failures
Test names should reflect their purpose

[ ] All tests pass (CI will check this if you didn't)
[ ] Serialized types are in stable-versioned modules
[ ] Does this close issues? List them

Closes #0000

This is no longer required. @ghost-not-in-the-shell close?


AKManager and CsoundObj improvements

New utility class method on AKManager to simplify loading files from the AKSoundFiles bundle, this simplifies lots of duplicate code in instruments and the demo.
The temporary AudioKit.csd file is now really in a temporary directory, with a temporary name including the process number, and is being removed upon application termination.
We also wait for the Csound thread to end gracefully when the application terminates, to avoid crashes on OS X. This is now handled through a NSThread object instead of the NSObject method to launch a selector haphazardly in the background.

The changes here are gorgeous, thank you!


chore: make the patricia_key and class_hash macros self contained

[!WARNING]
This pull request is not mergeable via GitHub because a downstack PR is open. Once all requirements are satisfied, merge this PR as a stack on Graphite.
Learn more

#1465  👈
#1464
#1463
#1462
main

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @ArniStarkware and the rest of your teammates on  Graphite

This change is


Tokio runtime panic when using QuinnListener

Describe the bug
thread 'tokio-runtime-worker' panicked
To Reproduce
Steps to reproduce the behavior:

Make little server on QuinnListener
Access to it via HTTP/3-supported browser or curl
Get this error:

thread 'tokio-runtime-worker' panicked at /usr/local/cargo/registry/src/index.crates.io-6f17d22bba15001f/tokio-1.38.0/src/runtime/scheduler/multi_thread/mod.rs:86:9:
Cannot start a runtime from within a runtime. This happens because a function (like `block_on`) attempted to block the current thread while the thread is being used to drive asynchronous tasks.

With RUST_BACKTRACE=full still found not so much useful information:
backend-1  | thread 'tokio-runtime-worker' panicked at /usr/local/cargo/registry/src/index.crates.io-6f17d22bba15001f/tokio-1.38.0/src/runtime/scheduler/multi_thread/mod.rs:86:9:
backend-1  | Cannot start a runtime from within a runtime. This happens because a function (like `block_on`) attempted to block the current thread while the thread is being used to drive asynchronous tasks.
backend-1  | stack backtrace:
backend-1  |    0:     0x57f11fdfb5d5 - std::backtrace_rs::backtrace::libunwind::trace::hd0a431ec4286eec2
backend-1  |                                at /rustc/bcf94dec5ba6838e435902120c0384c360126a26/library/std/src/../../backtrace/src/backtrace/libunwind.rs:116:5
backend-1  |    1:     0x57f11fdfb5d5 - std::backtrace_rs::backtrace::trace_unsynchronized::h55b7147bbdcae103
backend-1  |                                at /rustc/bcf94dec5ba6838e435902120c0384c360126a26/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
backend-1  |    2:     0x57f11fdfb5d5 - std::sys::backtrace::_print_fmt::h5ba811d5fa76665c
backend-1  |                                at /rustc/bcf94dec5ba6838e435902120c0384c360126a26/library/std/src/sys/backtrace.rs:68:5
backend-1  |    3:     0x57f11fdfb5d5 - <std::sys::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::hc7ed570e71131300
backend-1  |                                at /rustc/bcf94dec5ba6838e435902120c0384c360126a26/library/std/src/sys/backtrace.rs:44:22
backend-1  |    4:     0x57f11fe289bb - core::fmt::rt::Argument::fmt::hd5f04252949343fb
backend-1  |                                at /rustc/bcf94dec5ba6838e435902120c0384c360126a26/library/core/src/fmt/rt.rs:165:63
backend-1  |    5:     0x57f11fe289bb - core::fmt::write::h525edfe35df838b2
backend-1  |                                at /rustc/bcf94dec5ba6838e435902120c0384c360126a26/library/core/src/fmt/mod.rs:1168:21
backend-1  |    6:     0x57f11fdf7bff - std::io::Write::write_fmt::h7ca43b42bd752649
backend-1  |                                at /rustc/bcf94dec5ba6838e435902120c0384c360126a26/library/std/src/io/mod.rs:1835:15
backend-1  |    7:     0x57f11fdfb3ae - std::sys::backtrace::_print::h5374f6e608e081ce
backend-1  |                                at /rustc/bcf94dec5ba6838e435902120c0384c360126a26/library/std/src/sys/backtrace.rs:47:5
backend-1  |    8:     0x57f11fdfb3ae - std::sys::backtrace::print::ha7453f9fb23375ba
backend-1  |                                at /rustc/bcf94dec5ba6838e435902120c0384c360126a26/library/std/src/sys/backtrace.rs:34:9
backend-1  |    9:     0x57f11fdfc729 - std::panicking::default_hook::{{closure}}::hf9505cfe32528ed7
backend-1  |   10:     0x57f11fdfc4cc - std::panicking::default_hook::ha7962b8515cde474
backend-1  |                                at /rustc/bcf94dec5ba6838e435902120c0384c360126a26/library/std/src/panicking.rs:292:9
backend-1  |   11:     0x57f11fdfccb1 - std::panicking::rust_panic_with_hook::hea4c878dc07df55b
backend-1  |                                at /rustc/bcf94dec5ba6838e435902120c0384c360126a26/library/std/src/panicking.rs:796:13
backend-1  |   12:     0x57f11fdfcae3 - std::panicking::begin_panic_handler::{{closure}}::hca858b01da723ad6
backend-1  |                                at /rustc/bcf94dec5ba6838e435902120c0384c360126a26/library/std/src/panicking.rs:663:13
backend-1  |   13:     0x57f11fdfba99 - std::sys::backtrace::__rust_end_short_backtrace::h94b285c94ce95409
backend-1  |                                at /rustc/bcf94dec5ba6838e435902120c0384c360126a26/library/std/src/sys/backtrace.rs:171:18
backend-1  |   14:     0x57f11fdfc7f4 - rust_begin_unwind
backend-1  |                                at /rustc/bcf94dec5ba6838e435902120c0384c360126a26/library/std/src/panicking.rs:661:5
backend-1  |   15:     0x57f11fe25853 - core::panicking::panic_fmt::h47b1e0ddaafb858d
backend-1  |                                at /rustc/bcf94dec5ba6838e435902120c0384c360126a26/library/core/src/panicking.rs:74:14
backend-1  |   16:     0x57f11ea4420e - tokio::runtime::context::runtime::enter_runtime::h964a40d550a5e753
backend-1  |                                at /usr/local/cargo/registry/src/index.crates.io-6f17d22bba15001f/tokio-1.38.0/src/runtime/context/runtime.rs:68:5
backend-1 exited with code 139

Expected behavior
Handler should be executed. At least, it works as expected when using HTTP/2, HTTP/1.1.
Desktop (please complete the following information):

OS: Arch Linux (Linux 6.9.5-arch1-1 SMP PREEMPT_DYNAMIC Sun, 16 Jun 2024 19:06:37 +0000 x86_64 GNU/Linux)
Salvo from at least 0.66 (maybe even on earlier versions)

Can you run the hello-h3 example normally? From the error, it seems that you have blocked the main thread of tokio, which is a problem with your code.

Can you run the hello-h3 example normally? From the error, it seems that you have blocked the main thread of tokio, which is a problem with your code.

Well, hello-h3 runs normally.
With log's help I found that the bug is rising when I try parse JSON from request (let data = req.parse_json::<MyData>().await?;

Please provide the minimal reproducible code。

Code
main.rs:
use salvo::conn::rustls::{Keycert, RustlsConfig};
use salvo::prelude::*;
use serde::{Deserialize, Serialize};

#[derive(Serialize, Deserialize)]
pub struct SignInRequestData {
    pub login: String,
    pub password: String,
}

#[handler]
async fn login(req: &mut Request, res: &mut Response) {
    let data = req.parse_json::<SignInRequestData>().await.unwrap();
    res.render(format!("Logged in as {}", data.login));
}

#[tokio::main]
async fn main() {
    tracing_subscriber::fmt().init();
    let cert = include_bytes!("../certs/cert.pem").to_vec();
    let key = include_bytes!("../certs/key.pem").to_vec();

    let router = Router::new().post(login);
    let config = RustlsConfig::new(Keycert::new().cert(cert.as_slice()).key(key.as_slice()));
    let listener = TcpListener::new(("<IP_ADDRESS>", 5800)).rustls(config.clone());

    let acceptor = QuinnListener::new(config.build_quinn_config().unwrap(), ("<IP_ADDRESS>", 5800))
        .join(listener)
        .bind()
        .await;

    Server::new(acceptor).serve(router).await;
}

Cargo.toml:
[package]
name = "example-hello-h3"
version.workspace = true
edition.workspace = true
publish.workspace = true

[dependencies]
salvo = { workspace = true, features = ["quinn"] }
serde = { version = "1", features = ["derive"] }
tokio = { workspace = true, features = ["macros"] }
tracing.workspace = true
tracing-subscriber.workspace = true

Usage
cd examples && cargo run --bin example-hello-h3

And doing request with curl:
curl --request POST --http3-only --tlsv1.3 -H "Content-Type: application/json" --data '{"login":"xyz","password":"xyz"}' https://localhost:443 --verbose

We're getting:
* upload completely sent off: 32 bytes
* HTTP/3 stream 0 was closed cleanly, but before getting all response header fields, treated as error
* Connection #0 to host localhost left intact
curl: (95) error:8000006F:system library::Connection refused

And:
thread 'tokio-runtime-worker' panicked at /home/titoffklim/.cargo/registry/src/index.crates.io-6f17d22bba15001f/tokio-1.38.0/src/runtime/scheduler/multi_thread/mod.rs:86:9:
Cannot start a runtime from within a runtime. This happens because a function (like `block_on`) attempted to block the current thread while the thread is being used to drive asynchronous tasks.
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

As long as HTTP/2 connection looks like this:
< HTTP/2 200
< alt-svc: h3=":443"; ma=2592000,h3-29=":443"; ma=2592000
< content-type: text/plain; charset=utf-8
< date: Mon, 24 Jun 2024 06:36:56 GMT
< content-length: 16
<
* Connection #0 to host localhost left intact
Logged in as xyz


Make it possible to use custom invoice reference #

PR to allow for a custom class to be used when creating invoice references (invoice id)

Hi @rabol,
Thanks for this PR!
It seems to trip up some tests currently: https://travis-ci.org/sandervanhooft/laravel-invoicable/builds/507903502 .

Hi @rabol ,
Looks good to me, thanks!
The remaining Travis issues are caused by some unrelated phpunit/laravel version incompatibility issues. I'll look into it.

Sander

Solves issue #13

This PR will be included in the next major release.


It's not working in swift 3

I will add Swift3 support recently

I appreciate your efforts but I need it as soon as possible :) Any advice

I work on chat application and i use ObjSignalR  library but it have a delay in send and receive  👍

I don't know why there is a  delay in send and receive using ObjSignalR, do you use WebSocket for transport? Maybe you can open an issue in its repository, and I will add swift3.0 branch this week.

Thanks 👍

Can you create pod for your project so i can use it 👍 Thanks

@zsybupt  can you help in this because i have release after two days , thanks

@MusabBasheer I don't know, maybe I can add Swift3.0 tonight if everything goes well, but I have no plan to create pod now, because the longpolling transport is not ready yet, you can clone or download it, and build it to use in your project.

@zsybupt Thanks 👍

@MusabBasheer add dev-swift3 branch, some codes are transformed automatically by XCode8, maybe I will do some changes later, but it is can be used now, I have tested the sample app in SwiftSignalRTest target. If there is a bug, let me know, thanks

@zsybupt  Thanks a lot 👍


Reusing client issues.

Alright, so I'm working on a login system where I can use a client, connect to a channel, and then change the login credentials and reconnect. While doing so, I noticed that changing the ConnectionCredentials from the client after the initial creation, doesn't change the "TwitchUsername". In the ctor from the TwitchClient, it does set the TwitchUsername to _credentials.TwitchUsername, however in the 'set function from "ConnectionCredentials"' it doesn't. It just sets the _credentials. Leaving the actual "credentials.TwitchUsername" and "TwitchUsername" with different names.
Along with this, I noticed that if I used a valid OAuth, and used an username that doesn't belong to the OAuth, it won't call the OnChannelJoined event, but it won't call the OnIncorrectLogin event either. Leaving me with no actual callback of what's happening.

I will look into these issues. Admittedly, the changing of credentials and accounts and reusing the client is a very rarely tested use scenario, so I'm not super surprised it's broke.

(Created that post on a wrong account) But thank you. A solution that I came up with for validating that the TwitchUsername is equal to the OAuth username, which seems to work perfectly for me is modifying the OnConnected code to the following:

To fix the part where the TwitchUsername isn't modified when changing the ConnectionCredentials, I just added a line with TwitchUsername = value.TwitchUsername; like so:

Quick update, I will get this and a few other bugs fixedf this weekend and get a new nuget package out.

Sounds awesome! Thank you!

Alright, I added your recommended fixes. Let me know if it fixes it for ya.

The latest commit indeed fixed my issues!

Awesome, will close this then.


papi

Does this plugin support papi if not can you add it!

The Spigot version of the plugin supports placeholder api


Fix bug where lotus port can not be set from .env

This PR contains two commits, one introducing a test that demonstrates the bug, and the commit fixing this bug.

@kenglxn Hey, thank you. :+1:

No problem. Thank you for this awesome framework 😊


Move OTP Validation to Backend

Select the type of PR

[x] bug fix
[x] feature
[ ] documentation update/addition
[ ] code clean-up / corrected formatting
[ ] other

Short Description
Attempts to fix:

#119

The existing OTP Validation was done at the frontend, which had minor yet critical security flaw in it. The main reason for it was the validation request being sent from backend to authenticate the otp.
I built on top of this system and moved the entire validation process to backend. The advantage I noticed via this process is that now, the codebase has become more Pythonic (an excuse actually: I don't know much about JS :P)
The system is working fine now. Thanks to @ashutoshkrris for the robust implementation earlier. Without that, it would have taken me considerably long time to implement this.
If you find any error or flaws, consider bringing it up.
Pinging @CYBERDEVILZ  @ashutoshkrris for review.
Describe testing method(s) (if any)
Check all that are applicable (important)

[x] My code follows the code style of this project.
[x] I Added relevant comments to my code
[x] I have updated the documentation appropriately.
[x] My changes generate no new warnings

@CYBERDEVILZ , I tested it and this time, it feels pretty safe to me. Going ahead to merge this. If you find any issues, then feel free to reopen this issue.