Changeset - d0d0a15673c6
[Not reviewed]
0 1 0
Bradley Kuhn (bkuhn) - 10 years ago 2014-02-18 20:14:58
bkuhn@ebb.org
Bullet list was indented too far. (Whitespace only changes here)
1 file changed with 7 insertions and 7 deletions:
0 comments (0 inline, 0 general)
GSoC2014Ideas.mdwn
Show inline comments
...
 
@@ -37,31 +37,31 @@ skills and background best when submitting your application.
 
    great acid test will be to use the API to implement the
 
    [IRS required charity public support test](http://www.irs.gov/Charities-&-Non-Profits/Exempt-Organizations-Annual-Reporting-Requirements-Form-990,-Schedules-A-and-B:-Public-Charity-Support-Test).
 

	
 
2. Convert  [Ledger-CLI](http://www.ledger-cli.org/) to use fixed-point
 
   arithmetic.
 

	
 
   Currently Ledger-CLI uses floating point arithmetic, which is definitely a
 
   mistake for an accounting system.  This causes
 
   [off-by-one bugs](http://bugs.ledger-cli.org/show_bug.cgi?id=992) on some
 
   types of transactions.  This should be fixed.
 

	
 
   A successful student on this task will:
 
        * Write various test cases for Ledger-CLI that will clearly show the
 
          floating point issue.
 
        * Rework the codebase to use fixed-point arithmetic so those bugs are
 
          closed.
 
        * Shepherd the patch upstream.
 
        * Time permitting: verify that other Ledger implementations don't
 
          face the same problem.
 
      * Write various test cases for Ledger-CLI that will clearly show the
 
        floating point issue.
 
      * Rework the codebase to use fixed-point arithmetic so those bugs are
 
        closed.
 
      * Shepherd the patch upstream.
 
      * Time permitting: verify that other Ledger implementations don't
 
        face the same problem.
 

	
 
3. Build a better test suite for [Ledger-CLI](http://www.ledger-cli.org/).
 

	
 
   Since this project relies so heavily on Ledger-CLI, we'd really like there
 
   to be a full test coverage for Ledger-CLI.  To do that, a student will
 
   need to be already somewhat familiar C++ and willing to learn about how to
 
   set up test suites for C++ programs, and likes writing tests.  The student
 
   could easily spend the whole summer just writing tests and not finish.
 

	
 
    Ledger-CLI does have a basic test suite, but it might turn out that using
 
    a more "full featured" test harness is useful.  The student will
 
    investigate and discuss this possibility with the mentor.  It would also
0 comments (0 inline, 0 general)