[Blog|Note] Category List and Author List are duplicated + Inaccurate Number

On the main Blog and Note homepage, on the left column there is a Category list box, with the number of posts displayed to the right of blog category name.
When a new post is added to a category, instead of increasing the number by 1, it adds a new line of category name followed by (1) like this....
Dating - (1)
Dating - (1)
Dating - (1)
Dating - (1)
Dating - (1)
Note: It has also the same issue with the Author column on Note homepage.
The way how it selects the categories and counts the number of posts in each category is wrong.
Places where the SQL queries have to be fixed:
https://github.com/pH7Software/pH7-Social-Dating-CMS/blob/3e7c3c8ee22cff848e333399fc0016932ce964d7/_protected/app/system/modules/blog/models/BlogModel.php#L32-L34
https://github.com/pH7Software/pH7-Social-Dating-CMS/blob/3e7c3c8ee22cff848e333399fc0016932ce964d7/_protected/app/system/modules/note/models/NoteModel.php#L31-L33
https://github.com/pH7Software/pH7-Social-Dating-CMS/blob/3e7c3c8ee22cff848e333399fc0016932ce964d7/_protected/app/system/modules/note/models/NoteModel.php#L73-L75

Image Example:

How long ago did you discover that there was this problem ?
I go work going one faster than I presumed so I'll have few hours over this week.

I recently discovered that issue (although it was there for years 😂).
I will fix that one ;) Thanks a lot anyway! 😃

Fixed! 🎉 The fix will be included in the next release.


Demo Package Numbering is Off

Question about Next.js
GitHub Issues are reserved for Bug reports and Feature requests. The best place to get your question answered is to post it on https://spectrum.chat/next-js.
While working through the nextjs.org learning modules, I noticed that the numbering is off in the demo package. 5 is skipped or no longer included.
I downloaded a clean copy of the demo and made the changes. I'm not sure how to make this change in the project.
I know this is really minor, but I want to try to get more involved.

Hi @cmurray21. The order of the demos is not very important, neither trying to keep up that order updated. Some lessons don't even have a demo and so even if all the numbers were incrementing properly, it wouldn't match anyway.
We could remove the numbers in the future and just use the name of the lesson for the demo instead, but atm this is not a priority so I'm closing the issue for now, thank you 🙌 .


[TRIAGE]: Investigate whether we need to maintain a "transientModelConfig" for model-config outputs

ModelConfiguration operator state is currently defined as
export interface ModelConfigOperationState extends BaseState {
  transientModelConfig: ModelConfiguration;
  notebookHistory: NotebookHistory[];
  hasCodeRun: boolean;
  datasetModelConfigTaskId: string;
  documentModelConfigTaskId: string;
}

Which is then copied whenever we append an operator output. This data is very heavy, especially transientModelConfig which significantly increase the workflow's size and doesn't really like it is being used.
Since output.state is defined as Partial<ModelConfigOperationState> we don't need save every piece of operator.state into output.state.
For example in simulate, we are selective in what output.state gets:
  emit('append-output', {
    type: SimulateCiemssOperation.outputs[0].type,
    label: nodeOutputLabel(props.node, 'Dataset'),
    value: [datasetResult.id],
    state: {
      currentTimespan: state.currentTimespan,
      numSamples: state.numSamples,
      method: state.method,
      summaryId: summaryResponse?.id,
      forecastId: runId
    },
    isSelected: false
  });

See if we can remove transientModelConfig from output.state.

Since we are now using the side panel to select model configs, we no longer need transientModelConfig to be stored in the output state.  We can simply populate knobs.transientModelConfig with either the side panel model configuration or state.transientModelConfig.  We can apply the same idea to the intervention policy operator as well since it is using the same pattern


LoginBehavior problem on Android ?!

Hi everyone,
I'm working on a project which need react-native-fbsdk-next but seems to have a problem on Android side. Referring on this article (https://developers.facebook.com/blog/post/2021/06/28/deprecating-support-fb-login-authentication-android-embedded-browsers/), seems Facebook is changing the login way for Android support, and may be it's now an LoginBehavior issue with the library.
If anyone have more informations about that, I'm listening carefully.
Thanks for regarding.

Hi there!
Not sure what I'm regarding, what have you tried, and what exact problem are you actually having?
The example app works out of the box.

Thanks @mikehardy for your response. The Facebook Login works well on local environment but now the app is on the stores and the project's owner returns that some people encountered a Facebook login problem (not all Android users), even Facebook app isn't install on the device. Referring to article that I mentioned above, seems Facebook is changing his login system on Android, and this is concerning some Android web navigators.

None of that is actionable.
Imagine you were maintaining this repo.
Now what do you do?
I can't think of anything to actually do, sorry

Hi everyone,
I'm working on a project which need react-native-fbsdk-next but seems to have a problem on Android side. Referring on this article (https://developers.facebook.com/blog/post/2021/06/28/deprecating-support-fb-login-authentication-android-embedded-browsers/), seems Facebook is changing the login way for Android support, and may be it's now an LoginBehavior issue with the library.
If anyone have more informations about that, I'm listening carefully.
Thanks for regarding.

I'm having the exact same problem, facebook has reached out to me that my android app login with facebook is not working. and i found no errors or faults in any of modules or build! An answer anyone?

In this case, if we could have a way to reproduce this behavior we could investigate it a bit better. As there is quite a big number of Android devices and as stated above, not all have issues.

In this case, if we could have a way to reproduce this behavior we could investigate it a bit better. As there is quite a big number of Android devices and as stated above, not all have issues.

Hi, so the only device I found showing the problem is Motorola G9/G9 Plus


Last cut always comes out wrong/problem with gcode gen

Hi there,
I use the JTP tool for converting my 3d printer into a vinyl cutter.
However, I always encounter a flaw regarding the gcode generation.
The last cut/line/movement (which in this example is also the first one) is always off or not existent/gets ignored.
For this example, I choose to draw a simple star with Inkscape and plotted it's Gcode on my printer, which lead to the following result: here are the pictures
As you can clearly see, the last point of the star is clearly off.
Please don't get distracted by the red offset. Since the carriage which is holding the drag knife is a bit off from the center, I had to edit this in.
Best regards!

How odd. Could you attach the svg file and the gcode output?

Sure, but github doesn't allow uploading .svg and .gcode files.
Please download the corresponding files and remove the .txt ending.
Cheers
EnderTemplate.svg.txt
output.gcode.txt

Love your workaround. Why is GitHub even policing file extensions though?
Anyway, I plugged your gcode into a simulator and the star looks symmetrical. However, it also raised an error because the gcode told it to move (G1 Z3) before specifying a movement speed (F1000). I'm not sure how that happened. Did you add the G1 Z3 lines manually?

I've attached a corrected output that doesn't raise any errors in the simulator. Does it still create asymmetries when cut? Regardless, I have no clue what's going on... Could it be your machine? I just can't imagine how a machine can consistently cut everything but the last two lines correctly. Yet the gcode looks fine.
clean_output.gcode.txt

I replaced the tool on / tool off command by G1 Z0 and G1 Z3 to lower my drag knife into the material that I want to cut, since there is no way to make it work with the traditional laser commands. Although the JTP laser tool seems to focus on lasers, it of course is quiete popular for plotters and vinyl plotters as well.
I'm going to try out your fixed gcode and report back what happened.
Cheers

BTW, check out this issue. With the latest version of the extension you can directly specify the laser on/off command.

Hi there,
sorry for my late reply but I didn't have time to test the gcode until today.
Unfortunately the problem still exists.
Cheers

How bizarre. Have you tested it with a different gcode generator?


Update dependencies

Codecov Report

:exclamation: No coverage uploaded for pull request base (master@5755aed). Click here to learn what that means.
The diff coverage is n/a.

@@            Coverage Diff            @@
##             master      #59   +/-   ##
=========================================
  Coverage          ?   76.59%
=========================================
  Files             ?        6
  Lines             ?      423
  Branches          ?        0
=========================================
  Hits              ?      324
  Misses            ?       99
  Partials          ?        0

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


Reopen of #225

