[Bug]: Play local mp3-file

I read that this worked before in earlier versions of the adapter. Unfortunately it doesn't seem to work anymore with the current version 3.x.
For the future, it would be nice if the Chromecast adapter would also play local mp3 files (e.g. "/home/iobroker/mp3_files/sound01.mp3") by typing them into url2play.

After some testting I found following output of the chromecast adapter, if I want to play a local mp3.
The process can be easily reproduced:
The "chromecast.x.ID.player.play2url" object must be written with a local mp3 file (e.g. "/opt/iobroker/sayit.x/speech.mp3"), with "Acknowledged" set to false.
The Chromecast adapter will then output something similar to the text below if logging is set to debug.
I think this issue is the reason for the closed issue #106 of the sayit adapter (https://github.com/ioBroker/ioBroker.sayit/issues/106)
Logfile - using a gooogle home mini:
2022-01-20 10:43:20.378 - debug: chromecast.0 (627079) Google_Home_Mini_-_2OG_-_Buero - device stateChange player.url2play {"val":"/opt/iobroker/sayit.x/007 - salamisound-6154324-glocke-anschlagen-einmal.mp3","ack":false,"ts":1642671800376,"q":0,"from":"system.adapter.admin.0","user":"system.user.admin","lc":1642671800376} 2022-01-20 10:43:20.378 - info: chromecast.0 (627079) %s - Not a http(s) URL -> asume local file for %s 2022-01-20 10:43:20.379 - debug: chromecast.0 (627079) 2OGBueroSpeaker - device stateChange player.url2play {"val":"/opt/iobroker/sayit.x/007 - salamisound-6154324-glocke-anschlagen-einmal.mp3","ack":false,"ts":1642671800376,"q":0,"from":"system.adapter.admin.0","user":"system.user.admin","lc":1642671800376} 2022-01-20 10:43:20.379 - info: chromecast.0 (627079) %s - Not a http(s) URL -> asume local file for %s 2022-01-20 10:43:20.383 - info: chromecast.0 (627079) Exported as http://null:8082/state/chromecast.0.f0ef8673077c.exportedMedia 2022-01-20 10:43:20.384 - info: chromecast.0 (627079) Google Home Mini - 2OG - Buero - Try to play url - http://null:8082/state/chromecast.0.f0ef8673077c.exportedMedia 2022-01-20 10:43:20.385 - info: chromecast.0 (627079) Google Home Mini - 2OG - Buero - Try to launch default player 2022-01-20 10:43:20.387 - info: chromecast.0 (627079) Exported as http://null:8082/state/chromecast.0.f0ef8673077c.exportedMedia 2022-01-20 10:43:20.388 - info: chromecast.0 (627079) 2OGBueroSpeaker - Try to play url - http://null:8082/state/chromecast.0.f0ef8673077c.exportedMedia 2022-01-20 10:43:20.389 - info: chromecast.0 (627079) 2OGBueroSpeaker - Try to launch default player 2022-01-20 10:43:20.391 - info: chromecast.0 (627079) Google Home Mini - 2OG - Buero - Closing mediaInfo 2022-01-20 10:43:20.391 - error: chromecast.0 (627079) Google Home Mini - 2OG - Buero - Error playing playlist - Error: Error: getaddrinfo EAI_AGAIN null at ClientRequest. (/opt/iobroker/node_modules/castv2-player/lib/mediaInfo.js:80:98) at ClientRequest.emit (events.js:400:28) at Socket.socketErrorListener (_http_client.js:475:9) at Socket.emit (events.js:400:28) at emitErrorNT (internal/streams/destroy.js:106:8) at emitErrorCloseNT (internal/streams/destroy.js:74:3) at processTicksAndRejections (internal/process/task_queues.js:82:21) 2022-01-20 10:43:20.391 - error: chromecast.0 (627079) Google_Home_Mini_-_2OG_-_Buero - Cannot play file "http://null:8082/state/chromecast.0.f0ef8673077c.exportedMedia": Error: Error: getaddrinfo EAI_AGAIN null 2022-01-20 10:43:20.395 - info: chromecast.0 (627079) 2OGBueroSpeaker - Closing mediaInfo 2022-01-20 10:43:20.396 - error: chromecast.0 (627079) 2OGBueroSpeaker - Error playing playlist - Error: Error: getaddrinfo EAI_AGAIN null at ClientRequest. (/opt/iobroker/node_modules/castv2-player/lib/mediaInfo.js:80:98) at ClientRequest.emit (events.js:400:28) at Socket.socketErrorListener (_http_client.js:475:9) at Socket.emit (events.js:400:28) at emitErrorNT (internal/streams/destroy.js:106:8) at emitErrorCloseNT (internal/streams/destroy.js:74:3) at processTicksAndRejections (internal/process/task_queues.js:82:21) 2022-01-20 10:43:20.396 - error: chromecast.0 (627079) 2OGBueroSpeaker - Cannot play file "http://null:8082/state/chromecast.0.f0ef8673077c.exportedMedia": Error: Error: getaddrinfo EAI_AGAIN null
and logfile while using a chromecast audio:
2022-01-20 10:45:18.784 - debug: chromecast.0 (627079) Chromecast_Audio_-_0OG_-_Treppenhaus - device stateChange player.url2play {"val":"/opt/iobroker/sayit.x/008 - salamisound-8157172-glocke-anschlagen-einmal.mp3","ack":false,"ts":1642671918782,"q":0,"from":"system.adapter.admin.0","user":"system.user.admin","lc":1642671918782} 2022-01-20 10:45:18.784 - info: chromecast.0 (627079) %s - Not a http(s) URL -> asume local file for %s 2022-01-20 10:45:18.785 - debug: chromecast.0 (627079) 0OGTreppenhausSpeaker - device stateChange player.url2play {"val":"/opt/iobroker/sayit.x/008 - salamisound-8157172-glocke-anschlagen-einmal.mp3","ack":false,"ts":1642671918782,"q":0,"from":"system.adapter.admin.0","user":"system.user.admin","lc":1642671918782} 2022-01-20 10:45:18.785 - info: chromecast.0 (627079) %s - Not a http(s) URL -> asume local file for %s 2022-01-20 10:45:18.791 - info: chromecast.0 (627079) Exported as http://null:8082/state/chromecast.0.546009e0744e.exportedMedia 2022-01-20 10:45:18.792 - info: chromecast.0 (627079) Chromecast Audio - 0OG - Treppenhaus - Try to play url - http://null:8082/state/chromecast.0.546009e0744e.exportedMedia 2022-01-20 10:45:18.792 - info: chromecast.0 (627079) Chromecast Audio - 0OG - Treppenhaus - Try to launch default player 2022-01-20 10:45:18.794 - info: chromecast.0 (627079) Exported as http://null:8082/state/chromecast.0.546009e0744e.exportedMedia 2022-01-20 10:45:18.794 - info: chromecast.0 (627079) 0OGTreppenhausSpeaker - Try to play url - http://null:8082/state/chromecast.0.546009e0744e.exportedMedia 2022-01-20 10:45:18.795 - info: chromecast.0 (627079) 0OGTreppenhausSpeaker - Try to launch default player 2022-01-20 10:45:18.798 - info: chromecast.0 (627079) Chromecast Audio - 0OG - Treppenhaus - Closing mediaInfo 2022-01-20 10:45:18.799 - error: chromecast.0 (627079) Chromecast Audio - 0OG - Treppenhaus - Error playing playlist - Error: Error: getaddrinfo EAI_AGAIN null at ClientRequest. (/opt/iobroker/node_modules/castv2-player/lib/mediaInfo.js:80:98) at ClientRequest.emit (events.js:400:28) at Socket.socketErrorListener (_http_client.js:475:9) at Socket.emit (events.js:400:28) at emitErrorNT (internal/streams/destroy.js:106:8) at emitErrorCloseNT (internal/streams/destroy.js:74:3) at processTicksAndRejections (internal/process/task_queues.js:82:21) 2022-01-20 10:45:18.799 - error: chromecast.0 (627079) Chromecast_Audio_-_0OG_-_Treppenhaus - Cannot play file "http://null:8082/state/chromecast.0.546009e0744e.exportedMedia": Error: Error: getaddrinfo EAI_AGAIN null 2022-01-20 10:45:18.800 - info: chromecast.0 (627079) 0OGTreppenhausSpeaker - Closing mediaInfo 2022-01-20 10:45:18.801 - error: chromecast.0 (627079) 0OGTreppenhausSpeaker - Error playing playlist - Error: Error: getaddrinfo EAI_AGAIN null at ClientRequest. (/opt/iobroker/node_modules/castv2-player/lib/mediaInfo.js:80:98) at ClientRequest.emit (events.js:400:28) at Socket.socketErrorListener (_http_client.js:475:9) at Socket.emit (events.js:400:28) at emitErrorNT (internal/streams/destroy.js:106:8) at emitErrorCloseNT (internal/streams/destroy.js:74:3) at processTicksAndRejections (internal/process/task_queues.js:82:21) 2022-01-20 10:45:18.801 - error: chromecast.0 (627079) 0OGTreppenhausSpeaker - Cannot play file "http://null:8082/state/chromecast.0.546009e0744e.exportedMedia": Error: Error: getaddrinfo EAI_AGAIN null

This is working here using latest master. Have you tried using that?

Ich bekomme , mit egal welcher Version, keine mp3 mehr abgespielt. Bekomme ewig den Error...could not upload....
Keine Chance, egal welche URL ich da eingebe.
Hat jemand eine Erleuchtung?

Ich bekomme , mit egal welcher Version, keine mp3 mehr abgespielt. Bekomme ewig den Error...could not upload.... Keine Chance, egal welche URL ich da eingebe. Hat jemand eine Erleuchtung?

Local MP3. You cannot enter a URL, just a location on the local filesystem.

Ok, falsch ausgedrückt. Mit URL meinte ich alle Möglichkeiten eines lokalen Pfades.

Ok, falsch ausgedrückt. Mit URL meinte ich alle Möglichkeiten eines lokalen Pfades.

What O/S are you using? What value did you place in the url2play state?

This is working here using latest master. Have you tried using that?

