ClustalO servlets
[jabaws.git] / TODO.txt
1 \r
2 Write help on \r
3  + execution stats\r
4  + new menu bar background \r
5  - new page background(?)\r
6  - merge developers help pages\r
7  - new VM \r
8  - new properties e.g. jar\r
9  - registry\r
10  - change log \r
11  - main page should point to JABA 1   \r
12  - Document the Limits for presets\r
13  - JAVA DOCS\r
14  - defaults changed - e.g. limits are disabled - explain how to enable\r
15  - cluster settings are commented out \r
16  - Describe requirements \r
17 Python > 2.2\r
18 Perl > 5.0\r
19 Java > 6\r
20 For compilation \r
21 C++\r
22 C\r
23 Gnu make\r
24    \r
25 - Check progress tracking on large sequence.\r
26 \r
27 - Add more detailed tests for webservices? \r
28 \r
29 + TODO write some help on the executable.properties within this file! \r
30 \r
31 - check that after binaries relocation build tasks point to correct locations!\r
32 \r
33 \r
34 add to help text: To disable a web service remove it from WEB-INF/sun-jaxws.xml descriptor\r
35 \r
36 rename jaba.war to jabaws.war and make sure jabaws context path is used throughout. \r
37 \r
38 \r
39 ? Replace conservation.Method with server.ws.Method and try building WS. If this does not work - get rid of Method\r
40 \r
41 integrate the above to tweak the size of the local job\r
42 \r
43 \r
44 (later) Add documentation on Presets, Parameters and Limits\r
45 (later) Explain how to define a limit\r
46 \r
47 Add test for repeated result collection from cluster engine\r
48 \r
49 \r
50 \r
51 DONE\r
52 \r
53 version 2\r
54 \r
55 DONE: Current stat collector has to rely on file dates! \r
56 DONE: Help information? - relative - client to add host and context info\r
57 DONE: statistics - result files \r
58 DONE: Good toString method for Limits (test with command line client -limits)\r
59 DONE: install JABA 1 stat server \r
60 DONE: Get path to Java executable from JAVA_HOME ? (for Jronn AACon) \r
61 \r
62 DONE:  GET rid of binaries/help directory!\r
63 DONE:  update binaries\r
64  DONE:  muscle binary version 3.8.31 for win/lin32/lin64 and sources, docs in website/prog_docs\r
65  DONE:  test Muscle on the cluster\r
66  DONE:  test Muscle compilation\r
67  DONE:  probcons up-to-date\r
68  DONE:  clustal up-to-date \r
69  DONE:  update tcoffee (8.99 latest) source code updated  docs updated \r
70  DONE:  tcoffee compilation for IA32 \r
71  DONE:  update Mafft (6.857 latest) for win/lin32/lin64 and sources, no docs updates\r
72 DONE:  make sure conf files are optional!\r
73 \r
74 Cluster stats: \r
75  DONE: cancelled should not be reported as incomplete!\r
76  DONE: ant task to clean up clean stat db task before packing web app\r
77  DONE: pack web apps with stat db (NOT TESTED!)\r
78  DONE: change input size bites\r
79  DONE: add help info for each column in the detailed job list table\r
80  DONE: replace default -1 with ? \r
81  DONE: delete and re-import the database to fix clustal input staff    \r
82 \r
83 DONE:  Test all WS as names from Executables were removed\r
84 DONE:  Add default names for input and output in every executable and use them consistently\r
85   throughts (e.g. in all WS). Best of all use the same name from SceletalExectuable \r
86   For statistics. \r
87 \r
88 DONE:  FIXED Conecting to JABAWS version 2 service\r
89   09-Feb-2011 15:27:53 compbio.ws.client.Jws2Client connect\r
90   INFO: Connected successfully!\r
91   Exception in thread "main" java.lang.NullPointerException\r
92         at compbio.ws.client.MetadataHelper.getParametersList(MetadataHelper.java:30)\r
93         at compbio.ws.client.Jws2Client.<init>(Jws2Client.java:179)\r
94         at compbio.ws.client.Jws2Client.main(Jws2Client.java:483)\r
95 \r
96 DONE:  ScoreManager should output scores properly \r
97 DONE:  Allow empty Parameters and Preset files! \r
98 DONE:  Check the WS input and reject it on submission rather then of access with error message\r
99 \r
100 DONE: Add registry service to query services status\r
101 DONE: Refactor web services checker to enable a programmatic access to its methods.\r
102 DONE: Finish the client\r
103 DONE: Add AACon ws\r
104 DONE: Add iupred ws http://iupred.enzim.hu/\r
105 DONE: Add globprot ws - does not report raw scores, just regions\r
106 DONE: Add ronn ws\r
107 DONE: Define limits for presets - if required\r
108 DONE: Add logging facility to WSTester so more details of the problem can be reported\r
109 DONE: Statistics collector for engines (number of operations/timing)\r
110 \r
111 \r
112 version 1\r
113 \r
114 DONE: LocalExecutor service must be shutdown on web application undeploy event not on JVM shutdown. \r
115       This is because JVM is still running even after web application is shut down!\r
116 DONE: Use absolute path for web site download links as archives are not included into distro!\r
117 DONE: Rearrange web site docs - add links to the top of the page to the topics discussed below\r
118 DONE: Put the documentation for various executables online\r
119 DONE: Make left gradient image one-two characters larger + change "For developer ->For Developers"\r
120 DONE: test local/cluster execution - test Load balancer\r
121 DONE: Improve SimpleWS client so it can be scripted against: give user alignment and accept parameters\r
122 DONE: Make a configuration tester class (check that configuration files point to the executables, and they can be executed)\r
123 DONE: PUT CLIENT JAR INTO WEB-INF/LIB - most likely need to get rid of dist prefix in the build file\r
124 DONE: Different packages for download and dundee. generic vs specific settings. \r
125 DONE: JAVADOC\r
126 DONE: Refactor EngineResourcesLeak tester to hide a map implementation!\r
127 DONE: Compile executables for linux in the most generic way\r
128 DONE: Make different log4j configuration files / web services logs.\r
129 DONE: System manual\r
130 DONE: Developer doc\r
131 DONE: How to\r
132 DONE: Prepare different packages\r
133 DONE: extract commonly used names into variable in the build script\r
134 DONE: Test for high load conditions (TestNG?)\r
135 DONE: (low) Fix: Started jobs with unknown completion status reported as FINISHED by  msaws.getJobStatus(taskId) (see SimpleWSClient)\r
136 DONE: fix compile binaries script\r
137 DONE: Make script to change executable flag for linux systems\r
138 DONE: jobsout must be created within war\r
139 DONE: enable relative paths for local engine conf temp dir\r
140 COUND NOT REPRODUCE: fix cluster job status - RUNNING -> UNDEFINED\r
141 DONE: throw JobSubmission exception with appropriate method instead - (low) code discoverer/tester for ws - e.g. after war deployment to find out what actually works\r
142 DONE: fix build scripts after reorganising project\r
143 DONE: package as war file for deployment\r
144 DONE: package for jalview distro for local execution\r
145 DONE: reorganise project into independent chunks\r
146 DONE: test Parameter & Option toCommand method\r
147 DONE: Replace WS methods with new CommandBuilder.toCommand()\r
148 DONE: Setting default values is validated as external method \r
149 DONE: Refactoring to extract data model, and engines is performed\r
150 DONE: Default value is adopted for passing new Option values to server side\r
151 DONE: Converting Options to commands delegated to CommandBuilder  \r
152 DONE: Make Arguments mutable to facilitate default value setting for WS\r
153 DONE: Matrix files for alignment programme\r
154 DONE: Clean up testcases\r
155 DONE: Replace List<String> as command line parameters abstraction to dedicated CommandBuilder class \r
156 DONE: Parallel execution for tcoffee jobs\r
157 DONE: Copyright added\r
158 DONE: WRAP ProbCons\r
159 DONE: think about time limits and cluster parameters for parallel execution - NativeSpecs for cluster is implemented\r
160 DONE: (low) Use for WS: (@WebParam(name = "name") String name) {\r
161 DONE: Implement rough policy for runtimes (e.g. do not run excessively long tasks on the local machine if cluster is available)\r
162 DONE: Write tomcat conf to expose WS\r
163 DONE: access control to web.xml\r
164 DONE: Statistics collector for WS\r
165 DONE: implements limits for web services\r
166 DONE: WS clients must be able to connect to a web service given the service url. \r
167 e.i. ws URL should not be compiled in using wsimport, but determined from \r
168 the configuration file.  \r
169 \r
170 DONE: Could not find configuration files if run from within servlet container\r
171 DONE: Add ways to get engine based on the key for everything but submission of the new tasks \r
172 DONE: Add cache to Cluster JOBID - so that at least jobs for which results have not been collected is cached.\r
173 DONE: FINISHED overrides FINISHED with time stamp!\r
174 DONE: Consider think about JobStatus and StatFileStatus\r
175 DONE: a method to read 3 chars at the beginning of the file to indicate a progress is added\r
176 DONE: ConfiguredExecutable<?> al = sexec.getResults(jobId); || Alignment ?\r
177 DONE: ClustalW - OUTput must be set !\r
178 DONE: Add accessor methods to get a DUMP of the process output \r
179 DONE: FilePuller should be cached to avoid excessive fs exercise\r
180 DONE: Test List of the processes (ensure no memory leaks)\r
181 PART DONE - On the client on shutdown remember the task list - server tasks could be loaded and executed from saved run configurations, client should decide for themselves what they want\r
182 DONE: Persist the task list to enable later result collection on the server side\r
183 DONE Wrap TCoffee\r
184 DONE: improve parameters handling - new schema + update for all parameters\r
185 DONE: Cluster jobs report submitting and result collecting/finishing time (for sync jobs only(!)) and cluster jobid in the corresponding files  \r
186 DONE: Local jobs report starting and finising times in files with corresponding names in the task directory  \r
187 DONE: Generalize getResult method for MSA runners\r
188 DONE: Create test suits\r
189 DONE: Convert junit tests to TestNG\r
190 DONE: Redirect output & error streams to the named files as some processed need this  \r
191 DONE: Extract generilyzed class with most of the method for individual executable to use\r
192 DONE: Refit wrappers to use the generalised class to avoid duplication  \r
193 DONE: Pass environment variable settings to the executable\r
194 DONE: Complete AsyncExecutors implementation\r
195 DONE: Look to unify methods for engines\r
196 DONE: Provide way around of generated directory setup for test cases(?)\r
197 DONE: Fix the test cases for local engine (need to set directory on executable explicitly)\r
198 DONE: Make log files for processes err and out for local execution\r
199 DONE: Trace where AsyncExcel called with null Executable and attempts to create a new directory repeatedly\r
200 DONE: directory generator\r
201 DONE: tests for cancel \r
202 DONE tests for getStatus\r
203 DONE  ws async\r
204 DONE: parametrized clustal operations\r
205 DONE: test large datasets handling \r
206 DONE: write load balancer \r
207 DONE: (low) task persistance\r
208 DONE: Look at CancellableTask if with Sync and AsyncExecutor \r