Just installed 6.1.2. Still crashes repeatedly after startup.
Here‘s the requested debug log.
`

host.homie
2022-05-01 10:48:46.631
info
Do not restart adapter system.adapter.mielecloudservice.0 because disabled or deleted

host.homie
2022-05-01 10:48:46.630
error
instance system.adapter.mielecloudservice.0 terminated with code 3 (NO_ADAPTER_CONFIG_FOUND)

mielecloudservice.0
2022-05-01 10:48:46.064
warn
Terminated (NO_ADAPTER_CONFIG_FOUND): Without reason

mielecloudservice.0
2022-05-01 10:48:46.064
debug
Plugin sentry destroyed

mielecloudservice.0
2022-05-01 10:48:46.058
error
adapter disabled

mielecloudservice.0
2022-05-01 10:48:46.053
info
Plugin sentry Sentry Plugin disabled for this process because sending of statistic data is disabled for the system

mielecloudservice.0
2022-05-01 10:48:46.050
debug
Plugin sentry Initialize Plugin (enabled=true)

host.homie
2022-05-01 10:48:20.294
info
"system.adapter.mielecloudservice.0" disabled

host.homie
2022-05-01 10:48:15.153
info
Restart adapter system.adapter.mielecloudservice.0 because enabled

host.homie
2022-05-01 10:48:15.146
error
instance system.adapter.mielecloudservice.0 terminated with code 6 (UNCAUGHT_EXCEPTION)

mielecloudservice.0
2022-05-01 10:48:14.695
debug
API returned Status: [204]

mielecloudservice.0
2022-05-01 10:48:14.613
info
State value to set for "mielecloudservice.0.007116614756.ACTIONS.SuperFreezing" has to be type "boolean" but received type "string"

mielecloudservice.0
2022-05-01 10:48:14.612
info
State value to set for "mielecloudservice.0.007116614756.ACTIONS.SuperCooling" has to be type "boolean" but received type "string"

mielecloudservice.0
2022-05-01 10:48:14.601
warn
Terminated (UNCAUGHT_EXCEPTION): Without reason

mielecloudservice.0
2022-05-01 10:48:14.600
debug
Plugin sentry destroyed

mielecloudservice.0
2022-05-01 10:48:14.600
info
terminating

mielecloudservice.0
2022-05-01 10:48:14.596
debug
Doing axios request: {"headers":{"Authorization":"Bearer DE_9273ad154fc3bd33a74bc05adc605328","Accept":"application/json","Content-Type":"application/json"},"method":"POST","data":{"token":"DE_9273ad154fc3bd33a74bc05adc605328"},"dataType":"json","json":true,"url":"https://api.mcs3.miele.com/thirdparty/logout/"}

mielecloudservice.0
2022-05-01 10:48:14.595
debug
[APILogOff] Invalidating access tokens.

mielecloudservice.0
2022-05-01 10:48:14.594
debug
Clearing watchdog interval.

mielecloudservice.0
2022-05-01 10:48:14.594
debug
Clearing authCheck interval.

mielecloudservice.0
2022-05-01 10:48:14.590
error
Cannot read properties of undefined (reading '1')

mielecloudservice.0
2022-05-01 10:48:14.590
error
TypeError: Cannot read properties of undefined (reading '1') at Immediate. (/opt/iobroker/node_modules/iobroker.mielecloudservice/source/mieleTools.js:1127:94) at processImmediate (node:internal/timers:468:21)

mielecloudservice.0
2022-05-01 10:48:14.590
error
uncaught exception: Cannot read properties of undefined (reading '1')

mielecloudservice.0
2022-05-01 10:48:14.588
error
Cannot read properties of undefined (reading '0')

mielecloudservice.0
2022-05-01 10:48:14.588
error
TypeError: Cannot read properties of undefined (reading '0') at Immediate. (/opt/iobroker/node_modules/iobroker.mielecloudservice/source/mieleTools.js:1127:94) at processImmediate (node:internal/timers:468:21)

mielecloudservice.0
2022-05-01 10:48:14.587
error
uncaught exception: Cannot read properties of undefined (reading '0')

mielecloudservice.0
2022-05-01 10:48:14.581
debug
KnownDevice before updating actions on it: {"icon":"icons/21.svg","API_ID":"007116614756","deviceType":21,"name":"Kühl-Gefrierkombination"}

mielecloudservice.0
2022-05-01 10:48:14.581
debug
Device<PHONE_NUMBER>56: Value {"processAction":[4,6],"light":[],"ambientLight":[1],"startTime":[],"ventilationStep":[],"programId":[],"targetTemperature":[{"zone":1,"min":1,"max":9},{"zone":2,"min":-26,"max":-16}],"deviceName":true,"powerOn":false,"powerOff":true,"colors":[],"modes":[]} | typeof value object

mielecloudservice.0
2022-05-01 10:48:14.581
debug
ACTIONS.lastEventId: [""]

mielecloudservice.0
2022-05-01 10:48:14.580
debug
Received ACTIONS message by SSE: [{"type":"actions","data":"{"007116614756":{"processAction":[4,6],"light":[],"ambientLight":[1],"startTime":[],"ventilationStep":[],"programId":[],"targetTemperature":[{"zone":1,"min":1,"max":9},{"zone":2,"min":-26,"max":-16}],"deviceName":true,"powerOn":false,"powerOff":true,"colors":[],"modes":[]}}","lastEventId":"","origin":"https://api.mcs3.miele.com"}]

mielecloudservice.0
2022-05-01 10:48:12.489
debug
splitMieleDevices:<PHONE_NUMBER>56: [007116614756] *** Value: [{"ident":{"type":{"key_localized":"Gerätetyp","value_raw":21,"value_localized":"Kühl-Gefrierkombination"},"deviceName":"","protocolVersion":1,"deviceIdentLabel":{"fabNumber":"007116614756","fabIndex":"33","techType":"KFN 37452 iDE","matNumber":"09360040","swids":["3600","0"]},"xkmIdentLabel":{"techType":"EK044W","releaseVersion":"02.72"}},"state":{"ProgramID":{"value_raw":0,"value_localized":"","key_localized":"Programmbezeichnung"},"status":{"value_raw":5,"value_localized":"In Betrieb","key_localized":"Status"},"programType":{"value_raw":0,"value_localized":"Programm","key_localized":"Programmart"},"programPhase":{"value_raw":0,"value_localized":"","key_localized":"Programmphase"},"remainingTime":[0,0],"startTime":[0,0],"targetTemperature":[{"value_raw":400,"value_localized":4,"unit":"Celsius"},{"value_raw":-1800,"value_localized":-18,"unit":"Celsius"}],"temperature":[{"value_raw":400,"value_localized":4,"unit":"Celsius"},{"value_raw":-1800,"value_localized":-18,"unit":"Celsius"},{"value_raw":-32768,"value_localized":null,"unit":"Celsius"}],"signalInfo":false,"signalFailure":false,"signalDoor":false,"remoteEnable":{"fullRemoteControl":true,"smartGrid":false,"mobileStart":false},"ambientLight":2,"light":null,"elapsedTime":[],"spinningSpeed":{"unit":"U/min","value_raw":null,"value_localized":null,"key_localized":"Schleuderdrehzahl"},"dryingStep":{"value_raw":null,"value_localized":"","key_localized":"Trockenstufe"},"ventilationStep":{"value_raw":null,"value_localized":"","key_localized":"Lüfterstufe"},"plateStep":[],"ecoFeedback":null,"batteryLevel":null}}]

mielecloudservice.0
2022-05-01 10:48:12.489
debug
Device<PHONE_NUMBER>56 isn't already known. Registering now...

mielecloudservice.0
2022-05-01 10:48:12.488
debug
Received DEVICES message by SSE: [{"type":"devices","data":"{"007116614756":{"ident":{"type":{"key_localized":"Gerätetyp","value_raw":21,"value_localized":"Kühl-Gefrierkombination"},"deviceName":"","protocolVersion":1,"deviceIdentLabel":{"fabNumber":"007116614756","fabIndex":"33","techType":"KFN 37452 iDE","matNumber":"09360040","swids":["3600","0"]},"xkmIdentLabel":{"techType":"EK044W","releaseVersion":"02.72"}},"state":{"ProgramID":{"value_raw":0,"value_localized":"","key_localized":"Programmbezeichnung"},"status":{"value_raw":5,"value_localized":"In Betrieb","key_localized":"Status"},"programType":{"value_raw":0,"value_localized":"Programm","key_localized":"Programmart"},"programPhase":{"value_raw":0,"value_localized":"","key_localized":"Programmphase"},"remainingTime":[0,0],"startTime":[0,0],"targetTemperature":[{"value_raw":400,"value_localized":4.0,"unit":"Celsius"},{"value_raw":-1800,"value_localized":-18.0,"unit":"Celsius"}],"temperature":[{"value_raw":400,"value_localized":4.0,"unit":"Celsius"},{"value_raw":-1800,"value_localized":-18.0,"unit":"Celsius"},{"value_raw":-32768,"value_localized":null,"unit":"Celsius"}],"signalInfo":false,"signalFailure":false,"signalDoor":false,"remoteEnable":{"fullRemoteControl":true,"smartGrid":false,"mobileStart":false},"ambientLight":2,"light":null,"elapsedTime":[],"spinningSpeed":{"unit":"U/min","value_raw":null,"value_localized":null,"key_localized":"Schleuderdrehzahl"},"dryingStep":{"value_raw":null,"value_localized":"","key_localized":"Trockenstufe"},"ventilationStep":{"value_raw":null,"value_localized":"","key_localized":"Lüfterstufe"},"plateStep":[],"ecoFeedback":null,"batteryLevel":null}}}","lastEventId":"","origin":"https://api.mcs3.miele.com"}]

mielecloudservice.0
2022-05-01 10:48:12.474
info
Server Sent Events-Connection has been (re)established @Miele-API.

mielecloudservice.0
2022-05-01 10:48:12.338
info
Registering for all appliance events at Miele API.

mielecloudservice.0
2022-05-01 10:48:12.338
debug
{"access_token":"DE_9273ad154fc3bd33a74bc05adc605328","refresh_token":"DE_f2d52d92ea2f2f56f887e9117ab928de","token_type":"Bearer","expires_in":2592000,"expiryDate":"2022-05-31T08:48:00.318Z"}

mielecloudservice.0
2022-05-01 10:48:12.337
debug
Access token expires on: 31.5.2022, 10:48:00

mielecloudservice.0
2022-05-01 10:48:12.021
info
Login attempt #1 @Miele-API

mielecloudservice.0
2022-05-01 10:48:11.991
info
starting. Version 6.1.2 in /opt/iobroker/node_modules/iobroker.mielecloudservice, node: v16.14.2, js-controller: 4.0.23

mielecloudservice.0
2022-05-01 10:48:11.919
info
Plugin sentry Sentry Plugin disabled for this process because sending of statistic data is disabled for the system

mielecloudservice.0
2022-05-01 10:48:11.914
debug
Plugin sentry Initialize Plugin (enabled=true)

mielecloudservice.0
2022-05-01 10:48:11.881
debug
States connected to redis: <IP_ADDRESS>:6379

mielecloudservice.0
2022-05-01 10:48:11.875
debug
States create User PubSub Client

mielecloudservice.0
2022-05-01 10:48:11.874
debug
States create System PubSub Client

mielecloudservice.0
2022-05-01 10:48:11.870
debug
Redis States: Use Redis connection: <IP_ADDRESS>:6379

mielecloudservice.0
2022-05-01 10:48:11.858
debug
Objects connected to redis: <IP_ADDRESS>:6379

mielecloudservice.0
2022-05-01 10:48:11.854
debug
Objects client initialize lua scripts

mielecloudservice.0
2022-05-01 10:48:11.728
debug
Objects create User PubSub Client

mielecloudservice.0
2022-05-01 10:48:11.727
debug
Objects create System PubSub Client

mielecloudservice.0
2022-05-01 10:48:11.725
debug
Objects client ready ... initialize now

mielecloudservice.0
2022-05-01 10:48:11.699
debug
Redis Objects: Use Redis connection: <IP_ADDRESS>:6379

host.homie
2022-05-01 10:48:11.061
info
instance system.adapter.mielecloudservice.0 started with pid 28809

host.homie
2022-05-01 10:48:11.010
info
"system.adapter.mielecloudservice.0" enabled

host.homie
2022-05-01 10:47:56.750
info
"system.adapter.mielecloudservice.0" disabled

host.homie
2022-05-01 10:47:42.451
info
Restart adapter system.adapter.mielecloudservice.0 because enabled

host.homie
2022-05-01 10:47:42.451
error
instance system.adapter.mielecloudservice.0 terminated with code 6 (UNCAUGHT_EXCEPTION)

mielecloudservice.0
2022-05-01 10:47:42.002
debug
API returned Status: [204]

mielecloudservice.0
2022-05-01 10:47:41.931
info
State value to set for "mielecloudservice.0.007116614756.ACTIONS.SuperFreezing" has to be type "boolean" but received type "string"

mielecloudservice.0
2022-05-01 10:47:41.930
info
State value to set for "mielecloudservice.0.007116614756.ACTIONS.SuperCooling" has to be type "boolean" but received type "string"

mielecloudservice.0
2022-05-01 10:47:41.910
warn
Terminated (UNCAUGHT_EXCEPTION): Without reason

mielecloudservice.0
2022-05-01 10:47:41.909
debug
Plugin sentry destroyed

mielecloudservice.0
2022-05-01 10:47:41.909
info
terminating

mielecloudservice.0
2022-05-01 10:47:41.905
debug
Doing axios request: {"headers":{"Authorization":"Bearer DE_5ae965a3f69a82291cbe6e30a0743e10","Accept":"application/json","Content-Type":"application/json"},"method":"POST","data":{"token":"DE_5ae965a3f69a82291cbe6e30a0743e10"},"dataType":"json","json":true,"url":"https://api.mcs3.miele.com/thirdparty/logout/"}

mielecloudservice.0
2022-05-01 10:47:41.905
debug
[APILogOff] Invalidating access tokens.

mielecloudservice.0
2022-05-01 10:47:41.904
debug
Clearing watchdog interval.

mielecloudservice.0
2022-05-01 10:47:41.904
debug
Clearing authCheck interval.

mielecloudservice.0
2022-05-01 10:47:41.900
error
Cannot read properties of undefined (reading '1')

mielecloudservice.0
2022-05-01 10:47:41.899
error
TypeError: Cannot read properties of undefined (reading '1') at Immediate. (/opt/iobroker/node_modules/iobroker.mielecloudservice/source/mieleTools.js:1127:94) at processImmediate (node:internal/timers:468:21)

mielecloudservice.0
2022-05-01 10:47:41.899
error
uncaught exception: Cannot read properties of undefined (reading '1')

mielecloudservice.0
2022-05-01 10:47:41.898
error
Cannot read properties of undefined (reading '0')

mielecloudservice.0
2022-05-01 10:47:41.898
error
TypeError: Cannot read properties of undefined (reading '0') at Immediate. (/opt/iobroker/node_modules/iobroker.mielecloudservice/source/mieleTools.js:1127:94) at processImmediate (node:internal/timers:468:21)

mielecloudservice.0
2022-05-01 10:47:41.897
error
uncaught exception: Cannot read properties of undefined (reading '0')

mielecloudservice.0
2022-05-01 10:47:41.891
debug
KnownDevice before updating actions on it: {"icon":"icons/21.svg","API_ID":"007116614756","deviceType":21,"name":"Kühl-Gefrierkombination"}

mielecloudservice.0
2022-05-01 10:47:41.891
debug
Device<PHONE_NUMBER>56: Value {"processAction":[4,6],"light":[],"ambientLight":[1],"startTime":[],"ventilationStep":[],"programId":[],"targetTemperature":[{"zone":1,"min":1,"max":9},{"zone":2,"min":-26,"max":-16}],"deviceName":true,"powerOn":false,"powerOff":true,"colors":[],"modes":[]} | typeof value object

mielecloudservice.0
2022-05-01 10:47:41.891
debug
ACTIONS.lastEventId: [""]

mielecloudservice.0
2022-05-01 10:47:41.890
debug
Received ACTIONS message by SSE: [{"type":"actions","data":"{"007116614756":{"processAction":[4,6],"light":[],"ambientLight":[1],"startTime":[],"ventilationStep":[],"programId":[],"targetTemperature":[{"zone":1,"min":1,"max":9},{"zone":2,"min":-26,"max":-16}],"deviceName":true,"powerOn":false,"powerOff":true,"colors":[],"modes":[]}}","lastEventId":"","origin":"https://api.mcs3.miele.com"}]

mielecloudservice.0
2022-05-01 10:47:39.798
debug
splitMieleDevices:<PHONE_NUMBER>56: [007116614756] *** Value: [{"ident":{"type":{"key_localized":"Gerätetyp","value_raw":21,"value_localized":"Kühl-Gefrierkombination"},"deviceName":"","protocolVersion":1,"deviceIdentLabel":{"fabNumber":"007116614756","fabIndex":"33","techType":"KFN 37452 iDE","matNumber":"09360040","swids":["3600","0"]},"xkmIdentLabel":{"techType":"EK044W","releaseVersion":"02.72"}},"state":{"ProgramID":{"value_raw":0,"value_localized":"","key_localized":"Programmbezeichnung"},"status":{"value_raw":5,"value_localized":"In Betrieb","key_localized":"Status"},"programType":{"value_raw":0,"value_localized":"Programm","key_localized":"Programmart"},"programPhase":{"value_raw":0,"value_localized":"","key_localized":"Programmphase"},"remainingTime":[0,0],"startTime":[0,0],"targetTemperature":[{"value_raw":400,"value_localized":4,"unit":"Celsius"},{"value_raw":-1800,"value_localized":-18,"unit":"Celsius"}],"temperature":[{"value_raw":400,"value_localized":4,"unit":"Celsius"},{"value_raw":-1800,"value_localized":-18,"unit":"Celsius"},{"value_raw":-32768,"value_localized":null,"unit":"Celsius"}],"signalInfo":false,"signalFailure":false,"signalDoor":false,"remoteEnable":{"fullRemoteControl":true,"smartGrid":false,"mobileStart":false},"ambientLight":2,"light":null,"elapsedTime":[],"spinningSpeed":{"unit":"U/min","value_raw":null,"value_localized":null,"key_localized":"Schleuderdrehzahl"},"dryingStep":{"value_raw":null,"value_localized":"","key_localized":"Trockenstufe"},"ventilationStep":{"value_raw":null,"value_localized":"","key_localized":"Lüfterstufe"},"plateStep":[],"ecoFeedback":null,"batteryLevel":null}}]

mielecloudservice.0
2022-05-01 10:47:39.798
debug
Device<PHONE_NUMBER>56 isn't already known. Registering now...

mielecloudservice.0
2022-05-01 10:47:39.797
debug
Received DEVICES message by SSE: [{"type":"devices","data":"{"007116614756":{"ident":{"type":{"key_localized":"Gerätetyp","value_raw":21,"value_localized":"Kühl-Gefrierkombination"},"deviceName":"","protocolVersion":1,"deviceIdentLabel":{"fabNumber":"007116614756","fabIndex":"33","techType":"KFN 37452 iDE","matNumber":"09360040","swids":["3600","0"]},"xkmIdentLabel":{"techType":"EK044W","releaseVersion":"02.72"}},"state":{"ProgramID":{"value_raw":0,"value_localized":"","key_localized":"Programmbezeichnung"},"status":{"value_raw":5,"value_localized":"In Betrieb","key_localized":"Status"},"programType":{"value_raw":0,"value_localized":"Programm","key_localized":"Programmart"},"programPhase":{"value_raw":0,"value_localized":"","key_localized":"Programmphase"},"remainingTime":[0,0],"startTime":[0,0],"targetTemperature":[{"value_raw":400,"value_localized":4.0,"unit":"Celsius"},{"value_raw":-1800,"value_localized":-18.0,"unit":"Celsius"}],"temperature":[{"value_raw":400,"value_localized":4.0,"unit":"Celsius"},{"value_raw":-1800,"value_localized":-18.0,"unit":"Celsius"},{"value_raw":-32768,"value_localized":null,"unit":"Celsius"}],"signalInfo":false,"signalFailure":false,"signalDoor":false,"remoteEnable":{"fullRemoteControl":true,"smartGrid":false,"mobileStart":false},"ambientLight":2,"light":null,"elapsedTime":[],"spinningSpeed":{"unit":"U/min","value_raw":null,"value_localized":null,"key_localized":"Schleuderdrehzahl"},"dryingStep":{"value_raw":null,"value_localized":"","key_localized":"Trockenstufe"},"ventilationStep":{"value_raw":null,"value_localized":"","key_localized":"Lüfterstufe"},"plateStep":[],"ecoFeedback":null,"batteryLevel":null}}}","lastEventId":"","origin":"https://api.mcs3.miele.com"}]

mielecloudservice.0
2022-05-01 10:47:39.763
info
Server Sent Events-Connection has been (re)established @Miele-API.

mielecloudservice.0
2022-05-01 10:47:39.644
info
Registering for all appliance events at Miele API.

mielecloudservice.0
2022-05-01 10:47:39.644
debug
{"access_token":"DE_5ae965a3f69a82291cbe6e30a0743e10","refresh_token":"DE_75e9905793baa16c6891328a84274d55","token_type":"Bearer","expires_in":2592000,"expiryDate":"2022-05-31T08:47:00.624Z"}

mielecloudservice.0
2022-05-01 10:47:39.643
debug
Access token expires on: 31.5.2022, 10:47:00

mielecloudservice.0
2022-05-01 10:47:39.277
info
Login attempt #1 @Miele-API

mielecloudservice.0
2022-05-01 10:47:39.245
info
starting. Version 6.1.2 in /opt/iobroker/node_modules/iobroker.mielecloudservice, node: v16.14.2, js-controller: 4.0.23

mielecloudservice.0
2022-05-01 10:47:39.163
info
Plugin sentry Sentry Plugin disabled for this process because sending of statistic data is disabled for the system

mielecloudservice.0
2022-05-01 10:47:39.157
debug
Plugin sentry Initialize Plugin (enabled=true)

mielecloudservice.0
2022-05-01 10:47:39.119
debug
States connected to redis: <IP_ADDRESS>:6379

mielecloudservice.0
2022-05-01 10:47:39.113
debug
States create User PubSub Client

mielecloudservice.0
2022-05-01 10:47:39.112
debug
States create System PubSub Client

mielecloudservice.0
2022-05-01 10:47:39.107
debug
Redis States: Use Redis connection: <IP_ADDRESS>:6379

mielecloudservice.0
2022-05-01 10:47:39.092
debug
Objects connected to redis: <IP_ADDRESS>:6379

mielecloudservice.0
2022-05-01 10:47:39.087
debug
Objects client initialize lua scripts

mielecloudservice.0
2022-05-01 10:47:38.937
debug
Objects create User PubSub Client

mielecloudservice.0
2022-05-01 10:47:38.937
debug
Objects create System PubSub Client

mielecloudservice.0
2022-05-01 10:47:38.935
debug
Objects client ready ... initialize now

mielecloudservice.0
2022-05-01 10:47:38.895
debug
Redis Objects: Use Redis connection: <IP_ADDRESS>:6379

host.homie
2022-05-01 10:47:38.241
info
instance system.adapter.mielecloudservice.0 started with pid 27900

ost.homie
2022-05-01 10:48:46.631	info	Do not restart adapter system.adapter.mielecloudservice.0 because disabled or deleted
host.homie
2022-05-01 10:48:46.630	error	instance system.adapter.mielecloudservice.0 terminated with code 3 (NO_ADAPTER_CONFIG_FOUND)
mielecloudservice.0
2022-05-01 10:48:46.064	warn	Terminated (NO_ADAPTER_CONFIG_FOUND): Without reason
mielecloudservice.0
2022-05-01 10:48:46.064	debug	Plugin sentry destroyed
mielecloudservice.0
2022-05-01 10:48:46.058	error	adapter disabled
mielecloudservice.0
2022-05-01 10:48:46.053	info	Plugin sentry Sentry Plugin disabled for this process because sending of statistic data is disabled for the system
mielecloudservice.0
2022-05-01 10:48:46.050	debug	Plugin sentry Initialize Plugin (enabled=true)
host.homie
2022-05-01 10:48:20.294	info	"system.adapter.mielecloudservice.0" disabled
host.homie
2022-05-01 10:48:15.153	info	Restart adapter system.adapter.mielecloudservice.0 because enabled
host.homie
2022-05-01 10:48:15.146	error	instance system.adapter.mielecloudservice.0 terminated with code 6 (UNCAUGHT_EXCEPTION)
mielecloudservice.0
2022-05-01 10:48:14.695	debug	API returned Status: [204]
mielecloudservice.0
2022-05-01 10:48:14.613	info	State value to set for "mielecloudservice.0.007116614756.ACTIONS.SuperFreezing" has to be type "boolean" but received type "string"
mielecloudservice.0
2022-05-01 10:48:14.612	info	State value to set for "mielecloudservice.0.007116614756.ACTIONS.SuperCooling" has to be type "boolean" but received type "string"
mielecloudservice.0
2022-05-01 10:48:14.601	warn	Terminated (UNCAUGHT_EXCEPTION): Without reason
mielecloudservice.0
2022-05-01 10:48:14.600	debug	Plugin sentry destroyed
mielecloudservice.0
2022-05-01 10:48:14.600	info	terminating
mielecloudservice.0
2022-05-01 10:48:14.596	debug	Doing axios request: {"headers":{"Authorization":"Bearer DE_9273ad154fc3bd33a74bc05adc605328","Accept":"application/json","Content-Type":"application/json"},"method":"POST","data":{"token":"DE_9273ad154fc3bd33a74bc05adc605328"},"dataType":"json","json":true,"url":"https://api.mcs3.miele.com/thirdparty/logout/"}
mielecloudservice.0
2022-05-01 10:48:14.595	debug	[APILogOff] Invalidating access tokens.
mielecloudservice.0
2022-05-01 10:48:14.594	debug	Clearing watchdog interval.
mielecloudservice.0
2022-05-01 10:48:14.594	debug	Clearing authCheck interval.
mielecloudservice.0
2022-05-01 10:48:14.590	error	Cannot read properties of undefined (reading '1')
mielecloudservice.0
2022-05-01 10:48:14.590	error	TypeError: Cannot read properties of undefined (reading '1') at Immediate. (/opt/iobroker/node_modules/iobroker.mielecloudservice/source/mieleTools.js:1127:94) at processImmediate (node:internal/timers:468:21)
mielecloudservice.0
2022-05-01 10:48:14.590	error	uncaught exception: Cannot read properties of undefined (reading '1')
mielecloudservice.0
2022-05-01 10:48:14.588	error	Cannot read properties of undefined (reading '0')
mielecloudservice.0
2022-05-01 10:48:14.588	error	TypeError: Cannot read properties of undefined (reading '0') at Immediate. (/opt/iobroker/node_modules/iobroker.mielecloudservice/source/mieleTools.js:1127:94) at processImmediate (node:internal/timers:468:21)
mielecloudservice.0
2022-05-01 10:48:14.587	error	uncaught exception: Cannot read properties of undefined (reading '0')
mielecloudservice.0
2022-05-01 10:48:14.581	debug	KnownDevice before updating actions on it: {"icon":"icons/21.svg","API_ID":"007116614756","deviceType":21,"name":"Kühl-Gefrierkombination"}
mielecloudservice.0
2022-05-01 10:48:14.581	debug	Device<PHONE_NUMBER>56: Value {"processAction":[4,6],"light":[],"ambientLight":[1],"startTime":[],"ventilationStep":[],"programId":[],"targetTemperature":[{"zone":1,"min":1,"max":9},{"zone":2,"min":-26,"max":-16}],"deviceName":true,"powerOn":false,"powerOff":true,"colors":[],"modes":[]} | typeof value object
mielecloudservice.0
2022-05-01 10:48:14.581	debug	ACTIONS.lastEventId: [""]
mielecloudservice.0
2022-05-01 10:48:14.580	debug	Received ACTIONS message by SSE: [{"type":"actions","data":"{"007116614756":{"processAction":[4,6],"light":[],"ambientLight":[1],"startTime":[],"ventilationStep":[],"programId":[],"targetTemperature":[{"zone":1,"min":1,"max":9},{"zone":2,"min":-26,"max":-16}],"deviceName":true,"powerOn":false,"powerOff":true,"colors":[],"modes":[]}}","lastEventId":"","origin":"https://api.mcs3.miele.com"}]
mielecloudservice.0
2022-05-01 10:48:12.489	debug	splitMieleDevices:<PHONE_NUMBER>56: [007116614756] *** Value: [{"ident":{"type":{"key_localized":"Gerätetyp","value_raw":21,"value_localized":"Kühl-Gefrierkombination"},"deviceName":"","protocolVersion":1,"deviceIdentLabel":{"fabNumber":"007116614756","fabIndex":"33","techType":"KFN 37452 iDE","matNumber":"09360040","swids":["3600","0"]},"xkmIdentLabel":{"techType":"EK044W","releaseVersion":"02.72"}},"state":{"ProgramID":{"value_raw":0,"value_localized":"","key_localized":"Programmbezeichnung"},"status":{"value_raw":5,"value_localized":"In Betrieb","key_localized":"Status"},"programType":{"value_raw":0,"value_localized":"Programm","key_localized":"Programmart"},"programPhase":{"value_raw":0,"value_localized":"","key_localized":"Programmphase"},"remainingTime":[0,0],"startTime":[0,0],"targetTemperature":[{"value_raw":400,"value_localized":4,"unit":"Celsius"},{"value_raw":-1800,"value_localized":-18,"unit":"Celsius"}],"temperature":[{"value_raw":400,"value_localized":4,"unit":"Celsius"},{"value_raw":-1800,"value_localized":-18,"unit":"Celsius"},{"value_raw":-32768,"value_localized":null,"unit":"Celsius"}],"signalInfo":false,"signalFailure":false,"signalDoor":false,"remoteEnable":{"fullRemoteControl":true,"smartGrid":false,"mobileStart":false},"ambientLight":2,"light":null,"elapsedTime":[],"spinningSpeed":{"unit":"U/min","value_raw":null,"value_localized":null,"key_localized":"Schleuderdrehzahl"},"dryingStep":{"value_raw":null,"value_localized":"","key_localized":"Trockenstufe"},"ventilationStep":{"value_raw":null,"value_localized":"","key_localized":"Lüfterstufe"},"plateStep":[],"ecoFeedback":null,"batteryLevel":null}}]
mielecloudservice.0
2022-05-01 10:48:12.489	debug	Device<PHONE_NUMBER>56 isn't already known. Registering now...
mielecloudservice.0
2022-05-01 10:48:12.488	debug	Received DEVICES message by SSE: [{"type":"devices","data":"{"007116614756":{"ident":{"type":{"key_localized":"Gerätetyp","value_raw":21,"value_localized":"Kühl-Gefrierkombination"},"deviceName":"","protocolVersion":1,"deviceIdentLabel":{"fabNumber":"007116614756","fabIndex":"33","techType":"KFN 37452 iDE","matNumber":"09360040","swids":["3600","0"]},"xkmIdentLabel":{"techType":"EK044W","releaseVersion":"02.72"}},"state":{"ProgramID":{"value_raw":0,"value_localized":"","key_localized":"Programmbezeichnung"},"status":{"value_raw":5,"value_localized":"In Betrieb","key_localized":"Status"},"programType":{"value_raw":0,"value_localized":"Programm","key_localized":"Programmart"},"programPhase":{"value_raw":0,"value_localized":"","key_localized":"Programmphase"},"remainingTime":[0,0],"startTime":[0,0],"targetTemperature":[{"value_raw":400,"value_localized":4.0,"unit":"Celsius"},{"value_raw":-1800,"value_localized":-18.0,"unit":"Celsius"}],"temperature":[{"value_raw":400,"value_localized":4.0,"unit":"Celsius"},{"value_raw":-1800,"value_localized":-18.0,"unit":"Celsius"},{"value_raw":-32768,"value_localized":null,"unit":"Celsius"}],"signalInfo":false,"signalFailure":false,"signalDoor":false,"remoteEnable":{"fullRemoteControl":true,"smartGrid":false,"mobileStart":false},"ambientLight":2,"light":null,"elapsedTime":[],"spinningSpeed":{"unit":"U/min","value_raw":null,"value_localized":null,"key_localized":"Schleuderdrehzahl"},"dryingStep":{"value_raw":null,"value_localized":"","key_localized":"Trockenstufe"},"ventilationStep":{"value_raw":null,"value_localized":"","key_localized":"Lüfterstufe"},"plateStep":[],"ecoFeedback":null,"batteryLevel":null}}}","lastEventId":"","origin":"https://api.mcs3.miele.com"}]
mielecloudservice.0
2022-05-01 10:48:12.474	info	Server Sent Events-Connection has been (re)established @Miele-API.
mielecloudservice.0
2022-05-01 10:48:12.338	info	Registering for all appliance events at Miele API.
mielecloudservice.0
2022-05-01 10:48:12.338	debug	{"access_token":"DE_9273ad154fc3bd33a74bc05adc605328","refresh_token":"DE_f2d52d92ea2f2f56f887e9117ab928de","token_type":"Bearer","expires_in":2592000,"expiryDate":"2022-05-31T08:48:00.318Z"}
mielecloudservice.0
2022-05-01 10:48:12.337	debug	Access token expires on: 31.5.2022, 10:48:00
mielecloudservice.0
2022-05-01 10:48:12.021	info	Login attempt #1 @Miele-API
mielecloudservice.0
2022-05-01 10:48:11.991	info	starting. Version 6.1.2 in /opt/iobroker/node_modules/iobroker.mielecloudservice, node: v16.14.2, js-controller: 4.0.23
mielecloudservice.0
2022-05-01 10:48:11.919	info	Plugin sentry Sentry Plugin disabled for this process because sending of statistic data is disabled for the system
mielecloudservice.0
2022-05-01 10:48:11.914	debug	Plugin sentry Initialize Plugin (enabled=true)
mielecloudservice.0
2022-05-01 10:48:11.881	debug	States connected to redis: <IP_ADDRESS>:6379
mielecloudservice.0
2022-05-01 10:48:11.875	debug	States create User PubSub Client
mielecloudservice.0
2022-05-01 10:48:11.874	debug	States create System PubSub Client
mielecloudservice.0
2022-05-01 10:48:11.870	debug	Redis States: Use Redis connection: <IP_ADDRESS>:6379
mielecloudservice.0
2022-05-01 10:48:11.858	debug	Objects connected to redis: <IP_ADDRESS>:6379
mielecloudservice.0
2022-05-01 10:48:11.854	debug	Objects client initialize lua scripts
mielecloudservice.0
2022-05-01 10:48:11.728	debug	Objects create User PubSub Client
mielecloudservice.0
2022-05-01 10:48:11.727	debug	Objects create System PubSub Client
mielecloudservice.0
2022-05-01 10:48:11.725	debug	Objects client ready ... initialize now
mielecloudservice.0
2022-05-01 10:48:11.699	debug	Redis Objects: Use Redis connection: <IP_ADDRESS>:6379
host.homie
2022-05-01 10:48:11.061	info	instance system.adapter.mielecloudservice.0 started with pid 28809
host.homie
2022-05-01 10:48:11.010	info	"system.adapter.mielecloudservice.0" enabled
host.homie
2022-05-01 10:47:56.750	info	"system.adapter.mielecloudservice.0" disabled
host.homie
2022-05-01 10:47:42.451	info	Restart adapter system.adapter.mielecloudservice.0 because enabled
host.homie
2022-05-01 10:47:42.451	error	instance system.adapter.mielecloudservice.0 terminated with code 6 (UNCAUGHT_EXCEPTION)
mielecloudservice.0
2022-05-01 10:47:42.002	debug	API returned Status: [204]
mielecloudservice.0
2022-05-01 10:47:41.931	info	State value to set for "mielecloudservice.0.007116614756.ACTIONS.SuperFreezing" has to be type "boolean" but received type "string"
mielecloudservice.0
2022-05-01 10:47:41.930	info	State value to set for "mielecloudservice.0.007116614756.ACTIONS.SuperCooling" has to be type "boolean" but received type "string"
mielecloudservice.0
2022-05-01 10:47:41.910	warn	Terminated (UNCAUGHT_EXCEPTION): Without reason
mielecloudservice.0
2022-05-01 10:47:41.909	debug	Plugin sentry destroyed
mielecloudservice.0
2022-05-01 10:47:41.909	info	terminating
mielecloudservice.0
2022-05-01 10:47:41.905	debug	Doing axios request: {"headers":{"Authorization":"Bearer DE_5ae965a3f69a82291cbe6e30a0743e10","Accept":"application/json","Content-Type":"application/json"},"method":"POST","data":{"token":"DE_5ae965a3f69a82291cbe6e30a0743e10"},"dataType":"json","json":true,"url":"https://api.mcs3.miele.com/thirdparty/logout/"}
mielecloudservice.0
2022-05-01 10:47:41.905	debug	[APILogOff] Invalidating access tokens.
mielecloudservice.0
2022-05-01 10:47:41.904	debug	Clearing watchdog interval.
mielecloudservice.0
2022-05-01 10:47:41.904	debug	Clearing authCheck interval.
mielecloudservice.0
2022-05-01 10:47:41.900	error	Cannot read properties of undefined (reading '1')
mielecloudservice.0
2022-05-01 10:47:41.899	error	TypeError: Cannot read properties of undefined (reading '1') at Immediate. (/opt/iobroker/node_modules/iobroker.mielecloudservice/source/mieleTools.js:1127:94) at processImmediate (node:internal/timers:468:21)
mielecloudservice.0
2022-05-01 10:47:41.899	error	uncaught exception: Cannot read properties of undefined (reading '1')
mielecloudservice.0
2022-05-01 10:47:41.898	error	Cannot read properties of undefined (reading '0')
mielecloudservice.0
2022-05-01 10:47:41.898	error	TypeError: Cannot read properties of undefined (reading '0') at Immediate. (/opt/iobroker/node_modules/iobroker.mielecloudservice/source/mieleTools.js:1127:94) at processImmediate (node:internal/timers:468:21)
mielecloudservice.0
2022-05-01 10:47:41.897	error	uncaught exception: Cannot read properties of undefined (reading '0')
mielecloudservice.0
2022-05-01 10:47:41.891	debug	KnownDevice before updating actions on it: {"icon":"icons/21.svg","API_ID":"007116614756","deviceType":21,"name":"Kühl-Gefrierkombination"}
mielecloudservice.0
2022-05-01 10:47:41.891	debug	Device<PHONE_NUMBER>56: Value {"processAction":[4,6],"light":[],"ambientLight":[1],"startTime":[],"ventilationStep":[],"programId":[],"targetTemperature":[{"zone":1,"min":1,"max":9},{"zone":2,"min":-26,"max":-16}],"deviceName":true,"powerOn":false,"powerOff":true,"colors":[],"modes":[]} | typeof value object
mielecloudservice.0
2022-05-01 10:47:41.891	debug	ACTIONS.lastEventId: [""]
mielecloudservice.0
2022-05-01 10:47:41.890	debug	Received ACTIONS message by SSE: [{"type":"actions","data":"{"007116614756":{"processAction":[4,6],"light":[],"ambientLight":[1],"startTime":[],"ventilationStep":[],"programId":[],"targetTemperature":[{"zone":1,"min":1,"max":9},{"zone":2,"min":-26,"max":-16}],"deviceName":true,"powerOn":false,"powerOff":true,"colors":[],"modes":[]}}","lastEventId":"","origin":"https://api.mcs3.miele.com"}]
mielecloudservice.0
2022-05-01 10:47:39.798	debug	splitMieleDevices:<PHONE_NUMBER>56: [007116614756] *** Value: [{"ident":{"type":{"key_localized":"Gerätetyp","value_raw":21,"value_localized":"Kühl-Gefrierkombination"},"deviceName":"","protocolVersion":1,"deviceIdentLabel":{"fabNumber":"007116614756","fabIndex":"33","techType":"KFN 37452 iDE","matNumber":"09360040","swids":["3600","0"]},"xkmIdentLabel":{"techType":"EK044W","releaseVersion":"02.72"}},"state":{"ProgramID":{"value_raw":0,"value_localized":"","key_localized":"Programmbezeichnung"},"status":{"value_raw":5,"value_localized":"In Betrieb","key_localized":"Status"},"programType":{"value_raw":0,"value_localized":"Programm","key_localized":"Programmart"},"programPhase":{"value_raw":0,"value_localized":"","key_localized":"Programmphase"},"remainingTime":[0,0],"startTime":[0,0],"targetTemperature":[{"value_raw":400,"value_localized":4,"unit":"Celsius"},{"value_raw":-1800,"value_localized":-18,"unit":"Celsius"}],"temperature":[{"value_raw":400,"value_localized":4,"unit":"Celsius"},{"value_raw":-1800,"value_localized":-18,"unit":"Celsius"},{"value_raw":-32768,"value_localized":null,"unit":"Celsius"}],"signalInfo":false,"signalFailure":false,"signalDoor":false,"remoteEnable":{"fullRemoteControl":true,"smartGrid":false,"mobileStart":false},"ambientLight":2,"light":null,"elapsedTime":[],"spinningSpeed":{"unit":"U/min","value_raw":null,"value_localized":null,"key_localized":"Schleuderdrehzahl"},"dryingStep":{"value_raw":null,"value_localized":"","key_localized":"Trockenstufe"},"ventilationStep":{"value_raw":null,"value_localized":"","key_localized":"Lüfterstufe"},"plateStep":[],"ecoFeedback":null,"batteryLevel":null}}]
mielecloudservice.0
2022-05-01 10:47:39.798	debug	Device<PHONE_NUMBER>56 isn't already known. Registering now...
mielecloudservice.0
2022-05-01 10:47:39.797	debug	Received DEVICES message by SSE: [{"type":"devices","data":"{"007116614756":{"ident":{"type":{"key_localized":"Gerätetyp","value_raw":21,"value_localized":"Kühl-Gefrierkombination"},"deviceName":"","protocolVersion":1,"deviceIdentLabel":{"fabNumber":"007116614756","fabIndex":"33","techType":"KFN 37452 iDE","matNumber":"09360040","swids":["3600","0"]},"xkmIdentLabel":{"techType":"EK044W","releaseVersion":"02.72"}},"state":{"ProgramID":{"value_raw":0,"value_localized":"","key_localized":"Programmbezeichnung"},"status":{"value_raw":5,"value_localized":"In Betrieb","key_localized":"Status"},"programType":{"value_raw":0,"value_localized":"Programm","key_localized":"Programmart"},"programPhase":{"value_raw":0,"value_localized":"","key_localized":"Programmphase"},"remainingTime":[0,0],"startTime":[0,0],"targetTemperature":[{"value_raw":400,"value_localized":4.0,"unit":"Celsius"},{"value_raw":-1800,"value_localized":-18.0,"unit":"Celsius"}],"temperature":[{"value_raw":400,"value_localized":4.0,"unit":"Celsius"},{"value_raw":-1800,"value_localized":-18.0,"unit":"Celsius"},{"value_raw":-32768,"value_localized":null,"unit":"Celsius"}],"signalInfo":false,"signalFailure":false,"signalDoor":false,"remoteEnable":{"fullRemoteControl":true,"smartGrid":false,"mobileStart":false},"ambientLight":2,"light":null,"elapsedTime":[],"spinningSpeed":{"unit":"U/min","value_raw":null,"value_localized":null,"key_localized":"Schleuderdrehzahl"},"dryingStep":{"value_raw":null,"value_localized":"","key_localized":"Trockenstufe"},"ventilationStep":{"value_raw":null,"value_localized":"","key_localized":"Lüfterstufe"},"plateStep":[],"ecoFeedback":null,"batteryLevel":null}}}","lastEventId":"","origin":"https://api.mcs3.miele.com"}]
mielecloudservice.0
2022-05-01 10:47:39.763	info	Server Sent Events-Connection has been (re)established @Miele-API.
mielecloudservice.0
2022-05-01 10:47:39.644	info	Registering for all appliance events at Miele API.
mielecloudservice.0
2022-05-01 10:47:39.644	debug	{"access_token":"DE_5ae965a3f69a82291cbe6e30a0743e10","refresh_token":"DE_75e9905793baa16c6891328a84274d55","token_type":"Bearer","expires_in":2592000,"expiryDate":"2022-05-31T08:47:00.624Z"}
mielecloudservice.0
2022-05-01 10:47:39.643	debug	Access token expires on: 31.5.2022, 10:47:00
mielecloudservice.0
2022-05-01 10:47:39.277	info	Login attempt #1 @Miele-API
mielecloudservice.0
2022-05-01 10:47:39.245	info	starting. Version 6.1.2 in /opt/iobroker/node_modules/iobroker.mielecloudservice, node: v16.14.2, js-controller: 4.0.23
mielecloudservice.0
2022-05-01 10:47:39.163	info	Plugin sentry Sentry Plugin disabled for this process because sending of statistic data is disabled for the system
mielecloudservice.0
2022-05-01 10:47:39.157	debug	Plugin sentry Initialize Plugin (enabled=true)
mielecloudservice.0
2022-05-01 10:47:39.119	debug	States connected to redis: <IP_ADDRESS>:6379
mielecloudservice.0
2022-05-01 10:47:39.113	debug	States create User PubSub Client
mielecloudservice.0
2022-05-01 10:47:39.112	debug	States create System PubSub Client
mielecloudservice.0
2022-05-01 10:47:39.107	debug	Redis States: Use Redis connection: <IP_ADDRESS>:6379
mielecloudservice.0
2022-05-01 10:47:39.092	debug	Objects connected to redis: <IP_ADDRESS>:6379
mielecloudservice.0
2022-05-01 10:47:39.087	debug	Objects client initialize lua scripts
mielecloudservice.0
2022-05-01 10:47:38.937	debug	Objects create User PubSub Client
mielecloudservice.0
2022-05-01 10:47:38.937	debug	Objects create System PubSub Client
mielecloudservice.0
2022-05-01 10:47:38.935	debug	Objects client ready ... initialize now
mielecloudservice.0
2022-05-01 10:47:38.895	debug	Redis Objects: Use Redis connection: <IP_ADDRESS>:6379
host.homie
2022-05-01 10:47:38.241	info	instance system.adapter.mielecloudservice.0 started with pid 27900`

