Improve PCH and enable PCH for Catch2 and tests

tl;dr:

Compilation speed unchanged with -DSFML_BUILD_TEST_SUITE=1 -DSFML_ENABLE_PCH=0
Significant speedup with -DSFML_BUILD_TEST_SUITE=1 -DSFML_ENABLE_PCH=1

Full analysis logs available here:

https://gist.github.com/vittorioromeo/480aa5ca9b940754844b07b4ea69c70e

SFMLBuildMaster: Build this please.

SFMLBuildMaster: Build this please.

SFMLBuildMaster: Build this please.

Fails to build for me on Windows with VS2022:
cmake -B build -S . -DSFML_BUILD_TEST_SUITE=1 -DSFML_ENABLE_PCH=1
cmake --build build

MSBuild version 17.8.3+195e7f5a3 for .NET Framework

  1>Checking Build System
  Building Custom Rule SFML/build/_deps/catch2-src/src/CMakeLists.txt
  cmake_pch.cxx
SFML\src\SFML\PCH.hpp(31,10): error C1083: Cannot open include file: 'SFML/Config.hpp': No such file o
r directory [SFML\build\_deps\catch2-build\src\Catch2.vcxproj]
  (compiling source file 'CMakeFiles/Catch2.dir/cmake_pch.cxx')

  Building Custom Rule SFML/src/SFML/System/CMakeLists.txt
  cmake_pch.cxx
  C:\Program Files (x86)\Windows Kits\10\Include\10.0.22000.0\um\dinput.h: DIRECTINPUT_VERSION undefined. Defaulting to ve
  rsion 0x0800
SFML\src\SFML\PCH.hpp(74,10): error C1083: Cannot open include file: 'catch2/catch_test_macros.hpp': N
o such file or directory [SFML\build\src\SFML\System\sfml-system.vcxproj]
  (compiling source file 'CMakeFiles/sfml-system.dir/cmake_pch.cxx')

Are we running any build with tests AND PCH enabled in the CI?

Are we running any build with tests AND PCH enabled in the CI?

Duh, I always forget we are not. We should probably add a job or two...

Win 11 / VS 2022 (no Ninja or parallelization)
Before this change: 1min 4s
After this change: 37s
(Very scientifically measured with a stop watch 😄)

SFMLBuildMaster: Build this please.

SFMLBuildMaster: Build this please.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>
Details

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 51.897%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
10474

Relevant Lines:
19002

💛  - Coveralls

SFMLBuildMaster: Build this please.

@ChrisThrasher: any feedback on this? It makes a significant difference on my machine

Sorry, but I'm not in favor of this PR. I think the complexity it adds outweighs whatever benefits it may have. A clean build of the test suite (including Catch2) takes under 10 seconds on my 2021 laptop. Adding complexity to improve compile time for users is one thing but I'm much less motivated to add complexity to improve compile times for the small number of people, myself included, who are building the tests on a regular basis.

Sorry, but I'm not in favor of this PR. I think the complexity it adds outweighs whatever benefits it may have. A clean build of the test suite (including Catch2) takes under 10 seconds on my 2021 laptop. Adding complexity to improve compile time for users is one thing but I'm much less motivated to add complexity to improve compile times for the small number of people, myself included, who are building the tests on a regular basis.

What exactly do you find most complicated about this PR, and what do you think would need to be simplified in order for you to consider approving it?

I can't picture a way of transforming this PR into something I'd be willing to approve

Win 11 / VS 2022 (no Ninja or parallelization)
Before this change: 1min 4s After this change: 37s
(Very scientifically measured with a stop watch 😄)

I think it's quite sad to ignore these sort of improvements. I also think we should start using PCH as our default in CI jobs and only have one or two sanity-check non-PCH jobs to save time and computing power (let's be green!).
Anyone else on my side? @eXpl0it3r @Bromeon @binary1248


Bipropellant fuels for rockets

Adds bipropellant fuels
Fuel combos are exclusive, you cannot have three types of monopropellant or six types of bipropellant in the same rocket
Oxidizers, bipropellant fuels, and monopropellant fuels now can have their consumption in the rocket configured in the config - per fuel
Rocket fuel will work as normal, but Hydrogen and Oxygen input separately can now be used
Bipropellant fuel bars are fuel + oxidizer, so half full of each is half, same as full of one and empty of the other

I've try this fork for 1.12. But is works very strange: The Rocket GUI does not recognize fuel. The rocket can contain only 1 rocket tank.
I think: It is not ready.

I've try this fork for 1.12. But is works very strange: The Rocket GUI does not recognize fuel. The rocket can contain only 1 rocket tank.
I think: It is not ready.

is known and only happens for monopropellants, I have not found the reason yet. 2).... what? I've literally tested this and they can contain as many tanks as they want.

is known and only happens for monopropellants, I have not found the reason yet. 2).... what? I've literally tested this and they can contain as many tanks as they want.

is known and only happens for monopropellants, I have not found the reason yet. [Edit: this seems to be fixed now]
2).... what? I've literally tested this and they can contain as many tanks as they want.

Oh i mean... it doesn't matter how many tanks have a rocket one or many. It will pass all checks for fuel capacity and will be built. And will start.

is known and only happens for monopropellants, I have not found the reason yet. [Edit: this seems to be fixed now]
2).... what? I've literally tested this and they can contain as many tanks as they want.

Oh i mean... it doesn't matter how many tanks have a rocket one or many. It will pass all checks for fuel capacity and will be built. And will start.

So I'm still confused, are you saying that the checks for fuel capacity aren't rigorous enough?

So I'm still confused, are you saying that the checks for fuel capacity aren't rigorous enough?

So I'm still confused, are you saying that the checks for fuel capacity aren't rigorous enough?

I don't know why is started. What i do:
1st i build a rocket in standard AR, there wat 2 engine, 4-6 fuel tanks, satellite bay.
Next i've build your branch, and there was enough 1 tank. And a rocket was launched.

So I'm still confused, are you saying that the checks for fuel capacity aren't rigorous enough?

I don't know why is started. What i do:
1st i build a rocket in standard AR, there wat 2 engine, 4-6 fuel tanks, satellite bay.
Next i've build your branch, and there was enough 1 tank. And a rocket was launched.

I found the bug, it pulls the wrong rate (and since I changed nothing else; that rocket would technically be viable in standard AR if it let you build)

I found the bug, it pulls the wrong rate (and since I changed nothing else; that rocket would technically be viable in standard AR if it let you build)

@tabr which should be fixed now :)

@tabr which should be fixed now :)


names and logos don't match on algolia's profile

https://gmkr.io/s/5afedc5f88514342da149c03/0

reported here on twitter https://twitter.com/Laurent_VB/status/997477560031285248


New API to accomodate different selection heuristics

Context: https://github.com/alan-turing-institute/MLJ.jl/issues/487, #40
Draft PR
The new API is documented in the amended REAMDME.md of this PR. The changes are roughly in line with my suggestions in the linked issue. I will itemize these changes shortly.

Closing if favour of #75


Shade okhttp and okio in jaxrs-clients

Required by https://github.com/palantir/http-remoting/issues/431

This change is

@ellisjoe

@markelliot

any comments/concerns?

I don't want to copies of this on the classpath with the same name: one in
the shadowJar and one from others depending on this library.
On Mon, May 22, 2017 at 5:54 PM Joe Ellis<EMAIL_ADDRESS>wrote:

@ellisjoe commented on this pull request.
In jaxrs-clients/build.gradle
https://github.com/palantir/http-remoting/pull/432#discussion_r117877306
:

@@ -54,6 +58,8 @@ shadowJar {
relocate('zipkin', 'httpremoting.shaded.zipkin')
relocate('org.joda.time', 'httpremoting.shaded.org.joda.time')
relocate('okio', 'httpremoting.shaded.okio')

relocate('okhttp3', 'httpremoting.shaded.okhttp3')
relocate('com.palantir.remoting2.tracing.okhttp3', 'httpremoting.shaded.com.palantir.remoting2.tracing.okhttp3')

why does this need to get relocated?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/palantir/http-remoting/pull/432#pullrequestreview-39619376,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AGOdwVunYYl0rIVvIfaTbDWLB1AgER68ks5r8i42gaJpZM4Ni_OJ
.

want to flag that this PR causes some serious breaks internally - it's binary incompatible with previous releases. I've linked you some code - but basically there widely used internal libraries that rely on FailoverFeignTarget taking an okhttp3.OkHttpClient and not a httpremoting.shaded.okhttp3.OkHttpClient


How to implement custom built-in classes/functions

I'm working on re-creating our current JS App engine which is based on Nashorn to use GraalJS, But I need to implement some Web API/Service Worker standards like fetch, Crypto, console, etc
Some notes, We are using the JS engine from GraalVM, Not the NodeJS version. We don't need to use ScriptEngine either as we already have an abstraction layer that allows us to plug in different engines.
I want to try keep my implementations as close to the specifications and how similar platforms like Deno, CloudFlare and the browser implement these API's to ensure a better compatibility with npm packages.
So my question is, How to I implement builtins or native objects/functions in GraalJS?
I've looked into using ProxyObject and ProxyExecute, Here are some of the issues I'm having:

I can't figure out how to set the Symbol.toStringTag property of a ProxyObject. This property identifies the class name essentially. e.g. console.log(Object.prototype.toString.call(crypto)) outputs [object Crypto] in a browser. I found the Symbol class in GraalJS and the necessary values. See https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Symbol/toStringTag
How do I throw a JS TypeError exception from Java? For example if the wrong arguments get passed to the Headers class (Used in fetch API) it should throw an exception that reads: TypeError: Failed to construct 'Headers': The provided value is not of type '(record<ByteString, ByteString> or sequence<sequence<ByteString>>)'. I'm currently throwing an IllegalArgumentException which isn't ideal.

Any advice or assistance would be great :-)

Hi, Thank you for reaching out, let me check and I'll get back to you

I can't figure out how to set the Symbol.toStringTag property of a ProxyObject.

This is not possible. ProxyObject (like other parts of Polyglot API) expects members to use String keys. On the other hand, you can wrap your ProxyObject in an appropriate JavaScript Proxy and use this Proxy instead:
handler = { get(target, prop, recv) { return (prop === Symbol.toStringTag) ? 'MyTag' : target[prop]; } };
proxy = new Proxy(yourProxyObject, handler);

proxy delegates member/property read/writes to yourProxyObject and Object.prototype.toString.call(proxy) is [object MyTag].

How do I throw a JS TypeError exception from Java?

Just get the reference to TypeError:
Value typeError = context.eval("js", "TypeError");

and use
throw typeError.newInstance(someErrorMessage).throwException();


[FP]: Many FPs on mysql-connector-j that are for the mysql server

Package URl
<EMAIL_ADDRESS>CPE
cpe:2.3:a:mysql:mysql:9.0.0:*:*:*:*:*:*:*
CVE
CVE-2024-21196, CVE-2024-21230, CVE-2024-21238 etc etc
ODC Integration
{"label"=>"Gradle Plugin"}
ODC Version
10.0.4
Description
Historically individual CVE suppressions were used, however the mysql connectors have their own CPEs as below so this is no longer appropriate. Will submit PRs to correct this and reduce ongoing maintenance headache.
cpe:2.3:a:oracle:mysql_connector\/j:9.0.0:*:*:*:*:*:*:*
cpe:2.3:a:oracle:mysql_connectorsj:9.0.0:*:*:*:*:*:*:*

