gmum / gmum.r

GMUM machine learning group R package
http://r.gmum.net
Other
33 stars 10 forks source link

Boost header handling #142

Closed kudkudak closed 10 years ago

kudkudak commented 10 years ago

Static boost headers can be added to repository using BH package. I used in GNG static headers in repository just because I needed graph (which is not entirely static so was excluded from BH).

I think this problem is dependent on whether we want to include GNG in the same repository. I will also double check if I cannot use BH, but I am pretty sure BH doesn't include a lot of dependencies I have used from boost.

Adding static headers to the repository decreases maintainability, but I don't think it is a major problem.

ktalik commented 10 years ago

I think this issue is a major (technical) problem. Well-maintaned code repository will result in long development life (future developers).

In my opinion, 1k of header files should not be included in git, since they are not our code, which we want to control in version, improve and/or comment/review.

I think third party files should be installed during some releasing process, which is currently undefined in our project. Maybe we should think and talk about this?

N-th time... ;) My favourite branching model provides performing releasing operations on branches (see: release branches). Maybe we could use this approach as a current solution? Note that this solution provides easiness of future deletion of those third party files, if we for example switch to external dependencies.

kudkudak commented 10 years ago

I think we are approximately using the same process, as our release version will land on master with a tag. I don't know what you mean by easiness of deleting third party files.

Anyway I checked and BH doesn't support most of the headers I need. Therefore there is no way to do it other way. I don't see any other solution, let me know if you find something. Technically problem is with graphml parsing in GNG which is crucial. I don't have time to rewrite this parsing such that it doesnt rely on boost parser.

ktalik commented 10 years ago

I don't know what you mean by easiness of deleting third party files.

I mean that it will be easy to delete all release branch commits, which include third party files, when we decide to switch to more elegant version of dependecies.

Anyway I checked and BH doesn't support most of the headers I need. Therefore there is no way to do it other way. I don't see any other solution, let me know if you find something.

We will look into this but I'm prepared for a mess, since R packaging is a mess already.

kudkudak commented 10 years ago

For package development simplicity I will or exclude GNG or strip is such that it doesn't use extra boost headers