Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
75 commits
Select commit Hold shift + click to select a range
c633dd7
start adding progress indicators to TIS analysis
dwhswenson Jan 29, 2020
2525525
Add example notebook with progress bars
dwhswenson Jan 30, 2020
7c7de45
Fix pandas Deprepaction and Future Warnings
sroet Feb 1, 2020
ebc4799
Bump master version to 1.3.0.dev0
dwhswenson Feb 3, 2020
f494209
Merge pull request #899 from dwhswenson/bump-1.3.0.dev0
dwhswenson Feb 4, 2020
f38d356
Fix missing newline in the VisitAllStatesEnsemble
dwhswenson Feb 6, 2020
1a42628
undo some style
sroet Feb 7, 2020
1b25cdc
propper spacing
sroet Feb 7, 2020
393beaf
Merge pull request #898 from sroet/fix_pd_depr
dwhswenson Feb 7, 2020
c7f97b9
Merge remote-tracking branch 'upstream/master' into progress_tis_anal…
dwhswenson Feb 7, 2020
27dd3cb
tests should expect the newline
dwhswenson Feb 7, 2020
82460c5
This should have fixed the horrible merge
dwhswenson Feb 7, 2020
412afb8
Merge pull request #900 from dwhswenson/typo_visit_all_ensemble
dwhswenson Feb 7, 2020
c82918b
if ask for tqdm but don't have it, don't get it
dwhswenson Feb 8, 2020
909f77f
tests for progress setters
dwhswenson Feb 8, 2020
79ca42f
Merge pull request #895 from dwhswenson/progress_tis_analysis
dwhswenson Feb 9, 2020
fc1795f
add GMX stuff to docs
dwhswenson Feb 15, 2020
b16205a
Use SimpleProgress in path hist; move summary
dwhswenson Feb 18, 2020
fe10660
block progress indicator output in tests
dwhswenson Feb 18, 2020
8d3768c
fix sphinx issues
dwhswenson Feb 19, 2020
95ae6f2
Merge pull request #902 from dwhswenson/path_hist_progress
dwhswenson Feb 20, 2020
e0f55aa
Merge pull request #901 from dwhswenson/gmx_docs
dwhswenson Feb 21, 2020
4fd5d35
Storage.__init__ docs to class level
dwhswenson Feb 21, 2020
f141e9a
fixed caching_mode='unlimited'
hejung Jun 14, 2018
3caac79
fixed SPA behaviour
hejung Apr 12, 2018
41b1e91
storage.filename is now an absolute path and a read-only property
hejung Feb 23, 2020
7ab3960
Fix up GromacsEngine docs
dwhswenson Feb 23, 2020
991564d
Merge pull request #778 from hejung/fix_caching_mode
dwhswenson Feb 23, 2020
ca3f717
Merge pull request #903 from hejung/storage_abspath
dwhswenson Feb 24, 2020
26997b4
Merge pull request #725 from hejung/fix_SPA
dwhswenson Feb 26, 2020
4815eb9
DirectSimulation should use engine.start/.stop
dwhswenson Mar 4, 2020
b1bc7cc
Add n_frames_since_start=None to ext engine init
dwhswenson Mar 4, 2020
da768f5
stop should be given a trajectory
dwhswenson Mar 4, 2020
647ceb0
Merge pull request #905 from dwhswenson/direct_sim_start_stop
dwhswenson Mar 7, 2020
976df3e
Progress indicator for shooting point analysis
dwhswenson Mar 9, 2020
3dfa58e
minor cleanup
dwhswenson Mar 9, 2020
7a57d14
Fix missing names in ExternalMDSnapshot
dwhswenson Mar 9, 2020
0336f3e
Start improvements to Gromacs Engine
dwhswenson Mar 10, 2020
3e64d75
Merge pull request #906 from dwhswenson/spa_progress
dwhswenson Mar 12, 2020
a535c34
Unformatted gmx cmds are class vars; improve tests
dwhswenson Mar 13, 2020
1c15e90
Add engine_debug.conf
dwhswenson Mar 13, 2020
37a175d
update gmx example notebooks
dwhswenson Mar 13, 2020
73963ef
Merge branch 'sphinx_improvements' into gmx_updates
dwhswenson Mar 13, 2020
085b2da
Merge pull request #909 from dwhswenson/gmx_updates
dwhswenson Mar 15, 2020
799898b
Add tests for external snapshots
dwhswenson Mar 19, 2020
05d72de
remove debugging line
dwhswenson Mar 20, 2020
6e48b62
Merge pull request #908 from dwhswenson/fix_ext_snapshot_missing
dwhswenson Mar 20, 2020
9e5cace
tests, skips, resources, examples, no large files
apdealbao Mar 17, 2020
239da8a
getting box from snapshot
apdealbao Mar 26, 2020
d1a640d
Fix miniconda install
dwhswenson Apr 8, 2020
417b5aa
Merge pull request #912 from dwhswenson/fix_miniconda_install
dwhswenson Apr 8, 2020
1aa6fd3
Merge pull request #910 from apdealbao/ops_with_plumed
dwhswenson May 3, 2020
781e448
make tqdm optional for tests
sroet Jun 3, 2020
642fcde
Merge pull request #916 from sroet/make_tqdm_test_optional
dwhswenson Jun 3, 2020
d5b3be9
set reject_bytes=False for ujson >= 3
sroet Jun 4, 2020
926ffdd
Merge pull request #917 from sroet/support_ujson_ver_3
dwhswenson Jun 4, 2020
9f58b72
use uuid instead of 'is' for selecting ensembles
sroet Jun 9, 2020
049d0d0
support ujson v3
hejung Jun 23, 2020
c6fabe1
Merge pull request #921 from hejung/ujson_v3
dwhswenson Jun 23, 2020
12bc605
Merge pull request #919 from sroet/use_uuid_for_analysis
dwhswenson Jun 30, 2020
965984b
Fix toy_mstis_3 for change in pandas
dwhswenson Sep 15, 2020
f057044
Merge pull request #925 from dwhswenson/fix_nb
dwhswenson Sep 16, 2020
87c47db
Pin ujson<2; nbconvert<6
dwhswenson Sep 16, 2020
71cfa32
Merge pull request #926 from dwhswenson/pins
dwhswenson Sep 16, 2020
6a835c9
Start devtools cleanup
dwhswenson Sep 16, 2020
063d571
More devtools cleanup
dwhswenson Sep 16, 2020
8f01c94
more devtools cleanup
dwhswenson Sep 16, 2020
4b45c0a
and more cleanup
dwhswenson Sep 16, 2020
0a57e91
fix the obvious problem 🙄
dwhswenson Sep 16, 2020
bffabb2
helps if you install the integrations...
dwhswenson Sep 17, 2020
fdeca88
devtools cleanup
dwhswenson Sep 17, 2020
091a949
more py27-related fixes
dwhswenson Sep 17, 2020
da649e6
testing => test
dwhswenson Sep 17, 2020
7b59a7b
Merge pull request #927 from dwhswenson/devtools_cleanup
dwhswenson Sep 22, 2020
1c63186
Release 1.3.0
dwhswenson Sep 26, 2020
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
17 changes: 0 additions & 17 deletions .project

This file was deleted.

8 changes: 0 additions & 8 deletions .pydevproject

This file was deleted.

14 changes: 7 additions & 7 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ before_script:
- conda list

script:
- python autorelease_check.py --branch ${TRAVIS_BRANCH} --event ${TRAVIS_EVENT_TYPE}
- python devtools/autorelease_check.py --branch ${TRAVIS_BRANCH} --event ${TRAVIS_EVENT_TYPE}
- source devtools/ci/pytests.sh
- if [ -z "$MINIMAL" ] ; then source devtools/ci/ipythontests.sh; fi

Expand All @@ -49,6 +49,11 @@ addons:
- pandoc

env:
matrix:
- CONDA_PY=3.7 MINIMAL=true
- CONDA_PY=2.7
- CONDA_PY=3.6
- CONDA_PY=3.7
global:
- COVERALLS_PARALLEL=true
- TWINE_USERNAME="dwhswenson"
Expand All @@ -59,11 +64,6 @@ env:
- secure: "NJvoSrLNd2ZR3HluJjEqI36gD5lsucwIvgnYjNmM4cwnnA77aLV9FRYTwlLRZn3XY9FL8KOzL5l0amNzMD7sQrf7bWwWv7iCUBddH549q9RSgiuOugtodYJ6VaXi76hk1rOgcJpDoCj9wTCIlMtWibPUzr1QHmdihfdM2iA2kkE="
- secure: "l9NJkZDD0ALhkErUvhRrreLsrcWErd+CXpWv8dxHGtkjemNx6CwVtyL+a30jz/QwMANSZbKll/cPK5yJQvuwDaWxja6UPLLKVNGtma+CmwKcIC/wwTwbMoxcS62fyLJ3kS0qR8oCQz2nCPKiYyRGADtPLWVMZckY1SJfNYcKuCM="
- secure: "kb37xmsSV3pEnESnINzwlW2Cju/UFzA/G+m+NsihAwO8RMPZwKCrZK/rptgkUDACXJxom5M690WEukQkHnOt+OTrWhu7WKZgYeVuWUs2++RohYv/m5npaOHMMn+uYmF328v4PvPmXxbD02zzg5Tgdn82x8oa6J8BKX8ohOQ6Xpg="
matrix:
- CONDA_PY=3.7 MINIMAL=true
- CONDA_PY=2.7
- CONDA_PY=3.6
- CONDA_PY=3.7