https://github.com/jeremylong/DependencyCheck/blob/main/core/src/main/resources/dependencycheck-base-suppression.xml#L3210-L3818

Fixed in #7058 (still to be published on the hosted suppressions at time of writing)

published now with the help of another FP Report workflow

Cool, will submit cleanup PR to master shortly.


the problem about concurrent

the concurrent didn't work.

relate to https://github.com/bdim404/HackerNews-Summarize-Telegram-Bot/pull/40


DBZ-5640 literal "${project.version}" in the source record

DBZ-5640 literal "${project.version}" in the source record instead of the actual version

@ggaborg Applied, thanks


Fix: Pin Python dependencies

[x] I have read Pelorus Contributing guidelines

Linked Issues
resolves #951
depends on #948
Description
Avoid code breaking with unexpected updates from Python dependencies.
Now, poetry will manage the Python dependencies for us. To add (or update) a dependency, run a poetry command (it will check if there are no conflicts with the current dependencies, before adding it). This will update both pyproject.toml and poetry.lock, but not requirements files. To update them, run the new make command (we will not update requirements file anymore, this is poetry job). Requirements files now have more things in there:

the previous dependencies, but now all pinned (no more unexpected updates to break the project CI)
the dependencies of the dependencies (that were already installed previously, but were under the rug, and we had no control over them, which poetry also monitors)
the hash, which is a security constrain

Dependabot will open PRs when there are updates available, and the new workflow will warn if the requirements files where not updated.
Testing Instructions
Run documentation commands and check if nothing broke with the changes (for example make dev-env).
To test the built exporters images with pinned versions, run the command github-action[bot] commented on the PR.

/test 4.10-e2e-openshift

TODO
add documentation how to add, remove and update dependencies with poetry
add poetry to install tools script

/retest


No-strict mask

Hello, i need to format some input without validation. EX: There is an input with mask: 99 99 999999. But if user don't follow it (e.g. enter some thing like this: 34SF247800) the input must allow this.
I found pre-solution by setting mask like (99 99 999999)|(*{+}) but it works only if input starts with non-numerical symbols.
Example on jsfiddle.net: http://jsfiddle.net/65wyLfkd/

@RobinHerbots Can you give a advice about this?

@dekdegiv ,
I will have a look at it.

@dekdegiv ,
Have a look at http://jsfiddle.net/65wyLfkd/1/

Thank you, @RobinHerbots.
But it does not work propertly. You can see it on alt1 in your example: the string match first mask, but it formats like normal (without spaces). So we in fact we got only one mask: *{+}. Or I don't understand something?
It works only if we set space after first 2 digits.

@dekdegiv ,
For that you need the keepStatic option.  See readme
http://jsfiddle.net/65wyLfkd/2/

Thank you, now it works awesome!


Group metrics by server

I am pulling a wildcard list of HTTP response codes for a group of web servers. Eg..
webserver1:
http200: 10
http404: 1
webserver2:
http200: 13
http404: 2
http304: 5
At the moment there is no way to combine the metrics across webservers and show total number of httpXXXs since the http codes are being selected by a wildcard.

Any progress with this? 😃

Sorry, haven't a time for this feature.

Hi Alexander, there is a progress with this issue?

Hello. This feature is very important in some scenarios. I have to create separate panels for each such group, when I can see everything on one graph using graphite backend. It would be cool to be able to group by any part of the query, i mean by host, by group, by application, by item.

I'm having a similar issue that it would be helpful to be resolved with a "GROUP BY" statement.
I'm using the "table" visualization.
Querying for "host" and "Model" (zabbix key: system.hw.model) on query A and then "host" and with "OS version" (zabbix key: system.sw.version) but when I get the data, I have both columns separated.
example:

host
item
key
last value

host A
Operating System
system.hw.model
{model-of-host-A}

host B
Operating System
system.hw.model
{model-of-host-B}

host C
Operating System
system.hw.model
{model-of-host-C}

host A
Hardware model name
system.sw.os
{version-of-host-A}

host B
Hardware model name
system.sw.os
{version-of-host-A}

host C
Hardware model name
system.sw.os
{version-of-host-A}

It would be great if I can filter or group by each host so both values are on the same row.
What I would expect to have:

host
model
version

host A
{model-of-host-A}
{version-of-host-A}

host B
{model-of-host-B}
{version-of-host-B}

host C
{model-of-host-C}
{version-of-host-C}


questions

Why not put a booster between the panel and the TP4056?  Then you would have a constant 5V into the TP4056.  If needed another booster on the output.  The boosters are almost as cheap as the TP4056.
Doesn't the added diode just bypass the p-fet?  Making the p-fet useless.

Sorry to be late responding.
I don't think a boost regulator on the input would accomplish much.  As it is, even if the solar panel can't supply enough power to turn on the TP4056, it will still contribute as much current as it can to the load at the battery voltage.  So what energy it can produce is always being used in some way.
The material here assumes a 3.3V output supply is needed, which is provided by a linear regulator.  If 5V is needed, then you would need a buck/boost converter to handle both battery voltage and panel voltage in full sun.
Adding an extra Schottky diode only bypasses the p-fet when the p-fet is off.  But at night, the p-fet is turned on, which bypasses both the body diode and the extra diode.  So in the dark there is no voltage drop across the p-fet.  But the opamp model is even better because there is never any voltage drop across the p-fet when the battery is supplying any current to the load.  The ouput voltage is never lower than the battery voltage.

