OptimoJoe / Optizelle

Optizelle [op-tuh-zel] is an open source software library designed to solve general purpose nonlinear optimization problems.
www.optimojoe.com/products/optizelle
63 stars 13 forks source link

Checklist before pushing to master and releasing v1.2 #52

Closed josyoun closed 7 years ago

josyoun commented 8 years ago

In theory, we're getting close to doing a new major release. I've been closing out as many existing issues as possible, but there's still a few more things that need to occur:

  1. Clarify what license documentation is required when dynamic linking to MATLAB. Basically, we compile mex files, but do so by doing the linking ourselves. I've contacted Mathworks and they've been extremely slow in resolving this issue. Fixed on commit 99b0ac5cf158de61ab48814b2aa9518bf2044005. Under the deployment addendum, we fall under user created files and are free to distribute MEX files.
  2. Clarify under what license terms Optizelle can distribute dlls from MinGW such as libwinpthread-1.dll, libgcc_s_seh-1.dll, libstdc++-6.dll, libgfortran-3.dll, libquadmath-0.dll. We can dynamic link them without any problem, but I'd like to distribute them directly with the installers since that means the user won't have to install MinGW. Mostly, this is for MATLAB only users who likely don't have other compilers on their system. Fixed on commit 99b0ac5cf158de61ab48814b2aa9518bf2044005. I believe we're covered under the GCC runtime library exception since we don't modify any parts of GCC.
  3. Fix the CMake scripts to include all license information from each dependency. Depending on how we compile things, we have different license obligations. Fixed on commit 99b0ac5cf158de61ab48814b2aa9518bf2044005. I did this a little differently. Basically, there's now a licenses directory that has everything. Upon configuration, these licenses are combined into a single LICENSE.txt that gets installed. It's also what gets displayed by the installers.
  4. Write the installer scripts for OS X Fixed on commit d0bfcdca6a3216ea7cf71944a9984e1f469dcef6. Though, candidly, there were some issues to work out and it's best to look toward commit df4a8e8c8cfdbfe48ae47f0016c1d1e0e308ffa7
  5. Upload binaries for Linux (32,64), Windows (32,64), OS X (64) Uploaded. Though, MATLAB has gone to supporting only 64-bit, so we're only supporting 64-bit as well. Candidly, most dev machines are on 64-bit, so this shouldn't be an issue. The code should be 32-bit safe, so if someone really needs it, they should be able to compile it themselves.
  6. Update the README to point to the installers as well Fixed on commit df4a8e8c8cfdbfe48ae47f0016c1d1e0e308ffa7
josyoun commented 7 years ago

Pushed to master on commit a45cdd7813d11dc239f00c5c1cce5f59ddde1413