commit 46f270eaa6df591e0db5e65cdd09b31ec37b7d41 Merge: cfb2bc9 10f4005 Date: Fri Mar 22 11:44:04 2019 -0500 Merge pull request #3870 from RosettaCommons/roccomoretti/silence_recon_mpi Fix recon_design_mpi. Add the appropriate flags such that it's no longer a permanent diff. commit cfb2bc97fd8fa64736db8d0c3c5c2f18a6f2c9a6 Merge: 9a53bc0 b27e3db Date: Fri Mar 22 01:00:29 2019 -0400 Merge pull request #3867 from RosettaCommons/vmullig/fix_motifgraftmover Fixing uninitialized variable error that's bothering gcc 8.2 The recent changes to the MotifGraftMover left gcc 8.2 complaining about an unintialized variable. Technically, the value would never be used uninitialized, but it would have been hard for the compiler to know that (and anyways, it was fragile -- a small change to the code would result in the variable being used uninitialized). This initializes the relevant variable. commit 9a53bc0398564f83cfc18289706363d18c0672af Merge: 7528716 82e4c30 Date: Thu Mar 21 16:13:23 2019 -0400 Merge pull request #3845 from RosettaCommons/BYachnin/mhc_epitope-map-predictor Added a "PreLoaded" MHCEpitopePredictor, analogous to "External" but held entirely in memory MHCEpitopeEnergy currently allows for two Predictor classes that are used to obtain epitope scores from peptides: Matrix, which uses the Propred matrices to score peptides, and External, which uses an external SQL database (located on disk) to score peptides. This database is generated by the user based on the epitope prediction method and design space to be explored in a particular protein. This PR provides functionality analogous to "External," but loads the database entirely into memory prior to scoring. In cases where the database is sufficiently small (i.e. will not use too much RAM), this will be faster than External, particularly in cases where multiple processes are accessing the same database file during packing. In addition, the ability to read "CSV" files for this purpose is enabled. We also have introduced the database "unseen handler" (i.e. how to deal with peptides that are not in the database) "ignore," which will score unknown peptides with "0." This is suited for a database containing the IEDB experimentally-validated list of epitopes, which should introduce penalties for recognized peptides and no penalty for other peptides. Integration test failure in mhc_epitope is from cosmetic changes to the tracer output. mhc_epitope_nmer_preload is a new integration test, and so it fails. recon_design_mpi is unstable in master, and continuous_sewing_hasher and discontinuous_sewing_hasher fail in master. commit 7528716ce4963da47d93972e1e63b0184c2e2847 Merge: dca9f7c 8c7a083 Date: Wed Mar 20 12:08:10 2019 -0700 Merge pull request #3762 from RosettaCommons/bcov/MotifGraftUpgrades Upgrades for MotifGraft commit dca9f7c22c03de87dde9f8fdd7b9e93f072f4b08 Merge: 6b99746 371f456 Date: Tue Mar 19 11:15:15 2019 -0700 Merge pull request #3835 from RosettaCommons/srgerb/poses_to_silent Adding Ability To Easily Output Poses As Silent Files To PyRosetta commit 6b9974678f62f8e1fdc60d4c5e6139617850a47f Merge: e74c048 1c60683 Date: Mon Mar 18 18:17:30 2019 -0500 Merge pull request #3863 from RosettaCommons/roccomoretti/hush_unit_tests Turn down noise in muted unit tests Some of the unit tests are printing too much info to stdout when muted (ideally should be none). Adjust the tests such that they don't print anything when muted. commit e74c0480108571b607653835f6171a342ec83f3c Merge: 88731ef 695d9e1 Date: Mon Mar 18 14:09:31 2019 -0400 Merge pull request #3741 from RosettaCommons/sevya/recon_mpi Refactored RECON multistate design for MPI commit 88731efafcf860520e48cd60a3174e145b05ff89 Merge: 3bf9c68 4ebb01a Date: Mon Mar 18 08:29:24 2019 -0400 Merge pull request #3849 from RosettaCommons/JackMaguire/UpdateOverrides Renaming shadowed variables. Part 1 of 3-ish PRs to allow Rosetta to compile with the -Wshadow flag. commit 3bf9c6827483a639d21cb113db0e9213634b14ee Merge: bc7c702 74c88dc Date: Sun Mar 17 00:12:04 2019 -0400 Merge pull request #3844 from RosettaCommons/JWLabonte/PDB_IO PDB IO: Smarter Title Section generation This merge will deal with two requests that I have received following PR #2468. - An option, `-write_pdb_title_section_records`, is provided, which may be set to false by those who wish to skip any title section at all in their `.pdb` files. - A framework is set up to have Rosetta write `REMARK 3` records instead of `REMARK 220` records, if the `Pose` contains crystal density. (This will not work fully until PR #3627 is merged.) It also corrects the output of parametric data, forcing it to use `REMARK 250` records for output. All integration test changes involve the change in Crick parameter output, as expected. All other tests pass that weren't already seriously broken. (Someone(s), please fix!) commit bc7c702d7bbbb0949f84b7bac4bca634d9006ce3 Merge: 685053c 3aa77cc Date: Sat Mar 16 15:45:44 2019 -0600 Merge pull request #3861 from RosettaCommons/benchmark fixing benchmark scripts, adding missing imports commit 685053c35ca0abfed04fb57c814704b14ea0f264 Merge: cd14738 371563f Date: Sat Mar 16 08:27:02 2019 -0400 Merge pull request #3854 from RosettaCommons/JackMaguire/UnorderedSets Sergey gave us advice at Winter RosettaCON to decrease the max_load_factor of our unordered_sets and unordered_maps from the default value of 1 to 0.7-ish to make lookups faster. We don't have many unordered containers in Rosetta but I found a handful that could benefit from this change. commit cd14738afdb9733e2ae8d47a21463471f1836959 Merge: 206e763 3d32f80 Date: Fri Mar 15 12:12:42 2019 -0600 Merge pull request #3786 from RosettaCommons/benchmark Adding support for PyRosetta Conda builds commit 206e7630135a49fb6d39d24e96547001211630ac Merge: c3a372e 72b3e85 Date: Fri Mar 15 09:08:48 2019 -0600 Merge pull request #3833 from RosettaCommons/sergey/binder PyRosetta update - [x] updating logic of `--external-link` option so it only allow linking to libraries compiled with PyRosetta build options, this should prevent `off-by-22` runtime error - [x] Updating teaching module imports. - [x] Updating Binder. commit c3a372e21bcf8f3747be16e10bef949843307fec Merge: 524b5cb 89376b6 Date: Fri Mar 15 01:14:03 2019 -0400 Merge pull request #3851 from RosettaCommons/yingyue0414-extraResidual Complete non-modified hexoaldopyranoses commit 524b5cb6d6fb8a264c02c30ba89f48351d9a111b Date: Thu Mar 14 18:57:38 2019 -0400 further increase unit test timeout for clean clones commit 8a72a744464b85a068b5c11b237b9b8261761c95 Merge: fdb3942 2f69a00 Date: Wed Mar 13 15:54:48 2019 -0400 Merge pull request #1802 from RosettaCommons/JWLabonte/sugars/glycomutagenesis Shotgun Glycomutagenesis This merge will introduce an application for shotgun glycomutagenesis, using the `GlycosyltransferaseMover`. It depends on PRs #1786 and #1537. The code is hacky, in my opinion, but that's why it's a pilot app, not a public app. I also need some of the underlying `EnzymeMover` code in master so I can complete and expand it for other PTMs for my student's research. This merge also fixes a bug in which `-no_pro_close_ring_closure` was turned on by default when `-include_sugars` was on. (I think we do want `-no_pro_close_ring_closure` on ultimately, but only once we ensure that the other ring close method is being used as well.) Because of the bug fix, all tests using the `-include_sugars` flag will have minor scoring differences. The unit test timeouts are a known major issue unrelated to this PR. commit fdb3942a80dd36157eaf3244e35233c2a6f09afe Merge: b825b2c 597fa93 Date: Wed Mar 13 10:59:27 2019 -0500 Merge pull request #3797 from RosettaCommons/jadolfbr/sm_in_pyrosetta This Address #3777 - getting SimpleMetrics to work seamlessly in PyRosetta This PR makes `pose.scores` work by accessing the `ScoreMap` 'class' directly instead of individual extra scores functions. Unit tests for this functionality are added to the PyRosetta unit testing framework, as well as additional tests for SimpleMetrics in C++ testing framework. The `ScoreMap` itself is now unit tested to work with SMs and an additional clear function has been added to the `SimpleMetricData` class. This PR also deprecates the old-style PyRosetta score file, which was ALWAYS bad and too different from C++ Rosetta scorefile output to be of much use in general protocols. If one tries to use the old-style format, we exit with a helpful message. commit b825b2cdc16e5422b16a817b84a2bc88b69e1dda Merge: eddfb23 0bab5a7 Date: Tue Mar 12 15:27:03 2019 -0400 Merge pull request #3848 from RosettaCommons/yingyue0414-patch-1 This merge corrects the beta-D-Altropyranose conformation in `source/test/core/chemical/carbohydrates/stereochem_test.key` and adds `to2-beta-D-Altp.params` to test the change. commit eddfb23c7906b60d182ebd9347f2542ba22f8386 Merge: 8832fec 33cc241 Date: Tue Mar 12 11:44:28 2019 -0400 Merge pull request #3825 from RosettaCommons/dougrenfrew/update-scons-local Dougrenfrew/update scons local commit 8832fec1a1cf8dd0fd7056c8971bfde620f21b42 Merge: ac47f32 5a5998d Date: Mon Mar 11 11:51:01 2019 -0600 Merge pull request #3846 from RosettaCommons/sergey/f Increasing default unit tests timeout if clean-clone detected commit ac47f324a4e2081ea40093d27efa4e283c7f1f4e Merge: 05443e5 5924e66 Date: Mon Mar 11 10:49:41 2019 -0500 Merge pull request #3836 from RosettaCommons/jadolfbr/fix_sm_filter This fixes the Sum option for the `SimpleMetricFilter` in parse_my_tag, which is used for `PerResidueMetrics`. It also adds output for action options to the doc XSD doc string in the `ResidueSummaryMetric`, which is a meta-metric that calculates different values for `PerResidueMetrics`. Thanks to @tjbrunette for identifying these issues! commit 05443e5aa37b2ce04b5d3dd15087e6ebe8cbc67b Merge: abe5cc5 3083604 Date: Sun Mar 10 10:28:17 2019 -0400 Merge pull request #3843 from RosettaCommons/JackMaguire/MCHBNetProfileTest Adding a profile test for Monte Carlo HBNet. Thanks for the review, @lyskov ! commit abe5cc51e9dae9e0791d32af4f1eacfa58a2f3aa Merge: 51cf1e7 d0e2df2 Date: Sat Mar 9 13:27:45 2019 -0500 Merge pull request #3837 from RosettaCommons/JWLabonte/quick_fix Integration Testing: Adding missing test flag Several of the integration tests are missing the -testing:INTEGRATION_TEST flag. This merge adds it. This will fix the 11 integration tests that I recently broke. commit 51cf1e7c3052a1840bda3f472757c8d74c057e90 Date: Fri Mar 8 12:51:53 2019 -0500 updating benchmark signature file to create clean-rebuild wall with PR3825 commit de3cd80aa2e12b2b90e2e43d42ca71527bf7c4a4 Merge: 4ab48a7 970e4f0 Date: Fri Mar 8 11:32:03 2019 -0500 Merge pull request #3841 from RosettaCommons/aleaverfay/fix_force_dslf_mvr_schema Update ForceDisulfideMover's schema to cover valid residue strings ForceDisulfideMover uses core::pose::parse_resnum, which allows chain ids, but the schema previously refused anything that was a letter. This PR updates the schema to accept a comma-separated list of colon-separated refpose_enabled_residue_number_strings. HT: David Nannemann commit 4ab48a76160c888257155619edb9817845bd8a67 Merge: d27cc2a 28501f1 Date: Thu Mar 7 11:30:15 2019 -0500 Merge pull request #3131 from CyrusBiotechnology/smlewis/rescue_indigo/nmer_refactor_plus_commonsmerge2 This PR merges @indigogo 's re-factored NMerSVMEnergy (currently used by Cyrus) into the Rosetta master branch, and now uses the `EnergyMethodOptions` system (courtesy of @vmullig ). This paves the way for @cbaileykellogg and myself to complete and merge #3464 (`MHCEpitopeEnergy`), which integrates nmer into the packer-compatible mhc_energy scoreterm. Integration test failures are due to writing out `EnergyMethodOptions` lists to PDB files, and are purely cosmetic. @indigogo 's description of these changes: Changes to NMerSVMEnergy scoring method and associated filter. This adds normalized score rank percentage calculation to NMerSVMEnergy. Why? Here's the problem: when using NMerSVMEnergy to predict T cell epitopes from MHC binding predictions, some MHC allele types bind more or less strongly on average. However, this is not indicative of more or less average predisposition to causing T cell activation. To correctly combine predictions across a repertoire of MHC types, we need to normalize the scores reported by different SVM models. To do this, I predicted MHC binding for 100k random 15mers from the human genome for every allele svm in the rosetta database and stored those distributions back in the database. Every time NMerSVMEnergy calculates a score, it also calculates the rank fraction of that score against the precalculated distribution; this info is retrievable from the scoring method directly, or you can pass a non-default cmdline option to switch to reporting that rank fraction as the score terms 'energy' instead of using the raw score. This allows one to properly combine the predictions of multiple alleles during deimmunization design in rosetta. Also tagging @smlewis , commit d27cc2a0028a199cf1c7d5607de7a82af8534795 Merge: a8cf775 1a39681 Date: Wed Mar 6 14:41:23 2019 -0500 Merge pull request #3814 from RosettaCommons/yingyue0414-patch-1 Add L-Galactopyranosyl parameters commit a8cf775b9cd9a68f90b0cb746187a6a6d7a18d58 Merge: fd1bdff a096aa2 Date: Tue Mar 5 18:00:14 2019 -0500 Merge pull request #3829 from RosettaCommons/vmullig/fix_shape_grid_water Tweak ShapeGrid so that it doesn't crash with ligands. Looks like it's pretty hard-coded for canonical amino acids. I started to generalize it but gave up. The main change here is an if statement to skip ligands. commit fd1bdffb01b7866da84942b9bf1b06e96270656e Merge: 0db72d0 9337fa1 Date: Tue Mar 5 15:28:05 2019 -0500 Merge pull request #2468 from RosettaCommons/JWLabonte/PDB_IO PDB IO: Title Section IO Following an idea/request from @cdbahl at RosettaCON 2017, I have added functionality for automatically adding a time stamp and Rosetta version number to all output `.pdb` files. The default output uses proper/standard/PDB-defined records, _e.g._: ``` HEADER 21-FEB-19 XXXX EXPDTA THEORETICAL MODEL REMARK 220 REMARK 220 EXPERIMENTAL DETAILS REMARK 220 EXPERIMENT TYPE : THEORETICAL MODELLING REMARK 220 DATE OF DATA COLLECTION : 21-FEB-19 REMARK 220 REMARK 220 REMARK: MODEL GENERATED BY ROSETTA REMARK 220 VERSION 2019.04.post.dev+165.HEAD.646026d ``` This way, one will always know whence a `.pdb` came, and it will lead to better reproducibility of results. One could also easily adapt this system, using JD2 or JD3, to automatically include specific protocol information to the file. This merge will also allow input and output of `AUTHOR` records: ``` HEADER 21-FEB-19 XXXX EXPDTA THEORETICAL MODEL AUTHOR LABONTE ``` To include a list of authors, simply use the option flag `-set_pdb_author` with a comma-delimited list of names, according to the PDB format: ``` -set_pdb_author "I.M.A.JUNIOR JR.,I.HYPHENATE-MY-SURNAME,LABONTE" ``` If integration tests are running, the system automatically outputs the date as `xx-MMM-xx` and the version number as `INTEGRATION TEST` to ensure that integration tests do not fail every time from the changing date and version output. This merge also corrects some bugs in `HeaderInformation`. All unit tests pass. Almost every single integration test changes, as every `.pdb` file now has a default title section prepended. I have looked through about 10% of the >400 tests and did not find any unexpected changes. Likewise, 5 score tests are changed and 2 mpi integration tests. commit 0db72d07cbbd5e7541ce889d5fff528065b39ef5 Merge: 1220763 86ba890 Date: Tue Mar 5 08:11:13 2019 -0500 Merge pull request #3807 from RosettaCommons/JackMaguire/FastDesignScriptsInDatabase Refactored FastDesign's ability to support scorefunction-dependent relax scripts. Now KillA2019 supports score12, talaris2013, and talaris2014. Lot's of integration test changes but those are all just small FastRelax differences. commit 12207635384c94bc0192459ff39af7910d08fa21 Merge: 7d95c8a d1012de Date: Fri Mar 1 14:00:40 2019 -0500 Merge pull request #3830 from RosettaCommons/vmullig/buried_unsat_penalty_support_water Fix the burial calculator used by buried_unsatisfied_penalty so that it doesn't choke on water. The burial calculator currently assumes that all residues used to determine burial are polymeric, and runs into trouble with ligands, including water. This fixes that. commit 7d95c8a9c33961c6618181f85a2c5ca5c2f6c552 Merge: 0f644e4 4edc5c4 Date: Tue Feb 26 13:35:43 2019 -0600 Merge pull request #3817 from RosettaCommons/roccomoretti/cloud_multithread Move multithreaded cloud usage behind compiler directive. To enable better compilation on platforms where std::thread requires pthread, move multithreading in protocols/network/cloud.cc to behind the MULTI_THREADING directive. This also involves moving some of the code in external/include/httplib.h behind that compiler directive. The single-threading logic for protocols/network/cloud.cc has also been adjusted, such that it works without any resort to std::thread. commit 0f644e409ff7bf88acf4c3554fbf1828af159b75 Merge: 0e576fa 2575e07 Date: Tue Feb 26 11:10:45 2019 -0500 Merge pull request #3819 from RosettaCommons/vmullig/fix_bg_yet_again Fixing Blue Gene compilation. Minor change to an included file's path. Might fix compilation on certain other systems, too. (Note that this is not a BG-specific change. This corrects an incorrect path; other systems were largely _robust_ to the incorrect path, but some might not be.) commit 0e576faa1ca146a6007fac122109e98f741c893b Merge: f3c4c29 335f925 Date: Fri Feb 22 11:08:58 2019 -0500 Merge pull request #3619 from RosettaCommons/smlewis/update_PDBdiagnostic_refs PDB diagnostic: update reference lists. Reformat readme per Julia's formatting (This was left open forever, merging it now so I can make a new one to update the refs again) commit f3c4c29154fc9b586e020a0c3c66d48372952dfd Merge: 0d3b9b4 4750aa9 Date: Fri Feb 22 10:57:35 2019 -0500 Merge pull request #3812 from RosettaCommons/jkleman/benchmarks updating relax scientific tests to have 90% of values below threshold commit 0d3b9b465977353aae802926b39bf5b51b14867e Merge: 889671edc 04f4620 Date: Thu Feb 21 18:45:13 2019 -0500 Merge pull request #3815 from RosettaCommons/vmullig/fix_xcode_yet_again Fix the xcode build after the xrw_packer_palette merge. Minor mistake in an iterator of the sort that xcode flags. commit 889671edc9efa3e7938c2bafa6d8fc09c163765d Merge: aa1ba89 b0610e0 Date: Thu Feb 21 12:22:06 2019 -0600 Merge pull request #3711 from RosettaCommons/roccomoretti/normalize_enzdes_scitest_format Update the output format of the enzyme_design scientific test for consistency with standard format. Also add per-protein result graphs to the output html. commit aa1ba89bd7035a59093b11aa27d76aa7c768956c Merge: cb5b0e7 73b5368 Date: Thu Feb 21 01:29:15 2019 -0500 Merge pull request #3813 from RosettaCommons/vmullig/clean_up_deprecated Removing a few references to NC from comments and information strings. The NC resfile command has been deprecated. This PR just makes sure that protocols aren't still making reference to it. commit cb5b0e7d38ec49cd4a20f0a2eae90fdcdb9b0b33 Merge: 8a40d8d 109b8d4 Date: Wed Feb 20 22:42:16 2019 -0500 Merge pull request #3811 from RosettaCommons/everyday847/test_rescue Fixup tests? commit 8a40d8db3a2045a3b783a73839895a44220c6887 Merge: 1e0f021 e282355 Date: Wed Feb 20 15:56:22 2019 -0500 Merge pull request #1047 from RosettaCommons/xrw_packer_palette XRW -- PackerPalettes: Let noncanonicals share the TaskOperation conventions of canonicals After three years, this PR is finally in master! This pull request was originally part of the 2016 Chemical XRW, which aimed to expand Rosetta's chemical functionality greatly, with the goal of letting Rosetta read in and operate on the entire PDB (including all noncanonical entries.) ~~This pull request uses stuff developed for the MirrorSymmetry branch, and must be merged after pull request #1104.~~ (Merged a long time ago.) - [x] THIS PULL REQUEST NEEDS TO HAVE `vmullig/xrw_packer_palette` MERGED INTO IT AFTER COMPILATION ERRORS ARE FIXED IN THAT BRANCH. Background and Rationale: TaskOperations modify the default packer behaviour, and are commutative (i.e. the order of application doesn't matter). This means, though, that in order to have the default behaviour be that one designs with all twenty canonical amino acids (and nothing else), TaskOperations can only turn canonical amino acids OFF and noncanonical amino acids ON. This makes it a real pain in the neck to do any mixed canonical/noncanonical design -- indeed, it has required the addition of some commutativity-breaking resfile commands. We'd like to remedy that. Description of Pull Request: This pull request changes the convention for noncanonicals, so that they share the convention for canonicals (i.e. TaskOperations can only turn ResidueTypes OFF, be they canonical or noncanonical). However, we want to preserve (a) commutativity, and (b) the default behaviour of Rosetta for users who are not using noncanonicals. We are therefore introducing the concept of a PackerPalette. The PackerPalette tells the packer, "These are all of the possible ResidueTypes and VariantTypes that you're allowed to use for design. All of these are ON by default, unless you're passed TaskOperations that turn some of these OFF at some positions." If a user does not provide a PackerPalette, the default palette is the twenty canonical amino acids, preserving the classic behaviour of Rosetta (so the only people who have to learn new rules are noncanonical designers, and the new rules are nicer for them). [Packer?]Tasks: - [x] Create the PackerPalette class (in same core level as TaskOperation class?). - [x] Write the default apply() function. - [x] Let actual PackerPalettes derive from the base class -- so create a ~~BasicPackerPalette~~ CustomBaseTypePackerPalette class. - [x] Implement the ~~BasicPackerPalette~~ CustomBaseTypePackerPalette parse_my_tag() function. - [x] Integration test for the ~~BasicPackerPalette~~ CustomBaseTypePackerPalette class. - [x] Documentation for the ~~BasicPackerPalette~~ CustomBaseTypePackerPalette class. - [x] Create DefaultPackerPalette class, too (no options for that). - ~~Integration test for the DefaultPackerPalette class.~~ --> Not necessary. Every integration test that calls the packer now invokes the DefaultPackerPalette. - [x] Documentation for the DefaultPackerPalette class. - [x] Implement factory architecture for PackerPalettes. - [x] Finish PackerPalette::decide_what_to_do_with_base_type(). - [x] Check how I'm using ResidueTypeFinder::variants() and ResidueTypeFinder::disallow_variants(). I fear that the two calls to it (one for terminal variant types, one for non-terminal) step on one another, with the second one overwriting the first. - Think about the AND/OR logic here a bit. If I'm designing with N-methyl-phosphotyrosine (i.e. with two variants), do I want to allow all four possible combinations of those variants (tyrosine, N-methyl-tyrosine, phosphotyrosine, and N-methyl-phosphotyrosine)? --> Put off for the next pull request, which will add a `CustomVariantTypePackerPalette`. - [x] Create a RosettaScripts-accessible user interface for setting up PackerPalettes. - [x] A PACKER_PALETTE section in a RosettaScript. - [x] Utility functions for parsing defined PackerPalettes in mover or filter parse_my_tag functions. - [x] Document this! - [x] Add this to the template-printing function in the RosettaScripts app. - [x] Create a commandline-accessible user interface for setting up a default CustomBaseTypePackerPalette. - [x] Document this. - [x] Modify the appropriate packer initialization functions to accept a PackerPalette. - [x] Ensure that they default to a PackerPalette that preserves the old default Rosetta behaviour. - [x] Continue at the TODO FIRST lines in ResidueLevelTask_.cc. Move all of the commented-out logic to the initialization function in the PackerPalette base class. - [x] Modify movers and filters that invoke the packer so that they accept (and parse from XML) a PackerPalette. - [x] Deprecate the RESET resfile command. - [x] Refine the EMPTY resfile command to be a non-commutativity-breaking command. - [x] Deprecate the NC resfile command. - [x] Deprecate the PIKRNA resfile command. - [x] Ensure that deprecated commands (RESET, EMPTY, NC, PIKRNA) produce an appropriate, informative error message explaining what the user needs to do to get his/her protocol working again. - [x] Remove NCAA support from LayerDesign (too hard to maintain). - [x] Remove this in the LayerDesign documentation, too. - [x] Update other protocols that need NCAA packing to use the new convention. - [x] Ensure that all canonical design continues to work as before, with no modification. - [x] Unit tests for `PackerPalette` functions. - [x] Integration tests for new noncanonical design workflow. - ~~Add base ResidueType lookup to ResidueType class. (Make it fast at the expense of memory by storing the string for the base ResidueType).~~ -> Moved to pull request #1050. - [x] Tweak the PIKAA syntax to allow restricting to canonicals plus noncanonicals. (Syntax is, for example, "PIKAA FAMILYVWX[601]X[ORN]", where the brackets contain full base names). - [x] Integration test. - [x] Documentation. - [x] Beauty. - [x] Documentation. - [x] Delete temporary text file with pull request description. - [x] Switch temporary output to debug output, or delete it outright. - [x] XSD functions for PackerPalettes. - [x] Add PackerPalette behaviors for carbohydrates (provided by @JWLabonte). - [x] ~~Add general way to check that backbones are compatible. (@JWLabonte).~~ We will do this later, but see #3744. - [x] Read default base `ResidueType`s from the database and remove hardcoding of names. (@JWLabonte). - Write a `CustomVariantTypePackerPalette`. --> Put off to a future pull request. - Add support for selecting residues with certain properties to the `CustomBaseTypePackerPalette`. --> Put off to a future pull request. - Re-enable unit test for peptoid design from sarcosine (in `core/pack/PeptoidDesignTests.cxxtest.hh`) and ensure that this is possible. --> Put off to a future pull request. - [x] Debug the small subset of performance tests that get slower. --> Done. They no longer get slower. - [x] Debug the subset of integration tests that get slower. - [x] Serialize. The above task list will be expanded and fleshed out as we figure out exactly how to do what we want to do, here. Documentation is in pull request RosettaCommons/documentation#2. commit 1e0f021a01a3fe9a27617789f896bdd30ec32798 Merge: 89f1fe1 aaac978 Date: Tue Feb 19 16:22:57 2019 -0800 Add unit tests from pyrosetta.tests to PyRosetta testing server: Pull request #3808 Add unit tests from pyrosetta.tests to PyRosetta testing server commit 89f1fe163e87b112f12ecf6bc1480d4586aafeb5 Merge: 7b7ba0b e8872de Date: Mon Feb 18 14:19:11 2019 -0500 Merge pull request #3791 from RosettaCommons/JackMaguire/Allocations Refactoring RamaPrePro Function Signature The RamaPrePro energy has a lot of unneeded heap allocations because it is implemented as a single function that serves two purposes. This PR splits it into two functions and reduces the number of heap allocations, especially for L-amino acids. commit 7b7ba0bf741bfddb15ced90cd817bad39c45b997 Merge: 8275751 5c758ef Date: Sat Feb 16 17:09:43 2019 -0500 Merge pull request #3806 from RosettaCommons/mlnance/update_atom_aliases Adding O1L atom alias to glucoses commit 827575144785bf7e59ab83432915e714a4ee0031 Merge: 88c1011 07b1ed9 Date: Fri Feb 15 13:00:08 2019 -0500 Merge pull request #3805 from RosettaCommons/mlnance/correct_flag_description Correct description info for write_pdb_link_records commit 88c1011f64f5c903e034e56d9e578ac554354085 Merge: 1a10b2d d695086 Date: Thu Feb 14 23:50:15 2019 -0500 Merge pull request #3803 from RosettaCommons/everyday847/allow_complex_loop_graph allow_complex_loop_graph default true commit 1a10b2db90cefcd1b778563dafc69163b55f3fe8 Merge: 37f1852 cab372f Date: Wed Feb 13 16:10:18 2019 -0500 Merge pull request #3757 from RosettaCommons/MelanieAprahamian/covalent_labeling_scoreterm Melanie aprahamian/covalent labeling scoreterm commit 37f1852fd21459321d38a9708aa50f22c341e73a Merge: bc5bba8 d2bf4eb Date: Wed Feb 13 13:30:48 2019 -0700 Merge pull request #3763 from RosettaCommons/sergey/cloud Adding API to post ExecutionSummaries to RosettaCloud commit bc5bba81688a5a2f791437adac258cd54789e907 Merge: 19d7bec 31a68e5 Date: Tue Feb 12 13:02:44 2019 -0600 Merge pull request #3795 from RosettaCommons/jadolfbr/shear_in_sampler This merge does a few things to the glycan modeling code: 1) Adds optional `ShearMover` to the sampler that was developed by Jason Labonte, with a final shear/min/pack 2) Changes name of `GlycanTreeSampler` to `GlycanSampler` 3) Fixes all virtual residues in the sampler 4) Removes large/medium bb movements (other than conformers) for refinement 4) Adds an option to turn off randomization in beginning of glycan sampler outside of refinement 5) Adds an inner cycle for BB movements within the glycan sampler with MonteCarlo to further drive the energy down. This adds about 15% of time into the protocol, but results in significantly lower energies than just generally increasing the number of cycles. commit 19d7bece73fddc0f9a2884c1c71840d02ee96bf6 Merge: 443610f 102df1b Date: Tue Feb 12 07:52:01 2019 -0500 Merge pull request #3647 from RosettaCommons/bioragul/TCRmodel TCRmodel contains the protocol for modeling T cell receptors (TCR). The ‘tcrmodel’ application is used for modeling TCRs. The protocol uses the template structures present in "Rosetta/main/database/additional_protocol_data/tcr/". The template files are updated separately. The TCRseqInfo class handles the parsing/numbering of TCR sequences. The TCRmodel class handles the actual grafting/modeling of TCRs. TCRloopRefine class handles the post-modeling refinement of CDR loops. Two unit tests and an integration test were added. A demo of this protocol is included in the tutorials. The documentation link for this protocol is https://www.rosettacommons.org/docs/latest/application_documentation/structure_prediction/TCRmodel. commit 443610ff4bc39f2baa2ad378c558b47bb3f6f775 Merge: 4194b26 97654eb Date: Mon Feb 11 18:45:47 2019 +0200 Merge pull request #3792 from RosettaCommons/aleaverfay/jd3_fix_archive_crosstalk_deadlock Fix deadlock bug in archive-to-archive communication in JD3 Previously, if archive 1 finished outputting all of its results, the master node could assign it to retrieve a result from archive 2, which was not done outputting all of its results. Archive 1 would then go and send a message to archive 2: an MPI_Send request. Archive 1 would block until archive 2 responded. While it was waiting, output work could get assigned to archive 1. When archive 2 would get back to the master node, the master node would assign it to retrieve the result from archive 1. Then archives 1 and 2 are both sending MPI_Send requests. This is deadlock. MPI_Send requests do not exit until the corresponding MPI_Recv has been called on the remote host. Oops. The solution is simple: do not allow archives to talk to each other until the very end of the simulation when it is possible to guarantee that no work will arrive for Archive 1 while it waits to hear from Archive 2. commit 4194b26a048bfa344cbd83cc1e1ff036256dfd85 Merge: 4d8c807 c9e5687 Date: Fri Feb 8 10:47:12 2019 -0600 Merge pull request #3798 from RosettaCommons/jadolfbr/sm_in_xmlobjects This PR adds functions to access individual `SimpleMetrics` from the `XmlObject` class - which is useful for PyRosetta. The SM can call the apply function of the base SM, which will add the data to the pose. With #3797 it should now be easy to access the calculated SM data as a dict. It should be noted that some functions, like `cached_calculate` and `calculate`, are not in the base class, and so, cannot be accessed in this way in PyRosetta without knowing which type of SM you are obtaining ahead of time. In C++, you can cast it. Unit tests are updated to fully test these additions.