-
Notifications
You must be signed in to change notification settings - Fork 310
Report of "SOFA dev meetings"
Join us every Wednesday 9 am CET online: www.sofa-framework.org/sofa-dev-meeting
- Registrations for the SOFA Week 2024 are open: make sure to save the date and join us next November in Lille!
- List hot topics to prepare SOFA Technical Committee
- Presentation of the Slicer-SOFA extension by Rafael Palomar -> github project
No PR review has been done due to external presentation.
- #4999 [LinearSolver.Direct] Fix packaging
- #4975 [ODESolver] Apply new factory registration mechanism
- #4906 [Mapping.NonLinear] Introduce VolumeMapping
- #452 Update init.py
- #448 CI upload artifact version update
- #451 Update init.py
- #424 Add two testing features
- The IRE project will save 36 months of engineering dedicated on SOFA: differentiability of SOFA will be investigated (collision)
- Jury for the SOFA Awards 2024 is being defined!
- Registrations for the SOFA Week 2024 are open: make sure to save the date and join us next November in Lille!
- Implementation of A Surface-to-Surface Finite Element Algorithm for Large Deformation Frictional Contact --> interesting results but might be more useful in a Newton Raphson algorithm. Interesting to integrate it to SOFA : Open a PR to include this and try to implement the variable epsilon per element.
- Reimplementation of regression tests in python in PR #69 : need feeback and ideas on metrics
- comparison of each dofs at the specified end time
- infinity norm
- mean value
- over several time steps
- compute the 75% of the infinity norm to allow some tolerance
- comparison of each dofs at the specified end time
- Deprecation of HexahedralFEMForceFieldAndMass
- #4982 [FEM] Components override the template API instead of the generic one Missing some changes: it should include Masses from #4982. → wip
- #4945 [FEM] Add method computeVonMisesStress in TetrahedralCorotationalForceField and option to draw them Conflicts and take reviews → wip
-
#4943 [Core] Clean public API of components
A first PR #4982 has been open to introduce the two first points. Comment has been made on adding a prefix on delegates
doFunctionName()
. A PR with compat layer should be done to add this to the Core. Maybe wait the next release cycle to give enought delay for those changes --> add v25.06 milestone for this breaking PR → keep to review - #4906 [Mapping.NonLinear] Introduce VolumeMapping Wait for maths → keep to review
- #4878 [SofaCUDA,SofaDistanceGrid] Move DistanceGrid CUDA files in a SofaDistanceGrid extension Compilation issue on Windows. Modernize the CUDA Cmake before this PR. This plugin adds C source file, making it harder than other reordering done before. Problem arise from the fact that CMake passes compile option to NVCC that the compiler doesn't understand. → wip
- #446 Bump actions/download-artifact from 2 to 4.1.7 in /.github/workflows TODO : apply patch by Alex → keep to review
- #424 Add two testing features Rebase ongoing → ready
- #4980 [FEM.Elastic] missing override keyword
- #4944 [Engine] Add draw method in NearestPointROI
- #4852 [FEM.Elastic] Some FEM inherits from BaseLinearElasticityFEMForceField
- #4933 [Playback] Apply new factory registration mechanism
- #4971 [all] Cleanings on debug symbols
- #4967 [GUI] Minor cleaning in GUIManager
- #4957 [All] Add scoped timers for tracy profiler
- #4958 [Engine.Select] Clean, extend and test MeshSubsetEngine
- #4932 [SceneUtility] Apply new factory registration mechanism
- #4928 [Sofa.GUI, Plugins] Pluginize HeadlessRecorder
- New SOFA documentation released: https://sofa-framework.github.io/doc/
- Registrations for the SOFA Week 2024 are open: make sure to save the date and join us next November in Lille!
- 🆕 SOFA Unity asset has been published on the Unity Asset store ! This amazing work has been released by InfinyTech3D, check it out
- Merge the GitHub security advisory PR on all repositories: "Bump actions/download-artifact from 2 to 4.1.7 in /.github/workflows dependencies"
-
#4943 [Core] Clean public API of components: proposal to define base class functions as final and override these functions, templated in child classes, as a protected function -> this is breaking. Tests compilation would fail because of change of accessor. We should then change the tests to use the public virtual class (access protected functions). What does this PR is:
- set the function of the abstract class to final
- fix the components which were overriding this function
- set the functions overriding the templated one as protected
- TODO: fix/update the associated tests
- add the check on the component state:
- first check non-invalidity
- then, check the validity
Conclusion : keep two first points on the PR then open new PR to test the point 5. Open draft PR with points 3&4 to get feedback from @sofa-reviewers
- #4939 [Mass] Fix rigid uniform mass: issue with rigid mass matrices when the inertia matrix is not an homothety. This PR fixes this with tests but it seems that centrifugal forces are not properly computed.
- Issue 4954 : Mass for hexahedra and quads is wrong. Distribution of the mass is wrongly computed on the element. Take a look at Caribou and what other soft does and try to compute mass matrix chape regarding the hexa shape funciton.
- Make sure that each PR belongs to a roadmap objective (Project)
- #4967 [GUI] Minor cleaning in GUIManager → ready
- #4958 [Engine.Select] Clean, extend and test MeshSubsetEngine → ready
- #4957 [All] Add scoped timers for tracy profiler Change name MBKBuild to be more explicit and fit also for unbuilt scenarios. Then ready → ready
- #4945 [FEM] Add method computeVonMisesStress in TetrahedralCorotationalForceField and option to draw them Need to factorise TetrahedonFEMForceField and TetrahedralCorotationalForceField at some point to remove this copy-paste. Take suggestions into account then ready → keep to review
- #4944 [Engine] Add draw method in NearestPointROI Take suggestions into account then ready → keep to review
- #4943 [Core] Clean public API of components → see technical note
- #4939 [Mass] Fix rigid uniform mass Changeis_same with is_rigid and check dimension instead → keep to review
- #4935 [Mass] Add unit test to test rotation of inertia matrix for rigid objects → Check meaningfulness of tests
- #4933 [Playback] Apply new factory registration mechanism → ready
- #4932 [SceneUtility] Apply new factory registration mechanism → ready
- #4928 [Sofa.GUI, Plugins] Pluginize HeadlessRecorder → ready
- #4898 [Mapping.NonLinear] Introduce AreaMapping → ready
- #424 Add two testing features. Example has been added. → ready
- #154 doc for AreaMapping Minor suggestions → ready
- #153 Describe src attribute Minor suggestions → ready
- #69 New regression in python Regression application has been reimplemented in python. Some question resides, like which norm to use to compute errors. Discuss it in the technical discussion of the next SOFA-dev meeting. → keep to review
- #68 Add option to set period (nb of steps) → ready
- #5 [doc] Update readme Remove modifications to ci.yml then ready → keep to review
- #4 [ci] Add regression tests → ready
- #4931 [Setting] Apply new factory registration mechanism
- #4930 [Visual] Apply new factory registration mechanism
- #4946 [Spring] Enable spring by default if Data enabled is not set
- #4947 [GUI.Common] ArgumentParser: catch exceptions when same options are added
- #4927 [All] Apply renamed data on codebase
- #4925 [runSofa] Removed obsolete options
- #4916 [Collision.Detection.Intersection] Delete compat layer for intersection
- #445 [Sofa.Gui] Add dependant option to not bind qt/qglviewer to Sofa.Gui (even if present)
- #432 [Bindings] Remove static SofaInitializer, call unload into each respective module and clear cache
- #409 Add way to deactivate gui bindings
- New SOFA documentation released: https://sofa-framework.github.io/doc/
- Registrations for the SOFA Week 2024 are open: make sure to save the date and join us next November in Lille!
- 🆕 SOFA Unity asset has been published on the Unity Asset store ! This amazing work has been released by InfinyTech3D, check it out
- Issue with rigids dynamic : PR #4935 and Issue 4936. A try into fixing it --> PR #4939 → Unit test not testing centrifugal forces that are still wrongly computed. Need to add this unit test and make it pass. Take a look at other rigid simulation framework for meaningfull unit tests.
- PR #4878, moves cuda implementation of SofaDistanceGrid inside the SofaDistanceGrid plugin. → Two problem arised : a cmake configuration on the CI and NVCC compilation error locally. Alex will fix the cmake error and we will need to investigate the compilaiton error.
-
#4927 [All] Apply renamed data on codebase
This compat layer only works for
Data<T>
every types that inherits from it, will only see the originalData<T>
methods. This lead to adopting the old mechanism forDataFilename
and only allowing to use the data methods for every topological datas. → ready - #4925 [runSofa] Removed obsolete options → ready
- #4918 [Mass,MechanicalLoad] Use enumeration to clarify the code Unit tests are still failing even after the merge of #4917 → wip
- #4916 [Collision.Detection.Intersection] Delete compat layer for intersection → ready
- #4906 [Mapping.NonLinear] Introduce VolumeMapping Same python script descibing the math is on its way. It is needed to review the PR. Maths are way simplier so it will be quick to check. The comments on #4898 can also be applie don this one. → wip
- #4898 [Mapping.NonLinear] Introduce AreaMapping Prefix missing on attribute name is intentionnal du to a planned refactoring of all the mappings, using the same old name will ease the refactoring. An error and not a warning should be thrown when usign quads. Quads will be supported in the future, some questions arised on the validity of the strategy of dividing the quad into triangles and applying the same method. Quesiton on the support of heterogeneous mesh (including triangles and quad). It is difficult to differentiate between the two types in the code so it should not be authorized. Add comments. → then ready
- #4876 [Core] Allow different gravity vectors in Nodes The mechanism of 4876 is prefered because of possibility of moving a node around. The mechanism need to be modified silghtly to ensure that we continue to inherit from the parent when we did once, because isSet will be set to true after the first pass inside the if statement. The unit test added in #4910 should be added here, and the isSet mechanism in the SimpleAPI should be corrected.
- #3927 [Mass] Replace doUpdateInternal by callback: UniformMass Unit tests are still failing → wip
- #445 [Sofa.Gui] Add dependant option to not bind qt/qglviewer to Sofa.Gui (even if present) This pr aims at allowing to deactivate parts of the bindings (e.g. Qt based gui) when not wanted. It keeps the old behavior to not disturb the users. A better solution would be to divide the binding into specified modules for every GUI. → ready
- #432 [Bindings] Remove static SofaInitializer, call unload into each respective module and clear cache Fix meany issues regarding SofaPython3 using cleaning strategies recommanded by pybind11. 1. Cleanups, 2. Clearing the cache, 3. Testing (loading of SofaPython3 by the plugin manager). → ready
- #424 Add two testing features. add an example → then ready
- #409 Add way to deactivate gui bindings → ready
- #69 New regression in python Think about the right metrics to use to evaluate the regression : infinit norm, norm 2, normalize error by the bbox size... → keep to review
- #68 Add option to set period (nb of steps) Test it with a ci-depends-on → keep to review
- #4840 [GUI.Qt] Add find or fetch for qgl viewer
- #4897 [Test] Add generic test on buildGeometricStiffnessMatrix for mappings
- #4848 [ODESOlver] Fix RHS computation of the backward Euler implicit solver
- #4828 [Helper] Added cleanup callback
- New SOFA documentation released: https://sofa-framework.github.io/doc/
- Registrations for the SOFA Week 2024 are open: make sure to save the date and join us next November in Lille!
- 🆕 SOFA Unity asset has been published on the Unity Asset store ! This amazing work has been released by InfinyTech3D, check it out
- SofaPython3 cleanup (#4828, #432, #425), what are the next steps ? No better solution arised for RAII mechanism. So the one proposed will be the one merged. Fuse the two SofaPython3's PRs, merge SOFA's PR then merge SofaPython ones.
- A refactoring of the Regression plugin passing everything in python scripts was proposed in PR #69. Feedbacks are needed !
- Status
to review
might have two meanings : 1) we want a point of view but we don't think it is ready and 2) we think it is ready and we want to merge it. Might be useful to add a status :merge candidate
that is the only one that can be transformed toready
. So for a PR to be merged it will need to first haveto review
andmerge candidate
in the same time and to then be accepted and transformed toready
.
-
#4926 [runSofa] Centralize configuration into the user local directory
Might be better to have a mechanism where, if local config exists then we use it, otherwise we use the "global" one in the config directory of the user. But this PR in its state is not what we want.
→ close - #4925 [runSofa] Removed obsolete options Some parameters might be used somewhere else (See RealGUI). Must check that all parameters are really unused. → wip
- #4921 [all] Spread API isComponentValid Keep comments into account → wip
- #4918 [Mass,MechanicalLoad] Use enumeration to clarify the code Clean class declaration. Wait for previous PR then ready. → keep to review
- #4916 [Collision.Detection.Intersection] Delete compat layer for intersection Add PR number to the comment then ready → ready
- #4910 [Core,Simulation] Inherit and link gravity from parent context if not set The idea is good but some situation might break this mechanism (is the node changes the parent context, the link will not be changed for instance). This is due to the link that is added. The question is more if this mechanism is ok for us ? Or if we want to be able to modify this link when the node is moved. Maybe remove this link ? Wait for #4911 to be fixed and verify that is solves the test. → wip
- #4906 [Mapping.NonLinear] Introduce VolumeMapping Integrate comments (comments #4898 one can also be applied on this one). Missing the 'math' file --> the review is therfore harder. Does this file exist ? → wip
- #4898 [Mapping.NonLinear] Introduce AreaMapping Integrate comments. Maybe add the python script to the sofa documentation. → wip
- #4852 [FEM.Elastic] Some FEM inherits from BaseLinearElasticityFEMForceField Fix compile → wip
- #4848 [ODESOlver] Fix RHS computation of the backward Euler implicit solver → ready
- #4828 [Helper] Added cleanup callback See technical discussion. Remove CI depends on that was there to test the effect but is not mendatory for it to compile and work. → ready
- #3928 [Mass] Replace doUpdateInternal by callback: MeshMatrixMass Fix tests. → wip
- #3927 [Mass] Replace doUpdateInternal by callback: UniformMass Wait for test. Make sure the mass changing is tested somewhere then ready. → keept to review
- #432 [Bindings] Remove static SofaInitializer and call unload into each respective module Wait for fusion with 425 → then ready
- #425 Add cleanup to core and ensure that the cleanup happens in runSofa fuse with 432 then close → close
- #424 Add two testing features. → wip
-
#68 Add option to set period (nb of steps)
Test it on a SOFA pr with a
ci-depends-on
to make sure ot doesn't break the regression tests → keep to review - #67 Update regression further to #4848 → ready
- #4922 [examples] Change rendering option in the TetrahedronFEMForceField.scn
- #4917 [Core] Fix check and use of componentState in SingleStateAccessor
- #4919 [Playback] Fix WriteStateCreator to pass period only if it has a value. Because WriteState use isSet value...
- #4891 [Mapping.NonLinear] Fix rigid types in SquareDistanceMapping
- #4875 [Helper] Retrieve the current user local configuration directory
- New SOFA documentation released: https://sofa-framework.github.io/doc/
- Registrations for the SOFA Week 2024 are open: make sure to save the date and join us next November in Lille!
- 🆕 SOFA Unity asset has been published on the Unity Asset store ! This amazing work has been released by InfinyTech3D, check it out
- Test failing in #4901 before merge: we often have doubts on the reports from the CI. The migration from Jenkins to GitHub Actions will be very beneficial on this aspect.
- Qt Wayland on the doc, Aimen's PR should provide information in Linux cases: X11 being the old display protocol, it happens that recent Linux distributions rely on a new protocol/server named Wayland.
- Share the command to check which protocol is used on your distribution
echo $XDG_SESSION_TYPE
- Share the command to install it if Wayland is used
- Share the command to check which protocol is used on your distribution
- An issue has been created about the SimpleAPI which does not define data isSet. This may affect also SofaPython3. This isSet feature is important and the issue should therefore be fixed soon
- #4920 [MechanicalLoad] Factorize damping forcefields Factorize the PR. We need to choose which can of input we want. Then fix the tests and spread new name in scenes. → wip
- #4917 [Core] Fix check and use of componentState in SingleStateAccessor Make it independent from [#3928] and add a test → wip
- #4897 [Test] Add generic test on buildGeometricStiffnessMatrix for mappings SquareDistanceMapping test fails with the introduced test → wip
- #4891 [Mapping.NonLinear] Fix rigid types in SquareDistanceMapping → ready
- #4876 [Core] Allow different gravity vectors in Nodes If #4911 is solved, then #4910 could replace this PR. → keep to review + postponed
- #4875 [Helper] Retrieve the current user local configuration directory Test fixed (very CI specific) → ready
- #4852 [FEM.Elastic] Some FEM inherits from BaseLinearElasticityFEMForceField Conflict solved during the meeting. → Wait for CI then ready
-
#4848 [ODESOlver] Fix RHS computation of the backward Euler implicit solver
The
auto
introduced in comment does not work. Commit to revert then ready → ready - #3928 [Mass] Replace doUpdateInternal by callback: MeshMatrixMass A lot of faling tests → wip
- #3927 [Mass] Replace doUpdateInternal by callback: UniformMass Fix the tests and force-full-build → wip
- #3912 [Mass] Deprecate and make DiagonalMass inherit from MeshMatrixMass Revert the DiagonalMass.cpp to be able to instantiate it. Changing all scenes has not been done yet to keep the PR readable. → wip
-
#441 Display attribute_error with msg_error
attribute_error was considered as a deprecation warning by the pybind API. Now we differentiate
AttributeError
fromDeprecationError
→ ready
- #68 Add option to set period (nb of steps) Need more insight since it affects Regression → keep to review
- #67 Update regression further to #4848 → wait for #4848
- #62 Fix warnings → ready
- #46 Generate an error instead of warning when a reference is missing enhancement → ready
- #4909 [all] Fix various summer warnings
- #4901 [image] convert unsigned char to int when streaming
- #4649 [Spring] Merging StiffSpringForceField and its parent
- #4908 [Core] ObjectFactory: fix typo when an object is not found
- #4882 [all] Rename lifecycle names for HEADER
- #4902 [Core] Revert thread local changes on exec params
- #4904 [Core] pointer checking
- #4900 [Core] Replace non-utf8 chars by special char with error message
- #4899 [SolidMechanics.FEM.Elastic] Fix compilation on clang{12, 13}
- #4903 [Type] Fix wrong use of std::empty
- #4886 [CMake] Update all cmake_minimum_required in plugins
- #4893 [VolumetricRendering] Fix target name in OglTetrahedralModel
- #4888 [Visual] Camera: do not export/import lookat info
- #4887 [Topology.Dynamic] GeometryAlgoritims: disable lighting when drawing topologies
- #4858 [AnimationLoop] Apply new factory registration mechanism
- #439 add binding to unload a plugin
- #440 Update PythonEnvironment regarding GIL deprecation
- #438 Fix wrong doc string for dump_json
- #151 Final cleaning for the doc
- #150 Fix Latex equations to fit MathJax format
- #149 Try MathJax
- #148 Latex: add Katex to mkdocs
- #147 Suggestion to make light mode simpler
- #146 Fix merge of folders with similar names
- #145 A few more cleanings
- #144 Add contributing file
- #143 Attempt to fix relative url
- #138 Introduce Python script to generate automatically the doc
- #136 Massive cleaning of the documentation in prevision of the new documentation
- #141 Update 45_Lifecycle_mechanisms.md
- #130 [Imgui] Fix Display Flags
- #128 Fix not existing folder
- #126 Logs: Add option for autoscroll
- #127 Logs: Always show options
- #123 Implement Mouse Interaction Handling
- Registrations for the SOFA Week 2024 are open: make sure to save the date and join us next November in Lille!
- 🆕 SOFA Unity asset has been published on the Unity Asset store ! This amazing work has been released by InfinyTech3D, go [check it out here
- ℹ️ email redirection @sofa-framework.org are broken due to Inria's subcontractor. Our apologies
- V&V40 for SOFA
- Shell plugin should be
- Fetchable by default
- Activate by default
- Tested on CI
- Build-in in the release
- #4876 [Core] Allow different gravity vectors in Nodes Regression appeared in QuadBendingFEMForceField example scene. Should use the main gravity since it was the default behavior so far. Last test : 2 different gravities and modify the root node one. → ready
- #4875 [Helper] Retrieve the current user local configuration directory Test failing → wip
- #4868 [SofaCUDA] Add constructor based on initializer_list → ready
- #4858 [AnimationLoop] Apply new factory registration mechanism Good example on how to apply the new ObjectFactory API. For more see the wiki : New explicit registration method of component in the ObjectFactory → ready
- #4852 [FEM.Elastic] Some FEM inherits from BaseLinearElasticityFEMForceField Wait for #4868 and solve conflicts → keep to review
- #4848 [ODESOlver] Fix RHS computation of the backward Euler implicit solver Add associated test → wip
- #4840 [GUI.Qt] Add find or fetch for qgl viewer Reviews to take into account (backport todo) and conflict to solve → wip
- #4839 [Component.Engine.Select] Refactoring of ROI classes Reviews taken into account. Create function : check type when taking position data field as input (get inspiration on mappings) → ready
- #437 [SofaRuntime] Check if numpy and/or scipy (optional) are available Ideally we would need to enforce numpy but this PR makes a simple and clean check → ready
- #432 [Bindings] Remove static SofaInitializer and call unload into each respective module → wait for Paul then ready
- #425 Add cleanup to core and ensure that the cleanup happens in runSofa → wait for Paul
- #141 Update 45_Lifecycle_mechanisms.md Linked to #4882 → to review
- #138 Introduce Python script to generate automatically the doc GitHub Action fails to generate the doc while it's running locally → wip
- #123 Implement Mouse Interaction Handling Use local variables. Camera should use the vparams. → wip
- #121 [ImGui] Put config files into a folder Config files were dropped at the location of the executable loose. Now a dedicated ImGui config folder is generated. Linked to #4875 in SOFA → ready
- #4889 [Core] Fix compilation warnings with addClambda
- #4885 [Core] Add filtering for unloaded plugins in ObjectFactory::getAllEntries
- #4884 [Visual] BaseCamera: Fix return value when saving a view file
- #4863 [Helper, AnimationLoop] ComponentChange: add Dealiased state
- #4883 [FEM.Elastic] remove static variable
- #4872 [Qt] Register objects when loading from Qt
- #4813 [All] Remove SOFA_ENABLE_LEGACY_HEADERS usage
- #4859 [Plugin] Add Cosserat as a fetchable plugin
- #4880 [GUI] Improve Error Handling in createPerformer
- #4879 [VolumetricRendering.CUDA] Fix compilation after SOFA changes
- #4842 [All] Add way to disable windeppack
- #4844 [CMake] Allow the out-of-tree for Sofa.GL Gui.Qt and runSofa
- #4877 [GitHub] Update sofa-dev action to check timezone
- #4881 [Mapping] Fix draw in DistanceMultiMapping
- #4722 [Core,Helper] Prevent to create objects from unloaded plugins
- #4869 [all] Fix type of renamed Data
- #4864 [SofaCUDA] Simplify definition of CudaVector type
- #436 [Bindings.Gui] Add binding on BaseGui::setConfigDirectoryPath
- #435 Update README.md
- #431 Add functions to load plugins automatically
- #426 Add new env.var to set a build configuration at runtime
- #434 Add binding for GUI::centerWindow
- #125 [ImGui] Add "Reset View" Option to Restore Default Windows Positions
- #124 [GLFW, ImGui] Automatically restore camera at startup if a view file is present
- #122 Save global scale in Settings
- #119 Fix triggered assert
- #118 Implement centerWindow()
- #120 Replace deprecated Data
- The SOFA Physics engine for Unity asset has been published on the Unity Asset store ! Congrat to InfinyTech3D for this amaysing work ! Go check it out here 🎉
- Registrations for the SOFA Week 2024 in Lille next November are OPEN!
- Live demo from Aimen: work on mouse interactions within the GLFW-ImGUI plugin
- Mouse interaction is available with SofaGLFW GUI 👏
- Bugs moving viewport are fixed
- Remaining TODOs
- Data should become editable
- Settings should allow for changing interactions (constraint-based)
- OGLSceneFrame to be corrected
- Scaling window should not change the scale of the scene view
- Responsive font
- Discussion with partners like Anatoscope
- Their technical feedback is always interesting to hear
- Bringing our technical topics in order to benefit from their experience would be great: created dedicated flag "expert discussion required" to identify topics
- Incompatibility of the MeshVTKLoader with the VTK5+ file format
- Find a way to benefit from an easy-to-use library making the coupling with VTK (including the VTK binary format)
-
[Core,Helper] Prevent to create objects from unloaded plugins
- Explicit registering might solve this issue in a better way
- PR can be merged but it adds complexity on the PluginManager
- Fix failing tests due to the factorization
-
[ODESOlver] Fix RHS computation of the backward Euler implicit solver
- This new computation formula should be expanded on visco-elastic cases to asses the proper assembly
- Investigate further Rayleigh damping
- Fix regression DistanceMultiMapping scene: examples/Component/Mapping/NonLinear/DistanceMultiMapping.scn
- #4722 [Core,Helper] Prevent to create objects from unloaded plugins see above technical discussions → wip
- #434 Add binding for GUI::centerWindow wait for GLFW → ready
- #432 [Bindings] Remove static SofaInitializer and call unload into each respective module Would replace #424 and add clear cash function from this. → wait for Paul feedback
- #431 Add functions to load plugins automatically This raises the fact that runSofa loads by default the plugins. Else PR which adds a function to have this auto load in Python → ready
- #426 Add new env.var to set a build configuration at runtime → ready
- #425 Add cleanup to core and ensure that the cleanup happens in runSofa Should be replaced by #432 → wait for Paul feedback
- #424 Add two testing features Add function to load a scene from a file. Suggestion made to rename → wait for author feedback then ready
- #118 Implement centerWindow() This function of BaseGUI is now available in SofaGLFW. Binding for SofaPython3 has been added. → keep to review
- #4866 [SofaCUDA] Apply rename of some Data
- #4865 [Constraint.Projective] Fix internal data allocation
- #4847 [Config] Add CMake option for memory sanitizer
- #4846 [Core] Remove m_cId deprecation warning spam
- #4860 [Helper] Fix deprecation warning for BackgroundSetting component
- #4827 [All] VisualModel: implement NVI for init/updateVisual()
- #4854 [Core] Fix string comparison in factory
- #4849 [CMake] Change CMake version in preset
- #4788 [Core] Proposition to reduce the number of alias declarations
- #4838 [All] Reduce use of raw pointers
- #4843 [Topology.Dynamic] Fix wrong deprecation
- #4822 [Sofa.GL] OglModel: Deprecate/Remove isEnabled Data
- #4801 [GUI.Component] ConstraintAttachBodyPerformer: Add RigidType support
- #4835 [FEM.Elastic] Example of using structured binding
- #4832 [FEM.Elastic] Hexa FEM inherits from BaseLinearElasticityFEMForceField
- #4814 [Core] Add RenamedData component for data symbol renaming
- #155 [src] Update RodSection, WireRestShape and All BeamInterpolation to correctly redirect the getters to the Data
- #154 [src] Fix AdaptiveBeamMapping mapping at init with none deployed beam
- #137 [workflow] Add contributing from SOFA sources
- #140 Navcase
- #139 Change case
- #125 Introduce page for SquareMapping
- #126 Add categories to the generated doc
- Registrations for the SOFA Week 2024 in Lille next November are OPEN!
- The SOFA Physics engine for Unity asset has been published on the Unity Asset store ! Congrat to InfinyTech3D for this amaysing work ! Go check it out here !!
- #4828 [Helper] Added cleanup callback (SOFA) and #425 Add cleanup to core and ensure that the cleanup happens in runSofa (SofaPython3) Related also to the issue #429 on SofaPython3. Warning due to the missing cleanups appears in a python environment when SofaRuntime is not imported. Cleanup should be handled by the one importing the package (Sofa.Helper should do its own cleanup). We should document ourselves on the pybind mechanism: make sure we cleanup the proper ways
-
#4838 [All] Reduce use of raw pointers
Use
std::make_unique
alsothread_local
. Curious to assess again with clang sanitizer → ready - #4835 [FEM.Elastic] Example of using structured binding Nice modern way to write C++ with structured binding → ready
- #4832 [FEM.Elastic] Hexa FEM inherits from BaseLinearElasticityFEMForceField → ready
- #4828 [Helper] Added cleanup callback See above technical discussion → keep to review
- #4827 [All] VisualModel: implement NVI for init/updateVisual() Real nice cleaning of the visual API, now massive use of delegate functions (NVI pattner). Ease a lot the cleaning and readibility → ready
- #4822 [Sofa.GL] OglModel: Deprecate/Remove isEnabled Data → ready
-
#4814 [Core] Add RenamedData component for data symbol renaming
This feature should be extended to all RENAMED data and
setParent
function should be replaced withsetOriginalData
. See issue #4845 → ready - #4813 [All] Remove SOFA_ENABLE_LEGACY_HEADERS usage Remove SleepController and move SofaValidation under the sofa-framework organization → wip
- #4801 [GUI.Component] ConstraintAttachBodyPerformer: Add RigidType support Suggestion to keep the orientation where the picking took place does not work. This is related to the BilateralLagrangianConstraint API (see issue #4834). Minor remark: Data is SOFA should always be public → ready
- #4788 [Core] Proposition to reduce the number of alias declarations Revert changes in TriangleFEMForcefield → minor change then ready
- #4649 [Spring] Merging StiffSpringForceField and its parent Two tests are failing, new review to do as well → wip
- #425 Add cleanup to core and ensure that the cleanup happens in runSofa See above technical discussion → keep to review
- #155 [src] Update RodSection, WireRestShape and All BeamInterpolation to correctly redirect the getters to the Data → ready
- #154 [src] Fix AdaptiveBeamMapping mapping at init with none deployed beam → ready
- #137 Last improvement for the doc generation
- #136 Massive cleaning of the documentation in prevision of the new documentation
- #135 Suggest SOFA_ROOT env var when buidling a plugin → ALL these PRs go towards a new documentation, which will be released very soon this summer!!
- #126 Add categories to the generated doc → ready
- #4841 [CMake] Add QGLViewer2 name in FindQGLViewer.cmake
- #4824 [FEM.Elastic] Remove unused methods
- #4823 [Projective] FixedProjectiveConstraint: Remove draw specializations and compute bbox
- #4837 [Helper] Move string utils from Utils to StringUtils
- #4820 [All] Reduce includes to helper/set.h
- #4818 [Core] Test json dump on the main object factory
- #4780 [FEM.Elastic] Fix small deformation in TriangleFEMForceField
- #4805 [all] Clean some warnings
- #4763 [Lagrangian.Model] Use base class Data instead of protected class member for constraint id
- #422 Introduce binding to dump the object factory in json format
- #421 [Slicer-SOFA integration] Add compatibility with GCC
- The Soft Robotic Summer School took place in Lille, it was a real success, congratulations to the Defrost Team and every one who helped making this possible!
- Registrations for the SOFA Week 2024 in Lille next November are OPEN!
- SofaGym : RL with BeamAdapter (warm restart)
- member variables moved as Data
- instead of exposing all variables as Data, a cleaner approach would be to make components serializable
- test/regression should be done to confirm the warm restart state
-
#4813 [All] Remove SOFA_ENABLE_LEGACY_HEADERS usage
- Karscher cleaning
- Still some component to state on :
- Gravity : required if we want an API that separate the gravity and the root node, to move in MechanicalLoad
- SleepControler : to check, might be interesting to bring it back
- SofaValidation : to archive in external plugins
- SofaExporter : to import components which have examples
- SofaMiscCollision : should be fully removed
- Check for SimpleAPI compatibility layer
-
#4801 [GUI.Component] ConstraintAttachBodyPerformer: Add RigidType support
- Many unused parameters in the method addContact(), the API should be updated (simplified) accordingly
- Create an issue to rethink the API
- #4828 [Helper] Added cleanup callback Involve Damien regarding the proposed cleanup mechanism to see if there might be some better way. → keep to review
- #4820 [All] Reduce includes to helper/set.h In helper/set, an operator string is defined in the namespace std. → ready
- #4818 [Core] Test json dump on the main object factory → ready
- #4814 [Core] Add RenamedData component for data symbol renaming Remove inheritage from Data and use composition, encapsulate data. Then, recreate the data API. → wip
- #4813 [All] Remove SOFA_ENABLE_LEGACY_HEADERS usage See technical discussion above → wip
- #4805 [all] Clean some warnings → ready
- #4801 [GUI.Component] ConstraintAttachBodyPerformer: Add RigidType support See technical discussion above. Work to do on the orientation of the constraint before merge → wip
- #4788 [Core] Proposition to reduce the number of alias declarations Keep alias (using traits) on components having only one template. For components with multiple templates, traits can be used directly. Revert changes in TriangleFEMForcefield → minor change then ready
- #4780 [FEM.Elastic] Fix small deformation in TriangleFEMForceField This part of this code is never tested. Small version of the TriangleFEMForceField is broken and should be updated soon (upcoming task) → ready
- #4763 [Lagrangian.Model] Use base class Data instead of protected class member for constraint id Might still need to apply it to other constraint components → ready
- #4429 [All] POC: ObjectFactory: Explicit components registration → ready
- #426 Add new env.var to set a build configuration at runtime Updated pybind version makes the tests pass (2.12.0 instead of 2.11.2). Revert diff on workflow file. A new environment variable is added to define the folder name into which looking for the SOFA dynamic libraries. New issue #427 to explain why this solution is not good and should be changed. → ready
- #425 Add cleanup to core and ensure that the cleanup happens in runSofa Merge #4828 and move the output in the lambda function → ready
- #423 Follow Sofa change for init/updatevisual → Wait for #4827
- #422 Introduce binding to dump the object factory in json format → ready
- #421 [Slicer-SOFA integration] Add compatibility with GCC → ready
- #414 [CI] Update workflow to match branch name → wip
- #152 [IRC] Add a Link for the mandatory FixedConstraint Remove auto instantiation and only output error and let it crash. Add the componentState flag anyway → wip
- #4831 [FEM.Elastic] Fix dynamic symbols
- #4778 [FEM.Elastic] Start unification of tetra FF and division of tests
- #4819 [Collision] Secure pointers dereferences
- #4817 [Core] Deprecate typeName with parameter
- #4816 [Core] Explicit type instead of calling function with side effect
- #153 [scenes] Fix scene warnings in xml and python
- #151 WireRestShape: getBeamSection() must return a const ref in any case
❌ No meeting due to the Soft Robotic Summer School in Lille!
- Discover the new release v24.06!
- Registrations for the SOFA Week 2024 in Lille next November are OPEN!
- The Soft Robotic Summer School is coming in two weeks in Lille!
- Caribou plugin status
- updates from JNB to fix the compilation with the more recent versions of SOFA
- several branches on Fenics (Ask Sidaty)
- updating the plugin and possible merges with SOFA need to be rediscussed
- #4804 [SofaTest] Rename deprecated data → ready
- #4802 [All] Remove compat layer for Intersection methods → ready
- #4795 [All] Plugins: Deprecate entrypoint getModuleComponentList() → ready
-
#4788 [Core] Proposition to reduce the number of alias declarations
Defining this as private could not work because nothing prevents from using it elsewhere.
Example on Multi2Mapping is satisfactory (readibility improved, no public/private scopes) but when a single template is used, the verbosity is not satisfactory
using Real = Real_t<DataTypes>;
. SReal is a generic declaration of types (simplify the codebase). To target a specific architecture, all what is needed is to modify this SReal definition. The SofaCUDA plugin prevents from the full usage of SReal. → to be further discussed - #4787 [Project] Start dev phase v24.12 Depends on #4802 → ready
- #4780 [FEM.Elastic] Fix small deformation in TriangleFEMForceField → keep to review (Erik)
- [FEM.Elastic] Start unification of tetra FF and division of tests #4778 Fix conflicts then ready (it was ready just before) → wip
- #4775 [Core] Dump ObjectFactory in json Destination type for links has been added. An executable or a Python binding could be generated from this to automatically dump the file. → ready
- #4429 [All] POC: ObjectFactory: Explicit components registration The PR is now ready but it will have a massive impact on all the code base. We suggest to merge it but silently (remove temporarily all the warnings: compilation-time and runtime). Another PR will start the cleaning within SOFA and its official plugins. → keep to review
- #4786 [Core] Factorize two variables with the same meaning (constraint id)
- #4771 [Component] Rename Data
- #4797 [GUI] Fix typo in comments
- #4781 [FEM.Elastic] Add test of TriangleFEMForceField
- #4793 [GUI] initialize pointer to nullptr to avoid crash
- #4777 [Mapping.NonLinear] Cleaning of DistanceMapping
- #4792 [Simulation.Core] Fix assert due to #4776
- #129 Add action triggering the doc generation
- #128 Update doc.yml
- #123 Move mapping from SOFA/Component to its plugin directory
- #122 Update README
- Discover the new release v24.06!
- Registrations for the SOFA Week 2024 in Lille next November are OPEN!
- The Soft Robotic Summer School is coming in two weeks in Lille!
- Failing tests on the CI: https://ci.inria.fr/sofa-ci-dev/job/sofa-framework/job/PR-4788/CI_CONFIG=ubuntu_gcc,CI_PLUGINS=options,CI_TYPE=release/2/testReport/ → Update pybind version for all python version in builders
- #4793 [GUI] initialize pointer to nullptr to avoid crash → ready
- #4788 [Core] Proposition to reduce the number of alias declarations This is a proposal. The use of aliases in the public scope of the class is not desirable. The use of macro is not desirable either. The traits mechanism seems good and is the one selected. A new use case with the traits will be proposed + an example where the aliases are defined through the traits. The goal is then to apply that to the whole core. → keep to review
- #4787 [Project] Start dev phase v24.12 Fix collision uses → back to wip
- #4786 [Core] Factorize two variables with the same meaning (constraint id) Integrate awesome suggestion by Fred then ready → ready
- #4781 [FEM.Elastic] Add test of TriangleFEMForceField Test made with the "large" elastic formulation. Add testing on ForceFields (on various parameters), the roadmap has been updated accordingly → ready
-
#4780 [FEM.Elastic] Fix small deformation in TriangleFEMForceField
Erik will investigate the reason why the "small" elastic formulation crashes. Add a const attribute to remove all the
getValue()
→ keep to review - #4778 [FEM.Elastic] Start unification of tetra FF and division of tests → ready
- #4777 [Mapping.NonLinear] Cleaning of DistanceMapping → ready
- #4775 [Core] Dump ObjectFactory in json Minor remark: in a test, the typename field of a Class which is not portable (use of type_id). Add the type which is targeted by Links. In a later PR, we could introduce a field "status" for data when they are either undefined, input or output (see STC#17 discussions on update of components). → to review
- #4771 [Component] Rename Data Wait for last Paul's review then ready → ready
- #4766 [All] Introduce cmake unified configurations Use presets in new PR (essentially update them) → close
- #4429 [All] POC: ObjectFactory: Explicit components registration Renaming loadPlugin() into registerPlugin(). Last review then ready before applying this change to all SOFA → back to wip
- #409 Add way to deactivate gui bindings Change the Cmake option comment → then ready
- #151 WireRestShape: getBeamSection() must return a const ref in any case Make sure default values are zeros → then ready
- #4792 [Simulation.Core] Fix assert due to #4776
- #4784 [Core] Introduce category for LinearSystem
- #4785 [SofaAssump] Fix shadow variable in SceneColladaLoader
- #4776 [Core] Deprecate Compliant API in force fields
- #4779 [FEM.Elastic] Remove addKToMatrix override as it is duplicated from base class
- #121 attempt to update doc page setup
- #111 various fixes
- #120 Add discreet link to sofa website
- #119 Add details
- The Soft Robotic Summer School is coming in two weeks! See you on 8-12 July in Lille (France)
- The STC took place last week in Strasbourg ! Thank you to all the attendants ! A closing mail containing all the defined roadmaps and pictures of the event is on its way, stay updated !
- It will soon time to register to the SOFA Week 2024 in Lille next November
-
#4766 [All] Intoduce cmake unified configurations
- Make converge all plugin configurations (build, release, conda, website)
- Presets would be preferred
- Name of configurations could be made more clear: e.g. does
FULL
include all possible plugins or only the consortium-supported ones? - Plan various levels of plugins: tested, supported, maintained
- #4778 [FEM.Elastic] Start unification of tetra FF and division of tests Freshly open PR targeting unit tests (also on Triangle)! Common inheritance, in parent class a scalar Poisson ratio and a Young's modulus vector. Ready for review. Subsequently, create a class similar to TriangleFEMUtils, create callback on data. → keep to review
- #4777 [Mapping.NonLinear] Cleaning of DistanceMapping Wait for #4776 the restart CI (MacOS) and then merge → keep to review
- #4776 [Core] Deprecate Compliant API in force fields → ready
-
#4775 [Core] Dump ObjectFactory in json
Issue with the target (module in which the component is defined) and empty entry due to the absence of template. Overloading of the
int()
operator could conflict with #4429 but mechanism should be close anyway. TODO: waiting for Damien's feedback. Adding the parent class and the category → keep to review - #4771 [Component] Rename Data Test failing. Review to be done shortly since it's a large PR. Dates of deprecation should be updated as well (next release is v24.12). → wip
- #4766 [All] Introduce cmake unified configurations See technical discussions. Use presets else approved by dev community. → wip
-
#4763 [Lagrangian.Model] Use base class Data instead of protected class member for constraint id
Proposal: the variable
m_constraintIndex
is set whenbuildConstraintMatrix()
is called in the parent class PairInteractionConstraint. TODO: possibly rename withd_
, make sure that to fix all uses of m_constraintIndex (in BaseConstraintSet, am_cid
seems to be used, to be investigated) → wip - #4747 [Topology.Container.Dynamic] Add class TriangleSubdividers to store methods to subdivide a triangle in differents configurations → back to wip
-
#4429 [All] POC: ObjectFactory: Explicit components registration
Further to STC#17 discussions, this PR got reopened. It should be ready, registration has been moved : each module registers itself. Fred is currently working on renaming
loadPlugin()
intoregisterPlugin()
. Last review then ready before applying this change to all SOFA. → keep to review
- #150 Fix typos → ready and merged
❌ No meeting due to the SOFA Technical Committee #17!
- Check out and register to our upcoming events!
- SOFA Technical Committee #17: on 10-12 June in Strasbourg (France)
- Soft Robotic summer school: on 8-12 July in Lille (France)
- The SOFA America Workshop (SAW) was a success !! Thank you to all the presenters for their amazing work, and all the attendees for their presence !
- Don't forget to freeze a v24.06 branch on your plugin as the next release is on its way.
- Discussion on the new SOFA Doc
- Existing doc is merged with generated one : might need to clean the existing one by removing info that are generated
- xml/python example are displayed when they exist. The python translation might need some improvement
- The merged doc is pushed on a branch and can directly be used on the website
- Need to correct example names for some components that have been renamed (constraints)
- SofaPython3 auto completion
- Also need introspection in factory to generate documentation. Those needs are the same as the one of the doc generator: common ground required to export those data from the factory (into json ?)
- Difference in type of completion : static (without execution) and dynamic (with the component existing).
- Need
.pyi
file describing the methods and signature of each binfdings : generated automatically using python tools. - Problem with SOFA bindings: to simplify sometimes we state that the returning type is
object
but this gives no real informaiton. Might need to review cpp binding signaturee to be more specific. - Last part would be to be able to find all the attribute of the object by changing the addObject signature and passing the type instead of the string. But this requires the automatic generation of the description.
- Following STC dicsussion on what features we want.
- #4763 [Lagrangian.Model] Use base class Data instead of protected class member for constraint id Remove overriden mechanism of saving the constraint ID. Use the base constraint attribute instead. Maybe fix all the other constraint in this PR or do another one ? → wip
- #4751 [all] Update data comments → ready
- #4750 [Spring] Add fixed weak constraint and examples → wip
- #4747 [Topology.Container.Dynamic] Add class TriangleSubdividers to store methods to subdivide a triangle in differents configurations Need for the review of all devs. Maybe put the base geometric methods in a more generic lib to ease the use. → keep to review
- #4746 [Topology.Container] Various clean in TriangleSetGeometryAlgorithms → ready
- #4743 [MechanicalLoad] Update TrianglePressureForceField to remove plan selection and add callback on Data pressure and triangleList Regression test failing → wip
- #416 Update python version to 3.10 in doc Add automatic doc generation on github action for SofaPython3. Complete PR on Doc https://github.com/sofa-framework/SofaPython3/pull/352. → ready
- #415 [Core] bindings for topology functions Rerun MacOS action → then ready
- #118 Update build instructions → ready
- #116 add empty lines and 4 spaces indentation Can we add specification on the factory description do enable for instance the use of markdown in the description. Enable to display markdown in ImGUI ? Question on having a description string in the cpp file or external file (STC) ? → ready
- #115 Move files according to code structure → ready
-
#116 [SofaGLFWBaseGUI] Handle Keyboard events
Handle keyboard events. Remove the need of pressing
ctrl
to have something that is more logical sending the event only to the active part (gui/rendering/widget). Might be good to take inspiration from existing software. Need to invatigate for better UX strategy (only send event when on play ?). → wip - #115 [ImGUI] Add PIC property when on Fedora Remove OS filtering to fix it to all OS. Verify in SOFA if it is already set globaly. Test on compilation, might actually be nfd that needs to be compiled as PIC. → wip
- #111 [SofaImGui] Fix window positioning and state persistence issues Enable to have the same window state after closing/repopening the windows. Still need to fix the destructo call to make it work. → keep to review
- #4764 [examples] Rename FixedConstraint example
- #4749 [tools] Add new dependency to fix in MacOS post-install-fixup
- #4755 [all] Rename depreciation macros in config.h.in for unique module id…
- #4687 [examples] Use MeshMatrixMass in hyperelastic examples
- #4738 [Core] Add topology subset indices test
- Check out and register to our upcoming events!
- SOFA America Workshop: on 30-31 May in Montreal (Canada)
- SOFA Technical Committee #17: on 10-12 June in Strasbourg (France)
- Soft Robotic summer school: on 8-12 July in Lille (France)
- Freeze of v24.06 branch this week
- No meeting next week (preparation of the above mentioned SAW ☝️)
- Review of the STC program
- Let's prepare the STC technical discussions (e.g. preliminary discussions about the documentation, design of prefabs etc.)
-
#4748 [tools] Factorize and clean plugin list filtering
- Add SofaPython3 ?
- Keep Sofa.Metis, Multithreading
- Create an issue to remove autoload or only autoload the core plugins
- #4751 [all] Update data comments Small compilation error got fixed. Review should be done else ready → keep to review
- #4750 [Spring] Add fixed weak constraint and examples Add tests and modify the object description. Try to factorize as much as possible the code of spring models -> create an issue. → wip
- #4749 [tools] Add new dependency to fix in MacOS post-install-fixup Investigate whether the broken symbolic link can be fixed (libzstd.1.5.6.dylib) else the tiff format could be unsupported. → keep to review
- #4748 [tools] Factorize and clean plugin list filtering → see technical discussion
- #4747 [Topology.Container.Dynamic] Add class TriangleSubdividers to store methods to subdivide a triangle in differents configurations Adds new method that will replace the current methods in the TriangleTopology modifier. Need to review the PR as it is enriched. Open to discussion on how the object are istributed in therm of files etc... → wip
- #4746 [Topology.Container] Various clean in TriangleSetGeometryAlgorithms PR not compiling and comments → wip
- #4745 [PlayBack] Update playback scenes to write/read and compare a beam under gravity motion → ready
- #4743 [MechanicalLoad] Update TrianglePressureForceField to remove plan selection and add callback on Data pressure and triangleList Feature of selection of triangle (using plan and a distance) should not be within TrianglePressureForceField. Unit test failing and regression test to be fixed. → keep to review
- #4738 [Core] Add topology subset indices test Along the refactoring of springs, it has been noticed that subset of indices does not support the case where it contains several times the same indices (case where several springs are attached to one same point). Fix this before v24.06 → keep to review
- #4732 [tests] Fix and test value type string of topology primitives → ready
- #4628 [ODESolver] Explicit link to linear solver Test are rising an issue in MOR. To be fixed before merge. → keep to review
- #114 Introduce a single example of an automatically generated documentation of a component Merge this PR to check how does such a page looks like on the website. Possibly revert it later. → ready
- #113 Categories are not plural → ready
- #147 [Interpolation] Add BaseBeamInterpolation class to gather all methods linked to interpolation Check error on unit tests → then ready
- #4744 [PlayBack] Add option to set period in the WriteStateCreator visitor
- #4742 [Analyze] Fix typos
- #4741 [image_gui] Fix module name
- #4740 [MultiThreading] Fix module name in BeamLinearMapping_mt
- #4725 [Core] Warn when module name is empty
- #4719 [image_gui] Make it a cleaner SOFA module
- Check out and register to our upcoming events!
- SOFA America Workshop: on 30-31 May in Montreal (Canada)
- SOFA Technical Committee #17: on 10-12 June in Strasbourg (France)
- Soft Robotic summer school: on 8-12 July in Lille (France)
- Next SOFA-dev meetings back on Wednesdays (next meeting: 22/05)
- Freeze of v24.06 branch next week
- Finish refactoring on modules (related to the doc generation)
- Use milestone
- Share your interest among the discussion topics
- Maybe not all subject need to be assessed during the STC (e.g. Newton Raphson)
- Scene header : global solvers might need some rethinking to ease the integration of a NewtonRaphson
-
#4732 [tests] Add tests on value type string
Required for ImGUI Widget factory. Three solutions : 1) Create a
topology::Point
as a vector of index of size 1 to generalize, 2) add a specialization for Point to only store one Index or 3) accept that this doesn't make sens and skip it. → wip - #4725 [Core] Warn when module name is empty Launch scene and regression test. Might need to fix the modules of internal plugins in this PR if there is only a few, to provide an example on how to do it. → keep to review
- #4724 [tests] Adapt code to any Eigen version More info from Hugo required : new full build ? + Add milestone → keep to review
- #4722 [Core,Helper] Prevent to create objects from unloaded plugins Explicit registering might solve this issue in a better way. Or a "failsafe" mechanism (such as the one imagines for the macos libSofaPython3 solution). Discussed it again at the STC for the best solution. → postponed
- #4719 [image_gui] Make it a cleaner SOFA module Looking at the parameters used in the macro, the include used in the sources is passing through another target include interface. A good solution would be to move all the files inside a sub folder and include this subfolder. → wip
- #4628 [ODESolver] Explicit link to linear solver Still need the depreciation layer. → keep to review
- #147 [Interpolation] Add BaseBeamInterpolation class to gather all methods linked to interpolation Add a virtualization layer to factorize internal data used by bot the BeamInterpolation component and the WireInterpolation. More pr with examples will come in the future. Wait for tests results and need to be checked by the reviewer. → keep to review
- #134 Geometric stiffness in BeamLengthMapping Marked as 'Do not merge' because we don't have an usage example. Still need to validtae the use of geometric stiffness. → wip
- #4726 [image,Mapping.NonLinear] Properly includes config.h before ObjectFactory.h
- #4686 [CMake] Start finding Qt6 then Qt5
- #4682 [Setting] Rename Data
- #4679 [IO] Rename Data
- #4676 [Collision.Geometry+Response] Rename Data
- #4715 [AnimationLoop] Remove duplicated Constraint Visitors
- #4720 [image] Fix module name
- #4714 [SofaCUDA] extern template instantiations
- #4681 [Playback] Rename Data
- #4680 [ODESolver] Rename Data
- #4646 [Constraint.Lagrangian] Add fixed lagrangian constraint
- #4651 [FEM.HyperElastic] Convert string Data to OptionsGroup
- #124 Example: apply SOFA's fix on TopologicalMapping
- #148 Fix empty module name
- #146 Remove old deprecation
- #145 Fix crash if pointer is null
- Check out and register to our upcoming events!
- SOFA America Workshop: on 30-31 May in Montreal (Canada)
- SOFA Technical Committee #17: on 10-12 June in Strasbourg (France)
- Soft Robotic summer school: on 8-12 July in Lille (France)
- Pre-STC#17 discussions took place with roadmap leaders and consortium members
- Next SOFA-dev meeting next Tuesday the 14th of May at 10 a.m.!
- Post-install scripts : why modifying the
plugin_list.conf
? Paul will refactor this removed plugin list and think of removing it completely. - Python bindings : Slicer community identified problems of IDE/interpreter auto-completion. The Slicer team proposed to show their fox for this same problem on their bindings. Before organizing a meeting, ask Damien about current auto-completion ability of vanilla interpreter on the current python3 bindings.
- Add Qt Wayland plugin installation instructions #109 Proposes new instruction for qt installation when using wayland. Instead of adding a troubleshoot section, add an item in the installation doc with "if using wayland, then..."
- [Sofa.Http] Introduction of a latest release checker #4702 OpenSSL is too much of a dependency for such not important. It might be better to make a request on a http adress instead to avoid this dependency. Talk with Fred.
- Small discussion on paper Chen, Anka He, et al. Vertex Block Descent. ACM Transactions on Graphics (2024) Results are interesting on either performance or stability. Use an energy formulation with an Euler integration scheme at the dof level which increases parallelism and stability. It would be worth at looking more in details. Lib used for collision detection : Embree which could also be interesting to dig in. Based on SYCL to have a cross-platform
- Using the WriterSide tool, Alex presented a way to generate markdown pages for all SOFA components (see https://alxbilger.github.io/SofaDocGenerator). This could be used in the SOFA GUI to guide users regarding Data etc. We could also envisage to merge such a code-based doc with the user documentation.
- #4715 [AnimationLoop] Remove duplicated Constraint Visitors Fwd declaration with using in header to fasten compilation, includes in the cpp. → ready
- #4714 [SofaCUDA] extern template instantiations Create an issue to solve problem on SOFA_TARGET generation → ready
- #4702 [Sofa.Http] Introduction of a latest release checker See above technical discussion → wip
- #4687 [examples] Use MeshMatrixMass in hyperelastic examples → wip
- #4686 [CMake] Start finding Qt6 then Qt5 → ready
- #4684 [Visual] Rename Data Lots of scene test crashing → wip
- #4682 [Setting] Rename Data Wait for CI → keep to review
- #4681 [Playback] Rename Data → ready
- #4680 [ODESolver] Rename Data → ready
- #4679 [IO] Rename Data Still need some review → keep to review
- #4676 [Collision.Geometry+Response] Rename Data Still need some review → keep to review
- #4673 [Modeler] : WIP : Compatible Modeler project with last version Work attempting to revive the Modeler but this based on a very old version of SOFA. The PR should be restarted from a fresh master version and changes should be only focusing on Modeler. As an information, an implementation of a new Modeler are being prepared. To be cleaned (remove reverted changes from master commits) or closed. → wip
- #4651 [FEM.HyperElastic] Convert string Data to OptionsGroup wait for CI → then ready
- #4648 [GUI.Qt] Notice user a new version is available See technical discussions, this PR can be closed → closed
- #4646 [Constraint.Lagrangian] Add fixed lagrangian constraint → ready
- #4163 [all] Deprecates the hard coded interactions in components → wip
- #4675 [Collision.Detection.Intersection] Rename Data
- #4674 [Collision.Detection.Algorithm] Rename Data
- #4721 [SensableEmulation] Fix module name
- #4711 [Engine.Analyze] Fix initialization of distance type
- #4698 [all] Remove some warnings
- #4710 [Contact] Fix crash if collision models are not provided
- #4709 [CollisionOBBCapsule] Fix duplicated registration in the factory
- #4712 [SceneUtility] Initialize pointer to nullptr
- #4708 [examples] Remove examples using DefaultCollisionGroupManager
- #4707 [examples] Run PluginFinder on examples
- #4678 [Controller+Engine] Rename Data
- #4650 [GUI.Qt] Add clickable link to online documentation
- #4625 [LinearSystem] Cache mapped mass matrix
- Check out and register to our upcoming events!
- SOFA America Workshop: on 30-31 May in Montreal (Canada)
- SOFA Technical Committee #17: on 10-12 June in Strasbourg (France)
- Soft Robotic summer school: on 8-12 July in Lille (France)
- Pre-STC#17 discussions took place with roadmap leaders and consortium members
- Next SOFA-Dev meeting on next Tuesday the 7th of may at 10 a.m. !
- Update Qt6 on the Continuous Integration (further to #4686)
- Alex worked with Writerside, a documentation-focused IDE. Here is an example for SOFA: https://alxbilger.github.io/sofaWriterside/. Unit test failing. Might be a good tool to track errors, and construct the doc locally.
- #4684 [Visual] Rename Data Forwarding of default constructor has been added in topologicalData. It could be removed to keep only a regular Data which has the new data as parent. → keep to review
- #4678 [Controller+Engine] Rename Data → ready
- #4674 [Collision.Detection.Algorithm] Rename Data Missing compatibility layer to deprecate the dDraw data → keep to review
- #4651 [FEM.HyperElastic] Convert string Data to OptionsGroup Wait for tests to re-run, wait for ci-depends-on → then ready
- #4650 [GUI.Qt] Add clickable link to online documentation This would work if the associated PR on the documentation is merged: #108 → ready
- #4649 [Spring] Merging StiffSpringForceField and its parent Test CUDA compilation → keep to review then ready
- #4648 [GUI.Qt] Notice user a new version is available Review of existing libraries is ongoing. Question about the ability to dev a server with curl to replace the QWebBrowser. → keep draft
- #4646 [Constraint.Lagrangian] Add fixed lagrangian constraint Implement Vec specialization. → wip
- #4625 [LinearSystem] Cache mapped mass matrix → ready
- #4163 [all] Deprecates the hard coded interactions in components → keep to review
- #3368 [Topology] Add function in BaseMeshTopology to compute all topology containers Problem with SoftRobots mesh not properly structured because this PR increase the topological constraints on the meshes. All level of element should be consistant even when only the tetra are used. GMesh generated mesh file register only the surface triangles in the file which is inconsistent with all the tetrahedral elements. Erik will test if the example scene work with dynamic topo that recompute the lesser elements. → to be discussed at STC#17
- Check out and register to our upcoming events!
- SOFA America Workshop: on 30-31 May in Montreal (Canada)
- SOFA Technical Committee #17: on 10-12 June in Strasbourg (France)
- Soft Robotic summer school: on 8-12 July in Lille (France)
- Next SOFA dev meeting will be held online on TUESDAY 30th April at 10 a.m. !
- What to do with SofaOpenCL ? → Externalize and make it an achive
- #4648 [Gui.Qt] Notice user a new version is available → Use external lib instead of QT to do the http request. To be commonly defined.
- SOFA release as conda packages: https://github.com/sofa-framework/conda-ci → Try it out to provide feedback. Conda PR is pushed again with help of core-dev of Conda (through TIRREX)
- Problem with QWebEngineView pointed in #4656 → Again, might be great not to use a Qt based library for the DocBrowser and instead use the web browser -> will require to have a server on SOFA's side. And maybe think about UX (where and when to put it)
- #4651 [FEM.HyperElastic] Convert string Data to OptionsGroup CI shows errors and test failures → wip
- #4650 [GUI.Qt] Add clickable link to online documentation An automatic link could be generated from namespace and a check could be added if page exists (list of documented components). A discussion should be planned at STC#17! Damien suggests to reactivate the python script generating the documented components. → closed ?
- #4649 [Spring] Merging StiffSpringForceField and its parent Further to issue #248, this PR merged StiffSpringForceField and SpringForceField, becoming one single SpringForceField. A data could be added in ForceField (Base class) to enforce an explicit-only behavior of the ForceField. Need some time to review → keep to review
- #4648 [Gui.Qt] Notice user a new version is available See the above technical discussion → wip
- #4646 [Constraint.Lagrangian] Add fixed lagrangian constraint At init, the SingleStateAccessor already does the check done in the FixedLagrangianConstraint. Remove it then ready. → wip
- #4641 [QtGui] Some cleaning in qt RealGui → ready
- #4639 [Fem] Small update on container access to avoid unecessary check → ready
- #4638 [GUI.Component] Add virtualization for attachment performer Add issue to rethink performers api → ready
- #4637 [SofaGuiQt] Add PenalityContact vector Data display → ready
-
#4628 [ODESolver] Explicit link to linear solver
Add deprecation layer on the function
m_setSystemMBKMatrix()
else perfect! → wip -
#4625 [LinearSystem] Cache mapped mass matrix
Reviews taken into accound for the Mass and change in all linear mapping so that
isLinear()
returns true. Stiffness matrix could be implemented later on. TODO: add an observer on the mapping. → keep to review -
#4163 [all] Deprecates the hard coded interactions in components
Asked reimplementation of controlers was done. Date for deprecation should be added, to do so check other usages of
msg_deprecated()
→ keep to review then ready
- #4634 [Core] Missing call to super init
- #4630 [LinearAlgebra] Trigger error on the Eigen version
- #4194 [Geometry] Update method intersectionWithEdge signature and redirect all methods to it in EdgeSetGeometryAlgorithms
- #4643 [Demos] Fix regression for fallingBeamLagrangianCollision.scn
- #4603 [HyperElastic] Introduce stable Neo Hookean hyperelastic material
- Release 23.12 patched → v23.12.01 is available
-
SOFA America Workshop: on 30-31 May in Montreal (Canada)
- Pre-program is available
- Registration is open!
-
SOFA Technical Committee #17: on 10-12 June in Strasbourg (France).
- Registration is open!
-
Soft Robotic summer school: on 8-12 July in Lille (France).
- Registration is open! Don't forget to submit an abstract for a poster contribution after registration! Deadline has been extended to the 15th of April (Monday next week !)
- minor topic: measuring projection/distances on a surface #4519 Should rely on the RayCollisionModel to take advantage of the collision pipeline (BroadPhase)
- #4625 : interest according to InSimo, no feedback from Mimesis
- #4625 [LinearSystem] Cache mapped mass matrix The feature caching a mapped mass matrix is interesting and it can be added directly in SOFA. Adding a similar mechanism for the stiffness matrix could be implemented (not yet in the PR). Use of DDG to update the data value when input data is modified (dt, and mstate.size). However, we do not detect changes in mapping for now (update), tracking the componentState of mapping could be a solution (if callbacks are well implemented in mappings). About the stiffness, it usually depends on the current dofs. Therefore, it is often non-constant (apart from stiff springs, constantFF, small deformation elasticity). Question on dynamic changes in the DDG : what append when the object owning a data in the graph is deleted ? Investigate a new solution for cache invalidation that would work with the Stiffness. → wip
- #4603 [HyperElastic] Introduce stable Neo Hookean hyperelastic material → ready
- #4194 [Geometry] Update method intersectionWithEdge signature and redirect all methods to it in EdgeSetGeometryAlgorithms Add issue on LCPForceFeedback test because it result is random. Update the depreciation versions. → update then ready
-
#3927 [Mass] Replace doUpdateInternal by callback: UniformMass
Question on the usage of 'default value' if some are meant to be set (required). Here the component is invalid if none of the data (total mass or vertexMass) is set although a default value exists. This mechanism is not great but it is the best we can get with the current API. It would require to modify the global initialization mechanism and data framework (input, output, inout, required...) to have something better. Create issue to discuss this API update at the STC.
Replace
componentState.getValue()
withisComponentStateValid()
in theinit()
function → update then ready - #3368 [Topology] Add function in BaseMeshTopology to compute all topology containers Test failing → wip
- #412 [CI] enable tag release PR applied to all plugins where we need a release of the sources (using both a branch or a tag) → ready
- #4631 [Simulation.Core] Remove useless and annoying timers
- #4626 [GitHub] Add timezone info on cron Actions
- #4627 [all] Minor last fixes using SimpleApi
- Release 23.12 patched → v23.12.01 is available
-
SOFA America Workshop: on 30-31 May in Montreal (Canada)
- Pre-program is available
- Registration is open!
-
SOFA Technical Committee #17: on 10-12 June in Strasbourg (France).
- Registration is open!
-
Soft Robotic summer school: on 8-12 July in Lille (France).
- Registration is open! Don't forget to submit an abstract for a poster contribution after registration! Deadline is April 8th.
- #4625 [LinearSystem] Cache mapped mass matrix Discussion on J^T M J pre-computation: with a mapped node, we build a node-local matrix which is then projected in the global system. ForceFields and Masses can be concerned. It requires changes in Sofa/Core and in MatrixLinearSystem involving the Observer design pattern. This could be extended to stiffness as well but we lack of application cases. A data could also be added to activate or de-activate this feature. → ask other dev teams
- SOFA release versions
- v23.12 for Ubuntu 20.04 → generate unsupported binaries on forum
- Soon MacOS release
- #4603 [HyperElastic] Introduce stable Neo Hookean hyperelastic material Get a deeper understanding on Kronecker operator and evaluate how to implement eigenvalues clamping → keep to review
- #3928 [Mass] Replace doUpdateInternal by callback: MeshMatrixMass same as #3927 → wip
- #3927 [Mass] Replace doUpdateInternal by callback: UniformMass Similar feature is merged for the ConstantForceField in #3924. It adds separate callbacks for each data but a hacky flag allows to avoid data cross-dependency by de-activating all inputs non-set at the initialization. It could be done here as well but a more robust implementation (Data, callback) could be found. Add a unit test to make sure that no data cross-dependency is triggered. Manual test as well. Note: later, if a callback simply raises a flag change, we could define non-laizy callbacks. → wip
- #4582 [Collision.Response.Contact] Make contactId thread-safe
- #4601 [GUI] Add ConstraintAttachButtonSetting
- #4620 [LinearSystem] Remove development artifact
- #4583 [Collision.Detection] Give current intersection methods as parameter to intersection functions
- #4608 [plugins] Add fetchable ModelOrderReduction
- #4580 [Simulation] Tests: introduce multiple parallel simulations
- #4588 [LinearSystem.Direct] Remove metis dependency
- Release 23.12 patched → v23.12.01 is available
- First training session on Soft robotics took place online on Thursday ! You can be part of a next session by registering here !
-
SOFA America Workshop: on 30-31 May in Montreal (Canada)
- Pre-program is available
- Registration is open!
-
SOFA Technical Committee #17: on 10-12 June in Strasbourg (France).
- Registration is open!
-
Soft Robotic summer school: on 8-12 July in Lille (France).
- Registration is open! Don't forget to submit an abstract for a poster contribution after registration! Deadline is April 8th.
- Release 23.12 remaining tasks: last issues are fixed, one remaining in SoftRobots.Inverse. We're on it!
- Technical skills in CI/CMake: share the associated knowledge among the core-devs
- #4608 [plugins] Add fetchable ModelOrderReduction Script added on CI and compiles → ready
- #4603 [HyperElastic] Introduce stable Neo Hookean hyperelastic material Take time to look at maths: Hugo, Rémi and maybe Francois 🔥 → keep to review
- #4601 [GUI] Add ConstraintAttachButtonSetting Example added and alias removed. Add description of C++ class and example. → keep to review
- #4589 [plugins] Externalize all remaining plugins → closed
- #4588 [LinearSystem.Direct] Remove metis dependency Sofa.Metis plugin not compatible with Sofa version older thant this PR because of multiple target definition. TODO: Create a CI and add readme to the plugin. → ready
- #4583 [Collision.Detection] Give current intersection methods as parameter to intersection functions Keep compatibility layer which implies the boiler-plate code. Let's keep it this way until the v24.06 release and the lifecycle tasks further to the release → ready
-
#4582 [Collision.Response.Contact] Make contactId thread-safe
Remove the mechanism of
availableId
because its type is uint64. This should not required to have these integers in a list. → ready - #4580 [Simulation] Tests: introduce multiple parallel simulations → ready
- #4575 [plugins] Externalize haptic/interface plugins → closed
- #4573 [plugins] Externalize SofaDistanceGrid plugin Wait for next release to identify the points to automatize → closed
- #4536 Refactor a bit the way runSofa is implementing the scenegraph colors Keep only the 2-line change if the full API is not addressed → wip
- #409 Deactivate gui bindings when lib is not found Change mechanism to fit SOFAExporter → wip
- #408 Update cmake minimal version in cmake → ready
- #383 Update readme → closed
- #4600 [Type] Clean and test MatSym
- #4586 [CMake] Upgrade cmake_minimum_required to 3.22
- #4591 [runsofa] Allowing multiple argv
- #4619 [Multithreading] fix multithread packaging
- #4607 [tests] Use appropriate gtest macro
- #4576 [Geomagic] Update GeomagicDriver.cpp to fire error when hd.h is not found
- Release 23.12 is out !! --> https://github.com/sofa-framework/sofa/releases/tag/v23.12.00
-
SOFA America Workshop: on 30-31 May in Montreal (Canada)
- Pre-program is available
- Registration is open!
-
SOFA Technical Committee #17: on 10-12 June in Strasbourg (France).
- Registration is open!
- #4583 [Collision.Detection] Give current intersection methods as parameter to intersection functions This PR is part of a bigger task which aims at enabling multithreaded simulations (launching multiple simulations in parallel). The intersection mechanism allows to add methods for intersection through a factory. At runtime, an intersection object is created for the proximity in use in the simulation. The problem is that this pointer is created at runtime, is global and saved as pointer, creating race conditions. Here instead of refering to this singleton, it is passed through parameter to make it thread safe. Question is raised about shall we keep the compatibility layer or not regarding the method lacking the output parameter.
- #4603 [HyperElastic] Introduce stable Neo Hookean hyperelastic material This pr add tests of the hyperelastic materials (existing one and this new one) and some tests on the existing one are not passing. The code is a good first implementation but might miss some features (clamping). Parts of the implementation are uncertain (even if validated by tests) because of the lack of documentation on the hyperelastic materials. Would be great to test high compression with a beam fixed with springs instead of projective constraint. Need to have a more profound review. → wait for #4600
- #4601 [GUI] Add ConstraintAttachButtonSetting An example could be added, remove addAlias → keep to review
- #4600 [Type] Clean and test MatSym Compilation error in MatSym, storing the dense symmetric matrices. → wip
- #4591 [runsofa] Allowing multiple argv Wait for CI scene tests → then ready
- #4589 [plugins] Externalize all remaining plugins Need to make a PR on the ci project before merging. → keep to review
- #4588 [LinearSystem.Direct] Remove metis dependency Need to make a PR on the ci project before merging. Add fetchable mechanism (in SOFA and in ci repository) → keep to review
- #4586 [CMake] Upgrade cmake_minimum_required to 3.22 Conflict to be solved and documentation to be added → ready
- #4582 [Collision.Response.Contact] Mark contactId pool as thread local storage Windows compilation is broken. Might break the parrallel resolution of one single simulation (multithread plugin), to be checked. → wip
- #4581 [Constraint.Lagrangian.Solver] Make problemId counter id atomic → ready
- #4580 [Simulation] Tests: introduce multiple parallel simulations Wait for CI compilation → then ready
- #4576 [Geomagic] Update GeomagicDriver.cpp to fire error when hd.h is not found → ready
- #4575 [plugins] Externalize haptic/interface plugins Need to make a PR on the ci project before merging. → keep to review
- #4573 [plugins] Externalize SofaDistanceGrid plugin SofaImplicitField requires this plugin to compile, so we need to update the cmake error to tell user to fetch SofaDistanceGrid to compile SofaImplicitField. Automatization and homogeneity should be ensured on plugins. Need to make a PR on the ci project before merging. → keep to review
- #4599 [LinearAlgebra] Remove empty source file
- #4572 [plugins] Add SimpleApi as a dependency in SofaCarving_test
- #4598 [LinearAlgebra] Fix compilation of assert
- #4596 [Core] cmake: Remove last traces of Sofa.Component.Compat
- #4590 [Core] Remove unused debug trace
- #4552 [LinearSystem] Introduce ConstantSparsityProjectionMethod
- #4540 [all] Additional fixes further to v24.06 lifecycle
- #4565 [plugins] Remove ExternalBehaviorModel and ManualMapping plugins
- #4547 [LinearAlgebra] Refactor sparse matrix product
- #4544 [Project] Start dev phase v24.06
- #4529 [all] Fix some warnings
- #4533 [all] Lifecycle for v24.06 (2): remove Compat
- #4523 [GUI] Remove the New/Save/SaveAs menu options
- Release 23.12 is out !! --> https://github.com/sofa-framework/sofa/releases/tag/v23.12.00
-
SOFA America Workshop: on 30-31 May in Montreal (Canada)
- Pre-program is available
- Registration is open!
-
SOFA Technical Committee #17: on 10-12 June in Strasbourg (France).
- Registration is open!
-
cmake_minimum_required
should be updated regarding CMakeFetchContent
(find or fetch mechanism → skip, see #4586 - Question on the fusion of SoftRobot and SoftRobot.Inverse and of SofaPython and STLIB plugins
- SoftRobot and SoftRobot.Inverse: complex for license reasons (two distinct repositories and conda packages)
- SofaPython3 and STLIB for now stay separated for Conda.
- Discuss supported plugins → https://github.com/sofa-framework/sofa/wiki/Supported-SOFA-plugins
- Update in ci.yml to be done in order to publish GitHub releases for plugins
- Plugin naming : our policy should now be: adding
Sofa.
prefix to all plugins and the suffix should be light e.g.Sofa.Metis
,Sofa.CGAL
,Sofa.image
. This allows for extern users to understand that it is a SOFA-related code, which follows the SOFA NG format (no need to keep thePlugin
keyword). Will require to also update c++ namespace.
- #4552 [LinearSystem] Introduce ConstantSparsityProjectionMethod This method has a strong interest in the case of a mapping which propagates a sparse K matrix. Performance could even be more improved, looking at the cache management. Adding an example (membrane + volumetric model) → ready
- #4547 [LinearAlgebra] Refactor sparse matrix product Efficient matrix product exploiting the format of constant matrices: keep the structure and update the values. The configuration of these matrices (row major or column major) changes the matrix product. Instead of manually computing the product (assuming one specific configuration), this PR uses Eigen to be agnostic of the (8-possible) matrix configuration and to become more generic. A new scalar type is introduced which includes the scalar value and its indices in the matrix product. → ready
- #4544 [Project] Start dev phase v24.06 → ready
- #4540 [all] Additional fixes further to v24.06 lifecycle → wait for merge of #4533 then ready
- #4533 [all] Lifecycle for v24.06 (2): remove Compat Merge all depends-on → ready
- #4529 [all] Fix some warnings Missing include → wip
- #4523 [GUI] Remove the New/Save/SaveAs menu options → to be tested and then ready
- #404 fix Versioning to allow patches → ready
- #384 [SceneLoader] Add a special error message handler for DeprecationWarning → ready
- #383 Update readme Not needed because the pip installed package is sufficient, it is just needed to modify the CMAKE_PREFIX_PATH to add the path to the cmake files insite of the installed Pybind11. → close
- #381 [GUIManager] Add SofaGLFW and SofaImgui at runtime → close
- #380 [GUIManager] Add SofaGLFW and SofaImgui Add issue to externalise Qt gui from SofaPython3 and force to import it as well. The user experience aspects should be kept in mind. → close
- #4562 [README] Update link to Discord
- #4560 [script] Stale action: remove temporary layer and activate closing
- #4554 [cmake] Remove error in Findcxxopt
- #4564 [Config] Fix findcxxopt when version is not specified
- #4570 [Config] Fix Findmetis module when using config mode
- #4574 [all] Fix tinyxml2 dependency
- #4557 [Core] Update NarrowPhaseDetection.cpp use prefix
- #4535 [Simulation.Core] Make TSAN pass for caduceus
- #402 Update ci.yml
- #403 Fix out-of-tree compilation of dependencies
- #398 Add headers to the library so they're visible in IDE
- #396 Introduce bindings to linear system
- #392 Minor update of README.md
- Release 23.12 is out !! --> https://github.com/sofa-framework/sofa/releases/tag/v23.12.00
- SOFA America Workshop: on 30-31 May in Montreal (Canada). Registration is open!
- SOFA Technical Committee #17: on 10-12 June in Strasbourg (France). Registration is open!
- Discuss supported plugins → https://github.com/sofa-framework/sofa/wiki/Supported-SOFA-plugins
- Update in ci.yml to be done in order to publish GitHub releases for plugins
- #4560 [script] Remove temporary layer and activate closing → ready
- #4554 [cmake] Remove error in Findcxxopt If cxxopts is found but not the right version, it throws a warning only and then it fetches the right version. → ready
- #4552 [LinearSystem] Introduce ConstantSparsityProjectionMethod Looks fine, and impressive speed-ups are presented! → wait for #4547 (else ready)
- #4547 [LinearAlgebra] Refactor sparse matrix product Significant PR, needs a careful review → keep to review
- #4544 [Project] Start dev phase v24.06 Wait (PR drafted) for last cherry-picks in v23.12 to udpate changelog. Then ready. → keep to review
- #4540 [all] Additional fixes further to v24.06 lifecycle → wait for #4533 (else ready)
- #4533 [all] Lifecycle for v24.06 (2): remove Compat Merge all ci depends on → ready
- #4529 [all] Fix some warnings Add narrow_cast → keep to review
- #403 Fix out-of-tree compilation of dependencies Let's merge this PR is MacOS compilation passes. However, tests will have to be fixed subsequently → wait for CI, then ready
- #398 Add headers to the library so they're visible in IDE → ready
- #396 Introduce bindings to linear system → ready
- #392 Minor update of README.md → ready
- #384 [SceneLoader] Add a special error message handler for DeprecationWarning Requesting update on it → keep to review
- #383 Update readme Need some clarification on why pip is not working → will probably be closed
- #381 [GUIManager] Add SofaGLFW and SofaImgui at runtime Need to be decided with @alxbilger and @fredroy → keep to review
- #380 [GUIManager] Add SofaGLFW and SofaImgui Need to be decided with @alxbilger and @fredroy → keep to review
- #372 [CI] Update ci.yml PR is neither up to date and nor relevant anymore → closed
- #4558 [GUI.qt] Set link to tinyxml2 to PRIVATE and fix config file
- #4555 [Visual] Fix cmake config
- #4545 [all] Install FindTinyXML2
- #4542 [Sofa.Testing] Add SimpleApi in Config.cmake.in
- #4538 [Config] Add cxxopts cmake find module
- #4534 [Config] Add TSAN option
- #4526 [SofaSphFluid] Externalize SofaSphFluid
- Lifecycle for v24.06 started
- SOFA America Workshop : 30-31 May in Montreal. See all events online! Save the dates, call for presentation is coming soon!
- Reminder, we migrated our chat to Discord
- Temporary workaround for MacOS users to use non-signed binary
- GUI list through conda: at install of various packages through conda, the gui list file could be edited at each new GUI installed. But it needs to be tested since the path to the plugin_list.conf is edited using CMake variables (CMakeLists of runSofa)
- If it is using the sofa-setup-actions script, the CI of plugins should be updated using the @v5
- Invertible FE Model → to archive
- #4459 [Sofa.Testing] Do not build Sofa.Testing if SOFA_BUILD_TESTS is OFF: Sofa.Testing should externalized in order to bring real modularization → close again
- #4538 [Config] Add cxxopts cmake find module → ready
-
#4536 Refactor a bit the way runSofa is implementing the scenegraph colors
Several points are below this PR:
- define a new design for managing colors by component
- should the color API allow for new colors
- Should Prefab be refactored in Sofa.Core ? → wip (keep only the 2-line change)
- #4535 [Simulation.Core] Make TSAN pass for caduceus Have discussion on making taskSchedueler thread safe during the STC → ready
- #4534 [Config] Add TSAN option Option name should be more explicit: ThreadSanitizer. Try all scene tests with this option. → ready
-
#4533 [all] Lifecycle for v24.06 (2): remove Compat
Fix Windows compilation then ready. Remove
SOFA_SIMULATION_CORE_API
to prevent Windows error. → wip - #4532 [all] Lifecycle for v24.06 (1) Is aimed at being closed. → close
- #4529 [all] Fix some warnings C style cast are bad. → wip
- #4526 [SofaSphFluid] Externalize SofaSphFluid Add flags on the new repository, README and license should be added. → ready
- #4523 [GUI] Remove the New menu option Need to remove corresponding code in RealGUI then ready. Later, remove save button → wip
-
#4429 [All] POC: ObjectFactory: Explicit components registration
Meta module usefulness ? Maybe pass by regex in the plugin manager to include all plugin with same prefix (e.g. including
Sofa.Component
will include allSofa.Component.*
). One workaround to have an acceptable solution would be to pass through a staticgetModuleName
to avoid dynamic string comparison. PluginManager is not satisfactory as the existing design of "meta-modules". ObjectFactory On the user side, RequiredPlugin Objects of concern:- PluginManager -> is singleton the right design?
- ObjectFactory
- RequiredPlugin
- Are meta module necessary ? Create a diagram linking those various objects. → postponed
- #4194 [Geometry] Update method intersectionWithEdge signature and redirect all methods to it in EdgeSetGeometryAlgorithms One unit test on a scene is failing, this does not appear as a false-positive. Should be investigated → wip
- #4513 [DefaultType] Extract inner classes from SolidTypes in files
- #4450 [LinearSolver.Direct] Fix metis dependency
- #4525 [Simulation.Common] Fix tinyXML2 install for windows
- #4530 [GitHub] Fix GH Discussions Announcements for Discord
- #4522 [GitHub] Update version of the actions/github-script
- #4521 [Share] Remove DefaultCollisionGroupManager in the default scenes
- #4517 [image] Fix scene test
- #4482 [all] Apply nested namespaces
- #4494 [Topology] Fix method isQuadDeulaunayOriented and its use in splitAlongPath
- #4490 [LinearSystem] Introduce components to map matrices
- #4504 [Plugins] Move MeshSTEPLoader to an external repository
- #4507 [All] Display reference name when pulling external plugins
- #4509 [Simulation.Core] RequiredPlugin: Avoid calling loadPlugin() twice on start-up
- #4495 [Simulation.Graph] Move SimpleApi into its own library
- SOFA America Workshop : 30-31 May in Montreal. See all events online! Save the dates, call for presentation is coming soon!
- Reminder, we migrated our chat to Discord
- We are thinking about implementing additional mechanical constitutive laws in SOFA :arrow_right: Let us know what you would expect in discussion #4499!
- [Prefabs] PoC will be done to better think their design
- Update about CI builders: seems all fine now (first release binaries being generated). You should update your CI by using ubuntu22.04 and windows-2022 builder and use sofa-setup-action@v5. This is not yet rock solid but will be fixed in the following days. MacOS CI is in a transitive state, will be updated soon.
- [Plugins] Gather external plugins configs in a same folder (proposal) #4505
-
#4513 [DefaultType] Extract inner classes from SolidTypes in files
Missing deprecation layer (due to the move). TODO for the next PR. Move to
sofa::type
instead ofsofa::defaulttype
. → wip - #4509 [Simulation.Core] RequiredPlugin: Avoid calling loadPlugin() twice on start-up → ready
- #4507 [All] Display reference name when pulling external plugins → ready
- #4505 [Plugins] Gather external plugins configs in a same folder (proposal) Idea to better identify fetched and in source plugins. Better would be to externalize all plugins (except Multithreading, SofaCUDA and SofaPython3) for a cleaner understanding. → close
- #4504 [Plugins] Move MeshSTEPLoader to an external repository Should be hosted under the sofa-framework organization. Add SOFA_FETCH_MESHSTEPLOADER=ON in the CI → ready
- #4494 [Topology] Fix method isQuadDeulaunayOriented and its use in splitAlongPath → ready
- #4490 [LinearSystem] Introduce components to map matrices Added example to illustrate the definition of MatrixProjectionMethod. As a reminder, this component by default is automatically added as a Slave → ready
- #4482 [all] Apply nested namespaces Issue with CI, restart to test one last time. Test on SofaPython3 failing due to missing scipy. → CI then ready
- #4429 [All] POC: ObjectFactory: Explicit components registration Remame RegisterObject as ObjectRegistrationData and add a deprecation layer. Handle the meta-module (e.g. Sofa.Component) to make sure that objects are not registered twice. ObjectFactory keeps this information but requires the PluginManager singleton. Not yet satisfied about the way we detect multiple registration of objects. Alex will take a look at it. → keep to review
- #4194 [Geometry] Update method intersectionWithEdge signature and redirect all methods to it in EdgeSetGeometryAlgorithms Wait for #4494 then ready → ready
- #4506 [Simulation.Common] Fix downstream project compilation with tinyXML2
- #4326 [SofaAssimp] Fix the FindAssimp.cmake
- #4240 [all] Replace tinyxml by external tinyxml2
- We are thinking about implementing additional mechanical constitutive laws in SOFA :arrow_right: Let us know what you would expect in discussion #4499!
- SOFA America Workshop : 30-31 May in Montreal. Save the dates, call for presentation is coming soon!
- Reminder, we migrated our chat to Discord 💌
- [SofaGym] Use several SOFA simulations in python: 2 SOFA is parallel can run but not more using
os.fork
. Alex experienced C++ parallelism but less of python.tools/sofa-launcher
could be useful to launch several well-separated SOFA. A meeting with Samuel will be schedueled. - [Prefabs] Discussion incoming this week
- The process of actually updating the builders started. The new builders should be up and running by the end of the week.
- The PR#4496 [Config] POC: enable assertions even in release mode shows errors in scene tests coming from asserts that are not usually tested in release mode. Those error should be fixed in the following weeks.
- #4498 Update badge README.md → ready
- #4495 [Simulation.Graph] Move SimpleApi into its own library → ready
- #4494 [Topology] Fix method isQuadDeulaunayOriented and its use in splitAlongPath Failing test to fix. → wip
- #4491 [Helper] PluginManager Fix test in debug → ready
- #4490 [LinearSystem] Introduce components to map matrices Goal is to accelerate computation for cases where J (the mapping jacobian) is dense (e.g. MOR). In the future : develop new method for mappings for different usecases (e.g. ConstantSparsityPattern or Multithread). TODO: Add a scene to show the usage & use appropriate class names → then ready
- #4487 [VolumetricRendering][SofaCUDA] Move CUDA files related to VolumetricRendering → ready
- #4486 [Config] CMake: fix warning about upper/lowercase for Difflib Testing the reactivation of the regression tests on windows → ready
- #4485 [all] Convert some loops to range-based Need some more careful review before merging. → keep to review
- #4484 [image] Fix compilation on Windows Ambiguity related to CImg code. → ready
- #4482 [all] Apply nested namespaces Need to revert modifications on Indicators.hpp → then ready
- #4450 [LinearSolver.Direct] Fix metis dependency Need to update the fetch to checkout the right branch on our fork (5.1.0) → keep to review
- #4429 [All] POC: ObjectFactory: Explicit components registration We must first deprecate old way then modify all plugins to follow this new way of doing. The full propagation of the new API must be done before merging it. TODO: add warning at runtime → keep to review
- #4326 [SofaAssimp] Fix the FindAssimp.cmake Last core-dev review then ready → to review
- #4316 [SofaSPHFluid] Add option in ParticleSource to add/remove random values in the particles generation. Remove noise for CI scenes → ready
- #4240 [all] Replace tinyxml by external tinyxml2 Last core-dev review then ready → to review
-
#4194 [Geometry] Update method intersectionWithEdge signature and redirect all methods to it in EdgeSetGeometryAlgorithms
Depends on #4494 fixing the
isQuadDeulaunayOriented
method. Then this will fix the failing regression test → then ready
- #4477 [Core][LinearSolver] Introduction of ordering method components
- #4428 [LinearSystem] Detect changes in sparsity pattern when using ConstantSparsityPatternSystem
- #4464 [Helper] PluginManager: testing loading a plugin with a dependency on an other plugin
- #4489 [Testing] Fix installation of gtest headers
- #4483 [all] Missing override keyword
- #4471 [Testing] Externalize (find_package() or fetch) googletest/gtest
- #4466 [Helper] PluginManager: Check symbol (real) location and avoid calling wrong entrypoint (Mac/Linux)
- Feedback from the Sofa-Slicer integration project at Slicer Project Week.
- New plugin tree instanciations, pr to review : BeamAdapter and SoftRobots → Need to add these requirements to the doc itself to officialize this.
- Regression tests not working on Windows because the exe cannot open libPython38.dll although the test scenes work → Investigate the path at the execution of Regression_test.exe and runSofa.exe to see if there are any differences.
- Issue #393 on SofaPython3 linking on libPython → Try to use an intermediate lib that link to SofaPython3 and libPython that load libPython first bootstraping the loading. This is heavy and should be transparent for users and may affecty every distribution.
- #4477 [Core][LinearSolver] Introduction of ordering method components Modularization of the ordering method in a component allowing to remove Metis dependency in a plugin. → ready
- #4471 [Testing] Externalize (find_package() or fetch) googletest/gtest Remove gtest sources and update the version of this library. → ready
- #4450 [LinearSolver.Direct] Fix metis dependency It overrides the PR 4266, at the end we want to. Problem with install (copying of tinyXML2 and metis) should be discussed later on. → keep to review
- #4429 [All] POC: ObjectFactory: Explicit components registration Waiting for 4466 and 4464, wait for rebase and decide if the new design is good for all of us. Would require to add a documentation before the merge. → keep to review
- #4428 [LinearSystem] Detect changes in sparsity pattern when using ConstantSparsityPatternSystem The PR introduces a mechanism avoiding crashes when the pattern changes by ignoring new matrix entry, resulting in an explicit formulation of those new forces. This requires to monitor the pattern at each timestep which takes a lot of time : this is indeed only for debugging purposes. → ready
- #4478 [SofaCUDA] Fix spatial grid compilation with double
- #4474 [framework] Fix typo
- #4476 [GitHub] Use finally pull_request_target
- #4469 [All] CMake: Remove deprecation warnings
- #4475 [GitHub] Fix PR messages not properly sent
- #4467 [Testing] Deprecate BaseSimulationTest::importPlugin
- Project on integrating SOFA into Slicer has been accepted at the Slicer Project Week. SOFA will be represented there!
- Migration from Gitter to Discord : share your feedback
- New paper comparing SOFA for sim-2-real gap in robotics: https://arxiv.org/abs/2310.09543
- Prefab discussion ongoing
- Issue #393 on SofaPython3 linking on libpython
-
#394 proposes:
- remove pybind embed in CMakeLists of SofaPython3
- use the modern command pybind (pybind_add_module) which was reimplemented in SOFA (see SofaPython3Tools.cmake).
- however, the change could be applied at plugin initialization, to early manage the libpython loading
-
#394 proposes:
- #4471 [Testing] Externalize (find_package() or fetch) googletest/gtest PR should be tested: e.g. compile SP3 out-of-tree with an install version of SOFA. To be backported and tested at released → keep to review
- #4469 [All] CMake: Remove deprecation warnings → ready
- #4467 [Testing] Deprecate BaseSimulationTest::importPlugin → ready
- #4466 [Helper] PluginManager: Check symbol (real) location and avoid calling wrong entrypoint (Mac/Linux) See #4464 discussion → ready
- #4464 [Helper] PluginManager: testing loading a plugin with a dependency on an other plugin When a plugin depends on another plugin, and when the former does not define some plugin symbols, the PluginManager seeks for these symbols in the dependencies. See issue #4462 here. This PR along with #4466 → ready
- #4459 [Sofa.Testing] Do not build Sofa.Testing if SOFA_BUILD_TESTS is OFF Link with gtest was performed even if SOFA_BUILD_TESTS is off, this PR prevents this. However, we might rather need to distinguish two cases: build the tests vs the test API (Testing). #4471 should be sufficient on conda but another → wip, to possibly find a CMake alternative
-
#4450 [LinearSolver.Direct] Fix metis dependency
Replace #4266.
find_package
and if not existing use the fork 5.2.1 created by Paul. Due to the conda community timing, we might have to backport the fork to the 5.1.0 → keep to review - #4429 [All] POC: ObjectFactory: Explicit components registration Test of int operator depreciation (not yet committed). Wait for the other PR on plugin configuration → keep to review
- #4468 [GitHUb] Fix actions using cron condition
- #4455 [SofaDistanceGrid] remove shadow variable
- #4454 [Spring] Extract LinearSpring class in its own file
- #4465 [Defaulttype, LinearAlgera] Fix warnings
- #4456 [GitHub] Fix action using github.context
- #4448 [All] Add GIT_REF option for external plugins
- #4443 [StateContainer] Accelerate copy of MatrixDeriv for CRS matrices
- #4442 [LinearAlgebra] Factorize value filtering
- #4430 [SofaCUDA] Generalize the use of MessageDispatcher in SofaCUDA
- #4445 [GitHub] Add new actions to connect GitHub and Discord
- #4370 [LinearSolver.Direct] Introduce other ordering methods in SparseLDL through Eigen
- Project on integrating SOFA into Slicer has been accepted at the Slicer Project Week. SOFA will be represented there !
- Ubuntu builder are finished. Windows still pending
- SOFA America Workshop may occur early June: what about STC#17 dates?
- Migration from Gitter to Discord
- Issue #393 on SofaPython3 : Conda binaries are linked statically with libpython, which causes segfault on MacOS when loading another lib that is dynamivally linked to libpython. This is the case of libSofaPython3 linking with pybind11::embed (the python interpreter) which it self links to libpython.
- Good first idea seems to be decouple the library and extract the 'interpreter' part in order to remove the dynamic link
- A quick fix would be to compile on mac with the option
-undefined dynamic_linking
and force the libpython loading withDYLD_INSERT_LIBRARIES=$CONDA_PREFIX/lib/libpython3.10.dylib ./runSofa
libpython with runSofa. The PR #394 can be a temporary fix/hack using pybind - Too many RPath defined in Bindings, this should be fixed in a later PR
- METIS version distributed by conda and the reason it is not fit for our package (GKRand, segfault): more recent versions of 5.1.0 have been tested to be compatible with conda but not GKRand and 5.1.1 fails. More recent versions are not available on conda-forge
:arrow_right: we use a
find_package
and remove the embeded METIS version and rely on the 5.1.0 without GKRand and wait for the 24.06 to pluginize METIS-based code
- #4450 [LinearSolver.Direct] Dynamically link with embedded metis Need to add the find (v5.1.0) of fetch (our fork) mechanism. → keep to review
- #4448 [All] Add GIT_REF option for external plugins → ready
- #4445 [GitHub] Add new actions to connect GitHub and Discord Preparation for the SOFA Discord channels migration. Add many action that send insights messages on the discord server → ready
-
#4443 [StateContainer] Accelerate copy of MatrixDeriv for CRS matrices
Copy is now faster, especially with large mapped matrices.
copyToBaseMatrix
now takes about 2ms. This could be improved again for MOR were the mapping jacobian is constant so no copy is needed. → ready -
#4442 [LinearAlgebra] Factorize value filtering
CompressedRowSparseMatrixMechanical includes a
filterValues()
function which is templated. CompressedRowSparseMatrixMechanical.cpp defines 4 specialization of this function. Now everything is factorized. The object is that thefilterValues(TMatrix& ...)
handles only CompressedRowSparseMatrixMechanical but we would like also the CompressedRowSparseMatrixConstraint to be supported → ready - #4430 [SofaCUDA] Generalize the use of MessageDispatcher in SofaCUDA → ready
-
#4429 [All] POC: ObjectFactory: Explicit components registration
Still need to think about the compatibility/depreciation layer. The next PR about it should suggest this layer. Remove the static boolean
registered
and remove compatibility for the component MappedObject. To be rediscussed next week → keep to review - #4428 [LinearSystem] Detect changes in sparsity pattern when using ConstantSparsityPatternSystem Still one unit test failing → rebase and keep to review
- #4395 [VolumetricRendering][SofaCUDA] Move CUDA files related to VolumetricRendering Document the plugin ordering to make it easier to apply it to new plugin creations → to be closed and restarted in a fresh PR
- #4370 [LinearSolver.Direct] Introduce other ordering methods in SparseLDL through Eigen A test was failing and AMD was failing → ready
- #4453 [SofaCUDA] Initialize module from another module
- #4447 [Helper] Fix new[]/delete mismatch
- #4451 [CMake] Fix SOFA install
- #4410 [All] Rename license file into LICENSE-LGPL.md to follow github repository rules
- #4425 [plugins] Update license to LGPL of remaining files
- #4444 [GitHub] Clean existing actions
- #4436 [VolumetricRendering] Fix crashes in batch mode
- Project on integrating SOFA into Slicer has been proposed to Slicer project week
- Preparation of the upcoming release v23.12 started
- Builder Windows: template being set up :
- might need to update METIS version https://ci.inria.fr/sofa-ci-dev/job/sofa-custom/CI_CONFIG=ubuntu_gcc,CI_PYTHON3_VERSION=3.10,CI_TYPE=release/7632/testReport/ --> cette compil est faite avec metis 5.2.1 (branche creee sur notre repo.) parce que la 5.1.1 segfaultait malgré les modifs d'Alex. (Oui c'est build avec GKRand à ON)
- [All] POC: ObjectFactory: Explicit components registration #4429
- In an effort to include SOFA into a browser, a compilation of SOFA as a static library was needed. Several issues were faced : one of them being the RegisterObject functions (ObjectFactory). There was therefore the need to remove singleton like ObjectFactory and to explicit component registration
- Static compilation would be good anyway
- Choice is made to go further with Alex's first suggestion and refactoring of registerObject could be done later: factory triggers the commit → another pass will be done by Fred
- [plugins] Update license to LGPL of remaining files #4425
- #4436 [VolumetricRendering] Fix crashes in batch mode → ready
- #4430 [SofaCUDA] Generalize the use of MessageDispatcher in SofaCUDA Wait for the scene tests then ready → keep to review
- #4429 [All] POC: ObjectFactory: Explicit components registration See above discussion → keep to review
- #4428 [LinearSystem] Detect changes in sparsity pattern when using ConstantSparsityPatternSystem One last test in MatrixLinearSystem_test is failing and last review needed. Else the concept works. → keep to review
- #4425 [plugins] Update license to LGPL of remaining files → ready
- #4410 [All] Rename license file into LICENSE-LGPL.md to follow github repository rules → ready
- #4395 [VolumetricRendering][SofaCUDA] Move CUDA files related to VolumetricRendering Discussions lately last week converged to an ideal format of a plugin described here → keep to review
- #4432 [Core] Call super init() in MultiMapping and Multi2Mapping
- #4431 [Core] Add documentation for the method BaseMapping::buildGeometricStiffnessMatrix
- #4396 [Type] Refactor Mat
- #4422 [sofaInfo] Fix compilation and behavior
- #4420 [All] Fix subplugin regression tests
- #4205 [Lagrangian.Correction] Add callbacks to check zero compliance
-
Agenda 2024 is released! Save the dates!!
- Next STC#17 will be held in Strasbourg on June 10-12
- SOFA Week 2024 will be held in Lille on Nov 25-29
- Preparation of the upcoming release v23.12 started
- Builder Windows: template being set up
- Questions on the python find_package in SofaPython3
- CMakeLists.txt : the variable PYBIND11_PYTHON_VERSION is declared and only used here in place of the Python version --> why not use PYTHON_VERSION.
- It might also be usefull to add the parameter EXACT that'll help force the python version to one (this is cumbersome on MAC OS where it is current to have multiple python version installed)
- Licenses: some remaining GPL codes remain mostly SceneCreator and in SofaTest. What should we do? Pass it to LGPL or externalize (see #4416)
- NanoBind an interesting alternative to pybind
- When using constant parsity pattern, a check can be added when inserting to make sure that the pattern is respected. This test has a cost
- It could be conditioned though a data (checkIndices already existing)
- Ideas on the use of flags set by downstream components if their pattern has changed can be more efficient
- Doubt about the interest of the block3x3 optimization case
- #4422 [sofaInfo] Fix compilation and behavior Depends on PR on ci → ready
- #4420 [All] Fix subplugin regression tests Create issue to rethink the way it is done: maybe centralize the regression-tests files in Regression plugin. → ready
- #4410 [All] Rename license file into LICENSE-LGPL.md to follow github repository rules Wait for removing of remaining GPL files then ready → keep to review
- #4396 [Type] Refactor Mat → ready
- #4395 [VolumetricRendering][SofaCUDA] Move CUDA files related to VolumetricRendering Add symetry and remove entrelacing folders. A dedicated discussion took place, we came up to this proposal → keep to review
- #4370 [LinearSolver.Direct] Introduce other ordering methods in SparseLDL through Eigen Create issue for AMD : not compiling and correct the unit tests. → keep to review
- #4205 [Lagrangian.Correction] Add callbacks to check zero compliance Add comments → ready
- #4194 [Geometry] Update method intersectionWithEdge signature and redirect all methods to it in EdgeSetGeometryAlgorithms → keep to review
- #4417 [README] Minor update badges
- #4389 [Constraint.Lagrangian.Solver] Fix assert in GenericConstraintSolver
- #4398 [VolumetricRendering] Fix the compilation
-
Agenda 2024 is released! Save the dates!!
- Next STC#17 will be held in Strasbourg on June 10-12
- SOFA Week 2024 will be held in Lille on Nov 25-29
- Preparation of the upcoming release v23.12 started
- Issue raised in discussions #4281 about update of anisotropic inertia matrix for rigids
- #4410 [All] Rename license file into LICENSE-LGPL.md to follow github repository rules Changed the license file to allow github to display the license in the about part of github. This would add problems with the gui and/or the plugins that are not in LGPL. Still requires some discussion. → keep to review
- #4398 [VolumetricRendering] Fix the compilation → ready
- #4396 [Type] Refactor Mat PR is fine, just a change had to be done in Multithreading FF. Alex's review would be needed → keep to review
- #4395 [VolumetricRendering][SofaCUDA] Move CUDA files related to VolumetricRendering New suggestion has been made, conclude about it with Alex → keep to review
- #4389 [Constraint.Lagrangian.Solver] Fix assert in GenericConstraintSolver → ready
- #4370 [LinearSolver.Direct] Introduce other ordering methods in SparseLDL through Eigen Still one unit test failing and reviews added → keep to review
- #4194 [Geometry] Update method intersectionWithEdge signature and redirect all methods to it in EdgeSetGeometryAlgorithms Still one unit test failing → keep to review
- #4388 [Topology.Mapping] Edge2QuadTopologicalMapping: use States directly
- #4362 [Topology.Container.Dynamic] GeometryAlgorithms: support generic State
- #4361 [Topology.Mapping] Edge2QuadTopologicalMapping: use Links for required QuadSet components
-
Agenda 2024 is released!
- Next STC#17 will be held in Strasbourg on June 10-12
- SOFA Week 2024 will be held in Lille on Nov 25-29 Save the dates!!
- Preparation of the upcoming release v23.12 started
- GitHub Discussions
- Stale action running
- Centralized for all plugins (except SoftRobot for now)
- Add links to the proper discussion category in each plugin README
- Metis upgrade to 5.2.1
-
#4395 [VolumetricRendering][SofaCUDA] Move CUDA files related to VolumetricRendering
This begins a big refactoring of the SofaCUDA plugin. Externalizaing the cuda-based code of external plugins into the plugins themselves. This is a first suggestion, that will then be applied to the rest of the code. Alex wants to continue thinking about a hat plugin (having the cuda plugin inside the cpu plugin) to ease the user comprehension of what is compiled and where is everything.
→ wip - #4390 [SofaSimpleGUI] Fix calls to deprecated functions → ready
- #4389 [Constraint.Lagrangian.Solver] Fix assert in GenericConstraintSolver An assert in the creation of the MultiVecCoordId appeared in Debug when constraints were not solved in velocity. See if an optional pointer would better work than a unique one. → keep to review
- #4388 [Topology.Mapping] Edge2QuadTopologicalMapping: use States directly The condition used to know if the state is mechanical to know if ApplyJ has to be called seems weak. An issue will be opened. → ready
- #4386 [github] Add new action checking PR age → ready
- #4370 [LinearSolver.Direct] Introduce other ordering methods in SparseLDL through Eigen Failing test in StaticSolver. Need to investigate and test performances. → wip
- #4362 [Topology.Container.Dynamic] GeometryAlgorithms: support generic State → ready
- #4361 [Topology.Mapping] Edge2QuadTopologicalMapping: use Links for required QuadSet components → ready
- #4360 [Core] BaseMapping: link mapConstraints to the "meta-alias" isMechanical → ready
- #4357 [CImgPlugin] Add fetchable CImg and remove embedded cimg → ready
- #4356 [Config] CMake: support interface-type target for install macro → ready
- #4334 [Core] POC introduction of iterators on scene graph Work on merging BaseContext and BaseNode should first be addressed since the iterator would need to be able to iterate on both, but they have a different inheritance. → suggest to close
- #4333 [Core] Refactor VMultiOpEntry → wip
- #4309 [Constraint.Projective] Implement applyConstraint from new matrix assembly API Renamed data got reverted, now ready → ready
- #4302 [Constraint] Make name of constraints more explicit Constraints (Lagrangian and projective) got renamed. A new feature has been added to define in the ComponentChange renamed components. A check is added in the ObjectFactory to check whether the class is renamed and if so it creates the class with a warning. → ready
- #4392 [MultiThreading] Fix failing test on ParallelImplementationsRegistry
- #4393 [Core] Remove pragma directive in cpp file
- #4355 [LinearAlgebra] Factorize template specializations of filterValues in CRS matrix
- #4391 [Type] Remove test of a deprecated constructor
- #4363 [Mapping.Linear] Replace a few beginEdit by accessors
- #4354 [GUI] Fix compilation using QDocBrowser
- #4352 [LinearAlgebra] constexpr if statement when possible
- #4351 [LinearAlgebra] Use class template argument deduction with MatrixExpr
- #4348 [github] fix stale action
- #4328 [Simulation.Core] Remove usage of ill-used nodeData in MechanicalGetNonDiagonalMassesCountVisitor and MechanicalVDotVisitor
- Preparation of the upcoming release v23.12 started
- Welcome to new InfinyTech3D member : Ronak Molazem. She also joined the SOFA dev team !
- GitHub Discussions
- Reordering upcoming to welcome dedicated area for Community Help on Plugins
- Question on the case of SoftRobot
- Question on regrouping InfinyTech3D plugins (Unity ?)
- #4348 [github] fix stale action --> ready to update all discussions
- Reordering upcoming to welcome dedicated area for Community Help on Plugins
- Test SoftRobots on CI with scene
examples/tutorials/Tripod/myproject/step7.py
and it will be fixed by adding theserial
python package on the new builders - Auto differentiation of simulation in SOFA: roadmap defined at the DEFROST team
- #4357 [CImgPlugin] Add fetchable CImg and remove embedded cimg → to review
- #4356 [Config] CMake: support interface-type target for install macro Work to go for a fetch of CImg instead of using the heavy embedded cimg. However, this is an interface and it requires some work with not-recent versions of CMake. → to review
- #4355 [LinearAlgebra] Factorize template specializations of filterValues in CRS matrix → ready
- #4354 [GUI] FIX QDocBrowser To be tested in the compilation (hugtalbot) → then ready
- #4352 [LinearAlgebra] constexpr if statement when possible → ready
- #4351 [LinearAlgebra] Use class template argument deduction with MatrixExpr → ready
- #4350 [Simulation.Core] BaseMechanicalVisitor: Deprecate rootData → ready
- #4348 [github] fix stale action → ready
- #4334 [Core] POC introduction of iterators on scene graph POC is good, doesn't compile and allow to not rely on visitors, but still rely on a need of a global conductor (not entirely "visitor-less" as we might think of). The mechanism is of interest for some core components to make the call of their methods more explicit. → wip
- #4333 [Core] Refactor VMultiOpEntry The code doesn't compile rigth now and the goal is not yet reached. A question arised on the performance impact regarding the complexity : is it really worth it ? The cuda version may be worth it actually. → wip
- #4328 [Simulation.Core] Remove usage of ill-used nodeData in MechanicalGetNonDiagonalMassesCountVisitor and MechanicalVDotVisitor → ready
- #4326 [SofaAssimp] Fix the FindAssimp.cmake Failing on Windows, will work on future builders → wait for new builder and keep to review
- #4324 [All] Changed message for scene check Wait for #4302 → wait for new builder and keep to review
- #4309 [Constraint.Projective] Implement applyConstraint from new matrix assembly API Review to be taken into account → wip
-
#4302 [Constraint] Make name of constraints more explicit
UnilateralInteractionConstraint will become UnilateralLagrangeConstrainst. PR seems ready. Issue with the
SofaConstraintSolver_matrix_access_test_matrix_access
, check aliases with templates → to review (quickly) - #4266 [all] Externalize metis Add fork of METIS to ease the process of building/packaging → wait for new builder
- #4240 [all] Replace tinyxml by external tinyxml2 → wait for new builder
- #4205 [Lagrangian.Correction] Add callbacks to check zero compliance Need to talk to Christian → wip
- #4296 [Type] Refactor Vec
- #4242 [Topology] Check indices out-of-bound in TriangleSetTopologyContainer
- #4338 [Haption] Partially fix the plugin
- #4347 [github] quick fix for GHD script
- #4330 [image] image_gui to compile with Qt6
- #4327 [Simulation.Core] Deprecate LocalStorage feature
- #4268 [GitHub] Add a python-based action managing discussions
- #4325 [ODESolver] Fix compilation with SOFA_NO_VMULTIOP
- #4301 [SolidMechanics] Implement buildStiffnessMatrix for PolynomialSpringsFF
- SOFA consortium will be at Inria’s Programme santé numérique doing a demo during the SOFA-dev meeting, Alex will be your host
- New hire at InfinyTech3D
- Haption plugin: no longer maintained. Could be externalized. In the meantime, we could make some changes so it can be compiled on the CI (to maintain compatibility with SOFA) using a fake virtuoseAPI header. Probably same conclusion with Xitact.
- [#383] -> More information requested
- #381 [GUIManager] Add SofaGLFW and SofaImgui at runtime → need more time to review. Review requested from the consortium
- #380 [GUIManager] Add SofaGLFW and SofaImgui → need more time to review. Review requested from the consortium
- #379 [Environment] Use standard python paths → ready
- #376 [all] Fix warnings → Changes requested
- #375 [Environment] Fix test for plugins envvars → ready
- #372 [CI] Update ci.yml → Question if the PR is still relevent?
- #352 [doc] Rebuild the sphinx documentation for SofaPython3 → WIP because of merge problems. @hugo BACK TO WORK!!!
- #4341 [ODESolver.Backward] Convert double to SReal in NewmarkImplicitSolver →
- #4338 [Haption] Partially fix the plugin →
- #4334 [Core] POC introduction of iterators on scene graph → compilation failing but the feature seems interesting
- #4333 [Core] Refactor VMultiOpEntry → compilation failing but the feature seems interesting
- #4330 [image] image_gui to compile with Qt6 → ready. Consider using Qt6 on the CI
- #4328 [Simulation.Core] Remove usage of ill-used nodeData in MechanicalGetNonDiagonalMassesCountVisitor and MechanicalVDotVisitor → changes requested: convert SReal to an integer
- #4327 [Simulation.Core] Deprecate LocalStorage feature → ready
- #4326 [SofaAssimp] Fix the FindAssimp.cmake → wait for new builders
- #4325 [ODESolver] Fix compilation with SOFA_NO_VMULTIOP → ready
- #4324 [All] Changed message for scene check → Conflicts, and the base PR must be merged first
- #4316 [SofaSPHFluid] Investigate CI failing regression → Still in WIP
- #4309 [Constraint.Projective] Implement applyConstraint from new matrix assembly API → Depreciation requested
- #4303 [image] Merge CImgPlugin into image → discussion on the CImg dependency. Should we move the dependency out of SOFA instead of hosting the source code?
- #4302 [Constraint] Make name of constraints more explicit → Still WIP
- #4301 [SolidMechanics] Implement buildStiffnessMatrix for PolynomialSpringsFF → ready
- #4296 [Type] Refactor Vec → ready. Another PR is requested to restore some performances on matrices
- #4268 [GitHub] Add a python-based action managing discussions → postponed
- #4266 [all] Externalize metis → wait for new builders
- #4240 [all] Replace tinyxml by external tinyxml2 → wait for new builders
- #4205 [Lagrangian.Correction] Add callbacks to check zero compliance → Still need more information in the rigid case using zero compliance
- #4270 [All] ColorMap uses RGBAColor
- #4263 [Type] RGBAColor: remove inheritance from type::fixed_array and use std::array to store its components
- #4304 [SolidMechanics.Springs] Cleaning of QuadularBendingSprings
- #4332 [FEM.Elastic] Reference instead of a copy in TriangularFEMForceField
- #4291 [all] Fix warnings
- #4295 [SolidMechanics.Spring] Implement buildStiffnessMatrix for TriangularBendingSprings
- #4322 [All] Changed default plugins
- SOFA consortium will make a demo at Inria's Programme santé numérique on Dec 6th (Paris Santé Campus)
- Preparation of the agenda 2024
- SOFA integration into 3D Slicer: ongoing discussion with core developer team. Better define what is targeted as an integration. → We must be careful of the boundaries of such integration to insure that it stays stable (only projective, only volumetric mesh etc...). Mays also be used for visualization or registration.
- Question on Jenkins maintenance on Inria's side. They question the use of it given their gitlab solution, but it is not a solution for us because we need to stay on github. May require at some point to only rely on github actions.
- Metis compilation for windows : maybe compile/use both version 64/32 regarding the
SReal
type - SolidTypes : includes several pieces of codes like Frame, Transform
- #4320 [Collections] Remove reference to non-existing SofaSimulation → ready
- #4319 [SofaCUDA] FIX compilation SofaCUDA along with SparseGrid with Cuda12 → ready
- #4317 [LinearSystem] Speedup computation of Jacobian matrices When there are interaction forcefields, those forces can be applied to multiples mechanical states. But when there isn't multiple mechanical state, the jacobean computation can be speedup by not computing the same jacobean twice. Other optimization will come in the future (particularly for MOR). → ready
- #4314 [Core] Minor clean of DefaultAnimationLoop Cleaning codes that were factorized from the AnimateVisitor but implementing useless Lagrange constraints in the DefaultAnimationLoop → ready
- #4302 [Constraint] Make name of constraints more explicit Changes were not taken into account and this will be done further to v23.12 → wip
-
#4301 [SolidMechanics] Implement buildStiffnessMatrix for PolynomialSpringsFF
Change timer name, possibly change
m_dimension
toDeriv::total_size
and update license header → then ready - #4296 [Type] Refactor Vec → wait for #4270
- #4295 [SolidMechanics.Spring] Implement buildStiffnessMatrix for TriangularBendingSprings → ready for 24.06
- #4294 [Sofa/MechanicalLoad/TrianglePressureForceField] Add buildStiffnessMatrix to TrianglePressureForceField Comments not taken into account → back to wip
- #4291 [all] Fix warnings Revert change of data nbThread to keep it as int to handle negative values (corresponding to the number of cores minus this value) → wip
- #4290 [Sofa.GUI.Qt] Add cmake module for QGLViewer → ready
- #4270 [All] ColorMap uses RGBAColor → wait for #4263
- #4263 [Type] RGBAColor: remove inheritance from type::fixed_array and use std::array to store its components → ready for 24.06
- #4205 [Lagrangian.Correction] Add callbacks to check zero compliance Ask for information about zero compliance in rigid case → keep to review
- #4308 [GUI.Qt] Minor single-line cleaning
- #4258 [LinearSolver] Remove CSparse-based linear solvers
- #4293 [LinearAlgera, Core] Fix linking with LTO on MacOS/Clang
- Feedback from SOFA Week 2023 & STC #16
- Awards:
- Ask for last release compatibility or a demo video
- Ask for some slide upon inscription to have some insights on what it does
- Add a "level of expertise" rating for the jury, for each contribution, to ponderate the grade.
- Symposium:
- Be more strict on registration timeline and abstract review to guaranty quality
- Last minute registration for presentation will not be allowed anymore (add dead line for pres inscription)
- Have more break time to talk and see the booths
- Add timer to keep a hand on the clock
- Have a last organized drink on site after the conference to debrief and cool down a bit (instead of more break time)
- STC:
- No question when presenting to keep the clock
- For last six month maybe keep the presentation for the consortium --> only presentation of the next six months
- Prepare and identify a bit more the roadmap subject to clearly define the person in charge of the roadmap
- The sprint time is maybe not sound because of the lack of good dev tool (laptop), we cannot really make ground changing PRs. May be good to define more doable issue beforehand. It should maybe stay a place for discussion of technical subject, to be well defined (e.g. conda package)
- Awards:
- Late June 2024: Deformation in Robotics Summer School
- Finalize discussion on SOFA Conda packages
- The following division has been agreed upon:
- sofa-core (including the core that we said + the batch runSofa)
- sofa-python3 (+ stlib)
- sofa-beamadapter
- sofa-modelorderreduction
- sofa-softrobots (direct and inverse robotics)
- sofa-cosserat
- sofa-gl
- sofa-gui-qt
- sofa-gui-glfw (glfw + imgui) --> not prioritary
- sofa-advanced (with all the rest) --> not prioritary
- In SOFA.Gui a part of the code includes component/common which could be part of sofa-core
- The following division has been agreed upon:
- Regression tests should be fixed
- BeamAdapter:
- SPHFluid: references should be updated
-
#4302 [Constraint] Make name of constraints more explicit
Discuss on InteractionLagrangian with hugo and remove all the ProjectTo on projective constraints. Add info on the name changing in dedicated file
Sofa/framework/Helper/src/sofa/helper/ComponentChange.cpp
. → wip - #4301 [SolidMechanics] Implement buildStiffnessMatrix for PolynomialSpringsFF Launch test to check regression → then ready
- #4296 [Type] Refactor Vec Wait for rebase, tests and full build → keep to review
-
#4295 [SolidMechanics.Spring] Implement buildStiffnessMatrix for TriangularBendingSprings
Use of the
AsyncSparseLDLSolver
prevents this scene to be used as a regression but highlights the use of this asynchronous direct solver → ready -
#4294 [Sofa/MechanicalLoad/TrianglePressureForceField] Add buildStiffnessMatrix to TrianglePressureForceField
Discrepancy between disabling and deprecating. The PR could be split in two: add the
buildStiffnessMatrix
and deprecated the data for non-constant forces (this latter topic should re-discussed) → wip - #4291 [all] Fix warnings Check scene errors → wip
- #4290 [Sofa.GUI.Qt] Add cmake module for QGLViewer Plugin image fails, investigate qt.config or cmake.in → wip
- #4270 [All] ColorMap uses RGBAColor Propagate consistency, CI says ok. → wait for #4263 ready
- #4263 [Type] RGBAColor: remove inheritance from type::fixed_array and use std::array to store its compRGBAColoronents → ready
-
#4258 [LinearSolver] Remove CSparse-based linear solvers
Unit test are failing, probably due to the mis-use of
ci-depends-on
. CMake version in the plugin should be updated → waiting for tests, then ready
None (too busy discussing at the Technical Committee)
❌ No meeting due to the SOFA Week 2023!
- 🚨🚨🚨 Last week before the SOFA Week 2023🚨🚨🚨
- Agenda of the SOFA Technical Committee #16 will be presented
- Next July 2024: Deformation in Robotics Summer School
- Use of vcpkg or conan for external libraries (or simple compilation for the CI)
- one or the other is more of a guess
- common work (between olivier and the consortium) will append after the sofa week to speed up the release of the ne ci environement and the binaries
- #4274 [SofaCUDA] Dont use both version of cublas (legacy or v2) → ready
- #4270 [All] ColorMap uses RGBAColor → wait for #4263 and ready
- #4268 [GitHub] Add a python-based action managing discussions Test it internally → then ready
-
#4266 [all] Externalize metis
The metis package available on conda is built without the
GKRAND
option which improves the results. So it would require to install it differently, which apparently does not garantee to have the same results. May be fixed by using a mechanism of the typefind or fetch
but compatible with CMake 3.22 (same as what is done for cxxopt). But this will work only if there is one plugin dependent to metis. Eigen could be a source of inspiration → keep still to review - #4263 [Type] RGBAColor: remove inheritance from type::fixed_array and use std::array to store its components The PR lacks some features previously enabled by the fact that it inherited from fixed-array. Those features can be added later if needed (such as multiplication or division by a scalar). Update lifecycle versions and reply to reviews. → then ready
- #4258 [LinearSolver] Remove CSparse-based linear solvers Solver replaced with the Eigen LLT. Save the previous scenes in the new plugin. → wip
- #4257 [all] Externalize nlohmann_json dependency with find or fetch mechanism Without the find or fetch mechanism (replaced by a find_package + package manager), it may not make sense anymore → close
- #4240 [all] Replace tinyxml by external tinyxml2 Wait for new CI builders → keep still to review
- #4205 [Lagrangian.Correction] Add callbacks to check zero compliance Factorize the boiler plate code in traits (sofa::type). In rigid cases, is this normal to have zero compliance? → wip
- #4273 [all] Externalize cxxopts
- #4279 [Topology.Mapping] SimpleTesselatedHexaTopologicalMapping: use correct type for Index
- #4267 [github] Fix name of PR author in GitHub workflows
- #4259 [Helper] ADD option to cmake for advanced timer
- #4251 [Type, Helper] Remove unused __STL_MEMBER_TEMPLATES parts
- #4272 [all] Fix headeronly extlibs licenses
- #4269 [FEM, Mapping] dont mix type::fixed_array and type::Vec
❌ No meeting due to the feast of All Saints (French day off). See you next week for the last SOFA dev meeting before the SOFA Week 2023!
- 🚨🚨 3 weeks before the SOFA Week 2023🚨🚨 Register and join the force ⚡
- Training session on ModelOrderReduction plugin took place. Request your own anytime!
- Next sessions will be held on webex https://www.sofa-framework.org/sofa-dev-meeting
- MacOS releases for 23.06 has been generated!
- Some installation isssues
- SOFA on MacOS due to Apple certificate
- Caribou: Paul will propose an install script
- Roadmap of the conda package
- new versions of libraries are needed (e.g. tinyxml)
- this needs the
find_or_fetch
feature, therefore an upgrade CMake >= 3.24 -> wait for the 23.12 release, which should be performed as soon as possible early December - csparse: we said il last meeting that it could be totally take out of the core. Alexandre will deal with it.
- Json dependency on AdvancedTimer (header only): make it
find_or_fetch
or remove it? Olivier already made a PR implementing this mechanism but we could remove it totally for the next release - add a mechanism making this
find_or_fetch
mechanism optional
- Sort issues in preparation of STC#16
- On the timers we want to add CMake option to have the choice between:
- No time
- Tracy
- Advanced timer
- Tracy + advanced
- #4256 [example] Speedup TorusFall with parallel inverse product → ready
- #4255 [LinearSolver] Implement parallel inverse product for all linear solvers Sometimes SparseLDL is more efficient sometime it's eigen. Need some try to know which one is the best one. May impact the CUDA solvers for Hadrien. → ready
- #4253 [LinearAlgebra] Support 6x6 matrices accumulation in BaseMatrix Add issue to deprecate the MatrixX typedef and replace in all the code → ready
- #4251 [Type, Helper] Remove unused __STL_MEMBER_TEMPLATES parts → ready
- #4248 [LinearAlgebra] Speedup accumulation on BTDMatrix Tested by Fred and there is indeed a speedup on Windows but stangely not on Ubuntu. → ready
-
#4242 [Topology] Check indices out-of-bound in TriangleSetTopologyContainer
Maybe the problem is wrongly identified. This may be due to using a wrong component to construct the SubsetTopology. May be fixed by using a
SubsetTopologicalMapping
. → keep to review - #4205 [Lagrangian.Correction] Add callbacks to check zero compliance Ci scene tests still don't work, investigate why. → wip
- #4236 [LinearAlgebra] Robustify accesses to empty matrices
- #4247 [MatrixAccumulator] adds 6x6 matrix handling
- #4244 [all] Remove TODO.md
- #4245 [all] Add the folder sofa-launcher to the resources component
- #4238 [all] Fix warnings
- 🚨 Less than a month before the SOFA Week 2023🚨 Make sure you registered!!!
- Felix Vanneste is back in the Defrost team to work on the ModelOrderReduction plugin
- Next sessions will be held on webex https://www.sofa-framework.org/sofa-dev-meeting
- The configuration/version of the OS and associated librairies should be updated on the CI : the default rule is use the current ubuntu ditribution version (the one shipped with apt). But the version can be upgraded locally when required and not breaking
- Future requiremnt will be CMake >= 3.24
- Update to a new version of MSVC 2022
- This will be widely discussed at the STC#16
- Regression plugin failed running scene from external plugins due to path issues (e.g. BeamAdapter will failed as long as this is not fixed)
- CI minimal configuration should now include the Multithreading plugin
- New SOFA main scene has been presented by Paul: now optimizing it
- A bit disapointing in term of perf regarding the number of object. May be good to show the number of constraints in real time and/or show mor objects (little logos)
- May require to ship BeamAdapter with SOFA
- Paul will release his plugin contining the scene
- Alexandre attempted to assemble matrices faster and shared his feedback
- Mechanical contribution to a matrix a done in two steps : computation then assembling (insertion in non-neglectible in term of computation time)
- The idea was to do the insertion in a dedicated asynchronous thread → forced to add an intermediate queue to store local contribution and insert in a lock-free way
- Contribution computation is sped up with this but the queue reading (depilation) takes a lot of time leading to no speed up at all
- #4242 [Topology] Check indices out-of-bound in TriangleSetTopologyContainer The test is of interest. But the resulting behavior should be changed. It would require to put the component state to invalid ? Wait for Erik expertise. → keep to review
- #4240 [all] Replace tinyxml by external tinyxml2 Need the find or fetch mechanism otherwise the PR will not work on the CI. → wip
- #4238 [all] Fix warnings Change C-style cast into C++ cast (narrow_cast) than ready → keep to review
-
#4236 [LinearAlgebra] Robustify accesses to empty matrices
Paul will test the perf, else use
isInvalid
then ready → keep to review - #4234 [Mapping] add scale to rigid mapping to scale the initial mapping Change too specific (done as an example for a user), PR will be closed → closed
- #4194 [Geometry] Update method intersectionWithEdge signature and redirect all methods to it in EdgeSetGeometryAlgorithms Scene test failing, Erik is notified → wip
- #4213 [Constraint.Lagrangian.Solver] Another step to factorize both constraint solvers
- #4237 [all] Forgotten scoped timers
- #4235 [Helper] Update ComponentChange for MechanicalMatrixMapper
- #4227 [SofaCUDA] Move cuda GUI dependent code
- #4220 [LinearSolver.Direct] Better distribution of tasks among threads
- Are you already registered? SOFA Week 2023 registration is compulsory to join us in Paris
- Now a merge option in PR on GitHub More rigorous and avoids problems with master. We need to do it in order to not do it multiple times. Always merge master on the branch and not rebase: don't lose the history. If this system becomes too blocking in terme of testing, consider modifying the CI (remove master compilation and only relly on the nightly build because each commit on the master branch will be tested before the merge) ?
-
#4221 Use of embedded external dependencies
Conda integration : Request to clean up external SOFA dependencies linked statically.
For header only libraries -> find or fetch mechanism (if not present in the environmenet, its sources are fetched and compiled by us)
For static libraries -> make them shared
Cas particuliers:
- New mat : take out the plugin to make it stand-alone, so as not to lose the work but no longer include it.
- miniFlowVR : also to take out
- json nlohmann : in the long term remove this dependency
- Tiny xml : find or fetch (in the long term isolate the feature and 'find or deactivates')
- cspare : sparseLDL implements nearly everything it uses -> no real dependency on cspare. But other lesser-used objects depend on it, and we could take them out.
- Metis : no need to worry about 'finding or fetching' as the embedded version is up to date.
- Regression tests on windows are not launching but it will be fixed quickly.
- #4227 [SofaCUDA] Move cuda GUI dependent code Strange to have to look for cspare because it is shiped with CUDA. → ready
- #4226 [DetectionOutput] New: added barycentric coords Provide an example/context (plugin using it) of use to see the interest of the contribution. Still alot to do to integrate it in a mor standardized way to be more generic regarding the type of element. Would need unit tests. → wip
- #4220 [LinearSolver.Direct] Better distribution of tasks among threads → ready
- #4219 [CollisionModel] New: added collision layer property Provide an example/context (plugin using it) of use to see the interest of the contribution. See how he handles differences in groupe/layers. This might remplace the group mechanism but would require to be able to have have multiple layers. Add unit tests → wip
- #4213 [Constraint.Lagrangian.Solver] Another step to factorize both constraint solvers Factorise code between GenericConstraintSolver and LCPConstraintSolver. LCP is important to keep because it converges more quickly and is a bit faster for only unilateral constraints. Test performances then ready → keep to review
- #4205 [Lagrangian.Correction] Add callbacks to check zero compliance Take changes into account → wip
- #4194 [Geometry] Update method intersectionWithEdge signature and redirect all methods to it in EdgeSetGeometryAlgorithms Fix compilation then ready → wip
- #4210 [all] Fix mismatch on explicit template instantiations
- #4190 [Topology.Container] Update and rename methods in EdgeSetGeometryAlgorithms to compute barycentric coordinates
- #4198 [GUI.Qt] Fix libQGLViewer cmake install
- #4168 [BatchGUI] Show progress bar
- #4180 [LinearSolver.Direct] SparseLDL: Fix crash in addJMInvJtLocal
- #4172 [LinearSystem] Assemble non-mapped and mapped matrices in parallel
- #4158 [LinearSystem] Introduce constant sparsity matrix assembly
- #4138 [MultiThreading] Introduce parallel CG
- #4192 [Topology.Container] Remove method writeMSHfile in GeometryAlgorithms components
- #4195 [Constraint.Lagrangian.Solver] GenericConstraintSolver: avoid repeated allocation in loops
- #4133 [Core] Store default value in a Data
- SOFA Week 2023: first registered participants are here, book your seats!
- Enjoy the new plugin lists online: https://www.sofa-framework.org/applications/plugins/
- You like checking performances? Discover Alex's integration of Tracy
- Topological changes: current implementation by InfinyTech3D (higher level like: split a triangle in 2, split a triangle in 3)
- **SetGeometryAlgorithms: are the only components accessing both the topology and the dofs. It already implements several topological methods
- an additional folder will be added in
Sofa.Component.Topology.Container.Dynamic
including all these files/header
- Conda package update:
- Full review received on the PR on conda-forge: management of linking with static libraries, all external projects not header-only should be used through associated conda packages
- restore the linux support: solved!
- MacOS failure:
Fatal Python error: PyMUTEX_LOCK(gil->mutex) failed
- Sort STC#16 labels
- CI: set up a new Ubuntu v22.04 LTS builder. Question came about the library versions: homogeneize all versions Linux/Mac/Windows
- #4213 [Constraint.Lagrangian.Solver] Another step to factorize both constraint solvers Need more time to review the code → keep to review
- #4210 [all] Fix mismatch on explicit template instantiations → ready
- #4205 [Lagrangian.Correction] Add callbacks to check zero compliance Suggestion to take into account, then ready → keep to review
- #4198 [GUI.Qt] Fix libQGLViewer cmake install Wait for the MacOS CI → keep to review
- #4195 [Constraint.Lagrangian.Solver] GenericConstraintSolver: avoid repeated allocation in loops → ready
- #4194 [Geometry] Update method intersectionWithEdge signature and redirect all methods to it in EdgeSetGeometryAlgorithms Suggested changes applied but now compilation fails. The PR rised quesiton about the Equality threashold that is currently globally set and should be related to the scene size. To be discussed during the STC. Revert suggestion. → wip
- #4192 [Topology.Container] Remove method writeMSHfile in GeometryAlgorithms components → ready
- #4190 [Topology.Container] Update and rename methods in EdgeSetGeometryAlgorithms to compute barycentric coordinates Test CI MacOS then ready → ready
- #4172 [LinearSystem] Assemble non-mapped and mapped matrices in parallel → ready
- #4168 [BatchGUI] Show progress bar Reviews taken into account. Let's test it on MacOS and check the output on the CI. Then ready → ready
- #4163 [all] Deprecates the hard coded interactions in components Agreement that interactions should not be in any component but only in controllers. Controllers should be implemented to keep the desired features. Work on the transition / lifecycle. This last element is missing and should be implemented, then ready → wip
- #4158 [LinearSystem] Introduce constant sparsity matrix assembly Special cases of use will be trated correspondly when necessary → ready
- #4133 [Core] Store default value in a Data Changes taken into account → ready
- #4187 [examples] Fix warning of UncoupledCC in caduceus
- #4203 [all] Replace ScopedAdvancedTimers by macros
- #4177 [all] Generalize the usage of ScopedAdvancedTimer
- #4182 [Config] Integrate Tracy profiler
- SOFA Week 2023: first registered participants are here, book your seats!
- New plugin for ViscoElasticity is now available!
- Update regarding SofaCUDA plugins: GPU thesis plugins are now open. Would be interesting to compare it to the Defrost SofaCUDALinearSolver
- HPC seminar at Inria (CR available here)
- Scotch: package for graph and mesh/hypergraph partitioning, graph clustering, and sparse matrix ordering
- SolverStack: HPC linear algebra solver stack
- MoReFem: high-performance scientific computing library for numerical simulation of multi-physical phenomena, based on the PETSc linear algebra library
- Revive the Pardiso plugin. Problem : it is not portable and the license is not open. It has been integrated to Intel MKL library, maybe create a plugin on this library for SOFA?
-
#4187 [examples] Fix warning of UncoupledCC in caduceus
Understand how the
defaultCompliance
data is used. A new PR should be open to filter zero values indefaultCompliance
orcompliance
(issue #4202) → keep to review - #4182 [Config] Integrate Tracy profiler Possible integration of Tracy in ImGUI (an issue is created #4200 to discuss at STC#16). → ready
- #4180 [LinearSolver.Direct] SparseLDL: Fix crash in addJMInvJtLocal A more global discussion could be about questioning the use of sofa::vectors vs the std version and lighten our implementation. Else ready. → ready
- #4179 [LinearAlgebra] Fix segfault when accessing and empty CSR matrix (through iterators) Alex wants to go through it more deeply to really indentify the problem. → wip
-
#4177 [all] Generalize the usage of ScopedAdvancedTimer
Issue created #4199 on the
valSet
problem then merge. → ready -
#4172 [LinearSystem] Assemble non-mapped and mapped matrices in parallel
A question arised on the default behavior: should it be monothread or multithreaded by default. It has been decided to leave it monothreaded to avoid any result consistency and complete the Multithread dedicated documentation page. Update the
d_parallelAssemblyIndependentMatrices
default value → keep to review -
#4168 [BatchGUI] Show progress bar
Interesting and usefull : require to test the scene tests with the pr to see the behavior of the logs with this output. Update the license requirements for the 'indicators.hpp'. Allow to hide the progress bar. One failing test with
runSofa -n infinite
→ keep to review - #4163 [all] Deprecates the hard coded interactions in components This PR removes important mechanism without giving an alternative (recoding a controller). It is necessary to provide those controler to keep the features or remove these components from the PR. An issue will be created regarding the mesh exporter/loader standardization → keep to review
- #4158 [LinearSystem] Introduce constant sparsity matrix assembly Unitary tests are fixed. Only meaningfull for compressed models. Need one test with needle insertion then merge → keep to review
- #4138 [MultiThreading] Introduce parallel CG Investigate the timeout. Rebase with the PR reducing logs of Fred, see if this changes something → keep to review
- #4189 [LinearSystem] MatrixLinearSystem: add registration in the factory for BTDMatrix6
- #4191 [Config] CMake: Dont check for IPO at every configure step
- #4193 [SofaCarving] Fix warnings in SofaCarving_test due to use of deprecated methods
- #4185 [Constraint.Lagrangian.Solver] Clean both constraint solvers
- #4184 [Scene] Eigen3-SVD.scn: disable printLog
- #4160 [all] Use SimulationInitDoneEvent instead of AnimateBeginEvent
- #4046 [MechanicalLoad] Use prefix d_ in DiagonalVelocityDampingForceField
- #4151 [Mass] Fix UniformMass vertexMass value should not be set to 0 if nbr of points reach 0
- #4170 [Constraint.Lagrangian.Solver] LCPConstraintSolver: remove useless computation if printLog is enabled
- SOFA Week 2023: first registered participants are here, book your seats!
- New plugin for ViscoElasticity is now available!
- Update regarding SofaCUDA plugins: GPU thesis plugins are now open. Would be interesting to compare it to the Defrost SofaCUDALinearSolver
- HPC seminar at Inria (CR available here)
- Scotch: package for graph and mesh/hypergraph partitioning, graph clustering, and sparse matrix ordering
- SolverStack: HPC linear algebra solver stack
- MoReFem: high-performance scientific computing library for numerical simulation of multi-physical phenomena, based on the PETSc linear algebra library
- Revive the Pardiso plugin. Problem : it is not portable and the license is not open. It has been integrated to Intel MKL library, maybe create a plugin on this library for SOFA?
-
#4187 [examples] Fix warning of UncoupledCC in caduceus
Understand how the
defaultCompliance
data is used. And filter zero values. → keep to review - #4182 [Config] Integrate Tracy profiler Possible integration of Tracy in ImGUI (an issue is created #4200 to discuss at STC#16). → ready
- #4180 [LinearSolver.Direct] SparseLDL: Fix crash in addJMInvJtLocal A more global discussion could be about questioning the use of sofa::vectors vs the std version and lighten our implementation. Else ready. → ready
- #4179 [LinearAlgebra] Fix segfault when accessing and empty CSR matrix (through iterators) Alex wants to go through it more deeply to really indentify the problem. → wip
-
#4177 [all] Generalize the usage of ScopedAdvancedTimer
Issue created #4199 on the
valSet
problem then merge. → ready -
#4172 [LinearSystem] Assemble non-mapped and mapped matrices in parallel
A question arised on the default behavior: should it be monothread or multithreaded by default. It has been decided to leave it monothreaded to avoid any result consistency and complete the Multithread dedicated documentation page. Update the
d_parallelAssemblyIndependentMatrices
default value → keep to review -
#4168 [BatchGUI] Show progress bar
Interesting and usefull : require to test the scene tests with the pr to see the behavior of the logs with this output. Update the license requirements for the 'indicators.hpp'. Allow to hide the progress bar. One failing test with
runSofa -n infinite
→ keep to review - #4163 [all] Deprecates the hard coded interactions in components This PR removes important mechanism without giving an alternative (recoding a controller). It is necessary to provide those controler to keep the features or remove these components from the PR. An issue will be created regarding the mesh exporter/loader standardization → keep to review
- #4158 [LinearSystem] Introduce constant sparsity matrix assembly Unitary tests are fixed. Only meaningfull for compressed models. Need one test with needle insertion then merge → keep to review
- #4138 [MultiThreading] Introduce parallel CG Investigate the timeout. Rebase with the PR reducing logs of Fred, see if this changes something → keep to review
- #4189 [LinearSystem] MatrixLinearSystem: add registration in the factory for BTDMatrix6
- #4191 [Config] CMake: Dont check for IPO at every configure step
- #4193 [SofaCarving] Fix warnings in SofaCarving_test due to use of deprecated methods
- #4185 [Constraint.Lagrangian.Solver] Clean both constraint solvers
- #4184 [Scene] Eigen3-SVD.scn: disable printLog
- #4160 [all] Use SimulationInitDoneEvent instead of AnimateBeginEvent
- #4046 [MechanicalLoad] Use prefix d_ in DiagonalVelocityDampingForceField
- #4151 [Mass] Fix UniformMass vertexMass value should not be set to 0 if nbr of points reach 0
- #4170 [Constraint.Lagrangian.Solver] LCPConstraintSolver: remove useless computation if printLog is enabled
- SOFA Week 2023: first registered participants are here, book your seats!
- SoftRobots.Inverse plugin is now open-source!
- Vladimir Poliakov working on a training simulator for hysteroscopy. He implemented an asynchronous GUI with adaptive time step (with a maximum garanteeing the simulation stability). Vladimir will soon be leaving back in KU Leuven, feel free to take a look at filosofia and the coupling with filament. Parallel of simulation and rendering logically shows better performances than runSofa, this is something we could get inspired from. Vladimir will soon make his pending changes in SOFA as PRs.
- Rising interest in SOFAGLFW+ImGui which could/should replace runSofa. Modularization of ImGui would be a plus
- Scene tests run all examples even in plugins and when multithreading is involved, many timeouts occur
- Prefabs should be deeply rediscussed
- SOFA Vedo : have a visualization tool for python. Robin should discuss with Samuel to evaluate the need of this feature.
- Profiler Tracy #4182 -> nice tool for profiling execution with good insights. (see pr review)
- #4182 [Config] Integrate Tracy profiler Presentation done by Alex with a multithreaded example. Each ScopedTimer is replaced by a macro and is visible in the profiler. Tracy needs to be launched first as a server, then runSofa as a client. Test must still be conducted whether Tracy affects the performances. We should be able to remove completely timers.
- #4179 [LinearAlgebra] Fix segfault when accessing and empty CSR matrix (through iterators) An alternative change should be made to ensure that iterator begin = end when the structure is empty, assess performances and add a test to avoid reproducing the issue → wip (keep to review)
- #4158 [LinearSystem] Introduce constant sparsity matrix assembly PR to be tested on different use case (needle insertion, beams) + to be reviewed. → keep to review
- #4151 [Mass] Fix UniformMass vertexMass value should not be set to 0 if nbr of points reach 0 → ready
- #4138 [MultiThreading] Introduce parallel CG A lot of timeouts. Test with freshly rebooted VM and see if the timeouts are caused by the vm itself or the pr. → keep to review
- #4046 [MechanicalLoad] Use prefix d_ in DiagonalVelocityDampingForceField → wait for CI then ready
- #4144 [Constraint.Projective] Implement applyConstraint in LinearMovementConstraint
- #4075 [all] Remove some simple uses of bwdInit()
- #4181 [Helper] Fix warning in MeshTopologyLoader.cpp
- #4164 [Topology.Grid] Fix SparseGridTopology and SparseGridRamificationTopology crash at init if mesh file is not found
- #4165 [Topology] Rename Edge::pointBaryCoefs into Edge::getBarycentricCoordinates
- #4171 [GitHub] filter action if not on sofa-framework repository
- #4142 [Sofa.GL] Fix doDrawVisual for OglLabel
- SOFA Week 2023: first registered participants are here, book your seats!
- Final version of the SofaPython3 documentation is now online!
- New open-source plugin for Design Optimization
- CI MacOS still down
- New Ubuntu CI : 22.04
- Release of GPU codes: discussion incoming to sort codes
- Investigate Jenkins configuration options (minimal/standard/full): CMakePreset.json could be used
- #4160 [all] Use SimulationInitDoneEvent instead of AnimateBeginEvent Unit tests failing → wip
- #4138 [MultiThreading] Introduce parallel CG Performance issues noticed by Paul, now fixed by Alex. To be tested again. A regression test should be added to make sure that the single- and multi-threaded give the same results (make sure it is active, and maybe activated by default) → keep to review
- #4075 [all] Remove some simple uses of bwdInit() #4160 uses the event to expert at begin. Conflict to solve and unit test failing. → wip
- #4046 [MechanicalLoad] Use prefix d_ in DiagonalVelocityDampingForceField Reviews to take into account → wip
-
#3938 [Sofa.Core] Implements a template deduction system in the object factory
This PR along with the #3987 implements two possible mechanisms (implicit and explicit) to deduct the template of objects, but outside from
canCreate()
. The static version should be preferred but the other method should be removed. The #3987 should be carefully the one reviewed and tested locally to assess the mechanism. Afterwards, further cleanings oncanCreate()
(for example checks transfered toinit()
) will be reviewed. → keep to review
- #4117 [Constraint.Lagrangian.Solver] Unify lists of constraint corrections into a MultiLink
- #4065 [all] Update code regarding lifecycle in Topology.h
- #4150 [SofaSphFluid] Fix: internal draw method not restoring default parameters
- #4149 [SofaSphFluid] Fix: scenes warnings and failing examples
- #4148 [IO.Mesh.Tests] Reduce number of logs by unactivating printlog
- #4058 [all] Lifecycle v23.12 4/n
- #4132 [Constraint.Lagrangian.Solver] GenericConstraintSolver: use given re-ordered list for unbuilt GS
- #4129 [Constraint.Lagrangian.Solver] Fix default value for computeConstraintForces Data
- #2999 [IO][Tests] Add basic test for the MeshSTLLoader
- #4053 [Geometry] Add methods getBarycentricCoordinates and isPointInTriangle in Triangle class
- #4056 [all] Lifecycle v23.12 3/n
- #4128 [Mass] Add a callback on the lumping data in MMMass
- #4126 [test] Make quaternion test deterministic and portable
- #4116 [MechanicalLoad] Implement buildStiffnessMatrix for TaitSurfacePressureForceField
- #4063 [LinearAlgebra] Fix matrix sizes when filtering
- SOFA Week 2023: a unique occasion to meet all the community, discover live demos and network!
- Final version of the SofaPython3 documentation is now online!
- The community recruits, find out more online!
- Project opened by Alex to compile SOFA compiled Emscripten (compiler toolchain to WebAssembly) and then possibly a rendering engine browser compatible (javascript as well)
- Update about the SOFA conda package by Olivier
- PR #23085 opened on conda forge
- Should be available at the beginning of October
- A tutorial may be provided during the SOFA Week!
- Continuous integration:
- very long nightly builds due to pending macos blocking CI
- this Thursday new infra updates incoming
- Sort out old SOFA GitHub PR
- PRs pending on BeamAdapter
- #4133 [Core] Store default value in a Data May be easier to display the value for every type but the stored value should remain in the original type. Remove the template mechanism and store the default value for every type then ready. → wip
- #4132 [Constraint.Lagrangian.Solver] GenericConstraintSolver: use given re-ordered list for unbuilt GS The speedup may be increased with a simple optim on memory. New pr will be added. Regression fail may be due to difference in the way the convergence criteria is computed. → ready
- #4129 [Constraint.Lagrangian.Solver] Fix default value for computeConstraintForces Data Default = value can be removed. Then ready → ready
- #4128 [Mass] Add a callback on the lumping data in MMMass Changing the value doesn't seem to break the simulation but this is not explicitally supported. It is thus important to tell the user that this is not not possible and pass the mass to invalid -> may crash but it's preferable → ready
- #4126 [test] Make quaternion test deterministic and portable STL cannot be used since they are not portable → ready
- #4117 [Constraint.Lagrangian.Solver] Unify lists of constraint corrections into a MultiLink Investigate the use of DoubleLink : What is the behavior and the usage of this ? Wouldn't be single link enough ? Investigate this then ready. → keep to review
- #4116 [MechanicalLoad] Implement buildStiffnessMatrix for TaitSurfacePressureForceField → ready
- #4075 [all] Remove some simple uses of bwdInit() Further to discussions, an event should be triggered once the initialization is done (init and bwdInit() -> create a new pr to propose a new mechanism for notifying the components that the scene is ready to be run → wip
- #4063 [LinearAlgebra] Fix matrix sizes when filtering Inspecting values in the filtered system matrix, it has been noticed that the size info was incorrect (metadata, even if the matrix data itself were present) → ready
- #4056 [all] Lifecycle v23.12 3/n Wait for the CI then ready → ready
- #4053 [Geometry] Add methods pointBaryCoefs and isPointInTriangle in Triangle class Review done on function naming to make it clear for developers and user "coordinate" → wip
-
#4046 [MechanicalLoad] Use prefix d_ in DiagonalVelocityDampingForceField
C++ union has been removed, now
setParent()
is used. However, if the child variable is changed, the parent (the one used) is not udpated. Discussion concludes that when renaming a data, we should directly remove the old one by using DepreactedAndRemoved type to emit a compilation error (which cannot be ignored!). → wip - #3457 [SofaCarving] Add an example written in python → ready
- #4127 [SolidMechanics.TensorMass] Implement buildStiffnessMatrix for TetrahedralTensorMassForceField
- #4115 [MechanicalLoad] Implement buildStiffnessMatrix for TorsionForceField
- #4079 [GitHub] Action to check labels
- #4048 [Visual] ADD a visualization flag and draw method for NarrowPhaseDetection
- #4040 [all] Lifecycle v23.12 2/n
- #4110 [FEM.HyperElastic] Implement buildStiffnessMatrix for StandardTetrahedralFEMForceField
- #4034 [all] Lifecycle v23.12 1/n
- #4029 [Geometry] Add method intersectionWithEdge in Edge structure
- SOFA Week 2023 in less than 3 months, you can already register!
- SofaPython3 documentation being updated
- access SOFA master nightly build: a change on the CI infrastructure at Inria blocked access to the nightly builds. This is solved, thus restoring the CI for the master branch of external plugins
- SOFA has CMake/plugins multiple configurations: minimal, standard, full (Jenkins). We should work on homogeneizing these configuration for:
- the release (full + plugins)
- the conda package
- and the Plugins page
- Repository site-package python3 for SOFA plugins see MOR #72: can be configured in SofaPython3 plugins but other plugins having bindings do not inherit of this configuration. Using the major.minor version format is fine and this property should be propagated. However, the python path could be added when SOFA binaries get installed (this would be for later)
- #4096 [GitHub] Add an action closing old discussion topics File should be yml and test it → wip
- #4079 [GitHub] Action to check labels Test is failing, check syntax → wip
- #4065 [all] Update code regarding lifecycle in Topology.h PR needs 4058, let's wait for the CI (fedora already compiles fine) → keep to review
- #4063 [LinearAlgebra] Fix matrix sizes when filtering PR is fine but an explanation would enlight us → keep to review
- #4053 [Geometry] Add methods pointBaryCoefs and isPointInTriangle in Triangle class Four tests failing to fix → wip
- #4048 [Visual] ADD a visualization flag and draw method for NarrowPhaseDetection → ready but wait for CI
- #4046 [MechanicalLoad] Use prefix d_ in DiagonalVelocityDampingForceField Union may prevent to use a variable x if you wrote in y which is exactly our case here. Let's use the setParent() on Data. → wip
- #4034 [all] Lifecycle v23.12 1/n → ready but wait for CI
- #4029 [Geometry] Add method intersectionWithEdge in Edge structure Condition in the code is fixed → ready
- #4106 [plugins] Add fetchable ShapeMatchingPlugin
- #4112 [SofaMatrix] Remove CImgPlugin dependency
- #4105 [FEM.Elastic] Implement buildStiffnessMatrix for TriangularFEMForceFieldOptim
- #4081 [GitHub] Action to check PR titles
- #4103 [Tutorials] Update and fix oneTetrahedron tutorial
- #4064 [plugins] Fix OptionGroup deprecated constructor in image and SofaCUDA plugin
- #4120 [Core] VecId: set correct message for the deleted function holonomicC
- #4118 [all] Replace deprecated wbloc function by its new function name
- #4102 [GUI.Qt] Fix crash if filename is null
- #4111 [Helper] Fix wrong function called when writing jpg file
- #4099 [MechanicalLoad] Implement buildStiffnessMatrix for SphereForceField
- #4108 [Constraint.Lagrangian.Correction] Decrease the severity of not finding a file in PrecomputedConstraintCorrection
- #3959 [Simulation.Core] Refactor DefaultAnimationLoop + multithreading
- #4097 [MechanicalLoad] Implement buildStiffnessMatrix in SurfacePressureForceField
- #4098 [MechanicalLoad] Fix plane force field buildStiffnessMatrix
- #4001 [LinearSystem] Optim: Only account for affected DoFs
- New marketplace online: sofa-framework.org/applications/plugins
- Do not forget to early register for the SOFA Week 2023!
- Folder for python site-packages is python3/ but it does not help differentiating the versions, best would be e.g. python3.8.10/site-packages/. A variable allows this in the plugin SofaPython3 but not in plugins. Discussion with Damien for possible explanation, else 👍
- Nightly build of SOFA are working again (branch v23.06 on sofa/ci)
- Close old opened PR on the fly during the week
- SofaPython3 2 PR pending review to be done on the fly during the week
- Issue on SofaGLFW: GitHub action nightly generating releases for master and v23.06. But each nightly add a new set of release. Comparison with Regression to be done and the action in SofaPython3 should be updated to be really nightly.
- #4099 [MechanicalLoad] Implement buildStiffnessMatrix for SphereForceField → ready
- #4098 [MechanicalLoad] Fix plane force field buildStiffnessMatrix → ready
- #4097 [MechanicalLoad] Implement buildStiffnessMatrix in SurfacePressureForceField → ready
- #4075 [all] Remove some simple uses of bwdInit() Take reviews into account → wip
- #4065 [all] Update code regarding lifecycle in Topology.h Waiting for #4058 → keep to review
- #4064 [plugins] Fix OptionGroup deprecated constructor in image and SofaCUDA → ready
- #4063 [LinearAlgebra] Fix matrix sizes when filtering Still a test to be added → wip
- #4048 [Visual] ADD a visualization flag and draw method for NarrowPhaseDetection Fixed test but error on DeprecatedData API, soon fixed → keep to review
-
#4046 [MechanicalLoad] Use prefix d_ in DiagonalVelocityDampingForceField
Ask for explanation on why using
union
would be a problem → keep to review - #4034 [all] Lifecycle v23.12 1/n Revert changes on ComponentChange, split to be done in another PR → wip
- #4029 [Geometry] Add method intersectionWithEdge in Edge structure One condition is the code is incorrect, to be fixed. → wip
-
#4001 [LinearSystem] Optim: Only account for affected DoFs
With the new matrix API visual mappings were computed. With this PR, we get back to previous perf. Note that with this mechanism we should not need anymore the boolean check
isMechanical
in mappings → ready - #3959 [Simulation.Core] Refactor DefaultAnimationLoop + multithreading → ready
-
#3912 [Mass] Deprecate and make DiagonalMass inherit from MeshMatrixMass
In
parse()
of a specialized class DiagonalMass : warning for user + deprecation for devs. Add callback on lumping to warn user. → wip
- #366 Binding to setup task scheduler (nb threads) #366 Comment done for formatting else OK → wip then ready
- #4094 [MechanicalLoad] Fix compilation further to new RemovedData constructor
- #4059 [all] Add dates for user deprecation classes RemovedData and DeprecatedData
- #4019 [MechanicalLoad] Remove the data force in ConstantFF and solves circular dependency
- Still many devs in vacations! Getting tanned for the SOFA Week 2023
- #4059 [all] Add dates for user deprecation classes RemovedData and DeprecatedData → ready
- #4048 [Visual] ADD a visualization flag and draw method for NarrowPhaseDetection Unit test failing due to the increased number of visual flag → wip
- #4034 [all] Lifecycle v23.12 1/n Object at compilation are considered as too large. Either we clean the ComponentChange file or we split it into several files. To be discussed with more → keep to review
- #4029 [Geometry] Add method intersectionWithEdge in Edge structure Test Edge_test.cpp was failing. Fixed by fredroy, waiting for CI then ready → keep to review
- #4028 [Geometry] Add method isPointOnEdge in Edge structure All changes taken into account → ready
- #4019 [MechanicalLoad] Remove the data force in ConstantFF and solves circular dependency → ready
- #4001 [LinearSystem] Optim: Only account for affected DoFs Approved by reviewers, waiting for the author to get back → keep to review, ready to be merged
- #3959 [Simulation.Core] Refactor DefaultAnimationLoop + multithreading It seems strange that the factorization of the mapping propagation at the end of the time step makes the scene crashes, to be discussed further. → keep to review
- #4057 [all] Clean unused warnings in SOFA
- #4045 [Core] Make doDrawVisual final
- #4041 [GUI.Qt] Remove unused recorder feature
- #4027 [FEM] Add option to compute principal stress direction in TriangularFEMForceFieldOptim
- #4005 [MechanicalLoad] Implement buildStiffnessMatrix in EllipsoidForceField
- #3991 [FEM.Linear] Implement buildStiffnessMatrix and addKToMatrix for TriangularFEMForceField
- #3986 [LinearSolver.Direct] Parallelization of H A^-1 H^T in SparseLDLSolver
- #3945 [all] Unify how Animation/Visual loops are handling their "targetNode"
- #3924 [MechanicalLoad] Replace doUpdateInternal by callback: ConstantFF
- SOFA Week 2023 : registrations are now open!!
- Training sessions are open for august and september, register now !
- It's summer times, the SOFA community will slow down the two first weeks of August. Enjoy your summer and see you in the second half of August!
-
[Core] Unification of addDForce and buildStiffnessMatrix (#4010) This is resulting from the matrix refactoring (#2777). The idea was to unify the two metyhod by always using the build matrix method instead of addDforce. This makes the unbuilt version slower (especially for corotationnal). → The idea is to use this unification to make the addDForce override optional but warn the user that the unbuilt version will be slower and that they should override it if they want the real mechanism.
-
[LinearSystem] Optim: Only account for affected DoFs (#4001) The question was why this PR is accelerating the Caduceus given the fact that it isn't using any penality. → This maybe due to the fact that the matrix building baypass the mechanical flag of the mappings. Filtering the affected dof has thus the side effect to take the flag into account implicitly. It would be better to take the mapping flags into account explicitly.
-
[Lifecycle] On the use of union for data name depreciation (#4046) The use of union to enable the use of old data name could become a norm → Raises a problem with the destructor. It forces the destructor of the class to be defined. Inside of it we need to explicitly tell which data of the union is destroyed (memory leak if not done but is it really an issue ?). This would also imply to remove the destructor at the end of the lifecycle (this could be eased by destructing the deprecated data instead of the new one as a convention to raise ocmpilation errors). The use of this would require to update the doc and be very explicit on what to do regarding the destructor.
- #4045 [Core] Make doDrawVisual final → to review
- #4041 [GUI.Qt] Remove unused recorder feature → ready
- #4040 [all] Lifecycle v23.12 2/n → to review
- #4034 [all] Lifecycle v23.12 1/n No line in ComponentChange should ever be removed to insure that old scene could be easily fixes. Even more because this is practically free for compilation and totaly harmless in run time and maintenance. This should lead to a technical discussion on ComponentChange doc → to review
- #4029 [Geometry] Add method intersectionWithEdge in Edge structure → to review
- #4028 [Geometry] Add method isPointOnEdge in Edge structure → to review
- #4027 [fem] Add option to compute principal stress direction in TriangularFEMForceFieldOptim → ready
- #4019 [MechanicalLoad] Remove the data force in ConstantFF and solves circular dependency Need to fix the output to get the CI to validate the scenes tests → wip
- #4010 [Core] Unification of addDForce and buildStiffnessMatrix → wip (see technical discussions)
- #4005 [MechanicalLoad] Implement buildStiffnessMatrix in EllipsoidForceField → ready
- #3991 [FEM.Linear] Implement buildStiffnessMatrix and addKToMatrix for TriangularFEMForceField Waiting for Erik's review then ready → to review
- #3990 [all] Replace canCreate with init() when approapriate Depends on #3938 so waiting for the discussion → wip
- #3987 [all] Replace canCreate with the getTemplateFromMechanicalState deduction rule Depends on #3938 so waiting for the discussion → wip
- #3986 [LinearSolver.Direct] Parallelization of H A^-1 H^T in SparseLDLSolver Regression test is not rigorous enough, the error is the mean over all nodes but in cases like the benchmark introduced here by Paul, it passes easily for any regression over 10e-7. We whould discuss how to modify the regression test to catch this : infinite norm ? Alex would like to add modification and unitary tests → wip
- #3959 [Simulation.Core] Refactor DefaultAnimationLoop + multithreading Requires an investigation on why the scene in sph is crashing. A PR should be added to try and remove the buildConstraintMatrix step. → scene check + new PR then ready
- #3945 [all] Unify how Animation/Visual loops are handling their "targetNode" → ready
- #3938 [Sofa.Core] Implements a template deduction system in the object factory Discussion to plan with Damien and Alex to talk about this PR → wip
- #3924 [MechanicalLoad] Replace doUpdateInternal by callback: ConstantFF → ready
- #364 Disable MacOS CI build for now. Removing macos ci is not good, we should instead modify the ci to publish the release even when macos is not working → to review
- #362 Follow changes from #3959 → waiting on sofa pr #3959 then ready
- #357 Follow changes from SOFA #3889 → waiting for ci then ready
- #356 [examples] Fix all example warnings and add all files in CMakeLists → ready
- #335 Prevent division by zero → ready
- #4061 [FEM.Elastic] Compute BBox in triangle FEM
- #3278 [Sofa.Core] minor refactoring for Data::read() to move into BaseData the reading code
- #4068 Revert "[Sofa.Core] minor refactoring for Data::read() to move into BaseData the reading code"
- #4067 [all] Fix warnings related to Vec and unused var
- #4062 [FEM.Elastic] Fix typo in error message
- #4060 [LinearSolver.Direct] More details in error message
- #4055 [examples] Introduce falling beam example
- The two first weeks of August will be down for most of the SOFA community! Put the sunglasses on 😎 but do not forget to book the SOFA Week 2023!
- Vladimir PhD student at KU Leuven is visiting: cutting simulation (Harders hybrid cutting approach) and remeshing further to cutting using MMG
- No lifecycle info in RemovedData/DeprecatedData #4043: two additional fields should be added to specify the deprecated date and removal date in both RemovedData/DeprecatedData
- [MechanicalLoad] Implement buildStiffnessMatrix in EllipsoidForceField #4005: clean way to rename a data for developers
- #4029 [Geometry] Add method intersectionWithEdge in Edge structure Test CI along with #4028 → keep to review
- #4028 [Geometry] Add method isPointOnEdge in Edge structure Scenes are crashing on windows using potentially inyersection methods. → investigate the scenes crash and keep to review
- #4027 [fem] Add option to compute principal stress direction in TriangularFEMForceFieldOptim Wait for Alex feedback, else ready → keep to review
-
#4019 [MechanicalLoad] Remove the data force in ConstantFF and solves circular dependency
Several unit tests and scenes tests are failing due to removal of
force
This PR removes theforce
data but it also proposes a new design for the data update : depending on which data is set initially by the user, only the data used at init can be updated. Drawback : a double udpate is always performed → keep to review - #4005 [MechanicalLoad] Implement buildStiffnessMatrix in EllipsoidForceField Validate with Alex about the use of union, else ready → keep to review then ready
- #3991 [FEM.Linear] Implement buildStiffnessMatrix and addKToMatrix for TriangularFEMForceField Review of epernod still ongoin → keep to review
- #3986 [LinearSolver.Direct] Parallelization of H A^-1 H^T in SparseLDLSolver Issue in the demo scene, a point behaves strangely when the contact occurs when using the feature branch. To be investigated → keep to review
- #3983 [FEM.Elastic] Minor refactor of buildStiffnessMatrix in TetrahedronFEMForceField → ready
-
#3959 [Simulation.Core] Refactor DefaultAnimationLoop + multithreading
CI sees apparently twice an error in advancedtimer. Also could be tested to remove
buildConstraintMatrix()
unused in DefaultAnimationLoop → keep to review - #3924 [MechanicalLoad] Replace doUpdateInternal by callback: ConstantFF Review needed. This PR comes along with #4019. → keep to review
- #4025 [GuiQt] Remove some unactivated code
- #3882 [plugin] Add fetchable SoftRobots
- #3981 [FEM.Elastic] Implement buildStiffnessMatrix for TetrahedralCorotationalFEMForceField
- #4047 [plugins] Remove PSL files, add ExternalProjectConfig and update CMakeLists
- #4044 [Core] Fix drawing of Objects when hiding Visual Models
- #4026 [constraint] Update PrecomputedConstraintCorrection logs when loading compliance file
- #3974 [Collision.Response.Contact] Implement buildStiffnessMatrix in PenalityContactForceField
- #4009 [Spring] Implement buildStiffnessMatrix in PolynomialRestShapeSpringsForceField
- #3998 [CHANGELOG] Update further to latest changes in v23.06
- #3942 [Tests] Properly remove exported files
- The SOFA consortium staff moved into a new building in Strasbourg!
- Vladimir PhD student at KU Leuven is visiting the SOFA team for 3 months!
- [Core] Unification of addDForce and buildStiffnessMatrix
-
[LinearSystem] Optim: Only account for affected DoFs
At the matrix assembly, @fredroy noticed that the function
assembledMappedMatrix
-->applytJT()
is called less often thus improving performances. A regression is still present on BeamFEMForceField
- #4026 [constraint] Update PrecomputedConstraintCorrection logs when loading compliance file. Some suggestions done → else ready
- #4025 [GuiQt] Remove some unactivated code Removing code and macro unsused for +15 years. One last macro will be removed, let's do it in this PR! → wip
- #4019 [MechanicalLoad] Remove the data force in ConstantFF and solves circular dependency Last reviews done → wip then ready
- #4010 [Core] Unification of addDForce and buildStiffnessMatrix Looks nice but the transition phase and the PR needs to be further discussed, let's open the discussion next week with Alex !
- #4009 [Spring] Implement buildStiffnessMatrix in PolynomialRestShapeSpringsForceField → ready
- #4005 [MechanicalLoad] Implement buildStiffnessMatrix in EllipsoidForceField Reviews to take into account, macro issue. → wip
- #4000 [SofaCUDA] Implement buildStiffnessMatrix and buildDampingMatrix in TLED → ready
- #3999 [MechanicalLoad] Restore computation of derivatives in DiagonalVelocityDampingForceField Comment done, else the PR is OK → ready
- #3998 [CHANGELOG] Update further to latest changes in v23.06 → ready
- #3990 [all] Replace canCreate with init() when approapriate Wait for #3938 → keep to review
- #3987 [all] Replace canCreate with the getTemplateFromMechaniclState deduction rule. Wait for #3938 → keep to review
- #3986 [LinearSolver.Direct] Parallelization of H A^-1 H^T in SparseLDLSolver Benchmark done by Fred but to do it again, since the feature is active by default. It would be nice to have a scene making sure that both sequential and parallel versions give the same result. → keep to review
-
#3959 [Simulation.Core] Refactor DefaultAnimationLoop + multithreading
Review must be done by all and scenes are crashing (ArticulatedArm.robot.py). In addition the function
buildConstraintMatrix()
could be removed in the DefaultAnimationLoop → keep to review -
#3945 [all] Unify how Animation/Visual loops are handling their "targetNode"
Compilation is failing again:
error: 'gnode' was not declared in this scope; did you mean 'node'?
→ wip - #3942 [Tests] Properly remove exported files → ready
- #3938 [Sofa.Core] Implements a template deduction system in the object factory Pending discussion → keep to review
- #3924 [MechanicalLoad] Replace doUpdateInternal by callback: ConstantFF Ready but to be merged with #4019 → ready
- #3882 [plugin] Add fetchable SoftRobots Test Result 2 failures (time out). CI restarted let's wait and see → keep to review
- #4015 [SolidMechanics] Implement buildStiffnessMatrix for QuadBendingFEMForceField
- #3994 [AnimationLoop] Change the default constraint solver in FreeMotionAnimationLoop
- #4006 [Spring] Implement buildStiffnessMatrix in FastTriangularBendingSprings
- #4020 [LinearAlgebra] CompressedRowSparseMatrix: add virtual destructor
- #4007 [MechanicalLoad] Implement buildStiffnessMatrix for OscillatingTorsionPressureForceField
- #3989 [FEM.Linear] FIX & Minor refactor of buildStiffnessMatrix in TriangleFEMForceField
- #4018 [MechanicalLoad] Implement buildStiffnessMatrix for QuadPressureForceField
- #4012 [Diffusion] Fix buildStiffnessMatrix in TetrahedronDiffusionFEMForceField
- #4004 [MechanicalLoad] Implement buildStiffnessMatrix in EdgePressureForceField
- #4013 Follow changes from SOFA #3889
- #3931 [all] Use NVI design pattern for drawVisual
- #3997 [MechanicalLoad] Implement buildStiffnessMatrix for ConicalForceField
- #3972 [MechanicalLoad] Implement buildStiffnessMatrix for PlaneForceField
- New consortium staff: Paul Baksic joining the force!
- More than #4000 PR now!
- #4001 [LinearSystem] Optim: Only account for affected DoFs Optimize the assembly of mapped ForceFields JtKJ by identifying the useful terms of the Jacobian matrix with regards to the K matrix shape. A regression appeared on BeamFEMForceField and a scene test seems to fail SpatialGridPointModel.scn
- #3977 [Core] Suggestion of a better displayFlag name : ContactInteractions A new flag could be created displaying the DetectionOuput to visualize contact points whether you are using Penalities or Langrangian (new issue). But the suggestion will not be integrated as is. PR closed
- A proof-of-concept plugin SofaRaylib which adds a GUI and a new API to draw in SOFA using the raylib library
- #3994 [AnimationLoop] Change the default constraint solver in FreeMotionAnimationLoop Setting the componentState as Valid at the end and returning when Invalid, else OK → wip
- #3986 [LinearSolver.Direct] Parallelization of H A^-1 H^T in SparseLDLSolver Nice PR presenting the parallel version of the SparseLDLSolver, only benchmarks are coming soon. → keep to review
- #3972 [MechanicalLoad] Implement buildStiffnessMatrix for PlaneForceField Introduce a generalized version of the dyadic operator. Wait for CI then ready → ready
- #3959 [Simulation.Core] Refactor DefaultAnimationLoop + multithreading Scenes are failing → back to wip
- #3945 [all] Unify how Animation/Visual loops are handling their "targetNode" Compilation failing → back to wip
- #3942 [Tests] Properly remove exported files Wait for MacOS CI → keep to review
- #3938 [Sofa.Core] Implements a template deduction system in the object factory Question pending → keep to review
- #3931 [all] Use NVI design pattern for drawVisual Reviews have been done, waiting for an answer → wip
- #3930 [Sofa.Type] Reformat code Remains to test the PR with clang-format + solve conflicts → wip
-
#3882 [plugin] Add fetchable SoftRobots
At install, CMake copies python files using
configure_file()
, but when applying on binary files they get corrupted. A pure copy is now used, instead ofconfigure_file()
. One last scene is failing examples/thematicalDocs/T1-Elements_TetraHexaBeam/Hexa.Hexa.py. Scene will be investigated and the SofaPython3 PR #354 has been merged → wip
- #3993 [Spring] Implement buildStiffnessMatrix for AngularSpringForceField
- #3962 [Core.Topology] Restore invalid ids in invalid containers
- #3978 [Mapping.NonLinear] Fix assert in RigidMapping
- #3969 [FEM.Elastic] Implement buildStiffnessMatrix in HexahedralFEMForceField
- #3982 [tests] Restore commented unit tests
- #3948 [all] Implement empty buildDampingMatrix
- #3937 [all] Make local variables const
- #3889 [Sofa.Simulation] First steps to remove the singleton Simulation
- #3944 [Helper] add the experimental filesystem library for gcc-8 compilation
- #3894 [LinearAlgebra] Implement CompressedRowSparseMatrixConstraint
- #3961 [Helper.System] Introduce function append for paths
- #3985 [LinearSystem.Direct] More details in the error message
- #3888 [Constraint] Add tag to classify constraints
- Release upcoming this week
- MacOS down for 10 days more: a test will be done tomorrow, let's merge PR starting from Thursday evening
- Update about data/component update: discussions took place and a report will soon be presented
- #3968 [FEM.Elastic] Test HexahedralFEMForceField: shows that HexahedralFEMForceField and HexahedronFEMForceField do not behave the same way! This should be investigated and fixed in another PR
- #3961 [Helper.System] Introduce function append for paths → ready
- #3959 [Simulation.Core] Refactor DefaultAnimationLoop + multithreading Further review will be done. This PR raises the fact that the computation of forces due to InteractionForceFields can not be done anytime in the loop. Another topic to investigate is why the speed up is only x2 instead of x4. → keep to review
- #3956 [Core] Remove macros!!!!! From this PR a new proposition will be done, maybe template based → wip
- #3948 [all] Implement empty buildDampingMatrix Fix conflicts then ready → keep to review
- #3945 [all] Unify how Animation/Visual loops are handling their "targetNode" Few reviews to take into account → wip
- #3944 [Helper] add the experimental filesystem library for gcc-8 compilation Adds a bit of complexity to access filesystem library, but it ensures compatibility with old compilers → ready
- #3942 [Tests] Properly remove exported files → ready
- #3938 [Sofa.Core] Implements a template deduction system in the object factory In the strategy to firstly factorize/homogeneize the canCreate function, this PR propose an API to deduct template. Would be nice to apply it on the entire code base → wait for CI, then ready
- #3936 [MechanicalLoad] Break data cross-dependency in CFF Duplication of data will finally not be the way to go, an alternative PR will be proposed → closed
- #3931 [all] Use NVI design pattern for drawVisual Use of a NVI design pattern. Factorize the boolean draw data, the use of getShowVisualModel. Should use the isComponentStateValid() function → wip
- #3930 [Sofa.Type] Reformat code Suggestion done, remains to test the PR with clang-format → keep to review
- #3928 [Mass] Replace doUpdateInternal by callback: MeshMatrixMass Same as #3924 → wip
- #3927 [Mass] Replace doUpdateInternal by callback: UniformMass Same as #3924 → wip
-
#3924 [MechanicalLoad] Replace doUpdateInternal by callback: ConstantFF
Create a function including all the update process, split the updates in separate functions (recover commits from #3936), use function
isComponentStateValid()
→ wip - #3894 [LinearAlgebra] Implement CompressedRowSparseMatrixConstraint → ready
- #3888 [Constraint] Add tag to classify constraints → ready
- #3973 [MechanicalLoad] Implement buildStiffnessMatrix for LinearForceField
- #3929 [FEM.Elastic] Implement buildStiffnessMatrix for FastTetrahedralCorotationalForceField
- #3934 [all] Add DeprecatedData and RemovedData
- #3971 [Sofa.Component] FIX default color for TetrahedronFEMForceField
- #3980 [plugins] Remove references to external deleted plugins
- #3976 [image] Fix crash in case no parameters provided to TransferFunction
- #3979 [MechanicalLoad] Remove empty draw function in LinearForceField
- #3975 [all] Minor clean on indentation and warning
- #3970 [Spring] Implement buildStiffnessMatrix for SpringForceField
- #3963 [Project] Start dev phase v23.12
- #3960 [plugins] Remove references to old plugins
- #3905 [Constraint.Lagrangian.Solver] LCPConstraintSolver: Fix when mu=0 (no friction)
- Feedback on VivaTech 2023
- SOFA booth along with InfinyTech3D
- Compliance Robotics booth
- Careful: MacOS CI is not yet online
⚠️ wait before massive merge! - Preparation of the v23.06 release
- Linux and Windows are successfully generated, and tested
- Waiting for MacOS CI to generate them
- Issues on Caribou:
- change repo name
- change project name
- clean scenes
- ship scenes within install
- check the use of the Cosserat bindings
- add it to the fetchable plugins
- Go further with #354 Support copy of some binary files
- when preparing the python packages at install, the
configure_file()
is corrupting some files - investigate what does the macro and the
configure_file()
file (probably not only a simple copy) - Alex will give a try and could be a good first complicated topic for Paul
- when preparing the python packages at install, the
- #3963 [Project] Start dev phase v23.12 → ready
- #3960 [plugins] Remove references to old plugins PreassembledMass and RigidScale should be removed to due to the hard link to Compliant and/or Flexible → wip
- #3937 [all] Make local variables const Ready but wait for the MacOS CI → ready (wait MACOS)
- #3934 [all] Add DeprecatedData and RemovedData Deeper review on the change in Base will be done. Reviews added, test failing (which is nice, this PR detected them!) and problem of indentation to solve → keep to review
-
#3931 Use NVI design pattern for drawVisual
Missing deprecation layer on the data
d_visible
in OglLabel. Else wait for the discussion "component and data update" → wip -
#3930 [Sofa.Type] Reformat code
New rule
AllowShortCaseLabelsOnASingleLine: false
could be added, then the format script should be tested by other devs → keep to review - #3929 [FEM.Elastic] Implement buildStiffnessMatrix for FastTetrahedralCorotationalForceField Failing tests are due to a CI machine not cleaned (due to MacOS missing CI), two reviews validating the PR. → ready
- #3894 [LinearAlgebra] Implement CompressedRowSparseMatrixConstraint Reviews taken into account. In the class, CompressedRowSparseMatrixConstraint a utilitary code was present: Fred removed it. Wait for MacOS CI to merge → ready (wait MACOS)
-
#3889 [Sofa.Simulation] First steps to remove the singleton Simulation
Change function name
sofa::simulation::node::init(node)
andsofa::simulation::node::initRoot(rootNode)
→ ready -
#3882 [plugin] Add fetchable SoftRobots
Warnings with the topologyHandler in the SoftRobots plugin were remaining. When the scene in constructed, some nodes are initialized before the global initialization. This double
init()
on Mass, the topology handlers are sending a warning. A proposed solution is to use the static MeshTopology instead, a longer term solution would be to avoid these double init. → keep to review
- #3957 [Simulation.Core] Deprecate unused classes *VisitorScheduler
- #3890 [Plugins] ADD external collisions plugins
- #3955 [Mapping/tests] Remove dependency on SceneCreator
- #3954 [Sofa.Simulation] Remove Node::bwdInit
- #3946 [all] Remove few lines of code that do nothing
- #3935 [MechanicalLoad] Restore addKToMatrix and test SurfacePressureForceField
- #3925 [Projective] Fix and test FixedPlaneConstraint
- #3891 [all] Rename DefaultContactManager into CollisionResponse
- VivaTech 2023 is coming, join us in Paris on Friday 16th of June!
- CI MacOS is down due to moving of the SOFA consortium staff and infrastructure
- Still a very nice dev activity (but therefore a lot of review effort)!
-
#3930 [Sofa.Type] Reformat code
Such a formatting tool has a great interest for SOFA, but for now not to apply on the whole codebase. With 25+ open PR, applying it to all SOFA would generate conflicts as well as make the comparison with older codes complicated. Moreover, only one rule (e.g. only the code tabulation) can not be applied. Howevever, the script can be applied on separated modules. Alex will test clang-format in command line and a review of the format is needed.
- Remark: OK to apply it on Sofa.Type. Exntending it to SOFA is not a priority, minimum effort for PR author and for the core-dev
- it would be simpler to apply it once on the whole code base (easy to do in the Sofa.Core)
- must be done in a synchronized way (for developer with multiple branches)
- then suggest/automatize/enforce format in PR (through CI, or GitHub actions) → Paul
-
#3924 [MechanicalLoad] Replace doUpdateInternal by callback: ConstantFF
- doUpdateInternal API was a DataEngine mechanism in all BaseObject to allow for a triggered update of components through the doUpdateInternal function. It was allowing for having input and output data but it is not spread and could be replaced by data
- #3636 is pursueing the work by separating the callback to have one per data, and it adds new data as input while having read-only data which are coherent
- have the read-only constraint (more than only GUI) and how to implement it (check in
beginEdit()
, BaseData, Data) - break circular dependencies seems a good property, but we could keep only one input with an engine allowing to have other input
- a dedicated discussion will take place next week!
- have the read-only constraint (more than only GUI) and how to implement it (check in
- #3925 [Projective] Fix and test FixedPlaneConstraint → ready
- #3905 [Constraint.Lagrangian.Solver] LCPConstraintSolver: Fix when mu=0 (no friction) A discussion remains (but out of the PR scope): how to have a cleaner, simpler and more generic way to define friction → ready
- #3903 [Spring] Rename RestShapeSpringsForceField to a more user-oriented name Agreement on names found here. An issue will be created. → closed
- #3894 [LinearAlgebra] Implement CompressedRowSparseMatrixConstraint Brings back the InSimo's work to replace MapMapSparseMatrix. Some refactoring could be done but a deep review is needed from a max number of devs. → keep to review
- #3891 [all] Rename DefaultContactManager into CollisionResponse → ready
- #3890 [Plugins] ADD external collisions plugins PR on plugins merged, it's ready. Just note that those plugins do not have any CI, use at your own risk. → ready
-
#3889 [Sofa.Simulation] First steps to remove the singleton Simulation
Fred noticed the change of
init()
functions which disappeared butinitNode()
has changed and a newinitNodeNoContextUpdate()
has been added. Damien suggests the use of different namespace to explicit the perimeter of the init function butsofa::simulation::simulation::init()
could be misleading. A coherent renaming will be proposed → keep to review - #3882 [plugin] Add fetchable SoftRobots CI works on the SoftRobots scenes and Alex is working on fixing the failing scenes in the plugin. If fixing becomes too complex, some scenes might be added to the ignored files. → wip
- #3921 [Mapping.NonLinear] Implement buildGeometricStiffnessMatrix for DistanceFromTargetMapping + example
- #3949 [IO.Mesh] More debug info in the error message in MeshSTLLoader
- #3933 [Helper] Properly deprecate an already deprecated function
- #3932 [all] Cosmetic: apply nested namespaces style
- #3914 [Logging] Suggestion to better highlight warnings in console
- #3918 [Core] Access cumulative sum of VecIds through proxy class
- #3922 [Config] Allow fast math mode for gcc/clang
- #3915 [all] Minor clean of types
- #3850 [Spring] Limit spring force to some axis
- VivaTech 2023 is coming, join us in Paris on Friday 16th of June!
- CI MacOS is down due to moving of the SOFA consortium staff and infrastructure
- Nice dev activity!
-
Release v23.06 process ongoing
- SofaPython3: merged PR #351
- Remove reference: SofaPython, THMPGSpatialHashing, Flexible, Compliant, OptiTrackNatNet, OpenCTMPlugin
- Make sure a v23.06 branch is available in your plugins: Tearing, IT3DToolkit, Cosserat, SoftRobots, MOR, STLIB
- Test the addition of a new plugin: Caribou
-
Lifecycle for v23.12 will start after the release
-
PR to review
- #3903 [Spring] Rename RestShapeSpringsForceField to a more user-oriented name The new nomenclature suit all developers, renaming upcoming!
-
#3912 [Mass] Deprecate and make DiagonalMass inherit from MeshMatrixMass
Todo:
- assess again performances on large mesh
- remove CUDADiagonalMass
- edge implementation to backport in MMM
- deprecate XspLoaders (later, create an issue)
-
Damien is progressing well on the update of the SofaPython3 documentation
- #3918 [Core] Access cumulative sum of VecIds through proxy class With non-linear mappings, the derivative of J times the forces (on the mapped object) f has to be computed. Several forces apply: physical forces and Lagrangian forces contained in two different data (stored in different VecIds). The refactoring associated to the new matrix assemlby broke the fact that Lagrangian forces were taken into account in the geometric stiffness. This PR fixes this. → ready
-
#3882 [plugin] Add fetchable SoftRobots
Now SoftRobots plugin have a repository
examples/
. Force full build triggered, let's wait CI. → keep to review - #3850 [Spring] Limit spring force to some axis → ready
- #3919 [examples] Remove example for MechanicalMatrixMapper
- #3920 [applications] remove unused variable
- #3911 [All] Remove warnings for v23.06
- #3821 [Components] Add functions to visualization of TetrahedronFemForceField
- #3913 [Helper] Improve text message for users in ComponentChange
- #3887 [SolidMechanics] Use accessors & make geometrical data required in BFF
- #3884 [contact] Add missing call to super init
- #3871 [all] Deprecate unused verbose data
- #3870 [Config] Fix cross-compilation for embedded external libs
- #3868 [SofaCUDA] No longer use deprecated texture references in HexaTLED
- Feedback from SOFA Technical Committee #15. A new format could be suggested: separate STC roadmap discussions from the coding sprint, this would have the advantage of taking the time to converge on the roadmap.
- Next event: SOFA at VivaTech 2023 on Friday 16th of June!
-
#3903 [Spring] Rename RestShapeSpringsForceField to a more user-oriented name
A common use of RestShapeSpringsForceField is to fix some points using forces and sometimes fixing points to another object. In general this raises the question of: defining a naming convention on such components to distinguish:
- projective constraints (physicless, forceless)
- weak force constraints (physicless with forces)
- Lagrange-based constraints (taking into account the physics and applying forces)
- Process for the v23.06 release will start soon
- #3888 [Constraint] Add tag to classify constraints Proof of concept further to STC#15 discussions but so far, no use of this mechanism. Feedback from the community requested. A usecase could be to warn the user in LCPConstraintSolver when adding BilateralInteractionConstraint while this constraint solver does not support it. → keep to review
- #3887 [SolidMechanics] Use accessors & make geometrical data required in BFF → ready
- #3884 [contact] Add missing call to super init → ready
-
#3882 [plugin] Add fetchable SoftRobots
An
examples/
folder should be at the root in SoftRobots for the CI to find it. It would be nice to have SoftRobots following this format. Possibly we should add STLIB. If this does not work, we will ignore the scenes. → wip - #3871 [all] Deprecate unused verbose data → ready
- #3870 [Config] Fix cross-compilation for embedded external libs → ready
- #3868 [SofaCUDA] No longer use deprecated texture references in HexaTLED The added scene is failing because CUDA scene are not tested on the CI. Add the scene to the ignore list, then rebase, then ready → keep to review
- #3850 [Spring] Limit spring force to some axis An idea to avoid this new data was to use a mapping but it has been concluded that it would complexify too much the scene and no one is available for the implementation. → wip
- #3821 [Components] Add functions to visualization of TetrahedronFemForceField PR still to review, data renaming using d_ should be done in another PR → keep to review
- #3902 [SofaCUDA] Replace deprecated vector types
- #3886 [examples] Fix unstable scene constantMomentum.scn
- #3515 [LinearAlgebra] Pull Insimo's CompressedRowSparseMatrix into the main branch
- #3876 [test] Fix failing unit test
- #3869 [SofaCUDA] Deprecated CudaTexture.h
- #3865 [all] include base class inl file
- #3864 [test] Fix unit test on RestShapeSpringsForceField
- #3861 [all] Change variable name supportOnlySymmetricMatrix in MParams
- #3858 [Constraint.Lagrangian] Add messages when no compliance is given
- #3857 [Constraint.Lagrangian] Activate the export of lambda forces by default
- #3855 [plugins] Remove fetching of SofaPython
- #3848 [Spring] Remove unused dependencies
- #3843 [SceneChecking] Add check when setting contactStiffness uselessly
- #3783 [StateContainer] Fix bug in dynamic data registration
- #3834 [LinearAlgebra] Change access specifier for the method set
❌ No meeting due to the SOFA Technical Committee #15 taking place in Paris!
- SOFA Technical Committee in Paris from May 23th to 26th - Next week !
- VivaTech 2023 : 3 demos based on SOFA!
- Page on how to release on the wiki
- Issue when changing the
group
data dynamically in CollisionModel #346- Quick dirty fix suggested
- AbstractTypeInfo could be updated to offer a consistent API, see comment
- Creation and freeze of the v23.06 release branch
- Share process to release
- Extend it to plugins : will be done while doing the release
- SOFA in conda by Olivier: packages will be done for each plugin + SOFA → first PR on conda forge will soon take place
- #3865 [all] include base class inl file Required if compatibility with CUDA 12 is desired → to review
- #3861 [all] Change variable name supportOnlySymmetricMatrix in MParams → ready
- #3858 [Constraint.Lagrangian] Add messages when no compliance is given → ready
- #3857 [Constraint.Lagrangian] Activate the export of lambda forces by default Wait for CI and then merge → ready
- #3855 [plugins] Remove fetching of SofaPython → ready
- #3850 [Spring] Limit spring force to some axis Interesting contributions (componentState, cleans) but the feature constraining the direction of the force of a RestShapeSFF is not that interesting for SOFA. → to be discussed (waiting feedback from Youness)
- #3843 [SceneChecking] Add check when setting contactStiffness uselessly → ready
- #3834 [LinearAlgebra] Change access specifier for the method set Reviews taken into account → ready
- #3821 [Components] Add functions to visualization of TetrahedronFemForceField Review to be done by hugtalbot → keep to review
- #3783 [StateContainer] Fix bug in dynamic data registration Reviews to take into account. Small change → keep to review
- #95 Disable BeamLengthMapping test Test failing to investigate. The issue seems to be a precision issue (1e-13~14), epernod nicely proposed himself → keep to review
- #94 [MultiAdaptiveBeamMapping] Fix potential bug when removing baseEdge Small fix on type avoiding auto → ready and merged
- #3848 [Spring] Remove unused dependencies
- #3834 [LinearAlgebra] Change access specifier for the method set
- #3838 [Mapping.NonLinear] Warns when non-symmetric matrix is produced
-
SOFA Technical Committee #15 in Paris from May 23th to 26th - Organization
- REGISTER NOW!
- Social events are booked!
- For next STCs, Lille as a location might be preferred regarding the hotel / facilities availability
- Merge of the Matrix Assembly update #2777 feedback: not much feedback in general, the SoftRobots plugin has been successfully updated in #213
- Cosserat plugin:
- some GitHub CI issue, related to pybind version (forcing to use C++14), used for Cosserat bindings
- State of code: clean of examples is required → a tool is required to test python scenes in plugins
-
Issue when changing the
group
data dynamically in CollisionModel, the change is not taken into account: it seems that setting a value in a set insert the new value, but does not remove the old one → feedback from Damien is expected - Creation of the v23.06 release branch: done today. Remaining todo:
- All PR must now have a milestone specified
- Share process to release
- Extend it to plugins
- Reviews on BeamAdapter PR are needed as well!
- #3843 [SceneChecking] Add check when setting contactStiffness uselessly Factorize checks in separate functions → wip
-
#3838 [Mapping.NonLinear] Warns when non-symmetric matrix is produced
Renaming
mparams->symmetricMatrix
in asmparams->supportOnlySymmetricMatrix
should be done in another PR → wait for CI then ready -
#3834 [LinearAlgebra] Change access specifier for the method set.
Merge the
public:
area, then ready → wip - #3833 [Lagrangian.Model] Missing _API keyword → wait for CI then ready
- #3821 [Components] Add functions to visualization of TetrahedronFemForceField Ziqiu requested some assistance, Hugo should help → wip
- #3806 [SofaCUDA] Explicit instantiation of ForceField class for Cuda types Include of inl classes inheriting from ForceField should be done. Another PR will be open . → closed
- #3783 [StateContainer] Fix bug in dynamic data registration Check if when adding an existing alias throws a warning, merge changes and ready → keep to review
- #3515 [LinearAlgebra] Pull Insimo's CompressedRowSparseMatrix into the main branch Classes for the different uses of CRS are now well separated. Index to change, breaking alias with assistance message. Breaking with SofaCUDA. → keep to review
- #42 Fix references for EulerExplicitSolver and Mesh2PointTopologicalMapping Some regression results were missing (because not located in the right folder, now fixed) and no error got emitted. → merged
- #3841 [Rendering3D] OglModel: Revert back to glBufferSubData
- #3840 [LinearSolver.Iterative] CMake: Fix package configuration
- #3833 [Lagrangian.Model] Missing _API keyword
- #3832 [LinearAlgebra] Fix matrix unit test
- #3803 [Mapping.Nonlinear] Fix matrix assembly in RigidMapping
- SOFA Technical Committee in Paris from May 23th to 26th - Organization → REGISTER NOW!
- Merge of the PR [LinearSystem] Refactor matrix assembly #2777
- Freeze the release branch v23.06 imminent
- Issue in the RegularGrid of SOFA with Hexahedra: a workaround has been found, and an issue will be created to track the problem
- Need to integrate PRs from BeamAdapter
-
#3821 [Components] Add functions to visualization of TetrahedronFemForceField
→ introduce a data for scaling the gap between the elements
Instead of a showForceField data, use a VisualStyle
Add the
d_
prefix to the introduced data - #3806 [SofaCUDA] Explicit instantiation of ForceField class for Cuda types → wait for the user feedback
- #3803 [Mapping.Nonlinear] Fix matrix assembly in RigidMapping → ready and merged
- #3783 [StateContainer] Fix bug in dynamic data registration → keep to review
- #3515 [LinearAlgebra] Pull Insimo's CompressedRowSparseMatrix into the main branch → to review, in particular the failing test
- #3823 [All] Remove trivial warnings
- #3822 [Rendering3D] OglModel: Use glMapBufferRange to update buffers
- #3815 [Visual] VisualModelImpl: Fix updateVisual()
- #3805 [Visual] VisualModelImpl: Clean and optimize slightly ComputeNormals()
- #3802 [PreassembledMass] Make it external
- #2777 [LinearSystem] Refactor matrix assembly
- SOFA Technical Committee in Paris from May 23th to 26th - Organization
- REGISTER NOW!
- Location : Cap Digital
- Reminder: new plugin for elasticity on shells using FEM
- Several training sessions taking place and new dates are available
- Freeze the release branch v23.06 at the beginning of May
- Issue in the RegularGrid of SOFA with Hexahedra where the first hexahedron is ordering the edges in a different order then the next hexahedra (next hexas are using udpateQuads())
- Need to another GUI for SOFA : ImGui is not very professional/user-friendly. The project SofaQtQuick was an idea but the project is over. To be further discussed at STC!
- #3823 [All] Remove trivial warnings → ready
- #3822 [Rendering3D] OglModel: Use glMapBufferRange to update buffers → ready
- #3821 [Components] Add functions to visualization of TetrahedronFemForceField Waiting for Ziqiu's feedback, the feature of node stress data rendered on tetrahedra and clean on if conditions should be integrated. → wip
- #3815 [Visual] VisualModelImpl: Fix updateVisual() → ready
- #3806 [SofaCUDA] Explicit instantiation of ForceField class for Cuda types Poke the user to test alxbilger's branch → keep to review
- #3805 [Visual] VisualModelImpl: Clean and optimize slightly ComputeNormals() → ready
- #3803 [Mapping.Nonlinear] Fix matrix assembly in RigidMapping A few questions are to be discussed with alxbilger → keep to review
- #3783 [StateContainer] Fix bug in dynamic data registration → keep to review
- #2777 [LinearSystem] Refactor matrix assembly Two related PR to merge in associated repositories (Regression and SofaPython30. Now force full-build when CI makes the last check, merge the PR. BRACE YOURSELF and report any issues related to this PR. → ready
- #3818 [Components] rename shadow variable
- #3816 [Constraint] Change print variable names to be consistent with doc
- #3807 [SofaCUDA] Move explicit template instantiations from CudaTypes.cpp to CudaMultiMapping.cpp
- #3802 [PreassembledMass] Make it external
- #3800 [BulletCollisionDetection] Revive project
- #3799 [Simulation] Suggest required plugin in the syntax of the scene loader
- #3798 [SofaCarving] Refresh : update file architecture and cmake
- #3796 [Constraint] Add data to access constraint forces in LCPCS
- #3792 [Hyperelastic] Reformat files and add override attribute
- #3782 [Core.Visual, Component.Visual] Create VisualState (formerly Vec3State)
-
SOFA Technical Committee in Paris from May 23th to 26th - Organization
- REGISTER NOW!!!
- Location information: Cap Digital, 14 rue Alexandre Parodi, Paris
- SOFA application for the French national prize for Open Science
- New plugin for elasticity on shells using FEM: https://github.com/SofaDefrost/Shell
- Several training sessions taking place and new dates are available
- Freeze the release branch v23.06 at the beginning of May
- Documentation for SofaCUDA : installation of the drivers should be tested on both Linux and Win. PR is opened but needs to be updated #87
- #3802 [PreassembledMass] Make it external → ready
- #3800 [BulletCollisionDetection] Revive project → ready
- #3799 [Simulation] Suggest required plugin in the syntax of the scene loader Very useful for users! → ready
- #3796 [Constraint] Add data to access constraint forces in LCPCS → ready
- #3792 [Hyperelastic] Reformat files and add override attribute Just cleaning and formatting. → ready
- #3783 [Sofa.Component.StateContainer] Fix bug in dynamic data registration. Changes suggested, waiting for feedback → wip
- #3782 [Core.Visual, Component.Visual] Create VisualState (formerly Vec3State) Work on full-floating visualization is paused, let’s merge it as is. → ready
- #2777 [LinearSystem] Refactor matrix assembly Last week, a discussion took place about some plugin compatibility. Now compilation is fixed for all plugins. The discussion also led to the conclusion that GPU codes should be opened Some issues remain about geometric stiffness to manage both forces and constraint forces. Even if no solution is implemented yet on this very specific case, the PR should be merged. A last clean will be done, then un-draft the PR and force-full-build. → to be merged
- #3795 [SofaCUDA] Reorganize following SOFA structure (8/n)
- #3791 [AnimationLoop] Call super init in FreeMotionAnimationLoop
- #3785 [SofaCUDA] Reorganize following SOFA structure (7/n)
- #3784 [Rendering3D] Missing StateLifeCycle
- #3780 [Config] Remove suspicious Eigen macro preventing vectorization
- #3776 [Mapping.NonLinear] Implement missing applyJT
- #3774 Update CONTRIBUTING.md
- #3771 [SofaPhysicsAPI] Remove unreachable code
- #3768 [examples] Introduce example and tests for SquareMapping
- #3680 [Mapping] Adds template to RigidMapping
- SOFA Technical Committee in Paris from May 23th to 26th - SAVE THE DATE
Announcement email incoming!!!
- Registration will be compulsory
- Sprint topics are being listed https://github.com/sofa-framework/sofa/issues?q=is%3Aopen+is%3Aissue+label%3ASTC%2315+
- Freeze the release branch v23.06 at the beginning of May
- Documentation for SofaCUDA should be updated : at least mentioning that CUDA12 is not supported so far (could be updated for the v23.06)
- #3782 [Core.Visual, Component.Visual] Create VisualState (formerly Vec3State) In the objective to have an Ogl model fully in float for performances, this is a first step towards templating the OglModelImpl. Evaluation of performance gain on Fred’s plugin is ongoing. → keep to review
- #3780 [Config] Remove suspicious Eigen macro preventing vectorization → ready
- #3776 [Mapping.NonLinear] Implement missing applyJT → ready
- #3774 Update CONTRIBUTING.md → ready
- #3771 [SofaPhysicsAPI] Remove unreachable code Issue pointed by maddin. The return could simply be removed, as well as all GUI related code. Revert and just remove the return → wip
- #3768 [examples] Introduce example and tests for SquareMapping Related to the comment in #2777, this scene and regression is testing the non-linear mappings in series → wait for the CI and then ready (regression)
- #3680 [Mapping] Adds template to RigidMapping Review done → ready
- #2777 [LinearSystem] Refactor matrix assembly Non-linear mappings in series are now supported. Regressions have been updated. Last todo : check that constraints are taken into account in non-linear mappings. A last discussion takes place today before the merge → keep to review
- #3775 [LinearAlgebra] Restore insertion operator for BaseVector
- #3763 [Core] Fix MSVC warning in Link
- #3761 [Mapping.NonLinear] Fix SquareMapping applyDJT
- #3760 [SofaCUDA] Reorganize following SOFA structure (6/n)
- #3757 [examples] Apply rest position in mappings
- #3756 [examples] Introduce examples for DistanceMapping and SquareDistanceMapping
- #3751 [plugins] ArticulatedSystemMapping : adds size check & fixes typo
-
SOFA Technical Committee in Paris from May 23th to 26th - Organization
- Email will be sent by next week (with registration link)
- Questions to members / EPIs: which dev topics to tackle
- Sprint topics are being listed here
- Dedicated page will be created and updated with all STC#15 information
- Defrost team is willing to increase the training materials to level up!
- Freeze the release branch v23.06 at the beginning of May
- #3761 [Mapping.NonLinear] Fix SquareMapping applyDJT Test added which was failing due to a misimplementation in the SquareMapping when a K cached matrix was not stored → ready
- #3757 [examples] Apply rest position in mappings Could be nice to see the impact of applyRestPosition=True as a default value → ready
- #3756 [examples] Introduce examples for DistanceMapping and SquareDistanceMapping → ready
- #3751 [plugins] ArticulatedSystemMapping : adds size check & fixes typo Callback has been properly added → ready
- #3680 [Mapping] Adds template to RigidMapping Looks good! Last reviews are being done → keep to review
- #2777 [LinearSystem] Refactor matrix assembly Two tasks ongoing: on geometric stiffness: combination of non-linear mappings is not working for now (to be done in a next PR) on geometric stiffness: take constraint forces into account generate the references for the regressions → wip
- #3763 [Core] Fix MSVC warning in Link
- #3760 [SofaCUDA] Reorganize following SOFA structure (6/n)
- #3758 [SofaCUDA] Reorganize following SOFA structure (5/n)
- #3755 [Tests] S.Components tests compiles with SReal=float
- #3754 [Spring] Remove variable redefinitions
- #3753 [Type] Support structured binding for type::fixed_array
- #3749 [GUI.Qt] Register meta type to fix asynchronous Qt call
- #3741 [Helper] Deprecate constructor of OptionsGroup
- #3740 [Mapping.NonLinear] Geometric stiffness method in an OptionsGroup
- #3714 [Core] TLink: Fix warnings about comparisons between unnamed enums
- New developers incoming in the community
- Organization of the STC : topics of the coding sprint will be discussed next week
- Next events:
- CMBBE SOFA workshop in Paris
- STC#15 in Paris
- SoFraSimS in Nice
- VivaTech in Paris
- Merge #2777 is imminent: test next week
- #3755 [Tests] S.Components tests compiles with SReal=float → wait the CI, ready
- #3754 [Spring] Remove variable redefinitions → ready
- #3753 [Type] Support structured binding for type::fixed_array Only supported by MSVC → wait CR then ready
- #3751 [plugins] ArticulatedSystemMapping : adds size check & fixes typo we discussed about a solution: a callback including the validity check could be added on the data so that we are sure about the validity anytime → wip
- #3749 [GUI.Qt] Register meta type to fix asynchronous Qt call Highlight the low quality of the GUI, looking forward to new work on GUI! → ready
- #3741 [Helper] Deprecate constructor of OptionsGroup Conflicts to solve and to be rebased. → keep to review
- #3740 [Mapping.NonLinear] Geometric stiffness method in an OptionsGroup For non-linear mappings, the option group becomes a data. A new PR will be done to create an intermediate class (NonLinearMapping and NonLinearMultiMapping) from which all non-linear classes must inherit. → ready
- #2777 [LinearSystem] Refactor matrix assembly Only remaining a regression on BeamForceFieldTest. Maybe due to the improvement of penalty forces taken into account with a direct (assembled) linear solver. → still to review until the end of next week (April, 7th)
- #3742 [example] Introduce an example for DistanceMultiMapping
- #3738 [applications] rename shadow variable
- #3737 [Helper] Improve OptionsGroup
- #3714 [Core] TLink: Fix warnings about comparisons between unnamed enums
- #3740 [Mapping.NonLinear] Geometric stiffness method in an OptionsGroup Unit tests are failing → wip
- #3738 [applications] rename shadow variable → ready
- #3737 [Helper] Improve OptionsGroup Unit tests are failing → wip then ready if fixed within the week
- #3680 [Mapping] Adds template to RigidMapping PR does not compile. Need thorough review. But the idea of the PR is accepted → keep to review
- #2777 [LinearSystem] Refactor matrix assembly Todo: highlight the most important code → keep to review
- #3727 [SofaCUDA] Fix includes pointing to compatibility layer
- #3713 [GUI.Qt] Clean and fix in the "inspector" panel
- #3711 [all] Remove a bunch of warnings
- #3707 [Mapping.NonLinear] Move DistanceMultiMapping in its own files
- #3706 [LinearSolver.Direct] Make sure the matrix is factorized in SparseCholeskySolver
- #3693 [Helper] Fix FileRepository::relativeToPath
- #3691 [Spring] Check for nullptr in RestShapeSpringsForceField
- #3687 [Collision] Make the (CubeModel) BoundingTree deterministic
- #3714 [Core] TLink: Fix warnings about comparisons between unnamed enums → ready
- #3713 [GUI.Qt] Clean and fix in the "inspector" panel → ready
- #3711 [all] Remove a bunch of warnings → ready
- #3706 [LinearSolver.Direct] Make sure the matrix is factorized in SparseCholeskySolver → ready
- #3703 [Collision.Geometry] Replace comparison operator for deterministic sort → closed
- #3693 [Helper] Fix FileRepository::relativeToPath → ready
- #3691 [Spring] Check for nullptr in RestShapeSpringsForceField Reviews taken into account → ready
- #3687 [Collision] Make the (CubeModel) BoundingTree deterministic No more regression → ready, but PR #39 in Regression must be merged first
- #2777 [LinearSystem] Refactor matrix assembly → keep to review
- #3702 [IO.Mesh] Fix mesh creation if load called multiple times
- #3701 [SofaCUDA] Reorganize following SOFA structure (4/n)
- #3700 [LinearAlgebra] Fix crash when matrix has no nonzero values
-
[Collision] Make the (CubeModel) BoundingTree deterministic
- https://github.com/sofa-framework/sofa/pull/3703
- #3687 is selected to be merged (code is cleaner, easier to understand and performances difference are probably negligible. Remains to be done: re-generate the regression results.
- [InterventionalRadiologyController] Revert sampling change of behaviour Change of behavior introduced in https://github.com/sofa-framework/BeamAdapter/pull/62. A fix to restore the previous behavior in: https://github.com/sofa-framework/BeamAdapter/pull/88. The fix must be tested on scenes using the components. Decision on the merge will be taken next dev meeting
- #3702 [IO.Mesh] Fix mesh creation if load called multiple times This PR indicates that doLoad is called twice. It is called twice because the callback calls itself. The Data is edited whereas it is an output of the callback. The use of a WriteOnlyAccessor instead of WriteAccessor (or beginEdit) fixes this issue. Ready An issue must be created to warn that a WriteAccessor (or beginEdit) cannot be used in a callback -> https://github.com/sofa-framework/sofa/issues/3709
- #2777 [LinearSystem] Refactor matrix assembly Reviews are required → keep to review
- #3309 [Sofa.Core] Refactor BaseObject::canCreate & BaseObject::create → wip
- #3687 [Collision] Make the (CubeModel) BoundingTree deterministic Wait for regression results → keep to review
- #3691 [Spring] Check for nullptr in RestShapeSpringsForceField instead of invalidating the component, return silently → wip
- #337 Fix test according to the fix of string creation Depends on https://github.com/sofa-framework/sofa/pull/3702 → keep to review
- #336 Support dev environments on Windows Ready but to test with the installed SOFA. → ready
- #335 Prevent division by zero Exception must be thrown if nfo.size() is zero. If nfo.size() is zero, it must indicate a bug in SOFA. Need to be investigate to locate the bug. → keep to review
- #3698 [Geomagic] Fix potential crash at exit when device has not been init
- #3692 [MechanicalLoad] Stupid check for consistency between state and topology
- #3690 [FEM.Elastic] Check for nullptr in BeamFEMForceField
- #3685 [all] Simple robustification
- #3684 [SofaCUDA] Remove BeamLinearMapping<Rigid3fTypes,.>
- #3683 [Analyze] Raw pointers to Links
- #3682 [all] Give reason when component cannot be created
- #3678 [Config] Disable SOFA_EXTERN_TEMPLATE
- #3677 [Simulation] Error when trying to load a non-existing file
- Organization of the STC#15: more information coming very soon!!
- Work on CMake in Caribou plugin and associated SofaPython3 plugin by Rémi
- Discussion about FEM for continuum mechanics: TetahedronFEMForceField vs TetrahedralCorotational no more differences
- TetrahedronFEMForceField proposes linear elasticity in small deformation, a corotational approach for large displacement, a corotational-SVD approach
- TetrahedralCorotationalFEMForceField proposes the same with without factorizing code from TetrahedronFEMForceField (no inheritance). Erik started a work of factorization with TetrahedronFEMForceField
- FastTetrahedralCorotationalForceField: results differ due to code optimizations/approximations
- #3692 [MechanicalLoad] Stupid check for consistency between state and topology → ready
- #3691 [Spring] Check for nullptr in RestShapeSpringsForceField componentState to be added → wip
- #3690 [FEM.Elastic] Check for nullptr in BeamFEMForceField → ready
- #3687 [Collision] Make the (CubeModel) BoundingTree deterministic The use of stable_sort is slower than the basic sort. While having a deterministic result is expected for CI and for industrial applications. A more efficient while deterministic approach could be found like an additional check on other dimensions in the comparison operator. Test and benchmark should be done. → to be rediscussed
- #3685 [all] Simple robustification → ready
- #3684 [SofaCUDA] Remove BeamLinearMapping<Rigid3fTypes,.> → ready and fast merge
- #3683 [Analyze] Raw pointers to Links In an effort of generating the documentation, Alex fixed components crashing at initialization without data input. Paul noted that AverageCoord might be wrong for the Quat parts since a statistical average should be computed. PR to come → ready
- #3682 [all] Give reason when component cannot be created Clean is needed to clean the reason why a component cannot be created. Logs therefore are added, highlighting the fact that canCreate functions are sometimes copypasted. #3309 and #3311 were also going in this direction. #3309 factorizing this part of the code is set back to review. → ready
- #3680 [mapping] RigidRigidMapping: fixes init Feedback on the code given to Eulalie, and Paul will take a look → keep to review
- #3677 [Simulation] Error when trying to load a non-existing file Tests are added. → ready
- #2988 [All] Propose a new gravity API Not enough convincing arguments to bring such a breaking feature into SOFA. → close after STC#15
- #2777 [LinearSystem] Refactor matrix assembly Geometric stiffness is managed even for mapped non-linear mappings. Only current implementations of non-linear mappings are strange in several codes (like RigidMapping, where geometric stiffness behavior is deactivated by default) → stay tuned
- #3694 [Testing] Fix CMake config after removal of compat
- #3689 [IO.Mesh] Fix UB when filename is empty
- #3688 [SofaCUDA] Add missing templates for Cuda MechanicalObject
- #3686 [MultiThreading] Empty string instead of null pointer in DataExchange
- #3676 [Multithreading] Fix AnimationLoopParallelScheduler
- #3675 [Defaulttype] Add generic precision aliases for Mat templates
- #3674 [CI, Scenes] Restore custom parameters for the scene-tests
- #3672 [Helper] ArgumentParser: Fix map insertion when parsing more than once
- #3671 [Helper, GL] Fix various memleaks
- #3670 [MechanicalLoad] Fix ConstantForceField when no force given
- #3668 [MultiThreading] Implement addDForce in ParallelStiffSpringForceField
- #3666 [Helper,Geometry] Move proximity classes into free functions
- #3665 [Core] Use std::function for Link's Validator (and fix UB)
- #3664 [Core] Fix UB (misaligned address) when comparing string
- #3660 [SofaCUDA] Reorganize following SOFA structure (3/n)
- #3655 [all] Lifecycle v23.06 4/n
- #3654 [all] Lifecycle v23.06 3/n
- #3649 [all] Lifecycle v23.06 2/n
- Organization of the STC days in Paris
- Location being defined
- !!! Dates will be changed : 23 → 26th May !!!
- A new graph to present how to contribute code projects in the dev process of SOFA: Contributing guideline
- ALL PR must be first rebased with #3672 to check the tests
- Lifecycle for v23.06 is being prepared
- Log mutex locked twice (leading to crash) · Issue #3610
- Qt error is catched and displayed with msg. This creates a msg within another msg which generates a double mutex. Recursive mutex could solve it but it looks more like a design issue. We should maybe avoid forwarding messages within a SOFA msg
- Work on non-linear mappings continues: RigidMapping has been reviewed. An API is still there (getK(), a data geometricStiffness) but seems to be broken. The implementation should be assessed
- #3672 [Helper] ArgumentParser: Fix map insertion when parsing more than once Arguments of SOFA seem not to consider the path of a file if the arguments are given before the file path. Several scenes fail. It needs to be investigated and fixed in another PR → ready & merged
- #3671 [Helper, GL] Fix various memleaks MeshTopologyLoader uses the FactoryMesh::create function which creates a pointer but does not delete it. More generally MeshTopologyLoader #42 mention the fact that this part of the code should be deprecated (but it is still used in SparseGridRamification) → ready
- #3670 [MechanicalLoad] Fix ConstantForceField when no force given In the initData of the d_force data, it should be set to an explicit default value → wip
- #3668 [MultiThreading] Implement addDForce in ParallelStiffSpringForceField → ready
- #3666 [Helper,Geometry] Move proximity classes into free functions → ready
- #3665 [Core] Use std::function for Link's Validator (and fix UB) → ready
- #3664 [Core] Fix UB (misaligned address) when comparing string → ready
- #3655 [all] Lifecycle v23.06 4/n Wait for CI and merge → keep to review
- #3654 [all] Lifecycle v23.06 3/n → ready
- #2777 [LinearSystem] Refactor matrix assembly Should not wait for the integration of the feature of geometric stiffness. Few fixes to be done and then ALL should test their scene with this new API. → keep to review
- #3672 [Helper] ArgumentParser: Fix map insertion when parsing more than once
- #3667 [MultiThreading] Remove obsolete documentation
- #3660 [SofaCUDA] Reorganize following SOFA structure (3/n)
- #3658 [Collision.Geometry] Fix transparency while displaying the Bounding Collision Cubemodel
- #3650 [SofaCUDA] No longer use deprecated texture references in TetraTLED
- #3649 [all] Lifecycle v23.06 2/n
- #3635 [Scenes] Use "floating-point type"-independent templates
- #3634 [all] Lifecycle v23.06 1/n
- #3627 [Sofa] Remove warnings
- #3626 [Collision.Response.Contact] Implement addKToMatrix for PenalityContactForceField
- #3605 [SofaCUDA] Reorganize following SOFA structure (2/n)
- #3535 [all] Lifecycle v22.06
- Discussion about the organization of the SOFA Technical Committee (STC)
- Update about Jessy’s internship
- Contributing guideline: a new scheme will be proposed to clarify the discussion & contribution process
- Gitter moved to [Matrix]. TODO : add widget for recent activity
- Cuda async template unavailable #3644
- Template auto-instantiation caused a problem with CUDA. The role of template auto-instantiation should be re-discussed while the current fix removing the replacement of CRS_f to CRS_d is satisfactory for now. Update on the Caribou plugin: CMake of the SofaCaribou is being made similar to SOFA. For Caribou, CMake macros are not doing what is needed on Windows with python
- CUDA : review the content of SofaCUDA and make it compatible with other plugins (Defrost)
- CI : idea of STC discussion could be to clean all tests/scenes on the CI
- #3650 [SofaCUDA] No longer use deprecated texture references in TetraTLED Texture references have been disabled. Texture object could also have been used but it would have needed a dense refactoring. So a GPU pointer has been preferred. Fred will test the PR, Hexahedron is to be done. → keep to review
- #3649 [all] Lifecycle v23.06 2/n Wait for #3634 → keep to review
- #3635 [Scenes] Use "floating-point type"-independent templates → ready
- #3634 [all] Lifecycle v23.06 1/n → wait CI and then ready
- #3627 [Sofa] Remove warnings Remove both attribute [ [ maybe_used ] ] and the variable itself which does not seem to be actually used in the computation → back to wip
- #3535 [all] Lifecycle v22.06 Considered as ready → ready
- #2777 [LinearSystem] Refactor matrix assembly Will be rebased and tested in the next days → keep to review
- #3646 [defaulttype] Fix cuda template instantiation
- #3637 [GUI.Qt, Multithreading] Fix compilation when SReal=float
- #3636 [Topology.Container.Grid] RegularGrid: Fix rounding errors with SReal=float
- #3633 [Type] Fix massive warning due to Mat.h
- #3632 [SofaCUDA] Clean removed code and add useful one
- #3629 [Component.Engine] Replace some explicit instanciations on double with SReal
- #3628 [Sofa.framework] Compile and run tests when SReal is float
- #3626 [Collision.Response.Contact] Implement addKToMatrix for PenalityContactForceField
- #3625 [Contributing] Update file to mention good first issue
- #3624 [Tutorials] Fix CMake with Sofa.GUI
- #3620 [Simulation.Graph] SimpleAPI: Remove reference to Node argument in createChild()
- #3607 [MultiThreading] Factorize task scheduler user
- #3605 [SofaCUDA] Reorganize following SOFA structure (2/n)
- #3601 [SofaCUDA] Reorganize following SOFA structure (1/n)
- 2-week Jessy's internship on SOFA with investigations on pip install / conda install (SOFA deployment for python environment)
- Training material getting updated (continuum mechanics with Caribou)
- Soon, Inria Days on HPC : topic of resolution of linear systems could be of interest. We'll keep you updated!
- Events: SOFA has the opportunity to attend Vivatech & SoFraSimS 2023
- CI slaves : validity date extended Strange behavior using PenalityContactForceField with flashing contact point Update on the Caribou plugin Several repositories where CMake macros needed changed
- Several questions risen
- On Windows, why dlls are not copied in bin/ in when installing (unless, executing runSofa is impossible)
- On Windows, why keeping the folders Release/Debug/...
- Why the rules sofa/cmake/Module/windeployqt.cmake specify specific rules for the folders "resources" et "location"?
- What has been tested
- In-tree compilation (Windows / Linux(wsl/debian))
- Use of Python bindings (Windows / Linux(wsl/debian))
- Remains to be tested
- MacOs
- Out-of-tree compilation
- #3629 [Component.Engine] Replace some explicit instanciations on double with SReal → ready
- #3628 [Sofa.framework] Compile and run tests when SReal is float → ready
- #3627 [Sofa] Remove warnings Suggestion made → keep to review
- #3626 [Collision.Response.Contact] Implement addKToMatrix for PenalityContactForceField Check force derivation but impossible to test in a simulation since the feature is not available before #2777 → keep to review
- #3625 [Contributing] Update file to mention good first issue → ready
- #3624 [Tutorials] Fix CMake with Sofa.GUI Compilation error due to missing updates includes → wip
- #3620 [Simulation.Graph] SimpleAPI: Remove reference to Node argument in createChild() → ready
- #3607 [MultiThreading] Factorize task scheduler user Compilation has been fixed (decoration with deprecation was creating the error) → ready
- #3605 [SofaCUDA] Reorganize following SOFA structure (2/n) Merged first #3601 → keep to review
- #3601 [SofaCUDA] Reorganize following SOFA structure (1/n) Discussion on namespace (for code *.cu) will be updated later → ready
- #2777 [LinearSystem] Refactor matrix assembly PR is getting cleaned and updated (reason why the #3626 has been created). Before merging it, Alex would like to make sure that mapped non-linear mappings. InteractionForceFields are now working with the new API. However, performance and pattern-constance awareness are now paused. This could be done later. → keep to review
- #3622 [all] Update totalmass to totalMass
- #3612 [SofaPhysicsAPI] Fix compilation by replacing use of SofaGUI by sofa::GUI::common
- #3611 [Cmake] Update warning replacement message for deprecated macro sofa_add_XX
- #3596 [MultiThreading] Parallel springs
- #3590 [Collision.Detection] Rename DefaultPipeline into CollisionPipeline
- New consortium member! University Clermont Auvergne interested in stent simulation, thanks for their support
- New opensource plugin coupling SOFA - Unreal Engine released by InfinyTech3D
- New tutorial on parallelism in SOFA from Alexandre
- Training sessions going on! Check online for next dates
- Work on Caribou get restarted!
- [BeamAdapter] Change of behaviour in InterventionalRadiologyController #87 Bug has been identified for beams that are not visible, the computation using the curvilinear abscissa fails → a PR will be submitted by Camille with his python script possibly fixing the issue
- #3612 [SofaPhysicsAPI] Fix compilation by replacing use of SofaGUI by sofa::GUI::common → ready
- #3611 [Cmake] Update warning replacement message for deprecated macro sofa_add_XX → ready
- #3607 [MultiThreading] Factorize task scheduler user Work factorizing and cleaning the code but compilation fails → wip
- #3605 [SofaCUDA] Reorganize following SOFA structure (2/n) Wait for #3596, apply the new architecture using SofaCUDA → let it to review waiting for Alex feedback
- #3601 [SofaCUDA] Reorganize following SOFA structure (1/n) New architecture validated: SofaCUDA/component/… namespace sofa::gpu::cuda remains for utility code, to be discussed if we want to keep it → to review
- #3596 [MultiThreading] Parallel springs Reviews taken into account → ready
- #3590 [Collision.Detection] Rename DefaultPipeline into CollisionPipeline Use SOFA_DEPRECATED_ATTRIBUTE instead → wip
- #332 Update cmake.in to fix configuration step → ready and merged
- #3606 [Components] rename shadow variable
- #3603 [SofaCUDA] Missing support for double precision floating-points
- #3599 [MultiThreading] Prepare data for rendering in parallel
- #3598 [MultiThreading] Reorganize following SOFA structure
- #3597 [Simulation] SceneCheck can be added in plugins
- #3595 [GUI] Fix CMake Packaging
- #3594 [Spring] Remove duplicated code
- #3592 [defaulttype] Template aliases for CRS matrices
- #3588 [examples] Apply Sofa/Component structure for all examples
- #3586 [LinearAlgebra] Factorize rotateMatrix in RotationMatrix
- SOFA v22.12 is out, experience it!
- Community recruits!
- Coupling of SOFA and Unreal Engine is coming soon!
- Caribou plugin: new investigation on CMake and FEM
- Soon a tutorial video on coding with Multithreading plugin in SOFA
- Float compilation: all scenes are usually using
template=Vec3d
we should use the SReal versiontemplate=Vec3
allowing us to test the float cases. Is float really useful? Remark added in #3451
-
#3601 [SofaCUDA] Reorganize following SOFA structure (1/n)
This PR does not change the namespaces, it only moves the files into the SOFA architecture and it adds a compatibility layer.
SOFA_ENABLE_LEGACY_HEADERS
variable is used to activate the compatibility layer. → approved but let open for further review (<7 days) - #3599 [MultiThreading] Prepare data for rendering in parallel → ready
-
#3598 [MultiThreading] Reorganize following SOFA structure
Plugin proposing code is now following the architecture of SOFA.
SOFA_ENABLE_LEGACY_HEADERS
variable is used to activate the compatibility layer. → ready -
#3597 [Simulation] SceneCheck can be added in plugins
This PR arises from the fact that we want to invite more users to use codes from the Multithreading. SceneCheck is generalized. We discussed the fact that in the Multithreading plugin components are named MultithreadingNameOfChildClass: the SceneCheck now suggests to use this verbose component name.
Discussion took place on the suggestion to use such code, should the MT classes be aliases of the sequential code, should the user have a boolean
threaded
data option that would activate one or the other version. → ready - #3596 [MultiThreading] Parallel springs Note on the call super. #3317 was a PR testing a new design. Call super issue open in #785. Work todo: use modern accessors instead of beginEdit → wip
- #3595 [GUI] Fix CMake Packaging → ready
- #3592 [defaulttype] Template aliases for CRS matrices Related to issue #3451 → ready
- #3590 [Collision.Detection] Rename DefaultPipeline into CollisionPipeline To be rebased → wip
- #3588 [examples] Apply Sofa/Component structure for all examples To be rebased → wip
- #3586 [LinearAlgebra] Factorize rotateMatrix in RotationMatrix Iteration process of the loop updated → ready
- #3603 [SofaCUDA] Missing support for double precision floating-points
- #3594 [Spring] Remove duplicated code
- #3593 [Mass] Remove empty loop in addForce
- #3591 [image] Fix Sofa.GUI dependency
- #3586 [LinearAlgebra] Factorize rotateMatrix in RotationMatrix
- #3581 [plugins] rename shadow variable
- #3575 [Core] Display flags spelling suggestion
- #3574 [MultiThreading] ParallelBruteForceBroadPhase: Fix assertion error
- #3573 [Project] Start v23.06 dev phase
- #3572 [Multithreading] 2 steps to maximize coalescing memory access
- #3570 [all] Fix some warnings further v22.12
- #3556 [LinearAlgebra, LinearSolver.Direct] make getSubMatrixDim() compile-time constant
- #3550 [GUI] GUI libraries as plugins
- #3526 [All] Fix example scenes showing warnings or errors
- #3465 [Helper] Use DataTypeInfo in NameDecoder
- SOFA v22.12 is out, experience it and share your feedback!
- Tutorial on how to contribute a bug fix in SOFA?
- STLIB SPLIT: a discussion could take place to evaluate the need to bring it back into SofaPython3 and discuss its format
- Interest of having SOFA installer with conda
- #3590 [Collision.Detection] Rename DefaultPipeline into CollisionPipeline Additional c++ error when using the old class and new namespace → wip
- #3588 [examples] Apply Sofa/Component structure for all examples Scene tests are failing / crashing → wip
- #3586 [LinearAlgebra] Factorize rotateMatrix in RotationMatrix We could find a way to explicit the type and the iteration process of the loop. Comment upcoming → keep to review then ready
- #3581 [plugins] rename shadow variable → ready
- #3575 [Core] Display flags spelling suggestion → ready
- #3574 [MultiThreading] ParallelBruteForceBroadPhase: Fix assertion error Could be replaced by the parallelForEach in another PR → ready
- #3572 [Multithreading] 2 steps to maximize coalescing memory access Conflicts. ParallelHexa had a naive approach (each thread with its own memory then serially assembles the result). Loop is now done over the nodes then requesting the surrounding elements. Implementation could be extended to the addForce (even if not the computational bottleneck) → wip
- #3570 [all] Fix some warnings further v22.12 → ready
-
#3556 [LinearAlgebra, LinearSolver.Direct] make getSubMatrixDim() compile-time constant
Parse function should warn when using the removed Data
blockSize
🙏 Then, without additional feedback, will be merged → wip - #3550 [GUI] GUI libraries as plugins → ready
- #3526 [All] Fix example scenes showing warnings or errors Error opening file particleGravity.data → wip
- #3465 [Helper] Use DataTypeInfo in NameDecoder CI started, seems ok → ready
- #3585 [LinearAlgebra] Unit tests for RotationMatrix
- #3584 [Type] Construct matrices based on initializer-lists
- #3582 [LinearAlgebra] Remove wrong comment
- #3576 [CollisionOBBCapsule] Fix generation of configuration file for installation
- #3565 [Config] Remove unused SOFA_WITH_THREADING option
- #3563 [FEM.Elastic] Consistent default values for poisson's ratio and Young's modulus
- #3561 [SofaEulerianFluid] Fix: rename shadow variable in Fluid2D
- #3559 [Type] Quat: small optimization for axisToQuat()
- #3552 [MultiThreading] Introduce ParallelTetrahedronFEMForceField
- #3550 [GUI] GUI libraries as plugins
- #3548 [Core] Introduce parallel for each
- #3541 [StateContainer] Avoid code duplication in MechanicalObject
- #3534 [all] Lifecycle v22.12
- SOFA v22.12 upcoming this week
- SOFA Week 2022 - Symposium and STC#14 recordings available on YouTube
- [Sofa.LinearAlgebra] Pull Insimo's CompressedRowSparseMatrix into the main branch (#3515) Working branch only two tests were giving different results on non-zero values in CRS (python test check_matrix). Else useful and improving performance! Failing tests to be investigated.
- [MultiThreading] Implement domain decomposition for a lock-free parallelism (#3566) Make a ForceField parallel using domain decomposition (it is therefore only useful in an unbuilt CG): within one domain we cannot have twice on the same node. The decomposition is done at init. After fixing a bug in the benchmark, the performance gain is not as good as expected … The investigation led to an PR improving the naive version.
- Doc SofaPython3: a new way to generate the doc with sphinx and send it to readthedoc, using GitHub has to be investigated (#329)
- #3576 [CollisionOBBCapsule] Fix generation of configuration file for installation → ready
- #3573 [Project] Start v23.06 dev phase Waiting for the release to be completed (possible change in CHANGELOG if anything is backported) → keep to wip
- #3565 [Sofa.Config] Remove unused SOFA_WITH_THREADING option → ready
- #3563 [FEM.Elastic] Consistent default values for poisson's ratio and Young's modulus → ready
- #3561 [SofaEulerianFluid] Fix: rename shadow variable in Fluid2D → ready
- #3559 [Sofa.Type] Quat: small optimization for axisToQuat() → ready
- #3556 [LinearAlgebra, LinearSolver.Direct] make getSubMatrixDim() compile-time constant Could affect some private CUDA codes. Notify devs → keep to review
- #3552 [MultiThreading] Introduce ParallelTetrahedronFEMForceField Merge #3548 first then ready → ready
-
#3550 [Sofa.GUI] GUI libraries as plugins
Great work from Fred: runSofa was considering that Sofa.GUI was in charge of loading the libraries. This has been cleaned and now
- Qt/Batch/HeadLessRecorder are loadable plugins and register themselves in the GUIManager, if loaded .
- Batch is still forcefully loaded by runSofa
- SofaGui is officially deprecated → keep to review until next week
- #3548 [Core] Introduce parallel for each Will be merged this week! → ready
- #3541 [StateContainer] Avoid code duplication in MechanicalObject Report no visible change on either the speed or the accuracy → ready
- #3536 [DefaultType] RigidCoord/Deriv become iterable Devs are circumspect about the iteration of two different things : Position and Orientation. → close
- #3534 [all] Lifecycle v22.12 → ready
- #329 Update SofaPython3 plugin documentation Firstly regenerate doc and see how to connect with readthedoc. Comments given → wip
- #3564 [FEM.Elastic] Minor refactoring and optimization in draw
- #3562 [GUI] Revert unexpected change of behavior introduced in #3299
- #3560 [Helper] Fix GenerateRigidMass redirection
- #3551 [Core] Give threads a name on Windows
- #3545 [FEM.Elastic] Fix unit tests warnings
- #3501 [Solver.Direct] Unit test on topological changes leading to empty system
- CI MacOS using python has an issue, a workaround is proposed here, do not hesitate to apply it in your own plugin repositories. This might be fixed later (python action or homebrew)
- Use of external libraries could be considered to implement C++ code compatible with any accelerating architecture (GPU, multithreaded CPU etc). Sycl is an interesting example (Intel, Khronos)
- #3548 [Core] Introduce parallel for each Nice work to avoid the boiler plate code of Task with the old TaskScheduler. Tested and applied in BeamAdapter by Fred → ready but notify other reviewers to give them time to review/read
- #3545 [FEM.Elastic] Fix unit tests warnings → ready
- #3541 [StateContainer] Avoid code duplication in MechanicalObject Performances will be tested in the coming days → keep to review
- #3536 [DefaultType] RigidCoord/Deriv become iterable Need to know more about the utility, get back to Alex → keep to review
- #3535 [all] Lifecycle v22.06 For DISABLED macro, we must make sure that the compilation fails using =delete or DepreactedAndRemoved → back to wip
- #3526 [All] Fix example scenes showing warnings or errors Milestone v23.06, deeper review needed (400 files changed) → keep to review
- #3501 [Solver.Direct] Unit test on topological changes leading to empty system → ready
- #328 [CI] Fix mac ci with homebrew workaround → ready
- #327 Add unit test for Mass multiple inheritance → ready
- #3560 [Helper] Fix GenerateRigidMass redirection
- #3557 [SofaEulerianFluid] Fix: rename shadow variable in Fluid3D
- #3549 [GUI.Common] Cmake: Fix message when searching for Sofa.GL
- #3547 [Core] Missing include in SingleStateAccessor
- #3546 [Modeler] rename shadow variable
- #3540 [SofaPhysicsAPI] Add methods and C bindings to load SOFA ini file, plugins and messageHandler
- #3539 [SofaPhysicsAPI] Add C bindings to access C++ api
- SOFA v22.12 release is postponed due to sick leave of the release manager Sorry for the delay!
- CI with macos-3 is down again Future investigation on why the comm macos-3 ↔ jenkins fails is needed
- CGAL was disactivated see commit Consider reactivating CGAL plugin on the CI when the CI will be fixed
- #3526 [All] Fix example scenes showing warnings or errors Has not been reviewed yet. Need more time. Will probably not be ready for v22.12 → keep to review
- #3535 [all] Lifecycle v22.06 Changes requested → wip
- #3534 [all] Lifecycle v22.12 Changes requested → wip
- #3465 [Sofa.Helper] Use DataTypeInfo in NameDecoder Wait for CI then ready but wait for v23.06 → ready / postponed
- #84 Remove deprecation warnings Approved → ready
- #80 Restore BeamLengthMapping Restored for now, but don't know what this component does. To deprecate later if needed. → keep to review
- #50 [Mapping] Clean and optimize AdaptiveBeamMapping Still decisions to take on the support of std parallelism → keep to review
- #326 Remove v22.06 for the CI → ready and merged
- #325 Fix: mass binding is defined to have multiple inheritance → ready and merged
- #3547 [Core] Missing include in SingleStateAccessor
- #3543 [Simulation.Core] Add the _API flag to Task::Status
- #3542 [Tests] Update required plugins in tests
- #3529 [LinearSolver.Direct] Segfault in SparseLDLSolver due to empty system matrix
- #3520 [SofaPhysicsAPI] Add several methods using output parameters
- #3519 [SofaPhysicsAPI] Some small cleaning and add access to VisualModel*
- #3491 [Simulation] Worker threads are no longer static
- #3482 [Simulation] Task scheduler can accept callable
- SOFA v22.12 freeze of branch today, release process will start right after this branch creation
- Next week is the last 2022 meeting! We are now preparing the 2023 agenda (exact dates are being validated)
- HackaTech in Grenoble in January
- Integration of matrix assembly branch: further to STC, the conclusion was that the interaction between several objects is a feature which is interesting to keep. There is therefore still work to do and this branch will not get into the release however it should be merged in master as soon as possible (January is targeted).
- PRs respecting the lifecycle are open: #3534 & #3535
- Label "pr: test" is added
- #3529 [LinearSolver.Direct] Segfault in SparseLDLSolver due to empty system matrix Damned let's rebase it and re-run the CI. After doing it: fix are legit and must be fixed. → back to wip
- #3526 [All] Fix example scenes showing warnings or errors Not ready yet, let's see if it has to be in v22.12.00 or to be later backported in v22.12.01. Comments done. → keep to review
- #3520 [SofaPhysicsAPI] Add several methods using output parameters To be rebased, commented → wip
- #3519 [SofaPhysicsAPI] Some small cleaning and add access to VisualModel* →ready
- #3491 [Simulation] Worker threads are no longer static Rebase made the diff way clearer. Wait for CI then ready → keep to review
- #3482 [Simulation] Task scheduler can accept callable Wait for CI then ready → keep to review
- #316 Add a counter to memcach so that we can detect data change Fix needed when we use the cache of SOFA data loaded into python. The unit test had an issue but not emitting a proper test error. A benchmark comparing the use and no use of this cache in term of performance would be really nice. → ready
- #315 [SofaConstraintSolver] Add bindings to set W, lambda and dfree PR is a nice hack which is being tested by various users. API of SOFA needs to be updated and would therefore need more work. Let's keep it → to review + experimental
- #314 [Sofa.Core] Add spelling suggestion to addObject & addChild → ready
- #3518 [All][v22.06] Push PR to be backported to create SOFA v22.06.01
- #3514 [plugins] SofaCUDA does not require Sofa.GL
- #3512 [LinearSolver.Direct] Fix crashing unit tests
- #3508 [FEM.Elastic] Clean draw method
- #3505 [VectorTypeInfo] Change default handling of data buffer
- #3480 [Simulation] Separate factory code from TaskScheduler
- Preparation of the 2023 agenda: make your 2023 events known! Share them with us: [email protected]
- Discuss the creation of the v22.12 branch and freeze for release
- Branch will be created and frozen
- Notify us for any upcoming contributions to be integrated
- Only pending contribution we are aware of: matrix assembly
- Contribution process for large contribution (breaking / incompatible with SOFA)
- A scheme presenting the process for integration of such contributions could be formalized
- Erik PR for v22.06: the very same branch will be created and merged in the SOFA repository
- #3508 [FEM.Elastic] Clean draw method → ready
- #3505 [VectorTypeInfo] Change default handling of data buffer → ready
- #3491 [Simulation] Worker threads are no longer static Sounds good but PR needs a rebase, it will ease the review → keep to review
- #3482 [Simulation] Task scheduler can accept callable Sounds good but PR needs a rebase, it will ease the review → keep to review
- #3480 [Simulation] Separate factory code from TaskScheduler → ready
- #3465 [Sofa.Helper] Use DataTypeInfo in NameDecoder Test failing →back to wip
- #318 [DataHelper] Change default access of vector data buffer → ready
- #316 FIX Issue 313 Set a proper title, CI jobs restarted → keep to reveiw
- #315 [SofaConstraintSolver] Add bindings to set W, lambda and dfree Awaiting reply to comment → keep to review
- #314 [Sofa.Core] Add spelling suggestion to addObject & addChild. Update of pybind11 required, to be done but not urgent (no time currently, sorry) → keep to review
- #3503 [MechanicalLoad] Move getValue call out of the loops
- #3500 [Solver.Direct] Unit tests on empty system
- #3498 [Type] Conversion to scalar for Mat1x1
- #3495 [Core] Support getObjects on set containers
- #3494 [all] Remove compilation warnings
- #3492 [Core] Minor cleaning
- #3488 [applications] remove shadow variable
- #3476 [MultiThreading] Clean file format
- #3474 [Lagrangian.Solver] Merge duplicated code into small but expressive functions
- #3471 [Visual] Introduce TrailRenderer
- #3357 [all] Remove in-class typedefs pointing to common sofa::type
- Update further to the SOFA Week 2022: 231 registered participants!!!
- Training working smoothly
- Symposium
- Hard to motivate people to contribute → does not produce a real contribution
- Consortium : could present the community activity worldwide
- Nice event showing the activity of international partners, mostly users
- Inria : would be nice to have general presentation of the team
- STC
- No real dynamics, hard to embark new people
- Coding-sprints : should we skip it or make it separated?
- Coding-sprints : onsite event should help
- Coding-sprints : STC tasks too large / complicated – coding sprint more focused !
- Coding-sprints : e.g. a week with a scrum organization
- Preparation of the 2023 agenda: make your 2023 events known!
- Accompany new users and make them become developers
- Weekly meetings : open to all (including Inria teams)
- Support + companionship till the contribution
- At the SOFA dev → presentation of technical topics, one topic per month, upvoted by the students/engineers
- #3476 [MultiThreading] Clean file format → ready
- #3474 [Lagrangian.Solver] Merge duplicated code into small but expressive functions → ready
- #3471 [Visual] Introduce TrailRenderer → ready
- #3465 [Sofa.Helper] Use DataTypeInfo in NameDecoder Unit and scene tests are failing due to Ogl → wip
- #3357 [all] Remove in-class typedefs pointing to common sofa::type Test is failing. GItHub diff is unclear. [ci-build][force-full-build] to see if the test is related to the PR. → keep to review
- #3488 [applications] remove shadow variable
- #3475 [Topology.container] Fix missing TopologyElementType setting in SparseGridTopology init
- #3468 [Constraint.lagrangian] Update BilateralInteractionConstraint namespace
- #3466 [Sofa.Core, SofaSphFluid] Fix compilation with MSVC 2022, v17.4
- #3464 Revert "[Sofa.Core] Linear time getRoot() method in BaseNode and Node"
- #3462 [DefaultType] fix rigidcoord compilation
- #3456 [GUI.Qt] Restore Stats (Charts) and DocBrowser for Qt6
- #3454 [GUI.Qt] Restore QGLViewer for Qt6
- #3452 [image, FEM, LinearSolver] fix Eigen3 assertion with SVD
- #3422 [Helper] Portable thread local storage duration
- #3404 [Core] Convert warning to error in object factory
- #3042 [Core, Helper] Add spelling suggestion in ObjectFactory
- SOFA Week 2022 : next week!!! Already +185 registered participants and program all available online
- Release manager needed! Share all our job offers
- STC #14: add the topics you would like to address in discussions
- Timer for debug only has been increased by Fred
- A new test is failing : RemovingBilateralInteractionConstraint.scn on MacOS
- #3465 Use DataTypeInfo in NameDecoder Refactoring could be done in NameDecoder to keep only string resolution from the compiler, but for class template, the code could be moved in BaseClass using defaulttype. Damien will work on it → wip
- #3464 Revert "[Sofa.Core] Linear time getRoot() method in BaseNode and Node" Breaks some scenes with a diamond (node with multiple parents). Issue reported in #3469 https://github.com/sofa-framework/sofa/issues/3469 → ready
- #3462 [DefaultType] fix rigidcoord compilation Follows #3424 → ready
- #3461 [DefaultType] Remove template aliases Might be closed since #3465 has been opened. → closed
- #3456 [GUI.Qt] Restore Stats (Charts) and DocBrowser for Qt6 We know fully support Qt6, we should update the doc accordingly. → ready
- #3454 [GUI.Qt] Restore QGLViewer for Qt6 → ready
- #3452 [image, Component.FEM, Component.LinearSolver] fix Eigen3 assertion with SVD → ready
- #3424 [Helper] Add mutex in IdFactory Not sure it solves any problem and it might degrade performances. A full refactoring of AdvancedTimer should be the objective to make it simple, thread-safe and shiny! → close
- #3422 [Helper] Portable thread local storage duration Go for it! AdvancedTimer may not itself be thread-safe (and a pretty complex class) → ready
- #3360 [DefaultType] fix rigidcoord compilation It would be nice to have an associated test. Translation in 3,3 case is not supported (toMatrix gives only a rotation matrix). This PR fixes the compilation → ready
- #3357 [all] Remove in-class typedefs to Vector3 Types with new naming are proposed. Should be moved in another PR → wip
- #3042 [Core, Helper] Add spelling suggestion in ObjectFactory Checking spelling is nice, a single header only lib has been added. A test is added as well. → ready
- #3460 [SofaCuda] Add method in CudaVector Accessor and CudaBilateralInteractionConstraint
- #3453 [Examples] Fix & Clean ProjectToPlaneConstraint and RegularGridTopology_dimension scenes
- #3448 [Simulation.Core] Clean Multithreading code
- #3439 [plugins] Fix warnings in SofaSphFluid and image
- #3436 [Sofa.Config] CMake: Remove "both" as a choice for SOFA_FLOATING_POINT_TYPE parameter
- #3435 [All] Fix compilation with float as floating_point_type
- #3428 [core.topology] Add mechanism to check checkTopologyInputTypes
- #3413 [solidmechanics.fem] Clean and optimise TriangularFEMForceField draw method
- #3369 [Topology] Fix topologyHandler removal
- #3339 [Mapping] Add checks at init in TopologicalMapping
- #3329 [Constraint.Lagrangian] Update BilateralInteractionConstraint to support topological changes
- #3042 [Core, Helper] Add spelling suggestion in ObjectFactory
- SOFA Week 2022 in two weeks, time to RE-GI-STER
- Release manager needed! Share all our job offers
- Timeout seems to occur in debug, Fred suggested to increase the timer for debug only
- Backport of PRs should be done and a tag v22.06.01 should be created
- A discussion about a "SOFA 2.0" is scheduled on day 2 of the STC (Thursday 17th). Do not hesitate to join and create your SOFA wish-list
- Types in SOFA: internal type in class or SOFA type::
- When to use internal types
- Define a naming convention for internal types (through a PR in doc)
- Issue of manpower: how to propagate this change among many other
- #3448 [Simulation.Core] Clean Multithreading code → ready
- #3439 [plugins] Fix warnings in SofaSphFluid and image Message should not be addressed to users, the drawing should just be invalidated → wip
- #3436 [Sofa.Config] CMake: Remove "both" as a choice for SOFA_FLOATING_POINT_TYPE parameter → ready
- #3435 [All] Fix compilation with float as floating_point_type Nice! Compilation and running the caduceus scene with floats is fixed. FYI no performance gain. Use of signature using SReal → ready
- #3428 [core.topology] Add mechanism to check checkTopologyInputTypes Reviewed and approved → ready and merge
- #3424 [Helper] Add mutex in IdFactory Linked to #3422 → keep to review
- #3422 [Helper] Portable thread local storage duration A priori (Francois J.) since C+11 a thread-safe instantiation is done when initializing a static variable While here using thread_local, it creates one static variable per thread. AdvancedTimer may not itself be thread-safe. Error might come from a concurrent writing of new events in a map in AdvancedTimer. → keep to review
- #3413 [solidmechanics.fem] Clean and optimise TriangularFEMForceField draw method → ready
- #3404 [Core] Convert warning to error in object factory Conflicts to be solved. → wip
- #3369 [Topology] Fix topologyHandler removal New mechanism with a set storing the registered topologies → ready
- #3368 [Topology] Add fonction in BaseMeshTopology to compute all topology containers Two tests are failing and a comment to be added → wip
- #3357 [all] Remove in-class typedefs to Vector3 Compilation issue in tests and bindings. Moreover, types with new naming are proposed. Should be discussed with all. If so, PR title should be updated. → wip
- #3339 [Mapping] Add checks at init in TopologicalMapping CanCreate of TopologicalMapping calls findLinkDest() which checks the link at creation and if not found, the search continues in parent nodes. Issue #3449 created. To be rebased once #3428 is merged, then if CI agrees ready → keep to review
- #3329 [Constraint.Lagrangian] Update BilateralInteractionConstraint to support topological changes Test has been fixed. New force full build (QuaterAngle test strangely failing). → keep to review
- #3447 [test] Fix mutiple component init calls in several tests
- #3446 [All] Fix unnecessary copy to access topology buffer when const ref can be used
- #3434 [Topology.Container] Check at init for Container in Modifier
- #3432 [Mapping.Linear] Fix assert
- #3429 [Topology.mapping] Replace all beginEdit by writeAccessor to access Loc2GlobMap
- #3427 [SofaNewmat] Fix modules
- #3426 [helper.accessor] Support more std vector methods in WriteAccessorVector
- #3423 [SofaMatrix] Update plugin CMakeLists to avoid strong dependency on Qt
- #3421 [image] Remove example scenes requiring Flexible plugin
- #3420 [FEM.Elastic] Speedup hexa drawing in force field
- #3418 [Lagrangian.Solver] Add events in the constraint solver pipeline
- #3412 [TriangularFEMForceField] Avoid double write access to the TriangleInfo Data in TriangularFEMForceField
- #3408 [Topology.mapping] Types cleaning in Edge2QuadTopologicalMapping
- #3407 [SofaCarving] Update and add more tests in SofaCarving_test
- #3401 [Sofa.Core] VecId: move definition of VecTypeLabels in its own Translation Unit
- #3398 [Engine.Analyze] ClusteringEngine: set correct values in load()
- #3393 [Lagrangian.Solver] Deprecate MechanicalAccumulateConstraint
- #3369 [Topology] Fix topologyHandler removal
- #3299 [all] Replace all Vector2, Vector3, Vector4 by their short name alias Vec2, Vec3
- #3242 [Core] Make some functions non-virtual
- SOFA Week 2022: 20 days to register! 14-18th November
- Jobs: our community recruits massively
- We should take part in NAFEMS 2022 on November 24th
- Topics of discussion must be added in preparation of the STC#14
- #3427 [SofaNewmat] Fix modules → ready
- #3426 [helper.accessor] Support more std vector methods in WriteAccessorVector → ready
- #3423 [SofaMatrix] Update plugin CMakeLists to avoid strong dependency on Qt → ready
- #3421 [image] Remove example scenes requiring Flexible plugin → ready
- #3420 [FEM.Elastic] Speedup hexa drawing in force field → ready
- #3418 [Lagrangian.Solver] Add events in the constraint solver pipeline Code in ConstraintSolver should really be separated between core code (in a renamed BaseConstraintSolver class) and the implementation ConstraintSolver. → ready
- #3413 [solidmechanics.fem] Clean and optimise TriangularFEMForceField draw method Review : maybe to create a dedicated function called in addForce. To be discussed in PR. → keep to review
- #3412 [TriangularFEMForceField] Avoid double write access to the TriangleInfo Data in Review done, but not 7 day old. → ready
- #3408 [Topology.mapping] Types cleaning in Edge2QuadTopologicalMapping → ready
- #3407 [SofaCarving] Update and add more tests in SofaCarving_test → ready
- #3404 [Core] Convert warning to error in object factory Scenes to be ignored : error is due to the fact that now CI detects the not-compiled templates. However, the compilation time with these templates increases significantly. → wip
- #3401 [Sofa.Core] VecId: move definition of VecTypeLabels in its own Translation Unit → ready
- #3398 [Engine.Analyze] ClusteringEngine: set correct values in load() → ready
- #3393 [Lagrangian.Solver] Deprecate MechanicalAccumulateConstraint Restart force full build → wait for CI
- #3369 [Topology] Fix topologyHandler removal → wip
- #3368 [Topology] Add fonction in BaseMeshTopology to compute all topology containers Scene test is failing and function naming to be improved → back to wip
- #3339 [Mapping] Add checks at init in TopologicalMapping New approach proposed in the TopologicalMapping to make the checks on input/output topologies. Some missing implementation and find a solution to get the topological element name from enum class. New review needed → wip
- #3329 [Constraint.Lagrangian] Update BilateralInteractionConstraint to support topological changes Test on MacOS failing → back to wip, must be
- #3299 [all] Replace all Vector2, Vector3, Vector4 by their short name alias Vec2, Vec3 branch is protected. Please open it so that we can update and your PR → wip
- #3242 [Core] Make some functions non-virtual Await for regression PR to be merged → keep to review
- #2 [CMake] Fix NG compil without compat → closed
- #4 getTemplateName is no longer virtual merge master and rebuild → keep to review
- #5 Restore tests and add test on getTemplateName → merged
- #7 Remove example scenes requiring Flexible plugin → merged
- #3417 [GL.Rendering3D] OglModel: Minor cleanups
- #3406 [Tests] Update tests to new modules
- #3403 [Sofa.Core] TagSet: move method definitions in cpp
- #3401 [Sofa.Core] VecId: move definition of VecTypeLabels in its own Translation Unit
- #3398 [Engine.Analyze] ClusteringEngine: set correct values in load()
- #3392 [Lagrangian.Solver] Move ConstraintStoreLambdaVisitor in visitors folder
- #3386 [all] Implement getModuleComponentList for most modules
- #3376 [Simulation] Change LoadFromMemory signature to remove unused parameter Size
- #3373 [Helper] Deprecate error-prone resize and add emplace_back
- #3356 [All] Reduce calls to getValue
- #3345 [Config] Option to enable interprocedural optimization
- #3301 [SofaSimpleGUI] Without compatibility layer
- #3271 [Topology] Improve TopologyHandler registration
- [SOFA Week 2022] More than 130 participants registered already, spread the word!
- First PR from Leo Hunout on the SofaGym project!
- CI issues on MacOS, solved by reboot
- STC #14: add the topics you would like to address in discussions
- #3288 [all] Removal of datatype info from Data.h (step 2) → Damien presented the PR and no objection was raised, only a few minor suggestions. Need to keep working on it to complete the PR.
- #3386 [all] Implement getModuleComponentList for most modules → ready
- #3376 [Simulation] Change LoadFromMemory signature to remove unused parameter Size → ready
- #3373 [Helper] Deprecate error-prone resize and add emplace_back → ready
- #3369 [Topology] Fix topologyHandler removal Test are failing → back to wip
- #3368 [Topology] Add fonction in BaseMeshTopology to compute all topology containers Scene test is failing and function naming to be improved → back to wip
- #3360 [DefaultType] fix rigidcoord compilation Changes requested → back to wip
- #3358 [Core] STL parallelism support Postponed until support of Ubuntu 20.04 is dropped → postponed
- #3356 [All] Reduce calls to getValue Conflicts to solve → If conflicts are solve: ready
- #3345 [Config] Option to enable interprocedural optimization → ready
- #3335 [LinearAlgebra] Remove unused operations on BaseMatrix Postponed because code could be used in private plugins → postponed
- #3329 [Constraint.Lagrangian] Update BilateralInteractionConstraint to support topological changes one last tiny change and ready → to review
- #3299 [all] Replace all Vector2, Vector3, Vector4 by their short name alias Vec2, Vec3 A unit test to fix and conflicts to solve. Otherwise ready → to review
- #3294 [Constraint.Lagrangian.Solver] Add GetConstraintForce component Support of multiple objects is validated. Force norm is validated. Unit test is required. → wip
- #3271 [Topology] Improve TopologyHandler registration → ready
- #3242 [Core] Make some functions non-virtual wait more PR related to unit testing to validate. One unit test fails → wip
- #3400 [SofaDistanceGrid] Set invalid state if cannot load mesh
- #3399 [SofaDistanceGrid] Clean examples
- #3396 [Lagrangian.Solver] Move GenericConstraintProblem in its own files
- #3391 [Lagrangian.Solver] Move MechanicalGetConstraintViolationVisitor in its own files
- #3390 [Lagrangian.Solver] Move MechanicalGetConstraintResolutionVisitor in its own files
- #3383 [BarycentricMappers] Fix potential division by 0
- #3382 [CMake] Speed-up Configuration (again)
- #3381 [Config] Change type of CMake message when adding a module
- #3380 [all] Unit tests for getTemplateName in some components
- #3367 [Regression] Add HexahedronFEMForceFieldAndMass to regression tests
- #3365 [CImgPlugin] Replace new keyword with creating unique pointers to properly clean up allocated #3359 [image] Fix CMake warning from deprecated function
- #3351 [examples] Another pass of plugin finder
- #3345 [Config] Option to enable interprocedural optimization
- #3344 [git] Add various temporary files to .gitignore
- #3328 [Constraint.Lagrangian] Remove merge option from BilateralInteractionConstraint
- #3327 [Constraint.lagrangian] Fix BilateralInteractionConstraint double init and clean some Data
- #3315 [S.C.MechanicalLoad] PlaneForcefield: Fix "potential divide by zero" warnings in msvc
- #3301 [SofaSimpleGUI] Without compatibility layer
- SOFA recruits, find out more about these opportunities
- [SOFA Week 2022] More than 95 participants registered already, spread the word!
- Test the Matrix branch : #2777 waiting your reviews!
- Another SOFA Training session occurred on Monday!
- CI issues on MacOS, machines rebooted
- Upcoming discussion about the progress of the Matrix project and objectives: naming, blocking points, specific cases
- STC #14: add the topics you would like to address in discussions
- #3299 [all] Replace all Vector2, Vector3, Vector4 by their short name alias Vec2, Vec3 This change should not have a strong impact on regression. Only issues should come when compiling in float. This raises a question: do we really want to support float (required for several API, CUDA, OpenGL) and how to keep the simplest and most readable code. In many codes, the member types are generic while in fact the implementation only works for a specific template (eg. Vec3). Now: check compilation and regression. Then ready!
- Good first issues are available, give it a try!
- #3365 [CImgPlugin] Replace new keyword with creating unique pointers to properly clean up allocated memory. → ready
- #3353 [sceneutility] Deprecate MakeAlias and MakeDataAlias → closed
- #3351 [examples] Another pass of plugin finder One crash on scene test (error 139). Name of some classes are really not good : see issue #3320 https://github.com/sofa-framework/sofa/issues/3320 → back to wip
- #3345 [Config] Option to enable interprocedural optimization New test to be conducted to check whether it activates properly the interprocedural optimization on Windows → back to wip
- #3344 [git] Add various temporary files to .gitignore Other folder should be also ignored (extlibs, license, include) → ready
- #3329 [Constraint.Lagrangian] Update BilateralInteractionConstraint to support topological changes Test failing and review comments to take into account → back to wip
- #3328 [Constraint.Lagrangian] Remove merge option from BilateralInteractionConstraint → ready
- #3327 [Constraint.lagrangian] Fix BilateralInteractionConstraint double init and clean some Data Activating constraint at a specific time, should now be done through a script or a controller → ready
- #3315 [S.C.MechanicalLoad] PlaneForcefield: Fix "potential divide by zero" warnings in msvc → ready
- #3278 [Sofa.Core] minor refactoring for Data::read() to move into BaseData the reading code Tests are failing → back to wip
- #3271 [Topology] Improve TopologyHandler registration One test added in the PR is failing → back to wip
- #3242 [Core] Make some functions non-virtual Add comment in the code referring to the PR → to review, then ready
- #2777 [LinearSystem] Refactor matrix assembly Unit tests added! To be reviewed @all. Performances using the benchmark scenes seem similar to the current ones. → keep to review and meeting upcoming
- #3371 Type equalsZero returns bool, not a real
- #3366 [SofaMatrix] Fix crash if init fails in FillReducingOrdering
- #3334 [LinearAlgebra] Explicit instantiations and extern template for some matrices
- #3332 [SofaCarving] Some cleaning in carvingManager to use link instead of string and clean warning in #3331 [Topology] Update getLastElementIndex in TopologySubsetIndices
- #3327 [Constraint.lagrangian] Fix BilateralInteractionConstraint double init and clean some Data
- #3315 [S.C.MechanicalLoad] PlaneForcefield: Fix "potential divide by zero" warnings in msvc
- #3314 [all] Type conversion cleaning (+ user-defined literal)
- #3313 [Config] Option to set the number of MSVC processes
- #3305 [cmake] Introduce CMake presets
- #3304 [Sofa.Core] Remove the use of Link in MechanicalParams & ConstraintParams
- #3287 [Collision] Cleaning pass on types
- #3269 [SolidMechanics][Spring] Implement applyRemovedEdges for SpringForceField
- #3245 [Topology_test] Add tests in EdgeSetTopology_test to check topological changes
- #3237 [Sofa.DefaultType] Constexpr VecTypes and RigidTypes
- SOFA recruits, find out more about these opportunities
- SOFA Week 2022: First participants arelisted here
- Program STC #14 for days 2 & 3 (November 17-18th): feel free to add any topic to discuss
- #3237: ready. Needed to be rebased due to conflicts.
- #3242: Add comments with link to the PR with details. After that => Ready
- #3245: Ready
- #3269: Changes requested
- #3278: Failing unit tests. A description is requested.
- #3287: Change requested, otherwise ready.
- #3288: FAiling tests on Windows. This PR will be discussed next week.
- #3289: Compilation failing
- #3290: postponed. The need to repeat using Inherit1::initData is not understood
- #3294: WIP
- #3299: Compilation failing => WIP
- #3301: Failing scenes => WIP. Wait for https://github.com/sofa-framework/sofa/pull/3351
- #3304: Ready
- #3305: Ready. To present next dev meeting so everyone is aware of this PR
- #3314: Ready. To present next dev meeting so everyone is aware of this PR
- #3315: Ready. But an issue has been written.
- #3327: Deprecation requested. Await answer from M. Talbot.
- #3331: Ready
- #3332: Ready
- #3334: Keep to review. Need more feedback. Deprecation requested.
- #3338: Ready
- #3339: Answer requested. Need more investigation => WIP
- #3344: Keep to review
- #3345: Need more tests
- #50: wait to review https://github.com/sofa-framework/sofa/pull/3358. An alternative is to support only compilers with parallel algorithms support.
- #57: Ready. Vector of gravity vectors has been replaced by a single gravity vector from the current Node
- #59: Ready
- #62: Keep to review
- #64: Need regression tests. Keep to review
- [Type] equalsZero returns bool, not a real
- [Type] Remove explicit template instantiation to restore performances
- [Topology.Container.Grid] trivial optimization in GridTopology
- [Type] Deprecate Color.h
- [Type] Disable deprecated methods
- [Helper] RAII for DrawTool state life cycle
- [Core.Collision] Fix memory leak in NarrowPhaseDetection and IntersectorFactory
- [LinearAlgebra] Explicit instantiations and extern template for some matrices
- [SofaCarving] Some cleaning in carvingManager to use link instead of string and clean warning in scenes
- [Topology] Update getLastElementIndex in TopologySubsetIndices
- [GUI/runSofa] Cmake: tweaks and fixes
- [all] Type conversion cleaning (+ user-defined literal)
- [Config] Option to set the number of MSVC processes
- Introduce CMake presets
- [Sofa.Core] Remove the use of Link in MechanicalParams & ConstraintParams
- [Collision] Cleaning pass on types
- [Sofa.Defaulttype] Move Rigid{Coord, Deriv, Mass} from RigidTypes into their own headers
- [Sofa.Core] Finally disable deprecated code in BaseData and ExectParam's Aspects.
- [Sofa.Core] Add some const qualifier to collision methods & use SReal & nodiscard.
- [SolidMechanics][Spring] Implement applyRemovedEdges for SpringForceField
- [Topology_test] Add tests in EdgeSetTopology_test to check topological changes
- [Sofa.DefaultType] Constexpr VecTypes and RigidTypes
- SOFA recruits, find out more about these opportunities
- Servers back online, take the opportunity to register for the SOFA Week 2022
- First participants are listed here
- New gravity API proposed in #2988 Presentation done, but to be further discussed with other physics developers. Main changes are for users, therefore scene description must be clearly explained to users. → to review
- Performance issue coming from #3280 VisualStudio seems to struggle with the inlining, RealeaseWithDebugInfo should be slower (which is the case on the CI). Inlining could be forced but this is not the good way. A deeper investigation is needed but Alex has no time for now. Any help welcome! Reported in #3343 https://github.com/sofa-framework/sofa/issues/3343 → to review
- Memory leak fixed in SOFA in #3337 Nice PR fixing the leak while unloading SOFA. Few questions posted and now waiting the 7 days of review, then should be ready → keep to review
- Program STC #14 for days 2 & 3 (November 17-18th): feel free to add any topic to discuss
- Issue of css on the online documentation
- #3344 [git] Add various temporary files to .gitignore → ready
- #3339 [Mapping] Add checks at init in TopologicalMapping Reviews added, improve message for user. → back to wip
- #3335 [LinearAlgebra] Remove unused operations on BaseMatrix Request again review awaiting → keep to review
- #3294 [Constraint.Lagrangian.Solver] Add GetConstraintForce component Test to be conducted to validate the value returned. Also should make sure that indices are well managed when several objects are in the scene. → keep to review
- #3290 [All] Compilation with "/fpermissive-" (MSVC) Need to be discussed, investigated by more → keep to review
- #3287 [Collision] Cleaning pass on types and remove unused code Extract the changes on MeshDiscreteIntersection in another PR, else ready. → keep to review, then ready
- #3282 [Sofa.Defaulttype] Move Rigid{Coord, Deriv, Mass} from RigidTypes into their own headers → ready
- #3279 [Sofa.Core] Finally disable deprecated code in BaseData and ExectParam's Aspects. → ready
- #3271 [Topology] Improve TopologyHandler registration Few questions and typos to fix. → wip
- #3270 [Sofa.Core] Add some const qualifier to collision methods & use SReal & nodiscard. → ready
- #3268 [SolidMechanics] Fix updating the internal spring indices of SpringForceField Need review of @epernod → keep to review
- #3245 [Topology_test] Add tests in EdgeSetTopology_test to check topological changes Need review of @hugtalbot → keep to review
- #3237 [Sofa.DefaultType] Constexpr VecTypes and RigidTypes These classes were fully inline. Need a rebase. Need to test whether it can really be constexpr-ed! → keep to review, after CI ready !
- #2777 [LinearSystem] Refactor matrix assembly Boilerplate code added to get the compatibility layer if the new API is not implemented. Tests remain to be added, the work will then be widely presented → keep to review
- #3333 [LinearAlgebra] Fix BDT compilation
- #3330 [Topology] Fix internal infinite update loop in TopologySubsetData remove process
- #3326 [Regression] Test Eigen solvers scenes for regression
- #3322 [Simulation.Core] Fix import of required plugins
- #3321 [Mapping.Linear] Add support for 2d in SubsetMultiMapping
- #3316 [LinearSolver.Direct] Missing call to super init()
- #3306 Minor warning fixes
- #3303 [Sofa.Core] Use pragma, single line namespaces and move forward declarations in fwd.h
- #3302 [ExternalBehaviorModel] Without compatibility layer
- #3300 [Sofa.Core] Move operator<<(Data&) into operator<<(BaseData).
- #3298 Add fixedarray aliases and BoundingBox3D
- #3297 [Sofa.Core] Add missing #include
- #3296 [SofaValidation] is a plugin, not a collection
- #3285 [Test] Remove the output of a test from file versioning
- #3284 [StateContainer] Optimize vector operations
- #3283 [Core][Type] Minor warning fixes
- #3281 [Sofa.Type] Fix compile-time Mat and Vec
- #3280 [Sofa.Type] Fix/clean and speed up of Mat
- #3277 [all] Split Tag & TagSet into separated files and fix missing includes.
- #3276 [SofaCarving] Fix bug in CarvingManager when searching for target collision model
- #3266 [tests] Fix remove SofaComponentAll plugin which doesn't exist anymore
- #3264 [Core] Reduce calls to getValue in collisions
- #3260 [DrawToolGL] Fix ill-formed drawLines with multiple colors
- #3249 [SolidMechanics.Spring] RestShapeSpringForceField: Fix addKToMatrix
- #3239 [GUI.performer] Add remove elements function for LineCollisionModel
- #3234 [Helper] Reorganize accessors files and add tests
- #3231 [Constraint.Lagrangian.Correction] LinearSolverCC: use FullVector API if detected
- #3221 [Type] Constexpr Quaternion
- #3216 [Topology] Fix initTopology call chains for mesh without topology
- Due to new malicious act on Inria Lille infrastructure, our website http://sofa-framework.org is down for now. We'll keep you posted when to register again for the #SOFAWeek2022
- The CI is down, investigation shows this is related to a problem in the Inria infrastructure a ticket was open
- Presentation of the work to be done by Leo Hunout
- Work on parallel linear solver performed by Stephane & Alex is now public: https://github.com/SofaDefrost/SofaCUDALinearSolver
- SOFA recruits, find out more about these opportunities
- Guillaume Paran as guest star in the SOFA dev meeting!
- #3216 [Topology] Fix initTopology call chains for mesh without topology (ready, postpone... )
- #3221 [Type] Constexpr Quaternion (ready, a future PR will come to implement constexpr validation in unittest)
- #3231 [Constraint.Lagrangian.Correction] LinearSolverCC: use FullVector API if detected (ready, future discussion planned on more general refactoring to have dynamic_cast less architecture if possible)
- #3239 [GUI.performer] Add remove elements function for LineCollisionModel (ready, wait the CI is back)
- #3249 [SolidMechanics.Spring] RestShapeSpringForceField: Fix addKToMatrix (ready, opened a discussion about how we should handle the "conditionale" sizing of the array)
- #3283 [Core][Type] Minor warning fixes (ready)
- #3284 [StateContainer] Optimize vector operations (ready)
- #3265 [Config] Remove deprecated macros (back to wip to only handle the case with Quat, BaseData will be in #3279)
- #302 [bindings.SofaTypes] Follow changes in Mat (ready, wait the CI)
- #301 [all] Fix memory leak (validated by Paul, ready wait the CI)
- #300 [examples] Update all plugins and remove DefaultVisualManagerLoop (back to wip)
- #298 [Core] Improve some tests related to the binding of getClassName() (ready, wait the CI)
- #293 Fixed Memory Leak in DataContainer.array() and DataContainer.writeable() (closed integrated in #301)
- #3285 [Test] Remove the output of a test from file versioning
- #3284 [StateContainer] Optimize vector operations
- #3283 [Core][Type] Minor warning fixes
- #3277 [all] Split Tag & TagSet into separated files and fix missing includes.
- #3276 [SofaCarving] Fix bug in CarvingManager when searching for target collision model
- #3264 [Core] Reduce calls to getValue in collisions
- #3260 [DrawToolGL] Fix ill-formed drawLines with multiple colors
- #3249 [SolidMechanics.Spring] RestShapeSpringForceField: Fix addKToMatrix
- #3239 [GUI.performer] Add remove elements function for LineCollisionModel
- #3234 [Helper] Reorganize accessors files and add tests
- #3216 [Topology] Fix initTopology call chains for mesh without topology
- SOFA recruits, find out more about these job opportunities
- Do not miss the annual conference for SOFA: Symposium day on 15th November
- SOFA v22.06 is out, get it here: https://www.sofa-framework.org/download/
-
SofaCUDALinearSolver : GPU-based direct linear solver: further to Stephane’s work, a direct GPU linear solver based on cusolver library (available in CUDA toolkit). However, inveistation and limitations remain :
- the library is opaque (API does not provide access to factors/submatrices, and therefore it does not allow a CPU-GPU hybrid factorization-resolution)
- a limitation is that it cannot take advantage of the constant pattern of the system matrix: another matrix is available for this.cusolver_rf (only a LU factorization) → an investigation to do
- [Type] Constexpr Quaternion #3221
- Constexpr requires to define all in the header file (making compilation time higher)
- Let's test to define it constexpr while defining it in the inl file (including it in the header) and see if it works as constexpr
- #3239 [GUI.performer] Add remove elements function for LineCollisionModel A comment to be added. Missing a check on the found topology. → wip
- #3237 [Sofa.DefaultType] Constexpr VecTypes and RigidTypes Wait for #3221 → keep to review
- #3231 [Constraint.Lagrangian.Correction] LinearSolverCC: use FullVector API if detected Loss of genericity and complexity with the lambda function. Todo: make the lambda include the two for loops. → wip
- #3221 [Type] Constexpr Quaternion Let's test to define it constexpr while defining it in the inl file (including it in the header) and see if it works as constexpr → keep to review
- #3216 [Topology] Fix initTopology call chains for mesh without topology Rebuild taking into account regression PR and then ready if CI is ok → keep to review
- #3126 [Lagrangian.Model] Remove use of LateSpecialization pattern Try to find a design pattern to properly treat the specialization cases in SOFA. Vec3Type and Rigid3Type are working so far (but not taking CudaType). Check if the proposed pattern does suit a sfinae design. → keep to review
- #301 [all] Fix memory leak More see #293 → will be closed after investigation
- #293 Fixed Memory Leak in DataContainer.array() and DataContainer.writeable() The PR #301 opened suggests a new solution. Should be merged into #293. Remain todo: solve the new case (solved by the std::make_unique) to have something generic whatever the version of pybind. Damien will have a look at it → keep to review
- #3272 [SofaSphFluid] Fix required plugin in scenes
- #3264 [Core] Reduce calls to getValue in collisions
- #3260 [DrawToolGL] Fix ill-formed drawLines with multiple colors
- #3176 [Core] Minor cleaning
- #3059 [Sofa.Core] Linear time getRoot() method in BaseNode and Node
- Save your seat for the 14-18th November: SOFA Week 2022
- SOFA v22.06 is out!
- Discover all features online
- Give us feedback and share your enthusiasm
- End of Stephane’s internship :
- CUDA code incoming in a dedicated plugin
- Benchmarking code remains to do on several PR
- Update about the SofaMatrix project
- Refactoring is over
- 10% last percent (which are taking 90% of the time)
- A doc has been written
- New feature: able to check column and row value given when filling the matrix (data in the matrix assembler): no check, check system size, check submatrix, topology-aware check
- Maybe looking at a compatibility layer
- Later (after merge in master)
- Modify all components with the new API (ongoing) Geometric stiffness : non-linear mapping which is itself non-mapped → need to differentiate linear and nonlinear mappings
- Speed up of matrix mapping
- Python bindings
- Multithreading
- CUDA compat
- Test
- PRs to be backported in v22.06 have been sorted, ready for backport v22.06.01
- #3216 [Topology] Fix initTopology call chains for mesh without topology Test to fix → wip
- #3176 [Core] Minor cleaning → ready
- #3151 [Core] Make src an explicit link and support late update Still tests failing → wip
- #3126 [Lagrangian.Model] Remove use of LateSpecialization pattern Try to find a design pattern to treat properly the specialization cases in SOFA. Vec3Type and Rigid3Type are working so far (but not taking CudaType). → keep to review
- #3059 [Sofa.Core] Linear time getRoot() method in BaseNode and Node Test with a SPtr but not convincing and no way to guarantee the fact that there is no circular dependency → ready
- #293 Fixed Memory Leak in DataContainer.array() and DataContainer.writeable() Not sure about the fix, we may need to find another design avoid the new, discussion ongoing → keep to review
- #3251 [linearalgebra] Remove deprecated code
- #3250 [Topology] Remove Disabled and Deprecated method <= 22.06
- #3243 [Sofa.Core] Remove compilation warning because of un-used argument in BaseClass.h
- #3240 [Constraint.Lagrangian] Make class abstract and add key function
- #3236 [All] Remove deprecation warnings while building the deprecated thing itself
- #3233 [Geometry] Make global variables constexpr
- #3232 [constraint.lagrangian.solver] fixes verbose GenericConstraintSolver
- #3227 [all] Set of warning fixes
- #3226 [LinearSolver.Direct] BTDLinearSolver: Clean debug informations and rename data
- #3225 [CMake] FIX parent modules library consistency
- #3188 [objectmodel] Avoid extra copy in DataFileNameVector
- #3183 [objectmodel] Remove memory leaks
- #2935 [SofaCUDA] FIX namespaces
- SOFA Week is coming: request a place on stage and present your work
- SOFA v22.06 is out!
- Download it here: https://www.sofa-framework.org/download/
- Discover all features online: https://www.sofa-framework.org/about/sofa-v22-06/
- Give us feedback and share your enthusiasm: https://github.com/sofa-framework/sofa/discussions/3215
- #3230 [SolidMechanics] Remove useless data indice attribute in SpringFF Code removed is actually used → closed
- #3227 [all] Set of warning fixes → ready
- #3226 [LinearSolver.Direct] BTDLinearSolver: Clean debug informations and rename data Additional refactoring of message should be done later → ready
- #3225 [CMake] FIX parent modules library consistency → ready
- #3224 [core] remove shadow variables Ok to keep it as is, but naming should be improved and the for loop should be modernized. To be done in a following PR. → keep to review until next PR
- #3221 [Sofa.Type] Constexpr Quaternion Feedback expected from @damienmarchal else ready. Move Quat::writeOpenGlMatrix in another PR. → keep to review
- #3216 [Topology.c.dynamic] Fix initTopology call chains for mesh without topology CI says no, fix tests → wip
- #3188 [objectmodel] Avoid extra copy in DataFileNameVector → ready
- #3183 [objectmodel] Remove memory leaks → ready
- #3151 [Core] Make src an explicit link and support late update Warnings and test failure to investigate. PR will be separated in two, keep only the src as a data → wip
- #3063 [metis] Upgrade metis and GKlib PR done to check a metis-related issue. Potential source of error, mark it as postponed if needed later → closed
- #297 Fix warnings Review merged. Wait for CI then merged → ready
- #294 Get info to try to fix the failing test Function "PythonFactory::toPython" finding the downcast where an error must occur. To be investigated → wip
- #50 [Mapping] Clean and optimize AdaptiveBeamMapping Configuration code could be set in SOFA, but we should agree on the way to use multithreading. → ready
- #3235 [SolidMechanics] Fix draw in MeshSpringForceField
- #3233 [Geometry] Make global variables constexpr
- #3232 [constraint.lagrangian.solver] fixes verbose GenericConstraintSolver
- #3229 [CMake] FIX out-of-tree SofaGui and runSofa locations
- #3223 [SofaImplicitField] Fix CMake for new NG architecture
- #3217 [Type] Add NoInit constructor for Quat class
- #3175 [Spring] RestSpringsForceField: Unify Vec/Rigid implementation
- #3164 [SofaCUDA] Make CudaConstantForceField compatible with CudaRigid types
- #3155 [linearsolver] Create data links for preconditioners and ShewchukPCGLinearSolver
- #3152 [constraint.lagrangian] Create data links in ConstraintCorrection for linear solver
- SOFA v22.06 is out!
- Download it here
- Discover all features online
- Give us feedback and share your enthusiasm
- Opening codes foster the robustness of these! Never hesitate to share your contributions to benefit from our dev engineering community!
- #3224 [core] remove shadow variables Ask for more modern C++ changes → wip
- #3223 [SofaImplicitField] Fix CMake for new NG architecture → ready
- #3221 [Sofa.Type] Constexpr Quaternion → ready (wait for the 7 days)
- #3217 [Type] Add NoInit constructor for Quat class → ready (wait for the 7 days)
- #3216 [Topology.c.dynamic] Fix initTopology call chains for mesh without topology → ready
- #3183 [objectmodel] Remove memory leaks PR looks really nice, wait for devs to take a look → keep to review (to be merged next week)
- #3175 [Spring] RestSpringsForceField: Unify Vec/Rigid implementation Code for Rigid was in cpp, therefore when instantiating in CUDA you need to include the cpp. Factorization was needed. It would also ensure a better coherency of the code. The check for the DataType isRigid could be moved in sofa::defaulttype (in another PR) → ready
- #3164 [SofaCUDA] Make CudaConstantForceField compatible with CudaRigid types → ready
- #3155 [linearsolver] Create data links for preconditioners and ShewchukPCGLinearSolver → ready
- #3152 [constraint.lagrangian] Create data links in ConstraintCorrection for linear solver → ready
- #296 [Plugin][CMake] Explicit RELOCATABLE parameter → ready and merged
- #294 Get info to try to fix the failing test It is a PR for debug → wip
- #293 Fixed Memory Leak in DataContainer.array() and DataContainer.writeable() Need review of @damienmarchal → keep to review
- #3220 [GUI.Qt] Fix MSAA sampling setup
- #3218 [Project] Start v22.12 dev phase
- #3214 [Sofa.Config] Rename ide folder for libraries
- #3212 [core] remove shadow variables
- #3209 [Plugins] Fix Cmake configuration w/o compat
- #3200 [tutorials] Fix CMakeLists targets
- #3196 [collections] Install collections in their own directory
- #3190 [objectmodel] Remove redefinition of initData
- #3173 [MappedMatrix] MechanicalMatrixMapper: adds option
- #3163 [all] Remove code disabled in v21.06
- #3053 [Constraint.Lagrangian] Add the NNCG as NLCP solver in GenericCS
- #3004 [SofaCUDA] Add ConstraintCorrection instantiation in CudaVec3f/CudaVec3f1
- SOFA Week 2022: preparation started and registration is open!
- Release will be out by Friday, stay tuned!
- Check dashboard: strange macOS problem with access to matrices with SofaPython3. Apparently a binding to LCPConstraintSolver is needed while the binding to ConstraintSolverImpl does not suffice. To be further investigated
- #3203 Topology changes for SphereCollisionModel on EdgeSetTopologyContainer The SphereCollisionModel works historically without a topology (relying on the mstate). Tests are failing due to the absence of a PointSetTopology, an alternative could be to change the warning into an info message that without a topology, no topological change will be supported. Another change in order to make the component topologically robust would be to make the data radius as a PointData
- #3190 [objectmodel] Remove redefinition of initData → ready
- #3188 [objectmodel] Avoid extra copy in DataFileNameVector Conflict on PR, when fixed PR is ready → keep to review
- #3183 [objectmodel] Remove memory leaks PR looks really nice, wait for devs to take a look → keep to review
- #3176 [objectmodel] Minor cleaning Test failing → wip
- #3173 [MappedMatrix] MechanicalMatrixMapper: adds option → ready
- #3164 [SofaCUDA] Make CudaConstantForceField compatible with CudaRigid types Restart CI #3163 [all] Remove code disabled in v21.06 → ready
- #3162 [Component.Setting] Introduce PrintLog component to set printLog to all the graph components Agreed for a Node based behavior even if this would mean to pollute Node.h → suggestion to close
- #3155 [linearsolver] Create data links for preconditioners and ShewchukPCGLinearSolver Use links directly instead of internal point variable → wip
- #3152 [constraint.lagrangian] Create data links in ConstraintCorrection for linear solver Use links directly instead of internal point variable → wip
- #3124 [Sofa.Type] Deprecate unsafe Vec constructor from pointer Crash on Image::getCorners. Check if related to the PR → wip
- #3053 [Constraint.Lagrangian] Add the NNCG as NLCP solver in GenericCS Wait for CI to compile and then merge → keep to review
- #3004 [SofaCUDA] Add ConstraintCorrection instantiation in CudaVec3f/CudaVec3f1 → ready
- #293 Fixed Memory Leak in DataContainer.array() and DataContainer.writeable() Need review of @damienmarchal → stay to review
- #291 Fix minor warning → ready
- #3199 [GUI] Fix toolTip for button reload
- #3198 [examples] FIX scenes with old CollisionGroupManager component
- #3197 [CMake] Clean packaging for v22.06
- #3182 [Controller] Fix specialization issue in inline file
- #3177 [All] Fix minor warnings
- #3174 [Sofa.DefaultType] Name() should be compile-time evaluable
- #3172 [Config] Remove unused option SOFA_WITH_DEPRECATED_COMPONENTS
- #3143 [Topology.Container] Fix save/restoreLastState in draw method were missing
- #3142 [Core.Topology] Fix info message when Topology given to topologyHandler is not dynamic
- #3141 [SolidMechanics.FEM.HyperElastic] Reformat and clean TetrahedronHyperelasticityFEMForceField
- #3138 [Sofa.Type] Quat: Optimize rotate() (and inverseRotate())
- #3120 [CMake] Use standard macros + fix out-of-tree builds
- #3077 [SofaCUDA] Fix CMake to compile plugin without legacy headers option
- SOFA Week 2022: preparation started and registration is open!
- #3167 [all] Remove pointer to itself in initData Poke @damienmarchal @JeremieA → wip
- #3154 [SofaSparseSolver] Parallelize the assembly of the compliance matrix for the LDL solver Choice should be offered to the user to use a multithreaded approach, through a data e.g. Evaluate the overhead due to use of Task with only 1 thread. Same for #3093 → wip
- #3151 [Core] Make src an explicit link and support late update Warnings and test failure to investigate → wip
- #3142 [Core.Topology] Fix info message when Topology given to topologyHandler is not dynamic → ready
- #3141 [SolidMechanics.FEM.HyperElastic] Reformat and clean TetrahedronHyperelasticityFEMForceField → ready
- #3138 [Sofa.Type] Quat: Optimize rotate() (and inverseRotate()) → ready
- #3124 [Sofa.Type] Deprecate unsafe Vec constructor from pointer Strange scene crash on Windows (image plugin), rebuild and see → keep to review and then merge (CI)
- #3120 [CMake] Use standard macros + fix out-of-tree builds Reply needed on : #3120 (review) → keep to review
- #3053 [Constraint.Lagrangian] Add the NNCG as NLCP solver in GenericCS Create separate functions in buildSystem. Avoid using else function with the d_resolutionMethod. Add a regression scene with unbuilt. → wip
- #289 Binding to access to the compliance matrix in constraint space W compliance matrix can be accessed, only MacOS tests are strangely failing. → ready (and investigate compilation on MacOS on dashboard)
- #3174 [Sofa.Defaulttype] Name() should be compile-time evaluable
- #3160 [all] Minor changes to use new SOFA-NG includes
- #3158 [GUI.Common] FIX unused variable
- #3153 [Core] Remove warning from VisualManagerLoop
- #3146 [examples] Last pass of plugin finder before the release
- #3145 [all] Uniformize includes
- #3144 [SofaCUDA][SofaSphFluid] Remove some getTemplateName deprecated methods
- #3143 [Topology.Container] Fix save/restoreLastState in draw method were missing
- #3140 Remove duplicate entry in clang-format
- #3123 [GUI] Remove the reset button, replaced by reload scene
- #3118 [All] Remove warnings
- #3115 [GL.Rendering3D] Clean up GL components
- #3109 [Helper] Make clearer from where plugins are loaded
- #3105 [GUI.Qt] Move default format setup before application creation
- #3104 [scenes] Remove all uses of DefaultCollisionGroupManager
- #3090 [All] Lifecycle update before v22.06
- #3077 [SofaCUDA] Fix CMake to compile plugin without legacy headers option
- Twinical startup project got the 1st Prize of the ILab challenge
- SOFA v22.06 release: postponed to August when Guillaume comes back. TODO before:
- Merge all v22.06-tagged PR
- Test a full build (custom job on CI) as for the Summer School
- Open-source is a philosophy, get involved in your own way!
- #3123 [GUI] Remove the reset button, replaced by reload scene Only the button reset is removed, used by no one. For the future, the work on improving the SOFA API has to be done to ensure a good initialization / update of components. A good test would be to run sequentially: storeResetState() and reset() → ready
- #3120 [CMake] Use standard macros + fix out-of-tree builds This PR might be breaking for plugin compilation (including move of files), this PR changes the way we organize / name the code (which is good!). It would be therefore nice to rediscuss it with @guparan and @fredroy to all agree on the organization and merge it, but a question comes: should the PR be integrated in the release. → keep to review
- #3115 [GL.Rendering3D] Clean up GL components → ready
- #3109 [Helper] Make clearer from where plugins are loaded UX is not perfect : some plugins loaded are in blue in the GUI (the one loaded by the GUI itself). Even with a tooltip, the user can be a bit confused but this is a dev feature. An issue was created on the double mechanism of plugin loading #3147 → ready
- #3105 [GUI.Qt] Move default format setup before application creation → ready
- #3090 [All] Lifecycle update before v22.06 → ready and we will wait before backporting it
- #3077 [SofaCUDA] Fix CMake to compile plugin without legacy headers option Remove BoxStiffSpringForceField (unavailable since not anymore in the compiled packages) → wip
- #3059 [Sofa.Core] Linear time getRoot() method in BaseNode and Node Test using a smart pointer will be done and tested on the CI → wip
- #3053 [Constraint.Lagrangian] Add the NNCG as NLCP solver in GenericCS Rename data as solverMethod Issue suggesting the factorization of ConstraintSolvers was created in #3148 → wip
- #2988 [All] Propose a new gravity API Propose this new mechanism in a new issue to be discussed with all users / devs, see #3149 → back to wip
- #265 [SofaPython3] Add a LinkPath object in both the binding and plugin. Interesting proposal to have an object LinkPath for the path in the graph of objects and associated binding in SofaPython3. Unify the different ways to access this path. Simply the scene writing. → ready
- #3146 [examples] Last pass of plugin finder before the release
- #3135 [Lagrangian.Correction] LinearSolverConstraintCorrection: Trivial optimisations for MSVC
- #3129 [Sofa.Type] Fix cmake typo, which was disabling tests
- #3123 [GUI] Remove the reset button, replaced by reload scene
- #3119 [GUI.Qt] Save scene graph lock state persistently
- #3116 [Mass] Make warnings become info_msg in masses
- #3104 [scenes] Remove all uses of DefaultCollisionGroupManager
- #3055 [Constraint.Lagrangian.Correction] Searching for Direct Linear Solver in LinearSolverConstraintCorrection
- #2890 [plugins] Add BeamAdapter as a new plugin
- SOFA Website is down since Sunday due to an act of vandalism where our servers are located, see question posted on GitHub Discussions #3127
- SOFA v22.06 release: due to the above point, the release process is delayed because of unavailability of CI infrastructure
- Summer school "Deformation in robotics" was a success with more than 40 participants presenting their work in soft-robotics! Feedback very positive!
- This Monday tool place the SOFA workshop at EMBC 2022 in Glasgow. Attendees were motivated, interested and many questions came up!
- LICENSE at SOFA root: we should find a way to display it without changing the file
- Several PR were to be discussed before v22.06
- #3119 [GUI.Qt] Save scene graph lock state persistently Save the state of the graph lock and remember it → ready
- #3116 [Mass] Make warnings become info_msg in masses Make msg homogeneous with other l_topology, for now we accept the search in the graph and it removes the warnings in all scenes. For later, a SceneChecker for explicit link could be created instead of checking this component per component → ready
- #3120 [CMake] Use standard macros + fix out-of-tree builds Init in Sofa.GUI is fine but else it should not be a plugin. Add a new macro sofa_add_library when it is a library not containing components (not loadable as RequiredPlugin) → wip
- #3090 [All] Lifecycle update before v22.06 Change CMake to move GLOBAL loc → wip
- #284 [SofaPython3] Separates the pre-loaded python modules out of the python (Fix issue #283) → ready and issue created to add GHA test for SOFA use in a python interpreter #287
- #3122 [GUI] Completing text description for mouse interaction with springs
- #3121 [examples] Minor fix in file for topological change process
- #3112 [Sofa.Component] Put the initilization code in init() instead of the entrypoint initExternalPlugin()
- #3107 [CollisionOBBCapsule] Fix module name
- #3106 [runSofa] Clean up in case GUI init fails
- #3102 [CMake] Replace references of SofaNG codename to SOFA
- #3101 [GUI.Qt] Redirect Qt messages to the SOFA output stream
- #3087 [SofaCUDA] Fail gracefully if no cuda device found
- #3084 [IO.Mesh] Fix binary loading in case of degenerated triangles
- #3080 [Core] Dynamic control of the computation of the bounding box
- #3026 [runSofa] Add a button and a mechanism to activate the scenegraph updates
- Summer school "Deformation in robotics" was a success with more than 40 participants presenting their work in soft-robotics!
- Next week
- SOFA at EMBC 2022 in Glasgow July 11th
- SOFA v22.06 should be released
- Issue of rendering in QtViewer brought on GitHub discussions #3100, branch being tested and seems to work
- #3101 [GUI.Qt] Redirect Qt messages to the SOFA output stream Ready but not 7 day old → keep to review -#3093 [SofaLinearSolver] Parallelize the assembly of compliance matrix Cleaning of the code, solve the threadsafetyness of getValue() and work on SparseLDLSolver. Temporary vector used in a loop also not threadsafe. → wip
- #3090 [All] Lifecycle update before v22.06 66 regressions failing on Ubuntu, rebuild ongoing → keep to review
- #3084 [IO.Mesh] Fix binary loading in case of degenerated triangles Ready but on last change needed on #2999 → ready
- #3080 [Core] Dynamic control of the computation of the bounding box Doc must be updated → ready
- #3077 [SofaCUDA] Fix CMake to compile plugin without legacy headers option The CUDA version of BoxStiffSpringForceField will be removed and add warning when trying to instantiate removed component → wip
- #3063 [metis] Upgrade metis and GKlib Ready but we keep it to review on purpose to postpone its merge after stable release v22.06 → keep to review
- #3059 [Sofa.Core] Linear time getRoot() method in BaseNode and Node Ready only one pointer could be set as unique instead → keep temporarily to review
- #3055 [Constraint.Lagrangian.Correction] Searching for Direct Linear Solver → keep to review
- #3026 [runSofa] Add a button and a mechanism to activate the scenegraph updates → ready
- #268 Compilation without Compatibility Layer from SOFA Seems perfect! (poked guparan) → ready
- #265 [SofaPython3] Add a LinkPath object in both the binding and plugin PR has some conflicts, issue created #282 → back to wip
- Issue of rendering in QtViewer brought on GitHub discussions #3100, branch being tested and seems to work
- #3098 [Sofa.GL] Fix cmake config file for out-of-tree when trying to find glew on Windows
- #3095 Fixed draw method of ArticulatedSystemMapping
- #3091 [SofaPhysicsAPI] Clean CMake file and compile without compat
- #3087 [SofaCUDA] Fail gracefully if no cuda device found
- #3083 [Collision.Response.Mapper] Missing override keyword
- #3081 [SofaCUDA] fix HexahedronFEMForceField double compilation
- #3072 [GKlib] Portable random number generation
- #3070 [Sofa.GL] Fix draw function from *SetGeometryAlgorithms
- #3067 [SensableEmulation][CMake] Clean Boost dep
- #3050 [LinearSolver.Direct] Unit tests around SparseLDLSolver
- #3037 [SolidMechanics] TopologySubsetIndices for RestShapeSpringsForceField