Actually, the in the module its the DW01, not the tp4056, that switches the low side.  But the mosfets driven by the DW01 are always fully on unless there's an over-current or over-disharge event.  If they turn off, something has gone majorly wrong, and the battery negative terminal will be disconnected from ground.
I don't know what to suggest about your D1 problem.  I tested the two diode model and it worked fine.


Add n00b as contributor

@all-contributors please add @negue for ideas and help

@all-contributors please add @negue for ideas and help


When background page is inactive, clear database doesn't work

A confirmation popup is shown when clicking the Clear Database button in the options page, and due to Chrome limitations, the chrome.extension.getBackgroundPage() API needs to be used for this. However, the background page can be inactive, for example when the extension has just been updated or if no events come in from the game, and then this API will return null. This causes an error which prevents the button from doing its job.

No longer an issue by moving the options page to a full tab instead of using a modal in the extensions page.


eclint does’t exit with non-zero status when checking multiple files and only some has errors

If any errors are reported, the Node process will exit with a status code of 1…

This doesn’t work when multiple files are globbed and errors are reported only in some of these files.
$ eclint check '**/*'; echo $?
test-me.adoc: line 2: trailing whitespace found
0

$ node --version
v0.12.7

I just published v0.2.7. Tell me if that fixes it.

Nope, it’s worse, now it exits with 0 even when checking just one file.
btw It’s better to let it test before releasing new version.

I can always revert, which I just did. Also, I only had a 10-minute window to look into this and that has just expired. If you can submit a breaking test I can look into it more. As for now, all tests are passing, including on Travis.

As for now, all tests are passing, including on Travis.

Yeah, because you don’t have any test for the cli module (or I just can’t find it). So it’s also not so easy for me to add test for this particular behaviour, because there’s no scaffolding prepared.
Well, you can unpublish the package, but that should be used very rarely! It’s not a “revert” in true sense of the word…

Even if a package version is unpublished, that specific name and version combination can never be reused. In order to publish the package again, a new version number must be used.

You're right. There are no tests for the CLI module, which is why it's not a quick fix.
And yeah, I'm not going to unpublish the package. What I did was much easier/faster and gave you something you could test.

I’m (of course) able to install eclint from repository…

Thanks for pointing me in the right direction. Fixed in v1.0.0, https://github.com/jedmao/eclint/commit/b75a2e0c458eceb97223f4f8bba69fe32c33a803.

You’ve “solved” the bug by deprecating node 0.10.x? You must be kidding me… I know that it sucks to support outdated versions, but 0.10.x is still officially maintained and 0.12.0 has been released only 5 months ago. I personally don’t use binary linux distros with repositories that resemble museums, but most people do, so I can’t use a tool that don’t work “out of box” for most people.
Okay, I’ll find another tool for checking editorconfig rules.

Feel free to submit a fix for Node 0.10 if you have a solution; otherwise, there's editorconfig-tools with 14 open issues or echint, which looks like potentially a good alternative.

Fixed in https://github.com/jedmao/eclint/commit/f3a87fb382d53ae4f2f8eb694556bda5d208d850

@jirutka BTW – Next time someone gives you a free sandwich, try not to complain that it doesn't have any cheese in it. You might win more friends that way.

The problem with exit status is still not fixed.

You're absolutely right. Fixed in v1.1.1: https://github.com/jedmao/eclint/commit/20633c34c264761bd009505c5a559ca584eff6bc
$ eclint check "src/**"; echo $?
src\lib\plugin.ts: line 7: invalid indentation: found a leading space, expected: tab
1


New Status "Aufwachladung"

Dear Community, dear Matthias @marq24,
today I had recognized a new status, which had been shown as "UNKNOWN" in Homeassistant. I am using your HA integration still on version 3.1.3 on HA 2024.1.3 (thus I am running a little late...)
This is a SENEC.home V3 Hybrid duo with the following software version:
REVISION MCU: 1827
REVISION MCU-BL: 2307
REVISION NPU-REGS: 10
REVISION NPU-IMAGE: 2310
REVISION GUI: 1967
I don't know exactly when Senec had installed the last update.
On the Display and in the WebGUI I see a status of "Aufwachladung" in German language.
Can anybody tell me, what this means? I never had seen this before.
The funny thing is, that this translates into "wake up charging", but indeed at the moment of writing the battery is being discharged as normal on a low power demand. Also on the front-panel of the Senec V3 the "Laden" (charging) LED is on, while the battery discharges. What are these gentlemen doing at Senec?
Can I help in adding this new status message to your integration or is it already integrated in version 3.1.4 or 2014.0.1?
I am a little shy to upgrade to 2014.0.1. Is this compatible with the 3.1.x series? Sorry for bothering you, but I read somewhere, that there are compatibility issues/considerations. I am using both, the local polling for current data and the WebAPI for total energy. (But I do not already own a Wallbox.)
Thank you very much for your great work and support!
Best regards
Thomas

Hi Thomas,
I don't have this new version on my V3 Hybrid ... I am still on MCU
So the "new" Status ist not present yet, if you want to help, you can share the content of the following file:
https://[SENEC-IP-HERE]/js/DE-de.js
Concerning your other question "What are these gentlemen doing at Senec?" -> I am clueless - IMHO must be a issue in the upper-management... They might need a new CIO...

Hi Matthias,
you are welcome! I am glad I can help. Thank you for the link. This is obviously a new status #99.
I agree with your statement on the CIO. I guess you would do us all a big favour, if you would volunteer for this Position! ;-)
I really dislike a charging light being on, while the system discharges.
Please find attached the downloaded file.
Best regards
Thomas
P.S.: Would you mind me contacting you personally for a short off-topic Senec chat?
SenecHybridV3duo-DE-de.txt