Duplicate to #231

closed due to duplicate


Should we allow breaking changes to crate interfaces outside of major version bumps

PR 3377 has ignited a philosophical debate which warrants public input.
Context
The PR makes small breaking changes to the public interface on crates. The crates in question were not really intended to be a public interface, but we know they are being used directly outside of the Agave codebase.
The argument against PR 3377:
The interfaces are public, regardless of our preconceptions about which ones should be used. Since we're no longer in beta (v0.x) we should only break public interfaces with major version bumps. Changes like this should be rolled out with new functions that wrap the old ones and deprecations on the old functions.
The argument in favor of PR 3377:
We should only guarantee the interfaces on crates that we intended for public use. Developers interfacing directly with other crates can do so at their own risk. Introducing friction for changing interfaces reduces the likelihood that Agave developers will take the time to clean up existing code (eg functions with #[allow(clippy::too_many_arguments)])

how this should probably work is that we featurize everything non-public under agave-internal, make that feature non-default, then anything we're comfortable adhering to semver with moves out from under the feature

how this should probably work is that we featurize everything non-public under agave-internal, make that feature non-default,

I like this idea and am in favor of it. We want separate crates within our repo for better organization and modularization, but this stuff really shouldn't be public. So, pub(crate) is not an option for us for cross-crate deps (ie core and runtime)

then anything we're comfortable adhering to semver with moves out from under the feature

Along this line, I think it would be interesting to hear what teams are using. We can certainly hear them out if they want us to move things out of internal feature (or really just have stable interface), but I think we need to protect our ability to clean things up and iterate quickly too

On a similar line of thought, once solana-sdk is evicted from the monorepo, I think it makes sense to still have an agave-sdk or agave-internal-sdk crate.  Breaking each individual item into its' own crate is an option, but I'd be curious to hear any better alternatives you have to offer

it's simple. each crate that has public api has it's own sdk module where the public interface lives. everything else is private
solana-core is also a junk drawer library <norman-rockwell.jpg>

anything that is a breaking change should follow semver, that way ecosystem developers can get a consistent experience across the solana stack (like any dev would expect with any other tool). the solana ecosystem and the agave client is mature enough for this. lets stop shooting application layer devs in the foot
intended or not, some things are public and being used by the ecosystem. even if something was not meant to be public and used, it should only be removed (or made private) in a major version bump. if its public, some dev is bound to use it (like it or not). the only clean way to remove it (or make not public) is in a major version bump

it's simple. each crate that has public api has it's own sdk module where the public interface lives. everything else is private

wholeheartedly agree with @t-nelson here! it also helps keep iteration nimble like @steviez (and im sure the rest of the engineers) want. reduce the public surface area for any random person to use (because if its available, someone will inevitably use it for some reason). cut a new major version of each crate and make only the minimally desired things public. then continuing to follow semver becomes really easy

@steviez - we need to protect our ability to clean things up and iterate quickly too

if the public surface area is reduced, then it should help keep iteration nimble. if its public, expect at least someone to use it for some random reason. therefore must follow semver

The status quo is this random stuff scattered across sdk, ledger, core, runtime and who knows where else. Breaking each individual item into its' own crate is an option, but I'd be curious if you or anyone else reading this have any alternatives in mind

it's simple. each crate that has public api has it's own sdk module where the public interface lives. everything else is private

Either I'm missing something in your response or I don't think you answered my question. Let's consider the type Packet as a concrete example:

This type is currently in solana-sdk (sdk/src/packet.rs) but probably shouldn't be
This type is used by solana-gossip, solana-turbine, solana-core, solana-perf and probably some others. It doesn't really matter exactly how many, just that it is more than 1 crate

Where does the type Packet live; in a solo crate ?


Empty or none existent pool: minecraft:none

23:45:16.485
[23:45:16] [Render thread/INFO] [Portal/]: [Portal] Client Changed Dimension from immersive_portals:alternate3 to immersive_portals:alternate4 time: 1360
23:45:17.256
[23:45:17] [Server-Worker-26/WARN] [minecraft/JigsawManager]: Empty or none existent pool: minecraft:none
23:45:23.492
[23:45:23] [Server-Worker-25/WARN] [minecraft/JigsawManager]: Empty or none existent pool: minecraft:none
23:45:23.492
[23:45:23] [Server-Worker-25/WARN] [minecraft/JigsawManager]: Empty or none existent pool: minecraft:none
23:45:23.492
[23:45:23] [Server-Worker-25/WARN] [minecraft/JigsawManager]: Empty or none existent pool: minecraft:none
23:45:25.969
[23:45:25] [Server-Worker-28/WARN] [minecraft/JigsawManager]: Empty or none existent pool: minecraft:none
23:45:27.624
[23:45:27] [Server-Worker-28/WARN] [minecraft/JigsawManager]: Empty or none existent pool: minecraft:none
23:45:29.503
[23:45:29] [Server-Worker-24/WARN] [minecraft/JigsawManager]: Empty or none existent pool: minecraft:none
23:45:30.924
[23:45:30] [Server-Worker-24/WARN] [minecraft/JigsawManager]: Empty or none existent pool: minecraft:none
23:45:36.849
[23:45:36] [Server-Worker-24/WARN] [minecraft/JigsawManager]: Empty or none existent pool: minecraft:none
23:45:36.850
[23:45:36] [Server-Worker-24/WARN] [minecraft/JigsawManager]: Empty or none existent pool: minecraft:none
23:45:38.143
[23:45:38] [Server-Worker-24/WARN] [minecraft/JigsawManager]: Empty or none existent pool: minecraft:none
23:45:40.489
[23:45:40] [Server-Worker-24/WARN] [minecraft/JigsawManager]: Empty or none existent pool: minecraft:none
23:45:40.489
[23:45:40] [Server-Worker-24/WARN] [minecraft/JigsawManager]: Empty or none existent pool: minecraft:none
23:45:43.100
[23:45:43] [Server-Worker-28/WARN] [minecraft/JigsawManager]: Empty or none existent pool: minecraft:none
23:45:45.614
[23:45:45] [Server-Worker-28/WARN] [minecraft/JigsawManager]: Empty or none existent pool: minecraft:none
23:45:45.615
[23:45:45] [Server-Worker-28/WARN] [minecraft/JigsawManager]: Empty or none existent pool: minecraft:none

I get Empty or none existent pool: minecraft:none once every second and the server freezes forever. No chat messages go through, no commands, nothing that requires server interaction.
Sigh. Another mod another conflict. I'll let you know if I find the culprit.

Is it not the issue with biomes o plenty?


explicitly #error on big-endian ARM

This check was suggested by brandmeyer on HN:
https://news.ycombinator.com/item?id=27979437
Before landing this, I need to figure out how to test it, ideally in CI.

Thanks for picking this up!  Getting a complete working armeb toolchain for real hardware can be involved[0,1].  That said, standard ARM GCC builds will generate object files with the -mbig-endian switch [2,3] even if the toolchain lacks the multilibs to generate complete programs.  You should be able to verify that this technique is sound with whatever GCC ARM is already in your CI system.
[0] https://bugs.launchpad.net/gcc-arm-embedded/+bug/1718206
[1] https://bugs.launchpad.net/gcc-arm-embedded/+bug/1469289
[2] https://www.godbolt.org/z/TWT4da6a6
[3] https://gcc.gnu.org/onlinedocs/gcc-10.3.0/gcc/ARM-Options.html


Save diff report

Hi,
Can you add a save comparison report functionality?
Thanks

With the version <IP_ADDRESS> of XML notepad you will see it opens the diff output in a temporary html file (you will see something like this in your Web Browser address bar: file:///C:/Users/username/AppData/Local/Temp/ojvumhhn.htm).  This means the comparison is already saved in that temporary file, you could copy that to a more permanent location pretty easily using the windows file path: "C:\Users\username\AppData\Local\Temp\ojvumhhn.htm".


incorrect import causes package to fail immediately

When importing the package on python 3.10, I immediate get an error message something like "failed to import kubernetes from kubernetes".
To get this module to work, I had to patch init.py.
Specifically, I had to turn this:
from kubernetes import client, config, kubernetes

Into this instead:
import kubernetes
from kubernetes import client, config

thanks! please submit a PR if you have time, I'm pressed for time to fix things like this ATM. some of these might be related to changes in the library or something and the way requirements.txt permits more recent versions.


Is there configuration that can go back to the last workspace if I'm already on the triggered workspace?

This would be really useful for my workflow.
If I'm in my IDE workspace and I need to quickly switch to console or the browser I want to get back to my IDE with the same shortcut. It would give the feeling of toggling a different workspace on and off. Always returning you to the last one.


You can't remove missile from standart launcher any way except launch it

Intentional, the standard launcher and up are not designed to be feed by hand. That is why the track system was implemented in Assembly Line to move the missiles around.
https://minecraft.curseforge.com/projects/assembly-line
https://www.youtube.com/watch?v=0FW03d9Xy_c
Right now, standard missiles are not fully supported by the system. However, it is planned to be implemented in the near future.


Clean URLs that contain dots do not work with the built-in server

The built-in server, when using the urlcleaner plugin, does not resolve clean URLs containing dots (e.g. "/news/release-1.0.0/") correctly.
The culprit seems to be this line in server.py (function translate_path):
if path.strip() == "" or File(path).kind.strip() == "":

If the path contains a dot, File(path).kind will return the part after the last dot. A more robust approach might be to see if the file does not exists and then try the choices from strip_extensions.

@callaa I have investigated the case.
My first thought about the UrlCleanerPlugin is that this feature has to be followed with specific web server url-rewrite configuration.
@lakshmivyas, shall UrlCleanerPlugin be a production plugin? If not, will fix the issue.

@llonchj: @callaa's problem is a specific one in that his path has dots, but they are not file extension related dots and hence they are being missed.  So his suggested approach is a good one.  I'd say that:
https://github.com/hyde/hyde/blob/master/hyde/server.py#L68
should be the first conditional that we evaluate.

The bug itself is simple to fix.
@lakshmivyas, my question was about the plugin. +1 on having clean URL's.
The plugin updates urls by removing extensions based on strip_extensions setting.
Generated markup using this plugin makes URL's makes them not to match the static file.
Publishing a site using this plugin requires some kind of URL-rewrite configuration in the production web server.
And this is why hyde server source code has to be modified, creating sort-of-coupling between the plugin and core functionality, including this current bug. This is the reason why I was asking about.
From the architectural point of view, core functionality and plugins shall be completely decoupled.
IMHO, a possible solution will be to improve the plugin in order to rename every node from /news/releases-1.0.0.html to /news/releases-1.0.0/index.html? Something like that will be tricky and require to set the base tag. This solution will not require patching hyde server or having to define URL-rewrite clauses in the production web server.
Another solution, will be to filter the plugin to mode=="production".
Does that make sense?

And this is why hyde server source code has to be modified, creating sort-of-coupling between the plugin and > core functionality, including this current bug. This is the reason why I was asking about.

I see.  Yes.  In the long term, ideally the plugins should have an event related to serving.  Perhaps a translate URL for serving event, which could also help us in doing the url rewrites in the future.
Right now though, since URL Cleaner is the only plugin with such a dependency, we could potentially fix the issue in the server code knowing that there would be a better solution in the long term.

Another solution, will be to filter the plugin to mode=="production".

While this is certainly something that will help avoid these corner case issues and keep the server simple, it also makes the behavior of the local site different from the production site and may cause issues with automated tests and even applications as it involves URLs.  Hyde is also used in a lot of rich js applications.


Annoying messages logged for the capability

Issue
The latest operator is reporting hundred of lines within the log containing such info
2019-10-22T08:58:17.274Z	INFO	capability-controller	-> Capability	{"name": "postgres-capability-db", "status": "Pending"}
2019-10-22T08:58:17.275Z	INFO	capability-controller	Waiting for the following resources: Postgres => postgres-capability-db is not ready: statefulsets.apps "postgres-capability-db" is forbidden: caches not synchronized
2019-10-22T08:58:17.495Z	INFO	capability-controller	-> Capability	{"name": "postgres-capability-db", "status": "Pending"}
2019-10-22T08:58:17.495Z	INFO	capability-controller	Waiting for the following resources: Postgres => postgres-capability-db is not ready: statefulsets.apps "postgres-capability-db" is forbidden: caches not synchronized
....

Is it a RBAC issue ? Is it another error ?

I haven't seen that error running on OpenShift…

As this is a transient error that I can really reproduce, I will close the ticket


Ajax request [Not Ready To Merge ]

@championswimmer , fill the url ..with your link and check the response , I will do the changes and then final it .

You still need to resolve some conflicts :P

@championswimmer  , Solved :)


Fixed Issue#2136 Global display settings changes are not applied immediately

After this fix, now when the user changes some of the display settings (hiding the stars, showing the checkboxes, themes) and goes back, the new settings will be applied to the current folder immediately. This is the expected behavior.

I don't think this is the right approach. Please check https://github.com/k9mail/k-9/issues/2136#issuecomment-286628698 for more information on how I believe this should be implemented. A pull request doesn't have to implement all of that. Starting with only recreating the settings Activity is fine.


Remove User Error

When I try "Users" > "Remove user" I get an error:
TypeError: 'NoneType' object is not iterable
In field index number 0
History
Needed definition of rm_user at 0.00000s
Tried to run block at 0.00007s
code: |
resp = proxy_conn.remove_user(id=user_id)
del user_id
rm_user = True

Any chance this was when your login token was invalid--after changing password? I can't reproduce this one.
Let us know what user id you tried to delete as well, if you recall. May be a permissions limit and we need to filter the options.

Closing this for now. We should do more tests of the whole checklist and this might resurface, but this may have been particular to not getting the re-login prompt after a password change.


[Remote Cluster State] Upload ephemeral cluster state objects(cluster blocks, nodes, customs) to remote

Is your feature request related to a problem? Please describe
Meta issue: https://github.com/opensearch-project/OpenSearch/issues/13683
Ephemeral objects like cluster blocks , discovery nodes and ClusterState.custom objects are not uploaded to remote store currently.
Describe the solution you'd like
Upload the ephemeral objects to remote store
Related component
Cluster Manager
Describe alternatives you've considered
No response
Additional context
No response

[Triage - attendees 1 2 3 4 5 6 7 8 9 10]
This issue doesn't have enough context to make a clear triage choice - deferring to the Cluster Manager team triage.

PR: https://github.com/opensearch-project/OpenSearch/pull/14089


Search for artists specifically

Add the option to search for artists specifically, and search "within" an artist. That'd help with more generic artist/song names.

Hi @AstudilloMarillo, I’ve added a filter that allows searching only by artist or song name. It’s not the most optimized filter, considering that UG doesn’t have a filter like this on their website, so I had to create one myself with the resources I had available.
Here’s an example below:
https://ultimate-tab.com/search?q=Fear&type=All&page=1&source=artist_name


fix: remove usage of :has in accordion

Rules are not needed anymore (fixed in global style.css).
Test URLs:

Before: https://main--macquarie-help-centre--hlxsites.hlx.live/help/personal/bank-accounts/manage-account/helping-you-transact-online
After: https://fix-has-accordion--macquarie-help-centre--hlxsites.hlx.live/help/personal/bank-accounts/manage-account/helping-you-transact-online

@volteanu , when I access the link on my mobile phone, then on click of accordion heading, a cylindrical reflection comes for a second. I am unable to share this somehow, but can you test if you see the same?
this is specific to mobile access view. isn't visible on desktop view


bib2gls (and other rules) missing from texlive 2017?

Version: arara 3.0a
I've installed arara using tlmgr (on Ubuntu). It seems to have only installed some of the rules. For example, I don't see the script for bib2gls...
❯ ls '/home/uri/texlive/2017/texmf-dist/scripts/arara/rules'
biber.yaml         lmkclean.yaml        make.yaml        sketch.yaml
bibtex.yaml        lualatexmk.yaml      nomencl.yaml     songidx.yaml
clean.yaml         lualatex.yaml        pdflatexmk.yaml  tex.yaml
dvips.yaml         luatex.yaml          pdflatex.yaml    xelatexmk.yaml
frontespizio.yaml  makeglossaries.yaml  pdftex.yaml      xelatex.yaml
latex.yaml         makeindex.yaml       ps2pdf.yaml      xetex.yaml

oops, sorry. saw now it's part of 4.0/

Hi Uri!
Oh it's completely my fault! Version 4.0 is not officially released, and it's been like this for a while. I am now finishing my thesis and hopefully I will be able to finally write the proper manual and submit the entire bundle to CTAN and hit TeX Live and MiKTeX. I have a planned talk about arara in TUG 2018 (to be held in Rio de Janeiro), so I have the moral obligation to release it. :wink:
I never thought a thesis would take so much time and effort to write! I had to put version 4.0 on hold for more than 2 years! Since this new version is a qualitative and quantitative leap from version 3.0, it requires a complete rewrite for the manual. I am very excited because things are coming to an end (in a good sense!), so soon users will benefit greatly from the new features in the version 4.0!
For now, thank you very much for your patience and also for your appreciation, arara is nothing without the great users who decided to give my humble tool a chance! Stay tuned, I might have great news on the next weeks (and a certain release before July!).
All the best!
Paulo

Thank you very much for the quick response!
What would be the best way to install this beta (considering I'm using a manual install of TeX Live (rather than packages for Ubuntu)...
p.s. Good luck with the thesis :)

Hello Uri!
My pleasure, it's always great to talk with our users! :wink:
If you feel bold and adventurous enough (although version 4.0 is stable and the code is already declared gold), I can provide the deployment steps (as well as a binary) for making this version available in your system. However, I must admit that the rules are still to be revised and improved, and some new rules might appear soon. :smile:
In general, arara requires a simple structure:
any dir/
├── arara.jar
└── rules/
   ├── animate.yaml
   ├── bib2gls.yaml
   ├── biber.yaml
   └── ...

What I do here is to use a bash script to wrap the .jar invocation and add its location to my path. That's exactly the same procedure TeX Live follows to make arara and other scripts/tools available. I can provide step-by-step instructions for you, just poke me!
Also, sorry for the delay in replying, sometimes I go offline to have some Pringles. :wink:
Cheerio!
Paulo


MHD MustSupport definition lacking clarity

https://profiles.ihe.net/ITI/MHD/index.html#must-support
According to the link above, MustSupport is equivalent R2
The MustSupport description of (Required if known) does not make sense in the Comprehensive DocumentReference definition.
As part of the R2 definition from the link above:
"A receiving application shall not raise an error solely due to the presence or absence of the element."
But it is an XDS error if required metadata is missing in XDS DS column in Table 4.3.1-3: Sending Actor Metadata Attribute Optionality
In this case an error must be raised.

The two point given are totally different points. Must Support is used for R2. Where as XDS error reporting is for mandatory  elements. The use of Must Support and minimal cardinality of 1 (mandatory) are different.
Please point out specific cases.

If MHD MustSupport says "A receiving application shall not raise an error solely due to the presence or absence of the element."
Then, what is the expected MustSupport behavior when an ITI-65 PDB labeled with Comprehensive profile is missing a mandatory element with MustSupport property?
Should an error be raised or not? I think yes, because the XDS error will be translated into an OperationOutcome. Then the MustSupport R2 does not make sense because it says a receiving application shall not raise an error if the mandatory element is absent.

discussion on zulip -- https://chat.fhir.org/#narrow/stream/179177-conformance/topic/must-support.20when.20re-profiling
Grahame recommends we define mustSupport -- "Some elements marked as must-support have a minimum cardinality of 1, so that they must be sent. This combination indicates that other variants of the same profile, they are marked as RE, but this label in addition to a minimum cardinality of 1 makes it explicitly clear that the value in the element SHALL come from a stored value, not some aribitrarily added fixed value to meet the cardinality requirements"

alternative is to not derive the comprehensive from minimal, so that mustSupport can be explicitly defined.


update the code base for new API v2

according to announcement they deprecated the Twitter API v1.1 streaming endpoints. So I think you need to upgrade your code base to make compatible with new APIs

I can confirm that the codebase has deployed successfully, but there are no incoming events from EC2. I believe that we may have to dive into the code running on the instance.


Upgrade to Expo sdk V19.0.0 and cleanup

The app can no longer be run in expo because the sdk is too old. So I upgraded the sdk and there are a bench of changes (basically renaming of modules).

Hey @brentvatne, I can handle this if you want? Currently dead - https://expo.io/@community/movieapp


Can't edit dataset metadata when custom SQL query is applied

Steps to reproduce:

Open a dataset on which you have admin rights
Link under table name should read Edit metadata
Clicking Edit metadata should work as expected
Apply a custom SQL query / view
Link under table name should read View metadata
Clicking that link will open a modal with greyed out fields and a message that says You can't edit the dataset attributes.

good catch! Thanks!

Yes, this is done on purpose. We did in the past trying to avoid problems in the case of the user was querying against other tables and not the current one.

About the text change, totally agree @mnquintana.

What @mnquintana is describing here is exactly the current behaviour:

As @xavijam explained, this was implemented this way for some reason. I'm not sure why metadata shouldn't be editable when a custom query has been applied (which I'm assuming is what @mnquintana is asking for). @xavijam thoughts? do you think we can let users edit metadata even if a query has been applied?

Some points:

The button for opening metadata dialog should say: 'View metadata' (because you can't edit anything there).
Source placeholder in this case should say: 'Empy source'.
License placeholder in this case should say: 'Empty license'.

It does say "View metadata..."...

@alonsogarciapablo That's right, I was expecting metadata to still be editable even when a custom query is applied.

@alonsogarciapablo, if it says "view metadata" === :dancer:.


Performance Issues with High Memory Usage

Thsi is a request for two enhancements related to texture memory usage:
1 The ability to fetch a texture back into the CPU given a TextureHandle
2. Some way to tell how much GPU memory is left.
When memory gets tight, the application can react by fetching a texture from the GPU, reducing it to a lower resolution, and replacing the big texture with a smaller one.
Currently I do this by re-reading the texture from disk, re-decompressing the texture, and reducing the resolution. This is slow, I/O bound, and steals disk time from loading of new textures. If I can request the texture back from the GPU, reduce it in size, and make a new, reduced-sized texture without doing I/O, that's a big win. Mip-mapping won't help; that doesn't reduce texture memory usage, just GPU load. So what's needed is the inverse operation of add_texture_2d:
Proposed addition to  Rend3 API:
impl Renderer {
   pub fn fetch_texture_data_2d(handle: TextureHandle) -> Result<Error, (UVec2, Vec<u8>)> {
   ...
   }
}

This returns the size" and "data" fields from the Texture previously passed into add_texture_2d.
This is just data access; there's no need to change anything GPU side. Changes will be made by creating a new Texture and modifying the Material using the existing API, usually resulting in dropping the old TextureHandle and releasing the space.
As for finding out how much memory is left, I gather this is difficult. But some way to tell if the program is about to exceed the GPU capacity is needed.
Thanks
Background, from issue #346:
Regarding texture memory usage, I now have a better idea of what's going on.
The only tool I have for seeing what the GPU is doing is NVidia's X Server utility, which tells me the total memory in use in the GPU. What I see is that, after loading and unloading many textures, the memory usage number goes up, and never comes back down much, although it does come back down by 5-10% or so.. The amount it shows is closely related to the peak texture usage, not the current texture usage. It turns out my peak is too big, because, as the program frantically loads and unloads textures as the camera moves, the ones taking up the most screen space have priority, which means downsizing distant textures is low priority and fast camera movement causes a large but temporary texture memory usage spike.
So this looks like something where GPU memory allocation allocates memory for texture purposes and does not give it back in a way that the NVidia X server utility can see. This is common behavior for allocators that get their memory from some lower level allocator, like the operating system's, and don't give it back, or only give it back if they can give back a big block.
Is that what's going on down at the allocation level? That would explain what I'm seeing. Thanks.

Re fetch texture: how would this be better than the current situation with add_texture_from_texture, which you can use to chop off the top level mipmap and make a new texture without that miplevel? In addition, this api is going to need to be async and will likely take up to 3 frames to get the contents of the data back to you.
Re memory usage: we should be reclaiming the data, but I can double check that texture deletions actually are causing deletions.
Filed https://github.com/gfx-rs/wgpu/issues/2447 about memory usage queries.

add_texture_from_texture looks useful. I'm not currently providing mipmapped versions of textures, because  they would make them all at least 1.25x larger, 1.3333 with all the mip levels. But let me think about that. A strategy based on this might work.
I'm pretty sure texture deletions really are causing deletions. Or at least the memory is reused for new textures. Otherwise I'd see constantly increasing memory usage as I move the camera. What I see is increase to a peak, but little decrease from the peak, as measured by the NVidia X tool. I can move the camera for minutes with textures being loaded and unloaded without the peak increasing. This may be an artifact of how the memory usage is reported by the NVidia tool.

OK. I've thought about how to do this, and I don't need the ability to get a texture back. So cancel that request.
I still need some info about the GPU memory situation, though, to know when to start reducing texture resolution.

Uh oh. Tried enabling mip-mapping. No other change. Frame rate dropped from 43 FPS to 22 FPS. GPU not out of memory.
Changes looked like this:
diff rendertextureconvert.rs ../obsolete/rendertextureconvert.rs
130c130
<     let mips = 1; // ***TEMP** no mipmapping
---
>     ////let mips = 1; // ***TEMP** no mipmapping
143,144c143,144
<         mip_count: rend3::types::MipmapCount::Specific(NonZeroU32::new(mips).unwrap()),
<         mip_source: rend3::types::MipmapSource::Uploaded,
---
>         mip_count: rend3::types::MipmapCount::Maximum,
>         mip_source: rend3::types::MipmapSource::Generated,

Undid change, rebuilt, frame rate back up to 43 FPS.

So this is generating mipmaps on the gpu every time you upload a texture, so if you are constantly uploading new things that could cause issues both cpu and gpu side.
There is an integration with tracy that rend3 has through the profiling library, which I would recommend using to get some more detailed information of your runtime.
See the tracy feature of scene-viewer on how to do this. There's also https://docs.rs/wgpu-profiler/0.8.0/wgpu_profiler/chrometrace/fn.write_chrometrace.html which you can use to dump the gpu side profiling information.

I'm not sure what to do at this point.
For me, Rend3 0.3.x is much worse than 0.2.2. I only used the unreleased version because I needed the fix for #332. But the unreleased version has much bigger vertex objects. And it's slower.
Enabling mipmapping appears to double texture memory consumption. The amount of memory needed should be only 1.33333x, but if buffers are a power of two, that becomes 2x. So that's part of the bloat problem. And turning on mipmapping made it slower, not faster. I was at 59 FPS with 0.2.2. Now I'm at 22 FPS.
With vertex bloat and mipmapping bloat, an 8GB GPU isn't enough any more.
Is the lower performance inherent in adding Android support?
Should I ask for a backport of #332 to 0.2.x, go back, and stay there while the new problems are resolved?
Suggestions?

OK. Here's an initial Tracy profile. One frame, all content loaded, camera is stationary, nothing is happening except the refresh loop, no mipmapping, Rend3 Unreleased (pre 0.3.x). 48 FPS. Same as without profiling. Call stacks are not being captured, so this is rather coarse data.
My own code is barely doing anything here; it and the window event system are using 32us per frame.

With Rend3 0.2.2, that was about 58 FPS. So, lost about 10FPS with the new version.
This is the ideal case for frame rate; frame rate drops much lower when textures and meshes are being loaded from other threads. Now that I see how this works, I'll put in some calls to profiling::scope! so my own activity in other threads will show up. But that's not relevant to this capture.

This is basically just #533


bug: Compilation from JSX style attribute to ternary results in functions getting called twice

Reproducible example
Playground link
function Example() {
  const random = () => Math.random() > 0.5 ? null : "123";
  return (
    <div
      style={{
        "--blah": random()
      }}
    />
  );
}

Compiles to the following:
function Example() {
  const random = () => Math.random() > 0.5 ? null : "123";
  return (() => {
    var _el$2 = _tmpl$2();
    _$effect(() => random() != null ? _el$2.style.setProperty("--blah", random()) : _el$2.style.removeProperty("--blah"));
    return _el$2;
  })();
}

The function random gets called twice, even though it's not pure.
This is not just problematic for this contrived example, but also for functions that are not side-effect free.
Even more problematic is that this behaves differently when more properties are involved:
function Example() {
  const random = () => Math.random() > 0.5 ? null : "123";
  const someOtherThing = () => "abc";
  return (
    <div
      style={{
        "--blah": random(),
        "--someotherthing": someOtherThing()
      }}
    />
  );
}

Compiles to:
function Example() {
  const random = () => Math.random() > 0.5 ? null : "123";
  const someOtherThing = () => "abc";
  return (() => {
    var _el$2 = _tmpl$2();
    _$effect(_p$ => {
      var _v$ = random(),
        _v$2 = someOtherThing();
      _v$ !== _p$.e && ((_p$.e = _v$) != null ? _el$2.style.setProperty("--blah", _v$) : _el$2.style.removeProperty("--blah"));
      _v$2 !== _p$.t && ((_p$.t = _v$2) != null ? _el$2.style.setProperty("--someotherthing", _v$2) : _el$2.style.removeProperty("--someotherthing"));
      return _p$;
    }, {
      e: undefined,
      t: undefined
    });
    return _el$2;
  })();
}

Now the functions do get called only once.
Suggested fix
My suggestion is to compile to something like the following instead:
function Example2() {
  const random = () => Math.random() > 0.5 ? null : "123";
  return (() => {
    var _el$ = _tmpl$();
    _$effect(() => {
      var _$v = random();
      _$v != null ? _el$.style.setProperty("--blah", _$v) : _el$.style.removeProperty("--blah")
    });
    return _el$;
  })();
}

This could work as well:
function Example2() {
  const random = () => Math.random() > 0.5 ? null : "123";
  return (() => {
    var _el$ = _tmpl$();
    _$effect((_$v) => void (_$v = random()) != null ? _el$.style.setProperty("--blah", _$v) : _el$.style.removeProperty("--blah"));
    return _el$;
  })();
}

P.S. Should we use the same approach for property access?
P.P.S. removeProperty returns the removed value, maybe that should also be voided?

P.S. Should we use the same approach for property access?

Yes

P.P.S. removeProperty returns the removed value, maybe that should also be voided?

Yeah.. it could.. didn't care that much but sure..


How to get the light direction of an FOV image?

Dear authors,
Thanks for your great work.
Sorry to bother you, I have a few questions.

After running test_lighting.py, I can get the panorama, but how can I get the light direction (and also intensity) of the input FOV image? In simple words, my need is, input a image, and I want to know the light direction of this image. For multiple light sources or without a main light source, is there a way to get the light direction and intensity per pixel level of the input FOV image?

What is the best size of the input FOV image for test_lighting.py, or the best ratio of width/height, for example width/height=2?

In terms of application on face relighting, how can I get faces like in Fig. 14 in your paper? I mean, is the input a cropped and aligned face? Is the same trained model that you offered on Google Drive? After running test_lighting.py, I get the panorama with a face in the center, and then what should I do to get faces like in Fig. 14?

Thanks in advance.

Thank you for you attention.

Given a LDR FOV image, we generate a HDR panorama. The HDR panorama is a HDR spherical image that provides lighting direction and HDR provides lighting intensity.

Since our model uses GAN inversion, the size of FOV is not limited to a fixed size, see the framework. Given a FOV, we project it into a panorama, where black areas are invisible regions and visible pixels are from FOV.

We use  this paper, code to generate faces.

Thank you for you attention.

Given a LDR FOV image, we generate a HDR panorama. The HDR panorama is a HDR spherical image that provides lighting direction and HDR provides lighting intensity.
Since our model uses GAN inversion, the size of FOV is not limited to a fixed size, see the framework. Given a FOV, we project it into a panorama, where black areas are invisible regions and visible pixels are from FOV. We then use GAN inversion to generate HDR panoramas.
We use  this paper, code to generate faces.  When you have both HDR panorams and 3D faces, you can render the faces with blender app or blender script. I suggest this blender script.

Thank you very much for your quick reply. I am a green hand on light analysis. Is there any python or c++ code (a link if possible) that I can use to calculate the light direction and intensity from an HDR panorama?

Sorry, I am not quite sure if I understand your question. As far as I can see, HDR panorama can be directly regarded lighting direction and intensity. Consider an object which is place at the center of a panorama (sphere), each pixel of the panorama can be regarded as a lighting ray to the center. The pixel value is the intensity. Please let me know if I misunderstand your question.

Thank you for you attention.

Given a LDR FOV image, we generate a HDR panorama. The HDR panorama is a HDR spherical image that provides lighting direction and HDR provides lighting intensity.
Since our model uses GAN inversion, the size of FOV is not limited to a fixed size, see the framework. Given a FOV, we project it into a panorama, where black areas are invisible regions and visible pixels are from FOV. We then use GAN inversion to generate HDR panoramas.
We use  this paper, code to generate faces.  When you have both HDR panorams and 3D faces, you can render the faces with blender app or blender script. I suggest this blender script.

Thank you very much for your quick reply. I am a green hand on light analysis. Is there any python or c++ code (a link if possible) that I can use to calculate the light direction and intensity from an HDR panorama?

Sorry, I am not quite sure if I understand your question. As far as I can see, HDR panorama can be directly regarded lighting direction and intensity. Consider an object which is place at the center of a panorama (sphere), each pixel of the panorama can be regarded as a lighting ray to the center. The pixel value is the intensity. Please let me know if I misunderstand your question.

Thank you again for your kind reply.
Here is the generated panoramas. I am just trying to understand these figures.
For the panorama above, the three red circles are the predicted light sources, correct?
![20150111_8953_test](https://user-images.githubusercontent.com/39927800/235078365-5be02449-9c1b-452b-b2b1-e024cf5bf7b0.png)
For the second panorama, I can make a conclusion that the light from right is stronger than the light from left (I mean in terms of the input FOV image, the light source from right of the image is stronger). Am I right?

Thank you. 1) Sure, there are lighting sources. 2)  That is right. In fact, since it is a panorama (sphere), the left and the right are stitched.

Thank you. 1) Sure, there are lighting sources. 2) That is right. In fact, since it is a panorama (sphere), the left and the right are stitched.

