[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: please review siconos package



Hello,

Would any one be able to review this package for me?

I have fixed a couple of things and verified that autopkgtests work
since sending this original email.

kind regards,
Steve


On Sat, Dec 8, 2018 at 1:52 PM Stephen Sinclair <radarsat1@gmail.com> wrote:
>
> Hello science team,
>
> As previously mentioned I have been developing a package for Siconos,
> a C++ framework for numerical simulation of non-smooth dynamical
> systems.
>
> I would like to know if anyone would be willing to review this package
> as it stands.  The package is here:
> https://salsa.debian.org/science-team/siconos
>
> ITP: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=915656
>
> Some notes on the package.  Various binary packages are generated,
> including C++ libraries, -dev, python packages, and command-line
> tools.  A master "siconos" package depends everything including dev
> packages along with a script that uses them.
>
> * It has a few different usage modes that the package tries to be amenable to.
>   - First, as a set of C++ libraries, one C library that wraps a suite
> of numerical solvers and then a C++ framework and various
> sub-frameworks for different use cases (e.g. mechanical systems,
> control problems, etc.);
>   - second, as a modeling framework, it provides a script that
> compiles and launches a program driven by CMake;
>   - third, as a Python library, wrapped using SWIG.
>
> I note these because one major mode of *usage* of Siconos, namely the
> use of the "siconos" script, requires build tools, so this should be
> understood in case questions arise about the need for -dev packages
> when the "siconos" package is installed.
>
> When only library packages are installed, it can be used like any
> other shared library.
>
> Moreover siconos-mechanics-tools includes some Python scripts specific
> to the mechanics subcomponent which generate HDF5 files based on a
> scene description that can be visualized interactively in 3D (using
> python-vtk7).
>
> * A serialization framework is available through BOOST serialization.
> This is heavily templated C++ code.  In combination with SWIG, these
> two "compiler-wrappers" cause the compilation to balloon in needed
> memory at certain points during the build.
>
> When turned on, which they are, a large amount of memory is needed for
> compilation. I found that it overloads the Salsa CI gitlab runner, for
> example, and on my laptop with 8 GB memory I must close the browser
> while it is compiling else OOM.  I am not sure if this will present
> issues for Debian packaging, please advise.  In particular this is why
> I disabled parallel build.
>
> * All copyright issues have been cleared, anything not adhering to
> Debian legal standards has been made optional and removed.  If
> anything is noticed please let me know.  The main obstacle was the QP
> solver (ql0001), which still needs to be replaced with a free option,
> but Siconos works regardless so this can be hopefully fixed in a later
> release.  The upstream authors are aware.
>
> Finally: autopkgtests are included, although at the moment I have
> having trouble getting autopkgtest working locally for any package
> (weird errors about "file not found" and "cannot send to testbed" on a
> brand-new schroot), but it worked previously so I hope it does not
> cause issues.  The package also passed on Salsa's Gitlab CI when I
> disabled the options that cause memory issues, so I'm fairly
> confident: https://salsa.debian.org/science-team/siconos/-/jobs/72019
> .  I've stalled long enough sending this for review so I didn't want
> to let this stop me.
>
> Due to working with upstream to get necessary changes in, the package
> is currently based on a git version.
>
> I should mention, the last thing to do is symbols files, I have not
> done it yet.  I am not sure how to proceed with a complicated C++
> library to be honest, any advice is appreciated.
>
> My interest in the package is its use as a rigid body mechanics solver
> for robotics applications.  It is similar somehow to Bullet or ODE,
> but not oriented towards games or really even to real-time, instead it
> focuses on generalized modeling of dynamical systems and the use of a
> wide array of collision solvers. In fact it uses Bullet for collision
> detection, hence the dep from libsiconos_mechanics.
>
> regards,
> Steve


Reply to: