VTK pushed a very small but very breaking change in minor version (removing a transitive include of iostream), which broke a lot of extensions. We have been working through the extensions – the fix is very simple.
Qt6 status
Steve rebuilt mac arm64 build and there didn’t seem to be any issues this time, except that a dialog box didn’t seem to allow discarding without saving.
BTW, maybe we should have a “next meeting” thread dedicated to posting agenda items for upcoming developer calls. Currently we post back to the meeting announcement, but sometimes, like this, I want to make a note in advance.
We could relax/automate extension approval process if we had these:
Filtering of extension by tier. This will be available very soon. @Sunderlandkyl may give an update at the next meeting. It will allow us to hide experimental (tier<3) extensions.
Package (and preferably also test) extensions using github actions. This way we would not need to risk running unknown scripts on the Kitware factory computer. I’ve implemented this by generating a Slicer build tree stub that is sufficient for building Python packages using the standard CMake scripts. Here is an example that builds packages for MONAIAuto3DSeg extension.
If you describe an interesting question then it is likely that discussion will start before the meeting. Instead of hiding that discussion in a developer meeting minutes topic, it would be better to create a new topic for it. The topic would be more focused, more visible, and more people would have a chance to be involved.
We could introduce a tag “discuss-at-weekly-meeting” that we could attach to any topic to put it on the next meeting’s agenda.
The current heavy process that is similar to app store approval process is just not sustainable without dedicated funding or developers paying the costs.
“Community review process” may not solve the problem automatically, as it suffers from the same issues as the broken scientific paper peer review process. It is now much easier to generate an extension or write a paper, but people don’t have more time to review other people’s stuff.
We could allow publishing without review and let extensions emerge by getting likes or star ratings and comments - similar to YouTube, github, etc. We could then review highly rated extensions to bring them up into a higher tier.
I’m thinking it should literally be just publish a repo and people can use it or not. Not much different than publishing a web site. By community review I mean people can try out different options and suggest the ones they like to other people. Nothing too formal.
I do think we should look seriously at sandboxing options to protect your actual computer from random code. We should discuss architectures for this.
Yes, sandboxing would be important. Users cannot trust extensions but - more importantly - they cannot trust AI agents.
App stores provide some sandboxing but each platform is completely different and it would be significant effort on each to get into a store (and extensions and Python packages would complicate things further).
So, probably containers would be the most economical solution. If someone does not have compatible hardware or too difficult to set up then running on cloud be a good option.
Web browser is a good sandbox, too, so as SlicerTrame, VTK wasm, pyodide are improving, we’ll be able to seriously use that, too (maybe in a couple of years).