Thank you very much for your kind reply.


Request: Add theme to Hyper Store

Description
The official Hyper theme store is now live. Would you mind adding it there so more people can access it?
Original issue thread on the hyper repo is here.
Thank you very much for your work and the theme! 🎉

Theme has been submitted to the store; #46@hyper-site


Add W10_1903, W10_1809, W10_1803, W10_1709, and W10_1703

I probably should have done these in separate PRs, my bad :)


Consume installer 1.4 changes

Reference PR: https://github.com/istio/operator/pull/444
Resolves https://github.com/istio/istio/issues/18036

@irisdingbj: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

mandiff_operator_release-1.4
89e85e6a09f0adca19f18b4fb9d1c21b092b8c95
link
/test mandiff_operator_release-1.4

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@irisdingbj: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

mandiff_operator_release-1.4
376d94bd47a40fa1997b747327f1896ffff1861e
link
/test mandiff_operator_release-1.4

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

/lgtm

Putting a hold till @howardjohn can take a look. These are huge changes so I want to be really careful here.


Compare: slider for Point sizing?

The default Point size is awfully small, no matter the zoom level. Perhaps adding a slider bar to control size like for hexabins?

Very good point. Eric R was mentioning that to me as well.
Kai and I were were thinking of lifting the size. Adding a slider would make it no different from the hexbins since they are essentially the same. Kai suggested a 2 or 4px radius. I can bump it is to two today and see how we like it.

Bumping up would help, maybe to 4 px.
Comparing with what 2px looks like as hex, 2 px still tiny.

I think this works very well


Jd/struct changesv1

closes #1102
closes #1084
closes #1070
closes #1064
Requires:
https://github.com/NREL-Sienna/PowerSystemsTestData/pull/56
https://github.com/NREL-Sienna/PowerSystemCaseBuilder.jl/pull/92

@rodrigomha I won't merge until we are in a good place with the cost function stuff so we don't totally screw up the compatibility in the packages