Skip to content

Conversation

@hsauro
Copy link
Contributor

@hsauro hsauro commented Apr 24, 2021

No description provided.

luciansmith and others added 30 commits November 30, 2020 17:28
For now, the only way I could find to make this work was to make literally everything always link the static libraries.  I have a feeling that there's some other option somewhere I could find to let it work a different way, but since this works, I'm going with it for now.

Also, some of the classes needed to not be set export the way they were.
Fix the non-static rrplugins libraries so they compile.
The format I ended up going with was to put *everything* that has to do with the rrplugins into site-packages/rrplugins.  This includes the roadrunner C API dll, which has roadrunner linked statically to it.  The upshot is that 'rrplugins' doesn't rely on the existence of the 'roadrunner' package at all--it has its own version in a dll.

It's possible that there will be problems trying to port objects from one dll to another, but this approach does work with at least some of the tested plugins.

(Also fixed up a few python bugs/warnings in the interface.)
On linux, apparently if you 'import foo', and there's foo.so and foo.py in that directory, it'll try to import foo.so.  This is, I mean, come on.  But anyway.

Also fix the 'windll' call from unLoadAPI, since that was a windows-specific solution.
Also:
  * Don't try to install rrplugins in python directory when not building python.
  * Properly report on the Python variables at the end.
  * Move the find_python stuff to the main CMakeLists.txt because the variables didn't persist otherwise.
There's a Windows bug that makes numpy 1.19.4 fail that won't be patched until January at least.
* Fix the Gillespie python test, which was failing for two separate reasons, both having to do with the test itself, and not the underlying functionality.
* Remove rrVersionInfo.h from the source, since it's auto-generated in CMake instead.
* Update build system to handle Python more centrally and not set so many Cached variables.
* Fix formatting.
The default option for copy_result should have been 'true', but it defaulted to 'true' because when I was revamping things, I grabbed the wrong option.

I considered removing the option to not copy the result at all, but it turned out that some 'power users' actually do use the option as a speedup, and just know that when they do, they run the risk of invalidating the memory in their old results.
The check to see if we hit the max number of output points wasn't making sure that 'time' was in the first column.  It also had an aborted error message.

Also, another check would trigger only in situations where it wasn't helpful to warn about it, so I took out that warning.
Just check to make sure it returns something--this was causing a throw earlier.
The plugins 'levenberg_marquardt', 'monte_carlo_bs', and 'nelder_mead' are here ported over from the previous rrplugin system, modified so they at least attempt to compile.  By default, they are off, and you have to turn on plugins and look at the 'advanced' settings to see them.
penavon and others added 29 commits April 23, 2021 17:02
… later commit by merge. Only a single cmakelists slipped through, but there was also a call to Log rather than rrLog. Furthermore, addSpecies was added back in and deprecated with pointers to the correct function to use
…. Not sure what happened, keep an eye on it
# Conflicts:
#	source/rrRoadRunner.cpp
#	source/rrRoadRunner.h
#	test/model_editing/model_editing.cpp
#	wrappers/C/rrc_api.h
…ten and so changing it to addSpeciesConcentration and addSpeciesAmount will have negligible impact whilst regenerate() was only added recently anyway so the change to regenerateModel will have no impact on peoples code
…ich is needed on linux and macos but not windows.
@luciansmith luciansmith deleted the hms branch October 19, 2021 17:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants