Debug Console should use theme-defined red/green colors

Themes define custom ansi colors, for example in Monokai,
"terminal.ansiBlack": "#333333",
"terminal.ansiRed": "#C4265E",
"terminal.ansiGreen": "#86B42B",
"terminal.ansiYellow": "#B3B42B",

The terminal uses these, but the debug console uses the same colors for every theme. Would be cool if it can use the theme colors too.
Example in Monokai
Terminal

Console

@shobhitchittora are you still working on this? I would like to take it on if you're not

I'm running into this as well. I would like my debug console to match my terminal. The current work around is manually updating css in the devtools or using the unsupported custom css extension

I'd like to take this over (I'm trying to get all these ANSI issues at once). I see we can pull the color map from here:
https://github.com/Microsoft/vscode/blob/1f64c126721a66f30a7dcc3ac9e605e8115bcca7/src/vs/workbench/contrib/terminal/common/terminalColorRegistry.ts#L40
I know the colors are set here now:
https://github.com/Microsoft/vscode/blob/1f64c126721a66f30a7dcc3ac9e605e8115bcca7/src/vs/workbench/contrib/debug/browser/media/repl.css#L130
I'm figuring since they're dynamically pulled from the theme, I'd need to override the CSS from repl.css and instead set the colors on creation in:
https://github.com/Microsoft/vscode/blob/1f64c126721a66f30a7dcc3ac9e605e8115bcca7/src/vs/workbench/contrib/debug/browser/repl.ts#L362
Just want to make sure I'm on the right track / keep track of my plan here.

@isidorn I'm having a difficult time trying to figure out how to get a color from the currently active theme. I see the ITheme interface has a getColor function so I'm confident that once I get the theme I can easily get the color, but how do I fetch the active theme?

@iansan5653 use the IThemeService

@isidorn I saw that interface too, but again I'm not clear on how to get the active IThemeService. My best guess is to use standaloneThemeService.getTheme() from standaloneServices.ts. Is this the best way to do it?

@iansan5653 pass it in to the handliAnsiSequence function.
And you can inject it into the repl renderer like all other services here

Sounds good, thanks!


Implement animation slice drawing in CanvasItem

Added a function to ignore subsequent commands if they don't fall within a time slice.
It works for any kind of rendering command, so you can loop-animate anything you want, any way you want.
This will be used by the new TileMap to properly provide animated tiles.

Usage:

func _draw():
   draw_animation_slice( 2.0, 0.0 ,1.0 ) # anim length 2 secs, from 0 to 1
   draw_texture( frame1_tex, Vector2() )
   draw_animation_slice( 2.0, 1.0 ,2.0 ) # anim length 2 secs, from 1 to 2
   draw_texture( frame2_tex, Vector2() )
   # optional if you want subsequent draw calls to be always visible again:
   draw_end_animation()

Thanks!


python interpreter in browser debugger?

Any plans to include werkzeug-like python interpreter to starception? We use docker and fastapi in our work environment. There fore we cannot use vscode or pycharm debugger. It would be great if we can drop into Python intertpreter via browser if an exception occurs.

I wish I could, but I don't know how it works ;) Maybe after some research it will be built-in, but not in the near future.

I am reopening it as it would be a good add-on to the library. However, the feature is not a priority and no any ETA unless someone Pars it.

We use docker and fastapi in our work environment. There fore we cannot use vscode or pycharm debugger.

how so @msenol86 ? I'm using pycharm + fastapi + starception, and I cant remember the last time I didnt debug in a docker container

We use docker and fastapi in our work environment. There fore we cannot use vscode or pycharm debugger.

how so @msenol86 ? I'm using pycharm + fastapi + starception, and I cant remember the last time I didnt debug in a docker container

I have tried starception but it only shows errors in browser, I cannot drop into Python interpreter like werkzeug on browser

in pycharm you just use the remote interpreter ie the interpreter your container runs on and that's pretty much it, it stops at breakpoints, you inspect variables etc...
not sure about vscode I never used it

in pycharm you just use the remote interpreter ie the interpreter your container runs on and that's pretty much it, it stops at breakpoints, you inspect variables etc... not sure about vscode I never used it

ok i will try that thank you very much


More options for the payment combo

The default 30 values do not cover everything. Maybe make a custom list out of what we have.

Yes please, I want to map payment:swish=* and you can't even search for it.

Done, 250 now.


Upgrade Drools, Optaplanner and Guava

Minimal version of https://github.com/openSUSE/subscription-matcher/pull/7 - update only necessary libraries, keep @Deprecated stuff.

Merging and creating the release.


Fix for python client: kernel_report function

Hello Team,
For a given sample (ex: sample_id: "220803-gbjcxaqytd"),
in kernel_report function - https://github.com/hatching/triage/blob/main/python/triage/client.py#L362 - lately 'platform' is not present in any of the triage tasks, for ex:
{'sample': '220803-gbjcxaqytd', 'kind': 'behavioral', 'name': 'behavioral1', 'status': 'reported', 'tags': ['family:icedid', 'campaign:3486167566', 'banker', 'loader', 'trojan'], 'score': 10, 'target': 'WbBf8RnN.dll', 'backend': 'sbx4m4', 'resource': 'win10v2004-20220414-en', 'task_name': 'horzn_win10_internet_120', 'os': 'windows10-2004-x64', 'timeout': 120, 'sigs': 3}
Hence, It's constantly throwing the KeyError: 'platform' for every sample analysis. In such cases, we can use 'os' instead of solely relying on 'platform' field.
This error is thrown for all the samples that run on various platforms.
Thank you very much. Please let me know if you have any questions or comments.

Hi @ljuturu
I would suspect this is due to the status of the task being "reported", instead of "completed", hence there does not exist a kernel report yet.

Hey @ljuturu,
Thanks for providing a PR!
Unfortunately I missed your fix and already pushed some other fixes (including this) yesterday.
Thanks for the effort, it is appreciated! :)


XPath / XQuery back-end for linux?

Hi,
Has anybody successfully ran this extension on Linux? Which xmlTools.xqueryExecutionEngine works for you?
I'm thinking that Saxon might be my best bet here, and am busy trying to formulate a working xmlTools.xqueryExecutionArguments, but a more detailed guide in terms of what this extension expects of such a tool (in terms of inputs / outputs) would be very useful.

I personally have not tested this extension on Linux. The build gets run on a Linux box before deployment in Travis CI, but that is about it. This extension was originally created for an internal team here at TrueCommerce, so it sees mostly Windows installs.
With that said, I have heard good things about BaseX, which I believe is *NIX-compatible.
As far as the extension's interface, the executable of choice is just called as if it were being called from a command line/shell with the arguments you specify in xqueryExecutionArguments. We aren't piping anything to stdin or doing any other fancy footwork there.
On the way back, we capture stdout and, if the process exits with a status other than "0", spit out the contents of stdout in an error notification. Generally, any error message you would normally see at the command line using your tool would be piped to the error notification. If the error message contains a line number (captured using this RegEx: [Ll]ine:?\s*\d+), a button is added to the error notification that will take you to the line in error.


Removed localhost only

localhost_only was removed in this PR https://github.com/ros2/rcl/pull/1169

This is a duplicate of #255.  There's some discussion in there, so I'm going to close this out in favor of that one.


Will this lib works for Facebook and Twitter? Or they would require server pre-caching of pages?

This does not work for Facebook and Twitter, unless you're willing to show the same hard-coded meta tags in all social media snippets. Please refer to the Support for other crawlers section of the README, or this blog post for more information.


gitea 1.10.3 -> 1.11.0

Motivation for this change
Gitea major update: https://blog.gitea.io/2020/02/gitea-1.11.0-is-released/
Things done

[ ] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
Built on platform(s)

[x] NixOS
[ ] macOS
[ ] other Linux distributions

[x] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[x] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Ensured that relevant documentation is up to date
[x] Fits CONTRIBUTING.md.

Are we touched by this issue?

@GrahamcOfBorg test gitea

At a quick glance this might be useful for us.

Status?

Are we touched by this issue?

We probably are, unfortunately I wasn't able to test that because starting the result binary failed with
2020/03/14 16:52:08 routers/init.go:71:GlobalInit() [F] Git module init failed: Failed to execute 'git config --global core.quotepath false': error: could not lock config file $HOME/.config/git/config: Read-only file system

where the error in itself makes sense as my git config is managed through home-manager, but I guess I'm doing it wrong? I was just trying to run ./result-bin/bin/gitea

Well, it tries to get gitea running as your local user and needs the git config for it.
I just updated gitea locally to 1.11.3 (based on your patch) and while the test and the db migration appear to work fine, the frontend is broken and needs to be built from source by us or we find a tarball with a prebuilt frontend.
Currently investigating which solution is the best :)

The tarballs listed as gitea-src-$version.tar.gz, e.g. https://github.com/go-gitea/gitea/releases/download/v1.11.3/gitea-src-1.11.3.tar.gz seem to include the prebuilt frontend.

Indeed, just deployed such a package and it appears to work fine. Will publish the change soon, still doing some more tests :)


[NF] Compute Demagnetization

This PR add the get_demag method to OutMag class to get the magnets surface area that exceed a given field strength.

Hello @Superomeg4, could you have a look. I introduced some functions on MeshSolution that could may also be methods but I am not quiet sure. BR Sebastian

@Superomeg4 Could you have a look at it again?
On my side I think I'm done.

OK for me :-)

Thank you for your contribution :)


Allow custom rendering of product classes in basket

At the moment Oscar allows overriding product detail pages for different product clases (Product page for a book can look completely differently than a page for clothes)
We're missing similar feature for rendering basket lines. It is especially important when you have a product with line options:

Make it easy to create custom basket line rendering.

fixed in #3795


Bug display tooltip