Just a comment on this Senec SW-Version, in case people find this interesting: (I hope you donot mind)
I have a emergency power supply added to my Home V3 duo and have set the discharging threshold to 30%, as at the moment the solat power is not sufficient to charge the battery to 70% anyhow. The last weeks discharging stopped at 30%.
Now I had looked at the battery load indicator: it is already at 18% and continues to discharge. The function "Backup Power Pro" seems to be broken by this update. As this is the first day I observe this, the update must have arrived today.
Who knows what else is broken?
Thank you Senec!

Hi @ETH1166, @marq24,
I'm using the "Reservekapazität" and the "Backup power pro" and had a similar idea as you @ETH1166.
I've set the "Reservekapazität" to 25% and the functionality of our integration works as expected, since I can see the expected percentage in the SENEC App as well as on https://mein-senec.de/.
Nevertheless I've ovserved two strange behaviours:

The reserved battery capacity is below the capacity I've set (in my example below 25%)
Thesis: If you are limited to 70% of your battery capacity ("Konditionierungsbetrieb"), the calculation for the reserved battery capacity ("Reservekapazität") is not based on 100% of your battery capacity.

To be honnest I dont have any clue what SENEC takes into consiteration for the calculation, but sometimes my battery discarted to 22%, sometimes to 18%, even if my reserved capacity is set to 25%.

Sometimes my battery discarges very slowly over a long period of time and this even below my reserved capacity of 25%.

I can set the reserved capacity max. to 50%.

I've started to ovserve the first two points when the "Konditionierungsbetrieb" started.
To say if the 3rd point is normal, I'm missing a propper documentation of the expected functionality by SENEC.
Hope this helps.
(My MCU Version ist also still at 826)

@ETH1166 can you also please check the italian language file - what's the translation for the new Status 99?

Hi Thomas,
I don't have this new version on my V3 Hybrid ... I am still on MCU 0826
So the "new" Status ist not present yet, if you want to help, you can share the content of the following file: https://[SENEC-IP-HERE]/js/DE-de.js
Concerning your other question "What are these gentlemen doing at Senec?" -> I am clueless - IMHO must be a issue in the upper-management... They might need a new CIO...

https://senec.com/de/aurelie-alemany-verlaesst-senec

Same at me, since 3 days this new message "Aufwachladung" on my Display. Charging only with 600w max. possible. Discharge not possible at all. Buhhh Senec ....

closed with release of 2024.0.9

Thank you @marq24 !
Sorry for my late reply. Italian language reads:
99: "CARICA DI RISVEGLIO"
And please ignore my ignorance: I have just updated to version 2024.0.9 and have lost the configuration of the energy dashboard. Did I miss a required manual step by updating from version 3.1.3?
I see the following:

and

One of the messages of missing entities comes from the migration from local polling. The second for the WebAPI is new.
I find the "missing" entity: senec.sensor_webapi_powergenerated_total (same name as before) in the "Verlauf" graphics section but not in the energy dashboard. Even after an hour...
Will this recover or did I do something wrong?
Thank you and best regards
Thomas

Hi Thomas,
please enable the debug log and restart your HA - after some minutes, disable the debug-logging again (in the GUI) and send me the log file (by eMail)...
TIA

thanks for the logs... from the output there are two remarks:

check your 'sensor.gasverbrauch' - this is the one generating the unit-convert exceptions (so this is not senec related)
looks like, that for you the '***** APP-API: get_master_plant_id(self) ********' call is running into an unexpected exception...

So the simples would be, to remove the WEB-API part and simply re-add it with the same/previous name [then all sensors should keep the internal names] (of course creating a backup before would not hurt - just in case something else fails)...

Dear Matthias @marq24,
that simple? - at least after your advice! Thank you so much for your support!
Energy values are back in HA and I hope they appear soon in the energy dashboard again...
The only tiny detail is, that I have lost the cycle count, which should be originating from the local polling plug-in:

The configuration shows:

Do I need to change to the new values sensor.senec_bms_cycles_a_2 instead of former values sensor.senec_bms_cycles_a???
Why are there new "_2" variants?
Best regards
Thomas

Thanks Matthias,
your coding is great, but is there an alternative way, which would not cause the loss of data?  -- Maybe I just keep the "_2" running for now...
The cycle counts seem to be pretty low for me. At least they are "customer friendly". I thought this might be a good idea to document those in case of warranty issues.
The 4 modules are all at 99% health and 30 cycles since June 2022. 30 cycles in about 230 days is a really low number, I agree.

yes of course you also can just use the _2 ones (and remove the ones marked as no longer available)... and if you really want to keep long time data - make sure you have influx db running...
but all of the 4 modules have a similar cycle count then? - I have 80, 4, 24 and 48

Yes all have the same cycle count.
I am running a base installation of HAOS, which might be a limitation. I still need to learn about HA...
Can you advise a tutorial on how to upgrade an existing installation including data to Influx DB? I did not find reliable information. Or is this simply not possible?

I am sorry Thomas - but I did not even try to find, if it would be possible to import data from HAOS to a InfluxDB - I just have both running in docker containers and have configured HA to export data to the InfluxDB (which has been basically 3 or 4 lines of additional configuration in HA)
influxdb:
  api_version: 2
  ssl: false
  host: <MY-INFLUX-CONTAINER-IP-HERE>
  port: <MY-INFLUX-CONTAINER-PORT-HERE>
  token: <MY-TOKEN-HERE>
  organization: <MY-INFLUX-ORGA-HERE>
  bucket: <MY-BUCKET-HERE>
  tags:
    source: HA
  tags_attributes:
    - friendly_name
  default_measurement: units


error TS2557: Expected at least 0 arguments, but got 1 or more.

Bug Report
Current Behavior
Hello, Please someone can help,
after update to 6.3.3 I get in pipe TS2557: Expected at least 0 arguments, but got 1 or more.
Reproduction

