Add JSDoc

For making the maintenance easier, I want to add JSDocs with type expressions to the code where it seems reasonable to me.

deno check --allow-import . type-checks code blocks as well as the actual code if
"compilerOptions": {
    "checkJs": true
 }

is set tsconfig.json, jsconfig.json or deno.json.


Why does object-detection script require audio software?

This is from lite/examples/object_detection/raspberry_pi
Is something mixed up with the efficientdet_lite model? It gives me a fatal error for not finding PortAudio library! But i wanted to do object detection with the camera! Earlier, in the setup phase, it seemed satisfied with my installed software.
steve@raspberrypi:~/examples/tensorflow_examples/examples/lite/examples/object_detection/raspberry_pi $ python3 detect.py
--model efficientdet_lite0.tflite
Traceback (most recent call last):
File "/home/steve/examples/tensorflow_examples/examples/lite/examples/object_detection/raspberry_pi/detect.py", line 20, in
from tflite_support.task import core
File "/home/steve/.local/lib/python3.9/site-packages/tflite_support/init.py", line 53, in
from tflite_support import task
File "/home/steve/.local/lib/python3.9/site-packages/tflite_support/task/init.py", line 28, in
from . import audio
File "/home/steve/.local/lib/python3.9/site-packages/tflite_support/task/audio/init.py", line 20, in
from tensorflow_lite_support.python.task.audio import audio_classifier
File "/home/steve/.local/lib/python3.9/site-packages/tensorflow_lite_support/python/task/audio/audio_classifier.py", line 18, in
from tensorflow_lite_support.python.task.audio.core import audio_record
File "/home/steve/.local/lib/python3.9/site-packages/tensorflow_lite_support/python/task/audio/core/audio_record.py", line 17, in
import sounddevice as sd
File "/home/steve/.local/lib/python3.9/site-packages/sounddevice.py", line 71, in
raise OSError('PortAudio library not found')
OSError: PortAudio library not found

Well, I installed libportaudio2 and this cured the problem. I don't know why Tensorflow Lite core must load audio modules, when it is memory constrained, but there you have it. It must want the complete Swiss army knife.

We've fixed the issue with audio dependency in the master branch. You can try it with pip install tflite-support-nightly. It'll be available in the next stable release (0.4.2)


Adds process spawning and event dispatch to MetricEndpointsObserver

Issue
This patch adds the ability to watch a k8s cluster for events, in order that we can discover potential metrics endpoints for resources not necessarily created by Juju.
Solution
It works by:

Spawning a process that watches the cluster for designated labels.
Dispatching a custom event back to the charm when it receives events for watched labels.

Context
This exploits the juju-run command, combined with JUJU_DISPATCH_PATCH to simulate a custom hook being dispatched to the charm by Juju.
Testing Instructions

Apply this patch:

diff --git a/metadata.yaml b/metadata.yaml
index 877c3cd..6da09f4 100644
--- a/metadata.yaml
+++ b/metadata.yaml
@@ -5,11 +5,6 @@ description: |
   A placeholder charm that contains helpful charm libraries curated by the
   Canonical Observability charm team.
 summary: Collection of Charm Libraries for the Observability charms.
-containers:
-  placeholder:
-    resource: placeholder-image
-
-resources:
-  placeholder-image:
-    type: oci-image
-    description: OCI image for placeholder
+assumes:
+  - juju >= 2.9.23
+  - k8s-api
diff --git a/src/charm.py b/src/charm.py
index 6e815e9..a5bcf37 100755
--- a/src/charm.py
+++ b/src/charm.py
@@ -5,14 +5,41 @@

 """A placeholder charm for the Observability libs."""

+import json
+import logging
+
+from charms.observability_libs.v0.metrics_endpoint_discovery import (
+    MetricsEndpointChangeCharmEvents,
+    MetricsEndpointObserver,
+)
 from ops.charm import CharmBase
 from ops.main import main
+from ops.model import ActiveStatus
+
+logger = logging.getLogger(__name__)

 class ObservabilityLibsCharm(CharmBase):
     """Placeholder charm for Observability libs."""

-    pass
+    on = MetricsEndpointChangeCharmEvents()
+
+    def __init__(self, *args):
+        super().__init__(*args)
+
+        self._observer = MetricsEndpointObserver(self, {"app.kubernetes.io/name": ["grafana-k8s"]})
+
+        self.framework.observe(self.on.leader_elected, self._on_leader_elected)
+        self.framework.observe(self.on.metrics_endpoint_change, self._on_endpoints_change)
+
+    def _on_leader_elected(self, event):
+        if self.unit.is_leader():
+            self._observer.start_observer()
+        else:
+            self._observer.stop_observer()
+
+    def _on_endpoints_change(self, event):
+        self.unit.status = ActiveStatus(json.dumps(event.discovered))

 if __name__ == "__main__":

You can then build and deploy the local observability-libs charm.
Deploy grafana-k8s and see the status of the charm reflect observed events.

Release Notes
Adds metrics endpoint discoverability module.

Hi @manadart,
Friendly reminder about this PR. Want us to find someone else to take it over as you've ended your rotation in Observability by now?
cc @DomFleischmann

@simskij, @DomFleischmann Sorry about this. I tried to contrive tests for this today, but the way it hangs together exceeds my knowledge of Python patching/mocking and the ops harness.
I've added instructions for QA verification.


Azure API Quota Limits

Hello! Was wondering what quota limits were required to run this?
Thanks!

Hi nate-sepich,
Thank you for your question. We currently do not limit quota per run. From our experience, it would cost 0-2$ for each run with GPT-3.5.


Apply to opensats

Apply to https://opensats.org/ to have server & operational costs reimbursed. Nostr.watch provides a unique, and valuable service for nostr users @dskvr

Congrats!!

Yeah, you posted this before they announced it so I couldn't say anything yet :)

Well deserved, ser!


General improvements

Want to merge improvements from @mildsunrise fork.
I'd love to add you as collaborator but I don't have admin permissions on the repo.
@mranney @jmaxxz @Subomi @skepticfx can you?
Closes:
https://github.com/node-pcap/node_pcap/pull/254
https://github.com/node-pcap/node_pcap/pull/225
https://github.com/node-pcap/node_pcap/pull/205
https://github.com/node-pcap/node_pcap/pull/219

keep in mind #1 refers to a pull request that was made on my fork :)

Ohh, github has linking conflicts.
Is that api change documented in the README?

nope, radiotap decoder isn't documented so I made no mention of that

Ok I just need a list of PRs that this one will close. So I can clean the repo

in addition to the ones you listed, this also includes PR #214 and #219
it also fixes #244 and #251
if you want to merge this, I think it would be best to start a new major version (v3.0.0) and specify in package.json that only Node >= 10 is officially supported

hmm, I'll prepare a reduced PR


Handling 0 dollar/0 entry files returned as daily health pings from FISERV

Don't validate file control fields BatchCount, EntryAddendaCount, EntryHash if there are no entries
Small error handling bug fix
Updated UTs for (1)

@prasadmahendra Do you have an example health ping file?

I've included that test file as an example for us, thanks!

Codecov Report

Merging #713 into master will increase coverage by 0.56%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##           master     #713      +/-   ##
==========================================
+ Coverage   92.51%   93.07%   +0.56%
==========================================
  Files          65       65
  Lines        7438     5776    -1662
==========================================
- Hits         6881     5376    -1505
+ Misses        397      240     -157
  Partials      160      160


Heatmap annotation legend is not working (again)