I wrote '/media/iobroker/136_www/temp/google.mp3' into url2play.
I reinstalled the v3.0.1 directly from Github on 08.03.2022.
It just doesn't work because the adapter recognizes a local file but tries to generate a URL from it that is completely broken 😢
As I wrote before here the Error-Log:
`2022-03-08 16:34:23.092 - info: chromecast.0 (114438) Chromecast Audio - 1OG - Schlafzimmer - setting volume to same value 30 - ignored
2022-03-08 16:34:23.094 - info: chromecast.0 (114438) 1OGSchlafzimmerSpeaker - setting volume to same value 30 - ignored
2022-03-08 16:34:23.099 - info: chromecast.0 (114438) %s - Not a http(s) URL -> asume local file for %s
2022-03-08 16:34:23.106 - info: chromecast.0 (114438) %s - Not a http(s) URL -> asume local file for %s
2022-03-08 16:34:23.187 - info: chromecast.0 (114438) Exported as http://null:8082/state/chromecast.0.A.exportedMedia
2022-03-08 16:34:23.188 - info: chromecast.0 (114438) Chromecast Audio - 1OG - Schlafzimmer - Try to play url - http://null:8082/state/chromecast.0.A.exportedMedia
2022-03-08 16:34:23.209 - info: chromecast.0 (114438) Chromecast Audio - 1OG - Schlafzimmer - Try to launch default player
2022-03-08 16:34:23.221 - info: chromecast.0 (114438) Chromecast Audio - 1OG - Schlafzimmer - Closing mediaInfo
2022-03-08 16:34:23.225 - error: chromecast.0 (114438) Chromecast Audio - 1OG - Schlafzimmer - Error playing playlist - Error: Error: getaddrinfo EAI_AGAIN null
at ClientRequest. (/opt/iobroker/node_modules/castv2-player/lib/mediaInfo.js:80:98)
at ClientRequest.emit (events.js:400:28)
at Socket.socketErrorListener (http_client.js:475:9)
at Socket.emit (events.js:400:28)
at emitErrorNT (internal/streams/destroy.js:106:8)
at emitErrorCloseNT (internal/streams/destroy.js:74:3)
at processTicksAndRejections (internal/process/task_queues.js:82:21)
2022-03-08 16:34:23.227 - error: chromecast.0 (114438) Chromecast_Audio-1OG-_Schlafzimmer - Cannot play file "http://null:8082/state/chromecast.0.A.exportedMedia": Error: Error: getaddrinfo EAI_AGAIN null
2022-03-08 16:34:23.236 - info: chromecast.0 (114438) Exported as http://null:8082/state/chromecast.0.A.exportedMedia
2022-03-08 16:34:23.237 - info: chromecast.0 (114438) 1OGSchlafzimmerSpeaker - Try to play url - http://null:8082/state/chromecast.0.A.exportedMedia
2022-03-08 16:34:23.240 - info: chromecast.0 (114438) 1OGSchlafzimmerSpeaker - Try to launch default player
2022-03-08 16:34:23.242 - info: chromecast.0 (114438) Exported as http://null:8082/state/chromecast.0.A.exportedMedia`

What does the adapter instance config screen look like? What have you set web instance and web server IP to?

What does the adapter instance config screen look like? What have you set web instance and web server IP to?

Config-windows only gives me the choise of web-instance where I chose "web.0".
Inside the adpter web.0 the correct IP of the iobroker installation is chosen.
Everything else using the same web-adapter also works without problems.
I only don't know what the extra-setting 'Redirect options' inside the web-adapter is used for.
This is left empty in my installation and seems to use the 'Default redirect path'.
Whatever that means 😉
Btw.: The same file with same config but called by 'http://192.X.X.60/Sounds/temp/google.mp3' (which is the same file as '/media/iobroker/136_www/temp/google.mp3' ) is mostly played correct by the adapter.

Config-windows only gives me the choise of web-instance where I chose "web.0".

Are you sure you are not using outdated version of web or chromecast adapter then? My chromcast adapter config screen has both 'Web instance' and 'Web server IP' settings.
See this error in your log above:
2022-03-08 16:34:23.187 - info: chromecast.0 (114438) Exported as http://null:8082/state/chromecast.0.A.exportedMedia

Shows the obvious error that IP address is null. Seems this would be read from the config screen option you say does not exist. If your config screen is outdated you could try iob upload chromecast to refresh it?

I stopped the chromecast adapter inside iobroker.
Logged in by putty, changed to /opt/iobroker and called  iob upload chromecast
The settings windows only shows as attached:

That seems to be your problem then. But why?
What other adapters do you have? Do you have instances of discovery & net-tools? I notice that recently chromecast changed to require net-tools (which needs discovery).

That seems to be your problem then. But why?
What other adapters do you have? Do you have instances of discovery & net-tools? I notice that recently chromecast changed to require net-tools (which needs discovery).

I have a lot 😉
Yes discovery and net-tools are installed and activated.
Discovery was not activated before, but now is.
I changed to beta-Status and updated all I could find.
But...
The same windows in the instance settings of the chromecast adapter. Only one field to choose, where I have chosen web.0 🤷♂
And adding a local file to play2url causes again following error-output:
2022-03-09 11:04:33.864  - debug: chromecast.0 (3242) 1OGSchlafzimmerSpeaker - device stateChange player.url2play {"val":"/media/iobroker/136_www/temp/google.snd.26c1dea3-b1f7-4298-8dc0-4c2983917901.mp3","ack":false,"ts":1646820273862,"q":0,"from":"system.adapter.admin.0","user":"system.user.admin","lc":1646820069321}
2022-03-09 11:04:33.865  - info: chromecast.0 (3242) %s - Not a http(s) URL -> asume local file for %s
2022-03-09 11:04:33.871  - info: chromecast.0 (3242) Exported as http://null:8082/state/chromecast.0.XXSerialNumberXX.exportedMedia
2022-03-09 11:04:33.871  - info: chromecast.0 (3242) 1OGSchlafzimmerSpeaker - Try to play url - http://null:8082/state/chromecast.0.XXSerialNumberXX.exportedMedia
2022-03-09 11:04:33.875  - info: chromecast.0 (3242) 1OGSchlafzimmerSpeaker - Closing mediaInfo
2022-03-09 11:04:33.876  - error: chromecast.0 (3242) 1OGSchlafzimmerSpeaker - Error playing playlist - Error: Error: getaddrinfo EAI_AGAIN null
    at ClientRequest.<anonymous> (/opt/iobroker/node_modules/castv2-player/lib/mediaInfo.js:80:98)
    at ClientRequest.emit (events.js:400:28)
    at Socket.socketErrorListener (_http_client.js:475:9)
    at Socket.emit (events.js:400:28)
    at emitErrorNT (internal/streams/destroy.js:106:8)
    at emitErrorCloseNT (internal/streams/destroy.js:74:3)
    at processTicksAndRejections (internal/process/task_queues.js:82:21)
2022-03-09 11:04:33.876  - error: chromecast.0 (3242) 1OGSchlafzimmerSpeaker - Cannot play file "http://null:8082/state/chromecast.0.XXSerialNumberXX.exportedMedia": Error: Error: getaddrinfo EAI_AGAIN null

That seems to be your problem then. But why?
What other adapters do you have? Do you have instances of discovery & net-tools? I notice that recently chromecast changed to require net-tools (which needs discovery).

Is there maybe a file I can just replace on mine to have the necessary data or can I edit a file to add the missing IP address there?
There is simply no field to enter anything other than web.0.
Or do I have to enter the IP there???
Or is it maybe a problem with the web-adapter???
Or could you show me the place inside the adapter-source where I could add the IP manually for testing purposes?

Too bad.
I just thought if I edit the line 884 of the file
/opt/iobroker/node_modules/iobroker.chromecast/libchromecastDevice.js
and manually add the IP address of the host
url2play = 'http://192.X.Y.Z:8082/state/' + exported_file_state;
instead of
url2play = 'http://' + adapter.config.webServer + ':8082/state/' + exported_file_state;
I could force the output to a local file.
Unfortunately it didn't work.
After making changes to the files below /opt/iobroker/ do you have to call something else so that the changes made are also accepted?
Or do you have to reboot the computer with ioBroker?

On that topic, I have 2 web adapters running, do you? Maybe the IP address config only shows when there is more than one to choose?

Strange.
I now have a second instance of the web adapter installed. This instance is installed but disabled.
In the ChromeCast adapter, I select the disabled instance because this selection also shows an input field for the IP address.
Now the output of local mp3 files works.
I don't understand that, do I ?

So just adding a second web adapter is a workaround for this bug?

No. It seems that the output of a non local file is not possible anymore... By now I don't know where to change which settings to get the chromecast adapter to play an http:// sound :-(
I am working on that but I think the Adapter is yet a litte bit $%§ööü?ä!

No. It seems that the output of a non local file is not possible anymore...

That is not true. I use it every day here. v3.0.1.

No. It seems that the output of a non local file is not possible anymore...

That is not true. I use it every day here. v3.0.1.

Sorry I think you misunderstood me 😉
I meant that the local output didn't work for me anymore after making changes to the different web-adapter-instances- and the chromecast-configurations.
Now the output of local files works again but this can't hide that there are some more probölems with the chromecast-adapter. Why do I need to install to instances of the web adapter to get the chromecast adapter playing local files???
I would really be happy if in the future the problems with sound-output inside ioBroker would be solved generally. It is not only the chromecast. Also the sons-adapter seems to make problems.
But as I said before. I don't know why but now my ioBroker plays local mp3 files with the sonos and chromecast adapters.
That's enough for me for the moment 😁
Thanks for giving hints to solve my problems 👍

...I meant that the local output didn't work for me anymore after making changes to the different web-adapter-instances- and the chromecast-configurations.

So the adapter is still broken? Erm...?

Now the output of local files works again...

... or not?
Please tell us exactly what you did to make things work. If a bug cannot be described and replicated it is very hard to fix.
For example, if things are working now, undo what you did - does it stop working? Change your installation once more (tell us exactly what do you) - does it start working? If yes, cool - these are great clues to find the bug.

would also be interested in the correct solution

I am currently having the same issue.

After making changes to the files below /opt/iobroker/ do you have to call something else so that the changes made are also accepted? Or do you have to reboot the computer with ioBroker?

You need to restart the adapter is all. I still think you should concentrate on why the value of adapter.config.webServer is null.
On that topic, I have 2 web adapters running, do you? Maybe the IP address config only shows when there is more than one to choose?

adapter.config.webServer seems to be null. Using a second web server instance does nothing for me.
I cannot edit or select a proper IP adress in the chromecast adapter settings.

This is the configuration for my web.0 instance:

Any ideas what I can try to get rid of this error?
discovery and net-tools are running as well.

What version of the adapter? Latest master works perfectly here.

I'm using v3.0.3

I notice in your logs trying to play with null server details. It's as if you haven't selected a web server in the config, but you say you have. Then I notice there's no IP address next to the server. That's probably the issue.

yeah I know that is the issue.
My whole comment is about that I can't select an IP adress there :D

So why didn't you raise an issue with "Cannot select IP address for web instance"? :disappointed:

because the issue discussed here had the same problems (null URL, not able to select an IP adress for web instance), why bother with an additional issue?

But you notice this bug is closed. Please raise a new one.

ok, I will do that. no hard feelings, I thought it would be better that way :)


cleanup of main readme

Wanted to cleanup a bit the main readme to clarify which components are optional vs. those that are enabled by default.
It gets rid of the (optional) that kept repeating.

Good. Thanks again @burhan


refactor: more TypeScript migration

I'm not refactoring these a lot (yet), just migrating to TypeScript so we can benefit from all the benefits. Also removing jQuery where possible (mainly because I've already removed it from the dependencies and don't want to re-add it). Migrating to JSX where it makes sense too. And fixing linter warnings, of course.
Coverage is probably going to take a nosedive but it was a lie anyway. I've tested the new versions manually to ensure they still work.

