On 1/20/19 8:07 PM, Christopher Lam wrote: > There's no reason why the dates can't be changed. > > The reason dates straggling 1.1.1970 was chosen was because 1.1.1970 > corresponds to time 0 in time64, and I felt that having a few negative > time64 numbers would be interesting to test sorting. > > However this is a weird weirdness -- the test output shows that the > transactions were sorted correctly - 31/12/69, 31/12/69, 01/01/70, > 02/01/70, 02/10/70 (in d/m/y); it's just the display that is incorrect. > > Moreover the display has to go through qof_print_date which takes a > time64 and returns a string. > > I'd be keen to know Stephen's build and try debug this.
Here are my steps (I have a Projects folder in which is a GnuCash folder): cd ~/Projects/GnuCash git clone https://github.com/Gnucash/gnucash cd gnucash git checkout 3.4 cp -r ../debian . (contents of above folder are available here: https://drive.google.com/open?id=1VJmtb-Fx00PQna4yQoYm49C88Bi0hneI ) fakeroot debian/rules clean sudo mk0buikd-deps -ir debian/control DEB-BUILD-OPTIONS=nocheck dpkg-build-package -rfakeroot -b -uc (This did build the files located here: https://drive.google.com/open?id=1fV_fURy6c77e7gf6S41lTacM7dFyy7VD ) > > Stephen can you modify transaction.scm as follows and let us know the > test output? (Beware the parentheses!) > > modified gnucash/report/standard-reports/transaction.scm > @@ -1119,7 +1119,8 @@ be excluded from periodic reporting.") > (if transaction-row? > (gnc:make-html-table-cell/markup > "date-cell" > - (qof-print-date > (xaccTransGetDate (xaccSplitGetParent split)))) > + (let ((date (xaccTransGetDate > (xaccSplitGetParent split)))) > + (gnc:pk 'date date > 'qof-print-date (qof-print-date date)))) > "")))) > > (add-if (column-uses? 'reconciled-date) > > Hmm. I was back on v3.4 with this test. I'll try again with maint checked out. d0.0005 t1.824: ('date 1576407540 'qof-print-date 12/15/19) [pass] line:647, test: dual amount column, with original currency headers [pass] line:651, test: dual amount column, grand totals available [fail] line:654, test: dual amount column, first transaction correct transaction.scm/display options -> expected: ("01/03/18" "$103 income" "Root.Asset.Bank" "$103.00" "$103.00") -> obtained: ("01/03/19" "$103 income" "Root.Asset.Bank" "$103.00" "$103.00") d0.1090 t1.933: ('date -46860 'qof-print-date 12/31/69) > On 21/1/19 7:00 am, John Ralls wrote: >> >>> On Jan 20, 2019, at 1:24 PM, Stephen M. Butler <[email protected]> wrote: >>> >>> Started clean this morning by recloning the git repository. Made much >>> further progress but ended up with some test failures. Here are my >>> steps: >>> >>> 1. sudo rm -rf gnucash >>> >>> 2. git clone https://github.com/Gnucash/gnucash >>> >>> 3. cd gnucash >>> >>> 4. git checkout -b debian >>> >>> 5. cp -r ../debian . >>> >>> Here is the contents of that directory -- copied to Google >>> Drive: >>> >>> >>> https://drive.google.com/open?id=1VJmtb-Fx00PQna4yQoYm49C88Bi0hneI >>> >>> 6. git add debian >>> >>> 7. git commit >>> >>> Done on my "debian" branch >>> >>> 8. fakeroot debian/rules clean >>> >>> 9. sudo mk-build-deps -ir debian/control >>> >>> 10. dpkg-buildpackage -rfakeroot -b -uc >>> >>> Note: This usually failed right up front. This time went for >>> nearly 10 >>> minutes. >>> >>> End testing: Jan 20 12:49 PST >>> + exit 2 >>> debian/rules:68: recipe for target 'override_dh_auto_test' failed >>> make[1]: *** [override_dh_auto_test] Error 2 >>> make[1]: Leaving directory '/home/steve/Projects/GnuCash/gnucash' >>> debian/rules:23: recipe for target 'build' failed >>> make: *** [build] Error 2 >>> dpkg-buildpackage: error: debian/rules build subprocess returned exit >>> status 2 >>> >>> >>> Here are the contents of ./.build/Testing/Temporary/* >>> https://drive.google.com/open?id=1_0gRAd-ymP1cEYM3pyPnvzeHI7-SSWMS >> The file you want to look at for test failures is LastTest.log. You >> can search for "Test Failed". >> >> This time the test failure is in >> gnucash/report/standard-reports/test/test-transaction.scm: >> [pass] line:654, test: dual amount column, first transaction correct >> [fail] line:678, test: dates are sorted >> transaction.scm/sorting options >> -> expected: ("12/31/69" "12/31/69" "01/01/70" "02/01/70" "02/10/70") >> -> obtained: ("12/31/70" "12/31/70" "01/01/70" "02/01/70" "02/10/70") >> [pass] line:684, test: sort by number >> >> That suggests that for some reason Guile on your system can't handle >> dates before 1/1/1970. That's strange, but probably not important to >> many GnuCash users. >> >> Chris Lam, any reason not to change that test to use later dates? >> >> Regards, >> John Ralls -- Stephen M Butler, PMP, PSM [email protected] [email protected] 253-350-0166 ------------------------------------------- GnuPG Fingerprint: 8A25 9726 D439 758D D846 E5D4 282A 5477 0385 81D8 _______________________________________________ gnucash-devel mailing list [email protected] https://lists.gnucash.org/mailman/listinfo/gnucash-devel
