#######################
#
# adegenet TODO list
#
#######################
#
# please list here all intended modifications
# and all detected bugs
#
# please add a "-- done" or "-- fixed" tag when
# you achieved something
# '*' indicates stuff to do
# 'o' indicates done stuff
#
# Inside a given section, priority goes decreasing.
#
# Delete fixed things each new release.
#
# T.J. 2008
#
######################



# FOR NEXT STABLE VERSION
=========================
=========================

# CODE ISSUES:
==============
o fix bug 1.2-2.01 (read.structure issue) -- fixed: was due to the default of "onerowperind" argument.
o fix bug 1.2-2.02 (read.genetix issue) -- fixed: was due to an error in the data file (wrong nloc); now read.genetix corrects that automatically and issues a warning. (TJ)
o fix bug 1.2-2.03 (monmonier issue) -- fixed: was a non-detected code 2 due to intersection check with previously drawn segment (was not always removed). (TJ)
* fix request 1.2-2.04 (implement adjusted heretozygosity in summary)
o fix bug 1.2-2.05 (monmonier is such a pain is the ass) -- fixed, done and done (TJ)
o !! comment the if(DEBUG) in monmonier when it is fixed -- done
* make the package work after all changes (pass the check)


# DOCUMENTATION ISSUES:
=======================
* make a tutorial for the sPCA -- done (TJ)
* explain new changes inside the tutorial (handling of AFLP/RAPD...)


# NEW IMPLEMENTATIONS:
=====================
o color plot for the sPCA results, based on RGB representation of Cavalli-Sforza -- done(TJ)
o loadingplot for plotting loadings of one axis -- done (TJ)
o adegenetTutorial function which opens the online tutorials -- done (TJ)
o allow for the use of na.replace and scaleGen in spca function -- done (TJ)
o add rupica dataset -- done (TJ)
o enable reading data from URL (import2genind, read.[...]).
* implement handling of presence/absence data
* add a type argument to genind/genpop objects
* make all the required subsequent changes in the package:
- class definition and checks
- constructors
- basic methods
- spca
- distances
- propShared
- input/output
- HWE
- Fstat
- old2new
- scaleGen
- genind2genpop
- gstat.randtest
- propTyped
- hybridize
- repool


# TESTING:
==========
* test reading from url files.



# LOW PRIORITY / MINOR ISSUES
===========================
===========================
* in spca, when nfposi=0, the returned object actually contains what corresponds to nfposi=1. Comes from multispati in ade4. To correct in ade4.
* use spcaIllus to illustrate global.rtest and local.rtest
* check all examples and look for possible improvements
* Implement a method to merge different markers for the same individuals
* Build accessors for marker names, indiv names, pop names, spatial coords, ... -- done in part (nLoc) (TJ)
* Return a spatial object from monmonier (class sp?)
* implement classical Fst sensu Weir 1996 ? Or wait for EP to do it...
* Implement different levels of ploidy in:
- hybridize
- read.structure
- propShared
o Permit specification of a matrix of spatial weights in spca (email A. Piotti) -- done (TJ)
*


# LONG TERM
==========================
==========================
* import from geneticsBase -- wait for geneSet to be stable
* export to geneticsBase -- same thing
* see where code needs tuning, and use C/C++
* implement global.rtest and local.rtest for genind/genpop objects
o Implement dudi wrappers for genind / genpop objects -- one step (automatic coercion as data.frames) (TJ)
* Check the formulae provided for Reynolds (consistent with Felsenstein's
formulae, not straightforward reading the original article)
* Implement wrappers for spatial function (Moran's I, Mantel's correlogram, etc.).