[x] mb_blind_votes.user.js
[x] mb_bulk_copy_work_codes.user.js
[x] mb_qol_inline_recording_tracks.user.js
[x] mb_qol_seed_recording_disambiguation.user.js
[x] mb_qol_select_all_update_recordings.user.js
[ ] mb_supercharged_caa_edits.user.js
[ ] mb_validate_work_codes.user.js
[ ] Update old scripts so they auto-update to the rewritten version.
[ ] Update links in README.

I'll probably merge validate work codes into bulk copy work codes and rename the latter too.

Just wanted to remember you, that there already is https://github.com/ROpdebee/mb-userscripts/tree/wip-blind-edits-rewrite

Yeah, that's a pretty big rewrite though. I'd like to get back to that eventually, but here I'm just focusing on refactoring them enough to get them to pass typechecking, linting, building and eventually deploying.
Also, I don't like bulk copy work codes' implementation. Very messy. 😅

/deploy-preview

I've superficially tested all of these, and tested Supercharged in a bit more depth because the changes were a bit more complicated there. Seems to work fine on my end, but I suggest leaving this open for a while longer to make sure there are no regressions. I'll probably post in the forums too to ask people to try out the previews and report any regressions.

/deploy-preview with latest fixes

/deploy-preview more fixes
So I switched to @include rules over @match rules because the new scripts are still running on too many pages.  I'm no regex hater (I actually quite enjoy them, maybe I'm weird), but it's just not something you want to "show" your users. If anyone now wants to know what pages these scripts are going to run on, they'll be presented with a string of alien civilization-level garbage. They're also much more error-prone (I wish I had addressed #75 before tackling this).
 I'm all for the safer domain matching, absolutely, but its path matching is severely limited. Why is there no complement to @match like there is @exclude for @include? Why is there no way to specify "one of these two options here please" without writing a near-identical rule twice? Why the f– does a wildcard (*) match a path separator (/)?! And WHY does it then NOT match the query string (?...) in Tampermonkey?!? I just…can't.
