Skip to content
Snippets Groups Projects
Commit 4d85e899 authored by Cristian Lalescu's avatar Cristian Lalescu
Browse files

Merge branch 'bugfix/src-linking' into v1.0

parents dd8ef14d 05a78a8a
Branches
Tags
No related merge requests found
...@@ -142,15 +142,15 @@ class FluidResize(_fluid_particle_base): ...@@ -142,15 +142,15 @@ class FluidResize(_fluid_particle_base):
cmd_line_pars[k] = opt.m cmd_line_pars[k] = opt.m
self.pars_from_namespace(opt) self.pars_from_namespace(opt)
src_file = os.path.join( src_file = os.path.join(
opt.src_work_dir, os.path.realpath(opt.src_work_dir),
opt.src_simname + '_cvorticity_i{0:0>5x}'.format(opt.src_iteration)) opt.src_simname + '_cvorticity_i{0:0>5x}'.format(opt.src_iteration))
read_file = os.path.join( read_file = os.path.join(
self.work_dir, self.work_dir,
opt.src_simname + '_cvorticity_i{0:0>5x}'.format(opt.src_iteration)) opt.src_simname + '_cvorticity_i{0:0>5x}'.format(opt.src_iteration))
if not os.path.exists(read_file):
os.symlink(src_file, read_file)
self.set_host_info(bfps.host_info) self.set_host_info(bfps.host_info)
self.write_par(iter0 = opt.src_iteration) self.write_par(iter0 = opt.src_iteration)
if not os.path.exists(read_file):
os.symlink(src_file, read_file)
self.run(ncpu = opt.ncpu) self.run(ncpu = opt.ncpu)
return None return None
...@@ -931,7 +931,7 @@ class NavierStokes(_fluid_particle_base): ...@@ -931,7 +931,7 @@ class NavierStokes(_fluid_particle_base):
'--src-wd', '--src-wd',
type = str, type = str,
dest = 'src_work_dir', dest = 'src_work_dir',
default = './') default = '')
parser.add_argument( parser.add_argument(
'--src-simname', '--src-simname',
type = str, type = str,
...@@ -995,6 +995,8 @@ class NavierStokes(_fluid_particle_base): ...@@ -995,6 +995,8 @@ class NavierStokes(_fluid_particle_base):
self.parameters['max_Q_estimate'] = meantrS2 self.parameters['max_Q_estimate'] = meantrS2
self.parameters['max_R_estimate'] = .4*meantrS2**1.5 self.parameters['max_R_estimate'] = .4*meantrS2**1.5
if len(opt.src_work_dir) == 0:
opt.src_work_dir = opt.work_dir
self.pars_from_namespace(opt) self.pars_from_namespace(opt)
self.fill_up_fluid_code() self.fill_up_fluid_code()
self.finalize_code() self.finalize_code()
...@@ -1014,7 +1016,7 @@ class NavierStokes(_fluid_particle_base): ...@@ -1014,7 +1016,7 @@ class NavierStokes(_fluid_particle_base):
if not os.path.exists(init_condition_file): if not os.path.exists(init_condition_file):
if len(opt.src_simname) > 0: if len(opt.src_simname) > 0:
src_file = os.path.join( src_file = os.path.join(
self.work_dir, os.path.realpath(opt.src_work_dir),
opt.src_simname + '_cvorticity_i{0:0>5x}'.format(opt.src_iteration)) opt.src_simname + '_cvorticity_i{0:0>5x}'.format(opt.src_iteration))
os.symlink(src_file, init_condition_file) os.symlink(src_file, init_condition_file)
else: else:
......
...@@ -45,7 +45,7 @@ class _base(object): ...@@ -45,7 +45,7 @@ class _base(object):
'ny' : 32, 'ny' : 32,
'nz' : 32} 'nz' : 32}
self.string_length = 512 self.string_length = 512
self.work_dir = work_dir self.work_dir = os.path.realpath(work_dir)
self.simname = simname self.simname = simname
return None return None
def cdef_pars(self): def cdef_pars(self):
......
...@@ -7,23 +7,23 @@ Development ...@@ -7,23 +7,23 @@ Development
Versioning guidelines Versioning guidelines
--------------------- ---------------------
Version tracking for `bfps` is done with `git` (see https://git-scm.com/ Version tracking for :mod:`bfps` is done with ``git`` (see https://git-scm.com/
for description). for description).
The branching model described at The branching model described at
http://nvie.com/posts/a-successful-git-branching-model/ should be http://nvie.com/posts/a-successful-git-branching-model/ should be
adhered to as strictly as possible. adhered to as strictly as possible.
The usable `VERSION` number will be constructed according to semantic The usable ``VERSION`` number will be constructed according to semantic
versioning rules (see http://semver.org/), `MAJOR.MINOR.PATCH`. versioning rules (see http://semver.org/), ``MAJOR.MINOR.PATCH``.
In principle, if you use `bfps` and you've created children of the In principle, if you use :mod:`bfps` and you've created children of the
`NavierStokes` class, you should not need to rewrite your code unless :class:`NavierStokes <bfps.NavierStokes.NavierStokes>` class, you should not need to rewrite your code unless
the `MAJOR` version changes. the ``MAJOR`` version changes.
There are 2 main branches, `master` and `develop`. There are 2 main branches, ``master`` and ``develop``.
`setup.py` will call `git` to read in the `VERSION`: it will get the ``setup.py`` will call ``git`` to read in the ``VERSION``: it will get the
latest available tag. latest available tag.
If the active branch name contains either of the strings `develop`, If the active branch name contains either of the strings ``develop``,
`feature` or `bugfix`, then the full output of `git describe --tags` ``feature`` or ``bugfix``, then the full output of ``git describe --tags``
will be used; will be used;
otherwise, only the string before the dash (if a dash exists) will be otherwise, only the string before the dash (if a dash exists) will be
used. used.
...@@ -32,25 +32,28 @@ At the moment the following rules seem adequate. ...@@ -32,25 +32,28 @@ At the moment the following rules seem adequate.
Once I get feedback from someone who actually knows how to handle bigger Once I get feedback from someone who actually knows how to handle bigger
projects, these may change. projects, these may change.
1. New features are worked on in branches forked from `develop`, with 1. New features are worked on in branches forked from ``develop``, with
the branch name of the form `feature/bla`. the branch name of the form ``feature/bla``.
Feature branches are merged back into `develop` only after all tests Feature branches are merged back into ``develop`` only after all tests
pass. pass.
2. Whenever the `develop` branch is merged into `master`, the last 2. Whenever the ``develop`` branch is merged into ``master``, the last
commit on the `develop` branch is tagged with `MAJOR.MINOR`. commit on the ``develop`` branch is tagged with ``MAJOR.MINOR``.
3. Whenever a bug is discovered in version X.Y, a new branch called `vX.Y` 3. Whenever a bug is discovered in version X.Y, a new branch called ``vX.Y``
is forked from the corresponding `master` merge point. is forked from the corresponding ``master`` merge point.
A new bugfix branch is forked from `vX.Y`, the bug is fixed, and then A new bugfix branch is forked from ``vX.Y``, the bug is fixed.
this bugfix branch is merged into all affected branches (this includes The last commit in the bugfix branch is tagged X.Y.1.
`vX.Y`). This bugfix branch is merged into all affected branches (this includes
After merging, the respective merge points are tagged adequately (`vX.Y` ``vX.Y``).
gets the tag X.Y.1). After merging, the respective merge points into branches other than
``develop``, ``bugfix`` or ``feature`` are tagged accordingly;
there's no need to tag ``develop`` etc since those contain the git
commit in the version anyway.
4. Whenever a bug is discovered in version X.Y.Z, a bugfix branch is 4. Whenever a bug is discovered in version X.Y.Z, a bugfix branch is
forked from `vX.Y`, and then rule 3 is adapted accordingly. forked from ``vX.Y``, and then rule 3 is adapted accordingly.
------------ ------------
Code testing Code testing
------------ ------------
Testing for `bfps` is done with `tox`. Testing for :mod:`bfps` is done with ``tox``.
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment