You can subscribe to this list here.
2001 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
(9) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2002 |
Jan
(1) |
Feb
|
Mar
(11) |
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2003 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
(9) |
Sep
|
Oct
|
Nov
|
Dec
(5) |
2004 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
(2) |
2005 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
(21) |
Dec
|
2006 |
Jan
|
Feb
(6) |
Mar
(1) |
Apr
(8) |
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2007 |
Jan
|
Feb
(6) |
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: Alex M. <al...@us...> - 2005-11-11 21:52:34
|
Update of /cvsroot/gmpy/gmpy In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv21462 Modified Files: README setes.py setup.py Log Message: Minor cleanups in preparation for 1.01 release. Index: README =================================================================== RCS file: /cvsroot/gmpy/gmpy/README,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** README 8 Aug 2003 11:29:43 -0000 1.1 --- README 11 Nov 2005 21:52:23 -0000 1.2 *************** *** 1,16 **** ! General MultiPrecision arithmetic for Python -- i.e., Python 2.3 ! interface module for library GMP 4 -- release 1.0 alpha (August 2003) Detailed documentation in subdirectory doc. ! To install GMPY 1.0 from sources (you need to have Python 2.3 and GMP 4 ! previously installed): at a shell prompt, python setup.py install ! Note that, on Windows, you may use the distributed binary release rather than having to rebuid from sources; to build from sources, you need a ! Windows installation of GMP 4 (ftp://ftp.whiterose.net/pub/lundman/). To test your installation: cd test, then python gmpy_test.py ! For any support request, mail Alex Martelli, al...@ya... --- 1,18 ---- ! General MultiPrecision arithmetic for Python -- i.e., Python 2.2/.3/2.4 ! interface module for library GMP 4 -- release 1.01 beta (Nov 2005). Detailed documentation in subdirectory doc. ! To install gmpy 1.01 from sources (you need to have Python 2.2 or better, and ! GMP 4, previously installed): at a shell prompt, python setup.py install ! Note that, on Windows, you may use the distributed binary release, rather than having to rebuid from sources; to build from sources, you need a ! Windows installation of GMP 4 (http://www.cs.nyu.edu/exact/core/gmp/). To test your installation: cd test, then python gmpy_test.py ! For any support request, mail Alex Martelli, al...@gm... (for bug ! reports, please use sourceforge.net's bug-report system instead). ! Index: setes.py =================================================================== RCS file: /cvsroot/gmpy/gmpy/setes.py,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** setes.py 8 Aug 2003 08:57:05 -0000 1.2 --- setes.py 11 Nov 2005 21:52:23 -0000 1.3 *************** *** 14,18 **** author = "Pearu Peterson", maintainer = "Alex Martelli", ! maintainer_email = "al...@ya...", url = "http://gmpy.sourceforge.net/", --- 14,18 ---- author = "Pearu Peterson", maintainer = "Alex Martelli", ! maintainer_email = "al...@gm...", url = "http://gmpy.sourceforge.net/", Index: setup.py =================================================================== RCS file: /cvsroot/gmpy/gmpy/setup.py,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** setup.py 10 Nov 2005 03:19:40 -0000 1.5 --- setup.py 11 Nov 2005 21:52:23 -0000 1.6 *************** *** 2,5 **** --- 2,12 ---- from distutils.core import setup, Extension + # patch distutils if it can't cope with the "classifiers" and + # "download_url" keywords + if sys.version < '2.2.3': + from distutils.dist import DistributionMetadata + DistributionMetadata.classifiers = None + DistributionMetadata.download_url = None + if sys.version.find('MSC')==-1: gmpy_ext = Extension('gmpy', sources=['src/gmpy.c'], *************** *** 13,20 **** setup (name = "gmpy", version = "1.01", - description = "GMP-3/4 to Python-2.{2,3,4} interface", maintainer = "Alex Martelli", ! maintainer_email = "al...@ya...", url = "http://gmpy.sourceforge.net/", ext_modules = [ gmpy_ext ] --- 20,42 ---- setup (name = "gmpy", version = "1.01", maintainer = "Alex Martelli", ! maintainer_email = "al...@gm...", url = "http://gmpy.sourceforge.net/", + description = "GMP-4 to Python-2.{2,3,4} interface", + download_url = "http://http://prdownloads.sourceforge.net/gmpy/gmpy-sources-101.zip?download", + + classifiers = [ + 'Development Status :: 4 - Beta', + 'Intended Audience :: Developers', + 'License :: OSI Approved :: GNU Library or Lesser General Public License (LGPL)', + 'Natural Language :: English', + 'Operating System :: MacOS :: MacOS X', + 'Operating System :: Microsoft :: Windows', + 'Operating System :: POSIX', + 'Programming Language :: C', + 'Programming Language :: Python', + 'Topic :: Scientific/Engineering :: Mathematics', + 'Topic :: Software Development :: Libraries :: Python Modules', + ], ext_modules = [ gmpy_ext ] |
From: Alex M. <al...@us...> - 2005-11-11 21:52:34
|
Update of /cvsroot/gmpy/gmpy/test In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv21462/test Modified Files: gmpy_test_mpf.py gmpy_test_mpq.py gmpy_test_mpz.py gmpy_test_rnd.py gmpy_truediv.py timing1.py Log Message: Minor cleanups in preparation for 1.01 release. Index: gmpy_test_mpf.py =================================================================== RCS file: /cvsroot/gmpy/gmpy/test/gmpy_test_mpf.py,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** gmpy_test_mpf.py 7 Nov 2005 21:04:31 -0000 1.5 --- gmpy_test_mpf.py 11 Nov 2005 21:52:23 -0000 1.6 *************** *** 1,3 **** ! # partial unit test for gmpy 1.0 mpf functionality # relies on Tim Peters' "doctest.py" test-driver # test-version 1.0 --- 1,3 ---- ! # partial unit test for gmpy 1.01 mpf functionality # relies on Tim Peters' "doctest.py" test-driver # test-version 1.0 *************** *** 352,356 **** def _test(chat=None): if chat: ! print "Unit tests for gmpy 1.0 release candidate (mpf functionality)" print " running on Python",sys.version print --- 352,356 ---- def _test(chat=None): if chat: ! print "Unit tests for gmpy 1.01 release candidate (mpf functionality)" print " running on Python",sys.version print Index: gmpy_test_mpq.py =================================================================== RCS file: /cvsroot/gmpy/gmpy/test/gmpy_test_mpq.py,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** gmpy_test_mpq.py 7 Nov 2005 21:04:31 -0000 1.5 --- gmpy_test_mpq.py 11 Nov 2005 21:52:23 -0000 1.6 *************** *** 1,3 **** ! # partial unit test for gmpy 1.0 mpq functionality # relies on Tim Peters' "doctest.py" test-driver # test-version 1.0 --- 1,3 ---- ! # partial unit test for gmpy 1.01 mpq functionality # relies on Tim Peters' "doctest.py" test-driver # test-version 1.0 Index: gmpy_test_mpz.py =================================================================== RCS file: /cvsroot/gmpy/gmpy/test/gmpy_test_mpz.py,v retrieving revision 1.9 retrieving revision 1.10 diff -C2 -d -r1.9 -r1.10 *** gmpy_test_mpz.py 7 Nov 2005 21:55:39 -0000 1.9 --- gmpy_test_mpz.py 11 Nov 2005 21:52:23 -0000 1.10 *************** *** 1,3 **** ! # partial unit test for gmpy 1.0 mpz functionality # relies on Tim Peters' "doctest.py" test-driver # test-version 1.0 --- 1,3 ---- ! # partial unit test for gmpy 1.01 mpz functionality # relies on Tim Peters' "doctest.py" test-driver # test-version 1.0 Index: gmpy_test_rnd.py =================================================================== RCS file: /cvsroot/gmpy/gmpy/test/gmpy_test_rnd.py,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** gmpy_test_rnd.py 7 Nov 2005 18:08:17 -0000 1.4 --- gmpy_test_rnd.py 11 Nov 2005 21:52:23 -0000 1.5 *************** *** 1,3 **** ! # partial unit test for gmpy 1.0 rand functionality # relies on Tim Peters' "doctest.py" test-driver # test-version 1.0 --- 1,3 ---- ! # partial unit test for gmpy 1.01 rand functionality # relies on Tim Peters' "doctest.py" test-driver # test-version 1.0 Index: gmpy_truediv.py =================================================================== RCS file: /cvsroot/gmpy/gmpy/test/gmpy_truediv.py,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** gmpy_truediv.py 7 Nov 2005 21:04:31 -0000 1.1 --- gmpy_truediv.py 11 Nov 2005 21:52:23 -0000 1.2 *************** *** 1,2 **** --- 1,5 ---- + ''' make a "true division" function available for testing ''' + from __future__ import division + def truediv(a, b): return a/b Index: timing1.py =================================================================== RCS file: /cvsroot/gmpy/gmpy/test/timing1.py,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** timing1.py 8 Aug 2003 08:57:05 -0000 1.2 --- timing1.py 11 Nov 2005 21:52:23 -0000 1.3 *************** *** 1,4 **** --- 1,11 ---- import gmpy, time + + try: sum + except NameError: + def sum(x, z): + for item in x: z += item + return z + def timedsum(n, zero): start=time.clock() |
From: Alex M. <al...@us...> - 2005-11-10 03:19:50
|
Update of /cvsroot/gmpy/gmpy In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv12524 Modified Files: setup.py Log Message: Added gmp as a required library. Index: setup.py =================================================================== RCS file: /cvsroot/gmpy/gmpy/setup.py,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** setup.py 8 Aug 2003 08:57:05 -0000 1.4 --- setup.py 10 Nov 2005 03:19:40 -0000 1.5 *************** *** 8,16 **** else: gmpy_ext = Extension('gmpy', sources=['src/gmpy.c'], ! include_dirs=['./src']) setup (name = "gmpy", ! version = "1.0", ! description = "GMP-3 to Python-2 interface", maintainer = "Alex Martelli", maintainer_email = "al...@ya...", --- 8,17 ---- else: gmpy_ext = Extension('gmpy', sources=['src/gmpy.c'], ! include_dirs=['./src'], ! libraries=['gmp']) setup (name = "gmpy", ! version = "1.01", ! description = "GMP-3/4 to Python-2.{2,3,4} interface", maintainer = "Alex Martelli", maintainer_email = "al...@ya...", |
From: Alex M. <al...@us...> - 2005-11-07 21:55:47
|
Update of /cvsroot/gmpy/gmpy/test In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv20916/test Modified Files: gmpy_test_mpz.py Log Message: Fixed gmpy.divm for non-coprime divisor and modulo, added tests for that. Index: gmpy_test_mpz.py =================================================================== RCS file: /cvsroot/gmpy/gmpy/test/gmpy_test_mpz.py,v retrieving revision 1.8 retrieving revision 1.9 diff -C2 -d -r1.8 -r1.9 *** gmpy_test_mpz.py 7 Nov 2005 21:04:31 -0000 1.8 --- gmpy_test_mpz.py 7 Nov 2005 21:55:39 -0000 1.9 *************** *** 415,418 **** --- 415,420 ---- _g.divm(a,b,100) ZeroDivisionError: not invertible + >>> _g.divm(6,12,14) + mpz(4) >>> _g.divm(0,1,2) mpz(0) |
From: Alex M. <al...@us...> - 2005-11-07 21:55:47
|
Update of /cvsroot/gmpy/gmpy/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv20916/src Modified Files: gmpy.c Log Message: Fixed gmpy.divm for non-coprime divisor and modulo, added tests for that. Index: gmpy.c =================================================================== RCS file: /cvsroot/gmpy/gmpy/src/gmpy.c,v retrieving revision 1.15 retrieving revision 1.16 diff -C2 -d -r1.15 -r1.16 *** gmpy.c 7 Nov 2005 15:43:24 -0000 1.15 --- gmpy.c 7 Nov 2005 21:55:39 -0000 1.16 *************** *** 72,76 **** * and other sundry minor warnings given by gcc * fixed hash (delegating to Python) so mp[nqz](x) will ! * hash to the same value of x for any Python number x * workaround for GMP 3.1.1 bug, mpz_root wrongly returning * 'exact' for non-exact root if dest==source, which stopped --- 72,76 ---- * and other sundry minor warnings given by gcc * fixed hash (delegating to Python) so mp[nqz](x) will ! * produce the same value as hash(x) for any Python number x * workaround for GMP 3.1.1 bug, mpz_root wrongly returning * 'exact' for non-exact root if dest==source, which stopped *************** *** 110,119 **** * 1.01: * cleanups, ensure support for Python 2.4.1 on MacOSX 10.4/XCode 2.1 * fixed memory leak on divm * fixed bug on mpq('123') [[str2mpq on string w/o a slash]] ! * added floordiv and truediv operators * * TODO: look deeper into divm (when operands are not mutually prime) - * add tests of floordiv and truediv * */ --- 110,119 ---- * 1.01: * cleanups, ensure support for Python 2.4.1 on MacOSX 10.4/XCode 2.1 + * as well as Python 2.2 and 2.3 (on MacOSX and Linux) * fixed memory leak on divm * fixed bug on mpq('123') [[str2mpq on string w/o a slash]] ! * added floordiv and truediv operators, and tests for them * * TODO: look deeper into divm (when operands are not mutually prime) * */ *************** *** 131,135 **** /* so one won't need to link explicitly to gmp.lib...: */ # pragma comment(lib,"gmp.lib") ! /* fix anomalies of .h vs .lib on Windows, also, use alloca */ #undef mpq_out_str size_t mpq_out_str _PROTO ((FILE *, int, mpq_srcptr)); --- 131,135 ---- /* so one won't need to link explicitly to gmp.lib...: */ # pragma comment(lib,"gmp.lib") ! /* fix anomalies of .h vs .lib on Windows; also, use alloca */ #undef mpq_out_str size_t mpq_out_str _PROTO ((FILE *, int, mpq_srcptr)); *************** *** 4357,4360 **** --- 4357,4361 ---- { PympzObject *num, *den, *mod, *res; + int ok; if(!PyArg_ParseTuple(args, "O&O&O&", *************** *** 4368,4371 **** --- 4369,4388 ---- return NULL; if(mpz_invert(res->z, den->z, mod->z)) { /* inverse exists */ + ok = 1; + } else { + /* last-ditch attempt: do num, den AND mod have a gcd>1 ? */ + PympzObject *gcd; + if(!(gcd = Pympz_new())) + return NULL; + mpz_gcd(gcd->z, num->z, den->z); + mpz_gcd(gcd->z, gcd->z, mod->z); + mpz_divexact(num->z, num->z, gcd->z); + mpz_divexact(den->z, den->z, gcd->z); + mpz_divexact(mod->z, mod->z, gcd->z); + Py_DECREF((PyObject*)gcd); + ok = mpz_invert(res->z, den->z, mod->z); + } + + if (ok) { mpz_mul(res->z, res->z, num->z); mpz_mod(res->z, res->z, mod->z); |
From: Alex M. <al...@us...> - 2005-11-07 21:04:42
|
Update of /cvsroot/gmpy/gmpy/test In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv7947 Modified Files: gmpy_test.py gmpy_test_mpf.py gmpy_test_mpq.py gmpy_test_mpz.py Added Files: gmpy_truediv.py Log Message: Added tests for truediv and floordiv. --- NEW FILE: gmpy_truediv.py --- from __future__ import division def truediv(a, b): return a/b Index: gmpy_test.py =================================================================== RCS file: /cvsroot/gmpy/gmpy/test/gmpy_test.py,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** gmpy_test.py 6 Nov 2005 03:14:41 -0000 1.4 --- gmpy_test.py 7 Nov 2005 21:04:31 -0000 1.5 *************** *** 20,29 **** test_modules = (gmpy_test_cvr, gmpy_test_rnd, gmpy_test_mpf, ! gmpy_test_mpq, gmpy_test_mpz ) _g = gmpy print "Unit tests for gmpy 1.01 release candidate" ! print " on Python",sys.version print "Testing gmpy %s (GMP %s), default caching (%s, %s, %s..%s)" % ( (_g.version(), _g.gmp_version(), _g.get_zcache(), _g.get_qcache(), --- 20,29 ---- test_modules = (gmpy_test_cvr, gmpy_test_rnd, gmpy_test_mpf, ! gmpy_test_mpq, gmpy_test_mpz, ) _g = gmpy print "Unit tests for gmpy 1.01 release candidate" ! print " on Python", sys.version print "Testing gmpy %s (GMP %s), default caching (%s, %s, %s..%s)" % ( (_g.version(), _g.gmp_version(), _g.get_zcache(), _g.get_qcache(), Index: gmpy_test_mpf.py =================================================================== RCS file: /cvsroot/gmpy/gmpy/test/gmpy_test_mpf.py,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** gmpy_test_mpf.py 23 Dec 2004 08:11:14 -0000 1.4 --- gmpy_test_mpf.py 7 Nov 2005 21:04:31 -0000 1.5 *************** *** 125,128 **** --- 125,147 ---- ''' + from gmpy_truediv import truediv + __test__['newdiv']=\ + r''' + >>> + >>> a/b + mpf('1.56447093799065544915e-1') + >>> a//b + mpf('0.e0') + >>> truediv(a,b) + mpf('1.56447093799065544915e-1') + >>> b/a + mpf('6.39193720839813374806e0') + >>> b//a + mpf('6.e0') + >>> truediv(b,a) + mpf('6.39193720839813374806e0') + >>> + ''' + __test__['cmpr']=\ r''' Index: gmpy_test_mpq.py =================================================================== RCS file: /cvsroot/gmpy/gmpy/test/gmpy_test_mpq.py,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** gmpy_test_mpq.py 7 Nov 2005 00:43:55 -0000 1.4 --- gmpy_test_mpq.py 7 Nov 2005 21:04:31 -0000 1.5 *************** *** 81,84 **** --- 81,102 ---- ''' + from gmpy_truediv import truediv + __test__['newdiv']=\ + r''' + >>> a/b + mpq(1681,39976) + >>> a//b + mpq(0) + >>> truediv(a,b) + mpf('4.20502301380828497101e-2') + >>> b/a + mpq(39976,1681) + >>> b//a + mpq(23) + >>> truediv(b,a) + mpf('2.37810826888756692443e1') + >>> + ''' + __test__['cmpr']=\ r''' Index: gmpy_test_mpz.py =================================================================== RCS file: /cvsroot/gmpy/gmpy/test/gmpy_test_mpz.py,v retrieving revision 1.7 retrieving revision 1.8 diff -C2 -d -r1.7 -r1.8 *** gmpy_test_mpz.py 7 Nov 2005 19:21:16 -0000 1.7 --- gmpy_test_mpz.py 7 Nov 2005 21:04:31 -0000 1.8 *************** *** 100,103 **** --- 100,121 ---- ''' + from gmpy_truediv import truediv + __test__['newdiv']=\ + r''' + >>> a/b + mpz(0) + >>> a//b + mpz(0) + >>> truediv(a,b) + mpf('2.69736842105263157895e-1') + >>> b/a + mpz(3) + >>> b//a + mpz(3) + >>> truediv(b,a) + mpf('3.70731707317073170732e0') + >>> + ''' + __test__['cmpr']=\ r''' |
From: Alex M. <al...@us...> - 2005-11-07 19:21:24
|
Update of /cvsroot/gmpy/gmpy/test In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv14385 Modified Files: gmpy_test_cvr.py gmpy_test_mpz.py Log Message: Tweaked tests to pass on Python 2.2 (as well as 2.3, 2.4); disabled attempts to check memory leaks except in Linux and Darwin (MacOSX). Index: gmpy_test_cvr.py =================================================================== RCS file: /cvsroot/gmpy/gmpy/test/gmpy_test_cvr.py,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** gmpy_test_cvr.py 6 Nov 2005 03:14:41 -0000 1.4 --- gmpy_test_cvr.py 7 Nov 2005 19:21:16 -0000 1.5 *************** *** 3,8 **** # test-version 1.01 r''' ! >>> _g.gmp_version() in ('4.1.4', '4.0.1', '3.1.1') ! True >>> _g.version() '1.01' --- 3,8 ---- # test-version 1.01 r''' ! >>> print int(_g.gmp_version() in ('4.1.4', '4.1.2', '4.0.1', '3.1.1')) ! 1 >>> _g.version() '1.01' Index: gmpy_test_mpz.py =================================================================== RCS file: /cvsroot/gmpy/gmpy/test/gmpy_test_mpz.py,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** gmpy_test_mpz.py 7 Nov 2005 18:08:17 -0000 1.6 --- gmpy_test_mpz.py 7 Nov 2005 19:21:16 -0000 1.7 *************** *** 15,27 **** b=_g.mpz(456) ! def _memsize(): ! """ this function tries to return a measurement of how much memory ! this process is consuming (if it doesn't manage to, it returns 0). ! """ ! import os ! try: x = int(os.popen('ps -p %d -o vsz|tail -1' % os.getpid()).read()) ! except: x = 0 ! # print 'ms:', x ! return x def factorize(x): --- 15,31 ---- b=_g.mpz(456) ! if sys.platform in ('linux2', 'darwin'): ! def _memsize(): ! """ this function tries to return a measurement of how much memory ! this process is consuming (if it doesn't manage to, it returns 0). ! """ ! import os ! try: x = int(os.popen('ps -p %d -o vsz|tail -1' % os.getpid()).read()) ! except: x = 0 ! # print 'ms:', x ! return x ! else: ! def _memsize(): ! return 0 def factorize(x): |
From: Alex M. <al...@us...> - 2005-11-07 18:08:26
|
Update of /cvsroot/gmpy/gmpy/test In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv21889 Modified Files: gmpy_test_mpz.py gmpy_test_rnd.py Log Message: Fix 2 tests so they run properly on Python 2.3 (as well as 2.4) Index: gmpy_test_mpz.py =================================================================== RCS file: /cvsroot/gmpy/gmpy/test/gmpy_test_mpz.py,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** gmpy_test_mpz.py 6 Nov 2005 03:32:04 -0000 1.5 --- gmpy_test_mpz.py 7 Nov 2005 18:08:17 -0000 1.6 *************** *** 396,400 **** mpz(0) >>> _siz = _memsize() ! >>> for x in xrange(45678): _xx=_g.divm(b,a,20) >>> del _xx >>> _memsize()-_siz --- 396,401 ---- mpz(0) >>> _siz = _memsize() ! >>> for x in xrange(45678): ! ... _xx=_g.divm(b,a,20) >>> del _xx >>> _memsize()-_siz Index: gmpy_test_rnd.py =================================================================== RCS file: /cvsroot/gmpy/gmpy/test/gmpy_test_rnd.py,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** gmpy_test_rnd.py 6 Nov 2005 03:14:41 -0000 1.3 --- gmpy_test_rnd.py 7 Nov 2005 18:08:17 -0000 1.4 *************** *** 118,125 **** >>> ''' def _test(chat=None): if chat: print "Unit tests for gmpy 1.01 release candidate (rand functionality)" ! print " running on Python",sys.version print print "Testing gmpy %s (GMP %s) with default caching (%s, %s..%s)" % ( --- 118,131 ---- >>> ''' + + # adapt to python 2.3's slightly different error message in an exception + import sys + if sys.version<'2.4': + __test__['rand'] = __test__['rand'].replace("does not", "doesn't") + def _test(chat=None): if chat: print "Unit tests for gmpy 1.01 release candidate (rand functionality)" ! print " running on Python", sys.version print print "Testing gmpy %s (GMP %s) with default caching (%s, %s..%s)" % ( |
From: Alex M. <al...@us...> - 2005-11-07 15:43:33
|
Update of /cvsroot/gmpy/gmpy/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv8213/src Modified Files: gmpy.c Log Message: Added CVS Id Index: gmpy.c =================================================================== RCS file: /cvsroot/gmpy/gmpy/src/gmpy.c,v retrieving revision 1.14 retrieving revision 1.15 diff -C2 -d -r1.14 -r1.15 *** gmpy.c 7 Nov 2005 05:29:24 -0000 1.14 --- gmpy.c 7 Nov 2005 15:43:24 -0000 1.15 *************** *** 112,119 **** * fixed memory leak on divm * fixed bug on mpq('123') [[str2mpq on string w/o a slash]] ! * added floordiv and truediv operators (to mpz only) * * TODO: look deeper into divm (when operands are not mutually prime) ! * add floordiv and truediv to mpq and mpf * */ --- 112,119 ---- * fixed memory leak on divm * fixed bug on mpq('123') [[str2mpq on string w/o a slash]] ! * added floordiv and truediv operators * * TODO: look deeper into divm (when operands are not mutually prime) ! * add tests of floordiv and truediv * */ *************** *** 142,145 **** --- 142,147 ---- char gmpy_version[] = "1.01"; + char _gmpy_cvs[] = "$Id$"; + /* * we do have a dependence on Python's internals, specifically: *************** *** 499,503 **** } /* Pympz_dealloc */ ! /* return GMPY, resp. GMP, versions, as strings */ static char doc_version[]="\ version(): returns string giving current GMPY version\n\ --- 501,505 ---- } /* Pympz_dealloc */ ! /* return GMPY, resp. GMP, versions, or CVS Id, as strings */ static char doc_version[]="\ version(): returns string giving current GMPY version\n\ *************** *** 509,512 **** --- 511,523 ---- return Py_BuildValue("s", gmpy_version); } + static char doc_cvsid[]="\ + _cvsid(): returns string giving current GMPY cvs Id\n\ + "; + static PyObject * + Pygmpy_get_cvsid(PyObject *self, PyObject *args) + { + NO_ARGS(); + return Py_BuildValue("s", _gmpy_cvs); + } static char doc_gmp_version[]="\ gmp_version(): returns string giving current GMP version\n\ *************** *** 5431,5434 **** --- 5442,5446 ---- { { "version", Pygmpy_get_version, 1, doc_version }, + { "_cvsid", Pygmpy_get_cvsid, 1, doc_cvsid }, { "gmp_version", Pygmpy_get_gmp_version, 1, doc_gmp_version }, { "set_debug", Pygmpy_set_debug, 1, doc_set_debug }, |
From: Alex M. <al...@us...> - 2005-11-07 05:29:33
|
Update of /cvsroot/gmpy/gmpy/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv16850/src Modified Files: gmpy.c Log Message: Add floordiv and truediv implementations to mpz, mpq, mpf (unittests still need to be added). Index: gmpy.c =================================================================== RCS file: /cvsroot/gmpy/gmpy/src/gmpy.c,v retrieving revision 1.13 retrieving revision 1.14 diff -C2 -d -r1.13 -r1.14 *** gmpy.c 7 Nov 2005 04:07:04 -0000 1.13 --- gmpy.c 7 Nov 2005 05:29:24 -0000 1.14 *************** *** 3508,3511 **** --- 3508,3560 ---- static PyObject * + Pympany_truediv(PyObject *a, PyObject *b) + { + PympfObject *pa = anynum2mpf(a, 0); + PympfObject *pb = anynum2mpf(b, 0); + PyObject *result; + if (!pa || !pb) return 0; + result = Pympf_div(pa, pb); + Py_DECREF((PyObject*)pa); + Py_DECREF((PyObject*)pb); + return result; + } + + static PyObject * + Pympq_floordiv(PyObject *a, PyObject *b) + { + PympfObject *pa = anynum2mpf(a, 0); + PympfObject *pb = anynum2mpf(b, 0); + PyObject *result; + if (!pa || !pb) return 0; + result = Pympf_div(pa, pb); + Py_DECREF((PyObject*)pa); + Py_DECREF((PyObject*)pb); + if( result) { + result = (PyObject*) anynum2mpz(result); + if (result) + result = (PyObject*) anynum2mpq(result); + } + return result; + } + + static PyObject * + Pympf_floordiv(PyObject *a, PyObject *b) + { + PympfObject *pa = anynum2mpf(a, 0); + PympfObject *pb = anynum2mpf(b, 0); + PyObject *result; + if (!pa || !pb) return 0; + result = Pympf_div(pa, pb); + Py_DECREF((PyObject*)pa); + Py_DECREF((PyObject*)pb); + if( result) { + result = (PyObject*) anynum2mpz(result); + if (result) + result = (PyObject*) anynum2mpf(result, 0); + } + return result; + } + + static PyObject * Pympz_divmod(PympzObject *a, PympzObject *b) { *************** *** 5287,5292 **** 0, /* binaryfunc nb_inplace_or; */ ! (binaryfunc) Pympz_div, /* binaryfunc nb_floor_divide; */ ! (binaryfunc) Pympf_div, /* binaryfunc nb_true_divide; */ 0, /* binaryfunc nb_inplace_floor_divide; */ 0, /* binaryfunc nb_inplace_true_divide; */ --- 5336,5341 ---- 0, /* binaryfunc nb_inplace_or; */ ! (binaryfunc) Pympz_div, /* binaryfunc nb_floor_divide; */ ! (binaryfunc) Pympany_truediv, /* binaryfunc nb_true_divide; */ 0, /* binaryfunc nb_inplace_floor_divide; */ 0, /* binaryfunc nb_inplace_true_divide; */ *************** *** 5318,5321 **** --- 5367,5386 ---- (unaryfunc) 0, /* no oct */ (unaryfunc) 0, /* no hex */ + 0, /* binaryfunc nb_inplace_add; */ + 0, /* binaryfunc nb_inplace_subtract; */ + 0, /* binaryfunc nb_inplace_multiply; */ + 0, /* binaryfunc nb_inplace_divide; */ + 0, /* binaryfunc nb_inplace_remainder; */ + 0, /* ternaryfunc nb_inplace_power; */ + 0, /* binaryfunc nb_inplace_lshift; */ + 0, /* binaryfunc nb_inplace_rshift; */ + 0, /* binaryfunc nb_inplace_and; */ + 0, /* binaryfunc nb_inplace_xor; */ + 0, /* binaryfunc nb_inplace_or; */ + + (binaryfunc) Pympq_floordiv, /* binaryfunc nb_floor_divide; */ + (binaryfunc) Pympany_truediv, /* binaryfunc nb_true_divide; */ + 0, /* binaryfunc nb_inplace_floor_divide; */ + 0, /* binaryfunc nb_inplace_true_divide; */ }; *************** *** 5345,5348 **** --- 5410,5429 ---- (unaryfunc) 0, /* no oct */ (unaryfunc) 0, /* no hex */ + 0, /* binaryfunc nb_inplace_add; */ + 0, /* binaryfunc nb_inplace_subtract; */ + 0, /* binaryfunc nb_inplace_multiply; */ + 0, /* binaryfunc nb_inplace_divide; */ + 0, /* binaryfunc nb_inplace_remainder; */ + 0, /* ternaryfunc nb_inplace_power; */ + 0, /* binaryfunc nb_inplace_lshift; */ + 0, /* binaryfunc nb_inplace_rshift; */ + 0, /* binaryfunc nb_inplace_and; */ + 0, /* binaryfunc nb_inplace_xor; */ + 0, /* binaryfunc nb_inplace_or; */ + + (binaryfunc) Pympf_floordiv, /* binaryfunc nb_floor_divide; */ + (binaryfunc) Pympany_truediv, /* binaryfunc nb_true_divide; */ + 0, /* binaryfunc nb_inplace_floor_divide; */ + 0, /* binaryfunc nb_inplace_true_divide; */ }; |
From: Alex M. <al...@us...> - 2005-11-07 04:07:14
|
Update of /cvsroot/gmpy/gmpy/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv31274/src Modified Files: gmpy.c gmpy.h Log Message: Added truediv and floordiv (for mpz only, for now). Index: gmpy.c =================================================================== RCS file: /cvsroot/gmpy/gmpy/src/gmpy.c,v retrieving revision 1.12 retrieving revision 1.13 diff -C2 -d -r1.12 -r1.13 *** gmpy.c 7 Nov 2005 00:43:55 -0000 1.12 --- gmpy.c 7 Nov 2005 04:07:04 -0000 1.13 *************** *** 110,113 **** --- 110,119 ---- * 1.01: * cleanups, ensure support for Python 2.4.1 on MacOSX 10.4/XCode 2.1 + * fixed memory leak on divm + * fixed bug on mpq('123') [[str2mpq on string w/o a slash]] + * added floordiv and truediv operators (to mpz only) + * + * TODO: look deeper into divm (when operands are not mutually prime) + * add floordiv and truediv to mpq and mpf * */ *************** *** 159,167 **** long maxzco; /* max mpz that will come as constant (exclusive) */ long qcache; /* size of cache for mpq objects */ ! PyObject* fcoform; /* if !=0, format for float->mpf (via string) */ ! PyObject* ZD_cb; ! PyObject* ZM_cb; ! PyObject* ER_cb; ! PyObject* AT_cb; } options = { 0, 0, 5, 20, -2, 11, 20, 0, 0, 0, 0 }; --- 165,180 ---- long maxzco; /* max mpz that will come as constant (exclusive) */ long qcache; /* size of cache for mpq objects */ ! PyObject* fcoform; /* if non-NULL, format for float->mpf (via string) */ ! /* experimental callbacks for various anomalous cases; if a callback ! is non-NULL, it's called to supply a result or raise an appropriate ! specialized exception, rather than (as per default) gmpy raising a ! normal exception or computing nthe result directly. By request of ! Pearu Peterson, to ease use of gmpy in symbolic computations. ! */ ! PyObject* ZD_cb; /* division by zero */ ! PyObject* ZM_cb; /* multiplication by zero */ ! PyObject* ER_cb; /* erroneous arguments to functions/methods */ ! PyObject* AT_cb; /* getattr-like "as last resort try calling this" ! for getting of attributes from mpz &c instances */ } options = { 0, 0, 5, 20, -2, 11, 20, 0, 0, 0, 0 }; *************** *** 289,293 **** static void mpq_cloc(mpq_t oldo) mpq_cloc_m(oldo) ! /* forward of type-objects and method-arrays for them */ staticforward PyTypeObject Pympz_Type; staticforward PyTypeObject Pympq_Type; --- 302,306 ---- static void mpq_cloc(mpq_t oldo) mpq_cloc_m(oldo) ! /* forward declarations of type-objects and method-arrays for them */ staticforward PyTypeObject Pympz_Type; staticforward PyTypeObject Pympq_Type; *************** *** 5262,5265 **** --- 5275,5294 ---- (unaryfunc) Pympz_oct, (unaryfunc) Pympz_hex, + 0, /* binaryfunc nb_inplace_add; */ + 0, /* binaryfunc nb_inplace_subtract; */ + 0, /* binaryfunc nb_inplace_multiply; */ + 0, /* binaryfunc nb_inplace_divide; */ + 0, /* binaryfunc nb_inplace_remainder; */ + 0, /* ternaryfunc nb_inplace_power; */ + 0, /* binaryfunc nb_inplace_lshift; */ + 0, /* binaryfunc nb_inplace_rshift; */ + 0, /* binaryfunc nb_inplace_and; */ + 0, /* binaryfunc nb_inplace_xor; */ + 0, /* binaryfunc nb_inplace_or; */ + + (binaryfunc) Pympz_div, /* binaryfunc nb_floor_divide; */ + (binaryfunc) Pympf_div, /* binaryfunc nb_true_divide; */ + 0, /* binaryfunc nb_inplace_floor_divide; */ + 0, /* binaryfunc nb_inplace_true_divide; */ }; Index: gmpy.h =================================================================== RCS file: /cvsroot/gmpy/gmpy/src/gmpy.h,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** gmpy.h 6 Nov 2005 03:14:41 -0000 1.3 --- gmpy.h 7 Nov 2005 04:07:04 -0000 1.4 *************** *** 142,146 **** #else ! /* This section is used in modules that use gmpy's API */ static void **Pygmpy_API; --- 142,146 ---- #else ! /* This section is used in other C-coded modules that use gmpy's API */ static void **Pygmpy_API; |
From: Alex M. <al...@us...> - 2005-11-07 00:44:06
|
Update of /cvsroot/gmpy/gmpy/test In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv23242/test Modified Files: gmpy_test_mpq.py Log Message: Fixed 823208 (str2mpq failed to initialize denominator when the argument string contained no slash), added unit test checking that. Index: gmpy_test_mpq.py =================================================================== RCS file: /cvsroot/gmpy/gmpy/test/gmpy_test_mpq.py,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** gmpy_test_mpq.py 6 Nov 2005 03:14:41 -0000 1.3 --- gmpy_test_mpq.py 7 Nov 2005 00:43:55 -0000 1.4 *************** *** 203,207 **** File "<stdin>", line 1, in ? TypeError: argument can not be converted to mpq ! >>> ''' --- 203,211 ---- File "<stdin>", line 1, in ? TypeError: argument can not be converted to mpq ! >>> x=_g.mpq('234/567') ! >>> del x ! >>> _g.mpq('7788') ! mpq(7788) ! >>> ''' |
From: Alex M. <al...@us...> - 2005-11-07 00:44:03
|
Update of /cvsroot/gmpy/gmpy/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv23242/src Modified Files: gmpy.c Log Message: Fixed 823208 (str2mpq failed to initialize denominator when the argument string contained no slash), added unit test checking that. Index: gmpy.c =================================================================== RCS file: /cvsroot/gmpy/gmpy/src/gmpy.c,v retrieving revision 1.11 retrieving revision 1.12 diff -C2 -d -r1.11 -r1.12 *** gmpy.c 6 Nov 2005 03:32:04 -0000 1.11 --- gmpy.c 7 Nov 2005 00:43:55 -0000 1.12 *************** *** 1169,1172 **** --- 1169,1174 ---- } mpq_canonicalize(newob->q); + } else { + mpz_set_ui(mpq_denref (newob->q), 1); } } |
From: Alex M. <al...@us...> - 2005-11-06 03:32:16
|
Update of /cvsroot/gmpy/gmpy/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv15116/src Modified Files: gmpy.c Log Message: Fixed bug with cmp of different-sign mpz instances Index: gmpy.c =================================================================== RCS file: /cvsroot/gmpy/gmpy/src/gmpy.c,v retrieving revision 1.10 retrieving revision 1.11 diff -C2 -d -r1.10 -r1.11 *** gmpy.c 6 Nov 2005 03:14:41 -0000 1.10 --- gmpy.c 6 Nov 2005 03:32:04 -0000 1.11 *************** *** 3899,3903 **** Pympz_cmp(PympzObject *a, PympzObject *b) { ! return mpz_cmp(a->z, b->z); } static int --- 3899,3912 ---- Pympz_cmp(PympzObject *a, PympzObject *b) { ! int result = mpz_cmp(a->z, b->z); ! if(result) { ! if(result>0) { ! return 1; ! } else { ! return -1; ! } ! } else { ! return 0; ! } } static int |
From: Alex M. <al...@us...> - 2005-11-06 03:32:16
|
Update of /cvsroot/gmpy/gmpy/test In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv15116/test Modified Files: gmpy_test_mpz.py Log Message: Fixed bug with cmp of different-sign mpz instances Index: gmpy_test_mpz.py =================================================================== RCS file: /cvsroot/gmpy/gmpy/test/gmpy_test_mpz.py,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** gmpy_test_mpz.py 6 Nov 2005 03:14:41 -0000 1.4 --- gmpy_test_mpz.py 6 Nov 2005 03:32:04 -0000 1.5 *************** *** 141,145 **** >>> _g.mpz(x) mpz(1000000000000L) ! >>> ''' --- 141,147 ---- >>> _g.mpz(x) mpz(1000000000000L) ! >>> try: print cmp(_g.mpz(1), _g.mpz(-1)) ! ... except: print 'ouch!' ! 1 ''' |
From: Alex M. <al...@us...> - 2005-11-06 03:14:49
|
Update of /cvsroot/gmpy/gmpy/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv12508/src Modified Files: gmpy.c gmpy.h Log Message: Brought up to date with latest GMP release and MacOSX 10.4's XCode Fixed memory leak in divm Index: gmpy.c =================================================================== RCS file: /cvsroot/gmpy/gmpy/src/gmpy.c,v retrieving revision 1.9 retrieving revision 1.10 diff -C2 -d -r1.9 -r1.10 *** gmpy.c 23 Dec 2004 08:11:08 -0000 1.9 --- gmpy.c 6 Nov 2005 03:14:41 -0000 1.10 *************** *** 8,11 **** --- 8,12 ---- * addition of mpf's, &c: Alex Martelli (al...@ya..., Nov 2000). * cleanups & reorgs leading to 1.0: Alex Martelli (until Aug 2003) + * further cleanups and bugfixes leading to 1.01, Alex Martelli (Nov 2005) * * Some hacks by Gustavo Niemeyer <nie...@co...>. *************** *** 107,110 **** --- 108,114 ---- * SELF_ONE_ARG_CONVERTED (tx to Paul Rubin!) * + * 1.01: + * cleanups, ensure support for Python 2.4.1 on MacOSX 10.4/XCode 2.1 + * */ #include "pymemcompat.h" *************** *** 126,132 **** #define USE_ALLOCA 1 #define alloca _alloca #endif ! char gmpy_version[] = "1.0"; /* --- 130,138 ---- #define USE_ALLOCA 1 #define alloca _alloca + #undef staticforward + #define staticforward extern #endif ! char gmpy_version[] = "1.01"; /* *************** *** 1012,1016 **** len = PyString_Size(s); ! cp = PyString_AsString(s); if(256 == base) { --- 1018,1022 ---- len = PyString_Size(s); ! cp = (unsigned char*)PyString_AsString(s); if(256 == base) { *************** *** 1046,1050 **** } /* delegate rest to GMP's _set_str function */ ! if(-1 == mpz_set_str(newob->z, cp, base)) { PyErr_SetString(PyExc_ValueError, "invalid digits"); Py_DECREF((PyObject *) newob); --- 1052,1056 ---- } /* delegate rest to GMP's _set_str function */ ! if(-1 == mpz_set_str(newob->z, (char*)cp, base)) { PyErr_SetString(PyExc_ValueError, "invalid digits"); Py_DECREF((PyObject *) newob); *************** *** 1078,1082 **** len = PyString_Size(stringarg); ! cp = PyString_AsString(stringarg); if(256 == base) { --- 1084,1088 ---- len = PyString_Size(stringarg); ! cp = (unsigned char*)PyString_AsString(stringarg); if(256 == base) { *************** *** 1098,1102 **** return 0; } ! s = PyString_FromStringAndSize(cp+4, numlen); numerator = str2mpz(s,256); Py_DECREF(s); --- 1104,1108 ---- return 0; } ! s = PyString_FromStringAndSize((char*)cp+4, numlen); numerator = str2mpz(s,256); Py_DECREF(s); *************** *** 1109,1113 **** if(isnega) mpz_neg(numerator->z, numerator->z); ! s = PyString_FromStringAndSize(cp+4+numlen, len-4-numlen); denominator = str2mpz(s,256); Py_DECREF(s); --- 1115,1119 ---- if(isnega) mpz_neg(numerator->z, numerator->z); ! s = PyString_FromStringAndSize((char*)cp+4+numlen, len-4-numlen); denominator = str2mpz(s,256); Py_DECREF(s); *************** *** 1136,1142 **** /* trickily delegate the rest to GMP avoiding allocations/copies */ { ! char* whereslash = strchr(cp,'/'); if(whereslash) *whereslash = 0; ! if(-1 == mpz_set_str(mpq_numref(newob->q), cp, base)) { if(whereslash) *whereslash = '/'; PyErr_SetString(PyExc_ValueError, "invalid digits"); --- 1142,1148 ---- /* trickily delegate the rest to GMP avoiding allocations/copies */ { ! char* whereslash = strchr((char*)cp,'/'); if(whereslash) *whereslash = 0; ! if(-1 == mpz_set_str(mpq_numref(newob->q), (char*)cp, base)) { if(whereslash) *whereslash = '/'; PyErr_SetString(PyExc_ValueError, "invalid digits"); *************** *** 1184,1196 **** assert(PyString_Check(s)); len = PyString_Size(s); ! cp = PyString_AsString(s); ! ! /*** ! * fprintf(stderr, "len is %d, cb=%d\n", len, *cp); ! * fprintf(stderr, "the string is: "); ! * for(i=0; i<len; ++i) ! * fprintf(stderr, "%2.2x ", cp[i]); ! * fprintf(stderr,"\n"); ! ***/ if(bits>0) { --- 1190,1194 ---- assert(PyString_Check(s)); len = PyString_Size(s); ! cp = (unsigned char*)PyString_AsString(s); if(bits>0) { *************** *** 1213,1217 **** if(!(newob = Pympf_new(precision))) return NULL; ! if(256 == base) { /* --- 1211,1215 ---- if(!(newob = Pympf_new(precision))) return NULL; ! if(256 == base) { /* *************** *** 1232,1240 **** unsigned int expomag = 0; - /*** - * fprintf(stderr, "cb=%d, resusi=%d, exposi=%d, resuze=%d, precilen=%d\n", - * codebyte, resusign, exposign, resuzero, precilen); - ***/ - /* mpf zero has a very compact (1-byte) binary encoding!-) */ if(resuzero) { --- 1230,1233 ---- *************** *** 1285,1289 **** } /* delegate the rest to GMP */ ! if(-1 == mpf_set_str(newob->f, cp, base)) { PyErr_SetString(PyExc_ValueError, "invalid digits"); --- 1278,1282 ---- } /* delegate the rest to GMP */ ! if(-1 == mpf_set_str(newob->f, (char*)cp, base)) { PyErr_SetString(PyExc_ValueError, "invalid digits"); *************** *** 1596,1600 **** /* prepare codebyte */ sign = mpf_sgn(x->f); - /* fprintf(stderr, "sign is %d\n", sign); */ if(sign==0) { /* 0 -> single codebyte with 'zerovalue' bit set */ --- 1589,1592 ---- *************** *** 4306,4309 **** --- 4298,4304 ---- } } + Py_DECREF((PyObject*)num); + Py_DECREF((PyObject*)den); + Py_DECREF((PyObject*)mod); return (PyObject*)res; } else { *************** *** 4315,4318 **** --- 4310,4316 ---- PyErr_SetString(PyExc_ZeroDivisionError, "not invertible"); } + Py_DECREF((PyObject*)num); + Py_DECREF((PyObject*)den); + Py_DECREF((PyObject*)mod); Py_DECREF((PyObject*)res); return result; *************** *** 4435,4439 **** mpf_mul_ui(ix, ix, 2); /* Check for convergence */ ! if (!(mpf_cmp_si(r_i2, 0) && mpf_get_prec(r_i2) >= precision)) { mpf_mul(pi->f, pi->f, r_i4); mpf_div(pi->f, pi->f, r_i3); --- 4433,4438 ---- mpf_mul_ui(ix, ix, 2); /* Check for convergence */ ! if (!(mpf_cmp_si(r_i2, 0) && ! mpf_get_prec(r_i2) >= (unsigned)precision)) { mpf_mul(pi->f, pi->f, r_i4); mpf_div(pi->f, pi->f, r_i3); Index: gmpy.h =================================================================== RCS file: /cvsroot/gmpy/gmpy/src/gmpy.h,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** gmpy.h 8 Aug 2003 08:57:05 -0000 1.2 --- gmpy.h 6 Nov 2005 03:14:41 -0000 1.3 *************** *** 5,9 **** Created by Pearu Peterson <pe...@ce...>, November 2000. Edited by A. Martelli <al...@ya...>, December 2000. ! Version 1.0, August 2003. */ --- 5,9 ---- Created by Pearu Peterson <pe...@ce...>, November 2000. Edited by A. Martelli <al...@ya...>, December 2000. ! Version 1.01, November 2005. */ *************** *** 100,108 **** #ifdef GMPY_MODULE /* This section is used when compiling gmpy.c */ ! extern PyTypeObject Pympz_Type; #define Pympz_Check(v) (((PyObject*)v)->ob_type == &Pympz_Type) ! extern PyTypeObject Pympq_Type; #define Pympq_Check(v) (((PyObject*)v)->ob_type == &Pympq_Type) ! extern PyTypeObject Pympf_Type; #define Pympf_Check(v) (((PyObject*)v)->ob_type == &Pympf_Type) --- 100,108 ---- #ifdef GMPY_MODULE /* This section is used when compiling gmpy.c */ ! staticforward PyTypeObject Pympz_Type; #define Pympz_Check(v) (((PyObject*)v)->ob_type == &Pympz_Type) ! staticforward PyTypeObject Pympq_Type; #define Pympq_Check(v) (((PyObject*)v)->ob_type == &Pympq_Type) ! staticforward PyTypeObject Pympf_Type; #define Pympf_Check(v) (((PyObject*)v)->ob_type == &Pympf_Type) |
From: Alex M. <al...@us...> - 2005-11-06 03:14:49
|
Update of /cvsroot/gmpy/gmpy/test In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv12508/test Modified Files: gmpy_test.py gmpy_test_cvr.py gmpy_test_mpq.py gmpy_test_mpz.py gmpy_test_rnd.py Log Message: Brought up to date with latest GMP release and MacOSX 10.4's XCode Fixed memory leak in divm Index: gmpy_test.py =================================================================== RCS file: /cvsroot/gmpy/gmpy/test/gmpy_test.py,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** gmpy_test.py 23 Dec 2004 08:11:09 -0000 1.3 --- gmpy_test.py 6 Nov 2005 03:14:41 -0000 1.4 *************** *** 24,28 **** _g = gmpy ! print "Unit tests for gmpy 1.0 release candidate" print " on Python",sys.version print "Testing gmpy %s (GMP %s), default caching (%s, %s, %s..%s)" % ( --- 24,28 ---- _g = gmpy ! print "Unit tests for gmpy 1.01 release candidate" print " on Python",sys.version print "Testing gmpy %s (GMP %s), default caching (%s, %s, %s..%s)" % ( Index: gmpy_test_cvr.py =================================================================== RCS file: /cvsroot/gmpy/gmpy/test/gmpy_test_cvr.py,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** gmpy_test_cvr.py 23 Dec 2004 08:11:14 -0000 1.3 --- gmpy_test_cvr.py 6 Nov 2005 03:14:41 -0000 1.4 *************** *** 1,10 **** ! # partial unit test for gmpy 1.0 extra cover # relies on Tim Peters' "doctest.py" test-driver ! # test-version 1.0 r''' >>> _g.gmp_version() in ('4.1.4', '4.0.1', '3.1.1') True >>> _g.version() ! '1.0' ''' --- 1,10 ---- ! # partial unit test for gmpy 1.01 extra cover # relies on Tim Peters' "doctest.py" test-driver ! # test-version 1.01 r''' >>> _g.gmp_version() in ('4.1.4', '4.0.1', '3.1.1') True >>> _g.version() ! '1.01' ''' *************** *** 463,467 **** def _test(chat=None): if chat: ! print "Unit tests for gmpy 1.0 release candidate (extra cover)" print " running on Python",sys.version print --- 463,467 ---- def _test(chat=None): if chat: ! print "Unit tests for gmpy 1.01 release candidate (extra cover)" print " running on Python",sys.version print Index: gmpy_test_mpq.py =================================================================== RCS file: /cvsroot/gmpy/gmpy/test/gmpy_test_mpq.py,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** gmpy_test_mpq.py 23 Dec 2004 08:11:14 -0000 1.2 --- gmpy_test_mpq.py 6 Nov 2005 03:14:41 -0000 1.3 *************** *** 293,297 **** def _test(chat=None): if chat: ! print "Unit tests for gmpy 1.0 release candidate (mpq functionality)" print " running on Python",sys.version print --- 293,297 ---- def _test(chat=None): if chat: ! print "Unit tests for gmpy 1.01 release candidate (mpq functionality)" print " running on Python",sys.version print Index: gmpy_test_mpz.py =================================================================== RCS file: /cvsroot/gmpy/gmpy/test/gmpy_test_mpz.py,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** gmpy_test_mpz.py 23 Dec 2004 08:11:14 -0000 1.3 --- gmpy_test_mpz.py 6 Nov 2005 03:14:41 -0000 1.4 *************** *** 15,18 **** --- 15,28 ---- b=_g.mpz(456) + def _memsize(): + """ this function tries to return a measurement of how much memory + this process is consuming (if it doesn't manage to, it returns 0). + """ + import os + try: x = int(os.popen('ps -p %d -o vsz|tail -1' % os.getpid()).read()) + except: x = 0 + # print 'ms:', x + return x + def factorize(x): r''' *************** *** 383,386 **** --- 393,401 ---- >>> _g.divm(0,1,2) mpz(0) + >>> _siz = _memsize() + >>> for x in xrange(45678): _xx=_g.divm(b,a,20) + >>> del _xx + >>> _memsize()-_siz + 0 >>> a.invert(100) mpz(87) *************** *** 532,536 **** def _test(chat=None): if chat: ! print "Unit tests for gmpy 1.0 release candidate (mpz functionality)" print " running on Python",sys.version print --- 547,551 ---- def _test(chat=None): if chat: ! print "Unit tests for gmpy 1.01 release candidate (mpz functionality)" print " running on Python",sys.version print Index: gmpy_test_rnd.py =================================================================== RCS file: /cvsroot/gmpy/gmpy/test/gmpy_test_rnd.py,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** gmpy_test_rnd.py 23 Dec 2004 08:11:14 -0000 1.2 --- gmpy_test_rnd.py 6 Nov 2005 03:14:41 -0000 1.3 *************** *** 16,29 **** >>> r('error',1,2,3) Traceback (most recent call last): ! ... TypeError: function takes exactly 2 arguments (4 given) >>> r('save') Traceback (most recent call last): ! ... RuntimeError: can't save before init >>> r('init',20) >>> r('unkn',99) Traceback (most recent call last): ! ... ValueError: unknown option 'unkn' >>> r('seed',1234) --- 16,29 ---- >>> r('error',1,2,3) Traceback (most recent call last): ! ... TypeError: function takes exactly 2 arguments (4 given) >>> r('save') Traceback (most recent call last): ! ... RuntimeError: can't save before init >>> r('init',20) >>> r('unkn',99) Traceback (most recent call last): ! ... ValueError: unknown option 'unkn' >>> r('seed',1234) *************** *** 108,119 **** plurotenk ekrnutplo ! >>> try: r('shuf','astring') ! ... except TypeError, e: ! ... print str(e).replace("doesn't", "does not") ! ... ! object does not support item assignment >>> r('shuf',23) Traceback (most recent call last): ! ... TypeError: 'shuf' needs mutable sequence >>> --- 108,118 ---- plurotenk ekrnutplo ! >>> r('shuf','astring') ! Traceback (most recent call last): ! ... ! TypeError: object does not support item assignment >>> r('shuf',23) Traceback (most recent call last): ! ... TypeError: 'shuf' needs mutable sequence >>> *************** *** 121,125 **** def _test(chat=None): if chat: ! print "Unit tests for gmpy 1.0 release candidate (rand functionality)" print " running on Python",sys.version print --- 120,124 ---- def _test(chat=None): if chat: ! print "Unit tests for gmpy 1.01 release candidate (rand functionality)" print " running on Python",sys.version print |
From: Alex M. <al...@us...> - 2004-12-23 08:11:49
|
Update of /cvsroot/gmpy/gmpy/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv20195/src Modified Files: gmpy.c Log Message: support 2.4 as well as 2.3 Index: gmpy.c =================================================================== RCS file: /cvsroot/gmpy/gmpy/src/gmpy.c,v retrieving revision 1.8 retrieving revision 1.9 diff -C2 -d -r1.8 -r1.9 *** gmpy.c 30 Dec 2003 09:21:16 -0000 1.8 --- gmpy.c 23 Dec 2004 08:11:08 -0000 1.9 *************** *** 5545,5554 **** if(options.debug) ! fprintf(stderr, "mp_allocate( %d->%d )\n", size, usize); if(!(res = malloc(usize))) Py_FatalError("mp_allocate failure"); if(options.debug) ! fprintf(stderr, "mp_allocate( %d->%d ) ->%8p\n", size, usize, res); return res; --- 5545,5554 ---- if(options.debug) ! fprintf(stderr, "mp_allocate( %d->%d )\n", (int)size, (int)usize); if(!(res = malloc(usize))) Py_FatalError("mp_allocate failure"); if(options.debug) ! fprintf(stderr, "mp_allocate( %d->%d ) ->%8p\n", (int)size, (int)usize, res); return res; *************** *** 5568,5576 **** fprintf(stderr, "mp_reallocate: old address %8p, old size %d(%d), new %d(%d)\n", ! ptr, old_size, uold, new_size, unew); if(uold==unew) { if(options.debug) ! fprintf(stderr, "mp_reallocate: avoided realloc for %d\n", unew); return ptr; } --- 5568,5576 ---- fprintf(stderr, "mp_reallocate: old address %8p, old size %d(%d), new %d(%d)\n", ! ptr, (int)old_size, (int)uold, (int)new_size, (int)unew); if(uold==unew) { if(options.debug) ! fprintf(stderr, "mp_reallocate: avoided realloc for %d\n", (int)unew); return ptr; } *************** *** 5581,5585 **** if(options.debug) fprintf(stderr, "mp_reallocate: newob address %8p, newob size %d(%d)\n", ! res, new_size, unew); return res; --- 5581,5585 ---- if(options.debug) fprintf(stderr, "mp_reallocate: newob address %8p, newob size %d(%d)\n", ! res, (int)new_size, (int)unew); return res; *************** *** 5594,5598 **** if(options.debug) fprintf(stderr, "mp_free : old address %8p, old size %d(%d)\n", ! ptr, size, usize); free(ptr); --- 5594,5598 ---- if(options.debug) fprintf(stderr, "mp_free : old address %8p, old size %d(%d)\n", ! ptr, (int)size, (int)usize); free(ptr); |
From: Alex M. <al...@us...> - 2004-12-23 08:11:24
|
Update of /cvsroot/gmpy/gmpy/test In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv20195/test Modified Files: gmpy_test.py gmpy_test_cvr.py gmpy_test_mpf.py gmpy_test_mpq.py gmpy_test_mpz.py gmpy_test_rnd.py Log Message: support 2.4 as well as 2.3 Index: gmpy_test.py =================================================================== RCS file: /cvsroot/gmpy/gmpy/test/gmpy_test.py,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** gmpy_test.py 8 Aug 2003 11:29:43 -0000 1.2 --- gmpy_test.py 23 Dec 2004 08:11:09 -0000 1.3 *************** *** 24,28 **** _g = gmpy ! print "Unit tests for gmpy 1,0 alpha" print " on Python",sys.version print "Testing gmpy %s (GMP %s), default caching (%s, %s, %s..%s)" % ( --- 24,28 ---- _g = gmpy ! print "Unit tests for gmpy 1.0 release candidate" print " on Python",sys.version print "Testing gmpy %s (GMP %s), default caching (%s, %s, %s..%s)" % ( Index: gmpy_test_cvr.py =================================================================== RCS file: /cvsroot/gmpy/gmpy/test/gmpy_test_cvr.py,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** gmpy_test_cvr.py 8 Aug 2003 11:29:43 -0000 1.2 --- gmpy_test_cvr.py 23 Dec 2004 08:11:14 -0000 1.3 *************** *** 3,7 **** # test-version 1.0 r''' ! >>> _g.gmp_version() in ('4.0.1', '3.1.1') True >>> _g.version() --- 3,7 ---- # test-version 1.0 r''' ! >>> _g.gmp_version() in ('4.1.4', '4.0.1', '3.1.1') True >>> _g.version() *************** *** 463,467 **** def _test(chat=None): if chat: ! print "Unit tests for gmpy 0.9 pre-alpha (extra cover)" print " running on Python",sys.version print --- 463,467 ---- def _test(chat=None): if chat: ! print "Unit tests for gmpy 1.0 release candidate (extra cover)" print " running on Python",sys.version print Index: gmpy_test_mpf.py =================================================================== RCS file: /cvsroot/gmpy/gmpy/test/gmpy_test_mpf.py,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** gmpy_test_mpf.py 30 Dec 2003 09:21:16 -0000 1.3 --- gmpy_test_mpf.py 23 Dec 2004 08:11:14 -0000 1.4 *************** *** 333,337 **** def _test(chat=None): if chat: ! print "Unit tests for gmpy 0.9 pre-alpha (mpf functionality)" print " running on Python",sys.version print --- 333,337 ---- def _test(chat=None): if chat: ! print "Unit tests for gmpy 1.0 release candidate (mpf functionality)" print " running on Python",sys.version print Index: gmpy_test_mpq.py =================================================================== RCS file: /cvsroot/gmpy/gmpy/test/gmpy_test_mpq.py,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** gmpy_test_mpq.py 8 Aug 2003 08:57:05 -0000 1.1 --- gmpy_test_mpq.py 23 Dec 2004 08:11:14 -0000 1.2 *************** *** 293,297 **** def _test(chat=None): if chat: ! print "Unit tests for gmpy 0.9 pre-alpha (mpq functionality)" print " running on Python",sys.version print --- 293,297 ---- def _test(chat=None): if chat: ! print "Unit tests for gmpy 1.0 release candidate (mpq functionality)" print " running on Python",sys.version print Index: gmpy_test_mpz.py =================================================================== RCS file: /cvsroot/gmpy/gmpy/test/gmpy_test_mpz.py,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** gmpy_test_mpz.py 8 Aug 2003 09:48:57 -0000 1.2 --- gmpy_test_mpz.py 23 Dec 2004 08:11:14 -0000 1.3 *************** *** 532,536 **** def _test(chat=None): if chat: ! print "Unit tests for gmpy 0.9 pre-alpha (mpz functionality)" print " running on Python",sys.version print --- 532,536 ---- def _test(chat=None): if chat: ! print "Unit tests for gmpy 1.0 release candidate (mpz functionality)" print " running on Python",sys.version print Index: gmpy_test_rnd.py =================================================================== RCS file: /cvsroot/gmpy/gmpy/test/gmpy_test_rnd.py,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** gmpy_test_rnd.py 8 Aug 2003 08:57:05 -0000 1.1 --- gmpy_test_rnd.py 23 Dec 2004 08:11:14 -0000 1.2 *************** *** 16,29 **** >>> r('error',1,2,3) Traceback (most recent call last): ! File "<string>", line 1, in ? TypeError: function takes exactly 2 arguments (4 given) >>> r('save') Traceback (most recent call last): ! File "<string>", line 1, in ? RuntimeError: can't save before init >>> r('init',20) >>> r('unkn',99) Traceback (most recent call last): ! File "<string>", line 1, in ? ValueError: unknown option 'unkn' >>> r('seed',1234) --- 16,29 ---- >>> r('error',1,2,3) Traceback (most recent call last): ! ... TypeError: function takes exactly 2 arguments (4 given) >>> r('save') Traceback (most recent call last): ! ... RuntimeError: can't save before init >>> r('init',20) >>> r('unkn',99) Traceback (most recent call last): ! ... ValueError: unknown option 'unkn' >>> r('seed',1234) *************** *** 108,118 **** plurotenk ekrnutplo ! >>> r('shuf','astring') ! Traceback (most recent call last): ! File "<string>", line 1, in ? ! TypeError: object doesn't support item assignment >>> r('shuf',23) Traceback (most recent call last): ! File "<string>", line 1, in ? TypeError: 'shuf' needs mutable sequence >>> --- 108,119 ---- plurotenk ekrnutplo ! >>> try: r('shuf','astring') ! ... except TypeError, e: ! ... print str(e).replace("doesn't", "does not") ! ... ! object does not support item assignment >>> r('shuf',23) Traceback (most recent call last): ! ... TypeError: 'shuf' needs mutable sequence >>> *************** *** 120,124 **** def _test(chat=None): if chat: ! print "Unit tests for gmpy 0.9 pre-alpha (rand functionality)" print " running on Python",sys.version print --- 121,125 ---- def _test(chat=None): if chat: ! print "Unit tests for gmpy 1.0 release candidate (rand functionality)" print " running on Python",sys.version print |
From: Alex M. <al...@us...> - 2003-12-30 09:21:20
|
Update of /cvsroot/gmpy/gmpy/src In directory sc8-pr-cvs1:/tmp/cvs-serv27759/src Modified Files: gmpy.c Log Message: Fixed bug in gmpy.fbinary(0), added unit tests to catch such bugs. Index: gmpy.c =================================================================== RCS file: /cvsroot/gmpy/gmpy/src/gmpy.c,v retrieving revision 1.7 retrieving revision 1.8 diff -C2 -d -r1.7 -r1.8 *** gmpy.c 8 Aug 2003 09:48:57 -0000 1.7 --- gmpy.c 30 Dec 2003 09:21:16 -0000 1.8 *************** *** 1186,1189 **** --- 1186,1197 ---- cp = PyString_AsString(s); + /*** + * fprintf(stderr, "len is %d, cb=%d\n", len, *cp); + * fprintf(stderr, "the string is: "); + * for(i=0; i<len; ++i) + * fprintf(stderr, "%2.2x ", cp[i]); + * fprintf(stderr,"\n"); + ***/ + if(bits>0) { precision = bits; *************** *** 1205,1209 **** if(!(newob = Pympf_new(precision))) return NULL; ! if(256 == base) { /* --- 1213,1217 ---- if(!(newob = Pympf_new(precision))) return NULL; ! if(256 == base) { /* *************** *** 1224,1227 **** --- 1232,1240 ---- unsigned int expomag = 0; + /*** + * fprintf(stderr, "cb=%d, resusi=%d, exposi=%d, resuze=%d, precilen=%d\n", + * codebyte, resusign, exposign, resuzero, precilen); + ***/ + /* mpf zero has a very compact (1-byte) binary encoding!-) */ if(resuzero) { *************** *** 1583,1590 **** /* prepare codebyte */ sign = mpf_sgn(x->f); if(sign==0) { /* 0 -> single codebyte with 'zerovalue' bit set */ ! /* return Py_BuildValue("s", "\004"); */ ! codebyte = 0; } else if(sign<0) { codebyte = 1; --- 1596,1604 ---- /* prepare codebyte */ sign = mpf_sgn(x->f); + /* fprintf(stderr, "sign is %d\n", sign); */ if(sign==0) { /* 0 -> single codebyte with 'zerovalue' bit set */ ! return Py_BuildValue("s", "\004"); ! /* codebyte = 0; */ } else if(sign<0) { codebyte = 1; |
From: Alex M. <al...@us...> - 2003-12-30 09:21:20
|
Update of /cvsroot/gmpy/gmpy/test In directory sc8-pr-cvs1:/tmp/cvs-serv27759/test Modified Files: gmpy_test_mpf.py Log Message: Fixed bug in gmpy.fbinary(0), added unit tests to catch such bugs. Index: gmpy_test_mpf.py =================================================================== RCS file: /cvsroot/gmpy/gmpy/test/gmpy_test_mpf.py,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** gmpy_test_mpf.py 8 Aug 2003 09:48:57 -0000 1.2 --- gmpy_test_mpf.py 30 Dec 2003 09:21:16 -0000 1.3 *************** *** 289,301 **** 1 >>> _g.fbinary(0) ! '\x085\x00\x00\x00\x00\x00\x00\x00' >>> _g.fbinary(0.5) '\x085\x00\x00\x00\x00\x00\x00\x00\x80' >>> _g.fbinary(-0.5) '\t5\x00\x00\x00\x00\x00\x00\x00\x80' >>> _g.fbinary(-2.0) '\t5\x00\x00\x00\x01\x00\x00\x00\x02' >>> _g.fbinary(2.0) '\x085\x00\x00\x00\x01\x00\x00\x00\x02' >>> prec=_g.set_minprec(0) >>> junk=_g.set_minprec(prec) --- 289,311 ---- 1 >>> _g.fbinary(0) ! '\x04' ! >>> _g.mpf(_g.fbinary(0), 0, 256) == 0 ! 1 >>> _g.fbinary(0.5) '\x085\x00\x00\x00\x00\x00\x00\x00\x80' + >>> _g.mpf(_g.fbinary(0.5), 0, 256) == 0.5 + 1 >>> _g.fbinary(-0.5) '\t5\x00\x00\x00\x00\x00\x00\x00\x80' + >>> _g.mpf(_g.fbinary(-0.5), 0, 256) == -0.5 + 1 >>> _g.fbinary(-2.0) '\t5\x00\x00\x00\x01\x00\x00\x00\x02' + >>> _g.mpf(_g.fbinary(-2.0), 0, 256) == -2.0 + 1 >>> _g.fbinary(2.0) '\x085\x00\x00\x00\x01\x00\x00\x00\x02' + >>> _g.mpf(_g.fbinary(2.0), 0, 256) == 2.0 + 1 >>> prec=_g.set_minprec(0) >>> junk=_g.set_minprec(prec) |
From: Alex M. <al...@us...> - 2003-12-30 08:27:25
|
Update of /cvsroot/gmpy/gmpy/test In directory sc8-pr-cvs1:/tmp/cvs-serv20824/test Added Files: .cvsignore Log Message: more & better ignoring --- NEW FILE: .cvsignore --- *.pyc *~ |
From: Alex M. <al...@us...> - 2003-12-30 08:27:25
|
Update of /cvsroot/gmpy/gmpy In directory sc8-pr-cvs1:/tmp/cvs-serv20824 Modified Files: .cvsignore Log Message: more & better ignoring Index: .cvsignore =================================================================== RCS file: /cvsroot/gmpy/gmpy/.cvsignore,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** .cvsignore 30 Dec 2003 08:21:57 -0000 1.1 --- .cvsignore 30 Dec 2003 08:27:20 -0000 1.2 *************** *** 1,2 **** --- 1,3 ---- *.pyc *~ + build |
From: Alex M. <al...@us...> - 2003-12-30 08:22:01
|
Update of /cvsroot/gmpy/gmpy In directory sc8-pr-cvs1:/tmp/cvs-serv20140 Added Files: .cvsignore Log Message: ignore compiled and editor backup files --- NEW FILE: .cvsignore --- *.pyc *~ |
From: Alex M. <al...@us...> - 2003-08-08 11:29:45
|
Update of /cvsroot/gmpy/gmpy/test In directory sc8-pr-cvs1:/tmp/cvs-serv4795/test Modified Files: gmpy_test.py gmpy_test_cvr.py Log Message: Ensure smooth testing on Win32 Index: gmpy_test.py =================================================================== RCS file: /cvsroot/gmpy/gmpy/test/gmpy_test.py,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** gmpy_test.py 8 Aug 2003 08:57:05 -0000 1.1 --- gmpy_test.py 8 Aug 2003 11:29:43 -0000 1.2 *************** *** 38,40 **** doctest.master.summarize(1) ! --- 38,42 ---- doctest.master.summarize(1) ! if sys.platform == 'win32': ! print 'NOTE: known bugs with scan0 and scan1 on Windows' ! print 'they are being investigated, no need to report, thanks' Index: gmpy_test_cvr.py =================================================================== RCS file: /cvsroot/gmpy/gmpy/test/gmpy_test_cvr.py,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** gmpy_test_cvr.py 8 Aug 2003 08:57:05 -0000 1.1 --- gmpy_test_cvr.py 8 Aug 2003 11:29:43 -0000 1.2 *************** *** 3,8 **** # test-version 1.0 r''' ! >>> _g.gmp_version() ! '4.0.1' >>> _g.version() '1.0' --- 3,8 ---- # test-version 1.0 r''' ! >>> _g.gmp_version() in ('4.0.1', '3.1.1') ! True >>> _g.version() '1.0' *************** *** 544,546 **** if __name__=='__main__': _test(1) ! --- 544,548 ---- if __name__=='__main__': _test(1) ! if sys.platform == 'win32': ! print 'NOTE: known bugs with scan0 and scan1 on Windows' ! print 'they are being investigated, no need to report, thanks' |