I just want to write *.musicbrainz.org/release/* without matching musicbrainz.org/release/…/edit. Why do I need to write /https?://(\w+\?)?musicbrainz\.org/release/.+?([?#]|$)/ for such a simple match? 😕  Part of me wants to just say @match *.musicbrainz.org/* and add checks to the code to see if we're on a good page or not.
For the record, I know this won't ever improve because there are different implementations and even if they all coordinate and decide to implement that (which is unlikely considering all the userscripts written so far likely expect * to match multiple path parts), the implementations will probably differ anyway and there's likely going to be this one person who cannot upgrade to the newer version and is still stuck on GM3, meaning we still have to support the older patterns anyway.
</rant>

Noting for later: Supercharged is missing some separator on release events, c227924f4119639e917a47ed46afc82ea99628e7 wasn't a good fix.

2005-05-23 (GB)2005-06-06 (DE)

/deploy-preview let's see if this still works? We need to regenerate CAA Dimensions because the preview version was probably updated to a more recent main release while Supercharged is still expecting the new interface (it's very messy currently).


chore: add comments using chatGPT

What this PR does:
Add comments using chatGPT.
This is an experiment.
Which issue(s) this PR fixes:

Fixes #
Special notes for your reviewer:
Does this PR introduce a user-facing change?:

/lgtm
/approve
/rebase

/rebase

/merge squash

/lgtm
/merge

/lgtm
/approve
/merge


python310Packages.image-match: remove

Module is no longer maintained.
https://github.com/rhsimplex/image-match/blob/master/README.md
Description of changes

Things done

Built on platform(s)

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

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

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

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

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

[ ] Fits CONTRIBUTING.md.

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


summit program 2024 publishing

Hi Folks,
I have found the following files in the website repo, of which the framework retrieves information for the program 2023.
https://github.com/SovereignCloudStack/website/blob/main/_data/summit2023-talks.yml
the attribute

day
is not required in 2024
the attribute
speaker
is empty. Instead "description" is used for the name of the speaker. Perhaps because of the possibility to have two lines, one for "de" and "en".
the attribute
location
I do not remember anymore why we had it and how this displayed. We need to check this.
the attribute
avatar
should be possible activate by placing a folder in the assets/images folder like
summit2024/speaker/
and to point at an image like
summit2023/speaker/rafael-laguna.jpg
once we have checked, how the attributes are displayed when compiled, I can fill up the file with data.
The attributes
slides
video
we only need after the summit

Additionally there is a page, where all speakers are displayed
https://github.com/SovereignCloudStack/website/blob/main/_data/summit2023.yml
This should be pretty straight forward.

I have created a draft-branch and a pull request fro that:
https://github.com/SovereignCloudStack/website/pull/914
@alexander-diab and @reginametz , please add the scheduled talks here: https://github.com/SovereignCloudStack/website/blob/summit2024_schedule/_data/summit2024.yml


Generic dataset in C++

This is an initial implementation of https://trello.com/c/wgOtKAlC/129-generic-dataset-in-c

 Generic Dataset in C++

@mg6, please provide tests.


remove style jobs and cleanup makefile gofmt and goimports are running already with golangci-lint

Summary

remove style jobs and cleanup makefile gofmt and goimports are running already with golangci-lint
update golangci-lint

also:
Fixes: https://github.com/sigstore/cosign/issues/2084
Release Note
n/a
Documentation
n/a

Codecov Report

Merging #2105 (ae45eba) into main (3a6088d) will decrease coverage by 0.06%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##             main    #2105      +/-   ##
==========================================
- Coverage   26.33%   26.27%   -0.07%
==========================================
  Files         129      129
  Lines        7564     7574      +10
==========================================
- Hits         1992     1990       -2
- Misses       5317     5329      +12
  Partials      255      255

Impacted Files
Coverage Δ

pkg/policy/eval.go
78.94% <0.00%> (-0.54%)
:arrow_down:

pkg/cosign/rego/rego.go
70.96% <0.00%> (-0.47%)
:arrow_down:

cmd/cosign/cli/sign/sign.go
14.57% <0.00%> (-0.13%)
:arrow_down:

pkg/cosign/fetch.go
0.00% <0.00%> (ø)

cmd/cosign/cli/sign.go
0.00% <0.00%> (ø)

cmd/cosign/cli/options/sign.go
0.00% <0.00%> (ø)

cmd/cosign/cli/options/attest.go
0.00% <0.00%> (ø)

Help us with your feedback. Take ten seconds to tell us how you rate us.

running locally i dont see this error
$ /Users/cpanato/code/src/github.com/sigstore/cosign/bin/golangci-lint version
golangci-lint has version v1.47.2 built from (unknown, mod sum: "h1:qvMDVv49Hrx3PSEXZ0bD/yhwSbhsOihQjFYCKieegIw=") on (unknown)

$ /Users/cpanato/code/src/github.com/sigstore/cosign/bin/golangci-lint run --out-format=github-actions --timeout=5m
WARN [linters context] structcheck is disabled because of go1.18. You can track the evolution of the go1.18 support by following the https://github.com/golangci/golangci-lint/issues/2649.
WARN [linters context] tparallel is disabled because of go1.18. You can track the evolution of the go1.18 support by following the https://github.com/golangci/golangci-lint/issues/2649.


Incorrect test target selected when running or debugging tests with Bazel for IntelliJ plugin versions 2<IP_ADDRESS>.1 and newer

Description of the bug:
When running or debugging tests in IntelliJ IDEA using newer versions of the Bazel for IntelliJ plugin (versions 2<IP_ADDRESS>.1-api-version-242 and later), the IDE often selects the incorrect Bazel target for test execution. I have noticed that this issue specifically occurs when a test class extends a base test class. While it may happen in other scenarios, this appears to be a common case.

Behavior with older plugin version (2<IP_ADDRESS>.3-api-version-242):
Tests run and debug correctly, selecting the correct target.
Behavior with newer plugin versions (e.g., 2<IP_ADDRESS>.1-api-version-242, 2<IP_ADDRESS>.1-api-version-242, 2<IP_ADDRESS>.1-api-version-243):

Running or debugging the test class triggers the wrong target, leading to unexpected results or test failures.

Which category does this issue belong to?
Intellij
What's the simplest, easiest way to reproduce this bug? Please provide a minimal example if possible.

Set up the environment:

Install IntelliJ IDEA version 2024.2
Install the Bazel for IntelliJ plugin version 2<IP_ADDRESS>.1-api-version-242 or newer.

Open a Bazel project in IntelliJ IDEA.

Find a test class that extends another base test class:

public class TestA extends OtherBaseTestB {
    // Test implementation
}

Attempt to run or debug the test:
Click the green run/debug icon (▶) next to the test class in the editor's left gutter.

Observe the behaviour:

The IDE selects the wrong Bazel target for the test execution.
Tests may fail or produce unexpected results due to the incorrect target being used.

Which Intellij IDE are you using? Please provide the specific version.
IntelliJ IDEA Ultimate Edition [2024.2] and [2024.3]
What programming languages and tools are you using? Please provide specific versions.
Programming Language: Java; Test Frameworks: JUnit;  Bazel Version: 7.2.1
What Bazel plugin version are you using?
2<IP_ADDRESS>.1-api-version-242, 2<IP_ADDRESS>.1-api-version-243
Have you found anything relevant by searching the web?
GitHub Issues: Searched but did not find existing issues related to this problem.
Email Threads: Checked the intellij-bazel-plugin Google Group as well but found no relevant discussions.
Any other information, logs, or outputs that you want to share?

The issue seems to be specifically related to test classes that extend to other classes. The log (in IntelliJ "Run" window) will show no tests were found because the test ran on the wrong target.
No error messages are displayed; the tests simply run against the incorrect target.
Reverting to the older plugin version (2<IP_ADDRESS>.3-api-version-242) resolves the issue.

Well, looks like related to this change https://github.com/bazelbuild/intellij/pull/4473
@agluszak can you please look at it?


test: add ut for node_event_handler

Signed-off-by: Jason Liu<EMAIL_ADDRESS>Ⅰ. Describe what this PR does
add unit test for pkg/slo-controller/nodemetric/node_event_handler.go
Ⅱ. Does this pull request fix one issue?

Ⅲ. Describe how to verify it
Ⅳ. Special notes for reviews

Codecov Report

Merging #177 (fedb3f7) into main (6ef657a) will increase coverage by 0.05%.
The diff coverage is 50.00%.

@@            Coverage Diff             @@
##             main     #177      +/-   ##
==========================================
+ Coverage   58.66%   58.72%   +0.05%
==========================================
  Files          94       94
  Lines        8615     8615
==========================================
+ Hits         5054     5059       +5
+ Misses       3129     3124       -5
  Partials      432      432

Flag
Coverage Δ

unittests
58.72% <50.00%> (+0.05%)
:arrow_up:

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

...kg/slo-controller/nodemetric/node_event_handler.go
51.35% <50.00%> (+13.51%)
:arrow_up:

Continue to review full report at Codecov.

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

/lgtm
/approve


GCE: Handle multiple zones at once and add metadata labels

This PR changes the GCE discovery to support scraping multiple zones with a single gce_sd_config.
It also adds the missing GCE metadata K/V entries as metadata labels.
Questions:

Is it OK to have a breaking config change? (zone string -> zones []string) Should this PR include a little fallback logic to handle both cases?
Is it OK to include to rather unrelated changes in one PR (multi zones and metadata labels) or shut this be split into two?

Since the GCE discovery was already released with 1.2.0 we can't break the config. Backward compatibility would be required.
I would say we extract the metadata labels addition, as it is probably interesting either way.

What exactly are you trying to achieve that can't be done with templating multiple gce_sd_configs ? The only thing I can see is this.

Since the GCE discovery was already released with 1.2.0 we can't break the config. Backward compatibility would be required.

GCE is in beta, we can break it.
Given the way the API works, I think the current way we're doing zones is the best choice.

GCE is in beta, we can break it.

I wasn't aware of that, thanks for pointing it out. I see it is mentioned in the docs, I only checked the release notes, maybe we should have mentioned it there.

Given the way the API works, I think the current way we're doing zones is the best choice.

Agreed.

The motivation for this PR was to make the useability of the GCE SD module as similar to the AWS one as possible. With AWS you have the same concepts (Regions, Zones, etc.) but you don't need an aws_sd_config per zone.
You are right in that the metadata support is not exactly tied to that, so it may make sense to split this into another PR if we can't reach a swift agreement on this one.
IMHO the metadata change is fundamental to a lot of GCE SD use cases, so it should be included in any way.

You are right in that the metadata support is not exactly tied to that, so it may make sense to split this into another PR if we can't reach a swift agreement on this one.
IMHO the metadata change is fundamental to a lot of GCE SD use cases, so it should be included in any way.

I say go for it, however, I can't be alone to decide on this 🙂

With AWS you have the same concepts (Regions, Zones, etc.) but you don't need an aws_sd_config per zone.

The concepts are the same, the APIs are not. GCE apis are based on zones, AWS apis are based on region. We try to follow the APIs.
Metadata should be done.

Working on the metadata PR.
I'm not happy with your opinion on the zones part, but I agree that the SD code should follow the API used.

This could be done using the batch API : https://cloud.google.com/compute/docs/api/how-tos/batch.
When you list the instances with the gcloud utility, you obtain the complete list from all zones.


Fancy Zone resets

Hi,
I use Fancy Zone more often and after latest update it is getting reset every time I boot the machine.

@adithyavalsaraj
are you running 0.19.2? https://github.com/microsoft/PowerToys/releases/tag/v0.19.2
Please do the following:

make sure FZ has a layout selected
go to C:\Users\%USERNAME%\AppData\Local\Microsoft\PowerToys\FancyZones
copy zones-settings.json to the desktop and rename it to zones-settings-1.json.txt
reboot the machine
use FZ to verify if it was reset
go to C:\Users\%USERNAME%\AppData\Local\Microsoft\PowerToys\FancyZones
copy zones-settings.json to the desktop and rename it to zones-settings-2.json.txt
upload zones-settings-1.json.txt and zones-settings-2.json.txt here

Thanks.

thank you @enricogior


Improve Github labels for NuttX

Description
Currently, the labels are not very readable. There is too much colors for lables that don't really mean anything and there is no distinction on the type/context of label.
Here are how it's organized in RIOT:
https://github.com/RIOT-OS/RIOT/labels
here for Zephyr:
https://github.com/zephyrproject-rtos/zephyr/labels
here for RT-Thread:
https://github.com/RT-Thread/rt-thread/labels
I would like to change it to be similar to the examples above:

add context for some labels like: "Platform: arm", "Area: Documentation", "Community: help wanted".
It would be ideal if each label had a context assigned, but I don't know if it's possible.
change the color of labels so that labels with the same context have the same color.
see what labels are missing (for example, the size of the change)

Does anyone have any objections ? Personally, I like how it's done in RIOT. If you know of any other github projects that have this handled nicely, please link here.
If we have clear and readable labels, we can later automate labeling with https://github.com/actions/labeler and other tools
Verification

[X] I have verified before submitting the report.

all wokr is done, should we close this issue? @raiden00pl


[all] add toc

Consider adding TOC to all themes if possible. This improves readability immensely.

[ ] torn completed


[Bug][gitlab] scopes lost the put api

Search before asking

[X] I had searched in the issues and found no similar issues.

What happened

What do you expect to happen
can put scopes to Gitlab
How to reproduce
try to create a GitLab blueprint with scopes.
Anything else
No response
Version
main
Are you willing to submit PR?

[X] Yes I am willing to submit a PR!

Code of Conduct

[X] I agree to follow this project's Code of Conduct

fixed


JSON unmarshaler returns UnknownFieldError error

This makes the JSON unmarshaler return a new error struct, UnknownFieldError, for unknown fields, when AllowUnknownFields is false. This is necessary in order for callers to be able to hide Go internals in APIs. Previously, the error of Unmarshal would be an error string such as:
unknown field "glorp" in proto.Mutation

This leaks the type proto.Mutation to clients, which should not need to see such internals when they are consuming a pure-JSON HTTP API.
There are other instances of fmt.Errorf being used, but this is the main one that leaks.

Hold on, I'll add a test for this struct.

Before adding API to distinguish between different json errors, there should first be an issue that discusses what the use-case for this even should be. After that, we can figure out what the right API is. A new error type is not necessarily the API we would want to go with.
Feel free to open an issue justifying the ability to distinguish an unknown field error.


DLib landmarks detection and oversampling

Hi,
There's something I'm not quite understanding:
In the trainer for the landmarks detector:
http://dlib.net/train_shape_predictor_ex.cpp.html
You set trainer.set_oversampling_amount(300); but the _oversampling_translation_jitter default to 0, so basically we are just duplicating the same items, is that done on purpose or is it a bug?
Thanks for any answer,

The defaults are meant to basically match what is in the original paper.
Don't read too much into it.


Add gometalinter to installMap

Removing the need for two update commands to be run

Brilliant...although...if the new update includes new linters, they won't be installed...but that isn't so bad I guess.


Please update --vm-set-type VirtualMachineScaleSet to plural form "VirtualMachineScaleSets" in document

[Enter feedback here]

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

ID: d75c3a8d-1187-bea1-a7d4-7ebba71c1790
Version Independent ID: 75b0c352-762e-16ae-5cc6-d807ffc1dc3f
Content: az aks
Content Source: src/azure-cli/azure/cli/command_modules/acs/_help.py
Service: container-service
GitHub Login: @rloutlaw
Microsoft Alias: routlaw

aks


[DealabsBridge-HotUKDealsBridge-MydealsBridge] Fix example values

Added real example values for discussion to allow automatic testing.
Updated keywords example value to be sure there will be some results.

Thanks.


[New Feature]: Optimizing Elasticsearch

Checked for duplicates
Yes - I've already checked
Alternatives considered
Yes - and alternatives don't suffice
Related problems
@hookhua made a series of recommendations for optimizing interactions with HySDS Elasticsearch deployments (i.e. Mozart, GRQ, Metrics). We want to do an audit of Elasticsearch deployments to ensure we’re in line with the checklist of optimizations. As we approach a significantly larger processing volume for OPERA R3, we should have optimizations in place.
Describe the feature request
Recommending performing an audit and creating separate tickets for the following optimizations that need to be implemented:

Optimization Name
Optimization Description

Jittering
All API calls have randomized jittering, e.g., calls to ES API. This feature is implemented in adaptation code and not limited to hysds-core.

Exponential Backoff
All API calls have randomized exponential backoff, e.g., calls to ES API. This feature is implemented in adaptation code and not limited to hysds-core.

Reduce ES Doc Size
Ensure the entire ES document stores only necessary data. Refer to the Elastic documentation for guidance on reducing document size.

Pagination Search
For deep pagination cases, avoid using the scroll API. Instead, use the search_after parameter with a point in time (PIT) to preserve the index state while paging through more than 10,000 hits. Refer to the Elastic documentation on paginating search results for details.

Search with Rounded Dates
Utilize rounded dates in Elasticsearch searches to improve search speed. For more information, refer to the Elastic documentation on tuning search speed.

Delete Indices, Not Documents
When managing Elasticsearch indices, consider deleting indices instead of individual documents. Refer to the Elastic documentation on index management for best practices. Keep in mind that the delete operation marks data as deletable until garbage collection occurs.

ILM Life-Cycle Management to Roll Off Old Indices
Implement Index Lifecycle Management (ILM) to automatically roll off old indices in Elasticsearch. Refer to the Elastic documentation on index lifecycle management and deleting empty indices for detailed guidance.

Node Optimization
Consider having 3 master nodes for optimal Elasticsearch performance. If performance is satisfactory with 2 nodes, you may experiment by downgrading instance sizes. Start with xlarge or large instances for testing and easily scale up as needed.

Sharding Strategy: ~10GB to 50GB per Shard
Implement a sharding strategy that allocates approximately 10GB to 50GB of data per shard. Avoid oversharding your indices to optimize Elasticsearch performance. For more information, consult the Elastic documentation on shard sizing. Each index in Elasticsearch is divided into one or more shards, each of which may be replicated across multiple nodes to protect against hardware failures.

Replica Tuning
Consider adjusting replica settings to enhance search throughput in Elasticsearch. For more information, refer to the Elastic documentation on tuning search speed.

File System Caching
Leveraging the underlying file system's cache to optimize data retrieval and improve search performance.

Use Built-in Auto-generated IDs
Utilize built-in auto-generated IDs for Elasticsearch documents. For details on how to use this feature, consult the Elastic documentation on tuning search speed.

Enough RAM?
Ensure that your Elasticsearch data nodes have sufficient RAM to support your workload. Refer to the Elastic documentation on tuning KNN search for recommendations.

Use Larger ES Nodes
Consider utilizing larger Elasticsearch nodes to improve indexing speed. For further information, refer to the Elastic documentation on tuning indexing speed.

In addition to the above listed, one other thing discussed on SWOT and NISAR is reconfiguring the three separate ES instances into a single 3-node ES cluster. This would allow ES to better load balance the queries while not significantly increase the ES resource footprint.
Separate still, there are also a few updates to hysds-core that may help as well that SWOT and NISAR are looking into. For example:

Make user dataset rule evaluation more efficient/targetted https://hysds-core.atlassian.net/browse/HC-476
Make User Rule Job evaluation more targeted https://hysds-core.atlassian.net/browse/HC-482

In addition to what @hookhua mentioned, we should also evaluate our mapping of nodes to shards. Currently we have multiple shards with a single node, which can actually cause ES to perform slower than single node / single shard. If we don't have multiple nodes, having multiples shards doesn't really give us much!

Hey @hhlee445 - OpenSearch will enable some of the features above but an upgrade alone won't resolve all of these. Suggest keeping this ticket open or migrating these feature requests to a new open search ticket.


OS X support?

Would love it if this supported NSTextField and NSLabel. Not sure what abstraction would be necessary to achieve this. Perhaps have OS specific versions of registerField gated behind a compile flag which take either NSTextField and UITextField. Hide the NSTextField or UITextField behind a protocol that lets you get and set the text. Then the rest of the code base just talks to the protocol instead of the textfield directly.

Perhaps this is something that we will consider in the future but it isn't currently on the radar. I honestly have never even done dev work in OS X.

@xgalaxy Are you interested in contributing?

+1

I'm not going to lie this project took off and I'm pretty overwhelmed by it. I no longer actively code in Swift and I need help from more contributors in order to keep this project relevant. I'd like to find someone to transition as lead maintainer or help this codebase find a happy home with a company.
The codebase for this project is relatively small and focused project for who is looking to contribute. It does one thing, and does it pretty well. It has pretty high test coverage and good adoption. I think my ideal maintainer / contributor would work for a company that actively uses SwiftValidator in their production application.
If you're interested in helping out please comment on #204


Need some way to monitor progress

I'm not sure where this should go, but there should be a way to mark a slide as "Done" and another way to mark it as "Reviewed". For groups working on a project, each person might be assigned a set of slides and these need to be reviewed by an expert. This requires some "check" (maybe a simple checkbox beside slide name?) to know if this is done and/or QC'd.

I think we'll need to work out some details on this before I can get started.  The simplest approach would be to just add a metadata key like reviewed=True and display that somehow in the UI. I suspect this won't provide a broad enough feature set though.  To help inform the implementation, which of the following items would be of interest?

Keeping track of who reviewed the slide and when.
Limiting who can review a slide or assigning a specific person.  Is the reviewing access distinct from admin/write access?
Requiring multiple people to review a slide.
Showing in the girder UI (rather than just in histomicstk) the review information.
Filtering by review metadata (list unreviewed slides, list slides assigned to me, list slides I have reviewed, etc.).  Should this be a global list or is filtering only necessary below a certain folder or collection?

@jbeezley Yes, that sounds about right. I would suggest at least two metadata keys: Annotated=True and Reviewed=True. Here is what I think on your queries:

Yes, that's definitely a needed.
Yes, and yes. Pathologists who review slides are not necessarily going to be the group admins.
This is also needed, as the same slide could go through multiple levels of review (crude, then fine-grained by more specialized expert).
I'm not sure about this. May be @cooperlab and @dgutman can provide an answer.
Absolutely! This is really needed, especially on the reviewer's side. In a project we are working on, we have 25+ users, each with different folders and slide so it gets really challenging to keep track of what was done and which slides have already been reviewed. I am creating a very crude SQL workaround for now, just to keep things going for the current project, but this would be really helpful/needed for future projects.

Should this be a global list or is filtering only necessary below a certain folder or collection?

I think it only make sense that it is below a certain folder/collection, because one person could be involved in multiple projects.
Thanks!


Switch to graphical chroot with a Chrome App

Hi, I'd like to have an icon in the Chrome taskbar to switch to the graphical crouton session, as I find the keyboard shortcut cumbersome. I found no Chrome App, which would do this.
I'll try to develop one, if there's none. What is the best way to switch the graphical chroot within an App?
I can think of the command sudo enter-chroot exec sh -c 'croutoncycle next', but for sure that's not the most direct way.

You can modify the Secure Shell app source code, install your custom version over the original (using extensions page "Load unpacked extension"), then launch the "Crosh Window" app/icon to have your custom shell code run. As seen here: https://github.com/dnschneid/crouton/issues/369#issuecomment-349793600


Test Ticket: Update Sign up for Trial URL on the Getting Started Section: Introducing Volt MX

Priority - Highest (Urgent req)
Description:
From the doc defect process doc
@kumari-h

download
https://bit.ly/4eugCty
If you don't have the c compliator, install it.(gcc or clang)


Discrepancy between graph and tau estimate

Hi, thanks so much for this package! I'm really grateful to you for coding this up and building it. For one of my applications, however, I'm finding some apparent discrepancies between the graphed quantities and the reported $\tau$. For example, see the below screenshot:

This $\tau$ seems obviously much larger than the visible difference between the graphed lines, which inverts from roughly 0.1 above control to 0.2 below control, suggesting a $\tau$ closer to -0.3.
Can you help me understand what might be causing this discrepancy? I was trying to debug by inspecting the fixed effects, but I wasn't able to see in the code where the fixed effects are stored, so had trouble understanding what might have gone amiss; I'm not sure if the plot is wrong, if $\tau$ is wrong, or if there's just something odd about the relatively sparse $\lambda$ weighting that is leading to the mismatch between the estimate and the visual pattern. I'd be happy to provide replication data if that would be helpful, thanks regardless for your attention to this.

It seems like perhaps the reported $\tau$ is simply the difference between pre-period $y$ and post-period $y$, without accounting for the difference-in-difference with the control trend?

Would it be correct to say that the current code takes a weighted difference between pre- and post-periods, but without estimating a full two-way fixed effects regression? From what I can tell, the estimation of the weights $\omega$, $\lambda$ and $\zeta$ look great, but I believe that the computation of $\tau$ as the difference between the weighted averages does not implement the two-way fixed effects (diff-in-diff) step as described in the paper.
I've adjusted my local version of the module with the following functions for estimating $\tau$:
  def regression_df(self):

    date_var = self.df.index.name
    melted_df = self.df.reset_index().melt(id_vars=date_var)
    id_var = melted_df.columns[1]
    melted_df['treatment'] = melted_df[id_var].isin(self.treatment).values * melted_df[date_var].isin(self.Y_post_t.index).values

    # sdid
    omega_weights, lambda_weights = self.estimated_params()
    melted_df = melted_df.merge(omega_weights.iloc[:-1].rename(columns={'features':id_var,
                                                                      'sdid_weight':'omega_weight'}),on=id_var,how='outer')
    melted_df = melted_df.merge(lambda_weights.rename(columns={'time':date_var,
                                                                      'sdid_weight':'lambda_weight'}),on=date_var,how='outer')

    melted_df['sdid_weight'] = melted_df['omega_weight'].fillna(1/len(self.treatment)) * melted_df['lambda_weight'].fillna(1/len(self.Y_post_t))

    # sc
    omega_weights_ADH = self.estimated_params('sc')
    melted_df = melted_df.merge(omega_weights_ADH.rename(columns={'features':id_var}),on=id_var,how='outer')
    melted_df['sc_weight'] = melted_df['sc_weight'].fillna(1/len(self.treatment))

    melted_df = melted_df.set_index([id_var,date_var])

    return melted_df

...
  def hat_tau(self, model="sdid"):

    """
    # adjusted from github to perform weighted TWFE regression
    """

    regression_df = self.regression_df()

    if model == "sdid":

        regression_df_noZeroWeight = regression_df.loc[regression_df['sdid_weight']>0] # weights must be strictly positive for PanelOLS; as they're zero weight, OK to drop

        FE = PanelOLS(regression_df_noZeroWeight['value'], regression_df_noZeroWeight['treatment'],
        		  entity_effects = True,
        		  time_effects = True,
                  weights = regression_df_noZeroWeight['sdid_weight'])

        result = FE.fit()

        tau_est = result.params[0]

    elif model == "sc":

        regression_df_noZeroWeight = regression_df.loc[regression_df['sc_weight']>0] # weights must be strictly positive for PanelOLS; as they're zero weight, OK to drop

        FE = PanelOLS(regression_df_noZeroWeight['value'], regression_df_noZeroWeight['treatment'],
        		  time_effects = True,
                  weights = regression_df_noZeroWeight['sc_weight'])

        result = FE.fit()

        tau_est = result.params[0]

I've also made a few smaller adjustments to plot this object differently, and to refactor the variance code to use these functions directly by making a deepcopy() of the given class instance and then reestimating the attribute objects, but the main changes were the above adjustments. Would be interested to hear if you think this is correct. Thanks again for building this code!


fix: Support hugr packages, fix the notebooks

This is a small bundle of changes aimed at fixing the example notebooks.

Use packages when building hugrs. This includes parsing guppy packages from rust, as well as returning packages from the circuit builder.

This required adding exports for the tket2 extensions from python.
We temporarily add a py dependency on hugr-cli, since packages are currently defined there. See https://github.com/CQCL/hugr/issues/1530

The guppy -> pytket pipeline is still broken, as guppy now generates many more function calls and nested control flow primitives, which we do not currently support.
drive-by: Make crate::serialize::guppy::find_function public.
Closes #621.

Note that the guppy parsing is not currently tested, since we want to avoid cyclic dev dependencies.
We'll address this on the encoder rework, probably by storing hugrs generated by some guppy program.


Exception calling "Item" with "1" argument(s)...

After executing install-package RequestReduce, it successfully downloads the package and then on running, I get the following error. This is a asp.net webforms 4.0 application.
Anyone else see this?
PM> install-package RequestREduce
Successfully installed 'RequestReduce 1.6.38'.
Successfully added 'RequestReduce 1.6.38' to AthlinksWebsite.
Exception calling "Item" with "1" argument(s): "The parameter is incorrect. (Exception from HRESULT: 0x80070057 (E_INVALIDARG))"
At C:\Users\ ... \WebSite\packages\RequestReduce.1.6.38\tools\install.ps1:6 char:48

$currentPostBuildCmd = $project.Properties.Item <<<< ("PostBuildEvent").Value

CategoryInfo          : NotSpecified: (:) [], MethodInvocationException
FullyQualifiedErrorId : ComMethodTargetInvocation

You cannot call a method on a null-valued expression.
At C:\Users\ ... \WebSite\packages\RequestReduce.1.6.38\tools\install.ps1:9 char:35

if (!$currentPostBuildCmd.Contains <<<< ($PostBuildScript)) {

CategoryInfo          : InvalidOperation: (Contains:String) [], RuntimeException
FullyQualifiedErrorId : InvokeMethodOnNull

PM>

Interesting. I'll look at that. RR should be installed just fine. The install.ps1 simply adds this to your post build script:
start /MIN xcopy /s /y "$(SolutionDir)packages\RequestReduce.1.6.38\pngoptimization*.exe" "$(TargetDir)"
You can add this manually which will make sure optipng.exe is deployed to your bin on build.

My Guess is that the AthlinksWebsite project is a Web Site and not Web Application and it appears that install.ps1 does not play nice with those. I'll get that fixed. Really glad you reported this. In order to take advantage of the lossless png compression, just make sure optipng.exe gets into your bin. Thanks again for filing this.

Just pushed an updated package fixing this issue for Web Site projects. Thanks so much for bringing this to my attention.

Thanks Matt. Now I get this:
PM> install-package RequestReduce
Successfully installed 'RequestReduce 1.6.52'.
Successfully added 'RequestReduce 1.6.52' to AthlinksWebsite.
Unable to find type [VsWebSite.VSWebSite]: make sure that the assembly containing this type is loaded.
At C:\Users\Troy\Documents\dotnet\Athlinks35\AthlinksWebSite\packages\RequestReduce.1.6.52\tools\install.ps1:5 char:45

if($project.Object -is [VsWebSite.VSWebSite] <<<< ) {

CategoryInfo          : InvalidOperation: (VsWebSite.VSWebSite:String) [], RuntimeException
FullyQualifiedErrorId : TypeNotFound

Interesting. Can you tell me what kind of a VS project AthlinksWebsite is? Is it a Web Site or Web Application or some other Project Template? Also what version of Visual Studio are you using? And what version of .net are you running? Thanks!

It is a WebSite using VS.Net 2010 and framework v4.

Sorry for all the queations but I'm trying to reproduce. can you tell me if you are using an express version, pro or ultimate? Are you using SP1 of VS? If you could include the contents of your .sln file, that would be helpful too. If its a website project, there will nor be a csproj or vbproj file, but if there is, sending that would be helpful too. Thanks!

I have attached the "About" screens from VS. sln will be in a separate
email.
Troy
On Thu, Dec 29, 2011 at 11:17 PM, Matt Wrock <
<EMAIL_ADDRESS>
wrote:

Sorry for all the queations but I'm trying to reproduce. can you tell me
if you are using an express version, pro or ultimate? Are you using SP1 of
VS? If you could include the contents of your .sln file, that would be
helpful too. If its a website project, there will nor be a csproj or vbproj
file, but if there is, sending that would be helpful too. Thanks!

Reply to this email directly or view it on GitHub:
https://github.com/mwrock/RequestReduce/issues/89#issuecomment-3311270

--
Athlinks.com
<EMAIL_ADDRESS>Email<EMAIL_ADDRESS>Twitter: @troybusot http://www.twitter.com/troybusot
http://www.twitter.com/troybusotTel:<PHONE_NUMBER>
Athlinks: http://www.athlinks.com/racer.aspx?rid=10000

The attachments don't get pulled into the github issue UI. You can email them to me directly at<EMAIL_ADDRESS>Thanks

OK. I've studied up a bit on the Visual Studio Extensibilit COM model and how Nuget gets references to it and I've discovered a much more simple way you can get me the exact information I need to troubleshoot this.

Please open the Nuget Package Manager Console in VS
Show me the output of Get-Project -All
Show me the output of (Get-Project AthlinksWebsite).object.pstypenames
The first in the output list should look something like this System.__ComObject#{70758ca4-91f8-46ad-80a7-73bc21bae68b} but the guid may be different
We can get the actual type name with this command: Get-ItemProperty "HKLM:\SOFTWARE\Classes\Interface\{70758ca4-91f8-46ad-80a7-73bc21bae68b}"
Can you send me the output of that command and if the guid is different in your case, replace the guid above with yours?

I really appreciate this. Getting the installation right for as many users as possible is obviously key and unfortunately many people have different environments that can be tough to reproduce on my own.

OK. I've studied up a bit on the Visual Studio Extensibilit COM model and
how Nuget gets references to it and I've discovered a much more simple way
you can get me the exact information I need to troubleshoot this.

Please open the Nuget Package Manager Console in VS
Show me the output of Get-Project -All

ProjectName                              Type                 FullName

AthlinksClassLib                         C#
C:\Users\Troy\Documents\dotnet\Athlinks35\AthlinksWebSite\AthlinksClassLib\AthlinksClassLib\AthlinksClassLib.csproj
C:...\AthlinksWebsite\                  Web Site
C:\Users\Troy\Documents\dotnet\Athlinks35\AthlinksWebSite\AthlinksWebsite\

Show me the output of (Get-Project AthlinksWebsite).object.pstypenames

PM> (Get-Project
C:\Users\Troy\Documents\dotnet\Athlinks35\AthlinksWebSite\AthlinksWebsite).
object.pstypenames
System.__ComObject#{70758ca4-91f8-46ad-80a7-73bc21bae68b}
System.__ComObject
System.MarshalByRefObject
System.Object

The first in the output list should look something like this

System.__ComObject#{70758ca4-91f8-46ad-80a7-73bc21bae68b} but the guid
may be different
5. We can get the actual type name with this command: Get-ItemProperty "HKLM:\SOFTWARE\Classes\Interface\{70758ca4-91f8-46ad-80a7-73bc21bae68b}"

PM> Get-ItemProperty
"HKLM:\Software\classes\interface{70758ca4-91f8-46ad-80a7-73bc21bae68b}"
PSPath       :
Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\Software\classes\interface{70758ca4-91f8-46ad-80a7-73bc21bae68b}
PSParentPath :
Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\Software\classes\interface
PSChildName  : {70758ca4-91f8-46ad-80a7-73bc21bae68b}
PSDrive      : HKLM
PSProvider   : Microsoft.PowerShell.Core\Registry
(default)    : VSWebSite

Can you send me the output of that command and if the guid is different

in your case, replace the guid above with yours?
I really appreciate this. Getting the installation right for as many users
as possible is obviously key and unfortunately many people have different
environments that can be tough to reproduce on my own.

Reply to this email directly or view it on GitHub:
https://github.com/mwrock/RequestReduce/issues/89#issuecomment-3313504

--
Athlinks.com
<EMAIL_ADDRESS>Email<EMAIL_ADDRESS>Twitter: @troybusot http://www.twitter.com/troybusot
http://www.twitter.com/troybusotTel:<PHONE_NUMBER>
Athlinks: http://www.athlinks.com/racer.aspx?rid=10000

FYI Matt:
PM> install-package requestreduce
Successfully installed 'RequestReduce 1.6.54'.
Successfully added 'RequestReduce 1.6.54' to AthlinksWebsite.
Congrats! Looks like it worked perfectly!


I have an idea. I can calculate all the data of winner through the database

I have an idea that I can calculate all the data of winner through database storage, so that all my p disk files can be stored offline. I don't know if this idea is feasible. I mean when I read the complete plot file, I want to save other information in the database. When I really need to read the complete plot file, I insert the corresponding hard disk. I want to know if it can be realized, How much information does each k32 file need to store in the database to meet my needs

It is designed to not allow this. You must use storage that is faster than a tape robot.


Adds Stepped Tracker component docs to site

Adds the Stepped Tracker component docs from the completed Word template to the site
Notes for reviewers:

You can preview this page here: https://saltdesignsystem-git-add-stepped-tracker-docs-joshwooding.vercel.app/salt/components/stepped-tracker/usage
This PR only converts the text content from Word to MDX. The content has already been reviewed in Word, so you just need to focus your review on whether or not it's been added to the site correctly.
The example code still needs to be migrated out of Storybook, so you will just see a dummy example on the page for now (but the titles & descriptions for each example should already be correct)
The props table will appear empty because it's expecting to find the code in the core package, but this component is still in labs. I figured it's better to do it this way around rather than setting it to labs now and risking forgetting to update that before this page goes live to consumers. (I did test it with labs though and the props appears correctly, so this will work when the time comes)
I'm aware that the Accessibility tab needs some spacing between the tabs and the text. However, this is a bug in the page styling and nothing to do with this component's content. I'll therefore address that in a separate PR

Replaced by #2291


Insert CREATE EXTENSION call in EnsureCreatedAsync

Currently, EnsureCreatedAsync doesn't call CREATE EXTENSION vector;. So the create script fails to run if any tables have a vector column.
Could the create extension call be injected into EnsureCreatedAsync?

Hi @shravan2x, you can use HasPostgresExtension for this.
protected override void OnModelCreating(ModelBuilder modelBuilder)
{
    modelBuilder.HasPostgresExtension("vector");
}

Added to the readme in the commit above


Fixes #35 and #36

#35 and #36

@kamilkisiela is this PR meant for the master or meteor1.2 branch?
I ask, because it is targeting master, but you were working on meteor1.2.

It's master branch. Feel free to merge it :)
I also have both fixes on meteor1.2 branch, so there won't be any conflicts in the future.

Yeah, I just looked at the network diagram and noticed it's really meant for master. Thanks :)


Terraform init failing

We have a dependency on github.com/stealthllama/panos-bootstrap/aws as a module. This is currently being migrated to the Palo Alto org by @stealthllama in GitHub so we will need to update our pointer to that once it has been migrated.
fdiaz at REMMAC11ELVDT ~ 💩  terraform init                                                                     aws
Initializing modules...

Error: Module not found

Module "fw_bootstrap" (from main.tf:40) cannot be found in the module registry
at registry.terraform.io.

Error: Module not found

Module "fw_bootstrap" (from main.tf:40) cannot be found in the module registry
at registry.terraform.io.

Error: Module not found

Module "fw_bootstrap" (from main.tf:40) cannot be found in the module registry
at registry.terraform.io.

Error: Module not found

Module "fw_bootstrap" (from main.tf:40) cannot be found in the module registry
at registry.terraform.io.

upstream fixed by @stealthllama


[AutoPR datafactory/resource-manager] [DataFactory]Add AzureMySqlSink and two datasets

Created to sync https://github.com/Azure/azure-rest-api-specs/pull/6820

This PR has been merged into https://github.com/Azure/azure-sdk-for-go/pull/5451


Description for working directory is undefined

In the arguments section of this page, the description for the "working directory" parameter is missing. It would be great to have it in place so that the exact purpose is clear for what this can be used for.

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

ID: 1eeb2956-beca-447d-c9a6-a859f3cfc4bf
Version Independent ID: 89f2a014-99bb-420d-265c-42515d30c80b
Content: Python Script task - Azure Pipelines & TFS
Content Source: docs/pipelines/tasks/utility/python-script.md
Product: devops
GitHub Login: @erickson-doug
Microsoft Alias: brcrista

Thanks @atg-abhishek!  Tracked as internal bug 1410665.

Should this be reopened? It still shows as undefined.


Key import problem

Now you must reboot Archipel after adding keys to Archipel chain nodes to be able to produce blocks. We can import keys before starting the Archipel chain node.

Resolved in #19


Add DeBERTa model

PR types

New features

deepset/deberta-v3-large-squad2
microsoft/deberta-v2-xlarge
microsoft/deberta-v3-base
microsoft/deberta-v3-large
microsoft/deberta-base

PR changes

Description

borrow from previous PR: https://github.com/PaddlePaddle/PaddleNLP/pull/5414
import numpy as np
import paddle
import torch
from paddlenlp.transformers import DebertaV2Tokenizer

def test_precision(model_name):
    pp_model = PaddleDebertaModel.from_pretrained(model_name)
    # pp_model = PaddleDebertaModel.from_pretrained(model_name.split('/')[-1])

    hf_model = HuggingfaceModel.from_pretrained(model_name)
    input_ids = np.random.randint(1, 1000, size=(2, 10))
    pp_inputs = paddle.to_tensor(input_ids)
    hf_inputs = torch.tensor(input_ids)
    pp_model.eval()
    hf_model.eval()
    with paddle.no_grad():
        pp_output = pp_model(pp_inputs, output_hidden_states=True, return_dict=True)
    with torch.no_grad():
        hf_output = hf_model(hf_inputs, output_hidden_states=True)

    if "start_logits" in hf_output.keys():
        for key in ['start_logits', 'end_logits']:
            diff = abs(hf_output[key].detach().numpy() - pp_output[key].numpy())
            print(f"{key} max diff: {np.max(diff)}, min diff: {np.min(diff)}")

    for i in range(pp_model.config.num_hidden_layers + 1):
        diff = abs(hf_output["hidden_states"][i].detach().numpy() - pp_output["hidden_states"][i].numpy())

        print(f"layer {i} max diff: {np.max(diff)}, min diff: {np.min(diff)}")

from transformers import AutoModelForQuestionAnswering as HuggingfaceModel
from paddlenlp.transformers import DebertaV2ForQuestionAnswering as PaddleDebertaModel
model_name = "deepset/deberta-v3-large-squad2"
test_precision(model_name)

output is:
start_logits max diff: 5.0067901611328125e-06, min diff: 1.862645149230957e-08
end_logits max diff: 3.3080577850341797e-06, min diff: 8.940696716308594e-08
layer 0 max diff: 9.5367431640625e-07, min diff: 0.0
layer 1 max diff: 2.86102294921875e-06, min diff: 0.0
layer 2 max diff: 4.291534423828125e-06, min diff: 0.0
layer 3 max diff: 7.152557373046875e-06, min diff: 0.0
layer 4 max diff: 5.7220458984375e-06, min diff: 0.0
layer 5 max diff: 6.198883056640625e-06, min diff: 0.0
layer 6 max diff: 8.106231689453125e-06, min diff: 0.0
layer 7 max diff: 6.67572021484375e-06, min diff: 0.0
layer 8 max diff: 6.198883056640625e-06, min diff: 0.0
layer 9 max diff: 8.106231689453125e-06, min diff: 0.0
layer 10 max diff: 1.0728836059570312e-05, min diff: 0.0
layer 11 max diff: 9.775161743164062e-06, min diff: 0.0
layer 12 max diff: 1.1086463928222656e-05, min diff: 0.0
layer 13 max diff: 9.298324584960938e-06, min diff: 0.0
layer 14 max diff: 8.106231689453125e-06, min diff: 0.0
layer 15 max diff: 1.3113021850585938e-05, min diff: 0.0
layer 16 max diff: 1.2874603271484375e-05, min diff: 0.0
layer 17 max diff: 3.4332275390625e-05, min diff: 0.0
layer 18 max diff: 1.9073486328125e-05, min diff: 0.0
layer 19 max diff: 1.1682510375976562e-05, min diff: 0.0
layer 20 max diff: 1.52587890625e-05, min diff: 0.0
layer 21 max diff: 2.384185791015625e-05, min diff: 0.0
layer 22 max diff: 2.5510787963867188e-05, min diff: 0.0
layer 23 max diff: 3.337860107421875e-05, min diff: 0.0
layer 24 max diff: 1.71661376953125e-05, min diff: 0.0

其中模型的参数是fp16，会产生一些微小的差别，是由于torch是基于fp32加载的（变成fp16会报错，有算子不支持），paddle是基于fp16加载的，计算出来的结果会稍有不同
加入文档：

跟huggingface的源代码有如下两个区别：

XSoftmax和XDropout， XSoftmax缺少_softmax_backward_data算子，Paddle无法直接实现反向，已提issue：https://github.com/PaddlePaddle/Paddle/issues/63387

这两个算子不影响推理，可能会影响训练对齐。

请问能加入中文版的deberta吗？

中文哪个版本？

好像只有二郎神的v2

可以给出对应的hf的deberta链接

https://huggingface.co/IDEA-CCNL/Erlangshen-DeBERTa-v2-710M-Chinese

欢迎开发者贡献:
https://github.com/PaddlePaddle/PaddleNLP/blob/f27fdb41a325ea11d8630eda3867e0e4e968ee5c/paddlenlp/transformers/deberta_v2/modeling.py#L787


Gordon (aka Leeroy) incorrectly marks PR as "docs-only"

I just noticed this PR: https://github.com/docker/docker/pull/14986 was automatically marked as "docs-only" / "status/3-docs-review" by Gordon, resulting in Janky to not run.
The linked PR contains 39 changed .md files and a single changed .go file in pkg/mflag/flag.go which also is the last file in the list of changed files.
Not sure how this happened; is there a limit on pullRequestContent that's analyzed?

Ping @calavera

On Jul 26, 2015, at 08:24, Sebastiaan van Stijn<EMAIL_ADDRESS>wrote:
I just noticed this PR: docker/docker#14986 was automatically marked as "docs-only" / "status/3-docs-review" by Gordon, resulting in Janky to not run.
The linked PR contains 39 changed .md files and a single changed .go file in pkg/mflag/flag.go which also is the last file in the list of changed files.
Not sure how this happened; is there a limit on pullRequestContent that's analyzed?
—
Reply to this email directly or view it on GitHub.


Wrong data

Hey, are you sure you have correct data for Webkit and Gecko? For example - is it true that using "transform" in webkit causes layout recalculation?

The data is correct in so far as that it reflects what the respective DevTools are showing when running the tests. Engineers from both Webkit and Gecko were just as surprised as we were, but we haven’t heard from them since.

@surma Looking into that further, transform behaves totally differently when you force to create a render layer. This happens specifically for 3d transforms (translateZ(0) counts). Because it's so different, shouldn't there be a separate entry on the list for that case?

Speaking as a Gecko developer who works on painting, subsequent changes to transform absolutely don't cause painting in Gecko. With two exceptions: If your element is much larger than the viewport, we only paint those areas that are currently inside the viewport, so you'll see some painting as you move other areas into the viewport. The other exception is scaling: If you cross a power-of-two scaling threshold, we re-rasterize the layer contents at a different resolution.
How did you gather the data? If you see painting during transforms in cases where the exceptions I mentioned don't apply, I'd love to hear about those cases.
I'm also interested in knowing through what channel you contacted Gecko engineers.

The data came from Jordan Santell a while ago (on the old repo over on my personal account). I'm more than happy to take PRs for fixes, though from my POV if we could pull logs directly via WebDriver etc then it would remove the human element entirely. Unfortunately today we can only get the logs for Chrome, but I'd love that to change!

@mstange Help would be greatly appreciated to automate this for Gecko!
In case you haven’t seen it: The _suite folder contains the code to generate and run the test suite.

Thanks for the pointers! I'll take a look next week.

Sorry for taking so long here. This is still on my to-do list.
I've run gogo() on suite/html/transform-change.html, and indeed, Firefox does a paint. Apparently there is a Firefox bug here due to the table elements. If I remove the table, gogo() causes no paints, and there is no paint marker in the performance recording. I need to look into it some more.

Oh, I had missed the #targetElement.active * rule. So the test changes the transform property on the table elements themselves, not just on the container div! And yes, Firefox doesn't support cheap transform changes on table elements yet.
It's a little unfortunate that Firefox's lack of efficient transform support on table elements makes it look like it has slow transforms in general. I don't think many people set transforms on table elements.

That is very interesting info! And yes, I agree that it is unfortunate that one “edge-case” is distorting the data for Firefox.
I’ll try and come up with a different template that accommodates for this.

I'm all up for changing the data to suit here, since it's not the common case. In the meantime, while Surma does the change to the template, we can update the data to match expectations.
Thanks for taking time out to look over it :)

In fact, @Qwal can I ask if you'd mind making a PR that sets the properties to the correct values as you see them? I assume it's the same for opacity as it is for transform? I'd do it myself, but I think it's better to come from you since you know Gecko far better than we do.

@paullewis I think you wanted to ask @mstange as he's a Gecko developer. I just found it strange in the data, as from my experience CSS animations using transform are smooth both in Chrome & FF.

@Qwal Sorry, my mistake. Should. Read. More. Closely!

Thanks for your offer to change the template.
I've created a pull request to change the data for transform and opacity. There are some more properties for which we're missing Gecko data, but I don't want to test those manually right now.

@mstange

..If your element is much larger than the viewport, we only paint those areas that are currently inside the viewp...

webkit seems to behave just like that!
I ran some tests inside the devtools console, and any transformations (I tested scale and translateX) that didn't cause the element to overflow the body, didn't trigger layout.
The first transformation that leads to horizontal scrollbar = layout opertation.
subsequent transformations = no layout.
The first transformation that leads to vertical scrollbar = layout opertation.
subsequent transformations = no layout.
If body's overflow property is set to overflow: hidden, no layout, no matter what.
Proof
1. Serve this code as html file.
<!DOCTYPE html>

    <title>Browser Rendering</title>

2. Fire up Chrome devtools and switch to Timeline view.
3. Make sure the console is open at the same time, by hitting ESC.
4. Start recording and execute this code in the console.
var testSubject = document.querySelector("#subject");
var activeScale = 0, activeXTranslation = 0;

var update = () => {
    testSubject.setAttribute('style', `transform: scale(${ activeScale }) translateX(${ activeXTranslation }%);`);
}

var increaseScaling = (factor) => {
    activeScale += factor;
    update();
}

var increaseTranslation = (factor) => {
    activeXTranslation += factor;
    update();
}

var transformWithinViewport = () => {
    activeScale = 150, activeXTranslation = 70;
    update();
}

var haveItRenderHorizontalScrollBars = () => {
    activeScale = 200, activeXTranslation = 180;
    update();
}

var haveItRenderVerticalScrollBars = () => {
    activeScale = 500, activeXTranslation = 180;
    update();
}

requestAnimationFrame(() => {
     // Applied at frame_1, no layout
    transformWithinViewport();

    requestAnimationFrame(() => {
        // Applied at frame_2, still within viewport so no layout
        increaseScaling(50);

        requestAnimationFrame( () => {
            // Applied at frame_3, still within viewport so no layout
            increaseTranslation(50);

            requestAnimationFrame( () => {
                // Applied at frame_4, beyond viewport, horizontal scrollbars required, layout triggered
                haveItRenderHorizontalScrollBars();

                requestAnimationFrame( () => {
                    // Applied at frame_5, horizonal scrollbars are ready, another layout not triggered
                    increaseTranslation(50);

                    requestAnimationFrame( () => {
                        // Applied at frame_6, vertical scrollbars required, layout triggered
                        haveItRenderVerticalScrollBars();

                        requestAnimationFrame( () => {
                            // Applied at frame_7, vertical scrollbars are ready, another layout not triggered
                            increaseScaling(700);

                        });
                    });
                });
            });
        });
    });
});

Now follow Step 1 to 4, but this time body overflow set to hidden, get amazed!

@paullewis Hey, so the actual behaviour for opacity is different from what is stated in this web fundamentals article (if css-triggers got it right).
If you can confirm it is the case, I'd create an issue for the article then.


Misalignment between definition and diagram for ind:trainingRegion?

I see the following:
        "@id": "ind:trainingRegion",
        "@type": "Property",
        "label": "training region",
        "comment": "Region where the training of a model took place (e.g., Europe, UK, etc.)",
        "domain": {"@id": "ind:MLModel"},
        "range": {"@id": "schema:Place"}

and

Typo in the diagram! Well spotted :)


Branch doesn't show anything on detached head state

As The title says. If you're on detached head state branch component is empty . I think it should show the commit id.

this might be tricky since git branch --show-current has 0 exit code and no stdout in detached head state

this might be tricky since git branch --show-current has 0 exit code and no stdout in detached head state

this might be tricky since git branch --show-current has 0 exit code and no stdout in detached head state

Yep also I donn't think we can use empty output as a idicator . I think the async code returns empty output all the time . right?

this might be tricky since git branch --show-current has 0 exit code and no stdout in detached head state

Yep also I donn't think we can use empty output as a idicator . I think the async code returns empty output all the time . right?

I think we can read .git/HEAD .

I think we can read .git/HEAD .

Yes this would be a better solution. I made the branch component use git commands for mvp. There is still room for improvements

Yes this would be a better solution. I made the branch component use git commands for mvp. There is still room for improvements

I'll create a pr when I implements it with .git/HEAD  . I donn't think it should be hard.
go back to to find .git folder -> read .git/HEAD
Any idea on what exceptions we should handle?

I'll create a pr when I implements it with .git/HEAD  . I donn't think it should be hard.
go back to to find .git folder -> read .git/HEAD
Any idea on what exceptions we should handle?

It's done

It's done


Sensor Paging

When the database grows to a few thousand records, too many records are fetched from the database at a time, causing slow page rendering and crashes. The user should be able to page through the sensor readings.

Implemented


openlane/user_project_wrapper_gf180mcu: remove components and nets section

fix #187
/cc @jeffdi
@mattvenn does that solve your issue?

this file is required in order to create user_project_wrapper that integrate correctly into Caravel

not proposing to remove the file, just to perform the same updates that were done for SKY130 in #188.


Same-Site Links: disable new target? allow absolute URLs without system forcibly prepending http://?

I'm using this library for a simple content management system. Thus, I will frequently want users to be able to put links in their documents that refer to the same site on which the content appears.
I have two issues with this:

By default, it seems that medium-draft renders out a target="_blank" attribute on the  tag. This is undesirable behavior for a content management system when trying to link to another page the same site, since it always causes the target page to open in a new tab or window. Also, it strikes me as a rather undesirable default, regardless. I'd prefer that be an option of some kind. Most of the time opening new tabs/windows on a link click is kind of a bad user experience.

Also when rendering, medium-draft seems to always prepend 'http://' to every  link. This makes it impossible to allow links to the same domain without always manually typing in the full domain name. It also creates challenges for testing and development environments when using the content. My expectation was that the link would not try to be so 'helpful' by always prepending the http, but rather let me put in exactly what I want for the link src. I'd humbly suggest this makes more sense as a default. As it stands now, a link like "/about-us" won't work.

Added a prop in version 0.5.6. You can pass a processURL prop to the editor which is passed the url entered by the user. For your use case, the simplest can be -
<Editor
    ...
    processURL={(url) => url}
    ...
 />

Thanks for your response! Will this be applied to any link the user creates inside the editor?

Yes. Every new link the user adds will be passed to this function first. Whatever is returned will be saved in the state. 8:44 PM, November 17, 2017, Dave M notifications@github.com:Thanks for your response! Will this be applied to any link the user creates inside the editor?
—You are receiving this because you modified the open/close state.Reply to this email directly, view it on GitHub, or mute the thread.

Great, thanks for the info!

I just tried this out, and it seems to work well, except it still forces target="_blank" on the rendered link. Any way around that?

Checkout https://github.com/brijeshb42/medium-draft/blob/master/src/exporter.js to learn how to customize html output for a tag1:24 AM, December 7, 2017, Dave M notifications@github.com:I just tried this out, and it seems to work well, except it still forces target="_blank" on the rendered link. Any way around that?
—You are receiving this because you modified the open/close state.Reply to this email directly, view it on GitHub, or mute the thread.

Thanks a ton for your help! Got everything working the way I want now.


WARN Trying to update hotbar but the wand has gone missing

None of the spells are showing in the players hotbar or inventory and they can only use one spell, this wasn't happening before but now it is, I have no idea what the problem is. I've even swapped configs for an older one I had just to see if that fixed it and it didn't

A few other users on Discord have reported this. I currently have no idea what's causing it, but I have not seen it myself.
The message basically spells it out, the plugin thinks the player is holding a wand, is trying to update the hotbar, but the item the player is holding doesn't match the wand.
Not sure how this could happen (especially all of the sudden) unless you have some other plugin messing with the player's inventory.

None of the spells are showing in the players hotbar or inventory and they can only use one spell

What do you mean by this, exactly? Right-click on wands isn't working?

Alright so I just got more information on it myself, so what happens is that when a player opens their inventory to put spells in their hot bar, they can add it to the hot bar and it works but once they use that spell it just vanishes from their hotbar and wand

Are you using default configs? Wands in inventory mode? I'm not totally understanding what you mean about adding spells to the hotbar.

This is what I mean

This is what I mean

See how at the end after placing it and using it in the hot bar, it disappears from the inventory

So you are on 7.6.13 now, right?

correct

Do you happen to know the version you were on before that?

And follow-up (sorry for all the questions)- when you get a new wand, does it start out with an empty hotbar like that?
I have not been able to reproduce any of this, so basically I'm just really confused at this point.

I try to keep the plugin updated so it should have been 7.6.12

yes a new wand starts out with an empty hot bar

Can you try going back to 7.6.12?
I'm trying 7.6.13 myself and not seeing any of this. I'd be curious to know if the problem goes away on the previous version.

Still doesn't work but I noticed another warning
WARN Failed to save wand state for wand to : ItemStack{STICK x 0}

Seems odd- did you have a stick in your hand... ?

And did you update anything else on Sunday besides Magic? If it's not the plugin version it must be something else...

I asked and nobody had a stick when they logged in

I've narrowed this down to a Spigot issue, I believe from this commit:
https://hub.spigotmc.org/stash/projects/SPIGOT/repos/craftbukkit/commits/8164f4b25bb557d4ded2db42ca4e6abb423bb5ee#src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java
.. not sure what to do about it yet.

This is assuming you are on latest 1.13 Spigot, something I should've asked from the get-go.

I'm actually 4 versions behind the latest, git-Spigot-f823ac5-c1ecaa2 (MC: 1.13.1) (Implementing API version 1.13.1-R0.1-SNAPSHOT)

This commit is 11 deep, so I think it's the problem.

Well at least I know it might not be something on my end

I have submitted a PR that fixes this issue. We'll have to wait for Spigot to accept it- in the meantime if you can go back to an older version of Spigot that should fix it for now.

What version should I go to specifically?

http://jenkins.elmakers.com/view/all/job/elSpigot/111/
... I’ll probably redact this once you grab it

I've got it

My PR got accepted, you can update to latest Spigot again without issue.


Fix import error on NoReverseMatch

thank you! I was about to submit a PR but then I thought, I don't have a test for it so I would be a total hypocrite hahahaha


Slicer fails to load SegmentEditorExtraEffects from SilceTracker

While invistigating the SliceTracker issue on the new Slicer release( https://discourse.slicer.org/t/slicetracker-module-cannot-be-loaded-on-slicer-4-11-20200930/13895/3 ), I found that Slicer fails to load SegmentEditorExtraEffects from SilceTracker:
SyntaxError: invalid syntax
Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "/home/junichi/slicer/Slicer-4.11.20200930-linux-amd64/lib/Python/lib/python3.6/imp.py", line 170, in load_source
    module = _exec(spec, sys.modules[name])
  File "<frozen importlib._bootstrap>", line 618, in _exec
  File "<frozen importlib._bootstrap_external>", line 678, in exec_module
  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
  File "/home/junichi/.config/NA-MIC/Extensions-29402/SliceTracker/lib/Slicer-4.11/qt-scripted-modules/SurfaceCutToLabel.py", line 11, in <module>
    from SegmentEditorSurfaceCutLib import SurfaceCutLogic
  File "/home/junichi/.config/NA-MIC/Extensions-29402/SegmentEditorExtraEffects/lib/Slicer-4.11/qt-scripted-modules/SegmentEditorSurfaceCutLib/__init__.py", line 4, in <module>
    from SegmentEditorEffect import *
ModuleNotFoundError: No module named 'SegmentEditorEffect'
TypeError: module.__init__() argument 1 must be str, not qSlicerScriptedLoadableModule

I cannot reproduce the error using Slicer 4.11.20200930 (revision 29402 / 002be18) linux-amd64 - installed release.
If I type this into the Python console then I don't get any error:
from SegmentEditorSurfaceCutLib import SurfaceCutLogic

What did you do when this error showed up for you?

Thanks for trying. I simply download the release, install SliceTracker and all necessary extensions from the Extensions Manager, and restarted. There are other messages before the quoted message. See my posting on the Slicer Discourse.

I was able to reproduce the problem and it was cause by having from SegmentEditorSurfaceCutLib import SurfaceCutLogic in the global namespace of the module. Since at the time of loading a Python modules, other modules may not be loaded and initialized yet, it leads to errors if other modules are attempted to be used in any way.
So, instead of changing the import strategy in all segment editor effects (in this extension and several others), a less intrusive and more robust solution is to move from SegmentEditorSurfaceCutLib import SurfaceCutLogic into SurfaceCutToLabelLogic._initializeSurfaceCutLogic.

Thanks for the suggestion. I like the less invasive way you suggested.
By the way, the change I proposed was actually coming from one of the templates for slicerExtensionWizard:
https://github.com/Slicer/Slicer/blob/master/Utilities/Templates/Modules/ScriptedSegmentEditorEffect/SegmentEditorTemplateKeyLib/__init__.py
While working on the issue, I realized that the code was originally generated by the wizard, and the current version of the ScriptedSegmentEditorEffect does absolute import. So I thought it would make sense to change the import strategy in this extension.

I agree, explicit relative import is probably the right thing to do, but I would rather do it when we must change something around these imports anyway (I would like to avoid spending time now with testing potential side effects of this change).

Sounds good. Thank you!


Create a page to explain a maintenance time or "System not available".

Mainly for Students but desirable for all applications, create a page to explain a maintenance time or "System not available".
Space to add urgent messages to communicate to the users about some important fact, like urgent maintenance to happen during a window where the system will not be accessible.
Acceptance Criteria

[ ] Create a maintenance page with space for messaging.
[ ]

The SABC side can post on the generic website as a workaround.

@CarlyCotton @Joshua-Lakusta Can we close this ticket as we have Banners for this purpose?

@AnnaPBashkatova
I think of this as a separate feature. The banners are only once a student (or institution user) log in. If SIMS is down we would need to enable a maintenance/down page as they wouldn't be able to log in to see the banners.
FYI @Joshua-Lakusta