stackoverflow link:
https://stackoverflow.com/questions/52929467/after-update-to-6-3-3-i-get-in-pipe-error-ts2557-expected-at-least-0-argument

return of(this.getRootHref()).pipe(
  ...pipeArguments,
  distinctUntilChanged()
);

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

Runtime: [e.g. Node v 8.11.3]
RxJS version: 6.3.3
(If bug is related) Loader, build configuration: [e.g webpack, angular-cli version ~7.0.2, config]

https://github.com/ReactiveX/rxjs/issues/3989

Hello @cartant,
I tried, but I can't adapt my code with your example,  here is my complete code.
  private getEndpointAt(...path: string[]): Observable<string> {
  if (!path) {
    path = ['/'];
  }
  console.log(path); // ["items", "search", "candidates"]
  let currentPath;
  const pipeArguments: any = path
    .map((subPath: string, index: number) => {
      return [
        flatMap((href: string) => {
          return this.getEndpointMapAt(href);
        }),
        map((endpointMap: EndpointMap) => {
          if (hasValue(endpointMap) && hasValue(endpointMap[subPath])) {
            currentPath = endpointMap[subPath];
            return endpointMap[subPath];
          } else {
            currentPath += '/' + subPath;
            return currentPath;
          }
        })
      ];
    })
    .reduce((combined, thisElement) => {
      return [...combined, ...thisElement];
    }, []);

  return of('http://localhost:8001/1/').pipe(
    ...pipeArguments,
    distinctUntilChanged()
  );
}

Some more info in this issue https://github.com/ReactiveX/rxjs/issues/4177
Until the code linked to that issue is merged, I think you're stuck with the same as any hack seen here, so:
return (of('http://localhost:8001/1/') as any).pipe(
    ...pipeArguments,
    distinctUntilChanged()
  );

The underlying implementation of pipe didn't change, but typing was fixed to remove an overload that was too loose. Unfortunately this broke the typing for spread args to pipe. But because the implementation is the same, spread args still work in 6.3.3 if you can convince TS that it's ok to pass them, which is of course as simple as type asserting any. Obviously that isn't ideal, especially if you have to do it in many places, but for 6.3 I think it's all you can do(?)


Support for Universal Windows Platform?

I see that this project supports Windows, but does it mean UWP as well? If not, will we have it in the future?
With UWP support, Rust could even run in HoloLens or Xbox.
I can find nothing related to UWP in the Windows support. But I'm also not familiar with Windows stuff, so maybe I missed something.

mio works fine in desktop UWP apps. ARM is another story.

@SergejJurecko Do you have any more specific details about the support on ARM windows?

No I have not tried it actually.
Also keep in mind it might all work locally and be rejected once you try to publish to windows store..

Since the interest in this seems to have died down I'm closing this, but not rejecting this.

0.7 implementation will not be UWP compatible. Functions in afd.rs  are not allowed in UWP.

In general, we try to avoid "feature" issues that have no path to implementation.
If someone wishes to champion UWP, they can open a new issue w/ an implementation proposal followed by a PR.

Rust can't even target UWP... Though it's being worked on.
So as a downstream user I might say nothing in Rust supports UWP. After UWP support is merged, I might be able to try investigating this.


.NET Core 3.1 System.Interactive.Async assembly issues

Trying to run FirebaseAuth ListUsersAsync method an error is thrown
System.IO.FileNotFoundException: Could not load file or assembly 'System.Interactive.Async, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=94bc3704cddfc263'. The system cannot find the file specified.
code snippet
var e = _firebaseAuth.ListUsersAsync(null).GetAsyncEnumerator(); try {     while (await e.MoveNextAsync())     { ...     } } finally {     if (e != null)     {         await e.DisposeAsync();     } }
Project has a dependency of a package Google.Cloud.PubSub.V1 ≥ 2.0.0, which is probably using latest Gax
Anyone knows how to fix this?

Yes, it appears a version conflict between different versions of Gax. The 2.x version of Gax that we depend on has the following dependency:
<PackageReference Include="System.Interactive.Async" Version="3.2.0" />

This has been removed in the Gax 3.x version. We can start the migration process for latest Gax but it will likely be a while. In the meantime perhaps you can take an explicit dependency on the above assembly and make sure it's available to your app?