The sidebar legend is not working again :(

In viz.faang.org, select a species (chicken), an assay (chipseq), an annotation (Cell type). The developer console returns an error and no legend is displayed. Apparently, the django back end methods is none-existent (it might have changed name, finding the appropriate name might fix it?).
Potentially relevant scripts:
https://github.com/GenEpi-GenPhySE/vizfada_app/blob/master/Angular/src/app/main/view/heatmap/legend/legend.component.ts#L7
https://github.com/GenEpi-GenPhySE/vizfada_app/blob/master/Django/metadata/meta.py#L8


updated TEAL submodule ID

Pull Request Description
What issue does this change request address? (Use "#" before the issue to link it, i.e., #42.)
Ref. #1258
What are the significant changes in functionality due to this change request?
Update of TEAL submodule

For Change Control Board: Change Request Review
The following review must be completed by an authorized member of the Change Control Board.

[x] 1. Review all computer code.
[x] 2. If any changes occur to the input syntax, there must be an accompanying change to the user manual and xsd schema. If the input syntax change deprecates existing input files, a conversion script needs to be added (see Conversion Scripts).
[x] 3. Make sure the Python code and commenting standards are respected (camelBack, etc.) - See on the wiki for details.
[ ] 4. Automated Tests should pass, including run_tests, pylint, manual building and xsd tests. If there are changes to Simulation.py or JobHandler.py the qsub tests must pass.
[x] 5. If significant functionality is added, there must  be tests added to check this. Tests should cover all possible options.  Multiple short tests are preferred over one large test. If new development on the internal JobHandler parallel system is performed, a cluster test must be added setting, in  XML block, the node <internalParallel> to True.
[x] 6. If the change modifies or adds a requirement or a requirement based test case, the Change Control Board's Chair or designee also needs to approve the change.  The requirements and the requirements test shall be in sync.
[x] 7. The merge request must reference an issue.  If the issue is closed, the issue close checklist shall be done.
[x] 8. If an analytic test is changed/added is the the analytic documentation updated/added?
[x] 9. If any test used as a basis for documentation examples (currently found in raven/tests/framework/user_guide and raven/docs/workshop) have been changed, the associated documentation must be reviewed and assured the text matches the example.

Code changes approved, this can be merged as soon as tests pass.

OpenSUSE 15 test machine is down; all other required tests pass. Merging.


Preview button hover state ads welcome (#9943)

Adjusts the hover state for the preview button on the ads welcome page to stay active when hovering over the tooltip as well as the button.
This PR fixes #9943

@v-bbrady  do you still want to merge this PR? if not please close it.


Background color

How to assign a background color?

You can set it on your views configured with ms_dropDownHintView, ms_hintView or simply set ms_baseColor


Add optional support for simdutf8

simdutf8 is faster variant of from_utf8 method than from core.

Sorry, we are not interested in a custom from_utf8 implementation. If you really need this, I suggest improving core standard library.


Search fails in folders having curly brackets groups in folder name (ie. '/{{cookiecutter.package_name}}')

Does this issue occur when all extensions are disabled?: Yes

VS Code Version: 1.82.3
OS Version: Ubuntu 22.04.3 LTS

Steps to Reproduce:

create directory: mkdir -p "foo/{{cookiecutter.package_name}}"
add searchable file to new directory: echo baz > "foo/{{cookiecutter.package_name}}/bar"
start VSCode with all extensions disabled: code --disable-extensions
add created folder to VSCode: code --add foo
right click on {{cookiecutter.package_name}}, Find in Folder...
Enter "baz" into search field
Error appears: Error parsing glob '/{{cookiecutter.package_name}}': nested alternate groups are not allowed

Detailed VSCode and OS versions:
$ code --version
1.82.3
fdb98833154679dbaa7af67a5a29fe19e55c2b73
x64
$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 22.04.3 LTS
Release:        22.04
Codename:       jammy

Output -> Window:
2023-10-03 12:25:54.724 [trace] SearchService#search {"_reason":"searchView","folderQueries":[{"folder":{"$mid":1,"fsPath":"/tmp/foo","external":"file:///tmp/foo","path":"/tmp/foo","scheme":"file"},"excludePattern":{"**/.git":true,"**/.svn":true,"**/.hg":true,"**/CVS":true,"**/.DS_Store":true,"**/Thumbs.db":true,".coverage":true,".coverage.*":true,"*.ipynb":true,"*.pos":true,"**/__pycache__":true,"**/.antlr/":true,"**/.benchmarks/":true,"**/.cache":true,"**/.cassandraWorkbench/":true,"**/.directory":true,"**/.dockerized_mongo_data/":true,"**/.eggs":true,"**/.external_pip_packages/":true,"**/.git/":true,"**/.hg/":true,"**/.idea/":true,"**/.ipynb_checkpoints":true,"**/.mypy_cache/":true,"**/.pyre/":true,"**/.pytest_cache/":true,"**/.pytype/":true,"**/.ruff_cache/":true,"**/.tox/":true,"**/.vagrant/":true,"**/.venv/":true,"**/.venv1/":true,"**/.venv2/":true,"**/.venv3/":true,"**/.vscode/":true,"**/*.a":true,"**/*.class":true,"**/*.egg-info":true,"**/*.log":true,"**/*.o":true,"**/*.pyc":true,"**/*.so":true,"**/build/":true,"**/dist/":true,"**/docs/_build/":true,"**/downloaded_deps/":true,"**/exported_data/":true,"**/htmlcov/":true,"**/libsokoengine/lib/":true,"**/metastore_db/":true,"**/spark_root/":true,"**/spark-warehouse/":true,"**/vendor/":true,"coverage.xml":true,"**/node_modules":true,"**/bower_components":true,"**/*.code-search":true},"fileEncoding":"utf8","disregardIgnoreFiles":false,"disregardGlobalIgnoreFiles":true,"disregardParentIgnoreFiles":true,"ignoreSymlinks":true,"includePattern":{"{{cookiecutter.package_name}}":true,"{{cookiecutter.package_name}}/**":true}}],"usingSearchPaths":true,"onlyOpenEditors":false,"maxResults":20000,"type":2,"contentPattern":{"pattern":"baz","isRegExp":false,"isCaseSensitive":false,"isWordMatch":false,"notebookInfo":{"isInNotebookMarkdownInput":true,"isInNotebookMarkdownPreview":true,"isInNotebookCellInput":true,"isInNotebookCellOutput":true},"wordSeparators":"/\\()\"':,.;<>~!@#$%^&*|+=[]{}`?-"},"previewOptions":{"matchLines":1,"charsPerLine":1000},"usePCRE2":false}
2023-10-03 12:25:54.735 [trace] SearchService#search: 8ms
2023-10-03 12:25:54.735 [trace] SearchService#searchError: Error parsing glob '/{{cookiecutter.package_name}}': nested alternate groups are not allowed
2023-10-03 12:25:54.747 [error] Error parsing glob '/{{cookiecutter.package_name}}': nested alternate groups are not allowed: Error: Error parsing glob '/{{cookiecutter.package_name}}': nested alternate groups are not allowed
    at P (vscode-file://vscode-app/usr/share/code/resources/app/out/vs/workbench/workbench.desktop.main.js:1847:5809)
    at vscode-file://vscode-app/usr/share/code/resources/app/out/vs/workbench/workbench.desktop.main.js:1855:4351
    at async vscode-file://vscode-app/usr/share/code/resources/app/out/vs/workbench/workbench.desktop.main.js:1855:2921
    at async vscode-file://vscode-app/usr/share/code/resources/app/out/vs/workbench/workbench.desktop.main.js:1855:2313
    at async vscode-file://vscode-app/usr/share/code/resources/app/out/vs/workbench/workbench.desktop.main.js:2280:25170

Tested also in insiders build on the web.
In insiders build, no error appears, but search term baz is not found (and it should be found).

This is interpreted as a nested alternate group, which is why that doesn't work. I'll keep this issue open as a way to potentially escape braces.


Multi api example

An example of how to setup PostgREST with 2 apis and nginx in front.

The title is making me think that the APIs are unrelated, maybe something closer to
How to serve multiple versions of the API with Postgrest and Nginx
The tutorial is structured in terms of "here is this custom config, copy it to this location". I would suggest you modify the current  config+init script to make them general (details below) then change the tutorial to "copy the default files to these locations, rename to this and edit these lines" and the default files should be added/changed in /debian diretory with this PR
Config file and init scripts, the good part is that you eliminated the wrapper thing and added the parameters needed to run multiple services based on the same binary.
The part that i don't think is a good direction is that you eliminated the default values from the init script
and made them mandatory in the config file, i would go for something like this in the init script
POSTGREST_DBPOOL=${POSTGREST_DBPOOL:-10}

and this in the config file
# database pool
#POSTGREST_POOL=10

and the if statements here https://github.com/begriffs/postgrest/blob/master/debian/postgrest.init.d#L36-L52 are useless since there is always a value, POSTGREST_OPTS can be constructed in one line.
I would also eliminate the separate config values for the db connection and just add "connection_string", this will simplify the init script and also make it more flexible to specify the connection.

Also maybe it's time to eliminate the POSTGREST_ part from each variable since it's obviouse :+1:

Thanks @ruslantalpa
Good points
Yes, this was written more in a blog post manner, I agree. The purpose of simplifying the init script, was that I wanted to make it clearer what is really happening. But then I should of course have removed also the if-parts.
Maybe there could be both on different parts of the documentation. Both simplified versions of init files and one more multipurpose, that catches all cases.
The reason I say so is that people like me who is not very familiar with init-scripts, and bash syntax in general have a hard time to understand all the parts of a multi purpose init script.
The "POSTGREST_DBPOOL=${POSTGREST_DBPOOL:-10}" is very nice and compact but I had a hard time googling that syntax. It is quite obvious what is happening, but anyway a little confusing.
So, why being able to hard code in init script? Doesn't that just make things confusing about where to search for where a parameter is set? I think PostgREST documentation could recommend one of the paths. All in init or all in config.
Maybe also the nginx part should be in a separate doc? I put things together just because I was in the blog post mood. I don't know if that is the right way.
I separate part about nginx could also say some words about https and let's encrypt.
I found this document from digital ocean very good and it helped me to set up https quite easy.
https://www.digitalocean.com/community/tutorials/how-to-secure-nginx-with-let-s-encrypt-on-ubuntu-14-04

The reason i asked for a general init script is precisely because ppl do not want to mess with that, so ideally it's just a script they copy to some location and do not care what's inside.
And for this specific case (multiple api versions) they edit just one line to specify the config file location.
About the default values, even though you can omit parameters like --pool when staring postgrest by hand, those parameters still have default values inside the binary (basically every parameter if i am not mistaken has a default value).
So instead of generating a "dynamic parameter list" command for staring pg, i think it would be best if the generated command line contains all the parameters, and the parameters that have a default value in the binary, should have that default also set in the init script. This will make the init script simpler (without a lot of ifs) and also the config file will be in the form of
#key=defaultvalue

that makes it clear what are the configuration options and the current default value if the line is commented.

So I read these docs again and my thought is they have nice material but should probably be split up and used to fill out existing empty places in the docs. For instance a discussion of init scripts in http://postgrest.com/admin/deployment/#debian and schema versioning in http://postgrest.com/admin/versioning/
I'm going to close this PR as it is but will consult its contents when updating the actual sections of the docs. Thanks for researching this stuff @nicklasaven, especially the init scripts which I know very little about.


Sort programs to match bpf2c

Resolves: #2781
Description
The bpf2c tool populates the _programs array sorted by the C symbol name for each program. This then defines the order in which program handles are returned from kernel to user mode. The function _ebpf_enumerate_native_sections returns programs in the order in which they occur in the PE file (which doesn't always match). The net result is that libbpf programs -> kernel handles sometimes don't match.
Testing
CI/CD
Documentation
No.
Installation
No.

bad_tail_call-native is failing. Switching to draft.


Question about PAL tool.

I'm trying the PAL tool for the first time and it works great. I'm looking in the .html document and see this pc - zach-pc Is this just the pc that was the counters were created on? Or can you enter the pc name in the program? Also, is there a Windows 10 version coming?
The Windows Performance Analysis Field Guide is a fantastic book. Thank you.

@mkruzel howdy, are you talking about reviewing the results html?
I think I understand the question. The name is read from the perfmon blg, it's a field in the collection.
@clinthuffman is working on a v3 of PAL I am told.

Yes, I'm talking about the .html document.    Thank you!

@mkruzel pro-tip, you can relog the host name into something else before making your PAL reports :)

It sounds like you are analyzing the performance counter log that ships with the tool for basic functionality testing. ZACH-PC is the name of the computer in that counter log. In your case, you need to analyze the performance counter log that you have either a *.blg for *.csv performance counter log.


Memory software interrupt

Allow binaries in privileged mode to modify some memory settings - access attributes of pages/areas/sections, allocation/deallocation of memory pages (heap support), and maybe few others.
Main motivation is to support self-modifying code. One particular use case is my FORTH kernel, in which I'd like to compute checksums of words' names during the boot phase but these words are stored in .text and .rodata sections that are by default read-only, for a good reason.

Implemented in 4685b716e8287e1a05d34566b03414d93b37b620


Add support for war plugin webResources

I've been experimenting with using dev mode with the Open Liberty website. The Open Liberty website build is a little convoluted because the web content is built with jekyll and the jekyll build runs prior to the maven build and writes the content into a separate directory.
The maven build uses the war packager which has some configuration to pick up the web resources from additional locations and it is pointed at the output of the jekyll build. This configuration is ignored by the dev mode. The configuration is this:
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<configuration>
	<failOnMissingWebXml>false</failOnMissingWebXml>
	<warName>openliberty</warName>
	<webResources>
		<resource>
			<!-- this is relative to the pom.xml directory -->
			<directory>target/jekyll-webapp</directory>
		</resource>
	</webResources>
</configuration>

the generated app config looks like this:
<?xml version="1.0" encoding="UTF-8"?>
<archive>
    <dir sourceOnDisk="/Users/nottinga/Documents/github/open-liberty-website/openliberty.io/src/main/webapp" targetInArchive="/"/>
    <dir sourceOnDisk="/Users/nottinga/Documents/github/open-liberty-website/openliberty.io/target/classes" targetInArchive="/WEB-INF/classes"/>
    <file sourceOnDisk="/Users/nottinga/Documents/github/open-liberty-website/openliberty.io/target/tmp/META-INF/MANIFEST.MF" targetInArchive="/META-INF/MANIFEST.MF"/>
</archive>

which means it doesn't contain the generated content. This isn't a massive problem if all I'm doing is changing the JAX-RS backend, but it is a problem when looking at the front end and backend.
The website github project is here: https://github.com/openliberty/openliberty.io

The app config file will be:
<?xml version="1.0" encoding="UTF-8"?>
<archive>
    <dir sourceOnDisk="/Users/paulg/WAS/devExperience/issues/ci.maven-767/openliberty.io/src/main/webapp" targetInArchive="/"/>
    <dir sourceOnDisk="/Users/paulg/WAS/devExperience/issues/ci.maven-767/openliberty.io/target/classes" targetInArchive="/WEB-INF/classes"/>
    <dir sourceOnDisk="/Users/paulg/WAS/devExperience/issues/ci.maven-767/openliberty.io/target/jekyll-webapp" targetInArchive="/"/>
    <file sourceOnDisk="/Users/paulg/.m2/repository/javax/json/javax.json-api/1.0/javax.json-api-1.0.jar" targetInArchive="/WEB-INF/lib/javax.json-api-1.0.jar"/>
    <file sourceOnDisk="/Users/paulg/.m2/repository/javax/enterprise/cdi-api/1.2/cdi-api-1.2.jar" targetInArchive="/WEB-INF/lib/cdi-api-1.2.jar"/>
    <file sourceOnDisk="/Users/paulg/.m2/repository/javax/el/javax.el-api/3.0.0/javax.el-api-3.0.0.jar" targetInArchive="/WEB-INF/lib/javax.el-api-3.0.0.jar"/>
    <file sourceOnDisk="/Users/paulg/.m2/repository/javax/interceptor/javax.interceptor-api/1.2/javax.interceptor-api-1.2.jar" targetInArchive="/WEB-INF/lib/javax.interceptor-api-1.2.jar"/>
    <file sourceOnDisk="/Users/paulg/.m2/repository/javax/inject/javax.inject/1/javax.inject-1.jar" targetInArchive="/WEB-INF/lib/javax.inject-1.jar"/>
    <file sourceOnDisk="/Users/paulg/WAS/devExperience/issues/ci.maven-767/openliberty.io/target/tmp/META-INF/MANIFEST.MF" targetInArchive="/META-INF/MANIFEST.MF"/>
</archive>

Without the line <dir sourceOnDisk="/Users/paulg/WAS/devExperience/issues/ci.maven-767/openliberty.io/target/jekyll-webapp" targetInArchive="/"/> the app prints:
Error Page Exception
SRVE0260E: The server cannot use the error page specified for your application to handle the Original Exception printed below.

Original Exception:
Error Message: SRVE0190E: File not found: /
Error Code: 404
Target Servlet:
Error Stack:
com.ibm.ws.webcontainer.webapp.WebAppErrorReport: SRVE0190E: File not found: /
     at com.ibm.ws.webcontainer.webapp.WebAppDispatcherContext.sendError(WebAppDispatcherContext.java:637)
     at com.ibm.ws.webcontainer.webapp.WebAppDispatcherContext.sendError(WebAppDispatcherContext.java:655)
     at com.ibm.ws.webcontainer.srt.SRTServletResponse.sendError(SRTServletResponse.java:1334)
     at com.ibm.ws.webcontainer.extension.DefaultExtensionProcessor.handleRequest(DefaultExtensionProcessor.java:824)
     at com.ibm.ws.webcontainer.filter.WebAppFilterChain.invokeTarget(WebAppFilterChain.java:182)
     at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:93)
     at io.openliberty.website.TLSFilter.doFilter(TLSFilter.java:64)
...

With that line, Status 200 and:
 Docs Get Started Support Fork the code ....

It took a little work to get the site working locally but the layout was incorrect. Since the server found the web resources I'll close this issue.

Thanks a lot for the fix. I was able to test it successfully on my side as well.
@turkeylurkey : Would you know when the next release of the plugin is expected ?

@andre-doherty We are actually working on getting a release out by the end of this month.

@cherylking That sounds great. Thanks a lot


Thread users are not reflected in the Firebase DB

Is the bug present in the demo Chat SDK project?
No
What modifications have you made to the Chat SDK?
Nothing
Android Version:
API 28
Steps taken to reproduce the problem:
Creating a new Thread with given users
Expected result:
The thread to be created in the Firebase db with the users listed there
Actual result:
The thread is being created successfully bu their are no users attached to it despite adding them to the Thread while creating it
Comments:
Here is how I create the Thread including my efforts to add users to it but no luck:

List<User> users = new ArrayList<>();
        users.add(ChatSDK.currentUser());
        users.add(user);
        Thread thread = fetchThreadWithUsers(users);
        if (thread == null) {
            disposableList.add(ChatSDK.thread().createThread(users)
                    .observeOn(AndroidSchedulers.mainThread())
                    .doFinally(this::hideProgressWheel)
                    .subscribe(thread -> {
                        thread.setMetaValue(SVPreferences.USER_ACTIVE_FOR_CHAT, SVPreferences.ChatActiveStatus.ACTIVE);
                        thread.addUsers(users);
                        ThreadWrapper threadWrapper = new ThreadWrapper(thread);
                        threadWrapper.metaOn();
                        threadWrapper.usersOn();
                        threadWrapper.pushMeta().subscribe();
                        threadWrapper.push().subscribe();
                        ChatSDK.thread().pushThreadMeta(thread);
                        ChatSDK.thread().addUsersToThread(thread, users);
                        ChatSDK.thread().pushThread(thread);
                        ChatSDK.ui().startChatActivityForID(getActivity().getApplicationContext(), thread.getEntityID());
                    }, throwable -> {
                        ToastHelper.show(getActivity().getApplicationContext(), throwable.getLocalizedMessage());
                    }));
        }

@thecmart any advice?

Followed up by email:
Could you try doing the following:

Delete that thread from Firebase
Delete the app from your test devices
Try again

I expect that at some point the Firebase data got corrupted. Now when you run the code, it’s picking up the cached thread so it’s not updating the remote data.

Unfortunately still no luck, kindly note I have to exclude jetbrains.annotations and apache.commons from ChatSDK implementations as these libraries are already included earlier in the project and not excluding them causing the app to fail to build:
implementation('co.chatsdk.chatsdk:chat-sdk-core:4.6.0') {
        exclude group: 'org.jetbrains', module: 'annotations'
        exclude group: 'org.apache.commons'
    }

idk if that would cause this issues but has to mention that in case you think that would be the cause.

Something else I believe it my be related, when trying to start a new thread with a user for the first time, I'm always getting the user as null and I've to create a user even if the user is already there in the database, that's how I achieve that:
        User user = StorageManager.shared().fetchUserWithEntityID(contactId);
        if (user == null) {
            user = StorageManager.shared().fetchOrCreateEntityWithEntityID(User.class, contactId);
        }
        user.setName(name);
        user.setAvatarURL(imageUrl);

@MuhammedRefaat Is the user a valid contact? In general, to get a user from Firebase you should use the search API. For example:
        Disposable d = ChatSDK.search().usersForIndex(userID, 1).subscribe(user -> {

        }, throwable -> {

        });

@bensmiley when calling the method usersForIndex() I never get the callback, it just performs the call with no results in the subscribe or the throwable, and nothing special appears in the logs.
On the other hand, is getting/creating the user the way I'm doing is a valid one for a perfectly added users to the thread? or there is something I'm missing.

@bensmiley I found the cause, when connecting to the firebase using the command builder.firebaseRootPath(""); we are using a path contains spaces (e.g. "Chat SDK path"), and this causes the firebase to create two different roots in the db, one is regular one with spaces and the other with spaces replaced by 20%, and what happens when creating a thread and assigning users to it, is that the thread is being created twice with all the entries in the regular path with spaces, and a thread with the same name is being created in the other path and contains only the users entry.
My suppose is that, while creating the thread you are providing the required unicode to the url, but when adding the users to this thread, you are not doing that which leads to the spaces to be converted to the equivalent char 20%.
I'm navigating through your code to try find the thread users assignment to firebase path but can't find.

@MuhammedRefaat could you try to use this code:
        User user = ChatSDK.db().fetchOrCreateEntityWithEntityID(User.class, entityID);
        Disposable d = ChatSDK.core().userOn(user).subscribe(() -> {
            // User object has now been populated and is ready to use

        }, throwable -> {

        });

You will need to verify that the user ID is correct because if it's not, currently nothing will happen (we have introduced a fix into the next version so if the user doesn't exist, this will return an error.
As to your second point, the root path cannot have any spaces. I've added a check into the code which means that from the next version, it won't be possible to add spaces or special characters to the root path.

Noted, changed the user get/create to the method you mentioned, and will change the root path to a new one with no Spaces.


HDDS-5511. ContainerStateMap should handle ecReplication config map

What changes were proposed in this pull request?
Continue replacing instances of ReplicationType and Factor with Replication Config in the ContainerStateMap and other impacted classes.
What is the link to the Apache JIRA
https://issues.apache.org/jira/browse/HDDS-5511
How was this patch tested?
Existing tests

@umamaheswararao Thanks for the review comments. I have pushed another commit to address your suggestions. Please have a look once the Ci comes back green.


Update Dataview.mjs - add zoomtoLocation flag

I've had a go at creating the RowDblClick function for zoomToLocation: true flag.
At the moment it returns an error, zoomToLocation is not a valid table constructor.

We cannot add custom feature flags to the Tabulator table config.
The reason why Tabulator warns on custom config is that in the future this may be a viable option within the Tabulator library.

A feature like this should be introduced as a plugin first before this goes into the core.

I commented out the _this.table.zoomToLocation to call the rowDouble click event handler to assign a method. This should be done by a plugin which assigns a method to the tabulatorUtils to be called as rowDoubleClick event.
I also commented out 'selectable' to assign the click method to select.
I added the 'select' method to the tabulator utilities as an example for the zoomToLocation method which you can assign here with a plugin.
The events are defined on the root of the dataview. I added a lookup for tabulator util methods to the check on the events object entries.

I commented the rowSelect method in the select utility method.
    if (typeof _this.rowSelect === "function") {
      _this.rowSelect(e, row);
      return;
    }

a custom select method should either be directly assigned to the events config or as tabulator util through a plugin.

Seeing these two methods being almost the same I added that params being sent to the util.
This allows to extend methods like so:
"events": {
  "rowClick": "select",
  "rowDblClick": {
    "util": "select",
    "zoomToLocation": true
  }
},

The util key/value must be provided to find the util. The entry including the util key/value is provided as second params argument to the utility method identified by the util key.
Params will be provided as string only the events key/value is a string e.g. rowClick: 'select'

Ah I s

@RobAndrewHurst The util key/value must be provided to find the util. The entry including the util key/value is provided as second params argument to the utility method identified by the util key.
Params will be provided as string only the events key/value is a string e.g. rowClick: 'select'

Ah I see!!

@dbauszus-glx Are you waiting for my review before merging?

@RobAndrewHurst Yeah, says review still pending.

@RobAndrewHurst any advise how to lint this PR?

@dbauszus-glx I will provide a step by step today for this!

@dbauszus-glx @simon-leech
I have linted the module.
Does it make sense to also require the "selectable" property on the dataview if the events are present on the dataview anyways?
I know its not required to make the event trigger, but then it just could be an extra step we don't need.

It's just for the highlight. Without the selectable in the table options the row would not highlight on hover.

Yeah understand that!


chore(main): release 0.34.2

:robot: I have created a release beep boop
0.34.2 (2023-06-22)
Bug Fixes

main (cbd1b89)

This PR was generated with Release Please. See documentation.

:robot: Release is at https://github.com/samuele-cozzi/obsidian-marp-slides/releases/tag/0.34.2 :sunflower:


Plan compaction: too many open files

What did you do?
Upgraded from 1.8.2 to v2.1.0
What did you expect to see?
We had remote read configured with both instances running locally.  This migration plan worked fine in lower level environments but once we hit our upper environments with more data we are seeing this on numerous servers.
What did you see instead? Under which circumstances?
We are seeing the error below regarding 'plan compaction' and 'too many files open'
Environment

System information:
Linux 3.10.0-693.11.6.el7.x86_64 x86_64

Prometheus version:

	prometheus, version 2.1.0 (branch: HEAD, revision: 85f23d82a045d103ea7f3c89a91fba4a93e6367a)
  build user:       root@6e784304d3ff
  build date:       20180119-12:01:23
  go version:       go1.9.2

Prometheus configuration file:

---
global:
  scrape_interval: 30s
  evaluation_interval: 30s
rule_files:
- "/etc/prometheus/alert.rules"
scrape_configs:
- job_name: clients
  file_sd_configs:
  - files:
    - "/etc/prometheus/targets/*.json"
alerting:
  alert_relabel_configs: []
  alertmanagers: []
remote_read:
  - url: http://localhost:8080/api/v1/read
remote_write: []

Logs:

Feb 21 14:37:13 foo systemd: Started Prometheus Monitoring framework.
Feb 21 14:37:13 foo systemd: Starting Prometheus Monitoring framework...
Feb 21 14:37:13 foo prometheus: level=info ts=2018-02-21T14:37:13.198972901Z caller=main.go:225 msg="Starting Prometheus" version="(version=2.1.0, branch=HEAD, revision=85f23d82a045d103ea7f3c89a91fba4a93e6367a)"
Feb 21 14:37:13 foo prometheus: level=info ts=2018-02-21T14:37:13.199086548Z caller=main.go:226 build_context="(go=go1.9.2, user=root@6e784304d3ff, date=20180119-12:01:23)"
Feb 21 14:37:13 foo prometheus: level=info ts=2018-02-21T14:37:13.199122061Z caller=main.go:227 host_details="(Linux 3.10.0-693.11.6.el7.x86_64 #1 SMP Thu Dec 28 14:23:39 EST 2017 x86_64 foo (none))"
Feb 21 14:37:13 foo prometheus: level=info ts=2018-02-21T14:37:13.199146388Z caller=main.go:228 fd_limits="(soft=1024, hard=4096)"
Feb 21 14:37:13 foo prometheus: level=info ts=2018-02-21T14:37:13.203382128Z caller=web.go:383 component=web msg="Start listening for connections" address=<IP_ADDRESS>:9090
Feb 21 14:37:13 foo prometheus: level=info ts=2018-02-21T14:37:13.203382182Z caller=main.go:499 msg="Starting TSDB ..."
Feb 21 14:37:22 foo prometheus: level=info ts=2018-02-21T14:37:22.58439072Z caller=main.go:509 msg="TSDB started"
Feb 21 14:37:22 foo prometheus: level=info ts=2018-02-21T14:37:22.585601734Z caller=main.go:585 msg="Loading configuration file" filename=/etc/prometheus/prometheus.yaml
Feb 21 14:37:22 foo prometheus: level=info ts=2018-02-21T14:37:22.586627333Z caller=main.go:486 msg="Server is ready to receive web requests."
Feb 21 14:37:22 foo prometheus: level=info ts=2018-02-21T14:37:22.586711774Z caller=manager.go:59 component="scrape manager" msg="Starting scrape manager..."
Feb 21 14:38:22 foo prometheus: level=error ts=2018-02-21T14:38:22.58487739Z caller=db.go:265 component=tsdb msg="compaction failed" err="plan compaction: open /var/prometheus/v2_data_dir: too many open files"
Feb 21 14:39:24 foo prometheus: level=error ts=2018-02-21T14:39:24.585928979Z caller=db.go:265 component=tsdb msg="compaction failed" err="plan compaction: open /var/prometheus/: too many open files"

Additional information:

# df -h /var/prometheus
Filesystem                      Size  Used Avail Use% Mounted on
/dev/mapper/vg01-lv_prometheus  299G  161G  139G  54% /var/prometheus

We have 35d retention
I have tried setting '--storage.tsdb.max-block-duration=1d'

You need to increase your file ulimit.
It makes more sense to ask questions like this on the prometheus-users mailing list rather than in a GitHub issue. On the mailing list, more people are available to potentially respond to your question, and the whole community can benefit from the answers provided.

one more good entry for the FAQ :)
https://github.com/prometheus/prometheus/wiki/FAQ#error-logs-for-too-many-files-open
@brian-brazil  haven't decided what to with the FAQ page yet. The wiki is so convenient to edit that I will use for now.
also seems the the FAQ on the website and the FAQ for github issues targets different audience.


Scala Hadoop Shred: add ability to filter based on event type

The idea comes from #927 - basically, have a list of event types that you are interested in shredding, which is passed in as a configuration option.
The idea is that a company with 500 event types may only be interested in shredding a subset into dedicated Redshift tables.

@alexanderdean : My basic question was that only, How to define that which event to shred, as a configuration option?

Or filter based on app_id - this is driven by the insight that a Snowplow user may have some apps with huge event volumes (e.g. in-game events, ad impressions) that they want to keep out of Redshift, but some apps with manageable event volumes (e.g. ecomm transactions, admin UI usage) that they want to analyze in Redshift.
Given these various use cases, it would probably be best to support arbitrary filtering logic (JavaScript based?).

dupe of snowplow/snowplow-rdb-loader#59, closing


Publish a new release with at least support of bracketed paste mode and gpt-3.5-16k

Currently the latest release is still at v0.8 which lacks a lot of new features, including:

bracketed paste mode. This would be a very important release which allows user to paste arbitrary text from other sources as long as they are using a popular terminal.
gpt-turbo-3.5-16k. This is a great choice for the balance of price, speed, and long context.

A newer release would definitely very helpful especially for users incapable of installing the rust toolchain to compile the binary.

There will be some important updates in the next few days, so please wait a little longer.


Failure to parse long float

Hi!
I'm using version 0.9.1 from pypi. The following fails:
>>> import toml
>>> toml.loads('x=0.1234567891234567891')
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/home/bertik/.local/lib/python2.7/site-packages/toml.py", line 331, in loads
    value, vtype = load_value(pair[1])
  File "/home/bertik/.local/lib/python2.7/site-packages/toml.py", line 453, in load_value
    parsed_date = load_date(v)
  File "/home/bertik/.local/lib/python2.7/site-packages/toml.py", line 350, in load_date
    tz = TomlTz(val[19:24])
  File "/home/bertik/.local/lib/python2.7/site-packages/toml.py", line 10, in __new__
    self._minutes = int(toml_offset[4:6])
ValueError: invalid literal for int() with base 10: ''

It seems that it is trying to parse a long float as a date.
Shorter floats of course work:
>>> toml.loads('x=0.123456789123456789')
{'x': 0.12345678912345678}

This issue appears to be fixed in the latest version. Can you confirm whether or not it is present in release 0.9.2?
On Mon, Jul 18, 2016 at 05:34:31PM -0700, Norbert Pozar wrote:

Hi!
I'm using version 0.9.1 from pypi. The following fails:
>>> import toml
>>> toml.loads('x=0.1234567891234567891')
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/home/bertik/.local/lib/python2.7/site-packages/toml.py", line 331, in loads
    value, vtype = load_value(pair[1])
  File "/home/bertik/.local/lib/python2.7/site-packages/toml.py", line 453, in load_value
    parsed_date = load_date(v)
  File "/home/bertik/.local/lib/python2.7/site-packages/toml.py", line 350, in load_date
    tz = TomlTz(val[19:24])
  File "/home/bertik/.local/lib/python2.7/site-packages/toml.py", line 10, in __new__
    self._minutes = int(toml_offset[4:6])
ValueError: invalid literal for int() with base 10: ''

It seems that it is trying to parse a long float as a date.
Shorter floats of course work:
>>> toml.loads('x=0.123456789123456789')
{'x': 0.12345678912345678}

You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/uiri/toml/issues/55

Seems to be fixed in 0.9.2:
import toml
toml.loads('x=0.1234567891234567891')
{u'x': 0.12345678912345678}

Thanks for confirming!
Closed as FIXED.


Writing flash data with PSRAM XIP enabled causes MMAP flash read errors

Answers checklist.

[X] I have read the documentation ESP-IDF Programming Guide and the issue is not addressed there.
[X] I have updated my IDF branch (master or release) to the latest version and checked that the issue is present there.
[X] I have searched the issue tracker for a similar issue and not found a similar issue.

IDF version.
v5.3.1
Espressif SoC revision.
ESP32-S3 (QFN56) (revision v0.1)
Operating System used.
macOS
How did you build your project?
Command line with idf.py
If you are using Windows, please specify command line type.
None
Development Kit.
ESP32-S3-DevKitC-1 v1.0
Power Supply used.
USB
What is the expected behavior?
mmap flash reads should return correct data
What is the actual behavior?
mmap read returns garbage randomly. Turning off PSRAM XIP (CONFIG_SPIRAM_FETCH_INSTRUCTIONS & CONFIG_SPIRAM_RODATA) seems to avoid the issue. Perhaps because when PSRAM XIP is enabled (aka SPI_FLASH_CACHE_NO_DISABLE) the regular flash APIs use mutex locking, but the MMAP APIs disable the cache?
Steps to reproduce.
main.c.txt
Debug Logs.
I (1556) example: esp_partition_read deadbeefdeadbeefdeadbeefdeadbeef
I (1557) example: mmap read: ESP-IDF Partition Memory Map Example
I (1659) example: mmap read: ESP-IDF Partition Memory Map Example
I (1759) example: mmap read: ESP-IDF Partition Memory Map Example
I (1859) example: mmap read: ESP-IDF Partition Memory Map Example
I (1959) example: mmap read: ESP-IDF Partition Memory Map Example
I (2059) example: mmap read: ESP-IDF Partition Memory Map Example
I (2138) example: esp_partition_read deadbeefdeadbeefdeadbeefdeadbeef
I (2159) example: mmap read: �������������������������������������

More Information.
partitions_example.csv
sdkconfig.txt

This bug was initially discovered when a call to esp_ota_set_boot_partition() (which uses MMAP flash reads) failed while another thread was writing to to a different partition.

Hi @swilson ,
Thanks for your report. This issue is confirmed.
The cause of the issue is from the flash models: when an erasing/writing is in progress, no read is allowed.
In other modes, the cache is disabled and therefore no read (including from mmap region) will happen simultaneously. However in XIP PSRAM mode, the cache should be kept enabled so that execution from PSRAM can keep going. The problem here is about the regions mmaped to flash. They cannot return correct data but the behavior is not forbidden.
Workaround that you can do for now is to avoid the reading from mmap region and flash erasing/writing concurrently.

on the task that reads: Take a mutex before the mmap and release it after unmap
on the task that writes: Wrap the erasing/writing code with the mutex.

We will provide a mutex in the mmap API - when any one of mmap against flash starts, all flash write/erase will be blocked, until the last flash region is unmaped. This mutex will be used in Espressif APIs automatically. For users,

If they want to avoid flash erase/write during the mmap (Usually when it's a temporary call to read something from flash before unmap), they can make use of the mutex via a flag in mmap API to avoid the problem.
If they want to have a opening mmap that may have flash operation in the middle, they will have to avoid reading from mmap region during flash operations by themselves. Maybe we will provide panic mechanism or some APIs to take the mutex when actually reading from the region. But this is something for the future.


Auto Complete

Issue Type: Feature Request
Auto complete not working
VS Code version: Code 1.62.3 (ccbaa2d27e38e5afa3e5c21c1c7bef4657064247, 2021-11-17T08:00:36.721Z)
OS version: Linux x64 5.11.0-40-generic
Restricted Mode: No

/needsMoreInfo


iOS tools cleanup

Fix flutter install on both device and simulator to refer to the actual
bundle and not just the .generated folder
Fix flutter run on device to actually run vs just installing

Still TODO:

Discovered that isAppInstalled on iOS simulator always reports true,
meaning it'll never actually try to install the app.

Fixes #3947
Fixes #1823

@chinmaygarde @devoncarew

Thank you so much.  So many basic bugs like this left to fix on the iOS side of things.

Looks like the analysis step on travis failed (click the bubble above, or here: https://travis-ci.org/flutter/flutter/builds/132661557)

Yeah - fixing a bug in this, per the note above

Ok @chinmaygarde, ptal

lgtm


Add license and publish

This upgrades docusaurus to 2.0.0-beta.15, add make license (to addlicense to files without license), also publish the site to gh-pages.
Signed-off-by: Dhi Aurrahman<EMAIL_ADDRESS>

Not sure if we need to set anything to make the gh-pages to work.

Go to the setting of this repository
In the "Github Pages" section make sure to have "gh-pages" selected under "Source"

Go to the setting of this repository

In the "Github Pages" section make sure to have "gh-pages" selected under "Source"

Done! Thanks for setting up the CD.

Probably we need to update the baseUrl as well:
https://github.com/imballinst/protosaurus/blob/2f7df68370a109de7b240e0cb9f9e6675f73850f/website/docusaurus.config.js#L14
if GHA environment then "/docusaurus" else "/"

@imballinst I think we need to re-enable the gh-pages? I deleted the remote branch once 😅. Sorry.


build errors

When I build this, it shows error:
"[ 82%] Linking CXX executable leveldbutil
/usr/bin/ld: cannot find -ldpdk: No such file or directory
/usr/bin/ld: cannot find -lrte_fib: No such file or directory
/usr/bin/ld: cannot find -lrte_mempool_bucket: No such file or directory
/usr/bin/ld: cannot find -lrte_rib: No such file or directory".
I wonder if it is because this version no longer fits well with the newest spdk and I wonder how can I fix this problem?

It seems some of the dependencies are not installed or they might be no longer included in SPDK.
Unfortunately, I haven't used SPDK in years, so I don't know about the recent status.
Please check the link flags in CMakeLists and change it to work for your environment.

Thank you.


Error at Setting heating  Curve Parameter

I get the following error during setting the entity heating curve.
This occurs for any number I choose.
Version: v0.8.18
Logger: homeassistant.components.websocket_api.http.connection
Quelle: components/websocket_api/commands.py:245
Integration: Home Assistant WebSocket API (Dokumentation, Probleme)
Erstmals aufgetreten: 12:57:18 (10 Vorkommnisse)
Zuletzt protokolliert: 13:13:16
[139627155162592] Unexpected exception
[139626455674896] Unexpected exception
[139626804070000] Unexpected exception
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/components/websocket_api/commands.py", line 245, in handle_call_service
response = await hass.services.async_call(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/core.py", line 2761, in async_call
response_data = await coro
^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/core.py", line 2804, in _execute_service
return await target(service_call)
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 996, in entity_service_call
single_response = await _handle_entity_call(
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 1068, in _handle_entity_call
result = await task
^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/components/number/init.py", line 122, in async_set_value
await entity.async_set_native_value(native_value)
File "/config/custom_components/mypyllant/number.py", line 211, in async_set_native_value
await self.coordinator.api.set_circuit_heating_curve(self.circuit, value)
File "/usr/local/lib/python3.12/site-packages/myPyllant/api.py", line 1551, in set_circuit_heating_curve
await self.aiohttp_session.patch(
File "/usr/local/lib/python3.12/site-packages/aiohttp/client.py", line 787, in _request
await raise_for_status(resp)
File "/usr/local/lib/python3.12/site-packages/myPyllant/http_client.py", line 72, in on_raise_for_status
raise e
File "/usr/local/lib/python3.12/site-packages/myPyllant/http_client.py", line 69, in on_raise_for_status
response.raise_for_status()
File "/usr/local/lib/python3.12/site-packages/aiohttp/client_reqrep.py", line 1121, in raise_for_status
raise ClientResponseError(
aiohttp.client_exceptions.ClientResponseError: 400, message='Bad Request, response was: {"type":"about:blank","title":"MalformedRequestParameters","status":400,"detail":"Value for field 'setPoint' must not be null","instance":"/systems/56ef803a-a577-4039-9536-6a56ee07f4f1/circuits/0/heating-curve"}', url='https://api.vaillant-group.com/service-connected-control/vrc700/v1/systems/56ef803a-a577-4039-9536-6a56ee07f4f1/circuit/0/heating-curve'

I don't have a VRC700 controller, so I don't know what setPoint is supposed to be exactly in the context of the heating curve. Could you try reverse engineering to find out what values are being sent for VRC700 systems when updating the heating curve? I suppose it could be either the min flow temperature setpoint, or the max outdoor temp for heating.


User @ Mentions

If I use the in-browser GUI editor to create or modify a DevOps wiki page, I can @ mention a user (e.g. @Jake Pearson) and it makes a link to their account and sends them an email notification. When I manually pull down the Git repo that represents the wiki, I can see the raw user ID (e.g. @<1601DE0C-4613-60D7-A201-537155816713>) instead of the @ mention in the created wiki page implying that the GUI is doing some sort of call on the backend to change a manual @ mention into that GUID.
When I use wiki.client.CreateOrUpdatePage(...) to push a string containing a user's ID (e.g. @Jake Pearson), no linking occurs. When I push the GUID, the page displays with the raw GUID instead of the nice @Jake Pearson. Is there a flag or something I need to flip in the wiki.client to make this work? Or is it simply not possible via the API?

@jessemillar , you can find some information in this api in the official REST docs, although I don't think it covers this scenario.  I recommend using Fiddler to capture REST traffic while doing the operation using the web browser.  This should give you more details about the specific request.  I will also contact the team that owns this API, and see if they can chime in.

@jessemillar Ideally linking should happen for @mentions while using the Wiki Rest Api.
Please note that you should use @GUID  instead of @person-name syntax.
Also make sure that the GUID you are using is valid, we can verify validity of GUID by inserting it into a wiki page and checking if the expected @person-name appears in the preview. If you are still viewing the raw Guid then that Guid might be invalid.
We were not able to repro the issue from our side. If you want us to investigate into this further then please share your account details.


Persist the list of cloned repo's

Suggested new feature or improvement
I really like the fast onboarding of repo's. Keep the list of cloned repo's persistent after the fact. That way I can see which repo's I have cloned already.
Scenario
Machine configuration -> Clone Repositories -> Add Repository
Maintain the list of repo's I've cloned earlier.
Additional details
No response

PR for thsis fix is here: https://github.com/microsoft/devhome/pull/668


Mac Godot not working on monitor

Mac OS Sierra | Godot V2.1.2 stable
*Issue
Upon opening godot for the first time, after creating a project, I was greeted with the weirdest screen possible. Upon further inspection, I realized that my godot screen was scaled up by about 4 times, so I was just seeing one of the corners, making this software unusable. All help would be vastly appreciated.
To reproduce,
Open Godot on a Macintosh laptop connected to an ASUS HDMI monitor.
Create a new project, and open it.
Here is what my screen looks like afterwards...

Are you opening it on your external monitor? I had the same issue, quick fix for me was to open it on the laptop screen (might require changing that screen to default while you do it) then move it to the external one.

I am opening it on my external monitor. Sadly, your recommended method was unsuccessful.

I am having the same problem. Moving it from the laptop to the external monitor did not fix it. It seemed to be confused about the resolution and size of application when it was moved over.

Yeah. It is very annoying.

Duplicate of #5688.


swarm mode : docker node update" requires exactly 1 argument(s)

Currently docker node update accepts one host at a time. Would be nice if docker node update can accept an array of nodes.
If someone wants to add same node label to a cluster of hosts , as per current specification it has to run one at a time.
docker version
Client:
Version: 1.12.3
API version: 1.24
Go version: go1.6.3
Git commit: 6b644ec
Built:
OS/Arch: linux/amd64
Server:
Version: 1.12.3
API version: 1.24
Go version: go1.6.3
Git commit: 6b644ec
Built:
OS/Arch: linux/amd64

For your scene, I think supporting multiple node update is really useful. However some attributes could not be updated at the same time. It is worth more discussing.

Option - 1
It would be nice to have a flag for updating multiple nodes.
This additional flag will not  work with those attributes, which might cause issue with multiples nodes update.
Option - 2
By default docker node update can run on/accept multiple nodes.
additional flag to update certain attributes which only can be run on one node at a time.


Fix #882 Text stretching when scrolling

I think the patch fixed both the issue and the bug that the cursor blinks while scrolling.
I checked blinkcursor and non-blinkcursor behavior for DVTSourceTextView and IDEPlaygroundTextView for Xcode7.2.1 and OS X 10.10.5(Yosemite).

Can you explain what is the actual cause of the text stretching problem? I need it not to reproduce this again.

I'm afraid I have not understood the actual cause of the stretching problem.
What I can say is some knowledge.

The cause of both the cursor blink problem while scrolling and cursor darkening problem is bezierPathWithRect(check 97e8b2d13661ba4417af5038aec3e8d903574480).

Watch out for saveGraphicsState and restoreGraphicsState.

The idea of the separation for IDEPlaygroundTextView and DVTSourceTextView looks good.

I'm sorry for my poor explanation.

This commit is causing a crash in the following situation.

Create a text field with the contents (name it test.m):

three
one
two
three

Open test.m in code
Visual select the first three lines (don't use line select, press vjjll)
Cut with command-x
Crash

@ksuther
Thank you for your feedback.
I reproduced the issue.
my crash log:
https://gist.github.com/pebble8888/a0062eaaa494297d7db2
When you use command-x, Xcode seems to redraw before the insertion point is repositioned.
I will send a patch.

I fixed the crash bug at fix_882_4 branch (d2dec5b1).
But I feel it still has a problem.


Allow "const" option on PHP <7.1

This allows passing const to option elements in rulesets without runtime check like in #4943. It's also consistent with the fact that most fixers don't throw exceptions when passed allowed values that don't make sense (e.g. passing an empty array to that option).

Thank you @julienfalque.


mapbox upload set name from filename rather than tileset id

mapbox upload user.tilesetid file.geojson
without the --name option I think it's better to use file as the Tileset name rather than the current tilesetid. tilesetid is usually a random string and defaulting to file seems to make more sense.

@andrewharvey The CLI was designed specifically to use TILESET as the basis for naming, based on the feedback that keeping tileset name and id consistent was a high priority for our users.
Keeping tileset names consistent with the original filenames is certainly possible with some scripting. But it's not a goal of this project or a high priority for most use cases.
Because current users rely on the behavior of extracting the name from the TILESET, implement ing this change would breaking existing scripts. I'm inclined to keep the existing behavior as a result.


Update CBO app to read FHIR extension for gender identity and sexual orientation

In the referral dialog box, the patient demographics section - update the code to read FHIR patient extension for gender identity and sexual orientation instead of hardcoded data.

Private Zenhub Image

Private Zenhub Image


staticDir with addition headers

Discussed in https://github.com/HapticX/happyx/discussions/222

Originally posted by derekdai December 19, 2023
How can I add more headers for staticDir? I tried with middleware + outHeaders but no use.

@derekdai
Since latest commit you can use:
serve "<IP_ADDRESS>", 5000:
  staticDir "/testdir"

  middleware:
    outHeaders["x"] = "y"


fix: Emit sentenceEvents on both app and app.signalk

This fixes a bug where sentenceEvents were emitted only on
app.signalk, but the toStdout configuration only allowed us to listen
on app. This fixes it by emitting on both, as discussed on Slack
earlier today.

The easiest option was renaming it to app, which is what I did. I'm not sure we need that layer of indirection here, it's not even configurable at the moment (will it be at some point?).

This is perfectly ok, thanks.


Allow recycling of large/small steel pulleys

Large/small pulley + scrap bowl = Crucible with scrap steel
Edit: If you do not want me to post suggestions here please let me know. Thanks

Hey @bpskotch, that kind of content relates to https://github.com/twohoursonelife/OneLifeData7/
Please use the suggestions channel in discord for making a suggestion, I would recommend discussing in a channel like general before hand.


html_dom docs created

What is the change?
HTML DOM docs
Related issue?
closes: #82
Checklist:
Before you create this PR, confirm all the requirements listed below by checking the checkboxes [x]:

[x] I have followed the Code of Conduct.
[x] I have  checked there aren't other open Pull Requests for the same update/change.
[x] I have you tested the code before submission.
[x] I have commented my code, particularly in hard-to-understand areas.
[x] My changes generates no new warnings.
[x] I'm HSOC'22 contributor.

Screenshots (if any)

@girija0707 @purva2906 can u please check my pr


docs: Add Dagger shell docs

This draft is heavily based on https://github.com/dagger/dagger/pull/8611.
Some pending questions:

How do we position this feature vs. our existing content on shell scripting disadvantages? When should a user reach for this (and when not)?
Should we add a Shell tab equivalent to all existing function code snippets?

If yes, is there any functionality that cannot be replicated?

Should we add a new Shell tab for all existing dagger call commands, showing the dagger shell version?

If yes, should this be shown in interactive or non-interactive modes?

Note this is different from the previous question as it's invoking functions, not writing them

I like it, I knew you were going to see this differently and I trust your taste more than mine for those things.


add ackermann_msgs as a dependency to vesc_ackermann

You can probably close this - turns out ackermann_msgs is already in vesc_ackermann's package.txt. I couldn't get this to build on Ubuntu 18.04 (not technically supported by ROS2, I know) without adding it explicitly in CMakeLists, but now it seems to compile fine without any changes, so I probably had some kind of unrelated issue.


Add FFTW3 package

Website: http://www.fftw.org/
GitHub: https://github.com/FFTW/fftw3
FFTW3 has a CMake build system since its last release. It offers multiple options at build time:

ENABLE_FLOAT, ENABLE_LONG_DOUBLE, ENABLE_QUAD_PRECISION (mutually exclusive). This sets the floating point precision to use. The resulting library will be suffixed with f, l, q respectively. I'm not sure how to provide this option through Hunter for the user. Should we just offer multiple packages (fftw3, fftw3f, fftw3l and fftw3q) the way Ubuntu does it?
ENABLE_SSE, ENABLE_SSE2, ENABLE_AVX, ENABLE_AVX2. These enable support for the respective instruction sets. Should we call hunter_check_toolchain_definition to detect support and enable the options accordingly?
ENABLE_OPENMP, ENABLE_THREADS (pthreads) enable multi-threading support. They're mutually exclusive and will result in a _omp or _threads suffix. How should this option be exposed to the user?

I'm not sure how to provide this option through Hunter for the user

See https://github.com/ruslo/hunter/wiki/example.custom.config.id#custom-cmake-options

Should we just offer multiple packages

Don't know all functionality details but I don't think so.

Should we call hunter_check_toolchain_definition to detect support and enable the options accordingly?

hunter_check_toolchain_definition is a helper to analyze toolchain. Toolchain (compiler, flags) provided by user. If that is what is expected then yes, it can be used.

How should this option be exposed to the user?

By CMAKE_ARGS, see above.

Thanks for pointing me in the right direction. Will the CMAKE_ARGS solution work with the binary cache servers? I guess only the default option will be available cached?

Will the CMAKE_ARGS solution work with the binary cache servers? I guess only the default option will be available cached?

You can add default CMAKE_ARGS in hunter.cmake:

https://docs.hunter.sh/en/latest/creating-new/create/cmake.html#cmake-options

These options will be used while testing and uploading. You can add more examples with different CMAKE_ARGS and add them to testing matrix, e.g.:

https://github.com/ruslo/hunter/blob/78c5d57868ebe622f08ab1fb4334b2d3e9f877a5/examples/OpenCV-extra/config.cmake#L1-L9
https://github.com/ruslo/hunter/blob/78c5d57868ebe622f08ab1fb4334b2d3e9f877a5/examples/OpenCV-extra/CMakeLists.txt#L5

I can't find any documentation on how to specify components, but I guess I'll be able to learn about it by reading the existing packages' scripts.

What exactly do you mean by term "components"? As far as I can see you're talking about different targets so it purely about CMake code of the package. The hunter_add_package(... COMPONENTS ...) feature used only for non-CMake build schemes. At this moment it's used only in Qt and Boost.

What exactly do you mean by term "components"?

Yes, I'm talking about the hunter_add_package(... COMPONENTS ...)  feature. As far as I understand the source code, the COMPONENTS option simply includes subdirectories' hunter.cmake files, so hunter_add_package(foo COMPONENTS bar) will include projects/foo/hunter.cmake and projects/foo/bar/hunter.cmake.
Using CMAKE_ARGS is not enough because users may want e.g. fftw3f and fftw3l side-by-side, but FFTW's CMakeLists.txt only allows building one of those at a a time. So I think components are the way to go here. I guess we'll need a layout like this:
./projects/fftw3
├── fftw3
|   ├── hunter.cmake
├── fftw3f
|   └── hunter.cmake
├── fftw3l
|   └── hunter.cmake
├── fftw3q
|   └── hunter.cmake
└── hunter.cmake

Each subdirectory's hunter.cmake would look something like this, but differ in the supplied CMake args and the PACKAGE_NAME:
include(hunter_add_version)
include(hunter_pick_scheme)
include(hunter_download)
include(hunter_cacheable)
include(hunter_cmake_args)

hunter_add_version(
    PACKAGE_NAME fftw3
    VERSION "3.3.7"
    URL "http://www.fftw.org/fftw-3.3.7.tar.gz"
    SHA1 2ae980a8d44c161ce4a09c6e2d1c79243ecbabb2
)

hunter_cmake_args(fftw3 CMAKE_ARGS
    BUILD_TEST=OFF
#  ENABLE_FLOAT=ON
#  ENABLE_LONG_DOUBLE=ON
#  ....
)

hunter_pick_scheme(DEFAULT url_sha1_cmake)
hunter_cacheable(fftw3)
hunter_download(PACKAGE_NAME fftw3)

Is there a way to avoid the source archive to be downloaded multiple times?

Yes, I'm talking about the hunter_add_package(... COMPONENTS ...) feature

As I said before this feature is for non-CMake builds only, it's not our case as far as I understand.

users may want e.g. fftw3f and fftw3l side-by-side

If there is only one archive with sources then it's a one package. If there are sources for fftw3f and fftw3l and there is no intersection in installed files then it's simply two different packages which can be installed by hunter_add_package(fftw3f) and hunter_add_package(fftw3l). And again, there is no need for COMPONENTS as you see.

As I said before this feature is for non-CMake builds only, it's not our case as far as I understand.

It's only used in non-CMake builds right now, but couldn't it be useful for CMake builds as well?

If there is only one archive with sources then it's a one package.

There's only one archive with sources, but it only supports building one version of the library at a time. So if we wanted fftw3f and ffwt3l we'd still need a custom scheme to invoke CMake configure/build/install steps multiple times with different CMAKE_ARGS.

If there are sources for fftw3f and fftw3l and there is no intersection

There is an intersection of installed files, include/fftw3.h.
So none of the ways we've discussed so far appear to be a good solution. Maybe the cleanest way is to patch upstream's CMakeLists.txt so it can build all versions at once and have multiple targets?

it only supports building one version of the library at a time

It means this feature should be introduced by package itself.

There is an intersection of installed files, include/fftw3.h

Then it's the same package

Maybe the cleanest way is to patch upstream's CMakeLists.txt so it can build all versions at once and have multiple targets?

Yes.

Great, I'll work on getting a PR ready to submit upstream. 👍 Thanks for your help.

I've created a fork if you need a temporary place for experiments/hosting release archives:

https://github.com/hunter-packages/fftw3

We can remove it when feature will be available upstream.
@lukas-w see https://docs.hunter.sh/en/latest/creating-new/patch.html


[Bug]: returning address of memory associated with a stack variable.

I saw this error when building with clang:
/Users/etiotto@ca.ibm.com/Source/onnx/onnx-mlir/src/Compiler/OnnxMlirCompiler.cpp:45:10: warning: address of stack memory associated with local variable 'val' returned [-Wreturn-stack-address]
  return val.c_str();

@etiotto Is this being addressed?

I see it is being addressed by #1210


Opal API - Array Format Input

Updated POST method for Opal data to accept data input as array format as well as key value dictionary.
Also added a placeholder GET method for Opal data, however this will only be functional once https://github.com/ImperialCollegeLondon/gridlington-datahub/pull/61 has been merged since .to_json() isn't compatible with the multiple 'N/A' columns.
Closes https://github.com/ImperialCollegeLondon/gridlington-datahub/issues/50
You can test this new functionality by running the server with uvicorn datahub.main:app --reload
And using this dummy data:
{
    "array": [
        1,
        8.58,
        34.9085,
        34.9055,
        16.177,
        7.8868,
        15.1744,
        3.3549,
        0,
        0,
        0,
        0,
        0,
        0,
        0,
        16192.8871,
        16194.8348,
        -0.5713,
        -0.8467,
        16.2002,
        9.0618,
        0.2806,
        -2.1328,
        0,
        0.7931,
        0.0522,
        0.0522,
        34.8373,
        34.8343,
        0,
        0,
        30.801,
        30.801,
        28,
        5,
        63,
        72,
        0,
        303,
        7230,
        3.774,
        3.774,
        510,
        2,
        34
    ]
}

Aha! Link: https://imperial-college-ict.aha.io/requirements/RSE-141-19

Another thing I forgot to mention is we need tests for the API functions themselves.
Have a look into https://fastapi.tiangolo.com/tutorial/testing/


Make chart stop after contract ended

Changes Unknown when pulling f045862238d3b0042f113937f16795d04529e175 on qingweibinary:qingwei/purchase_chart_should_end into ** on binary-com:master**.

Changes Unknown when pulling 5a15999cb51c33b9a33ad667dadcb07228d575b7 on qingweibinary:qingwei/purchase_chart_should_end into ** on binary-com:master**.


Link to paragraph
https://dbalague.pages.ewi.tudelft.nl/openlabook/Chapter7/Orthogonality.html#fig-ortho-orthodecomp
What type of applet is this?
Interactive applet 3D
What state is the static image?
Yes, Dennis has created a static image
Static image

Requirements
none
What elements are interactive?
Must be 3D and rotateable.
Does this issue relate or depend on other issues?
No response

change v to matchcal v


Add pod level annotations, app level annotations.

Depend on several PRs:
https://github.com/kubernetes-incubator/rktlet/pull/24 (which depends on https://github.com/coreos/rkt/pull/3205)
https://github.com/coreos/rkt/pull/3225 (which adds --format=json to rkt status, and add annotations, started_at field in the json).

Updated the PR.
Ready to go once https://github.com/coreos/rkt/pull/3205 and https://github.com/coreos/rkt/pull/3224 are merged :)

Merging this to unblock work about adding isolator support.


business friendly character creator

Hi
i was wondering if you know the file that has the full business friendly character creator (like how we did it on the LVM back on vyond). (men [fat, thin,kid] & woman [fat, thin,kid]) with all of the customization (can't change the fats closes).
i wanted to know so i can finish off my version of the GoAnimate Wrapper for me and my friend (keeping it small) and continue making content with both the retired themes and  business friendly
Can you tell me the full file or show me how i can change the closes when i make a fat person?
Regards
John

Hi.  I'm not getting what you're saying.  All the character body parts are included in every theme (i.e. heavy, default for Business Friendly).  What you can do is add &bs=heavy at the end of the URL when you're in the Business-Friendly character creator.


[RTL Styling] fix arrows

What kind of changes does this PR include?

Minor content fixes (broken links, typos, etc.)
Translated content

Description
reverse svg arrows using transform: rotateY(180deg);  on rtl style

Look good now, but I never test previous page arrow, ... be make sense to reverse it too.


Port blackhole to Visual Studio 2017

blackhole does not build with Visual Studio 2017. (I haven't tired it yet, but my educated guess is, other Visual Studio compiler won't work either.)
More or less a prerequisite for implementing this issue are #186 and #188.

@3Hren: I pushed my changes to my repo. It would be great, if you could already a look at it.
Primary what is left do are some cleanups. Especially I want to replace reoccurring constructs like the one below with calling a function, which does this only one time for each system function. In total I had to do this for 4 system functions.
#ifdef _MSC_VER
    ::gmtime_s(&tm, &time);
#else
    ::gmtime_r(&time, &tm);
#endif


Enable diagnosis key upload to backend

** Depends on PR #25 **

Integrate TAN retrieval into transaction
Request permission for key retrieval from user
Trigger transaction to upload keys

please merge in dev to make the pipeline run again. sorry for the inconvenience :)


Resolver test/debug cleanup

This is several small things salvaged from abandoned PRs and implemented on top of #7011
In working on this I noted that the prop tests are very sensitive to whether backtrace are turned on. Maybe we should set that env to 0 for that builder?

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

@bors: r+

Maybe we should set that env to 0 for that builder?

Sounds reasonable to me!

:pushpin: Commit cb95f5ef7c7203213a82e7b29b6612c1ae4ca440 has been approved by alexcrichton

:hourglass: Testing commit cb95f5ef7c7203213a82e7b29b6612c1ae4ca440 with merge 37cb9bbe2428e8d591d42673ef5562ca3ca92c55...

:sunny: Test successful - checks-travis, status-appveyor
Approved by: alexcrichton
Pushing 37cb9bbe2428e8d591d42673ef5562ca3ca92c55 to master...


Show/hide programmatically a message below a field in dialog

Dear @volkanceylan,
I've successfully modified a dialog in order to add a toast after a value change on a select in the following way:
form.MyField.ChangeSelect2(e =>
{
Q.NotifyWarning("bla bla);
});
I was wondering if there is instead a way to show/hide a message (below?) such field...something like a div or a label...the simplest one!
Thanks for your support

You can create a div
J("").appendTo(form.MyField.Element.Closest())
Then use that div to show message but don't know if it's what u want. Bootstrap has something like callout etc.

It's fine!
Then to programmatically show/hide the element the smart thing to do is to assign an Id to the div and then referencing with "this.ById()" and then Show() or Hide() ?
Or it better to add and remove the div everytime?
Thanks again

I'd choose to show and hide but not much difference. Anyway dont need ID for that div, just save reference in a private variable while creating.

Perfect!
Thanks very much!


Near tether line style does not match the HoloLens shell

(Ported to GitHub, reference 21020620)
The tether in the shell is a dotted line, however in MRTK it is a solid line.
Tether in shell:

Tether in MRTK:

Resolved by #4526
Merged for RC2 release.


bolt_task agent is unable to download tasks containing multiple files

I did bolt task using Ruby TaskHelper module. Here are task details:
$ mco tasks --detail spd::query_exporter
Retrieving task metadata for task spd::query_exporter from the Puppet Server

spd::query_exporter - Query values from prometheus exporter

Task Parameters:
  metrics                        Metrics to fetch (Optional[Variant[String[1], Array[String]]])
  url                            Exporter URL to query (String[1])

Task Files:
  query_exporter.rb              2152 bytes
  ruby_task_helper/files/task_helper.rb 1619 bytes
  spd/files/task_helper.rb       503 bytes

When trying to execute this task I hit into following issue:
 Could not download task file: Errno::ENOENT: No such file or directory @ rb_file_s_rename - (/tmp/tasks_ruby_task_helperfilestask_helper.rb20191119-108923-12rsdll, /opt/puppetlabs/mcollective/tasks-cache/e07ab8a82c450803abc67439f0f3145e7e80bcf9ee038f7399c7ebc55a360cae/ruby_task_helper/files/task_helper.rb)

Here is choria-mcorpc.log content related:
I, [2019-11-19T19:04:33.665514 #108923]  INFO -- : config.rb:164:in `loadconfig' The Marionette Collective version 2.20.7 started by /usr/bin/choria_mcollective_agent_compat.rb using config file /etc/
puppetlabs/mcollective/choria-shim.cfg
I, [2019-11-19T19:04:34.460804 #108923]  INFO -- : tasks_support.rb:689:in `download_files' Downloading 3 task files
E, [2019-11-19T19:04:34.662913 #108923] ERROR -- : tasks_support.rb:705:in `rescue in block in download_files' Could not download task file: Errno::ENOENT: No such file or directory @ rb_file_s_rename - (/tmp/tasks_ruby_task_helperfilestask_helper.rb20191119-108923-nrh1xu, /opt/puppetlabs/mcollective/tasks-cache/e07ab8a82c450803abc67439f0f3145e7e80bcf9ee038f7399c7ebc55a360cae/ruby_task_helper/files/task_helper.rb)
E, [2019-11-19T19:04:34.841060 #108923] ERROR -- : tasks_support.rb:705:in `rescue in block in download_files' Could not download task file: Errno::ENOENT: No such file or directory @ rb_file_s_rename - (/tmp/tasks_ruby_task_helperfilestask_helper.rb20191119-108923-12rsdll, /opt/puppetlabs/mcollective/tasks-cache/e07ab8a82c450803abc67439f0f3145e7e80bcf9ee038f7399c7ebc55a360cae/ruby_task_helper/files/task_helper.rb)
E, [2019-11-19T19:04:34.941428 #108923] ERROR -- : agent.rb:108:in `rescue in handlemsg' bolt_tasks#download failed: RuntimeError: Could not download task file: Errno::ENOENT: No such file or directory @ rb_file_s_rename - (/tmp/tasks_ruby_task_helperfilestask_helper.rb20191119-108923-12rsdll, /opt/puppetlabs/mcollective/tasks-cache/e07ab8a82c450803abc67439f0f3145e7e80bcf9ee038f7399c7ebc55a360cae/ruby_task_helper/files/task_helper.rb)
E, [2019-11-19T19:04:34.941578 #108923] ERROR -- : agent.rb:109:in `rescue in handlemsg' /opt/puppetlabs/mcollective/plugins/mcollective/util/tasks_support.rb:711:in `rescue in block in download_files'
        /opt/puppetlabs/mcollective/plugins/mcollective/util/tasks_support.rb:696:in `block in download_files'
        /opt/puppetlabs/mcollective/plugins/mcollective/util/tasks_support.rb:691:in `each'
        /opt/puppetlabs/mcollective/plugins/mcollective/util/tasks_support.rb:691:in `download_files'
        /opt/puppetlabs/mcollective/plugins/mcollective/agent/bolt_tasks.rb:18:in `block in <class:Bolt_tasks>'
        /opt/puppetlabs/puppet/lib/ruby/gems/2.5.0/gems/choria-mcorpc-support-2.20.7/lib/mcollective/rpc/agent.rb:86:in `handlemsg'
        /usr/bin/choria_mcollective_agent_compat.rb:150:in `block in dispatch'
        /opt/puppetlabs/puppet/lib/ruby/2.5.0/timeout.rb:93:in `block in timeout'
        /opt/puppetlabs/puppet/lib/ruby/2.5.0/timeout.rb:33:in `block in catch'
        /opt/puppetlabs/puppet/lib/ruby/2.5.0/timeout.rb:33:in `catch'
        /opt/puppetlabs/puppet/lib/ruby/2.5.0/timeout.rb:33:in `catch'
        /opt/puppetlabs/puppet/lib/ruby/2.5.0/timeout.rb:108:in `timeout'
        /usr/bin/choria_mcollective_agent_compat.rb:145:in `dispatch'
        /usr/bin/choria_mcollective_agent_compat.rb:174:in `<main>'

interesting, yeah I think when I did the task support the specification didnt yet allow multiple files in a task

I'm hitting this with this module: odoo.
The choria-audit log shows (reformatted for readability):
[
  {
    "filename": "database_delete.sh",
    "sha256": "27cf85fc65b33bd3492e0188533d4a25d67cd810d91f61b4baf6e89cc675539a",
    "size_bytes": 140,
    "uri": {
      "path": "/puppet/v3/static_file_content/modules/odoo/tasks/database_delete.sh",
      "params": {
        "environment": "production",
        "code_id": "cf812ee55e84bf63a0b8ee4a08b2c3fad26dc313"
      }
    }
  },
  {
    "filename": "odoo/files/database-delete.py",
    "sha256": "deffdfa89fac5e02d689d26ae43c933e47cb10ea12d56dd6c72184043bc56f25",
    "size_bytes": 96,
    "uri": {
      "path": "/puppet/v3/static_file_content/modules/odoo/files/database-delete.py",
      "params": {
        "environment": "production",
        "code_id": "cf812ee55e84bf63a0b8ee4a08b2c3fad26dc313"
      }
    }
  }
]

database_delete.sh is the script in the tasks directory, it always worked.  The other file was added more recently while improving the module.  It is in the files directory and is listed as a "dependency" in tasks/database_delete.json.  The size and sha256 or the correct ones.  Note however how one file has no path information and the other has module/directory/filename.
In the puppetserver log, I can see this file being successfully transferred:
2607:5300:201:3100:0:0:0:ec8 - - [17/Dec/2020:20:32:34 -0500] "GET /puppet/v3/static_file_content/modules/odoo/files/database-delete.py?environment=production&code_id=cf812ee55e84bf63a0b8ee4a08b2c3fad26dc313 HTTP/1.1" 200 96 "-" "Choria version 0.19.0 http://choria.io" 6 -

More investigation needed (next week probably), I suspect the file is downloaded to a "wrong" location which cause problem after.

Ok thanks. I think multiple files was added to the spec after I implemented the bolt support. I anticipated they would support multiple files but behaviour was undefined then no doubt we have some bugs around there to fix.

thank you @smortex


Work around an issue where Tentacle configuration, startup and removal cannot be isolated in integration tests for Tentacle < 8.1.284

Background
Work around an issue where Tentacle configuration, startup and removal cannot be isolated in integration tests for Tentacle < 8.1.284
This can lead to tests colliding and failing due to misconfiguration or incorrect startup/failure of Tentacle.
Timings before the change

Timings after the change

How to review this PR

Quality :heavy_check_mark:

Pre-requisites

[ ] I have read How we use GitHub Issues for help deciding when and where it's appropriate to make an issue.
[ ] I have considered informing or consulting the right people, according to the ownership map.
[ ] I have considered appropriate testing for my change.

[sc-67415]


Update README.md

In Reference to AMLNG-131
Please Review:
@lsemesky
@akonsowski
@seenusuvarna
@J-Fid
To see live version
https://github.com/aml-development/ozp-backend/blob/documentation/README.md

:+1:


remove reference temperature in virtual DSE

This will make SurfaceFluxes work again. Also bumps patch version.

Noted, thanks!


Python: increase execution timeout

The default timeout for executing a query in the Python SDK is 5 min. This may be too short a default for dagger.
What are the timeouts in other SDKs?

Go?
Nodejs?

Is 30 mins good, or too much? What should we converge on @sipsma?
This was hit by a user doing a build.

You can already configure the timeout, I'm just wondering about the default. httpx's default is 10 sec and I pushed it to 5 min but that's too short for dagger. I can default to None so there's no timeout.

To be clear this timeout is for each query, not the whole build or connection.

I ran into this when trying to create a GKE cluster with Dagger today. I agree that it should be either forever or a lot longer than 5 minutes. It also wasn't super clear what had happened because in my case it just said CANCELED in the container with no other indication that we had actually hit Dagger's timeout. It should be somehow communicated better that Dagger is the one doing this cancellation

In async, the same execution_timeout is being used both for the event loop waiting on the async task and for the http connection.
You make a good point, I'll improve the error message to make it clear how you can change it, but I'm also thinking on defaulting to not timeout by default, which means you'd need to explicitly set one so the error message will be just a reminder.

defaulting to not timeout sounds great!

I run a long ansible playbook in a single exec, and seems like this is the cause for the Canceled that happened during the run. Would love to see the PR get merged soon so I can start using dagger.

I run a long ansible playbook in a single exec, and seems like this is the cause for the Canceled that happened during the run. Would love to see the PR get merged soon so I can start using dagger.

FYI, this just changes the default behavior. You can update it yourself already, a variable already exists in dagger python SDK. You don't need that PR to do it.
When you create your dagger config, specify execute_timeout value
config = dagger.Config(log_output=sys.stderr, execute_timeout=300) # 300 is the default currently

Either specify None to make it run forever
config = dagger.Config(log_output=sys.stderr, execute_timeout=None)

or some arbitrarily long timeout that you like:
config = dagger.Config(log_output=sys.stderr, execute_timeout=9999)

The only thing that PR would do is make
config = dagger.Config(log_output=sys.stderr # nothing specified here for execute_timeout)

have Forever instead of 300 as the default behavior. Nothing's stopping you from explicitly specifying that now.

That's already been done but you have to see the latest version: https://dagger-io.readthedocs.io/en/latest/connection.html

Not sure how I missed the options when I tried looking through the suggestions functions from the IDE, but having proper documentation is even better. Thanks for the helps.


[Test] Save local model path in PEFT adapter config

It was pointed out in #2025 that the one-liner AutoModelForCausalLM.from_pretrained(model_id) doesn't work for our models trained with LoRA (instead you need to call AutoModelForCausalLM.from_pretrained on a hub model followed by PeftModel.from_pretrained on the LoRA-trained model). This is a demo of saving the checkpointer's directory as part of our adapter_config.json file which should enable this to work.
Edit: after discussing with @pbontrager this won't integrate well with e.g. push to hub since it assumes a local path. So I'm not sure we want to actually land this as is, the better solution may be to make some changes to tune download.

Closing since this is handled (much more nicely) in #2074


Default the currency in the Settings > Moderation tab to use the user's local currency

Currently, it's defaulting to BTC even though my local currency is USD.

When you say local currency, how is that determined?

From the user's settings.

Ok. I though you were saying auto detect it from the user's computer.


AudioEffectPitchShift: Fix distortion when pitch is 1.0

Fixes #96510
I believe the issue was some kind of double to float precision error.
It only occurred when changing the pitch_scale to a value different from 1.0 and then back to 1.0 (from GDScript or the inspector), but not by default or when hard-coding it to 1.0 in C++.
The project I used for testing:
pitch-shift-bug.zip
Toggling the effect on and off should no longer yield any audible difference.

Thanks!

I believe this fix won't have the intended effect. If you were to setup a script to linearly transition from pitch shift 1.1f to 1.0f, then you'd hear audible popping as the pitch shift effect turns itself off at pitch = 1.0. When I submitted the attached issue, I tried manually turning off the pitch shift effect when the pitch is 1.0, and this had a very noticeable popping to it.
We should fix the core problem (of this supposed double to float precision error) so that you can smoothly transition pitches without any popping or distortion.

Thank you all for your time on this issue.
@JUSTCAMH Do you know if it's planned somewhere to fix the core issue ?
This issue exists since a long time and wasn't properly fixed, see #20198. They also thought about disabling the effect for 1.0 value, but call it "a cheap workaround" :

As soon as you activate the effect audio gets processed by an additional algorithm which transforms the original sound; regardless of the effect’s configuration, the input is changed.
A cheap workaround would be to bypass the effect as long as the value is 1.

It's probably good to have this workaround for now, but it shouldn't prevent from fixing the core issue later on.


Improve parsing of named parameters

To ignore comments, understand Unicode, and have fewer false positives.
This doesn't meet the original contract at the moment. The original expected any colon to be doubled up to be escaped. The double-colon (:: -> :) wasn't strictly necessary but seemed to be as a result of not properly parsing string literals and comments.
It's probably worth maintaining backward compatibility but having to double-colon could trip up someone new to the package.
There's also likely more cases of how string literals can be defined based on the driver. This implementation understands Postgres.
Related issues:
https://github.com/jmoiron/sqlx/issues/394
https://github.com/jmoiron/sqlx/issues/368
https://github.com/jmoiron/sqlx/issues/304
https://github.com/jmoiron/sqlx/issues/302
https://github.com/jmoiron/sqlx/issues/206
https://github.com/jmoiron/sqlx/issues/166
This one can be done fairly easily too:
https://github.com/jmoiron/sqlx/issues/350

Pull Request Test Coverage Report for Build 125

103 of 112 (91.96%)  changed or added relevant lines in 1 file are covered.
5 unchanged lines in 2 files lost coverage.
Overall coverage increased (+0.2%) to 67.911%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

named.go
103
112
91.96%

Files with Coverage Reduction
New Missed Lines
%

named_context.go
2
54.29%

named.go
3
78.07%

Totals

Change from base Build 122:
0.2%

Covered Lines:
2074

Relevant Lines:
3054

💛  - Coveralls

@jmoiron Thoughts on this PR? Do you think it's a worthwhile change?

Hi, @jmoiron is there any chance this PR will be considered? Is there any more I can do to assist with closure?


Allow FIREZONE_TOKEN to point to file

[ ] Refactor reading this env var so that it can point to a file for Gateway and Linux client
[ ] Update docs to reflect
[ ] Revert #5031

I implemented this in the headless Client as FIREZONE_TOKEN_PATH a while back to support some other change: https://github.com/firezone/firezone/blob/adb00af3d4d55da5d90c32657e931d86a28dc1e5/rust/headless-client/src/lib.rs#L119
Assigning to myself so it has an assignee

Probably will hold on this to explore the option of supplying the env var securely via the packaging / deployment mechanism (docker/systemd).

Hello,
The recommended way to pass credentials with systemd is to use systemd-credentials which need firezone-gateway to fetch token from a file.
As a workaround, i do that to fetch token from a file (which is backed by systemd-credentials):
LoadCredentialEncrypted=firezone-gateway
ExecStart=/bin/sh -c "/usr/bin/firezone-gateway $(cat \"${CREDENTIALS_DIRECTORY}/firezone-gateway\")"

But is pretty ugly and inconvenient.

@vlaborie Thanks for the pointers! Unfortunately, systemd isn't the only way how Gateways are deployed. Many of our customers also deploy via docker or terraform.
So whatever solution we come up with here needs to still be compatible with those deployment options :)
I am happy to collaborate on it with you in a PR. I think a good starting point would be that if an environment variable is supplied, it needs to take priority over other settings. What we could do is add a fallback to check for systemd credentials in case no env variable is present.

@thomaseizinger I am not sure i express my point of view clearly, i don't wan't to point out a specific way to handle token in systemd that need firezone-gateway support but rather the fact that provide a FIREZONE_TOKEN_PATH env like in headless-client will permit to handle token securely in systemd.

Probably will hold on this to explore the option of supplying the env var securely via the packaging / deployment mechanism (docker/systemd).

I intented to respond to this message because there is no securely way to supplying env vars over systemd, and FIREZONE_TOKEN env var can still be used for other deployment options, so i think @ReactorScram solution is the good one.

@thomaseizinger I am not sure i express my point of view clearly, i don't wan't to point out a specific way to handle token in systemd that need firezone-gateway support but rather the fact that provide a FIREZONE_TOKEN_PATH env like in headless-client will permit to handle token securely in systemd.

That is definitely a possible solution as well! Happy to review a PR for it :)
The existing code is here: https://github.com/firezone/firezone/blob/main/rust/headless-client/src/main.rs#L330-L380
We probably want to move some of this to the bin-shared crate so it can be reused across both binaries.


Rancher CLI to import compose and rancher yml files

Support for a CLI tool to import both compose and rancher yml files into Rancher.

Just require volumes-from.

Add network mode
Add support for build

Support for named links and sidekicks.