commit 74d9e0b99ea4c80a95cd5b49e2cf71cffe98c85c Merge: 3b3e5d3 b9088ed Date: Fri Feb 24 11:44:24 2017 -0800 Merge pull request #2044 from RosettaCommons/jadolfbr/fix_ignore_termini_residue Fix a long-standing bug in PoseFromSFRBuilder where an ignored unrecognized residue at the N terminus, such as PCA, would make the next residue not start a new chain or have the proper terminus variant. commit 3b3e5d3ea80c5335d0107cb87afff27e63ea86ed Merge: c6b6a05 f33a052 Date: Thu Feb 23 14:51:15 2017 -0800 Merge pull request #2024 from RosettaCommons/jadolfbr/tree_based_glycan_relax Add GlycanTreeSet machinery This PR adds a `GlycanTreeSet` that handles glycan tree connectivity, and changes many calls to on-the-fly functions to use functions contained in these classes instead. - The `GlycanTreeSet` is composed of individual GlycanTrees, each identified by the starting glycan number. - Each `GlycanTree` is composed of `GlycanNodes`. - Each `GlycanNode` contains a lot of information on the inter-glycan residue connectivity. This greatly reduces the number of on-the-fly calculations that need to be made to figure out parents, children, root distances, and exocyclic torsion information. - These classes are contained in the Conformation layer and can be used independently of a pose. A `GlycanTreeSet` is contained in the `GlycanTreeSetObserver`. This observer responds to pose length changes so that the connectivity information is always preserved. A function has been added to pose to get this `pose.glycan_tree_set()` which returns a `nullptr` if no glycans are in the pose. The `GlycanTreeSetObserver` is ONLY ever present if glycans are added in some fashion - either by actually glycosylating or by loading from a structure file. A unit test has been added for the functionality contained in this class. Thanks to @raemisch who helped conceive this and originally started working on these classes this summer. Also thanks to @roccomoretti, @smlewis, @aleaverfay, and @JWLabonte for help on different parts on this. Other ==== - This adds a line to delete a residue from the atom tree in `pose.delete_residue_slow()` which prevents a crash if a residue is accessed during the length observer, since we don't rebuild the atom tree until after the LengthEvent is sent out. `pose.delete_polymer_residue()` also does this. - Fixes copy constructors in various classes I have written that hold OPs, or outright adds explicit copy constructors where they were missing. - Adds a GlycanPositionSelector that allows selection of any residue in a tree. - @JWLabonte - note that many functions held in pose/carbohydrates/util are now moved to conformation/carbohydrates/util. commit c6b6a055c3a4521433d421fc973392df629ff090 Merge: c6ae8c2 5706d3b Date: Thu Feb 23 11:41:04 2017 -0800 Merge pull request #2042 from RosettaCommons/hahnbeom/remove_protected - removed protected data in MDBase.hh and rewrote part of CartesianMD.cc commit c6ae8c254713e5b9ee61f2967b0766176105f3bc Merge: 3a2e38c cdbd0eb Date: Thu Feb 23 11:21:51 2017 -0600 Merge pull request #2028 from RosettaCommons/roccomoretti/bin_symlinks Change how we do symlinks in the bin directory As decided at WinterRosettaCon, we're removing the two component names for (non-default) extra builds. The following is an example of the bin/ directory symlinks which will be created for each different type of build (for Scons - CMake builds are unaffected at this time.): extras=default mode=release # 2 symlinks * bin/rosetta_scripts.default.linuxgccrelease * bin/rosetta_scripts.linuxgccrelease extras=default mode=debug # 2 symlinks * bin/rosetta_scripts.default.linuxgccdebug * bin/rosetta_scripts.linuxgccdebug extras=cxx11thread mode=release # 1 symlink * bin/rosetta_scripts.cxx11thread.linuxgccrelease extras=cxx11thread mode=debug # 1 symlink * bin/rosetta_scripts.cxx11thread.linuxgccrelease commit 3a2e38c92f9a4fb6efa381acec4656ce3979a308 Date: Thu Feb 23 10:25:06 2017 -0600 Fix header_using_check integration test. commit 735fa92eaae44be9aa351fc5301937dfab7fd694 Merge: cfae7a7 f70f65b Date: Thu Feb 23 08:31:01 2017 -0500 Merge pull request #2032 from RosettaCommons/naireetab/scs_blastplus_pad_results_bug_fix Bug fix in SCS_BlastPlus::pad_results commit cfae7a7c6bb9ca28fd3c1c916c83317a642dcfe2 Merge: e3a8906 f71796f Date: Wed Feb 22 23:05:52 2017 -0500 Merge pull request #2040 from RosettaCommons/aleaverfay/ax_apbs Removing the APBS software package from the external/ directory I'm merging this; it's already been through the testing server: http://benchmark.graylab.jhu.edu/revision?id=5689&branch= External packages need a better review process so this doesn't happen again. commit e3a89062f1780545ed45458b3af452bfcf50373a Date: Wed Feb 22 18:59:05 2017 -0800 Beautifying master. commit 0c928795440db1bb7d7e83e9651c7c99ac21dc9a Merge: c8181eb 38294ac Date: Wed Feb 22 15:57:13 2017 -0800 Merge pull request #2030 from RosettaCommons/rhiju/6D_loop_close implicit treatment of RNA loops via precalculated 6D tensors • tests were run (except icc build, which is stuck; was run in a previous test, though) -- integration test changes are all expected (the ones that fluctuate; and a few are effected by new score term `rna_stub_coord_hack`): http://benchmark.graylab.jhu.edu/revision?id=5686&branch= commit c8181eb0ee14a5f271ef58a190720a5ab5b9393b Merge: f51af3b 34c3974 Date: Wed Feb 22 09:12:50 2017 -0500 Merge pull request #2038 from RosettaCommons/dougrenfrew/add_wcahr_to_pyrosetta_includes Updating include mapping for libc++ commit f51af3bbaa3d700d190cfe111b37b6b0c48721db Merge: 9efd1f8 8ef0869 Date: Wed Feb 22 09:12:20 2017 -0500 Merge pull request #2037 from RosettaCommons/dougrenfrew/pro_close_additional_shadow Adding scoring of CA and CAV to pro_close commit 9efd1f8c38d648ada4af712cbb2e08960d39a499 Merge: 0de7298 181af49 Date: Tue Feb 21 22:04:50 2017 +0100 Merge pull request #2034 from RosettaCommons/chnorn/evolution_debug New stopping condition for GenericMonteCarloMover (max accepts), and a new flag to keep filters despite having a score function defined for GenericMonteCarloMover commit 0de729894ec8a4d75f98f3f4a41232c08fc1f1e5 Merge: 613bd7e 45f24a7 Date: Tue Feb 21 15:51:15 2017 -0500 Merge pull request #2036 from RosettaCommons/dougrenfrew/virtual_shadow_patch_operation Add virtual shadow patch operation commit 613bd7e82ad35adee6634c0a472ed567fac9e76d Date: Sat Feb 18 15:39:45 2017 -0600 Add a forgotten integration test for PertMin. commit 23d1ee5fd1f5082142007634fcf8e228ed1203e2 Merge: 2eb3f41 ceeb47d Date: Fri Feb 17 12:30:17 2017 -0600 Merge pull request #2027 from RosettaCommons/havranek/sasa_fix Trying to fix exception handling in public app commit 2eb3f413208d13cfdc404caa18e7020f1f867a61 Merge: ce553dd 8769f6e Date: Thu Feb 16 21:08:55 2017 -0600 Merge pull request #2025 from RosettaCommons/havranek/sasa_fix Added test for calculating SASA. commit ce553dd42154ad26fa8e8dcc9e90373a40cdcdc2 Merge: f379c52 ca1659a Date: Thu Feb 16 09:37:39 2017 +0100 Merge pull request #2017 from RosettaCommons/ch.norn@gmail.com/filterscan_symm_enable Ch.norn@gmail.com/filterscan symm enable commit f379c52be92dbcbd92821eeecab70f0731ca7cdb Merge: 96640cb 7f43ea3 Date: Wed Feb 15 18:37:45 2017 -0800 Merge pull request #2020 from RosettaCommons/dimaio/fix_xtalcode_restype Fix build error in crystal code due to changes in residue_type_set commit 96640cb2aeaa6b82af02cc25a5b535aa022e6e03 Date: Wed Feb 15 17:37:25 2017 -0800 Create design_surface_hydrophobics.xml commit f0ca84ed378e2d5b0b739b89d3540831d6e9b744 Merge: e0e6443 f034692 Date: Tue Feb 14 07:52:55 2017 -0800 Merge pull request #2013 from RosettaCommons/GerardDaniel/scoreTermValueBasedSelector This is a new residue selector that selects residues that score within the threshold limits of a score term of choice. A subset of residues can be given as input by specifying residue number, selector sub tag or previously defined selector. By default it works on ALL residues If a score function is not given, the default score function will be used. In apply() a copy of the pose is scored. If "total" is given as the score term to be used, all weighted per residue scores are summed up and the value compared to the threshold. A few regression test seem to fail due to insignificant changes in atom coordinates reported. Soon, integration test will be added by Jason Klima and Benjamin Basanta. commit e0e64439a3f510b8dbeef72c2877be85ad520755 Merge: 54c25bc 2871a9d Date: Mon Feb 13 17:39:21 2017 -0800 Merge pull request #2015 from RosettaCommons/hssnzdh2/matcher_easy_fix small fix in the matcher mover commit 54c25bcb838223c2044160a3de741f6f9c5c7cef Merge: 18a7d21 b596197 Date: Mon Feb 13 09:48:01 2017 -0800 Merge pull request #1981 from RosettaCommons/kylebarlow/ddg_backrub Enables use of our backrub ensemble sampling interface ddG protocol in RosettaScripts. Integration test for the backrub ensemble sampling interface ddG protocol, implemented as a script BackrubProtocol changes: ability to use residue selector to select pivot residues, option for apply() function to keep last sampled structure (instead of always recovering lowest energy sampled structure), trajectory options. UseMultiCoolAnnealer task operation: allows use of MultiCoolAnnealer in RosettaScripts ScoreFunction tags can now set fa_max_dis option in RosettaScripts. Option to use harmonic function atom pairwise constraints in AddConstraintsToCurrentConformationMover. This functionality is used in the minimize_with_cst application, and is now available here in the protocols level (and is RosettaScripts accessible) Option in MinMover to minimize to convergence, as measured by an absolute score convergence threshold. For example, if the maximum number of cycles is exceeded, and the score after minimization has changed by more than the threshold amount, minimization will be run again. This functionality is used in the minimize_with_cst command line application, and is now available here in the protocols level (and is RosettaScripts accessible). Created InterfaceDdGMover to calculate change in binding ddGs, post mutation. Uses a saved reference Pose for either the wildtype or mutant state. commit 18a7d21eefbd1102e40f1463489ab4b3f0f47b29 Merge: 3551f51 3acb50b Date: Sun Feb 12 20:54:14 2017 -0800 Merge pull request #1998 from RosettaCommons/vmullig/helix_end_sequence_constraints_mover Add a mover that will set up sequence constraints to require charges at helix termini **The Problem** It has been observed that designs with charged residues at the ends of helices that complement the helix macrodipole are often more successful than designs without this feature. Specifically, we want an easy way of imposing the following knowledge-based rule: - Every helix should have at least one positively-charged residue among its C-terminal 3 residues. - Every helix should have at least one negatively-charged residue among its N-terminal 3 residues. Task operations cannot solve this problem: there is no way to set the identity of _at least one_ residue among a group of more than one residue to a desired identity with task operations. One can only force _all_ members of a group to have the desired identity, or risk that, after design, _no_ members of the group might have the desired identity. **The Solution** This pull request aims to create a mover that will set up **sequence constraints** imposing the rules above. Analogous to geometric constraints, sequence constraints work with the **aa\_composition** score term to impose a nonlinear penalty for devaition from a desired amino acid composition, and can be applied to sub-regions of a pose (like the N-terminal or C-terminal three residues in a particular helix). Specifically, the new mover will do the following: 1. Apply DSSP to the pose to detect the secondary structure. 2. For every helix, add two new composition constraints: 2a. A composition constraint requiring at least one negatively-charged residue among the three N-terminal residues of the helix. 2b. A composition constraint requiring at least one positively-charged residue among the three N-terminal residues of the helix. After applying the mover, the user should be able to design using any design tool that calls the packer (_e.g._ PackRotamersMover, FastDesign, _etc._). So long as the **aa\_composition** score term is turned on in the score function, the rule should be imposed. Note that this turns the packer's optimization problem ("give me the lowest-energy combination of rotamers that you can find") into a constrained optimization problem ("give me the lowest-energy combination of rotamers that you can find, subject to the rules that every helix has at least one negatively-charged residue at its N-terminus and at least one positively-charged residue at its C-terminus"). **Tasks** - [x] Add the mover using Jared's code template scripts. - [x] Add options for the N-terminal N residues (with N defaulting to 3) and C-terminal M residues (with M defaulting to 3). - [x] Add options for disabling the N-terminal or C-terminal constraints - [x] Add an optional residue selector for restricting the imposition of the rules above to a subset of the overall pose, if the user so wishes. - [x] XSD information. - [x] Have the mover call DSSP to identify helices. - [x] Have it create two residue selectors for each helix, selecting the N-terminal N residues and the C-terminal M residues. - [x] Have it set up composition constraints requiring at least one negatively-charged residue at the N-terminus and at least one positively-charged residue at the C-terminus of each helix. - [x] Additional features requested by @grocklin (see comment below). - [x] Penalize helix-disfavouring residue types. - [x] User configurable charge counts at helix termini. - [x] Penalize too many or too few alanines, weakly. - [x] Penalize too few hydrophobic residues, weakly. - [x] Unit tests. - [x] Integration tests. - [x] Basic setup with default settings only. - [x] Advanced setup with RosettaScripts-accessible options. - [x] Beauty. - [x] Documentation. - [x] Remove TEMPORARY_NOTE.txt. **Note** Frank and Hahnbeom are working on a physics-based solution to this problem that will actually consider the helix macrodipole. The mover that this pull request aims to implement, on the other hand, is a quick and dirty way of imposing prior knowledge, until such time as the physics-based solution is up and running; it is _not_ intended as a permanent solution. Note also that this mover is _only_ for the design step, while Frank and Hahnbeom's solution will ultimately be useful for both design and structure prediction-based validation. @grocklin @dabaker @hahnbeom @fdimaio commit 3551f512496532305ec22e53ee92d08d4dbdd74f Merge: 426654c b84aa6e Date: Sun Feb 12 13:57:36 2017 -0800 Merge pull request #2014 from RosettaCommons/xingjiepan/local_backbone_mover LocalBackboneMover changes the conformation of backbones between two selected pivot residues. The conformational change is confined within residues between pivot1 - 1 and pivot2 + 1. Residues between the two selected pivots are called a FreePeptide. Currently 4 FreePeptideMovers which alter backbone conformations are implemented: TranslationFreePeptideMover translates the FreePeptide. LongAxisRotationFreePeptideMover rotates the FreePeptide along the axis from its first Ca to its last Ca. ShearFreePeptideMover does a shear move on a residue of the FreePeptide. CircularPermuteFreePeptideMover does a circular permutation on the backbone torsions of the FreePeptide. commit 426654cd806fac3b8611aba507b4a110ea7178a0 Date: Sat Feb 11 01:08:35 2017 -0800 Beautifying master. commit b2d17e54dab126f5a80690def7f83a80d47106ef Merge: 56da0f2 c0dc767 Date: Fri Feb 10 14:30:46 2017 -0800 Merge pull request #2010 from RosettaCommons/dimaio/etable_maxdis_bug Stop Rosetta from crashing when fa_max_dis > 11.5 commit 56da0f22f0134e9cf36751544fdef184fbd00d29 Merge: 9693310 d33d35d Date: Thu Feb 9 15:07:51 2017 -0800 Merge pull request #2008 from RosettaCommons/dougrenfrew/convert_cpp_style_mpi_bindings_to_c_style Dougrenfrew/convert cpp style mpi bindings to c style commit 9693310c19cba93616451ab9f59b7fc2611f7fcd Merge: b7b0755 50bc008 Date: Wed Feb 8 23:11:27 2017 -0600 Merge pull request #1797 from RosettaCommons/roccomoretti/select_columns Add columns selection script. Add a simple script that obviates the need to write ad-hoc awk scripts to select out particular columns from Rosetta score files. commit b7b07550cb3fa39fe727ab5e464c1448063e8be4 Merge: 76ca8f5 2a6331f Date: Wed Feb 8 13:43:13 2017 -0800 Merge pull request #2004 from RosettaCommons/basantab/StrandHelixGeometryFilter All expected tests passed. commit 76ca8f5ccee05af1c2eac3b6880eba2978271a31 Merge: a44b19b 1753114 Date: Wed Feb 8 05:20:50 2017 -0800 Merge pull request #1994 from RosettaCommons/sheffler/baker_pyrosetta minor tweaks to pyrosetta build.py for build on baker systems commit a44b19b9e7d4ad8853c1feb156d6766cf7e669ce Merge: 75c99db ef66cca Date: Tue Feb 7 16:58:33 2017 -0800 Merge pull request #2003 from RosettaCommons/basantab/HelixBendFilter All tests passed. Except for the expected new integration test for this filter. commit 75c99db7b48aaa5d34582d655bbd7acb05d3ab8c Merge: f9b4b50 e390a6a Date: Tue Feb 7 16:15:48 2017 -0800 Merge pull request #2002 from RosettaCommons/yhsia/extract_asym_pose_mover_option Yhsia/extract asym pose mover option commit f9b4b50a2d264fa949da75a5645f9095e573cae7 Merge: d5e4b10 9de7f32 Date: Tue Feb 7 10:30:13 2017 -0800 Merge pull request #2001 from RosettaCommons/basantab/SecondaryStructureFilter_add_treatLasD Added a new option for this filter: treat_L_as_D, for cases where a blueprint is being used as reference and loops are being detected as H or E by DSSP. Also, created an integration test for this filter. All integration tests are woking as expected. commit d5e4b1003010cc0a3991799217eacc7ab64a83a1 Merge: 4d11fdf 13c15f5 Date: Mon Feb 6 18:10:43 2017 -0800 Merge pull request #2000 from RosettaCommons/basantab/StrandCurvatureByLevels All tests passed, except for the expected new test added for this filter commit 4d11fdfa2132fc337227763d406efe5b34b218db Merge: 04df72a 1fc3f0d Date: Mon Feb 6 12:14:17 2017 -0800 Merge pull request #1996 from RosettaCommons/rhiju/towards_better_loop_close printing out nucleotide-to-nucleotide jump info in rna fragment assembly only test changes were broken before. commit 04df72ad40cc7487f92c9cfe940daeaeedc19899 Merge: ff69ce9 d5a6567 Date: Mon Feb 6 09:54:18 2017 -0600 Merge pull request #1983 from RosettaCommons/roccomoretti/update_sqlite Update SQLite code to the most recent version: 3.16.2 The version of SQLite we had in external (3.7.4) has a number of issues which are detected by the Undefined Behavior Sanitizer (ubsan) tests. Taking a closer look, this looked to definitely be a deficiency in SQLite 3.7.4, rather than how we were using it. Updating to the most recent SQLite version appears to fix these issues. Some small changes were needed in the SandwichFeatures code to properly order results -- SQL does not require that results be in any particular order, but SandwichFeatures was taking advantage of the fact that SQLite 3.7.4 (but not 3.16.2) ordered the results in a consistent manner. commit ff69ce976ba9a496344716ef7c652c02dbfb2193 Merge: 169240e 62a21e5 Date: Fri Feb 3 16:35:15 2017 -0600 Merge pull request #1991 from RosettaCommons/roccomoretti/pdbrotamers_empty_check Add error checking to PDB_ROTAMERS loading. If the file exists, but contains junk, pop up an error instead of crashing with a divide by zero crash. commit 169240ee2c56b6456dcca547ae80dcbb955267ff Merge: 3aec314 5df5021 Date: Fri Feb 3 11:55:33 2017 -0800 Merge pull request #1992 from RosettaCommons/yhsia/sc_filter_typo fixed a single typo in the XMLSchema lines of sc_filter. commit 3aec314fa905d6378e086158538dc3c52bebd267 Merge: ad04485 f560fdf Date: Fri Feb 3 11:12:22 2017 -0800 Merge pull request #1993 from RosettaCommons/basantab/fix_ConsensusLD_fromM Basantab/fix consensus ld from m commit ad0448515c81b398703fd5a77986ab20919e3186 Merge: 8bd4071 b7bc73d Date: Thu Feb 2 18:50:46 2017 -0800 Merge pull request #1988 from RosettaCommons/dimaio/cart_bonded_threaded Four real integration test changes. All verified to be due to change to cart_bonded_improper potential. commit 8bd4071862a99d5d20a11f312951d35d0ad5680b Date: Thu Feb 2 15:09:42 2017 -0600 sweep_respair_energies integration test: convert SQL database into diff-able form. commit ad756b0ec2d129de3785c242ab31d9e7466c1780 Merge: e730680 627eef2 Date: Thu Feb 2 13:23:33 2017 -0600 Merge pull request #1990 from RosettaCommons/roccomoretti/fix_AntibodyDatabaseManager AntibodyDatabaseManager: extend temporaries until after we're done with the query. In cppdb::statement::bind(), the passed value should not be a temporary return value from a function. If it is, it will be destroyed before the query completes, leading to havoc and bad results. You need to extend the lifetime of the returned value by assigning it to a variable so it doesn't get destroyed before you're done with the query. commit e73068078bbf5d6d0a794b305fb71d9550f500fb Merge: babed07 39395d3 Date: Wed Feb 1 14:41:49 2017 -0600 Merge pull request #1982 from RosettaCommons/roccomoretti/ubsan_fixes Fix two issues which were causing errors with the undefined behavior checker. In LoopProtocol, explicitly cast the regex match to a string, rather than whatever odd type it is under the hood. In MotifGraftMover, explicitly initialize variables in a plain-data struct, as the uninitialized values were causing issues when the structures were copied. ("2" is not a bool.) commit babed073aa1ad7a39b9e2e404698b82ceaa05c96 Merge: d3b32a2 6138796 Date: Wed Feb 1 14:40:29 2017 -0600 Merge pull request #1980 from RosettaCommons/roccomoretti/fix_DynamicAggregateFunctionTest_segfault Fix DynamicAggregateFunctionTests segfault If an iterator is equal to end(), it's undefined behavior to dereference it, particularly if you've modified the container it is for and have invalidated it. If we avoid doing that, we can fix the DynamicAggregateFunctionTests unit test segfault on certain GCC versions (e.g. Ubuntu). commit d3b32a2ebd77f70bd51604b2ffe8fe35c5479093 Merge: 37239f8 d7fd30c Date: Wed Feb 1 15:27:41 2017 -0500 Merge pull request #1985 from RosettaCommons/aleaverfay/cleanup_nblist_cutoff_logic Refactoring neighborlist construction logic in EtableEnergy This PR will assuredly cause numerous intgration-test trajectory changes, as the cutoff parameter controlling hydrogen motion tolerance is increased from its previous 0.25A to 0.75 to match the parameters for heavy-atom motion. This means that fewer interactions involving hydrogen are going to be ignored during minimization; i.e. the scores and derivatives will change and thus trajectories will change. This commit is needed by PR #1972, but because of its dramatic changes to integration tests, I wanted to commit it by itself. commit 37239f8298bcd15d42bda831f2d5a3b0ca4c3f30 Merge: 627f7dd 7f4d8ac Date: Tue Jan 31 20:04:07 2017 -0800 Merge pull request #1978 from RosettaCommons/vmullig/tweak_peppred Adding a final symmetry filtering step to simple_cycpep_predict When sampling with quasi-symmetry, sometimes the final relaxation step would break symmetry. This adds one more filtration step based on symmetry after that relaxation, so that asymmetric poses are thrown out. Tasks: - Add extra filtering step. - Double-check that BOINC build is still happy. - I think it is, but I have an older version of the Linux BOINC libraries built. Will check on Ralph the next time that Rosetta is deployed. - Also, add filtering to bettercluster.cc. - Add threshold option to bettercluster.cc. - Beauty. commit 627f7dd22223c3074594934b789abb4f4e2e3b10 Merge: 56e9e8b 2e6ba27 Date: Tue Jan 31 09:09:55 2017 -0500 Merge pull request #1979 from RosettaCommons/lqtza/antibody_blast_version26_fix Lqtza/antibody blast version26 fix commit 56e9e8b1937bff8075dd4f5e845705b8710dd013 Date: Mon Jan 30 19:14:01 2017 -0800 Beautifying master, which hasn't been done in a while. commit df69e27715af57d2484324b102d88d235a3e923a Merge: 08efae3 fe1bf16 Date: Mon Jan 30 11:13:16 2017 -0600 Merge pull request #1971 from RosettaCommons/jadolfbr/fix_append_pose_by_jump This fixes a bug where energies were not being correctly cleared when appending the pose by a jump. Most other append/delete functions are calling this clear properly. This led to an issue where the concatenated pose was not able to be dumped properly. Found by @lqtza and confirmed as missing in the function by @roccomoretti The two functions where we now properly clear the energies are: - append_pose_by_jump - delete_residue_range_slow commit 08efae3b7e84556851a92ed3b3a9e4e133c89ab8 Merge: 4ff9a67 56a8f84 Date: Mon Jan 30 09:49:22 2017 -0600 Merge pull request #1976 from RosettaCommons/roccomoretti/sicdock_uninitialized Fix 'may be used uninitialized' compiler error These were causing issues with gcc 5.4 commit 4ff9a67cde23b68d83061a00b3e6b4647f9f3dda Merge: 50841c5 590108a Date: Fri Jan 27 13:32:10 2017 -0600 Merge pull request #1970 from RosettaCommons/roccomoretti/pertmin Roberto Chica inspired random perturbation followed by minimization mover for RosettaScripts. Potentially useful for exploring local conformational space. 1. Davey & Chica, Proteins 82:771-784 doi:10.1002/prot.24457 commit 50841c5a547d83fe7409e4be0660be048165f941 Date: Thu Jan 26 12:45:34 2017 -0800 Update srl_triplet flags not to save times was causing instability for obvious reasons commit 6349279a321523f65796a73968c1c9c5a3d07d1b Merge: ef098c3 07a8f99 Date: Thu Jan 26 07:08:45 2017 -0800 Merge pull request #1975 from RosettaCommons/tlinsky/betasheet_fix Fix to BetaSheetArchitect for building onto existing strand residues commit ef098c3bcb454995d291a74751e8d04fa7ca750c Merge: d25ffc7 f62d908 Date: Wed Jan 25 14:48:49 2017 -0800 Merge pull request #1973 from RosettaCommons/everyday847/fix_inconsistent_rename Renamed references to refit bonus commit d25ffc7291a59997684929604d91da5f11fedc1b Merge: e362a1e 6c5134a Date: Wed Jan 25 07:48:55 2017 -0500 Merge pull request #1943 from RosettaCommons/aleaverfay/jd3_derived_jq_specifies_inputter_subset Rebecca asked for a JD3 feature that would allow her membrane-related application to require a particular PoseInputter be used so that it would be able to initialize the Pose in a special way to ensure that all of the membrane-related data were in place at startup. This pull request expands the set of features that the StandardJobQueen (SJQ) provides for classes wishing to derive from her. The derived JobQueen (DJQ) will call one or both of two functions in her constructor to inform the SJQ base class of what pose inputters she would like to allow, and will call one, two, or three functions to inform the SJQ base class what pose outputters she would like to allow. It is possible to for the DJQ to say: "I would like all of the inputters registered with the PoseInputterFactory", "I would like all of the inputters registered with the factory, and these X, Y, and Z additional inputters that are not registered", or "I would like this list of inputters which may or may not already be registered with the factory" @rfalford12 commit e362a1ee09314f39e52a53743f937bb17a7e5a06 Merge: 7bc9636 11359cc Date: Wed Jan 25 00:15:57 2017 -0800 Merge pull request #1559 from RosettaCommons/sjbertolani/fixweirdboolgetterandsetterinenzdes Sjbertolani/fixweirdboolgetterandsetterinenzdes commit 7bc9636806d8ef661ee55e932199ffc9a6b1e964 Merge: 1c66385 a6b34a3 Date: Tue Jan 24 14:30:40 2017 -0500 Merge pull request #1954 from RosettaCommons/Cyrus/mergetarget From Steven Lewis: three items: 1) @yfsong -sourced bugfixes and updates to Hybridize. This is mostly an update to add a more powerful constructor (previously the class was dependent on parse_my_tag being called). This code is marked as smlewis code because it's a squash-cherrypick from an abandoned poisoned branch. 2) read_topology_file, the function that converts params files into ResidueTypes, previously assumed that the file was coming in from disk (string filename, or izstream from file). The interface has been rearranged to allow a std::istream, for params files not coming from disk (coming in over network communication from some non-Rosetta black box in my case). There has been discussion of unifying the function name read_topology_file and the file names "*.params" to match better - that's been put off to the winter meeting. 3) @roccomoretti pointed out a bug in my last ACTCCMover updates; fixed. Tests all look fine from my end. There is an added unit test to support read_topology_file. commit 1c66385593c6b76919d61a5baa73b38f49687615 Date: Mon Jan 23 14:14:27 2017 -0800 add cmake cxx11 omp build configs commit f4e1ae400eb070ca595dc390aa46152d02b12d74 Merge: b938304 4a6f48f Date: Mon Jan 23 16:07:40 2017 -0600 Merge pull request #1968 from RosettaCommons/roccomoretti/parse_xsd_desc_fix Fix documentation on some of the common XSD parsing utilities. There was a bunch of XRW TODO for documentation in protocols/rosetta_scripts/util.cc -- I changed this to something passable, as well as extending the utility functions to take (optional) descriptions, so you can have "TaskOperations for the low-resolution stage" instead of just a plain "TaskOperations to use" description. commit b9383044ba937cd7d95ae4565011a08252744cd7 Merge: 67fde90 8230bd0 Date: Mon Jan 23 16:07:21 2017 -0600 Merge pull request #1969 from RosettaCommons/roccomoretti/hbnet_long_fix Fix issue with unsigned long. It looks like there's leftover "unsigned long"s in range for loops, likely from an autoconversion. This caused issues compiling for a person on the forums. This converts those unsigned longs to core::Size, like they should be. commit 67fde902a12f857618e855083fef3dc9c7ec1aef Merge: deef0d3 62e8f53 Date: Sat Jan 21 09:22:22 2017 +0100 Merge pull request #1964 from RosettaCommons/correialab/budgraziano/posefragmentmover Correialab/budgraziano/posefragmentmover commit deef0d3e70302668e8a07f274ddf487c865e42fc Merge: 3e78034 d4dc1c3 Date: Fri Jan 20 12:35:04 2017 -0700 Merge pull request #1965 from RosettaCommons/sergey/binder Updating Binder self-tests. Removing deprecated files. commit 3e78034eb9feeb1aa2a7a94c4bee216ef89e2c40 Merge: 5d148cd 50c9fb0 Date: Fri Jan 20 10:36:09 2017 -0800 Merge pull request #1966 from RosettaCommons/basantab/HbondsToAtomTest merge small change to integration test in basantab/hbonds to atom test commit 5d148cd0fbea84f3ec52344677e47890f6decea3 Merge: 563880b d439d7c Date: Thu Jan 19 17:18:28 2017 -0600 Merge pull request #1963 from RosettaCommons/roccomoretti/enable_CIF Attempt to (re)enable mmCIF input on JD2 Update 'PDB'JobInputter to use the auto-detection logic and update the auto-detection logic. Add usage of mmCIF input to integration tests to catch if we break it (again). Large number of cosmetic integration test changes expected, as an additional diagnostic line has been added to PDB loading. commit 563880bb374a329f44a00437ff02a0e7d010efd1 Merge: 4a30d46 605784b Date: Thu Jan 19 09:20:23 2017 -0600 Merge pull request #1958 from RosettaCommons/roccomoretti/chifix ICOOR/CHI correspondence fixes There's an implicit assumption in ResidueType that the two terminal bonds of a chi are situated along the ICOOR tree. We get that right most of the time, but there's a couple of examples where it doesn't quite work. This PR adds a check during finalize() to make sure things are set up appropriately w/r/t CHI and ICOORD trees. It also fixes some of the existing params files which don't get things correct, as well as the SDF/CIF loading code which was ignoring the issue. Trajectory changes to pna and vancomycin integration tests expected: these use params files that changed. commit 4a30d46a9bfc5c1227664f15fb7f799742be28ba Merge: 2ed4775 bac9da6 Date: Thu Jan 19 05:26:35 2017 -0700 Merge pull request #1961 from RosettaCommons/sergey/f Removing structural_alignment.py script due to licensing issues. commit 2ed47754de2e4e00484db479a3df5b1f627ad67d Merge: a6eb4d1 8c34384 Date: Wed Jan 18 23:02:49 2017 -0800 Merge pull request #1962 from RosettaCommons/basantab/HbondsToAtomTest Merging basantab/HbondsToAtomTest commit a6eb4d1163b8559c90016999f41b28ecbf0f58e4 Merge: 598ecbe 0ca97d3 Date: Wed Jan 18 17:04:15 2017 -0600 Merge pull request #1960 from RosettaCommons/roccomoretti/XML_roundtrip Add quoting to script outputting. Now that we have XSD validation, input RosettaScripts XMLs need to have quoted options/attributes. However, the tracer-output of the parsed XML currently omits the quotes. Ideally, the outputted script should be 'round-trip-able' (that is, functional for feeding back into Rosetta as input.) This change enables quoting of options/attributes by default in the script output, so that the output script looks "proper". No test changes expected, aside from the obvious integration test log changes. commit 598ecbe9ac6b2a56d84108a96a2f2604682487a8 Merge: 7e31092 ec9813b Date: Wed Jan 18 08:50:16 2017 -0500 Merge pull request #1957 from RosettaCommons/rfalford12/fix-mpframework-bug Fixing a segfault that occurs if you create a pose from sequence, or … commit 7e3109277bdde47dfd3572ea385bd482a27d96f6 Merge: d79a9eb 11fb5f8 Date: Tue Jan 17 20:00:29 2017 -0500 Merge pull request #1959 from RosettaCommons/lqtza/pyrosetta_db_path_fix deprecating get_rosetta_database_path due to lack of use commit d79a9ebe000325f8b090faf36a67bd73e06420e8 Merge: 96fb47f e8cc1e4 Date: Tue Jan 17 11:52:39 2017 -0800 Merge pull request #1953 from RosettaCommons/rhiju/recces_bulge Rhiju/recces bulge Only tests that really change are + `rna_denovo_bps`; due to a different ordering of noncanonical base pairs due to use of Andrew's nice `rna_secstruct.pairings()` function instead of my and Joe's _ad hoc_ flatten of stems. + `swm_builld_full_model` restored. commit 96fb47f59b22940ddfdf24cf5cada1976c7c21f7 Merge: 917abc0 4da7af5 Date: Tue Jan 17 06:21:26 2017 -0600 Merge pull request #1956 from RosettaCommons/havranek/multi_disulf_bugfix Bugfix for multipole electrostatics commit 917abc02cf7a0ea2ec399de6386501f742407b2f Merge: 94bc425 e9726f1 Date: Mon Jan 16 15:12:49 2017 -0800 Merge pull request #1812 from RosettaCommons/vmullig/fix_boinc_mac Update mac/clang/boinc build and BOINC code for new BOINC API The move to C++11 broke the BOINC builds, and we've had to move to the latest verison of BOINC, which in turn broke the way in which we were interfacing with BOINC. This corrects all code issues, so that Rosetta can talk to BOINC again. DONE: - Fix linking issues, particularly related to the new TrueType libraries that BOINC uses. - Test font display with the new BOINC libraries and the TrueType libraries; adjust font sizes and spacings appropriately. @davidekim commit 94bc425fa203710ff501f9baba7498adc94a67d6 Date: Fri Jan 13 17:07:59 2017 -0800 Making build_util and make_project python 2.7/3.x compatible commit 150d7a9187717af4cd76f601d93b7618765cb0fb Merge: 41bbcf4 2a188be Date: Fri Jan 13 16:39:01 2017 -0800 Merge pull request #1942 from RosettaCommons/rhiju/recces_info RECCES TODO + single-nt-bulge updates Some integration tests change due to an update in how fold_tree is setup inside fixed domains. connections between end of one chain & beginning of next chain are preferred (this matches the behavior of figure_out_reasonable_rna_fold_tree). In some swm protein/rna tests, this produces very very tiny floating point errors (1e-7) that accumulate. commit 41bbcf4dc237dc8423db8745b78af77a9ee4fb86 Merge: 96a063e eff821e Date: Fri Jan 13 10:01:47 2017 -0800 Merge pull request #1951 from RosettaCommons/dimaio/lkball_threadsafe Dimaio/lkball threadsafe commit 96a063ec865acca17e34997301b169837cdab1a5 Merge: ad3f4eb b9f676b Date: Thu Jan 12 17:41:58 2017 -0800 Merge pull request #1950 from RosettaCommons/vmullig/fix_pepalign_mover Fixing a few parsing errors in SymmetricCycpepAlign.cc. I had a few mistakes in the parse_my_tag function that caused issues in certain usage cases. commit ad3f4ebee1b716ba5d5b826fcf523edcbfe24ec2 Merge: 610256f ca81710 Date: Thu Jan 12 15:42:30 2017 -0800 Merge pull request #1952 from RosettaCommons/rpavlovicz/beta_nov16_simplefix fix flag issue with lk_ball_water_donor commit 610256f6161e58cb43fdaf4caa63eff336f6a750 Merge: 8736d7c 97f6124 Date: Thu Jan 12 15:48:36 2017 -0600 Merge pull request #1948 from RosettaCommons/roccomoretti/ClangSA_debug_assert Fix issue with null pointer dereference in Clang Analysis The way we had debug_assert() set up, Clang static analysis wasn't realizing that execution stops when the condition is false. This pull request fixes that, so that spurious ClangSA issues no longer occur. commit 8736d7cc31d1cef6fa76c9619ed4ef257a66d10a Merge: 2fc5a79 607d6c4 Date: Thu Jan 12 15:44:24 2017 -0600 Merge pull request #1945 from RosettaCommons/roccomoretti/xml_addsan Fix various issues with Addsan server tests The major fix here was to close a memory leak in XMLSchemaValidation.cc. There were also some issues with how sqlite was being used. (You can't bind a return-by-value vector1 into a query - the temporary vector gets deleted before the query actually gets run, resulting in an memory access issue.) These fixes now turn the integration.addsan test green on the test server. The unit.addsan still has issues with the crashing DynamicAggregateFunctionTests, and differential results with AntibodyTaskOps tests commit 2fc5a79d7b595be158675d0b17727e5ab8c3ecc1 Merge: 6bdc2e5 06151fd Date: Thu Jan 12 12:50:37 2017 -0700 Merge pull request #1940 from RosettaCommons/sergey/binder Adding binding (as __str__) for types with template operator<<. Cleaning up some of Evan Baugh toolbox code. Porting pose_from_rcsb to Python-3. commit 6bdc2e52312ae6b3c30d502542e77ca8dfac1721 Merge: 64c3ddf 737f8e1 Date: Wed Jan 11 12:34:14 2017 -0800 Merge pull request #1949 from RosettaCommons/everyday847/whoops Unbreak some tests commit 64c3ddf6544116df4e6b98cc7ce1c2608a91658d Merge: e2ec8f1 81c0963 Date: Tue Jan 10 23:04:20 2017 -0800 Merge pull request #1946 from RosettaCommons/everyday847/build_full_model_farfar Build full model with fragment assembly refinement commit e2ec8f145672049a068fe5d0fa2e72c804816733 Merge: 0343a52 5ae5774 Date: Tue Jan 10 18:20:18 2017 -0800 Merge pull request #1941 from RosettaCommons/vmullig/nmethyl_valgrind_issue Fix an uninitialized variable issue flagged by Valgrind in the N-methylation unit tests. This was caused by some uninitialized local vars in LK_BallEnergy.cc that were being used to set other things. commit 0343a52f046fb42588ca423115616306f8062d3a Merge: ffb4550 97ba90b Date: Tue Jan 10 16:44:53 2017 -0800 Merge pull request #1947 from RosettaCommons/GerardDaniel/nbrhdResSelc_custNbrAtm fixing potential serialization issues commit ffb45508bebdefd5086774937f5449b2cd169272 Merge: 2fa8628 92cef33 Date: Mon Jan 9 23:23:04 2017 -0800 Merge pull request #1944 from RosettaCommons/GerardDaniel/nbrhdResSelc_custNbrAtm Fixing serialization test issues commit 2fa862826ee493cf7f93887e4d851471a16a23fe Date: Mon Jan 9 16:17:42 2017 -0800 Fixing a pilot app. No test changes possible. commit ffbe5cedfe3d6f3cc9ec181b7546cbd8e799c20b Merge: e4488bd afc0505 Date: Fri Jan 6 12:07:42 2017 -0800 Merge pull request #1935 from RosettaCommons/rhiju/refactor_recces Rhiju/refactor recces + only integration tests that really change are thermal_sampler and recces, and those changes are cosmetic text diffs. Numerical trajectories are exactly the same. commit e4488bd8b537f76a04632fd81ba7023627fcffb5 Merge: ba96193 2573ba5 Date: Thu Jan 5 21:34:20 2017 -0800 Merge pull request #1936 from RosettaCommons/GerardDaniel/nbrhdResSelc_custNbrAtm Added the ability to take in and use custom atoms per residue for defining neighbor selection commit ba961939e2a8d549da7611268e5dec181dd6c67b Merge: c8d350e 3519931 Date: Wed Jan 4 21:46:19 2017 -0700 Merge pull request #1937 from RosettaCommons/sergey/binder Fixing PyRosetta release scripts which got broken during PyMOL mover refactoring commit c8d350e827f28218af4026b39866302eaa473bc5 Merge: d99217e 282bfb6 Date: Wed Jan 4 13:03:35 2017 -0700 Merge pull request #1933 from RosettaCommons/sergey/f Fixing mpi integration test script for cases when more then one extras was specified as platform. commit d99217e1057bd41abe3161022727d9d9ca1e01d8 Merge: d4ec324 9b07a0e Date: Wed Jan 4 11:22:56 2017 -0800 Merge pull request #1934 from RosettaCommons/dimaio/hybrid_dna_chainnumbers Fix chain IDs for hybridize with RNA/DNA commit d4ec3249095cc6b992e82aadcdec9ad69fd75811 Merge: 1392a17 e036a24 Date: Wed Jan 4 08:23:08 2017 -0500 Merge pull request #1923 from RosettaCommons/aleaverfay/jd3_silent_file_io aleaverfay/jd3_silent_file_io This pull request addresses three significant shortcomings of JD3: - a lack of silent file support, - the StandardJobQueen caches stored Poses if they were read from PDBs, - the StandardJobQueen had no way to deallocate Poses once they were done with This PR addresses these all at once. The JobDistributor now allows the JobQueen to send inter-process "deallocation messages," which it will deliver to the JobQueens on remote nodes. These messages will be used by the StandardJobQueen, for instance, to deallocate Poses that are no longer being used. In the near future, the SJQ will also use these messages to deallocate no-longer-needed Resources being held by the ResourceManager. The JobQueens are now obliged to assign PoseIDs to each of their poses so that they can then use the PoseDeallocationMessage as a way to signal to remote nodes that a Pose is no longer needed. The SJQ does this. Thus she will now deallocate Poses that were read in from either a PDB or a SilentFile. One drawback, however, is that if a Pose is read in multiple times in separate ... blocks within a job-definition file, then it will be read from disk multiple times. However, it will only be read from disk a single time per process if it appears only once in a job-def file, or if it is input using the command line (e.g. in -in:file:s, or -in:file:silent), regardless of the "nstruct" count. There is now a SilentFilePoseInputter that delivers Poses to the JQ. Before this PR is closed, there will be a SilentFilePoseOutputter, too. To allow different Pose input options for different jobs within a single job definition file, the structure of silent file reading had to be altered so that the global options system could be wholly avoided if desired. To that end, a new class SilentFileOptions, now can be initialized with a default constructor (to read from the global options system) or from a (possibly-non-global) OptionCollection object. It also has a "parse-my-tag"-like function to read from a TagCOP. AFTER SILENT FILE OPTION CONSTRUCTION, NO PART OF SILENT FILE IO READS DIRECTLY FROM THE OPTIONS SYSTEM. commit 1392a179558001c3bf12c7dec2e5b3d9084ec416 Merge: 06622ef 5212022 Date: Tue Jan 3 18:56:29 2017 -0800 Merge pull request #1932 from RosettaCommons/everyday847/minor_farfar_homology_bug Fix a minor bug with fragment homology elimination and noncanonicals commit 06622ef3eaef96bebcd2194848c44b9671de5df7 Merge: d610dbc e72f4d9 Date: Tue Jan 3 14:03:04 2017 -0800 Merge pull request #1930 from RosettaCommons/everyday847/reasonable_location_for_vdwrep Move the VDW_GridEnergy to protocols/scoring commit d610dbcac7de639bb5b5bd832f24a111e2e5cc83 Merge: 076c7f9 48221ee Date: Tue Jan 3 08:20:52 2017 -0500 Merge pull request #1928 from RosettaCommons/Cyrus/mergetarget From Steven Lewis: This is mostly small features I did in in the summer/fall of 2016 and never got around to testing and PRing until just now. Features: * smlewis/fix_README - improving the front README, based on a better understanding of our forking policy, thanks to @aleaverfay @kwikwag * smlewis/FT_clangstatic_fix - fix a clangstatic bug @roccomoretti pointed out (it was a copy paste error) * smlewis/cyrus/ss_printer_for_commons - fixes to the HELIX/SHEET printer so that the records are ordered properly in large/multichain structures where the numbering restarts per chain. This integration test (secondary_structure_output) will change, as it now has a long enough input to have triggered this bug. smlewis/cyrus/LoopLengthChange_restype: LoopLengthChange takes a residue type char for what to insert/ Resolves RC issue RosettaCommons/main#1700. Adds integration test. smlewis/cyrus/actccm_atompair_bounded - AddConstraintsToCurrentConformationMover constraint choice improvements. Adds integration test. This code already had an integration test testing different aspects of the Mover; I made a second test so that it multithreads more efficiently. commit 076c7f9961551379314c99fe6c2eb6ded1361a4f Merge: 04305de 99eedec Date: Sat Dec 31 09:01:55 2016 -0800 Merge pull request #1925 from RosettaCommons/everyday847/approximate_fragment_matches Exclude homologous fragments with generous sequence matching. commit 04305de1f81630e2b50f667b80aea46c1eb11713 Merge: 348a9bc 2bc95a2 Date: Sat Dec 31 07:39:53 2016 -0800 Merge pull request #1924 from RosettaCommons/rhiju/minor_stepwise_fixes_rna_puzzle18_movie Rhiju/minor stepwise fixes rna puzzle18 movie one integration test changes (align_pdb no longer being treated as 'pseudo-native') commit 348a9bc7ed79751080e7429701c74f09e4fd7c58 Merge: 08f3748 c01dced Date: Fri Dec 30 13:06:26 2016 -0800 Merge pull request #1922 from RosettaCommons/everyday847/immediately_valuable_alterations Immediately valuable code improvement commit 08f3748c67043d5711fd2d3e64d03f9afcebd8a1 Merge: fb77c73 c3301d3 Date: Thu Dec 29 08:32:03 2016 -0500 Merge pull request #1920 from RosettaCommons/rfalford12/PyMol_to_PyMOL Fix Misspellings of PyMOL ======================= PyMOL is spelled with a capital MOL - however, some recent PyRosetta4 code uses PyMol. We decided that our Rosetta naming should be consistent with the name of the program. So, I renamed every instance of PyMol to PyMOL. These changes will also be reflected in the newest version of the PyRosetta workshops. commit fb77c732b4f08b6c30572a2ef7760ad3bb4535ca Merge: 4ef4fe7 cab48b3 Date: Mon Dec 26 17:23:32 2016 -0800 Merge pull request #1918 from RosettaCommons/rhiju/reorganize_sampler_dirs Rhiju/reorganize sampler dirs + cppcheck issues, but stemming from @everyday847 prior commit. + some code duplication, but will remove in next PR's. commit 4ef4fe7807896995af84eef394e20f893b61ce54 Merge: 0fca958 9cb9a8a Date: Fri Dec 23 15:28:31 2016 -0800 Merge pull request #1913 from RosettaCommons/vmullig/cycpep_align Add a mover to align a quasi-symmetric peptide to the origin and Z-axis, for true symmetry setup Currently I do this with some manual editing of PDB files, a script, and the minimizer, but a specialized mover could do this more easily and more efficiently. This will be a needed part of the symmetric cyclic peptide design pipeline. Tasks: - [x] Create the mover with Jared's code template scripts. - [x] Register it. - [x] Add options to parse_my_tag() for specifying symmetry. - [x] XSD information for these. - [x] Add length check and symmetry check (with the CycpepSymmetryFilter) to apply() function. - [x] Add origin alignment to apply() function. - [x] Add Z-axis alignment to apply() function. - [x] Ensure above handles non-protein residues properly (ignores them). - [x] Allow auto-detection of symmetry. - [x] In parse_my_tag(). - [x] XSD information. - [x] In apply() function. - [x] Add option to delete all but a selected repeat: - [x] To parse_my_tag(). - [x] XSD information. - [x] To apply() function. - [x] Ensure this deletes non-protein residues like TBMB. (Symmetric versions can be added back after symmetry is set up, using the ThreefoldCrosslinkerMover.) - [x] Document this deletion of non-protein residues. - [x] Unit tests. - [x] Integration test. - [x] Beauty. - [x] Documentation. commit 0fca958287da21d449bb217a74a0722407b79b96 Merge: 8dd1802 f834608 Date: Fri Dec 23 02:14:59 2016 -0500 Merge pull request #1915 from RosettaCommons/everyday847/align_pdb_farfar Use the '-align_pdb' restraint in FARFAR runs commit 8dd1802058b3db4bbb7ec3471d30ad81fab7d47f Merge: d1fb417 5a70900 Date: Thu Dec 22 15:46:23 2016 -0800 Merge pull request #1914 from RosettaCommons/rhiju/restore_thermal_sampler_original Rhiju/restore thermal sampler original `thermal_sampler` integration test changes -- actually now it reproduces exactly the behavior of `thermal_sampler_original.cc` (as developed by Fang & Kalli in 2014-2015). commit d1fb417170cf82f55f3671bb4aff6c3d05d39194 Merge: d19fc09 e560098 Date: Thu Dec 22 08:22:37 2016 -0800 Merge pull request #1910 from RosettaCommons/rhiju/recces_mover Rhiju/recces mover Some code duplication introduced (but will eventually delete prior code -- this is part of a bigger refactoring project). commit d19fc09eff4a1985fd93f3f59ca691c82f694e57 Merge: 78f7089 924a468 Date: Thu Dec 22 08:21:18 2016 -0800 Merge pull request #1911 from RosettaCommons/rhiju/minor_stepwise_farfar_fixes Rhiju/minor stepwise farfar fixes commit 78f7089ff4e32e3d37a6f4ce8d6c228d235c9d8d Merge: f08e0f9 e762c24 Date: Wed Dec 21 02:07:36 2016 -0800 Merge pull request #1846 from RosettaCommons/vmullig/symm_predict Adding options to simple_cycpep_predict app for only sampling symmetric conformations. Integration test changes to simple_cycpep_predict integration tests are expected. Tasks: - [x] Add the options. - [x] Have them do something. - [x] Integration test. - [x] Add mirroring integration test. - [x] Mute unnecessary output in integration test. - [x] Find and fix bug in CycpepSymmetryFilter. - Added a unit test for this, but can't really reproduce the bug, if it exists. It could be that it was a problem with where the filter was applied, and that the asymmetry was introduced in the final relaxation... - [x] Add GenKIC perturber for copying DoFs (addresses issue #1877). - [x] Integration test - [x] Allow perturber to steal DoFs from non-loop residues, too. - [x] Ensure that anchor_res DoFs are properly grabbed in simple_cycpep_predict. - [x] Add mirroring option. - [x] Add mirroring option to integration test. - [x] Hook this in to the simple_cycpep_predict app in symmetry mode. - [x] Document GenKIC perturber. - [x] Document new flags for simple_cycpep_predict. - [x] Have simple_cycpep_predict ignore linkers when doing RMSD calculation (addresses issue #1879). - [x] Add option to simple_cycpep_predict to connect ALL cysteines with TBMB (addresses issue #1879). - [x] Document this. - [x] Fix issue with output structure numbering in simple_cycpep_predict, so that every output structure in MPI mode has a unique name and number. - [x] Beauty. - [x] Documentation. Put off to a future pull request: - Add support for multiple natives to simple_cycpep_predict. commit f08e0f99bf0627bba9dd5e893b96908d61a3ae96 Merge: 09b5d56 1e6aa34 Date: Tue Dec 20 23:28:02 2016 -0600 Merge pull request #1904 from RosettaCommons/revert-1903-revert-1645-darwinyfu/RosettaLigandEnsemble Merging ligand ensemble docking code into master. Integration test changes in ligand docking tests using Transform expected. commit 09b5d56b44d6c5d90ce3724857673b2dbf163ab8 Date: Tue Dec 20 18:48:50 2016 -0800 Beautifying Rosetta. It hasn't been beautified in a while. commit 74bbf61765582e1450d8d31397ecebd12156c4a3 Merge: 01b57c9 f037d0d Date: Tue Dec 20 16:59:33 2016 -0800 Merge pull request #1909 from RosettaCommons/rhiju/rename_uucg_hack1 rename uucg_hack1 to 1z_6n_2[_bonus all tests look OK except rna_puzzle5_P15P3P8_noP4P6_4RB_G208phosphate_ligation in linux (was broken before -- will fix in separate PR) commit 01b57c9244eedf5187da472879d1da3a769f0200 Merge: 94d24f2 f150e49 Date: Tue Dec 20 18:36:29 2016 -0500 Fixing PyRosetta GCC build commit 94d24f23750826da9c6e7b31baeb1c1f4c0cb82f Merge: 7c3aa2c f201f6d Date: Tue Dec 20 12:34:40 2016 -0800 Merge pull request #1906 from RosettaCommons/rhiju/generalize_gaussian_chain_func generalize GaussianChainFunc commit 7c3aa2c530bb23a3499f10fd7de4aec19f8f392d Merge: ec5ab0d ffe1305 Date: Tue Dec 20 10:09:47 2016 -0800 Merge pull request #1894 from RosettaCommons/everyday847/farfar_syn_chi_res Implement the specification of particular residues with a syn chi in FARFAR commit ec5ab0dabe11df5d08fc01421160b4cc3958ef00 Merge: b8efd7f 59838c1 Date: Mon Dec 19 22:08:31 2016 -0800 Merge pull request #1908 from RosettaCommons/vmullig/support_nmethyl_merge5 Incremental merge #5 for supporting N-methylation This brings several more changes into master for supporting N-methylation. This will not be the final merge; there's still a lot of testing and bug-fixing to do. In this merge: - Added some patch exclusions. - Added a couple of residue types needed to model cyclosporin A. - Added custom rotamer libraries for N-methylated amino acids. - Added unit tests for N-methylation and cyclic geometry (currently disabled -- mirror-imaging scoring is not yet fixed). - Adding rama_prepro tables for N-methylated amino acids before prolines, sarcosine, and sarcosine before prolines. - Adding tests for beta_nov16 scoring with cyclic geometry. - Fixing beta_nov16 scoring to support D-amino acids. (*Note: there are more tests to be done. We cannot yet assume that beta_nov16 is ready for peptide design or structure prediction.*) Integration tests change because a couple of residue types were added. commit b8efd7f8fc411b4b1f90e2c6333d23a8676fe661 Merge: 9ef541e 38670ee Date: Mon Dec 19 19:20:07 2016 -0800 Merge pull request #1889 from RosettaCommons/rhiju/stepwise_paper Rhiju/stepwise paper only significant integration test change is for run with DMS input ( "rna_chem_map" ) -- but checked that previous run had an incorrectly set up full_model_info and was scoring DMS potential at wrong residues. commit 9ef541e4a04731b2134a8839c11056569c23f16f Merge: bdfdd4a 1f5982b Date: Mon Dec 19 10:36:38 2016 -0600 Merge pull request #1890 from RosettaCommons/roccomoretti/benchmark_doc_gen Add benchmark test for autogenerating documentation items. This adds a benchmark framework "test" maintenance.documentation which will automatically update the XSD documentation fragments, as well as the full option list. commit bdfdd4a3add49a1469a5cce63981eff51a91950a Merge: c5fe29f a293506 Date: Mon Dec 19 09:22:46 2016 -0600 Merge pull request #1875 from RosettaCommons/roccomoretti/pose_rts Enable Storing of ResidueTypes in the Pose One of the slightly evil things we've been doing is allowing the global ResidueTypeSets to be modified at runtime - that is, you could add/delete ResidueTypes into the main RTSs themselves. This is slightly evil as we start to work with thread-safety and serializing poses to send them to other computers. Not only could you have issues where you delete a RT that another thread is relying on, if you've added a RT to the global RTS, the remote computer which you're sending the pose to may or may not have that RT ... oops. To solve this, I've made the global RTSs non-writable, except for initialization, and then put in a facility to attache RTSs to the Pose (or rather the Conformation). To enable this, there's been slight-but-substantial changes required in the RT/RTS/ChemicalManager interface. Instead of identifying RTSs by name ("fa_standard"/"centroid"), the preferred method is now by a TypeSetMode enum from core/chemical/ChemicalManager.fwd.hh. Also, because the Pose (Conformation) can have a ResidueTypeSet which is different from the global RTS, the preferred method of accessing an RTS is by using the new Pose::residue_type_set_from_pose() or Conformation::residue_type_set_from_conf() methods. These will give you the specialized RTS for the pose, or if it's not been specialized, will fall back to the global RTS of the appropriate mode. -- You can either use these with no arguments, in which case it will do the equivalent of looking at is_fullatom()/is_centroid(), or you can explicitly specify the TypeSetMode you're interested in. To enable this, ResidueTypeSet has been made a virtual base class, with two derived sub-classes: GlobalResidueTypeSet and PoseResidueTypeSet. GlobalResidueTypeSet is the effectively the same RTS we're familiar with, just with all the methods which allow modification made private/protected. Once a GlobalResidueTypeSet has been initialized from the database, it's fixed. (Well, except for the whole lazy loading thing.) PoseResidueTypeSet is the modifiable RTS which is stored in the Pose/Conformation. It's set up to be a layer on top of another RTS. That is, a PoseRTS will have its own RTs/patches which it will add "on top of" the underlying RTS. So if you have a full atom PoseRTS, you should typically have full access to the full atom GlobalRTS through it, without having to do any additional code. The difference between the two should be irrelevant, unless you're actually attempting to modify a PoseResidueTypeSet - the major accessors should return a (base class) ResidueTypeSetCOP, and all the relevant methods should be accessible from the base class interface. In fact, Pose::residue_type_set_from_pose() will return a pointer to either a PoseRTS or a GlobalRTS, depending on if the Pose has a custom RTS or not. The one difference which may trip you up is that the ResidueTypeSet interface no longer has a name() method, as it's meaningless for PoseRTSs. Instead of "name" you should be working with "mode" (TypeSetMode) instead. (There's utility functions in ChemicalManager.hh for converting them to strings, including being able to directly feed them to stream output.) To keep pose copies relatively fast, the PoseResiueTypeSet function with copy-on-write semantics. That is, to add a RT to the PoseRTS, you get a copy of the PoseRTS from the Conformation::modifiable_residue_type_set_for_conf() method, make your modifications, and then use the Conformation::reset_residue_type_set_for_conf() method to reset the version in the Conformation. This means that multiple Conformations can share the same PoseRTS. Furthermore, multiple RTSs can share the same RTs. As such, ResidueTypes (and by extension Residues) no longer have a back-pointer to the ResidueTypeSet they come from. Instead, there's a ResidueType::mode() method which returns the TypeSetMode for the RT. As such, you now need to re-write things such that you go through the Pose/Conformation to get the corresponding RTS. (This is a good thing, by the way, as if you're changing ResidueTypes, you want to give the Pose the opportunity to invoke its customizations, instead of going back directly to the GlobalRTS.) Other minor changes worth mentioning * AtomTypeSets now have TypeSetMode values, too * There's read_topology_file() versions which grab the relevant typesets from a ResidueTypeSet. * "custom" residue types in the RTS interface have been renamed to "unpatchable", to better reflect their role. Additionally, I've switched a bunch of RT loading from the "unpatchable" to base, to permit more wide-spread patching. * As RTSs are in the pose now, many more things in the core/chemical/ directory have serialization methods added. Side benefit is that it's now much easier to serialize ResidueTypeCOPs, data structures of ResidueTypeCOPs and type set COPs: you should be able to do it directly, and have things just work out. * The awful mess of RTS loading in ChemicalManger.cc has been moved and reorganized to GlobalResidueTypeSet.cc Things I haven't done with this pull request * Making the GlobalResidueTypeSet thread-safe. This should be easier, as we can now know it's only the lazy-loading code which will be touched in conventional usage. * Exhaustively tested the serialization ability of the PoseResidueTypeSet - there may be some edge cases where bugs still exist. caveat programmor * The D/L handling is still rather GlobalRTS specific, so mirror image handling might not work quite right with residues stored in the Pose. @vmullig I'll let you rethink this if you want to. * SQL database interaction isn't necessarily great. If anyone uses it, let me know if there's something that should work better. * Reading/writing of the in-pose ResidueTypes. Right now, if you output a PDB or a silent file which uses a non-global ResidueType, that ResidueType isn't output - it just disappears. At some point storage of custom ResidueTypes in PDBs/Silent files probably should be added. commit c5fe29fdf47b3a371155de01abb8c9df92a2c27e Merge: f85345f f8e8686 Date: Mon Dec 19 09:17:48 2016 -0600 Merge pull request #1907 from RosettaCommons/roccomoretti/cc_include_test Add an integration test for checking if anyone has accidentally added cc files instead of header files. Test will be a magenta "script failure" if any are detected, as well as having a diff indicating what/where the offending inclusions are. commit f85345f64ffa07c1b3b731e88b63353ecc5c6b96 Merge: c08d993 3e6c134 Date: Sat Dec 17 16:11:44 2016 -0700 Merge pull request #1905 from RosettaCommons/sergey/binder PyRosetta update. PyRosetta. Adding support for data/member-function visibility change in inherited classes by ‘using’ directives. Updating Pybind11 version to latest upstream commit c08d993e70f914d9a91c4beb1c1602eb7ae2f482 Merge: 257d006 3200471 Date: Sat Dec 17 10:37:11 2016 -0800 Merge pull request #1902 from RosettaCommons/kkappel1/RNP_low-res Low resolution RNA/protein modeling in farfar commit 257d006f490cd89c32aeef88ff95591bafed62cd Merge: 9ea8e5e 1e9ea15 Date: Fri Dec 16 10:46:31 2016 -0600 Merge pull request #1896 from RosettaCommons/jadolfbr/virt_to_fa Implement machinery and Movers for Real To Virtual conversion and vice versa Description ======== This PR adds functions and movers for converting ANY residue from Real to Virtual and vice versa. Much of this work was initially done and tested by @raemisch New movers in simple_moves: - ConvertRealToVirtualMover - ConvertVirtualToRealMover Other ==== It also adds a ReturnResidueSubsetSelector which simply returns a set subset. This helps to decrease complexity of the code-level selector interface so that we can accept a subset or selector without needing to have both functions (set_selector, set_subset) and variables (subset_, selector_) implemented (as gets annoying quickly). Also this reorganizes the rosetta_script util files completely to make it easier to find functions for XSD schema parsing. Testing ===== Add Unit test and Integration test for functionality and RS interface. commit 9ea8e5e15e7c35838a32b8089ca8351ff540888c Merge: 5a196ec c0fd38b Date: Fri Dec 16 10:52:45 2016 -0500 Merge pull request #1899 from RosettaCommons/dougrenfrew/fix_mrl This PR should fix a bug in the MakeRotLib protocol that caused the omega and epsilon torsion to not minimize correctly in alpha-/beta-peptides, and caused peptoids to minimize the wrong dihedrals. commit 5a196ece8db57f5596ea00ea93f432a5ebd75c26 Merge: 827f90d 7005743 Date: Fri Dec 16 06:56:48 2016 -0800 Merge pull request #1901 from RosettaCommons/everyday847/fix_torsional_potential_issue Torsional potential was treating nonnatural D-RNA bases incorrectly commit 827f90dc5e23994ee2f500172fa7c154ff9b19ef Merge: d75fe08 1203389 Date: Fri Dec 16 08:54:56 2016 -0600 Merge pull request #1903 from RosettaCommons/revert-1645-darwinyfu/RosettaLigandEnsemble Revert "Darwinyfu/rosetta ligand ensemble" commit d75fe08ecab2ea6598fd348d764237691e5e37fb Merge: 88b24a8 80c05c8 Date: Thu Dec 15 16:33:58 2016 -0800 Merge pull request #1897 from RosettaCommons/everyday847/fix_uninitialized_variable Initialized variable in AddMover (added for pH simulation) by default… commit 88b24a8d4923fc7e9e3ef4ef7bd6052be5215510 Merge: f51d218 85671b8 Date: Thu Dec 15 16:03:10 2016 -0800 Merge pull request #1900 from RosettaCommons/everyday847/bromo_u_nomenclature Fixing one nucleic acid's nomenclature commit f51d218bcb8e751dba6ceadc97368c2c81d3d3dc Date: Thu Dec 15 13:53:19 2016 -0800 Updatign the Xcode project generation files to be python 3 compatible commit 93e988dc80a0bff838a3279e968206d8a5322a2f Date: Thu Dec 15 13:52:16 2016 -0800 Adding an rrange() function to PyRosetta that returns an iterator from 1 to n inclusive commit 8bf6765e8ed89cc63c692c10756f305e91677a3d Merge: bc9eb10 c7b6486 Date: Thu Dec 15 15:46:42 2016 -0600 Merge pull request #1645 from RosettaCommons/darwinyfu/RosettaLigandEnsemble Darwinyfu/rosetta ligand ensemble commit bc9eb10cd4bc742b9313509a79ff855caae016e4 Merge: 203fa21 7414cb2 Date: Thu Dec 15 10:59:23 2016 -0800 Merge pull request #1898 from RosettaCommons/everyday847/fix_noncanonical_farfar Fix FARFAR with noncanonical nucleotides using na_analogue() commit 203fa210aa88969e9caf7f51564ae5d532d14497 Merge: fff0f31 ed74209 Date: Thu Dec 15 09:16:57 2016 -0800 Merge pull request #1895 from RosettaCommons/everyday847/stepwise_checkpointing Checkpointing for long stepwise runs commit fff0f31d35859bf593fb616df05f9fcdf1abe018 Merge: cd25d48 aa1db37 Date: Wed Dec 14 22:29:22 2016 -0800 Merge pull request #1892 from RosettaCommons/everyday847/block_stack_farfar Implement block_stack in farfar commit cd25d48f4f2cd673da4bfe8441af35244ee03582 Merge: 7862c3a 196039b Date: Wed Dec 14 15:36:48 2016 -0500 Merge pull request #1888 from RosettaCommons/Cyrus/mergetarget From Steven Lewis: Cyrus PR: HELIX and SHEET records in PDBs Many moons ago, @yfsong wrote a code snippet in Cyrus's application to print HELIX and SHEET records in PDB files. It depended on the late, much-abused FileData, so I found myself needing to convert it to StructFileRep. I decided to go ahead and just rewrite all the code into core, into the SFR machinery, instead of handling it unshareably at app level. You get: - with PDB output, you can print PDB-formatted HELIX and SHEET records, using the flag -out:file:output_secondary_structure - SFR contains HELIXInformation and SHEETInformation structs to track the data - integration test (trivially) - unit test on both the SFR internals and the string output, checking formatting (note this is bundled as one unit test, because I do not understand the existing structure of the unit tests in this area of Rosetta) You do not get: - Rosetta is not reading the records IN, just printing them - I'm pretty sure having the PDB writer run DSSP breaks some encapsulation rules: the system only works if your code fills the Pose secstruct string somehow (such as DSSPMover) - TURNs are not recorded, because TURN does not mean loop, and our DSSP does not distinguish beyond H/E/L, so the data are not there to interpret - SHEET records are actually quite complex because sheets are multiple-element. This code just outputs each single strand as a one-membered sheet, which is sufficient to get viewers like PyMOL and PV displaying secondary structure correctly. - StructFileRepOptions has an unimplemented provide_XML_schema...I left it that way for now This will be of interest to @aleaverfay because it's his job to approve and recreate cyrus PRs, and @JWLabonte and @jadolfbr and other chemXRW attendees as it is the SFR I am extending. commit 7862c3a14bb5e8d6b2a4c3e0a497795bc06e9e4b Merge: 9ecab61 8fae65f Date: Tue Dec 13 14:39:52 2016 -0500 Fixing PyRosetta documentation build errors commit 9ecab6132d6e6d2c75ad9c2d7c1c165bcbfe5525 Merge: b1373c5 8add5d6 Date: Mon Dec 12 22:14:05 2016 -0700 Merge pull request #1886 from RosettaCommons/sergey/f Fixing cppcheck test issues commit b1373c5c0c8642cc327f4b650c3f1eb049d00953 Merge: 3c6c1cc 1b426b8 Date: Mon Dec 12 17:04:04 2016 -0600 Merge pull request #1855 from RosettaCommons/jadolfbr/random_start This changes the default of Glycan Relax to randomly sample on each dihedral of each glycan in order to start with a random conformation of the glycans (including any AA-glycan linkage torsions which are technically part of the glycan). This has been shown to improve model diversity and enrich for low-energy models. -Removes the sugar_bb_start option, which is not really used, sans for the initial testing. -Adds a 'refine' option, which turns the starting sampling off and keeps the starting conformation of the glycans passed in. We can then use this option down the line to further 'refinement-specific' code. commit 3c6c1cc5214b2007d589ce0e8b47009377b033a6 Merge: 9e42fd3 9e0bee8 Date: Mon Dec 12 11:06:54 2016 -0700 Merge pull request #1883 from RosettaCommons/sergey/binder PyRosetta, adding GCC support. commit 9e42fd3b8616a77b9d3d48c7db79d326f14a4af7 Merge: 5d04257 c297d2c Date: Mon Dec 12 13:02:56 2016 -0500 Merge pull request #1856 from RosettaCommons/aleaverfay/close_contact_selector New neighborhood selector using atom-pair distances My other residue selector, the NeighborhoodResidueSelector, uses the same logic that the packer uses to decide neighbor relationships. Namely: under any rotamer assignment for two residues, would they interact? It does this by considering each residue as a sphere centered at the neighbor atom (e.g. cbeta), and then asking are the spheres get within the interaction cutoff. Modeling residues as spheres, however, is not always what you want. This new neighborhood selector, the "CloseContactResidueSelector" identifies residues that have atoms within a certain distance cutoff -- that is, it's using the current atomic coordinates to make the neighborhood decision, instead of "any possible rotamer assignment," which often includes residues that couldn't realistically move into contact distance because there are other residues in the way. commit 5d042578f8bd2eb1476af7d6522a5cd3578d18b6 Merge: 247ae07 90ed6cd Date: Sun Dec 11 14:58:12 2016 -0800 Merge pull request #1882 from RosettaCommons/rhiju/farna_cleanup Rhiju/farna cleanup + integration test changes are just due to removal of NWC output by default for stepwise. + integration.mpi was broken by previous commit into master, http://benchmark.graylab.jhu.edu/test/230501. commit 247ae07e05eb0f8b76532b2230dbd3d523042659 Merge: cfe4999 0ce65d5 Date: Sat Dec 10 23:40:37 2016 -0800 Merge pull request #1868 from RosettaCommons/vmullig/xsd_info Add an "info" option to rosetta_scripts I often find, when I'm working in RosettaScripts, that I can't remember the details of the syntax of particular movers, filters, task operations, or residue selectors. Is it "filename" or "file_name" in ReadResfile? Do filters typically have a "cutoff" or a "threshold" option? This typically means that I either have to search the web documentation, or I have to find the right .cc file in the codebase and read the parse_my_tag() function. If I'm on a train or a plane, the former is often not an option, which only leaves the latter -- and that's an awfully slow way to check user input syntax. Wouldn't it be nice if Rosetta had in-app help? Well, thanks to the hard work of the XSD XRW team, it pretty much does -- all it needs is an interface. So this pull request adds the "-parser:info" (or just "-info") option to RosettaScripts. If you provide the option with the name of a mover, filter, task operation, or residue selector (e.g. `./bin/rosetta_scripts.default.linuxiccrelease -info FastDesign`) you can get a list of all of the XML-accessible options for that mover/filter/task operation/residue selector, with a description of each. (The app will print out help information and exit _in lieu_ of running a script with this option.) This is not meant to be a substitute for the web documentation, of course; unlike the documentation, this is only useful if you already know what Rosetta component you need, and just want details of syntax. But it should be a time-saver for those in that boat. Tasks: - [x] Add the "-parser:info" option. - [x] Support for movers. - [x] Support for filters. - [x] Support for task operations. - [x] Support for residue selectors. - [x] Make the output a bit more human-readable. - [x] Documentation. - [x] Beauty. - [x] Integration test. commit cfe4999d38b9638fdf1e2a77371ce1cf8e0b3444 Merge: 6a96d33 8832492 Date: Sat Dec 10 23:26:55 2016 -0800 Merge pull request #1881 from RosettaCommons/everyday847/analogue_na Integration test changes are exclusively from uncommenting the inosine RT we've had for a while but inexplicably had kept commented out. commit 6a96d334338820549f6abeaa5221eb328b116d3f Merge: 19df553 e421c66 Date: Fri Dec 9 14:06:06 2016 -0600 Merge pull request #1874 from RosettaCommons/roccomoretti/HighResDocker_resfile_fix Fix bug with XML resfiles in HighResDocker Setting a resfile in the XML for ligand docking hasn't worked properly in the past ~5 years, due to a bug. Thanks to Brian Kuhlman for pointing it out. commit 19df5534f4a1e2a101add419bc598c5f056520d2 Merge: f3c33ac e2af570 Date: Fri Dec 9 09:36:55 2016 -0500 Merge pull request #1873 from RosettaCommons/aleaverfay/fix_abscript_xsd Ok, AbscriptMover looks like it ought to be able to read multiple "Fragments" subtags, and not just a single one, and that "Stage" and "Fragments" subtags can be interleaved. This PR updates the XSD to reflect that. commit f3c33ac73668e03f76134b7cfdb16d39216298e2 Merge: 79465c3 9338bb8 Date: Thu Dec 8 18:11:47 2016 -0700 Merge pull request #1871 from RosettaCommons/sergey/f removing deprecated files commit 79465c30147c9c82133981175c9eefae20b0928a Merge: 63814ce 9ba71f7 Date: Thu Dec 8 11:57:48 2016 -0800 Merge pull request #1870 from RosettaCommons/everyday847/misc_bugfixes Fix Ryan's bug commit 63814ce63b60fd3c725d4cf4f947eb35dfc8b9b9 Merge: 57339a4 5f62542 Date: Thu Dec 8 11:44:00 2016 -0500 Merge pull request #1869 from RosettaCommons/revert-1863-dougrenfrew/remove_mrlv1 Revert "Removing MakeRotLib version 1 files" commit 57339a4ecdb4db95f8f471940d26511ecaca19f4 Merge: 83a2ba1 2f49437 Date: Thu Dec 8 11:19:08 2016 -0500 Merge pull request #1863 from RosettaCommons/dougrenfrew/remove_mrlv1 Removing MakeRotLib version 1 files commit 83a2ba11645947bc6ae9ab5fabb62b1f1db6d4c8 Merge: e459c52 2d0583e Date: Wed Dec 7 23:39:59 2016 -0800 Merge pull request #1865 from RosettaCommons/vmullig/fix_beta_disulfidize_test Fixing disulfidize_beta_cys integration test. Adding one rotamer library (B3C) needed by integration test. All other noncanonical rotamer libraries remain in the git LFS repository. (That one is still there, too; it's just also in the rotamer libraries directory). commit e459c5251c69a54603143858726b763fe0617170 Merge: 1c3c394 58ca581 Date: Wed Dec 7 20:50:18 2016 -0800 Merge pull request #1858 from RosettaCommons/everyday847/farfar_metrics There may be a curious issue with the way division is working with the fractional scores -- but we'll only know for sure after we use it a lot, and we won't be able to until we've got these features to play with. So, merging for now! commit 1c3c394e3a5d5768c08d6110cb290cbc302fd36c Merge: 6577c59 1b396eb Date: Wed Dec 7 12:19:20 2016 -0800 Merge pull request #1862 from RosettaCommons/everyday847/windows_punctuation_constraints File renaming to permit Windows builds commit 6577c59275772d0aa5af09fec5f88cd15f73ba4e Merge: b8f0e55 a155d26 Date: Wed Dec 7 12:10:02 2016 -0800 Merge pull request #1861 from RosettaCommons/everyday847/sample_protonation_in_stepwise Sample protonation in stepwise commit b8f0e557be8f5402cf34222795bdee0bd89bf98e Merge: bca55b3 8e81b06 Date: Wed Dec 7 13:58:12 2016 -0600 Merge pull request #1864 from RosettaCommons/jadolfbr/calibur calibur integration test fix commit bca55b3baf9fa88edd02abdd6987b5cb73387740 Merge: e4f4ef5 0033a97 Date: Wed Dec 7 14:12:27 2016 -0500 Merge pull request #1857 from RosettaCommons/rfalford12/update-marcc-build-settings Updating marcc build settings filte commit e4f4ef5ddd4ec4d4f6e540ffa07b57cea31530d9 Merge: 3baa4de 1eeb41e Date: Wed Dec 7 09:54:01 2016 -0800 Merge pull request #1859 from RosettaCommons/dimaio/faster_partial_thread Rewrite PartialThreadMover so it is faster. commit 3baa4deb9392f92231f3a8ba42f74c6dfbc8d453 Merge: 3a655c3 672ebbd Date: Tue Dec 6 01:33:54 2016 -0800 Merge pull request #1817 from RosettaCommons/vmullig/expand_disulfidize Expand functionality of disulfidize for NCAAs Tasks: - [x] In Disulfidize: - [x] Add options for placing: - [x] beta-3-cysteine. - [x] Track down bug in creating beta-3-cysteine disulfides. - [x] Make dslf_fa13 score beta-cysteine disulfides. - [x] Unit test for hetero-disulfide bond (alpha-beta). - [x] Integration test for Disulfidize with beta-3-cysteine. - [x] Beauty. - [x] XML schema. - [x] Fix unit test failures. - [x] Fix integration test failures. - [x] Documentation. Also: - [x] Tweak params files for cyclic beta-amino acids. commit 3a655c3c4719e5e081c03ba8128eeeb112d2e94f Merge: c268b40 9e025ad Date: Mon Dec 5 23:05:08 2016 -0500 Merge pull request #1854 from RosettaCommons/aleaverfay/fix_overfrequent_validation Aleaverfay/fix overfrequent validation This PR seeks the same goal as PR #1845 (which I inadvertently corrupted): spend less time validating XML files. The way it achieves it is by generating the text contents of the schema only once (which previously took ~half the time) and generating the data structure that can validate an XML file from this schema so that it can be reused (which took ~half the time). The time spent actually validating the XML file once those two steps completed was miniscule. It still includes Vikram's code for validating a single script only a single time by keeping track of which scripts it has encountered in the past by file name. (This will need to be changed for the JD3 version of RosettaScripts, when it comes eventually comes online, where different jobs may use different script variables (script vars) for the same input XML file.) This produces expected cosmetic integration test changes in all of the integration tests that rely on rosetta_scripts. commit c268b406525a2410095b230204c21c90f28f990a Merge: a382dfe bcb999c Date: Mon Dec 5 15:46:13 2016 -0800 Merge pull request #1851 from RosettaCommons/vmullig/fix_TBMB_error Fixes a small error in the ThreefoldLinkerMover. The chirality of linker cysteines was being inverted. ThreefoldLinkerMover and simple_cycpep_predict integration test changes expected. commit a382dfefd034ccf1389ea7fe4890f9fc4b75bbef Merge: dc0863f d5302c8 Date: Mon Dec 5 17:11:36 2016 -0600 Merge pull request #1848 from RosettaCommons/jadolfbr/calibur Jadolfbr/calibur This PR finally makes calibur clustering a tested, documented, public application - Clean up output to allow easy recognition of output cluster info and easy parsing/pymol loading - Add integration test for each way to use calibur. Test it all! Woot! - Write documentation (https://www.rosettacommons.org/docs/wiki/application_documentation/analysis/calibur-clustering) This just finishes things up. Thanks @kalngyk for doing all the work porting calibur into Rosetta and @everyday847 for getting the main PR merged in, I believe using the external upgrades the @roccomoretti put into place. Cheers! commit dc0863fb7c1b2c9a3964fd1179772db94efc5dd6 Merge: 0b6ea63 5144832 Date: Mon Dec 5 16:40:59 2016 -0500 Disabling release as-git-repository for PyRosetta debug builds commit 0b6ea637dd7cc0b1e83c0adae40651c1e477ed74 Merge: 710365c cfd5848 Date: Mon Dec 5 09:07:25 2016 -0800 Merge pull request #1853 from RosettaCommons/everyday847/l_nas L-RNA implementation commit 710365c91ca01599b1fb60626e115643f200874a Merge: 0c4518a 45a0620 Date: Mon Dec 5 10:55:24 2016 -0500 Merge pull request #1852 from RosettaCommons/aleaverfay/undo_schema_short_circuit Reverting 72915a0 commit 0c4518a469b3e5b764e3957f949f9a63f12b0401 Merge: 4733165 b791f23 Date: Sun Dec 4 17:47:01 2016 -0800 Merge pull request #1847 from RosettaCommons/hahnbeom/hxl_tors_fix fixing multiple db load issue with hxl_tors (part of beta-nov16) commit 473316520078212514fdce2a0195ab93330ecd6d Merge: fb3af05 178b053 Date: Sat Dec 3 16:26:47 2016 -0800 Merge pull request #1833 from RosettaCommons/hssnzdh2/UnsatSelector UnsatSelector commit fb3af052554cded721071eceee4a845f3a152c59 Merge: 1d3a845 b7c2320 Date: Sat Dec 3 12:11:35 2016 -0700 Merge pull request #1849 from RosettaCommons/sergey/binder Adding test/test-release support for Mac Python-3 platform for PyRosetta-4 commit 1d3a84566eb07e744eea423259d8614d405d7284 Merge: 5b6a0fb 48e5803 Date: Fri Dec 2 17:23:48 2016 -0500 Merge pull request #1834 from RosettaCommons/JWLabonte/sugars/branching PDB Input: Making Rosetta a little bit less picky about LINK records This merge will fix a problem with loading `.pdb` files where `LINK` records are not sorted like any sensible human would sort them. In cases where such files include a `LINK` record from a branch point residue to a higher-numbered residue before a lower-numbered residue, Rosetta would crash, because one cannot build a branch before a main chain is complete. (This still does not fix cases where people list `LINK` records backwards or where they number residues in branches in non-nonsensical ways.) I also want to say that I fixed this using a lambda function, so yay, C++11. FYI: @jadolfbr, @raemisch @smlewis: Will you be able to run this branch with your XRW read-all-the-pdbs script? This should give us better numbers. All tests pass. commit 5b6a0fb595bceb5850e099cd7afdacf7f5e0a419 Merge: 3015d48 72915a0 Date: Fri Dec 2 13:42:07 2016 -0800 Merge pull request #1838 from RosettaCommons/vmullig/identify_cycpep_symm Add a filter for identifying cyclic peptides with internal symmetry The CycpepSymmetryFilter can pick out peptides with c2, c3, c4, etc. symmetry, or with c2/m, c4/m, c6/m, etc. symmetry. Should be useful for organometallic frameworks. @twcraven @hssnzdh2 @atom-moyer @gbhardwaj Tasks: - Implement the filter. - Unit test -- confirm that it correctly picks out a c2 peptide and a c2/m peptide from a group. - Integration test. - Beauty. - New flag to skip XML validation. (TEMPORARY -- will be removed once parse order is fixed.) - Documentation. commit 3015d4876d9c9bf158040ee646e171ddca52b822 Merge: 4c1828f 10c946d Date: Fri Dec 2 11:05:40 2016 -0600 Merge pull request #1784 from RosettaCommons/jadolfbr/sugars/omega_sugar_bb GlycanRelax upgrades This PR adds the following: - [x] Phi SugarBB sampling for exocyclic carbons in GlycanRelax using @JWLabonte 's Implementation of this in the sugar_bb energy term (from PR #1635) - [x] Enable Omega sampling from OmegaPreferencesFunction (from PR #1635) in a similar manner to what we are doing for the ChiEnergyFunction. Integrate this new sampling ability into GlycanRelax as another BB torsional selection of the BBDihedralSamplerMover. - [x] Enable CartMin in GlycanRelax. For both cmd-line and RS, the boolean option is _cartmin_ - [x] Integrate GlycanTree-based sampling for minimization and packing into GlycanRelax - Write _GlycanTreeMinMover_ and _RandomGlycanFoliageSelector_ - This is a subclass of the MinMover which uses the _RandomGlcyanFoliageSelector_ select a random residue from it, and then select the rest of the downstream branch (which is also ON in the movemap/task). Integrate this for Minimization and Packing. - This will make GlycanRelax speed increase linearly with the number of glycan residues instead of non-linearly as is the case now. - This will be an option that is on by default, as this enables more efficient sampling of large forests of glycans instead of wasting a great amount of time minimizing and packing ALL of the glycans as was the default. @JWLabonte @raemisch commit 4c1828f6e12c93898d7af92450d318381a204bef Merge: 0af469b 1930038 Date: Thu Dec 1 22:57:40 2016 -0700 Merge pull request #1831 from RosettaCommons/weitzner/pyrosetta_py3 Expanding the configurability of the PyRosetta build script commit 0af469bd0dc49f1b16277e0fa501ae69240ae57c Merge: e22220d 381425a Date: Thu Dec 1 19:18:04 2016 -0800 Merge pull request #1837 from RosettaCommons/dimaio/beta_fixes_1 A small bugfix to beta: intra_elec crashed when nblist_autoupdate is specified. Fixing this. commit e22220d71fa338e98668eb6753c01cd97f8e121f Date: Thu Dec 1 17:47:01 2016 -0800 Updating the beta_nov15_patch score test to reflect the new flag. commit 572f027322f33751de18ddc886fdb27e40406a23 Merge: fd9f009 25b8fb7 Date: Thu Dec 1 12:07:55 2016 -0800 Merge pull request #1830 from RosettaCommons/hssnzdh2/MutateResidue_Selector Add Selector Option to MutateResidue commit fd9f009bfbb949e229757f5e9e4e1d938ea897d2 Merge: 8979c6b e84edfd Date: Thu Dec 1 09:04:58 2016 -0800 Merge pull request #1832 from RosettaCommons/dimaio/cryst_refine_post_xrw_fixes Update XMLs and a few misc. bugfixes commit 8979c6b759b3fe509f102476c246e021a334a1e8 Merge: 2e7c0c4 b2a4883 Date: Wed Nov 30 14:55:09 2016 -0700 Merge pull request #1829 from RosettaCommons/sergey/f Fixing antibody grafting filtering code so it conformed to C++11 STL standard. commit 2e7c0c4200e7564c44db8e46fcac7c613adf3bd4 Merge: 5dfa57b ac97865 Date: Wed Nov 30 15:43:27 2016 -0500 Merge pull request #1828 from RosettaCommons/xlong2/new_pymol_luxury_methods Xlong2/new pymol luxury methods commit 5dfa57b58fc3416a821c273ccefb086787c43e61 Merge: 3cf93db eb2fad3 Date: Wed Nov 30 13:18:40 2016 -0700 Merge pull request #1804 from RosettaCommons/sergey/binder PyRosetta. Updating Binder. Fixing workshop-5 test in debug mode. Updating Binder self-tests. commit 3cf93db139d427306b0f68848cd4f06078849c28 Date: Wed Nov 30 08:33:06 2016 -0800 Making version.py compativle with python 3.x commit 3a8ef4dc60a59c63a5debf4e4a35afaa10bcb81c Merge: f7cc463 fc5b076 Date: Tue Nov 29 19:51:43 2016 -0800 Merge pull request #1826 from RosettaCommons/everyday847/cleanup_to_prepare_for_bp_efficiency Clean up some code in preparation for bp_efficiency merge commit f7cc463ee2677f21713dd0a9fb149626a0d01a6b Merge: 65cdb17 86ef119 Date: Tue Nov 29 17:39:25 2016 -0800 Merge pull request #1823 from RosettaCommons/everyday847/secstruct_string_todo Minor updates to internal representation of secondary structure commit 65cdb17097b6b1dd23f2e338f93982a5efc6cedc Date: Tue Nov 29 17:03:02 2016 -0800 Removing printf statements in PepetideCyclizeMover.cc. commit d196e56c75a4a10a43bb922f342568b966462570 Date: Tue Nov 29 15:46:14 2016 -0800 Fixing the numpy_utils for PyRosetta commit a026a5f35cf5eb16b837efda92f1d717ae960f98 Merge: 1f81fcd a062c0a Date: Tue Nov 29 14:07:28 2016 -0800 Merge pull request #1827 from RosettaCommons/everyday847/fix_RNA_Info_accesses Ensure that we only bind nonnull RNA_Info to a reference commit 1f81fcd2fbd05a97b9d8d08f2b6f914c7fae2991 Merge: 601cc44 b456710 Date: Tue Nov 29 10:01:02 2016 -0800 Merge pull request #1805 from RosettaCommons/dimaio/beta_nov16 This PR includes a number of updates necessary for the latest beta energy function, beta_nov16. The flag -beta now points to this variant. A full description of the changes is available on the wiki (https://www.rosettacommons.org/docs/wiki/Updates-beta-nov16). commit 601cc443b87a8e5eb4572a132ed473ee12672096 Merge: 2c4a041 74c3e46 Date: Tue Nov 29 08:08:24 2016 -0800 Merge pull request #1820 from RosettaCommons/rhiju/rna_cyclize Rhiju/rna cyclize commit 2c4a041304999bd60510df9e807e1b3143da5762 Merge: 3f624bf 4244968 Date: Tue Nov 29 09:48:29 2016 -0600 Merge pull request #1815 from RosettaCommons/roccomoretti/fix_integration_unicode Adjust how unicode encode/decode works on benchmark integration test. A previous fix got the order of encode/decode wrong. This commit changes how the benchmark server tests handle unicode. Specifically, I'm attempting to use the recommended decode/encode at input/output approach. That is, read in files in a Unicode (UTF-8) aware manner, deal with strings internally as Unicode, and then output in a Unicode (UTF-8) aware manner. This should fix the big failure of the integration.tutorials test that's currently happening on master. commit 3f624bf64fa2eae1d4d73d286e74ed6fe6b8ba66 Merge: b5d5ace fa1ead2 Date: Tue Nov 29 02:43:57 2016 -0500 Merge pull request #1537 from RosettaCommons/mlnance/add_omega_to_small_mover Carbohydrates: making SmallMover also move omega for sugars In addition, this merge fixes a major bug in how the BackboneMovers selected which mainchain torsions to move for sugars. Shear moves are only meaningful for a tiny subset of sugar cases currently. @mlnance and I will fix the ShearMover in a separate PR. All tests pass. commit b5d5acec0a6ccbf45deebd9747cb33f44c9f84a7 Merge: 74f3320 ada4b65 Date: Mon Nov 28 17:56:58 2016 -0800 Accidentally committed nonworking input file commit 74f332088d6137d55acf54458495ce06c7519fb7 Merge: 3160037 a53d68c Date: Mon Nov 28 17:35:53 2016 -0800 Merge pull request #1824 from RosettaCommons/everyday847/add_score_test Add score tests for RNA hi-res and lo-res scoring functions commit 31600371c3fb41c4dd1414d3467c0210a72ce6ba Date: Mon Nov 28 13:52:04 2016 -0800 Fixing ThreefoldLinkerMover integration tests. commit 4868c03492438e5d056a1a548dd00d46bd0de06e Merge: 23da635 b8bdce3 Date: Mon Nov 28 10:42:59 2016 -0800 Merge pull request #1818 from RosettaCommons/hahnbeom/cartesin_ddg moving apps/pilot/wendao/cartesian_ddg.cc -> apps/public/ddg/cartesia… commit 23da6359cabc1b0313d1765722cd98372b434e1e Merge: ab0e457 260399a Date: Mon Nov 28 09:52:11 2016 -0600 Merge pull request #1809 from RosettaCommons/roccomoretti/fill_missing_atoms_B Fill missing atoms updates/fixes #2 This is an extension of pull request #1789 That PR added functionality to Residue::fill_missing_atoms() to extend the cases in which it can build residues. This PR converts Conformation::fill_missing_atoms() to use Residue::fill_missing_atoms(). This should (hopefully) fix most/all of the "fill missing atoms" from the all-PDB read-in tests. Integration test changes expected, due to slight differences in coordinate building and trajectory changes. (Checked locally with debug-mode builds.) Tracer changes due to extra debugging lines. Also, fewer "missing atom" lines, as we no longer double-report. Non-trivial changes in AnchorFinder, PDB_diagnostic, antibody_numbering_converter and identify_cdr_clusters due to slight differences in how dangling connections are treated. Nucleic acid based integration tests also show non-trivial changes, but in what I think is a positive direction: missing phosphates are no longer built from ideal, but are build "backwards" from the rest of the residue. commit ab0e45792d06301668936250f072217fef9a6b84 Merge: a9cfb66 121b356 Date: Mon Nov 28 09:43:16 2016 -0600 Merge pull request #1814 from RosettaCommons/roccomoretti/interpolation_addsan_fix Fix an integration.addsan error by changing how InterpolatedPotential stores data. Basically, change a raw pointer to a C-style array into a vector0, to avoid new/delete mismatch issues. commit a9cfb668f77a13961684a0a222c6116705a2ccea Merge: 6447e49 c8652a7 Date: Mon Nov 28 09:41:51 2016 -0600 Merge pull request #1816 from RosettaCommons/roccomoretti/fix_xsd_profile Fix profile tests w/r/t XSD changes. The XMLs in the main/tests/profile/ test didn't get converted, leading to perma-failures of the rosie_ligand_dock and relax_native profile test. This commit updates the XMLs, so they should run. commit 6447e4948de1c07463e85568c2b06e5b72082582 Merge: f94a4e9 41ebd0b Date: Mon Nov 28 09:42:09 2016 +0100 Merge pull request #1819 from RosettaCommons/bazzoli/pwsho-nonprotein Added missing params file for pwSHO integration test. commit f94a4e9f3d54a05bf9446111e47f78a13df5b63a Merge: d745bee 23b16bb Date: Mon Nov 28 06:45:12 2016 +0100 Merge pull request #1800 from RosettaCommons/bazzoli/pwsho-nonprotein Adds pwSHO modeling of non-protein atom types commit d745bee4e2ef5c5aa13e18264201da83645dcd51 Merge: 4be0b7a 9d02b6b Date: Sun Nov 27 17:20:35 2016 -0800 Merge pull request #1801 from RosettaCommons/vmullig/tbmb_predict Add support for sampling threefold-symmetric crosslinkers during peptide structure prediction Tasks: - [x] Add a mover to place 1,3,5-tris(bromomethyl)benzene and other three-way crosslinkers. - [x] It should take a ResidueSelector to pick three residues. - [x] It should add and place the linker. - [x] It should set up constraints. - [x] Distance. - [x] Torsion. - [x] It should have an option to pack and minimize the linker and the side-chains to which it's connected. - [x] It should have an option to do a final relaxation of the structure. - [x] It needs a parse_my_tag(). - [x] It needs a way to set different crosslinkers. - [x] Optional distance filters. - [x] Optional filters for pre- and post-minimization energy. - [x] More controls for stringency of filters. - [x] Integration tests. - [x] Documentation. - [x] Add support for symmetry. - [x] Integration test. - [x] Documentation. - [x] Add options and code to call the above in simple_cycpep_predict. - [x] Debug RMSD steps. - [x] Debug de-permutation steps. - [x] More controls for stringency of filters. - [x] Integration test. - [x] Re-enable filters in integration test. - [x] Documentation. - [x] Aw, crap -- I'll need to write XML schema for the new mover. - [x] Beauty. Put off to a future pull request: - Add options to call the above in classic ab initio. - Add other threefold-symmetric crosslinkers (e.g. Kathy's case). - Maybe generalize this for Nfold-symmetric crosslinkers? commit 4be0b7a2056e7e0942b1e3e4939a5859954c858f Date: Sun Nov 27 01:55:04 2016 -0800 Beautifying Rosetta. commit 97840afc3fb2940e7074abef2055180ebed601be Merge: a5fb67b 6abb5df Date: Sun Nov 27 00:46:18 2016 -0800 Merge pull request #1794 from RosettaCommons/vmullig/iccfix2 Reverting reversion of icc merge to re-fix icc issues. commit a5fb67b068a7fcc870ec62145702713bb9e48cac Merge: 98ed36c 31286dd Date: Fri Nov 25 15:00:14 2016 -0500 Merge pull request #1786 from RosettaCommons/JWLabonte/sugars/database Carbohydrates: Improving handling of stereochemical nomenclature This merge will improve the input methods with sugars regarding default stereochemistries. For example, Glc will be assumed to be D-Glc and Fuc will be assumed to be L-Fuc. Also, sugars like Neu are always D; it's inherent to the name. The change involves expanding the nomenclature data in the database and corresponding code to remove hardcoding. This merge will also add the common bacterial sugar bacillosamine to the database. Several integration tests change because of an additional `ResidueType`. All other tests pass. commit 98ed36c23174cf1b3802e7e047b6b3656681bdeb Merge: 5b87fc2 be15aab Date: Fri Nov 25 11:41:42 2016 -0600 Merge pull request #1789 from RosettaCommons/roccomoretti/fill_missing_atoms_A Fill missing atoms updates/fixes Some code improvements to fill_missing_atoms to allow it to build atoms in situations where it normally wouldn't. Basically, add "fall back" logic such that we can build atoms by going up/across the ICOOR tree, not just down it. (This is code that originally comes from the drug design branch, but extended/improved as a result the ChemicalXRW.) This involved some changes/fixes in how inter-residue AtomICoor are handled. This touches widely used code, and a large number of integration test changes due to optimization-based trajectory changes are expected. The fact that these stem from insignificant numeric differences (or dangling inter-residue connections) was tracked/confirmed locally with debug-mode integration tests. Additionally, there's a fair amount of cosmetic changes in tracer output. This is the first part of a two-part pull request, which is being split in half to isolate integration test changes. Changes to Conformation::fill_missing_atoms() are forthcoming, after this one clears the test server. commit 5b87fc2adb3d2603ad33e458475e095723ddc1e4 Merge: 958fddd 8c4a78b Date: Fri Nov 25 11:32:21 2016 -0600 Merge pull request #1798 from RosettaCommons/roccomoretti/integration_test_count_fix Fix job accounting in integration.py. When skipping tests because of a missing command file (e.g. for MPI-only tests), mark the job as 'done' to get proper number-of-tests-running statistics. commit 958fddd76f8bcfb7247cb609f6058f3d3dc49399 Merge: 53f5472 e85d427 Date: Fri Nov 25 09:26:04 2016 -0800 Merge pull request #1791 from RosettaCommons/everyday847/rna_puzzle_18 Updates to some stepwise code needed for an RNA-Puzzle commit 53f5472af0a6c12a26bcebbc3cf1f2f4864006e0 Merge: 6d43786 82349d7 Date: Thu Nov 24 22:37:59 2016 -0500 Merge pull request #1813 from RosettaCommons/aleaverfay/xsd_xrw_merge_to_master This is the big XSD XRW merge. We have written complexTypes for all of the 800+ classes that are create-able through rosetta_scripts. These complexTypes, sewn together, form a schema describing valid input files for it. It serves two purposes. First, it ensures that your input scripts are on one level correct before any movers are created. Second, it provides a reminder to developers at the time that they add new code that they must document it, and enforces that reminder by preventing them from using their new code without doing so. From here forward, when you add new options to your movers/filters/task operations/residue-level task operations/res filters//residue selectors/scoring grids/feature reporters/constraint generators/RDF functions/ligand areas/movemap definers/etc., you will have to update the schema. A first-glance description of XML Schema, at least the way we use it, is that there are three things: there are elements (what we call tags), and there are complex types, which describe how the elements can be structured. Elements are described by complex types. Complex types can hold elements (i.e. sub-elements). The third thing: attributes (what we call options). When you say that "PackRotamers" can have an option named "taskoperations", the schema would say "the complex type 'mover_PackRotamers_type has an attribute 'taskoperations'" and elsewhere it would say "there is a subelement of the rosetta_scripts_MOVERS_type' that contains an element named 'PackRotamers', and its type is 'mover_PackRotamers_type.'" ``` ... other movers might go here ``` The above example is a little hand wavy, but is intended to illustrate the complexType<-->element inter-relationship. You're responsibility as Mover/Filter developers is to define the complexType for your Mover/Filter. Fortunately, you now have 800 examples to learn from. The code we developed here makes use of a set of classes in utility/tag/XMLSchemaGeneration.hh. These classes were designed to facilitate in-code creation of XML Schema. They are extensively documented. There is also the beginning of a wiki page describing XML Schema here. About the pull request itself: There are ~150 cosmetic and expected integration test changes. The only unexpected change is from the OrbitalsFeaturesReporter in the features integration test, which smells like an inlining difference (Some angles and distances that it measures and reports change ~10 digits past the decimal. None of the other features reporters show integration test changes; this is one of the few that involves a lot of code within the features reporter itself as opposed to it calling functions housed in other compilation units.) Unit tests pass. The 727 XML tests that were culled from the demos, integration tests, and the community at large all validate, after we went and threw out dozens of them that we could tell would not have worked in the current version of Rosetta, and after we commented out all but one of the LayerDesign operations, whose format is changing. There is a really cool, really malleable python script that lives in the tools repository; it's in tools/xsd_xrw. It's named rewrite_rosetta_script.py. You give it your old XML with the --input flag and you give it the name of the file you want it to write to with the --output flag, and it turns your pre-XRW scripts into ones that should work post-XRW. You will definitely want to use this script. Rocco has already begun extracting documentation from the schema output by rosetta_scripts (with the --output_schema flag) which is super cool. This pull request also beautifies. If you hit a large number of merge conflicts, merge up until 76eb43e, carefully resolving any merge conflicts on the way, beautify your branch, and then merge the final commit of this PR (82349d7) with the assurance that your version should be taken at any point where you encounter a conflict. This is the same post-beautification merge process I outlined here but with different revisions. On this Thanksgiving, I have to say I am extremely grateful for the hard work and camaraderie of the XRW team. Thank you Una, Sharon, Sam, Andy, Steven, Melanie, and Sebastian. It was a great week and I appreciate your having volunteered your time and energy. commit 6d43786b5bf9572f7da090dff963244eb31ee1aa Merge: 617783d add9bd0 Date: Wed Nov 23 22:07:06 2016 -0500 Merge pull request #1811 from RosettaCommons/everyday847/devel_init_like_your_life_depended_on_it Use devel::init in apps If you're in an app, you want to call devel::init to go through the whole cascade of initializations. If you only call protocols::init or, don't even say it, core::init, weird stuff can happen, especially if you try to use any job distributor. We need to fix this issue before merging XRW stuff because it affects integration tests in a hardware-dependent manner. It's also the cause of some ubsan/addsan issues. resolves #1375 commit 617783de93429475aca7b9a8d1a2e2bb07222170 Merge: 7db9680 1d38d15 Date: Sat Nov 19 14:03:46 2016 -0700 Merge pull request #1808 from RosettaCommons/revert-1664-xlong2/PyMOL_mover_luxury_method Revert "Xlong2/py mol mover luxury method" commit 7db968089006b12fb83b72f0f863e7bd211bc1ae Merge: d4f490c 009d3e3 Date: Sat Nov 19 16:00:39 2016 -0500 Merge pull request #1664 from RosettaCommons/xlong2/PyMOL_mover_luxury_method Xlong2/py mol mover luxury method commit d4f490cc5c88856849c2d8e484e9f4b5ec10f112 Date: Thu Nov 17 15:39:34 2016 -0500 Reverting yet another mid-commit-freeze commit to master commit 1dafd4e339d57e5aadeec628d12a4307b335a21b Date: Wed Nov 16 21:37:09 2016 -0800 Update SingleFragmentMover.cc Adding option to the SingleFragmentMover to control the number of fragments to read in per position. No option defaults to default behavior of loading all fragments from the input fragment file. commit 019edfd3a378d320fd1cc2e59a4af0ff04ea4e39 Merge: c0cdb22 d9d246a Date: Wed Nov 16 15:51:17 2016 -0500 Merge pull request #1806 from RosettaCommons/revert-1764-hahnbeom/move_cartesian_ddg_to_public Revert "Moving Yuan and Phil's cartesian_ddg protocol from pilot/wendao/ to p…" commit c0cdb22e75bd2dbd9af532fd22cc14e41cb61453 Merge: c0119b0 e49d4d6 Date: Wed Nov 16 12:50:19 2016 -0800 Merge pull request #1764 from RosettaCommons/hahnbeom/move_cartesian_ddg_to_public Moving Yuan and Phil's cartesian_ddg protocol from pilot/wendao/ to p… commit c0119b06ba84bbcafae1e10c9f70522fca96970d Merge: 81bbfee 3289922 Date: Tue Nov 15 16:39:09 2016 -0800 Merge pull request #1803 from RosettaCommons/hahnbeom/lkball_fix fixing "cannot find water builder" issue with NCAAs commit 81bbfee9265126b633bb87051a5edf81c442a126 Merge: 47669d9 8028d1f Date: Sun Nov 13 19:05:12 2016 -0800 Merge pull request #1793 from RosettaCommons/revert-1621-vmullig/fix_icc16 Revert "Fix additional issues to allow compilation with icc 16.0.2". I forgot about the XRW commit freeze. Apologies.