import:
- dwhswenson/autorelease:autorelease-travis.yml@v0.1.2
- dwhswenson/autorelease:autorelease-travis.yml@v0.2.1
49 changes: 13 additions & 36 deletions devtools/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,47 +5,24 @@ Assorted notes for developers.

How to do a release
-------------------
- Update the whatsnew.rst document. Use the github view that shows all the
commits to master since the last release to write it.
- Update the version number in `setup.py`, change `ISRELEASED` to `True`
- Commit to master, and [tag](https://github.com/SimTk/mdtraj/releases) the
release on github
- To push the source to PyPI, use `python setup.py sdist --formats=gztar,zip upload`
- Conda binaries need to built separately on each platform (`conda build mdtraj;
binstar upload <path to .tar.bz2>`)
- Make an announcement on github / email
- After tagging the release, make a NEW commit that changes `ISRELEASED` back
to `False` in `setup.py`


It's important that the version which is tagged on github for the release be
the one with the ISRELEASED flag in setup.py set to true.
1. Make a branch in the upstream `openpathsampling/openpathsampling`
repository.
2. In that branch, change the version in `setup.cfg` to be a release version
(not ending in `.dev0`, etc.)
3. Push that branch and make a PR against the `stable` branch. It should test,
then perform a test deployment to `test.pypi`, then download the test
deployment and run tests again. The logic for this is in the Autorelease
repository. The text of the top post in this PR should be the release notes
(use the write-release-notes script included in Autorelease to do this).
4. Merge the PR. This will create a GitHub release, and then take that release
and push it to pypi. All of this logic is in Autorelease.


Docs Building & Hosting
-----------------------

After a travis build succeeds, the docs are built with sphinx and pushed to
the mdtraj.org amazon s3 account. The credentials for that account are stored,
encrypted, in the .travis.yml file.
the openpathsampling.org amazon s3 account (owned by John Chodera). The
credentials for that account are stored, encrypted, in the .travis.yml file.
(http://docs.travis-ci.com/user/build-configuration/#Secure-environment-variables)

As of version 0.7-dev (0.8 release) multiple versions of the docs are hosted
online. When a build happens on a version with ISRELEASED==False, it's put into
the "latest" folder on the S3 bucket. If ISRELEASED==True, it's put into a
subfolder with the name of the short release. The relevant logic is in
`tools/ci/push-docs-to-s3.py`.

In order for the select bar at the bottom of the docs that toggles between
versions to work, these folders MUST match up with the tag names on github.
This is because the list of items to put in that little dropdown menu is
dynamically determined from the github API in the browser. This is the only
way I could think of to make sure the old docs have a link to the latest
version. The logic that populates the version dropdown menu in the browser is in

`docs/themes/sphinx_rtd_theme-0.1.5/sphinx_rtd_theme/versions.html`

Specifically note that it goes to https://api.github.com/repos/rmcgibbo/mdtraj/releases,
and uses the `tag_names` to build the links. So these much line up with the
prefix of `mdtraj.version.short_version` used in `tools/ci/push-docs-to-s3.py`
for the links not to break.
1 change: 0 additions & 1 deletion autorelease_check.py → devtools/autorelease_check.py
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,6 @@
'package': openpathsampling.version.version,
'netcdfplus': openpathsampling.netcdfplus.version.version,
'setup.py': SETUP_VERSION,
'conda-recipe': conda_recipe_version('devtools/conda-recipe/meta.yaml'),
}

RELEASE_BRANCHES = ['stable']
Expand Down
2 changes: 1 addition & 1 deletion devtools/ci/miniconda_install.sh
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ conda_version="latest"
#conda_version="4.4.10" # can pin a miniconda version like this, if needed

MINICONDA=Miniconda${pyV}-${conda_version}-Linux-x86_64.sh
MINICONDA_MD5=$(curl -s https://repo.continuum.io/miniconda/ | grep -A3 $MINICONDA | sed -n '4p' | sed -n 's/ *<td>\(.*\)<\/td> */\1/p')
MINICONDA_MD5=$(curl -sL https://repo.continuum.io/miniconda/ | grep -A3 $MINICONDA | sed -n '4p' | sed -n 's/ *<td>\(.*\)<\/td> */\1/p')
wget https://repo.continuum.io/miniconda/$MINICONDA
if [[ $MINICONDA_MD5 != $(md5sum $MINICONDA | cut -d ' ' -f 1) ]]; then
echo "Miniconda MD5 mismatch"
Expand Down
21 changes: 0 additions & 21 deletions devtools/conda-recipe/README.md

This file was deleted.

11 changes: 0 additions & 11 deletions devtools/conda-recipe/build.sh

This file was deleted.

43 changes: 0 additions & 43 deletions devtools/conda-recipe/meta.yaml

This file was deleted.

14 changes: 0 additions & 14 deletions devtools/conda-recipe/requirements.txt

This file was deleted.

26 changes: 12 additions & 14 deletions devtools/conda_install_reqs.sh
Original file line number Diff line number Diff line change
Expand Up @@ -21,26 +21,24 @@ fi
# always obeys if you explicitly request a pinned version)
#conda config --env --add pinned_packages python=$CONDA_PY
#cp $DEVTOOLS_DIR/../pinned $CONDA_PREFIX/
PACKAGES=`python ${DEVTOOLS_DIR}/install_recipe_requirements.py --dry ${DEVTOOLS_DIR}/conda-recipe/meta.yaml | tr "\n" " "`

# WORKAROUNDS is normally empty; needed if other pkgs don't list all deps
WORKAROUNDS="pymbar"
TESTING=`cat ${DEVTOOLS_DIR}/testing_requirements.txt | tr "\n" " "`
EXTRA=`cat ${DEVTOOLS_DIR}/optional_packages.txt | tr "\n" " "`
WORKAROUNDS=""
REQUIREMENTS=`python ${DEVTOOLS_DIR}/setup_cfg_reqs.py`
TESTING=`python ${DEVTOOLS_DIR}/setup_cfg_reqs.py --extra test`
INTEGRATIONS=`cat ${DEVTOOLS_DIR}/tested_integrations.txt | tr "\n" " "`
PY_INSTALL="python=$CONDA_PY"
PINS=`cat ${DEVTOOLS_DIR}/../pinned | tr -d " " | tr "\n" " "`

echo "REQUIREMENTS=$REQUIREMENTS"
echo "WORKAROUNDS=$WORKAROUNDS"
echo "INTEGRATIONS=$INTEGRATIONS"
echo "PY_INSTALL=$PY_INSTALL"
echo "PACKAGES=$PACKAGES"
echo "TESTING=$TESTING"
echo "PINS=$PINS"

if [ "$CONDA_PY" != "3.7" ]; then
ALL_PACKAGES="$WORKAROUNDS $PACKAGES $TESTING $EXTRA"
else
ALL_PACKAGES="$WORKAROUNDS $PACKAGES $TESTING" # no msmbuilder for py3.7?
fi
# TODO: allow different installs for different versions
# (needed this when msmbuilder was only available on older pythons; similar
# situations may come up in the future)
ALL_PACKAGES="$WORKAROUNDS $REQUIREMENTS $INTEGRATIONS $TESTING"

echo "conda install -y -q -c conda-forge -c omnia $PY_INSTALL $ALL_PACKAGES $PINS"
conda install -y -q -c conda-forge -c omnia $PY_INSTALL $ALL_PACKAGES $PINS
echo "conda install -y -q -c conda-forge -c omnia $PY_INSTALL $ALL_PACKAGES"
conda install -y -q -c conda-forge -c omnia $PY_INSTALL $ALL_PACKAGES
60 changes: 0 additions & 60 deletions devtools/install_recipe_requirements.py

This file was deleted.

2 changes: 1 addition & 1 deletion devtools/minimal_testing.txt
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
nose
pytest!=5.3.4
pytest
pytest-cov
coveralls
Empty file removed devtools/optional_packages.txt
Empty file.
36 changes: 36 additions & 0 deletions devtools/setup_cfg_reqs.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
try:
import configparser
except ImportError:
import ConfigParser as configparser

import argparse
import os.path

def make_parser():
default_setup = os.path.join(os.path.dirname(__file__), "..",
"setup.cfg")
parser = argparse.ArgumentParser()
parser.add_argument('setup_cfg', nargs='?', default=default_setup)
parser.add_argument('--extra', default=None)
return parser

def clean(string):
return " ".join(string.split("\n"))

def main(setup_cfg, extra):
config = configparser.ConfigParser()
config.read(setup_cfg)
# replace get with the __getitem__ syntax when we drop py27
if extra is None:
# reqs = config['options']['install_requires']
reqs = config.get('options', 'install_requires')
else:
# reqs = config['options.extras_require'][extra]
reqs = config.get('options.extras_require', extra)
return clean(reqs)

if __name__ == "__main__":
argparser = make_parser()
args = argparser.parse_args()
print(main(args.setup_cfg, args.extra))

6 changes: 6 additions & 0 deletions devtools/tested_integrations.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
jupyter
openmm
openmmtools
py-plumed
pyemma

5 changes: 0 additions & 5 deletions devtools/testing_requirements.txt

This file was deleted.

Loading