Hi,
I found a bug.
For example when we show at least one time the tooltip and we update position width update method ( like this, sel.tipso('update','position','top) ). In some cases, example, when we pass from the right position to top position.
The code :
jQuery('.tipso').tipso({
	position: 'right',
	background: '#F62459',
	useTitle: false
});

// Click event to change position
jQuery('.update-tipso-position').on('click', function(e){
		jQuery('.tipso').tipso('update', 'position', 'top');
		e.preventDefault();
});

After update the position, there is a bug.
I let you see the bug with the screenshot...

You shouldn't close the issue while don't fix it and if you fix it you must associate with this ticket. To be sure it's fixed and do not let us create another one for the same reason.


Add local_copy to EqualityTester

Codecov Report
Patch coverage: 100.00% and no project coverage change.

Comparison is base (91fe6a8) 100.00% compared to head (a616b83) 100.00%.

Additional details and impacted files
@@            Coverage Diff            @@
##              main      #170   +/-   ##
=========================================
  Coverage   100.00%   100.00%
=========================================
  Files           11        11
  Lines          847       854    +7
  Branches       184       186    +2
=========================================
+ Hits           847       854    +7

Impacted Files
Coverage Δ

src/coola/equality.py
100.00% <100.00%> (ø)

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


Add rubygems plugin link

Add a plugin that searches for ruby gems on rubygems.org.
Link: https://github.com/akz92/dext-rubygems-plugin

Coverage remained the same at 88.889% when pulling 8c231955c6a5f96fa16e6878c784b355d99f2153 on akz92:patch-1 into c49814b5fdcecd5528b0a43723e743e85655bfe6 on vutran:develop.

Thanks for the awesome plugin. Hopefully looking forward for more 😉


Does not compile anymore

../../Development/flutter/.pub-cache/hosted/pub.dartlang.org/page_router-0.0.3/lib/page_router.dart:59:21: Error: The argument type 'List<String>' can't be assigned to the parameter type 'String'.
 - 'List' is from 'dart:core'.
      trie.add(path.split(key), routes[key]);
                    ^
../../Development/flutter/.pub-cache/hosted/pub.dartlang.org/page_router-0.0.3/lib/page_router.dart:134:34: Error: The argument type 'List<String>' can't be assigned to the parameter type 'String'.
 - 'List' is from 'dart:core'.
    var trieData = trie.get(path.split(routeName));
                                 ^
../../Development/flutter/.pub-cache/hosted/pub.dartlang.org/page_router-0.0.3/lib/page_router.dart:151:40: Error: The argument type 'List<String>' can't be assigned to the parameter type 'String'.
 - 'List' is from 'dart:core'.
          var trieData = trie.get(path.split(routeName));
                                       ^

FAILURE: Build failed with an exception.

Including the library in my project gives me this error

Please include a flutter -doctor


It would be nice if time could be specified in HH:MM format

To make entering time easy if, say, one needs to enter time into JIRA and into another system that takes time in HH:MM format, it'd be nice if the time format could be specified in HH:MM format and converted to seconds.
Here's a Perl routine that converts to hours - it could be adapted to bash and added to _jira.to_seconds (e.g. if time ends with a number and contains a :):
=head2 convert_time_to_hours( $hh_mm_time )

Given a time in HH::MM format (e.g. 2:15 or 02:15), return the number of
hours as a decimal (e.g. 2.25).

Example:

  my $hours = $t->convert_time_to_hours( '2:15' );
  # $hours == 2.25

=cut

sub convert_time_to_hours {
    my ( $time ) = @_;

    my $hours = 0;
    my $minutes = 0;
    if ( $time =~ /([0-9]+):([0-9]+)/ ) {
        $hours = $1;
        $minutes = $2;
    } else {
        die "Time duration in incorrect format, must be HH:MM: $time";
    }

    my $numeric_time = $hours + $minutes/60;

    return $numeric_time;
}

Resolved via 14975cda1db6b5e8e552376b943c99c2fc1dd6c1


make initial user journey more clear

Users sometimes report getting an error on their first dry run:
$ spyglass apply account-123 --dry-run
    NotFoundError: Could not find master.
    Code: NotFoundError

The issue is that the yaml needs to be checked into git first, before it can be applied.
This is an important part of the user’s first impression, and it’s kind of confusing at the moment.
We either need better default behavior or a better error message.

I'm thinking an error we could respond with might be:
Spyglass failed to find a yaml file to compare against. Try one of the following:

(1) Add and commit the yaml file to git, and use the `--git-ref <branch>` flag to compare current changes against that branch. [recommended]
(2) Use the `--no-compare` flag to apply the entire file without comparing to a current file. [may take a long time]

The --no-compare flag would also resolve #79


Enforce authentication on api/status route by default (#968)

Backport https://github.com/opensearch-project/security-dashboards-plugin/commit/f0cb0c499e20ce15498ccd5f92a1f159c31c0fa2 from https://github.com/opensearch-project/security-dashboards-plugin/pull/968

Codecov Report

Merging #985 (7f842f6) into 2.0 (7420eb2) will not change coverage.
The diff coverage is n/a.

:exclamation: Current head 7f842f6 differs from pull request most recent head 107aba0. Consider uploading reports for the commit 107aba0 to get more accurate results

@@           Coverage Diff           @@
##              2.0     #985   +/-   ##
=======================================
  Coverage   72.14%   72.14%
=======================================
  Files          87       87
  Lines        1906     1906
  Branches      242      242
=======================================
  Hits         1375     1375
  Misses        477      477
  Partials       54       54

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 7420eb2...107aba0. Read the comment docs.


Keyboard layout indicator?

Hello! Any suggestitions where to dig?
P.S.  JWM is awesome.

I assume you're looking for something to show and possibly switch keyboard layouts.  Something like a dock app (or an application that can be swallowed into the tray).
JWM doesn't have anything built-in, as you may have guessed.  I don't use such a thing, so I'm not familiar with what's out that that may work (anyone else know of one?).  I would think there must be something out there.  If not, it's not something that would really need to be built into JWM, but it would be fairly easy to write such a thing that could be "swallowed" into a tray.

@foi fcitx OR ibus are useful for that if I understand you correctly
You can add them to startup or make a script that goes through the autostart directory and starts things that way.

@foi, use the suggestions from @Israel- or if you don't want to install another input method layer, use just setxkbmap -query to find out which keyboard layout is currently in use.
Regarding your initial question, xxkb is quite widespread.


Change typescript types according the RN 0.62 types on DefinitelyTyped

Summary

In the React Native 0.62 the NativeComponent was removed and NativeMethodsMixinStatic that NativeComponent const refer was renamed to NativeMethods see this PR
Closes #195
Test Plan

git clone https://github.com/salockhart/RNDatePickerError
cd DatePickerError
npm install or yarn git://github.com/react-native-community/datetimepicker.git#752213fb31c647ae78abbd850a0ec368c715689d
Run tsc

There should not be TS errors
Checklist

[ ] I have tested this on a device and a simulator
[ ] I added the documentation in README.md
[ ] I mentioned this change in CHANGELOG.md
[X] I updated the typed files (TS and Flow)
[ ] I added a sample use of the API in the example project (example/App.js)

thank you for this!

Sorry to ask, but is there a plan to release this as a patch version soon?

@mathieumg I just release this. The plan is to do releases automatically but we're not there yet :)


Arity issue workaround to avoid excessive tab completion

importing the user defined hello new command lets you hit tab multiple times for the greeting argument
hello new --greeting --greeting --greeting --greeting

This has been fixed in the upgrade to a newer version of spring shell


Dashboard:There are no so much pods in master

In GitLab by @cuiaq123 on Apr 1, 2019, 15:35
Dashboard:There are no so much pods in master

In GitLab by @tmon546596046 on Nov 8, 2019, 08:04
PR http://<IP_ADDRESS>:10080/inspursoft/board/pulls/2082

In GitLab by @tmon546596046 on Nov 8, 2019, 08:04
there is a probelms when two service select same pods. For examples: Service A's selector: app=redis and Service B's selector: app=redis then the Pod with labels: app=redis will belongs to Service A and B. the ApiServer total Pod Number is calculated by suming the Service A's Pod and Service B's Pod (total=1+1=2), so the total Pod Number 2 is wrong which should be 1.

In GitLab by @sokril on Nov 8, 2019, 08:32
assigned to @tmon546596046

In GitLab by @sokril on Dec 26, 2019, 03:04
changed the description

In GitLab by @luotian-github on Jan 2, 2020, 06:35
removed milestone

In GitLab by @luotian-github on Jan 2, 2020, 06:38
The fix 2082 covered some cases, continue to fix it by zhang


Removing unused dependency for jackson-databind.

Testing done on devadobe pod with WSAgent4 secure agent.
Link to mapping run: https://devadobe.informaticacloud.com/saas/app/activityLog.do?actionMethod=getDetail&logId=000006C1000000000AR8
@ankushkd

LGTM

@ankushkd Can you please help in merging this PR.


General E-Manager section sensors unavailable

Hi,
great work, thanks for sharing the config!
I was able to adopt in my HA, unfortunately I don't get any values for the 'General E-Manager' Section registers 01xx.
E.g. for 0103 (Actual power consumption) HA is just showing: unavailable
Pump values, buffer and boiler (so 1xxx, 2xxx, and 3xxx) are working great!
I'm even able to set the solar power values (register 0102), but I'm unable to read the overall power consumption of the system.
Any clue what's going on with the 01xx registers?
As of now I'm using the eu13l_hp1_inverter_power_consumption (1012 registers) to track power.

Hi Lutz,
as I understand the E-Manager is used in case you have a photovoltaic system at home and want to tell the heatpump to use more electrical energy in case there is enough energy available from the roof (e.g. to heat up domestic hot water to a higher temperature).
By the best of my knowledge the E-Manager is not active by default, I also have no PV-system when I got the WP installed therefore I can't test it. If Lambda did not activate the E-Manager in your WP I guess you will not be able to pull any data via MODBUS, you may want to talk to their support person to confirm this.
Cheers.....Ralf

Hi there, I am trying to write back to my EU13L with modbus-protocol - without any success so far (reading works fine).
I try to write the max. buffer temperature (according to the docs from Lambda in register 3050. I am trying around with the following manual Automation:
alias: TEST modbus writeback EU13L
description: ""
trigger:

platform: event
event_type: ""
context: {}
condition: []
action:
service: modbus.write_register
data:
address: 3050
value: 44
hub: EU13L
mode: single

Does anyone have an idea?
@thecem: how can you user a three digit code for the register??? The adress should be 4 digit long!?

By. Falk

Leading zero could be cutted.
try:
value:
  - 44

or
value: [44]

@FBrokelmann: could you do me a favor and read register 5006. I assume you have one or two heating circuits. If you have heating circuits wich value do you get with register 5006//5106!
And when was the pump installed?
thx a lot!

@FBrokelmann: could you do me a favor and read register 5006. I assume you have one or two heating circuits. If you have heating circuits wich value do you get with register 5006//5106! And when was the pump installed?
thx a lot!

Hi @thecem, my heatpump (EU13L) was installed end of october last year. And I am VERY happy with it! :-)
Register 5006 (my one and only heating circuit) returns value 3 (same situation as with Ralf Winter I would say - I only use automatic heating mode up to now).
cheers

Many thx!
My EU08 works since 10/23 like a charm! And it is even silently as the old oil heating.
So you have the “old” SW that has all values, my SW Version is changed and you are not able to read the values, but able to write. So it is a kind useless, since I need this to bind it into my EMS.
I have opened a ticket on Lambda side and hope there will be bringing a solution for this. Because it is so easy to handle this.
Up to that , I have to wait!
did you try it with the different value syntax?

actual working automation:
alias: Kostal -> EU08L
description: ""
trigger:
  - platform: state
    entity_id:
      - sensor.ksem_ac_meter_watts
  - platform: time_pattern
    seconds: /5
condition: []
action:
  - service: modbus.write_register
    data:
      address: 102
      hub: EU08L
      value:
        - "{{states('sensor.ksem_ac_meter_watts') | int | bitwise_and(65535)}}"
mode: single

Hello,
I just asked an acquaintance where I set this up over the weekend. Your heat pump is also off 23 and also does not display the operating mode (5006) correctly.

Von: thecem @.>
Gesendet: Montag, 6. November 2023 12:18
An: RalfWinter/lambda-heatpump-modbus-tcp-HA @.>
Cc: Subscribed @.***>
Betreff: Re: [RalfWinter/lambda-heatpump-modbus-tcp-HA] General E-Manager section sensors unavailable (Issue #3)
Many thx!
My EU08 works since 10/23 like a charm! And it is even silently as the old oil heating.
So you have the “old” SW that has all values, my SW Version is changed and you are not able to read the values, but able to write. So it is a kind useless, since I need this to bind it into my EMS.
I have opened a ticket on Lambda side and hope there will be bringing a solution for this. Because it is so easy to handle this.
Up to that , I have to wait!
did you try it with the different value syntax?
—
Reply to this email directly, view it on GitHubhttps://github.com/RalfWinter/lambda-heatpump-modbus-tcp-HA/issues/3#issuecomment-1794597154, or unsubscribehttps://github.com/notifications/unsubscribe-auth/A7QCQTIFSFCYLYINVAL4VIDYDDBQRAVCNFSM6AAAAAAZH6U4DGVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTOOJUGU4TOMJVGQ.
You are receiving this because you are subscribed to this thread.Message ID: @.***>

Many thx!
My EU08 works since 10/23 like a charm! And it is even silently as the old oil heating. So you have the “old” SW that has all values, my SW Version is changed and you are not able to read the values, but able to write. So it is a kind useless, since I need this to bind it into my EMS.
I have opened a ticket on Lambda side and hope there will be bringing a solution for this. Because it is so easy to handle this. Up to that , I have to wait!
did you try it with the different value syntax?

yes, I tried the new syntax (and several other variants), but still it doesn't work. Maybe it is something within the modbus-konfiguration of the sensor? Could you please post your config of adress 102?
my config for adress 3050 is the follwoing:

name: EU13L_Buff1_set_max_temperature
address: 3050
input_type: input
unit_of_measurement: "°C"
state_class: total
scale: 0.1
precision: 1
data_type: int16

Can you see a problem in that config?
Did I get it right: You think my software ist old, and I can read, but not write?

Hello, I just asked an acquaintance where I set this up over the weekend. Your heat pump is also off 23 and also does not display the operating mode (5006) correctly.
…
________________________________ Von: thecem @.> Gesendet: Montag, 6. November 2023 12:18 An: RalfWinter/lambda-heatpump-modbus-tcp-HA @.> Cc: Subscribed @.> Betreff: Re: [RalfWinter/lambda-heatpump-modbus-tcp-HA] General E-Manager section sensors unavailable (Issue #3) Many thx! My EU08 works since 10/23 like a charm! And it is even silently as the old oil heating. So you have the “old” SW that has all values, my SW Version is changed and you are not able to read the values, but able to write. So it is a kind useless, since I need this to bind it into my EMS. I have opened a ticket on Lambda side and hope there will be bringing a solution for this. Because it is so easy to handle this. Up to that , I have to wait! did you try it with the different value syntax? — Reply to this email directly, view it on GitHub<#3 (comment)>, or unsubscribehttps://github.com/notifications/unsubscribe-auth/A7QCQTIFSFCYLYINVAL4VIDYDDBQRAVCNFSM6AAAAAAZH6U4DGVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTOOJUGU4TOMJVGQ. You are receiving this because you are subscribed to this thread.Message ID: @.>

Yes

Many thx!
My EU08 works since 10/23 like a charm! And it is even silently as the old oil heating. So you have the “old” SW that has all values, my SW Version is changed and you are not able to read the values, but able to write. So it is a kind useless, since I need this to bind it into my EMS.
I have opened a ticket on Lambda side and hope there will be bringing a solution for this. Because it is so easy to handle this. Up to that , I have to wait!
did you try it with the different value syntax?

yes, I tried the new syntax (and several other variants), but still it doesn't work. Maybe it is something within the modbus-konfiguration of the sensor? Could you please post your config of adress 102?
my config for adress 3050 is the follwoing:

name: EU13L_Buff1_set_max_temperature
address: 3050
input_type: input
unit_of_measurement: "°C"
state_class: total
scale: 0.1
precision: 1
data_type: int16

Can you see a problem in that config?
Did I get it right: You think my software ist old, and I can read, but not write?

This config is only to read the registers!
Which value you could read in this register?
try to write following, go to:

Entwicklerwerkzeuge
Dienste
Modbus: Register schreiben
copy & paste

service: modbus.write_register
data:
  value:
    - 44
  hub: EU08L
  address: 3050

Great job, thanks to all contributors.
Using your above Yaml, appriciate it!. Unfortunately some of them are returning unexpected values (like T_EQout 1008: -327, using NodeRed/ModbusRead got 32768), not shure how to interprete these. Regarding E-Manager all registers are unavailble,  dispite E-Manager is activated, but using NodeRed registers returning proper values. I already got an energy meter for my PV-System. So I am writing values to E-Manager Act. Power 0102 with HA service what is fine and Heat Pump runs as expected. Thanks for the automation, it helps a lot.
Heat Pump SW-Version V0.0.1 Jul 3 2023 (Remote service is showing Typ: EU 13L SWID: V0.0.4 - 3K).
Do you get all register values in a proper manner with above Yaml?

Your have the same SW as mine.
EQout is not connected and they report the minimum value, same on my side.
what value you get on register 5006 & 5005?

Many thx!

My EU08 works since 10/23 like a charm! And it is even silently as the old oil heating. So you have the “old” SW that has all values, my SW Version is changed and you are not able to read the values, but able to write. So it is a kind useless, since I need this to bind it into my EMS.

I have opened a ticket on Lambda side and hope there will be bringing a solution for this. Because it is so easy to handle this. Up to that , I have to wait!

did you try it with the different value syntax?

yes, I tried the new syntax (and several other variants), but still it doesn't work. Maybe it is something within the modbus-konfiguration of the sensor? Could you please post your config of adress 102?

my config for adress 3050 is the follwoing:

name: EU13L_Buff1_set_max_temperature

address: 3050

input_type: input

unit_of_measurement: "°C"

state_class: total

scale: 0.1

precision: 1

data_type: int16

Can you see a problem in that config?

Did I get it right: You think my software ist old, and I can read, but not write?

This config is only to read the registers!
Which value you could read in this register?
try to write following, go to:

Entwicklerwerkzeuge

Dienste

Modbus: Register schreiben

copy & paste

service: modbus.write_register

data:

  value:

    - 440

  hub: EU13L

  address: 3050

You have to multiply your request value by 10 since there is a multiplication of 0.1 for the readed value in the documentation. A temp with 25,1 is 251 and there is a limit between 250 and 650, so 44 will not be accepted.

Thanx a lot, i am now able to write back. :-)

Your have the same SW as mine.
EQout is not connected and they report the minimum value, same on my side.
what value you get on register 5006 & 5005?

So why is Lambda doing different regarding their documentation (Modbus Beschreibung und Protokoll 11.04.2023)? Tried to contact Lambda serveral times but there was no reply yet. What a  pity!
However I don't need special values like EQout to run the Heat Pump as a normal user.
But I would like to control some more functions of the Heat Pump by HA concerning Automations:

Holidays (Ferienbetrieb)
Boost Domestik Hot Water
Party Mode (seems not available)
Set operating modes of Heat Pump (Auto, off), Heat Circuits (Auto, Summer, Frost, off), Boiler (Auto, Frost, off), Buffer (Auto, Frost, off)
Hoping Lambda expand the Modbus to meet my request some day.

Ok, so this is valid.
you could set the heat circuit mode with 5006, but be carefully, you are not able to set it back to 62536. For the time out period it will work, but you are with this software not able to read out the operation mode what was set in the gui. There is a reason behind this, since there was request from some vendors. It will be fixed in future to get the op mode and the “Soll Temperaturen” (Set Point/request temp). At the moment I couldn’t connect to my EMS since there is no possibility to get this relevant information out of the HP control unit.
Even the E-Manager status (that shows up in the display), that the Temperatur is higher., could not extracted in any way.

Ok, so this is valid.
you could set the heat circuit mode with 5006, but be carefully, you are not able to set it back to 62536. For the time out period it will work, but you are with this software not able to read out the operation mode what was set in the gui. There is a reason behind this, since there was request from some vendors. It will be fixed in future to get the op mode and the “Soll Temperaturen” (Set Point/request temp). At the moment I couldn’t connect to my EMS since there is no possibility to get this relevant information out of the HP control unit.
Even the E-Manager status (that shows up in the display), that the Temperatur is higher., could not extracted in any way.

Seems you know a lot more of Lambda's Modbus journey. So I will wait for improvements and stop requesting solutions for my problems at Lambda's customer support. But how to avoid missing improvements you mentioned above? Let suppose you are in contact with Lambda may you post notable changed here to let us know?

Yes, I’m in contact with lambda and have addressed the problems and even a solution for this. But we have to wait until they implement this. And I’m impatient 😂!

Yes, I’m in contact with lambda and have addressed the problems and even a solution for this. But we have to wait until they implement this. And I’m impatient 😂!

Hi, what kind of EMS are you using? Are you planning having a provider like Tibber?

Home Assistant.
tibber is really interesting, but the prices are at the moment(Nov 23) to high.
If you have a battery it could be an option. For me the average must be 8 cents under my fix price 26, since I have to pay the battery usage.

Where are you from? I live in Germany and my price is 31. Who is your provider?

DE, had the opportunity in late July via check24 to go with octopus (26,32 Cents). The price is for 24 months, without bonuses and the option to cancel every month. I came from Vattenfall, which had really a good price, but decided to start from 08/24 with 32 cents, far to much!

For me the leading zeroes where cut. Instead of:
 - name: EU13L_EMgr_Actual_Power
    address: 0102

 - name: EU13L_EMgr_Actual_Power
    address: "0102"

Works just fine.

102 without 0 should also work.

Hi guys I am not that far yet.
I am not familiar with HA, even not with programming.
I have the EUL-13 and would like to import it into HA mainly to see the values. At least at the beginning.
I have installed HACS an tried to get the repository into HA by copying the https from github but it failed with the message: Repository structure is not compliant.
I tried the same with a Wattpilot repository for my Fronius Wallbox and this worked out without any problems.
May someone help :)

@thecem: Any news about your conversation regarding update of modbus with lambda?

alias: Kostal -> EU08L
description: ""
trigger:

platform: state
entity_id:

sensor.ksem_ac_meter_watts
condition: []
action:

service: modbus.write_register
data:
address: 102
value: "{{states('sensor.ksem_ac_meter_watts') | int | bitwise_and(65535)}}"
hub: EU08L
mode: single

Works here. I just used this:
https://github.com/RalfWinter/lambda-heatpump-modbus-tcp-HA/blob/main/HA-Lambda-WP_configuration.yaml
Gerne auch auf deutsch.

Last information was, they will rethink the logic. I will ask for status.

  Gut das es geht.

Hallo @thecem, war ein Missverständnis, eigentlich wollte ich @i-moove helfen.

Hi guys I am not that far yet. I am not familiar with HA, even not with programming. I have the EUL-13 and would like to import it into HA mainly to see the values. At least at the beginning. I have installed HACS an tried to get the repository into HA by copying the https from github but it failed with the message: Repository structure is not compliant.
I tried the same with a Wattpilot repository for my Fronius Wallbox and this worked out without any problems.
May someone help :)

@i-moove: Use this:
https://github.com/RalfWinter/lambda-heatpump-modbus-tcp-HA/blob/main/HA-Lambda-WP_configuration.yaml
That is not an integration or a repository! You have to add this text manually in your configuration.yaml
Of course you have to change to IP to yours!

Vielen Dank, ich werde es mal versuchen.
👍

@Eisbaer2
Thanks a lot. Now it works and I can see values.
 Laut noch aktueller Modbus-Beschreibung von Lambda sollte das ja gehen, aber bei mir auf den Registern 0100-0104 leider nichts ausgegeben.

Und langfristig wünsche ich mir, dass auch mehr Werte per Modbus beschrieben/gesetzt werden können, als nur der Leistungsüberschusswert im EMS.

Die Version 0.0.4 -K3 Juni 14 23 unterstützt das leider nicht(mehr, es gab hier Änderungen), ich kann hier nur appellieren sich an lambda zu wenden.

Das Problem ist derzeit, dass Lambda einen extrem langsamen Support hat. Meine vorletzte Anfrage in 2023 dauerte 2,5 Monate, meine letzte Anfrage vom Dezember ist noch anhängig.
Ich denke, die sind insgesamt zu schnell gewachsen, der Support aber nicht.

Bei mir ist allerdings ein Auslesen der Register 100-104 möglich (OpenHAB):
`
Bridge poller e-manager [ start=100, length=5, refresh=5000, type="holding" ] {
Thing data input100 "Wärmepume"  [ readStart="100", readValueType="int16"] // Error Number
Thing data input101 "Wärmepume"  [ readStart="101", readValueType="int16"] // OP-State
Thing data input102 "Wärmepume"  [ readStart="102", readValueType="int16"] // [Watt] Actual input power [UINT16 (min = 0W; max = 65535W)] or actual excess power [INT16 (min = -32768W; max = 32767W)] (depends on settings in Module)
Thing data input103 "Wärmepume"  [ readStart="103", readValueType="int16", readTransform="JS(factor0001.js)"] // [Watt] Actual power consumption of all configurated heat pumps
Thing data input104 "Wärmepume"  [ readStart="104", readValueType="int16", readTransform="JS(factor0001.js)"] // [Watt] Power consumtion setpoint as a sum for for all heat pumps
// E-Manager
Number hz_e_err                     "Fehler"                                                 (gHz_e)                     { channel="modbus:data:waermepumpe:e-manager:input100:number" }
Number hz_e_ops                     "Betriebsart E-Mngr [MAP(hz_gen_ops.map):%s]"          (gHz_e)                     { channel="modbus:data:waermepumpe:e-manager:input101:number" }
Number:Power hz_e_power             "Stromüberschuss [%.2f kW]"                         (gHz_e,gPersist)            { channel="modbus:data:waermepumpe:e-manager:input102:number", unit="W" }
Number:Power hz_e_cons              "Stromverbrauch [%.2f kW]"                              (gHz_e,gPersist)            { channel="modbus:data:waermepumpe:e-manager:input103:number", unit="kW" }
Number:Power hz_e_pcs               "Sollwert [%.2f kW]"                                    (gHz_e,gPersist)            { channel="modbus:data:waermepumpe:e-manager:input104:number", unit="kW" }`

Bei mir ist allerdings ein Auslesen der Register 100-104 möglich (OpenHAB):

Das liegt wahrscheinlich daran, dass du noch bei der 0.0.1 bist. Bei der 0.0.4 geht es leider nicht mehr

Bei mir ist allerdings ein Auslesen der Register 100-104 möglich (OpenHAB):

Das liegt wahrscheinlich daran, dass du noch bei der 0.0.1 bist. Bei der 0.0.4 geht es leider nicht mehr

Aber bin ich nicht laut Anzeige auch auf der Firmware „0.0.4 - 3K“ vom 4. Juli 23?

@ulkrueger: Du hast Recht. Komisch, dass es bei dir dann geht. Meine 0.0.4 - 3K hat allerdings Build Date: 20. September.

Nochmal ich @ulkrueger @thecem @RalfWinter:
Ich werde noch verrückt. Bei mir kommt beim Energy Manager mit den Registern 100 - 104 unter Modbus nichts raus (wohl aber schreibe ich in Register 102 meine Energie-Saldo, das funktioniert).
 Jetzt habe ich nochmal probiert.  Nur: unter Home Assistant nicht. Ich habe schon sehr viel probiert, warum auch immer kommt da nichts an. Aller anderen Modbus-Register funktionieren. Ich habe mich an den Entwurf von @RalfWinter gehalten, in meiner configuration.yaml steht z.B.
    - name: eu13l_emgr_power_consumption_setpoint
      address: 0104
      input_type: holding
      unit_of_measurement: "W"
      state_class: total
      scale: 1
      precision: 0
      data_type: int16

Habe auch schon viel rumgespielt mit anderen timeouts, Groß- und Kleinschreibung, etc. Hat alles nichts geholfen, die HA-modbus-Integration scheint da nichts auslesen zu können. Ich bin absolut ratlos, warum das nicht funktioniert. Hat jemand von euch noch Ideen, Tipps, Lösungen?

Ich werde in 1-2 Monaten auch eine Lambda E08haben und bin durch Zufall auf diese Diskussion gestoßen. Allerdings arbeite ich mit Openhab.   Wie schreibt man in GitHub eine PN?

Habe auch schon viel rumgespielt mit anderen timeouts, Groß- und Kleinschreibung, etc. Hat alles nichts geholfen, die HA-modbus-Integration scheint da nichts auslesen zu können. Ich bin absolut ratlos, warum das nicht funktioniert. Hat jemand von euch noch Ideen, Tipps, Lösungen?

Hallo, ich würde gerne helfen, habe aber das gleiche Problem: seit 3 Wochen habe ich eine PV-Anlage auf dem Dach und Energiereform hat mir den EMgr freigeschaltet, bekomme davon aber keine Daten in HA. Das Beschreiben des Registers 102 habe ich deshalb erstmal gelassen und nutze den potentialfreien Kontakt vom Wechselrichter um der Lambda PV-Überschuss zu signalisieren; das klappt überraschend gut, damit kann ich erstmal leben.

Ich habe das Problem lösen können: die führende Null beim Register darf nicht verwendet werden, bei der Adresse also nur 100 statt 0100 eingeben. Damit klappt es zumindest bei mir :-)

Super! Habe die Änderungen bei mir im HA auch gemacht und ich sehe jetzt auch Werte in der EMgr-Sektion. 1000 Dank! Die YAML-Datei habe ich bereits aktualisiert.

@RalfWinter: hier meine funktionierende Automation
`alias: Leistungsdaten => Wärmepumpe
description: ""
trigger:

platform: state
entity_id:

sensor.leistung_aktuell

platform: time_pattern
seconds: "30"
condition: []
action:
service: modbus.write_register
data:
address: 102
hub: EU13L
value:
- "{{states('sensor.leistung_aktuell') | int | bitwise_and(65535)}}"
mode: single`

Danke, aber funktioniert genau so wenig. Meine Lambda bringt allerdings auch einen Alarm sobald ich den E-Manager auf "Automatik" stelle:
E-Manager ungültiger Wert
In den Details steht AlarmX0Para506
Ich nehme an, ich habe schon an anderer Stelle ein Problem.  Die tun sich da zwar auch schwer, aber einen Versuch ist es wert.

Kannst du bitte mal in HA unter Entwicker in Template folgend einfügen und den Wert für negativ und positiv posten:
{{states('sensor.leistung_aktuell') | int | bitwise_and(65535)}}

Deine Einstellungen sind korrekt! Der Alarm auch, ich denke das es an deinem Sensor liegt. Hierzu brauche ich aber die Ausgabe..

Bei folgendem Kommando kommt -9400
{{states('sensor.shelly3em_total_power') | int }}
Damit kommt ca. 56500:
{{states('sensor.shelly3em_total_power') | int | bitwise_and(65535)

Kannst du bitte noch mal den Wert beim Verbrauch posten?

Kein Problem, bin Privatier ;-)
Was meinst Du mit "Verbrauch"? Von der WP?

Dein Zählerwert sollte bei PV-Überschuss negativ sein. Ist dem so?

Ja, genau.

Bei folgendem Kommando kommt -9400 {{states('sensor.shelly3em_total_power') | int }}
Damit kommt ca. 56500: {{states('sensor.shelly3em_total_power') | int | bitwise_and(65535)
Die -9400 war zu dem Zeitpunkt der Export (in Watt) ins Grid.

Eigentlich sollte es mit den 56500 klappen ...

Ah, here we go...habe mal den Loglevel auf Debug gestellt:
2024-04-11 11:53:59.476 ERROR (SyncWorker_7) [homeassistant.components.modbus.modbus] Pymodbus: EU13L: Error: device: 0 address: 102 -> Exception Response(134, 6, IllegalFunction)

Was ist denn die config fürs Modbus?

Was ist denn die config fürs Modbus?
Die schaut so aus:
`modbus:

name: "EU13L"
type: tcp
host: <IP_ADDRESS>
port: 502
`

Bitte mal den leistungswert selbst setzen und zwar alle /5 Sec.
alias: Leistungsdaten => Wärmepumpe
description: ""
trigger:
  - platform: state
    entity_id:
      - sensor.leistung_aktuell
  - platform: time_pattern
    seconds: "30"
condition: []
action:
  - service: modbus.write_register
    data:
      address: 102
      hub: EU13L
      value: "56666"
mode: single

Bitte mal den Leistungswert selbst setzen und zwar alle /5 Sec. Wichtig ist der Bindestrich "-".

Du bist mein Held, das hat funktioniert, der Fehler in der Lambda-GUI ist prompt weg! In HA steht nun -18.870 W.
Hast Du noch eine Tipp, wie ich den eigentlichen Wert übertragen bekomme?

Nimm meine Automation und tausche nur den Sensor aus. Wahrscheinlich lag es bei dir nur am fehlenden Bindestrich.

Ja, eigentlich easy, das Minus hat es gemacht, allerdings so wie bei Dir:
- "{{states('sensor.leistung_aktuell') | int | bitwise_and(65535)}}"
1000 Dank Euch Beiden, @Eisbaer2 und @thecem

Nochmal zum Abschluß: des potentialfreien Kontakt habe ich abgebaut und arbeite jetzt nur noch mit dem EMgr, ein Träumchen:
[img]https://up.picr.de/47406531tj.png[/img]
[img]https://up.picr.de/47406535dp.png[/img]

Back to English: for owners of a Shelly 3EM smart meter this is the description to send the PV-surplus not needed elsewhere in your household to the E-manager of your Lambda heatpump. The Shelly 3EM is a cheap alternative to the expensive ModBus-Smartmeter provided by Lambda. In addition many HA-users already have Shelly devices because of the easy integration in Home Assistant.
The following is divided into three parts: the automation,the configuration.yaml und Lambda-setup part.
The automation part:
alias: PV-Excess-to-HP
description: Sent PV-Excess to Heatpump
trigger:
  - platform: state
    entity_id:
      - sensor.power_current
    for:
      hours: 0
      minutes: 0
      seconds: 0
  - platform: time_pattern
    seconds: /10
condition: []
action:
  - service: modbus.write_register
    data:
      hub: EU13L
      address: 102
      value:
        - "{{states('sensor.power_current') | int | bitwise_and(65535)}}"
mode: single

The configuration.yaml part:
Because the Shelly-integration for the 3-phase smart meter does not include an entity which represents the total power over all 3 phases you need to add following template sensors at the end of your configuration.yaml (change the unique id of your Shelly-3EM [here "34945474b5f2"] according to your discovered Shelly-3EM in your installation).
#
# Shelly 3EM additions for PV numbers
#
      # Template sensor for current power comsumption
      power_current:
        friendly_name: "Power Current"
        unit_of_measurement: 'W'
        value_template: >-
            {{ states('sensor.shellyem3_34945474b5f2_channel_a_power')|float + states('sensor.shellyem3_34945474b5f2_channel_b_power')|float + states('sensor.shellyem3_34945474b5f2_channel_c_power')|float }}
        availability_template: "{{
            [ states('sensor.shellyem3_34945474b5f2_channel_a_power'),
              states('sensor.shellyem3_34945474b5f2_channel_b_power'),
              states('sensor.shellyem3_34945474b5f2_channel_c_power')
            ] | map('is_number') | min
          }}"

      # Template sensor for values of power import (active_power > 0)
      power_import:
        friendly_name: "Power Import"
        unit_of_measurement: 'W'
        value_template: >-
          {% if (states('sensor.shellyem3_34945474b5f2_channel_a_power')|float + states('sensor.shellyem3_34945474b5f2_channel_b_power')|float + states('sensor.shellyem3_34945474b5f2_channel_c_power')|float) > 0 %}
            {{ states('sensor.shellyem3_34945474b5f2_channel_a_power')|float + states('sensor.shellyem3_34945474b5f2_channel_b_power')|float + states('sensor.shellyem3_34945474b5f2_channel_c_power')|float }}
          {% else %}
            {{ 0 }}
          {% endif %}
        availability_template: "{{
            [ states('sensor.shellyem3_34945474b5f2_channel_a_power'),
              states('sensor.shellyem3_34945474b5f2_channel_b_power'),
              states('sensor.shellyem3_34945474b5f2_channel_c_power')
            ] | map('is_number') | min
          }}"

      # Template sensor for values of power export (active_power < 0)
      power_export:
        friendly_name: "Power Export"
        unit_of_measurement: 'W'
        value_template: >-
          {% if (states('sensor.shellyem3_34945474b5f2_channel_a_power')|float + states('sensor.shellyem3_34945474b5f2_channel_b_power')|float + states('sensor.shellyem3_34945474b5f2_channel_c_power')|float) < 0 %}
            {{ (states('sensor.shellyem3_34945474b5f2_channel_a_power')|float + states('sensor.shellyem3_34945474b5f2_channel_b_power')|float + states('sensor.shellyem3_34945474b5f2_channel_c_power')|float) * -1 }}
          {% else %}
            {{ 0 }}
          {% endif %}
        availability_template: "{{
            [ states('sensor.shellyem3_34945474b5f2_channel_a_power'),
              states('sensor.shellyem3_34945474b5f2_channel_b_power'),
              states('sensor.shellyem3_34945474b5f2_channel_c_power')
            ] | map('is_number') | min
          }}"

The E-Manager part:
In order to consume the PV-surplus numbers the E-Manager in your Lambda-HP needs to be configured as follows:

E-Meter communication type: ModBus-Client (deutsch: E-Meter Kommunikationsart: ModBus-Client)
E-Meter measurement type: Neg. E-surplus (deutsch: E-Meter Messpunkt: Neg. E-Überschuss)*
*Remark: in case your installer configured the "E-Meter measurement type" for positive numbers you may use the entity "Power Export" which represents the power-surplus in positive integer number.
The other values in the E-Manager configuration will be set according to the "best-practices of the installer of your heatpump and, the last point, whether you have a battery coupled to your PV-system or not:

If all works fine your should see (depending on your personal setup....) following values in HA:

...and in case of enough PV-surplus you will see the new icon on your Lambda-display (see screenshots in the previous comment).
Last but not least you configure the PV-temperature increase in your different modules like in "domestic hot water" (in my setup: 13k), the "buffer" (14k) and the "heating circuit(s)" (here I only increased a little, 3k, I already increased the buffer massively).

Ich habe den Fehler selbst gefunden. Problem waren die Leerzeichen in der Konfiguration. Da hat mir diese Seite weitergeholfen: https://www.geeksforgeeks.org/how-do-i-resolve-a-mapping-values-are-not-allowed-here-error-in-yaml/
Mit mehreren Werten welche ich von meinem HomeAssistant in die Lambda übertrage, sieht meine configuration.yaml wie folgt aus. Dies habe ich am Ende der Konfiguration eingefügt:
# Werte von HomeAssistant zur Lambda schicken. Raumtemperatur und verfuegbarer PV Ueberschuss
automation:
  - alias: PV-Ueberschuss-zur-Lambda
    description: Schicke PV-Überschuss zur Lambda Wärmepumpe
    trigger:
      - platform: state
        entity_id:
          - sensor.smart_meter_ts_65a_3_wirkleistung
        for:
          hours: 0
          minutes: 0
          seconds: 0
      - platform: time_pattern
        seconds: /10
    condition: []
    action:
      - service: modbus.write_register
        data:
          hub: EU15L
          address: 102
          value:
            - "{{states('sensor.smart_meter_ts_65a_3_wirkleistung') | int | bitwise_and(65535)}}"
    mode: single
  - alias: Durchschnittstemperatur-Fussbodenheizung-zur-Lambda
    description: Schicke Durchschnittstemperatur Fußbodenheizung zur Lambda Wärmepumpe
    trigger:
      - platform: state
        entity_id:
          - sensor.temperatur_heizkreis_fussbodenheizung_durchschnitt
        for:
          hours: 0
          minutes: 0
          seconds: 0
      - platform: time_pattern
        seconds: /10
    condition: []
    action:
      - service: modbus.write_register
        data:
          hub: EU15L
          address: 5004
          value:
            - >-
              {{ (float(states('sensor.temperatur_heizkreis_fussbodenheizung_durchschnitt')) *10 )
              |round(0)  }}
    mode: single
  - alias: Durchschnittstemperatur-Heizkoerper-zur-Lambda
    description: Schicke Durchschnittstemperatur Heizkörper zur Lambda Wärmepumpe
    trigger:
      - platform: state
        entity_id:
          - sensor.temperatur_heizkreis_heizkorper_durchschnitt
        for:
          hours: 0
          minutes: 0
          seconds: 0
      - platform: time_pattern
        seconds: /10
    condition: []
    action:
      - service: modbus.write_register
        data:
          hub: EU15L
          address: 5104
          value:
            - >-
              {{ (float(states('sensor.temperatur_heizkreis_heizkorper_durchschnitt')) *10 )
              |round(0)  }}
    mode: single

Nimm meine Automation und tausche nur den Sensor aus. Wahrscheinlich lag es bei dir nur am fehlenden Bindestrich.

same here - have been trying to get this working for two days now. Thanks a million!

Pls post your formatted (use the button above <>) automation and the sensor details (developer/states).


Retrieving a single still frame takes more than 6 seconds (on a wall clock)

Using:

libcamera-apps@https://github.com/raspberrypi/libcamera-apps/commit/0ddf74f1a0705961bc281eb4da914ec20ce6a671
https://github.com/libcamera-org/libcamera/commit/fa7a95bf32c6a8ee87b67159d4238cbc8e6dc3a9

to test https://github.com/raspberrypi/libcamera-apps/issues/90 showed that retrieving a single still frame takes more than 6 seconds (on a wall clock):
$ time libcamera-jpeg -o test.jpeg
Preview window unavailable
[251:39:09.394290233] [21629]  INFO Camera camera_manager.cpp:293 libcamera v0.0.0+1-c1d703c3
[251:39:09.465335712] [21629]  INFO Camera camera.cpp:937 configuring streams: (0) 1640x1232-YUV420
[251:39:09.465482024] [21633]  INFO RPI raspberrypi.cpp:122 Mode: 3280x2464 fmt RG10 Score: 2218 (best 2218)
[251:39:09.465550245] [21633]  INFO RPI raspberrypi.cpp:122 Mode: 1920x1080 fmt RG10 Score: 2041.48 (best 2041.48)
[251:39:09.465585393] [21633]  INFO RPI raspberrypi.cpp:122 Mode: 1640x1232 fmt RG10 Score: 1500 (best 1500)
[251:39:09.465618356] [21633]  INFO RPI raspberrypi.cpp:122 Mode: 640x480 fmt RG10 Score: 5004.81 (best 1500)
[251:39:09.465651059] [21633]  INFO RPI raspberrypi.cpp:122 Mode: 3280x2464 fmt pRAA Score: 1718 (best 1500)
[251:39:09.465680762] [21633]  INFO RPI raspberrypi.cpp:122 Mode: 1920x1080 fmt pRAA Score: 1541.48 (best 1500)
[251:39:09.465712669] [21633]  INFO RPI raspberrypi.cpp:122 Mode: 1640x1232 fmt pRAA Score: 1000 (best 1000)
[251:39:09.465742446] [21633]  INFO RPI raspberrypi.cpp:122 Mode: 640x480 fmt pRAA Score: 4504.81 (best 1000)
[251:39:09.465775927] [21633]  INFO RPI raspberrypi.cpp:122 Mode: 3280x2464 fmt RGGB Score: 3218 (best 1000)
[251:39:09.465806408] [21633]  INFO RPI raspberrypi.cpp:122 Mode: 1920x1080 fmt RGGB Score: 3041.48 (best 1000)
[251:39:09.465836482] [21633]  INFO RPI raspberrypi.cpp:122 Mode: 1640x1232 fmt RGGB Score: 2500 (best 1000)
[251:39:09.465865315] [21633]  INFO RPI raspberrypi.cpp:122 Mode: 640x480 fmt RGGB Score: 6004.81 (best 1000)
[251:39:09.466009128] [21633]  INFO RPI raspberrypi.cpp:620 Sensor: /base/soc/i2c0mux/i2c@1/imx219@10 - Selected mode: 1640x1232-pRAA
[251:39:09.497173550] [21633]  INFO RPISTREAM rpi_stream.cpp:122 No buffers available for ISP Output0
[251:39:09.497215309] [21633]  INFO RPISTREAM rpi_stream.cpp:122 No buffers available for ISP Output0
[251:39:09.497241382] [21633]  INFO RPISTREAM rpi_stream.cpp:122 No buffers available for ISP Output0
[251:39:09.602348279] [21633]  INFO RPI raspberrypi.cpp:1636 Dropping frame at the request of the IPA (6 left)
[251:39:09.635673448] [21633]  INFO RPI raspberrypi.cpp:1636 Dropping frame at the request of the IPA (5 left)
[251:39:09.669937289] [21633]  INFO RPI raspberrypi.cpp:1636 Dropping frame at the request of the IPA (4 left)
[251:39:09.701826923] [21633]  INFO RPI raspberrypi.cpp:1636 Dropping frame at the request of the IPA (3 left)
[251:39:09.734998298] [21633]  INFO RPI raspberrypi.cpp:1636 Dropping frame at the request of the IPA (2 left)
[251:39:09.769024772] [21633]  INFO RPI raspberrypi.cpp:1636 Dropping frame at the request of the IPA (1 left)
[251:39:09.800469838] [21633]  INFO RPI raspberrypi.cpp:1636 Dropping frame at the request of the IPA (0 left)
[251:39:14.640330266] [21629]  INFO Camera camera.cpp:937 configuring streams: (0) 3280x2464-YUV420
[251:39:14.640495875] [21633]  INFO RPI raspberrypi.cpp:122 Mode: 3280x2464 fmt BG10 Score: 1500 (best 1500)
[251:39:14.640558874] [21633]  INFO RPI raspberrypi.cpp:122 Mode: 1920x1080 fmt BG10 Score: 7155.48 (best 1500)
[251:39:14.640599485] [21633]  INFO RPI raspberrypi.cpp:122 Mode: 1640x1232 fmt BG10 Score: 7244 (best 1500)
[251:39:14.640637225] [21633]  INFO RPI raspberrypi.cpp:122 Mode: 640x480 fmt BG10 Score: 10748.8 (best 1500)
[251:39:14.640677298] [21633]  INFO RPI raspberrypi.cpp:122 Mode: 3280x2464 fmt BA81 Score: 2500 (best 1500)
[251:39:14.640716242] [21633]  INFO RPI raspberrypi.cpp:122 Mode: 1920x1080 fmt BA81 Score: 8155.48 (best 1500)
[251:39:14.640756038] [21633]  INFO RPI raspberrypi.cpp:122 Mode: 1640x1232 fmt BA81 Score: 8244 (best 1500)
[251:39:14.640794760] [21633]  INFO RPI raspberrypi.cpp:122 Mode: 640x480 fmt BA81 Score: 11748.8 (best 1500)
[251:39:14.640833222] [21633]  INFO RPI raspberrypi.cpp:122 Mode: 3280x2464 fmt pBAA Score: 1000 (best 1000)
[251:39:14.640870221] [21633]  INFO RPI raspberrypi.cpp:122 Mode: 1920x1080 fmt pBAA Score: 6655.48 (best 1000)
[251:39:14.640908721] [21633]  INFO RPI raspberrypi.cpp:122 Mode: 1640x1232 fmt pBAA Score: 6744 (best 1000)
[251:39:14.640947294] [21633]  INFO RPI raspberrypi.cpp:122 Mode: 640x480 fmt pBAA Score: 10248.8 (best 1000)
[251:39:14.641135273] [21633]  INFO RPI raspberrypi.cpp:620 Sensor: /base/soc/i2c0mux/i2c@1/imx219@10 - Selected mode: 3280x2464-pBAA
Still capture image received

real	0m6.122s
user	0m0.385s
sys	0m0.477s

Could that be reduced somehow?

Hi, it's by design that the preview runs for 5 seconds before capturing a frame, to give time for all the algorithms to settle and for the user to see the preview. Use the -t option to specify a different time (in ms), for example libcamera-still -t 500 -o test.jpg for a half second preview.
Alternatively you can by-pass this time completely if you can specify the exposure, gain and white balance in advance. Follow the instructions here (scroll down to the part about "Very long exposures"  but substitute your own values), and the very first frame from the sensor will be captured.
Hopefully that answers everything so I'll close this, but please re-open if you'd like more explanation.


gnome-shell-pomodoro: 0.20.0 -> 0.21.0

Description of changes

Update gnome-shell-pomodoro 0.20.0 -> 0.21.0.

Remove the patch from gnome-pomodoro/gnome-pomodoro/pull/591 since it had been merged to upstream.
Add cairo, json-glib as dependencies (See here)

Things done

Built on platform(s)

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

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[x] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[x] Tested basic functionality of all binary files (usually in ./result/bin/)
22.05 Release Notes (or backporting 21.11 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module
[ ] (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes

[x] Fits CONTRIBUTING.md.

It breaks when entering short/long break if IBus enabled.
This seems an upstream issue. (I don't know the cause is Pomodoro or IBus)

I'm closing this PR at once.
https://github.com/gnome-pomodoro/gnome-pomodoro/issues/619 is a very heavy issue, I think we should wait until it'll get fixed.


Create Ramble recipe for A4X Benchmark

To help with running the Benchmark, I need to create a Ramble recipe.

Ramble recipe and Benchpark experiment are created. Just need to test using old HiCOMB configurations


VSCode window size too small when launched via associated file extension

Steps to Reproduce:

Double-clicked a README.MD from a folder on my local hard drive.
Windows asked what app I wanted to use to open it.
I selected Visual Studio Code, and checked "Always use this app to open ..."
Clicked OK, and this was the result in the upper-left of my screen:

Looks like VS Code doesn't have reasonable defaults set for position and size?
Reproduces without extensions: Unknown

VSCode Version: Code 1.14.0 (b8cd5b9556d8b70ea560d35b903422363f6c5c40, 2017-07-10T18:36:31.751Z)
OS Version: Windows_NT ia32 10.0.14393
Extensions:

Extension
Author (truncated)
Version

npm-intellisense
chr
1.3.0

githistory
don
0.2.1

python
don
0.6.7

xml
Dot
1.9.2

vscode-simple-icons
Lau
1.4.1

MagicPython
mag
1.0.10

cpptools
ms-
0.12.0

csharp
ms-
1.11.0

PowerShell
ms-
1.4.1

vs-keybindings
ms-
0.1.7

python
tht
0.2.3

(1 theme extensions excluded)

@bpasero I thought we remember the last width and height of the window and use that.

Yeah we do, but maybe this is upon initial startup.

@bpasero : FYI, what is the definition of "initial startup" here? Is it when the app is run for the very first time ever, or the first time after an update? I ask because I've been using VS Code for several months, but the day before this occurred I had updated it to the latest release.

@ChadMcCaffery so this happens everytime even after you have resized the window to a good size? Does it restore the good size if you just start VS Code?

@bpasero Yes, normal usage seems to work just fine. I think the key is when Windows launches VS Code for a brand-new file association. However, I can't reproduce the problem. I removed all associations using assoc.exe and deleted reg keys before retrying. It launched with reasonable size.

Does this still happen?

I can't repro this with latest versions, so I'm closing it.


Create New World doesn't work when bound to a mouse button

tested left click, right click, mb4; works with y
no overlapping hotkeys

this is likely due to: https://github.com/KingContaria/atum-rewrite/blob/aca85e34c95dc6b4a7153c615b5f57813acf8ecd/src/main/java/me/voidxwalker/autoreset/mixin/hotkey/KeyboardMixin.java#L23
isPressed acts differently to isKeyDown, so I could imagine matchKey is similarly broken. Minecraft does some weird stuff with mouse buttons. Unsure where isPressed is updated in onKey.


Alerts in SAP HANA Database and Data Lake

Tutorials: https://developers.sap.com/tutorials/hana-cloud-alerts.html
Write here how you think we can improve the tutorial ...
Hi Dan,
SAP Alert Notification service is only available for Free Tier and not on Trial (for Feature Set B), as you can see here and below in the screenshot. This should be mentioned in the prereqs of the tutorial.

Thank you and best regards,
Iwona

Reached out via email and included a colleague I hope can help further.  I do see the alert service in my trial account and am also using Feature Set B.
For trial, perhaps the following link might help.
https://discovery-center.cloud.sap/serviceCatalog/sap-alert-notification-service?region=all&tab=service_plan&licenseModel=free
It mentions that regions that it is available for trial.  I hope that explains the problem.
Please email me if that does not help.

Hi Daniel,
Thank you for your reply. As mentioned in my reply to the email I manually need to entitle the service. Maybe a note would be helpful in step 5?
Best regards,
Iwona


updated readme with lists + maybe links

I updated the README.md file; it now has lists, and the links SHOULD work... should. If they don't, let me know and I'll try to fix it!

links don't work :pensive:


Uploading annotation doesn't work on cvat.org public version

My actions before raising this issue

[x] Read/searched the docs
[x] Searched past issues

Can't upload annotation to a dataset!
the last month uploading dataset and its annotation was working well, right now, when I try to upload the annotation using COCO format or any other format, I got this error:
Could not upload annotation for the [task 228819](https://cvat.org/tasks/228819) Open the Browser Console to get details
and when I opened the dev tools in Chrome, I got this 2 messages in the console:

httpStack.js:96 Mixed Content: The page at 'https://cvat.org/tasks/228819/jobs/322540' was loaded over HTTPS, but requested an insecure XMLHttpRequest endpoint 'http://cvat.org/api/jobs/322540/annotations/a2d11c72-b171-43cb-a16f-81380ba2f517'. This request has been blocked; the content must be served over HTTPS. (anonymous) @ httpStack.js:96

cvat-app.tsx:283 Error: tus: failed to upload chunk at offset 0, caused by [object ProgressEvent], originated from request (method: PATCH, url: http://cvat.org/api/jobs/322540/annotations/a2d11c72-b171-43cb-a16f-81380ba2f517, response code: n/a, response text: n/a, request id: n/a).
Expected Behaviour

it always was successfully uploaded.
Current Behaviour

The dataset aren't annotated
Steps to Reproduce (for bugs)

I just logged in cvat.org and signed up, uploaded the dataset (png files), with the classes names, everything is still working till this point, then:
when I try to upload any format of annotation, I can't get any annotated images.
Context

keep annotating.
Your Environment

I didn't use any local env, I used the public cvat.org website env.

Operating System and version (e.g. Linux, Windows, MacOS):
Code example or link to GitHub repo or gist to reproduce problem:
Other diagnostic information / logs:
Logs from `cvat` container

Next steps
You may join our Gitter channel for community support.

Having the same issue.

@dragonscandance  let me know if you have any solutions!

@klakhov , could you please look?

The issue seems to stem from the fact that the page resources are served using HTTPS but the requests to do things like upload files are done under HTTP, and they're consequently being blocked by CORS. This seems to also be impacting other basic functionality such as assigning users to tasks.

@Mohammed-Elias Hi, the issue should be fixed now, could you please test?

@azhavoro I can now upload files when I previously could not. Thank you!

@azhavoro Thanks a lot for your help, it works like magic!

I am facing the same issue. Any suggestions?

@rushabh-v , you can move your data to our new instance: app.cvat.ai. Use these steps: https://cvat-ai.github.io/cvat/docs/faq/#how-to-migrate-data-from-cvatorg-to-cvatai

Thanks for responding @nmanovic!
I tried moving to cvat-ai. But it still shows projects and tasks from my old cvat app after new deployment.
Here's what I did
1. take Backup
2. clone `cvat-ai/cvat` repo.
3. `docker prune` all old images  (otherwise it was saying `cvat_db uses an image, skipping` etc)
4. `docker compose up -d` from new repo.

You need to run down -v to stop CVAT containers, delete images and volumes. Be careful, -v option will delete your docker volumes for CVAT and it will not be possible to restore.  Please look at documentation for docker-compose: https://docs.docker.com/engine/reference/commandline/compose_down/

My apologies if this is a stupid question.
in the documentation it says
To update CVAT, you should clone or download the new version of CVAT and rebuild the CVAT docker images as usual.

That means clone https://github.com/cvat-ai/cvat and build right?
Note: I was already using the latest code from https://github.com/openvinotoolkit/cvat.

@rushabh-v , yes. You should clone cvat-ai/cvat and follow installation instructions.

I did. pruned old images and volumes and deployed cvat-ai. But I am facing the same issue while trying to upload the annotations.
Also, I was not able to upload a backup dataset. It said Network error.

@rushabh-v , try to use app.cvat.ai. If you can reproduce it here, tell me the task number and attach annotations to the issue.

How can I fix this issue on a local CVAT installation?
CVAT is running on the HTTP localhost:8080 but accessed via a Cloudflare tunnel using HTTPS/


[Bug] 0.23 Setup Failed

The problem
After upgrading to HA 2023.11.0 the Asus integration fails to setup after working for years.
Your device model
RT-AC87u
Firmware type
Merlin
Firmware version
384.13_10
Integration version with the issue
0.23
Method of the integration installation
HACS
What version and type of Home Assistant installation do you use
Core 2023.11.0
Is there anything useful in the logs?
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/config_entries.py", line 402, in async_setup
    result = await component.async_setup_entry(hass, self)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/config/custom_components/asusrouter/__init__.py", line 26, in async_setup_entry
    await router.setup()
  File "/config/custom_components/asusrouter/router.py", line 345, in setup
    await self.update_clients()
  File "/config/custom_components/asusrouter/router.py", line 485, in update_clients
    self.update_latest_connected()
  File "/config/custom_components/asusrouter/router.py", line 530, in update_latest_connected
    self._latest_connected = new_list[-1].get(CONNECTED)
                             ~~~~~~~~^^^^
IndexError: list index out of range

Diagnostics information
No response
Additional information
No response

Hello. Sorry for the issue you are experiencing. Please, update to the 0.23.1 which is already available in HACS. It should solve your issue

Ah weird, I just see the new version now. Fixed


Support for custom keywords in typed-api

Hi. We're using a 3rd party plugin (LTR) together with Elastic to run our searches. In order to use this plugin, our queries contain some custom keywords. Simplified example (see the sltr section):
POST tmdb/_search
{
    "query": {
        "match": {
            "_all": "rambo"
        }
    },
    "rescore": {
        "window_size": 1000,
        "query": {
            "rescore_query": {
                "sltr": {
                    "params": {
                        "keywords": "rambo"
                    },
                    "model": "my_model"
                }
            }
        }
    }
}

Is there any way to construct semi-custom queries like the above using the typed-api structs? From what I see, there's no way to incorporate raw-json or custom keywords into types.RescoreQuery, types.Query etc
The only solution I could think of is:

Construct most of the query, without the sltr portion, using the typed-api structs
Marshal the Request into a json-string
Unmarshal the json-string into a generic map[string]interface{}
Insert the sltr portion of the query into the above generic map
Marshal the updated map back into a json
Use the raw json functionality to run the updated query

Is there a better way of building the above query using the typed-api?

Hi @rajivprab
That's an interesting topic!
First of all the way you highlighted works.
Another would be to use a go:generate command to vendor a custom version of the search.Request type on which you would override Rescore with a sltr type.
Lastly I'd do it by embedding the search.Request in another type along with an sltr field and write a custom serializer field by field. You never desync with the lib and you control what you use.
In the end all three would end up using the raw json to pass the query to the client.
Hope this helps, let me know if you have any further questions!


State of project

Hi!
I am wondering the state of this project?
The landing readme would indicate that the project is still in development https://github.com/KooleControls/ESPTool/blob/main/README.md?plain=1#L4
Hoeever, it looks like the project has not seen any development in 3 years (Except the OTA feature)? https://github.com/KooleControls/ESPTool/blame/main/ESPTool/ESPTool.cs

There is no active development on this project anymore. Because It does what it needs to do for us. We have been using this for a couple of years now in our production line to program our devices.
I don't see any development happening in the near future. I should update the readme. In the meantime im happy to merge pull requests if they arise.


CWL: cromwell/torque error

Hi Brad,
I'm testing the new cromwell integration in bcbio and I've run into the following error:
[2018-05-29 10:27:21,91] [warn] TORQUE [13b3db38]: Key/s [docker] is/are not supported by backend. Unsupported attributes will not be part of job executions.

followed by
[2018-05-29 10:27:25,61] [info] DispatchedConfigAsyncJobExecutionActor [13b3db38alignment_to_rec:NA:1]: executing: qsub -V -l wd -N cromwell_13b3db38_alignment_to_rec -o /kyukon/data/gent/gvo000/gvo00082/vsc41443/D1614040_WGS/cromwell_work/cromwell-executions/main-genome.cwl/13b3db38-a9c7-4e85-b33e-4cb322f54ef4/call-alignment_to_rec/execution/stdout -e /kyukon/data/ge
nt/gvo000/gvo00082/vsc41443/D1614040_WGS/cromwell_work/cromwell-executions/main-genome.cwl/13b3db38-a9c7-4e85-b33e-4cb322f54ef4/call-alignment_to_rec/execution/stderr -q long         -l nodes=1:ppn=1 -l mem=2147mb -l walltime=24:00:00         -- /usr/bin/env bash /kyukon/data/gent/gvo000/gvo00082/vsc41443/D1614040_WGS/cromwell_work/cromwell-executions/main-genome.cwl/
13b3db38-a9c7-4e85-b33e-4cb322f54ef4/call-alignment_to_rec/execution/script
[2018-05-29 10:27:26,20] [error] WorkflowManagerActor Workflow 13b3db38-a9c7-4e85-b33e-4cb322f54ef4 failed (during ExecutingWorkflowState): Unable to start job. Check the stderr file for possible errors: /kyukon/data/gent/gvo000/gvo00082/vsc41443/D1614040_WGS/cromwell_work/cromwell-executions/main-genome.cwl/13b3db38-a9c7-4e85-b33e-4cb322f54ef4/call-alignment_to_rec/e
xecution/stderr.submit
java.lang.RuntimeException: Unable to start job. Check the stderr file for possible errors: /kyukon/data/gent/gvo000/gvo00082/vsc41443/D1614040_WGS/cromwell_work/cromwell-executions/main-genome.cwl/13b3db38-a9c7-4e85-b33e-4cb322f54ef4/call-alignment_to_rec/execution/stderr.submit
        at cromwell.backend.sfs.SharedFileSystemAsyncJobExecutionActor.$anonfun$execute$2(SharedFileSystemAsyncJobExecutionActor.scala:131)
        at scala.util.Either.fold(Either.scala:188)
        at cromwell.backend.sfs.SharedFileSystemAsyncJobExecutionActor.execute(SharedFileSystemAsyncJobExecutionActor.scala:126)
        at cromwell.backend.sfs.SharedFileSystemAsyncJobExecutionActor.execute$(SharedFileSystemAsyncJobExecutionActor.scala:121)
        at cromwell.backend.impl.sfs.config.DispatchedConfigAsyncJobExecutionActor.execute(ConfigAsyncJobExecutionActor.scala:208)
        at cromwell.backend.standard.StandardAsyncExecutionActor.$anonfun$executeAsync$1(StandardAsyncExecutionActor.scala:459)
        at scala.util.Try$.apply(Try.scala:209)
        at cromwell.backend.standard.StandardAsyncExecutionActor.executeAsync(StandardAsyncExecutionActor.scala:459)
        at cromwell.backend.standard.StandardAsyncExecutionActor.executeAsync$(StandardAsyncExecutionActor.scala:459)
        at cromwell.backend.impl.sfs.config.DispatchedConfigAsyncJobExecutionActor.executeAsync(ConfigAsyncJobExecutionActor.scala:208)
        at cromwell.backend.standard.StandardAsyncExecutionActor.executeOrRecover(StandardAsyncExecutionActor.scala:753)
        at cromwell.backend.standard.StandardAsyncExecutionActor.executeOrRecover$(StandardAsyncExecutionActor.scala:745)
        at cromwell.backend.impl.sfs.config.DispatchedConfigAsyncJobExecutionActor.executeOrRecover(ConfigAsyncJobExecutionActor.scala:208)
        at cromwell.backend.async.AsyncBackendJobExecutionActor.$anonfun$robustExecuteOrRecover$1(AsyncBackendJobExecutionActor.scala:65)
        at cromwell.core.retry.Retry$.withRetry(Retry.scala:37)
        at cromwell.backend.async.AsyncBackendJobExecutionActor.withRetry(AsyncBackendJobExecutionActor.scala:61)
        at cromwell.backend.async.AsyncBackendJobExecutionActor.cromwell$backend$async$AsyncBackendJobExecutionActor$$robustExecuteOrRecover(AsyncBackendJobExecutionActor.scala:65)
        at cromwell.backend.async.AsyncBackendJobExecutionActor$$anonfun$receive$1.applyOrElse(AsyncBackendJobExecutionActor.scala:88)
        at scala.PartialFunction$OrElse.applyOrElse(PartialFunction.scala:172)
        at scala.PartialFunction$OrElse.applyOrElse(PartialFunction.scala:172)
        at akka.actor.Actor.aroundReceive(Actor.scala:514)
        at akka.actor.Actor.aroundReceive$(Actor.scala:512)
        at cromwell.backend.impl.sfs.config.DispatchedConfigAsyncJobExecutionActor.aroundReceive(ConfigAsyncJobExecutionActor.scala:208)
        at akka.actor.ActorCell.receiveMessage(ActorCell.scala:527)
        at akka.actor.ActorCell.invoke(ActorCell.scala:496)
        at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:257)
        at akka.dispatch.Mailbox.run(Mailbox.scala:224)
        at akka.dispatch.Mailbox.exec(Mailbox.scala:234)
        at akka.dispatch.forkjoin.ForkJoinTask.doExec(ForkJoinTask.java:260)
        at akka.dispatch.forkjoin.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1339)
        at akka.dispatch.forkjoin.ForkJoinPool.runWorker(ForkJoinPool.java:1979)
        at akka.dispatch.forkjoin.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:107)

The stderr file contains qsub: script file 'bash' cannot be loaded - No such file or directory
Which leads me to believe there's something wrong with the qsub command.
qsub -V -l wd -N cromwell_13b3db38_alignment_to_rec -o /kyukon/data/gent/gvo000/gvo00082/vsc41443/D1614040_WGS/cromwell_work/cromwell-executions/main-genome.cwl/13b3db38-a9c7-4e85-b33e-4cb322f54ef4/call-alignment_to_rec/execution/stdout -e /kyukon/data/gent/gvo000/gvo00082/vsc41443/D1614040_WGS/cromwell_work/cromwell-executions/main-genome.cwl/13b3db38-a9c7-4e85-b33e-4cb322f54ef4/call-alignment_to_rec/execution/stderr -q long -l nodes=1:ppn=1 -l mem=2147mb -l walltime=24:00:00 -- /usr/bin/env bash /kyukon/data/gent/gvo000/gvo00082/vsc41443/D1614040_WGS/cromwell_work/cromwell-executions/main-genome.cwl/13b3db38-a9c7-4e85-b33e-4cb322f54ef4/call-alignment_to_rec/execution/script

I'm not sure what you mean with the  -- /usr/bin/env bash flag in the command, this seems to be the source of the issue.
Furthermore, the first -l wd flag is an invalid for torque, as it only accepts values in the form of attr=value
When removing the the faulty args and submitting the job manually, everything seems to work.
Cheers
M

fixed in #2407, tested and works like a charm.
M

Hi Brad,
FYI: in the previous PR, I hadn't readded the -S /bin/bash.
On another note. With the recent edits, jobs runs smoothly and cromwell performs great. However, at the end of the pipeline I still encountered some typing issues.
Perhaps you can make more of this:
[2018-05-30 19:02:47,49] [info] d82c00ca-7641-40d9-ae9a-b075bd84493b-SubWorkflowActor-SubWorkflow-variantcall:0:1 [d82c00ca]: Workflow wf-variantcall.cwl complete. Final Outputs:
{
  "wf-variantcall.cwl.vc_rec": "[typed object {genome_resources__aliases__human: true, genome_build: \"hg38\", config__algorithm__tools_on: [\"coverage_perbase\"], validate__summary: null, config__algorithm__cal
lable_regions: \"/kyukon/data/gent/gvo000/gvo00082/vsc41443/D1614040_WGS/cromwell_work/cromwell-executions/main-genome.cwl/0e49e364-9158-4bb1-8401-7a3f920236aa/call-variantcall/shard-0/wf-variantcall.cwl/d82c00c
a-7641-40d9-ae9a-b075bd84493b/call-compare_to_rm/inputs/252955174/D1614040-analysis_blocks.bed\", metadata__batch: null, description: \"D1614040\", config__algorithm__effects: false, validate__fp: null, referenc
e__genome_context: [\"/kyukon/data/gent/gvo000/gvo00082/vsc41443/D1614040_WGS/cromwell_work/cromwell-executions/main-genome.cwl/0e49e364-9158-4bb1-8401-7a3f920236aa/call-variantcall/shard-0/wf-variantcall.cwl/d8
2c00ca-7641-40d9-ae9a-b075bd84493b/call-compare_to_rm/inputs/-1426330849/polyx.bed.gz\", \"/kyukon/data/gent/gvo000/gvo00082/vsc41443/D1614040_WGS/cromwell_work/cromwell-executions/main-genome.cwl..."
}
[2018-05-30 19:02:48,92] [error] WorkflowManagerActor Workflow 0e49e364-9158-4bb1-8401-7a3f920236aa failed (during ExecutingWorkflowState): Error(s):
No coercion defined from wom value(s) 'null' of type 'Array[String]?' to 'Array[String]'.
No coercion defined from wom value(s) 'null' of type 'class wom.types.WomMaybePopulatedFileType$?' to 'class wom.types.WomMaybePopulatedFileType$'.
No coercion defined from wom value(s) 'null' of type 'class wom.types.WomMaybePopulatedFileType$?' to 'class wom.types.WomMaybePopulatedFileType$'.
No coercion defined from wom value(s) 'null' of type 'String?' to 'String'.
No coercion defined from wom value(s) 'null' of type 'class wom.types.WomMaybePopulatedFileType$?' to 'class wom.types.WomMaybePopulatedFileType$'.
No coercion defined from wom value(s) 'null' of type 'String?' to 'String'.
No coercion defined from wom value(s) 'null' of type 'class wom.types.WomMaybePopulatedFileType$?' to 'class wom.types.WomMaybePopulatedFileType$'.
No coercion defined from wom value(s) 'null' of type 'class wom.types.WomMaybePopulatedFileType$?' to 'class wom.types.WomMaybePopulatedFileType$'.
No coercion defined from wom value(s) 'null' of type 'String?' to 'String'.
common.exception.AggregatedMessageException: Error(s):
No coercion defined from wom value(s) 'null' of type 'Array[String]?' to 'Array[String]'.
No coercion defined from wom value(s) 'null' of type 'class wom.types.WomMaybePopulatedFileType$?' to 'class wom.types.WomMaybePopulatedFileType$'.
No coercion defined from wom value(s) 'null' of type 'class wom.types.WomMaybePopulatedFileType$?' to 'class wom.types.WomMaybePopulatedFileType$'.
No coercion defined from wom value(s) 'null' of type 'String?' to 'String'.
No coercion defined from wom value(s) 'null' of type 'class wom.types.WomMaybePopulatedFileType$?' to 'class wom.types.WomMaybePopulatedFileType$'.
No coercion defined from wom value(s) 'null' of type 'String?' to 'String'.
No coercion defined from wom value(s) 'null' of type 'class wom.types.WomMaybePopulatedFileType$?' to 'class wom.types.WomMaybePopulatedFileType$'.
No coercion defined from wom value(s) 'null' of type 'class wom.types.WomMaybePopulatedFileType$?' to 'class wom.types.WomMaybePopulatedFileType$'.
No coercion defined from wom value(s) 'null' of type 'String?' to 'String'.
        at common.validation.Validation$ValidationTry$.toTry$extension1(Validation.scala:60)
        at common.validation.Validation$ValidationTry$.toTry$extension0(Validation.scala:56)
        at wom.values.WomObject$.withType(WomObject.scala:80)
        at cwl.CwlJsonToDelayedCoercionFunction$.$anonfun$onObject$9(CwlJsonToDelayedCoercionFunction.scala:80)
        at cats.data.Validated.map(Validated.scala:194)
        at cwl.CwlJsonToDelayedCoercionFunction$.$anonfun$onObject$1(CwlJsonToDelayedCoercionFunction.scala:80)
        at cwl.CwlJsonToDelayedCoercionFunction$.$anonfun$onArray$2(CwlJsonToDelayedCoercionFunction.scala:40)
        at cats.instances.ListInstances$$anon$1.$anonfun$traverse$2(list.scala:73)
        at cats.instances.ListInstances$$anon$1.loop$2(list.scala:63)
        at cats.instances.ListInstances$$anon$1.$anonfun$foldRight$2(list.scala:65)
        at cats.Eval$.advance(Eval.scala:272)
        at cats.Eval$.loop$1(Eval.scala:354)
        at cats.Eval$.cats$Eval$$evaluate(Eval.scala:372)
        at cats.Eval$Defer.value(Eval.scala:258)
        at cats.instances.ListInstances$$anon$1.traverse(list.scala:72)
        at cats.instances.ListInstances$$anon$1.traverse(list.scala:12)
        at cats.Traverse$Ops.traverse(Traverse.scala:19)
        at cats.Traverse$Ops.traverse$(Traverse.scala:19)
        at cats.Traverse$ToTraverseOps$$anon$3.traverse(Traverse.scala:19)
        at cwl.CwlJsonToDelayedCoercionFunction$.$anonfun$onArray$1(CwlJsonToDelayedCoercionFunction.scala:40)
        at cwl.CommandLineTool.$anonfun$outputEvaluationJsonFunction$2(CommandLineTool.scala:159)
        at scala.Option.map(Option.scala:146)
        at cwl.CommandLineTool.$anonfun$outputEvaluationJsonFunction$1(CommandLineTool.scala:159)
        at cats.instances.ListInstances$$anon$1.$anonfun$traverse$2(list.scala:73)
        at cats.instances.ListInstances$$anon$1.loop$2(list.scala:63)
        at cats.instances.ListInstances$$anon$1.$anonfun$foldRight$2(list.scala:65)
        at cats.Eval$.advance(Eval.scala:272)
        at cats.Eval$.loop$1(Eval.scala:354)
        at cats.Eval$.cats$Eval$$evaluate(Eval.scala:372)
        at cats.Eval$Defer.value(Eval.scala:258)
        at cats.instances.ListInstances$$anon$1.traverse(list.scala:72)
        at cats.instances.ListInstances$$anon$1.traverse(list.scala:12)
        at cats.Traverse$Ops.traverse(Traverse.scala:19)
        at cats.Traverse$Ops.traverse$(Traverse.scala:19)
        at cats.Traverse$ToTraverseOps$$anon$3.traverse(Traverse.scala:19)
        at cwl.CommandLineTool.jsonToOutputs$1(CommandLineTool.scala:151)
        at cwl.CommandLineTool.$anonfun$outputEvaluationJsonFunction$8(CommandLineTool.scala:169)
        at scala.util.Either.flatMap(Either.scala:338)
        at cwl.CommandLineTool.parseContent$1(CommandLineTool.scala:168)
        at cwl.CommandLineTool.$anonfun$outputEvaluationJsonFunction$12(CommandLineTool.scala:181)
        at scala.Option.map(Option.scala:146)
        at cats.data.OptionT.$anonfun$map$1(OptionT.scala:29)
        at scala.util.Success.$anonfun$map$1(Try.scala:251)
        at scala.util.Success.map(Try.scala:209)
        at scala.concurrent.Future.$anonfun$map$1(Future.scala:289)
        at scala.concurrent.impl.Promise.liftedTree1$1(Promise.scala:29)
        at scala.concurrent.impl.Promise.$anonfun$transform$1(Promise.scala:29)
        at scala.concurrent.impl.CallbackRunnable.run(Promise.scala:60)
        at akka.dispatch.BatchingExecutor$AbstractBatch.processBatch(BatchingExecutor.scala:55)
        at akka.dispatch.BatchingExecutor$BlockableBatch.$anonfun$run$1(BatchingExecutor.scala:91)
        at scala.runtime.java8.JFunction0$mcV$sp.apply(JFunction0$mcV$sp.java:12)
        at scala.concurrent.BlockContext$.withBlockContext(BlockContext.scala:81)
        at akka.dispatch.BatchingExecutor$BlockableBatch.run(BatchingExecutor.scala:91)
        at akka.dispatch.TaskInvocation.run(AbstractDispatcher.scala:40)
        at akka.dispatch.ForkJoinExecutorConfigurator$AkkaForkJoinTask.exec(ForkJoinExecutorConfigurator.scala:43)
        at akka.dispatch.forkjoin.ForkJoinTask.doExec(ForkJoinTask.java:260)
        at akka.dispatch.forkjoin.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1339)
        at akka.dispatch.forkjoin.ForkJoinPool.runWorker(ForkJoinPool.java:1979)
        at akka.dispatch.forkjoin.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:107)

[2018-05-30 19:02:48,92] [info] WorkflowManagerActor WorkflowActor-0e49e364-9158-4bb1-8401-7a3f920236aa is in a terminal state: WorkflowFailedState
[2018-05-30 19:03:28,09] [info] SingleWorkflowRunnerActor workflow finished with status 'Failed'.
[2018-05-30 19:03:32,78] [info] Automatic shutdown of the async connection
[2018-05-30 19:03:32,78] [info] Gracefully shutdown sentry threads.
[2018-05-30 19:03:32,78] [info] Shutdown finished.
Failed bcbio Cromwell run
-------------------------
Failure in step: normalize_sv_coverage.0
  bcbio log file     : cromwell_work/cromwell-executions/main-genome.cwl/0e49e364-9158-4bb1-8401-7a3f920236aa/call-normalize_sv_coverage/execution/log/bcbio-nextgen-debug.log
  bcbio commands file: cromwell_work/cromwell-executions/main-genome.cwl/0e49e364-9158-4bb1-8401-7a3f920236aa/call-normalize_sv_coverage/execution/log/bcbio-nextgen-commands.log
  Cromwell directory : cromwell_work/cromwell-executions/main-genome.cwl/0e49e364-9158-4bb1-8401-7a3f920236aa/call-normalize_sv_coverage

The logs specified at the end are empty, so no help there.
Any ideas?
Thanks
M

Matthias;
Sorry about the run problem and thank you for the detailed report. It looks like something is problematic about the outputs of that process as you got null values instead of the expected record outputs. I'm not positive if this is happening because of a run error or we're not handling a case with your configuration. For the former, are there any errors reported in the stdout/stderr?
cromwell_work/cromwell-executions/main-genome.cwl/0e49e364-9158-4bb1-8401-7a3f920236aa/call-normalize_sv_coverage/execution/stdout
cromwell_work/cromwell-executions/main-genome.cwl/0e49e364-9158-4bb1-8401-7a3f920236aa/call-normalize_sv_coverage/execution/stderr

If those are also empty, would you be able to share the YAML you're using so I can see if I can replicate and identify the issue? Thanks much for the help debugging.

Hi Brad,
thanks for the help,
Unfortunately, both the stderr and stdout files are empty.
I'm using the following config:
fc_name: D1614040_WGS
upload:
  dir: ../final
globals:
  analysis_regions: /bcbio/genomes/Hsapiens/hg38/regions/RefSeqExomeAndPanels_20171003.bed
  coverage_regions: /bcbio/genomes/Hsapiens/hg38/regions/RefSeqExomeAndPanels_20171003.bed
resources:
  tmp:
    dir: $VSC_SCRATCH_VO_USER/bcbio
details:
  - analysis: variant2
    genome_build: hg38
    description: D1614040
    algorithm:
      aligner: bwa
      save_diskspace: true
      coverage_interval: genome
      mark_duplicates: true
      recalibrate: false
      realign: false
      variantcaller: gatk-haplotype
      svcaller: [lumpy, manta]
      effects: false
      tools_on:
        - coverage_perbase
      tools_off:
        - gemini
    files:
        - ../input/D1614040_S9_L008_R2_001.fastq.gz
        - ../input/D1614040_S9_L008_R1_001.fastq.gz

Am I asking anything that isn't CWL ready yet?
Thanks
M

Hello @matthdsm,
Cromwell is looking into this error. Can you please point me to workflow you tried to run? Thanks!

Matthias;
I think I've isolated the problem and pushed a fix. If you can update the bcbio instance you're using for running (bcbio_nextgen.py upgrade -u development) and re-run I hope it will now do the right thing. This looked like an error when CNVkit was not enabled since bcbio skipped some calculations for SV coverage that it doesn't need without CNV calling and was not returning an object CWL was happy with. I got an error message at these steps, rather than an empty message, so hopefully this isolates the right issue. Thanks again for the feedback and testing, please feel free to re-open if you're sill finding issues.

Hi Brad,
I noticed that our HPC cluster is starting to limit my job submission because of the high volume of jobs from cromwell. Is there a flag I can use to set the walltime and/or cpu req's for the cromwell jobs? As it is now, alle jobs ask for 24h cputime, which makes it default to the "long" job queue. This requirement is way too high for a single WGS sample. I'd like to shorten it so I can use the "short" queue to make my job run faster.
On the same note, the jobs that were submitted last week got killed for some reason, but the cromwell monitor didn't pick it up and was just left waiting.
Cheers
M

Matthias;
Glad you got the walltime parameters configured, please let us know if you hit any issues with that.
For the Cromwell issues, if you can provide a detailed example of what is going wrong it would be worth raising an issue in the Cromwell repo (and cc'ing me in) to see if they have advice/suggestions about how best to manage when jobs get unexpectedly killed by the scheduler. It's possible we're missing something with querying the scheduler for job status but I don't have a full picture of how Cromwell manages this yet. Thanks again for testing.


Specify chromium subrepository revisions explicitly

https://linear.app/replay/issue/RUN-992

Landing without review, this PR is only concerned with the build process.


⚠ Bofrost.gr has degraded performance

In bbf8250, Bofrost.gr (https://www.bofrost.gr) experienced degraded performance:

HTTP code: 200
Response time: 6870 ms

Resolved: Bofrost.gr performance has improved in b51fbcb after 6 minutes.


Revert "Type MApping: a long gets mapped to integer in Jet"

This reverts commit 05b10ea856c5917c8c87d0870f1109ccff3fc48d.
The long datatype in Jet is 32 bit and therefore equals the Int32 CLR type.
We cannot use it to map the Int64 CLR type to Jet.
The decimal datatype in Jet has a total number of 28 digits, which can be used to represent the largest 64 bit value (signed and unsigned) of 18,446,744,073,709,551,616 (20 digits).
So the original implementation should be correct.

Good point.
It should also be mentioned, that recent Access database versions have an actual (opt-in) large number data type.
While we could automatically use decimal for OLE DB and integer for ODBC, it would make switching between those underlying providers difficult.
The way to go is probably to add an option that allows users to select between the store types. This way, the large number type can be added later as well.

The large number type for recent version (2016+) might not work. When you enable it it can only be opened by 2016 and later. And then its unknown how it would via OleDb/Odbc as it would need a version of the access driver/provider that can understand that format and data type
By the looks of it quickly one has to enable it directly via the desktop app. Not sure if it can be done programmatically.

Not sure if it can be done programmatically.

Should be possible.

The large number type for recent version (2016+) might not work. When you enable it it can only be opened by 2016 and later. And then its unknown how it would via OleDb/Odbc as it would need a version of the access driver/provider that can understand that format and data type

Yeah, that's why we should make it an option for users to select, rather than a default. If someone enables it, it is that persons responsibility.
Anyway, I don't consider it high priority to implement large numbers, as this is a rather new feature and Jet is mostly a legacy database (except for distributed network share scenarios).

So we go with the option of adding a configuration option to enable using Int64. Call it something like EnableInt64Support

Call it something like EnableInt64Support

It needs to be future-proof in this case here (as discussed above), so it is going to be an enum.

Some comments from a bit of research

Saving decimal values with Odbc can be done if configured correctly. The OdbcType field of the parameter needs to be set to Numeric as in ((OdbcParameter)parameter).OdbcType = OdbcType.Numeric . The only drawback is that we would need to include System.Data.Odbc in EFCore.Jet (the main package) rather than it only being pulled in with the .Odbc specific package.  Tested with Model79_CantSaveDecimalValue and it passes and round-trips correctly
The Large Number data type in Access 2016+ can be used. Obviously if used the database gets stamped and can't be opened by a provider earlier than that (e.g. 2010 database engine).
ADOX and DAO do support it and correctly returns adBigInt. We do have a bug there in that the code to convert that to a string returns integer
The store types to use in the SQL are bigint and datetime2 (Date/Time Extended is also supported). Using these store types automatically stamps the database
Int64 values seem to have a problem being saved (at least in OleDb - havent tested Odbc). It seems x64 gives a conversion error for a parameter (even if the value is just 2). However in x86 it works fine (probably only if the value is within Int32 range, even though parameter has been configured as DbType.Int64). parameter.DbType = System.Data.DbType.Object does the trick. Tested in 365_x64 and successfully round-trip Int64.MaxValue

Nice work!

Once #158 is in this PR should be able to be merged if we want to map Int64/long to use the decimal type as the base/default. Anything else is pretty much under #154

@ChrisJollyAU Hmm, this wasn't finished yet. Is was marked as work-in-progress. Can we revert the merge again?

What was still to do? We had split out the bigint work to #154 . And now that we solved the Odbc bug for decimal we didn't have to have 2 options for the user as to how to treat long. We just default to decimal. They can turn the BigInt support on later if they want


Shift both FGS main aperture in V2, V3

This PR introduces the necessary changes to shift the FGS1 and FGS2 reference locations to match the latest ground-test data.

I verified that the shift is applied in the correct direction.
@shanosborne can you please review?


terragrunt: 0.53.6 -> 0.53.8

Description of changes
https://github.com/gruntwork-io/terragrunt/releases/tag/v0.53.8
https://github.com/gruntwork-io/terragrunt/compare/v0.53.6...v0.53.8

Things done

Built on platform(s)

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

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[x] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[x] Tested basic functionality of all binary files (usually in ./result/bin/)
23.11 Release Notes (or backporting 23.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[x] Fits CONTRIBUTING.md.

Priorities
Add a :+1: reaction to pull requests you find important.

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

1 package built:

terragrunt