Thanks for reply.
I have tried that, unfortunately another error is thrown saying
System.NotImplementedException: The method or operation is not implemented.
at Google.Api.Gax.PagedAsyncEnumerable`2.GetAsyncEnumerator(CancellationToken cancellationToken)

Can you try raising this at https://github.com/googleapis/gax-dotnet?
Given that the issue is caused by their libraries, they might have known workarounds. Only other immediate solution I can think of is downgrading your other PubSub dependency to something that uses Gax 2.x

Downgrading to an older PubSub version did help. This is good enough until client migrated to latest GAX.
Thanks for you help.

Downgrading to an older PubSub version

Hi @TheSpy , do you mind explaining how to downgrade to older pubsub version? I tried google but i still have no idea

@hiranya911 Could you please give me some pointers. I am stuck at this for weeks now,

@liongkj you will have to go through your dependencies, and downgrade anything that depends on Gax 2.0.

as far as I can see it is resolved and could be closed. Thanks

I confirm that a release https://github.com/firebase/firebase-admin-dotnet/releases/tag/v2.0.0  has this issue resolved.
Thank you!


Reducing allocations

First of all, thanks for creating this package.. i really love the simplicity of this code base. I could read the whole codebase and make sense out of it in 15 mins.
However one this that concerns me is the no of allocations as benchmarked here
https://github.com/uber-go/zap#performance
Would like to use this place to huddle on improvements that can be done to reduce the no of allocations without sacrificing the simplicity of this codebase.

https://chris124567.github.io/2021-06-21-go-performance/
This blog was very informative


copy local files to azure storage account occurs error at times

I have mount a dir on azure datalake storage gen2 successfully. But when i copy local files to container, it failed sometimes.

I switch on parameter --debug_fuse, and there is syslog:

goofys: stable 0.24.0      os: 16.04.1-Ubuntu

Looks like you got a 401/402 from azure.
Can you try --debug_s3 and share the logs? That logs request/response to cloud backed (azure datalake gen2) in this case.


Doc/DOC-1066 Readme update

Description
Updated readme.md to bring it in line with our messaging and documentation changes.

thanks for doing this. i think it should be applied to master branch no?


Can wget it simply on our Linux CLI

As the binaries are like 8 MB, I'd consider releasing them without archiving/zipping them first. That seems would make CLI life easier to download/install.
Even with the current release format, providing something like
# Set the base URL
BASE_URL="https://github.com/sigoden/aichat/releases/download/v"

# Set the version as an environment variable
VERSION=${1:-""}

# Get the architecture from uname or lscpu
ARCH=$(uname -m)

# Download the file
wget "${BASE_URL}${VERSION}/${ARCH}/aichat-${VERSION}-${ARCH}-unknown-linux-musl.tar.gz"

in the https://github.com/sigoden/aichat?tab=readme-ov-file#pre-built-binaries would be great.

Users will always find a way to install aichat.


[SPARK-29539][SQL] SHOW PARTITIONS should look up catalog/table like v2 commands

What changes were proposed in this pull request?
Add ShowPartitionsStatement and make SHOW PARTITIONS go through the same catalog/table resolution framework of v2 commands.
Why are the changes needed?
It's important to make all the commands have the same table resolution behavior, to avoid confusing end-users.
Does this PR introduce any user-facing change?
Yes. When running SHOW PARTITIONS, Spark fails the command if the current catalog is set to a v2 catalog, or the table name specified a v2 catalog.
How was this patch tested?
Unit tests.

@viirya
Could you please review? Thanks a lot!

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/17384/
Test PASSed.

Test build #112414 has started for PR 26198 at commit 003ab44.

This looks fine to me. Looks like loadTable can provide partitioning info so V2 implementation can also be implemented now?

The partitioning provided by loadTable are the transforms and partition columns, not the actual table partitions. SHOW PARTITIONS can't be implemented until we have an API for getting partition metadata.

Test build #112414 has finished for PR 26198 at commit 003ab44.

This patch passes all tests.
This patch merges cleanly.
This patch adds the following public classes (experimental):
case class ShowPartitionsStatement(tableName: Seq[String],

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/112414/
Test PASSed.

Test build #112436 has started for PR 26198 at commit 157b755.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/17404/
Test PASSed.

Test build #112436 has finished for PR 26198 at commit 157b755.

This patch fails due to an unknown error code, -9.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/112436/
Test FAILed.

the changes LGTM, let's fix the conflict

Test build #112478 has started for PR 26198 at commit 248513c.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/17445/
Test PASSed.

Test build #112478 has finished for PR 26198 at commit 248513c.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/112478/
Test PASSed.

Conflicts fixed @viirya

Thanks. Merging this to master!

Thanks all for the help!


I can't get subscriptions for a user

I reference the Get subscriptions for a user to confirm user has subscription.
But I always got the { "items": [] }
I also try use Query for products to query user own products.
I also got the same response.
I don't why.

I'm sorry you're running into troubles using this API. I'm going to close this issue because it appears you have already reached out to an internal MVP alias for help, and that is a more appropriate resource for help (Issues in this repo are intended primarily for feedback/problems with the docs rather than product support).
That said, some things to troubleshoot/consider:

Is it possible that the user specified by the Microsoft Store ID key you passed to the b2bKey parameter doesn't have any subscription entitlements for any of the products assigned to your Dev Center account?
Are you receiving any HTTP error codes with the response?

I sure the MS Store ID has a subscription.
Because I use StoreContext.GetAppLicenseAsync method and got the purchased StoreProduct.
I also find the purchased order on the https://account.microsoft.com/billing/orders .
So I don't what happend.
By the way, If I use https://onestore.microsoft.com to generate AAD access token, I invoke collections API or purchase APIs don't response HTTP error codes.
But I follow the link :

I use https://onestore.microsoft.com/b2b/keys/create/collections to get access token to  invoke collection APIs , and I got un-authorization error.
https://onestore.microsoft.com/b2b/keys/create/purchas , it is also response un-authorization.

finally, I always use https://onestore.microsoft.com to generate AAD access token and invoke collection APIs and purchased APIs.

If you're getting an unauthorization error/message when trying to generate an access token with the https://onestore.microsoft.com/b2b/keys/create/collections or https://onestore.microsoft.com/b2b/keys/create/purchase audience URIs, that's a likely source of your problem, since you need to successfully create that token in order to generate the valid Microsoft Store ID key for the current app customer. Can you confirm that you have performed all the tasks in step 1 and step 2?
I do see a reply to you on the MVP alias asking you for cabs and other data. I'll forward it directly to you to make sure you see it. In your response, please also provide specific details about the "unauthorization" message you are seeing when trying to create the tokens.

Thank your response.
"unauthorization" issue already be solved.
Because I don't notice things:

in http request: AAD access token must be built from https://onestore.microsoft.com
built MS Store ID must be depended API type: collection or purchases

I follow the rule to solve it.
And now, I already got the purchases and collections of the user.
But I sure got { "items": [] } result is difference with "unauthorization".
Because the same code always got { "items": [] }, today the same code got the result. haha...

Hi there,
We experience the same issue, always getting { "items": [] } when requesting subscriptions for a user. @poumason, could please confirm that you resolved this problem and successfully get list of subscriptions?
I believe that we followed the docs closely and here is what we did:

Created new app registration in Azure Active Directory.
Associated identifier of the app registration (created in the first step) with our app Windows Dev Center Dashboard (this required Global administrator permission, which wasn't immediately obvious).
Created three AAD access tokens for different audience URIs (general, purchases and collections).
Created Microsoft Store ID keys for Collection and Purchase APIs by calling StoreContext.GetCustomerCollectionsIdAsync and StoreContext.GetCustomerPurchaseIdAsync respectively.
Finally we called Collections and Purchases API to request products / subscriptions for the user (using Microsoft Store ID keys, generated in step 4). Response is "200 OK", but the list is always empty and that is the major blocking issue right now.

We just confirmed via https://account.microsoft.com/billing/orders that our test Microsoft account (who we created Microsoft Store ID Keys on behalf of) owns one durable purchase and one active subscription.
So why do we still get empty lists?


Opening a new folder closes exists terminal with process in it

VSCode Version: Code 1.17.2 (b813d12980308015bcd2b3a2f6efa5c810c33ba5, 2017-10-16T13:59:46.104Z)
OS Version: Windows_NT x64 10.0.14393
Extensions:

Extension
Author (truncated)
Version

angular-material
1to
0.13.0

ng-template
Ang
0.1.7

path-intellisense
chr
1.4.2

EditorConfig
Edi
0.11.1

tslint
eg2
1.0.14

prettier-vscode
esb
0.24.0

auto-rename-tag
for
0.0.15

angular-essentials
joh
0.3.2

Angular2
joh
2.10.0

Angular-BeastCode
Mik
5.0.12

debugger-for-chrome
msj
3.5.0

angular2-inline
nat
0.0.17

(1 theme extensions excluded)

Steps to Reproduce:

Open VS code
Open terminal
Start some install process, like npm install -g @angular/cli
while it in progress in Vs code open new folder

Result: the whole vs code window is reinitialized with terminal where installation was.

Reproduces without extensions: Does not matter.

Duplicate https://github.com/Microsoft/vscode/issues/20013


Pattern registration auto-compile

app.router.register_pattern(
    "ipv4",
    ipaddress.ip_address,
    IP_ADDRESS_PATTERN,
)

If IP_ADDRESS_PATTERN is a str there is a mypy error that it is looking for a compiled expression. Should add support for accepting both re.compile(...) and strings, and auto compile them at registration.

Already resolved


UWPX-Client is Public Archive

https://github.com/UWPX/UWPX-Client
Is it still worth listing it?

I think, that it is worth to list, so that more people be aware of it and consequetnly someone new would continue to further develop it.


Stuck at 1 / 36 processing

I logged into sourcerer through Github, and after processing the first repo, which is an repo that I was added as a contributor for but I've never committed to, it doesn't continue to process. I tried refreshing github repos, but that just changed it to 2 / 72. I got rid of sourcerer from my Oauth apps and re-added it still with the same problem.

Now all of them have failed with Timeout reached.

It finally worked overnight, I don't know exactly what the problem was.


The models both work with h=0.7 units, but halotools works exclusively in h=1 units.  To keep the parameters the same as quoted in the papers, the internal calculations are done with little h=0.7, and the results are transformed at the end and returned in h=1 units.  This was done "backwords" in the Behroozi model and not applied in the Moster model.
The hard-coded tests made the same errors, so this did not show up in the tests.  I think this is one of those things that is best caught by using the code, or coding in pairs.  My take-home lesson--whichever way you handled little h... is wrong.  In fact, this correction is probably wrong, and it is getting late, so please take a look!  @aphearin, can you confirm this?

ok, I took a crack at test_leauthaud11_hod.py to fix the test suite failure, but some of the tests for how the occupation number should change when changing the parameters don't seem straight forward.  The results depends on where the (Mhalo) or (Mhalo) is evaluated.  As it is, the evaluation is done right near the cut-off scale, so things are complicated.  I will leave this to @aphearin.

ok, with a patch by @aphearin, this should now be good to go.  I'll wait for tests to pass before merging.


Added Retirement Calculator

Fixes Issue🛠
Closes #822
Description👨💻
This pull request adds a new feature to the website: a "Retirement Calculator". The Calculator predicts users' retirement savings growth by factoring in age, savings, contributions, and expected returns, facilitating informed financial planning for a comfortable retirement. This includes the following changes:

Simple and minimalistic code with easy-understanding logic.
A user-friendly interface with a date input field and a calculate button.
A visually appealing background gradient for the webpage with animation.
A semi-transparent container with a subtle pattern for better readability and aesthetics.

No additional dependencies are required for this change.
Type of change📄

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

How this has been tested✅
This feature has been tested by:

Manually providing different inputs and verifying that the Estimated Output is displayed.
Ensuring the gradient background and structured container render correctly on various screen sizes.
Checking the readability of text within the container against the animated gradient background.
Verifying that the site functions correctly across different browsers (Chrome, Edge).

Checklist✅

[x] My code follows the style guidelines of this project
[x] I have performed a self-review of my own code
[x] I have commented on my code, particularly in hard-to-understand areas
[x] I have added a demonstration in the form of Screenshots.
[x] I am an Open Source Contributor

Screenshots/GIF📷
On search

These are the UI for the page, The added background-size and animation properties to create a smooth, animated gradient background that transitions between four different colors.

Sample Output,

Hello Project Admin,
I've updated the new feature that was assigned to me, Can you merge my PR into yours @Rakesh9100
Also Kindly Add Level 1, 2 or 3 to the Issue

Good, Congrats on getting your PR merged to the repo under GSSOC 2k24 🥳🎉 @kamalesh-og