pkgsrc-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[pkgsrc/trunk]: pkgsrc/math/pari Update math/pari to version 2.15.0



details:   https://anonhg.NetBSD.org/pkgsrc/rev/4520b4693b12
branches:  trunk
changeset: 387442:4520b4693b12
user:      nros <nros%pkgsrc.org@localhost>
date:      Sun Oct 30 10:00:15 2022 +0000

description:
Update math/pari to version 2.15.0

Listed in the TODO and the version in pkgsrc
was 7 years old.

Fix pkglint complaints.

The changes below are only for 2.13 to 2.15.
The commit message would be to big if all
changes were included.

Changes from changelog:

Bug numbers refer to the BTS at http://pari.math.u-bordeaux.fr/Bugs/
Done for version 2.15.0 (released 19/09/2022):
  Fixed
     1- slowdown in zeta (e.g. zeta(Pi) at \p500)
     2- GC error in idealinv [#2258]
     3- qfminim inefficiency (initial bound from non-LLL-reduced matrix) 4- mfshimura in weight 3/2 => oo loop
     5- zetahurwitz(s, huge x) => overflow or very slow
     6- matsolve([1,1,1/2; 1,0,1/2; 2,1,0], [-1;1;-1]) -> SEGV [#2261]
     7- qfminim(Mat(1),,,2) -> precision error [#2262]
     8- subst(p, v, t_SER) very slow if p contains many variables [#2264]
     9- mfsymboleval for trivial path returned 0 instead of a vector of 0s
        when f has multiple embeddings [#2260]
    10- 2^(1 + O(3^4)) -> type error
    11- Zn_quad_roots(8,0,-1) to compute roots of x^2-1 mod 8 -> [4,[1,3]]
        (1 or 3 mod 4) instead of the expected [2,[1]] (1 mod 2) [#2265]
    12- tan(1+10^20*I) -> overflow (same for cotan and psi)
BA  13- Mod(2,3)^1000000000000000000001 -> Mod(-1,3) [#2266]
    14- subst(O(y) + x, x, (1 - y + O(y^2))*x + O(x^2)) -> SEGV [#2267]
    15- (Mod(0,3) + x) + O(x^2) -> x + O(x^2)  [now Mod(1,3)*x + O(x^2)]
    16- precision too low for units in mfgaloisprojrep
    17- missing GC at the end of RgXn_inv
    18- (-1)^(1/3) -> -1 instead of exp(log(-1)/3)
    19- mfeisenstein(k, trivial characters mod N > 1) not handled correctly
BA  20- missing GC in qfsolve
    21- missing GC in nfeltval + better algorithm when valuation is huge
    22- rnfidealup(, non-integral ideal) -> division by 0
    23- memory leak in ellheight
    24- memory leak in bnfinit
    25- zeta(-2 + O(x)) => division by 0
    26- nfeltdiv(nfinit(x^2+1), 0, 1+x/2) -> SEGV [#2277]
    27- numerical instability in polinterpolate [#2278]
    28- znchargauss(g,chi,0) -> oo loop
    29- bnflog(bnr, ...) -> SEGV
    30- elliptic functions: incorrect reduction of z/w1 mod [1,tau] =>
        catastrophic cancellation
    31- powcx(x, t_COMPLEX with 0 imaginary part) -> crash
    32- nfsubfields(t_POL in other var than x,,1) -> SEGV
    33- extra terms in power t_SER substitutions [#2281]
        f=1+4*t^2+36*t^4+O(t^6); g=q-4*q^3+14*q^5+O(q^7); subst(f,t,g)
        -> spurious extra term -400*q^6
    34- k=bnfinit(quadpoly(-2923,a)); bnrclassfield(k,3) -> SEGV [#2280]
BA  35- rnfdisc mishandled polynomials with denominators [#2284]
BA  36- elltamagawa(ellinit([-1456/243,93184/19683])) -> wrong result
    37- mfsearch would sometimes miss the trivial form
    38- typo in allh [affects ECPP tunings]
HC  39- mfisetaquo(mffrometaquo([1,12;193,12])) -> 0
    40- polroots(1.E-47*t^6 + 1.E-47*t^5 + 4.E-46*t^4) -> bug in type [#2286]
    41- ceil(quadgen(5)) -> 1 instead of 0 [#2288]
    42- floor(Mod(0,3)*quadgen(5)) -> crash
    43- padicappr(x^2+1, 1/3+O(3)) -> missing valuation and type checks
    44- padicappr(x^2+25,5+O(5^2)) -> [O(5),O(5)] instead of
        [2*5+O(5^2),3*5+O(5^2)]
    45- wrong ispower(t_RFRAC) and issquare(t_RFRAC, &z) [#2289]
    46- slow series substitution if valuation huge
        f=t^50000+O(t^50001); g=q*Ser(vector(50000,i,1),q); h=subst(f,t,g)
    47- 1+O(x)==O(x)
    48- cmp() would use possibly uninitialized bits in t_POL codewords
BA  49- qfauto([[1,0;0,1],[0,0;1,0]]) -> SEGV
    50- bnfsunit(...)[4] (the S-regulator) did not correspond to its
        definition in the documentation [ was using log(p) instead of
        log(Norm P)) for P in S above p ]
BA  51- rnfdisc could return corrupted result
    52- quadtofp suffered from catastrophic cancellation [#2298]
        z=66992092050551637663438906713182313772
          -47370562574818466708936539960450008968*quadgen(8); z*1. -> 0.75
BA  53- concat(List([1])[1..0]) ->SEGV (instead of error) [#2299]
BA  54- List([1])[1..0]==List() -> 0 instead of 1
    55- ZX_squff(T) did not follow its specification if T(0) = 0
    56- (-1)^(-1/2) -> I instead of -I
    57- lfuntheta inaccurate in large weight [#2305]
    58- GC error in ZX_Uspensky(, flag = 0)
BA  59- ellisomat(ell/nf not integral) -> oo-loop or wrong result
BA  60- (f(~v)=v[1]=1);(g(v) = f(~v)); my(V=[0]);g(V);V -> [1] instead of [0]
        due to missing copy on write [#2304]
    61- hypergeom([1/12,1/12],2/3,3) -> wrong result (incorrect
        limiting case of transformation formula)
    62- overflow in mulu_interval(,ULONG_MAX) [#2309]
    63- ellE(1) -> domain error [#2312]
    64- log1p(-1 + 10^-10) -> oo time
    65- bernvec entries were wrong from B_{2*4064} on [#2311]
    66- plotrecthraw for multi-curves
    67- RgXn_powu(,,1) wrong result [#2314]
    68- erfc incorrect on negative imaginary axis [#2315]
    69- mfgalpoistype bug for dihedral types (when conductor at oo is not
        stable under Galois) [#2293]
BA  70- [32bit] forfactored(n=223092868, 223092871, ) -> SEGV [#2318]
    71- Fp_issquare(0, p) would return 0
    72- For z=x+wy a t_QUAD, z.pol returned the modulus z.mod instead of the
        t_POL x+'w*y
    73- allow eulerianpol(0) (= 1)
    74- allow polylog(0,x) (was broken when eulerianpol was introduced)
BA  75- concat(t_LIST,t_LIST) was leaking memory
    76- missing type checks in ellchangepoint (SEGV)
    77- polsturm(-5500*x^4+440*x^3+21780*x^2-9680*x-29040,[-oo,-4])->corruption
    78- ellheight(E,,Q) -> SEGV
    79- besselj(80,66) -> oo loop
    80- lfun(1, 0.0) "normalizing a series with a 0 leading term" [#2329]
    81- (0. + O(x) == 1) returned 'true'
    82- lfun(1, 0., 1) -> division by 0
    83- fix lfuncost when root number is unknown (more a_n are needed)
    84- idealismaximal(nfinit(x),Mat(2)) -> 0 [#2333]
    85- O(29^(-1)) == 1 was FALSE (same for -1)
    86- Mod(0, 2*x^0)  == 1 was FALSE (same for -1)
BA  87- [X11] resizing a window could keep traces of previous drawing
BA  88- x->x+0x1 was not displayed correctly
    89- bnfinit(Q) was not using current precision [#2335]
    90- lfuncreate(x^2 + 1/2) -> internal error. Allow rational coefficients.
    91- polresultant(t_POL with t_RFRAC coefs,...) -> internal errors
    92- znchardecompose(znstar(2,1),[],2) -> SEGV [#2339]
    93- genus2red(150*x^6+180*x^5-270*x^4+2040*x^3-1350*x^2+3060*x+270)
        -> internal bug [#2331]
    94- missing roots in nfroots(t_POL,) [#2345]
    95- factorpadic: ensure leading coefs are powers of p [#2352]
    96- nfsnf: wrong results [#2353]
XR  97- rare SEGV in nfdisc. [#2356]
BA  98- factor((Mod(1,2)*((t^2+1)*x^4+(t^4+1)*x^2+1))) -> division by 0
    99- internal type errors in mfsymboleval [#2360]
   100- incorrect chargalois for trivial group [#2341]
   101- minpoly(Mod(1/(x-(t+1))*Mod(1,2),(t+1)*x^2+t*x+1)) -> error [#2363]
BA 102- factor(Mod(1,2)*x^5+a*x^3) -> div by 0
AP 103- nfgrunwaldwang: fix infinite loop [#2343]
   104- ti=thueinit(3*x^3 + 5*x^2 - 14*x + 54,1); thue(ti,1) -> error [#2365]
   105- algdep(t_POLMOD x) -> x.mod instead of correct result
   106- bnrinit(,,,cycmod) failed to delete elementary divisors equal to 1
BA 107- bnrclassfield: incorrect result when fundamental units are large, e.g.
        bnrclassfield(bnfinit(nfsplitting(a^3-a^2-202*a-3080),1),2)  [#2371]
   108- M8=mfinit([8,5/2]); mfatkininit(M8,8)[1] was 0 and shouldn't be
   109- polylogmult instability
        default(realprecision,366);a=(1+sqrt(5))/2;w=(1+sqrt(-3))/2;
        polylogmult([1,1,1,1],[1/a,a,1,w]) -> error
   110- valuation(x*(y^2-1), y+1) -> oo loop [#2381]
   111- round(t_FRAC, &e): e was always -oo
   112- FpM_center_inplace would crash for p = 3 [#2387]
BA 113- [gp interpreter] fix memory leak in pop_lex
   114- numerator(1/x+1/y, 'x) -> x*y
   115- colors = "no" (or "") handled incorrectly [#2402]
   116- thue(thueinit(x^3-3*x^2+1,1), 2187) -> domain error in mplog [#2397]
   117- Bessel function of huge order -> oo loop [e.g. besselj(220, 112)]
   118- elltwist(E,) would ignore E's real precision

  Added
HC   1- new GP function eulerreal
BA   2- fplll: fast, dpe and heuristic variants
     3- dirpowerssum: allow a completely multiplicative function
     4- [libpari] atanhuu, atanhui, powcx, powcx_prec, cx_approx0
     5- new GP function lfunparams (initial implementation P. Molin)
     6- [libpari] row_Q_primpart
BA   7- [libpari] RgXQ_trace, RgX_chinese_coprime, RgXQV_factorback
     8- [libpari] FpM_intersect_i, Flm_intersect_i
HC   9- add optional argument to ramanujantau + parallelize code
HC  10- new GP functions bessljzero, besselyzero
BA  11- [libpari] Fle_ellweilpairing, Fle_elltatepairing, Flj_to_Fle
                  Fl_ellptors
BA  12- [libpari] ZC_divexactu, ZM_divexactu
HC  13- allow hypergeom(N, D, t_SER)
    14- [libpari] qfbsqr, qfbcomp, qfbpow, qfbpowraw, qfbsqr_i, qfbcomp_i,
        qfbpow_i, qfbpow, qfbpowraw, qfr3_compraw, qfr5_compraw
    15- general composition of binary quadratic forms (in different orders)
BA  16- New GP functions ellrank, ellrankinit : implement 2-descent on
        elliptic curve following a GP script by Denis Simon.
BA  17- [libpari] RgXY_derivx, RgX_recip_i
    18- [libpari] RgC_RgV_mulrealsym, RgM_to_RgXV_reverse
BA  19- New GP function ellsaturation
    20- [libpari] ZX_Z_eval
BA  21- [libpari] elltors_psylow
    22- ellinit([j]); no need to use ellfromj
    23- ideallist(nf, negative bound) to return ideals of norm |bound|
        (in factored form)
    24- rnfconductor(bnf,pol,flag): add flag=2 to only return the conductor
        and its factorization (which comes for free)
HC  25- New GP functions nflist, nfresolvent
BA  26- [libpari] Hermite_bound
    27- substvec: support t_VEC replacement values
BA  28- New GP function ell2cover
BA  29- nfsplitting: flag to get the embedding
BA  30- New GP function galoissplittinginit
HC  31- lambertw(y): support all values y > -1/e [#1472]
HC  32- lambertw: add optional 'branch' argument; support and complex, p-adic
        and power series inputs
BA  33- [libpari] ZXC_to_FlxC, ZXM_to_FlxM
BA  34- [libpari] New function families F3v, F3m
BA  35- New GP function setdebug
    36- allow shortcut \g n feat for setdebug("feat", n)
    37- New GP function poltomonic [#2200]
    38- in GPRC, support default(key,val) and setdebug(dom,val)
    39- New GP function polsubcyclofast
    40- [libpari] prV_primes, ideals_by_norm, nfV_to_scalar_or_alg, quadpoly_i
    41- new bit in nfinit flag: don't perform LLL on nf.zk
BA  42- new flag value in nfisincl
    43- [libpari] hclassno6u_from_cache, uhclassnoF_fact, hclassnoF_fact,
        vandermondeinverseinit, vandermondeinverse, trans_evalgen,
        sunits_mod_units, Qp_exp_prec
BA  44- [libpari] RgXQ_minpoly
    45- [libpari] quadclassnos, quadclassnoF, unegquadclassnoF,
        uposquadclassnoF, coredisc2_fact, coredisc2u_fact, uquadclassnoF_fact
        quadclassnoF_fact, Z_issquarefree_fact
    46- new GP functions quadunitnorm, quadunitindex
LGr 47- allow endpoints in solve() to by +oo or -oo
    48- allow Vec(t_STR, n) and Vecsmall(t_STR, n)
    49- new GP function: harmonic
    50- allow digits(integral t_PADIC)
    51- new GP function qfbcornacchia
    52- [libpari] gc_all
BA  53- [libpari] Zp_inv, Zp_invlift, Zp_div, Zp_log, Zp_exp
BA  54- [libpari] FpXn_div, Flxn_div, RgXn_div, RgXn_div_i, FpXQXn_div, F2xn_div
    55- [libpari] maxomegau, maxomegaoddu, ZV_snf_rank, ZV_snf_rank_u,
        zv_snf_rank, F3c_to_ZC, F3c_to_mod, F3m_to_mod, ZX_unscale_divpow,
        ZX_affine
    56- new GP function snfrank
HC  57- allow lngamma(t_PADIC of negative valuation)
    58- file LICENSE (for Software Heritage archiving)
BA  59- [libpari] RgXV_prod
BA  60- new GP function serdiffdep
    61- new module for hypergeometric motives, see ??hgm. GP functions
        hgmalpha     hgmbydegree     hgmcyclo          hgminit
        hgmtwist     hgmcoef         hgmeulerfactor    hgmissymmetrical
        lfunhgm      hgmcoefs        hgmgamma        hgmparams
BA  62- new GP function lfuneuler
TF  63- new GP functions subcyclohminus, subcycloiwasawa, subcyclopclgp
    64- new GP function bnrcompositum
    65- [libpari] gdivgu, gdivgunextu, divrunextu, gmulgu, gmulug
    66- [libpari] Zp_log, Zp_exp
    67- new GP function intnumosc, sumnumsidi
BA  68- [x86_64,arm64] AVX,NEON support for hyperellratpoints
BA  69- [libpari functions ZX_digits, ZXV_ZX_fromdigits
NM  70- new GP function elltrace
BA  71- [libpari] FpXQXV_red, FpXQXT_red
BA  72- [libpari] ZpXQX_ZpXQXQ_liftroot, ZqX_ZqXQ_liftroot
    73- [libpari] ZV_snfclean
    74- allow bnrchar to construct a Dirichlet character (with a znstar input)
    75- new GP functions nfeltissquare, nfeltispower
BA  76- [libpari] FlxqX_nbfact_by_degree
BA  77- [libpari] RgXY_cxevalx
    78- allow f*g and f^n for qfbcomp/qfbpow also for extended (real) forms
    79- [libpari] qfbpows
BA  80- [libpari] FlxM_to_FlxXV, FlxXC_sub
BA  81- [libpari] FlxqXC_FlxqXQ_eval, FlxqXC_FlxqXQV_eval
BA  82- new GP function qfminimize
BA  83- new GP functions hyperelldisc, hyperellminimalmodel,
        hyperellminimaldisc, hyperellred
    84- new GP function setdelta
BA  85- [libpari] RgX_homogenous_evalpow, QXQX_homogenous_evalpow
BA  86- [libpari] FpX_roots_mult
BA  87- [libpari] RgX_affine
HC  88- new GP function lerchphi, lerchzeta
BA  89- new GP function hyperellisoncurve
BA  90- [libpari] nfM_ker
    91- [libpari] Qp_zeta
BA  92- [libpari] RgX_mul2n
    93- [libpari] rfrac_to_ser_i
    94- [libpari] FlxC_FlxqV_eval_pre, FlxC_Flxq_eval_pre,
        Flx_FlxqV_eval_pre, Flx_Flxq_eval_pre, Flx_Frobenius_pre,
        Flx_div_pre, Flx_divrem_pre, Flx_extgcd_pre, Flx_gcd_pre,
        Flx_get_red_pre, Flx_halfgcd_pre, Flx_mul_pre, Flx_oneroot_pre,
        Flx_oneroot_split_pre, Flx_rem_pre, Flx_roots_pre, Flx_sqr_pre,
        Flxq_div_pre, Flxq_inv_pre, Flxq_invsafe_pre, Flxq_mul_pre,
        Flxq_powers_pre, Flxq_powu_pre, Flxq_sqr_pre,
        Flx_powu_pre, Flxn_div_pre, Flxn_mul_pre, Flxn_sqr_pre,
        FlxqX_fromNewton_pre, FlxqX_Flxq_mul_pre, FlxqX_Flxq_mul_to_monic_pre,
        FlxqX_FlxqXQV_eval_pre, FlxY_FlxqV_evalx_pre, FlxY_Flxq_evalx_pre,
        FlxqX_Newton_pre, FlxqX_get_red_pre, FlxqX_invBarrett_pre,
        FlxqX_powu_pre, FlxqXn_mul_pre, FlxqXn_sqr_pre, FlxqXn_inv_pre,
        FlxqXn_expint_pre, FlxY_eval_powers_pre, FlxY_evalx_powers_pre,
        FlxY_evalx_powers_pre, FlxqX_divrem_pre, FlxqXQ_inv_pre,
        FlxqXQ_invsafe_pre, FlxqXQ_sqr_pre, FlxqX_rem_pre, FlxqX_sqr_pre,
        FlxqXQ_pow_pre, FlxqXC_FlxqXQV_eval_pre, FlxqXQ_div_pre,
        FlxqXQ_mul_pre, FlxqX_halfgcd_pre, FlxqX_mul_pre, FlxqX_extgcd_pre,
        FlxqXQ_powers_pre, FlxqXQ_powu_pre, FlxqX_normalize_pre, FlxqX_red_pre,
        Kronecker_to_FlxqX_pre, Flx_dotproduct_pre, FlxqX_div_pre,
        FlxY_Flxq_evalx_pre, FlxqXC_FlxqXQV_eval_pre, Flx_is_smooth_pre,
        Flxq_pow_pre, Flxq_pow_init_pre, Flxq_pow_table_pre,
        Flx_matFrobenius_pre, FlxqV_dotproduct_pre, FlxqX_FlxqXQ_eval_pre,
        Flxq_auttrace_pre, Flxq_minpoly_pre, Flxq_lroot_fast_pre, Flxq_lroot_pre
        Flxq_matrix_pow_pre, Flx_ddf_pre, Flx_factor_squarefree_pre,
        Flx_nbfact_pre, Flx_nbfact_Frobenius_pre, Flx_resultant_pre,
        Flxq_autpow_pre, FlxqX_gcd_pre, FlxY_evalx_pre, FlxqXQ_autsum_pre,
        FlxqXQ_minpoly_pre, FlxqXQ_autpow_pre, FlxqXQ_auttrace_pre,
        FlxqX_Frobenius_pre, FlxqX_factor_squarefree_pre, FlxqE_weilpairing_pre
TF  95- new GP function factormodcyclo
TF  96- new libpari functions FpX_factcyclo, Flx_factcyclo
    97- new libpari functions ZV_sort_shallow, ZV_sort_uniq_shallow,
        tridiv_boundu
BA  98- rnfabelianconjgen
    99- new libpari functions abmap_kernel, abmap_subgroup_image, ZV_ZV_mod,
        ZM_ZV_mod
   100- bnr_char_sanitize, bnr_subgroup_sanitize
TF 101- GP function znsubgroupgenerators
   102- [libpari] RgV_is_prV
   103- improve idealfactorback [using ideamulpowprime]

  Changed
HC   1- faster implementation of eulervec + cache result
     2- sumnummonieninit(,1): faster algorithm (complex step)
     3- atanh(rational) now uses binary splitting
BA   4- FqV_to_FlxV, FqC_to_FlxC, FqM_to_FlxM: replaced by
        ZXC_to_FlxC, ZXM_to_FlxM
     5- FpM_intersect and Flm_intersect now guaranteed to return an
        Fp-basis; use FpM_intersect_i if you only need a generating set
     6- ZXX_to_Kronecker -> RgXX_to_Kronecker, ZXX_to_Kronecker_spec
        -> RgXX_to_Kronecker_spec
     7- [libpari] nbessel -> ybessel
     8- faster implementation of mfinit and mfbasis in weight 1
     9- ZabM_ker: replace final exact check by probabilistic check modulo a
        63-bit prime
    10- [libpari] ZC_u_divexact -> ZC_divexactu
    11- unify real and imaginary binary quadratic forms, include discriminant
        types t_QFI and t_QFR are replaced by t_QFB
    12- allow Qfb([a,b,c]) and Vec(t_QFB)
    13- qfbredsl2(q, S): change format of S: was [D,isD], is now isD
BA  14- [libpari] gp_read_stream now return NULL when EOF is reached (was gnil)
    15- elltwist now returns an ellinit, and accepts the same input formats
        as ellinit ([a1,a2,a3,a4,a6], [a4,a6], Cremona label)
    16- gen_search / vecvecsmall_search: remove flag; the result is now
        positive if the element is found else -i if element should be
        inserted at position i.
    17- allow t_COL of objects in gconcat1 / shallowconcat1
    18- [libpari] Z_smoothen now uses (and returns) t_VEC arguments.
        Use Z_lsmoothen to input small primes as a t_VECSMALL.
    19- poliscyclo: replace Bradford-Davenport's Graeffe method by their
        invphi algorithm (much faster)
BA  20- [libpari] QXX_QXQ_eval renamed to QXY_QXQ_evalx
    21- [libpari] ZX_Zp_root(f,a,p,): assume 0 <= a < p
BA  22- [libpari] gen_factorback now take an extra parameter one.
    23- [libpari] mplambertx_logx, mplambertX, mplambertxlogx_x
    24- [libpari] absZ_factor_limit_strict no longer guarantees that q is
        composite: this is useless for applications and possibly expensive
    25- default(debugfiles,) is now obsolete, use setdebug("io",)
    26- [libpari] quadclassno now has a second argument (to recover the
        attached fundamental discriminant)
    27- faster qfbclassno for non fundamental positive discriminants
        (use quadunitindex)
    28- removed appa.tex from users.dvi; inline the text in INSTALL.tex
    29- divrunu, divgunu: use a single division in all cases (faster even if
        denominator has 2 words)
    30- allow random(negative integer N) -> a random integer in [-n,n], n=|N|-1.
    31- allow sqrtint and sqrtnint for nonnegative real number argument
    32- allow logint for positive real number argument
    33- improve gamma and lngamma for t_FRAC inputs
    34- renamed normalize -> normalizeser
    35- nfinit/nfdisc/nfbasis: use lazy factorization by default [#2326]
    36- in idealtyp(ideal, fa), allow setting fa to NULL
BA  37- system now return the shell return value.
    38- allow valuation(x) when x is a t_PADIC, a t_POL or a t_SER
    39- libpari function precision() now always return a 'prec' (integer > 2).
        It used to return 2 for real 0 of non-negative exponent.
    40- grndtoi(GEN x, long *e): allow setting e = NULL
BA  41- [libpari] pari_thread_start: do not allow threads started this way to
        launch more threads.
BA  42- genus2red: 3rd component is now a pair [P,Q] such that y^2+Q*y=P is
        minimal everywhere.
    43- faster implementation of binomial

  Removed
     1- [libpari] obsolete functions qfi, qfr, qfi_1, qfr_1, redreal,
        redrealnod, rhoreal, rhorealnod, qfrcomp, qfrcompraw, qfrsqr,
        qfrsqrraw, qfisqrraw, qficompraw, qfipowraw, qfipow, qficomp,
        qfisqr, redimag
     2- [libpari] obsolete types t_QFI, t_QFR
     3- [libpari] nfinitall is now obsolete; use nfinit with the same arguments
     4- [libpari] order is now obsolete; use znorder

diffstat:

 math/pari/Makefile                              |    5 +-
 math/pari/PLIST                                 |   19 ++-
 math/pari/buildlink3.mk                         |    4 +-
 math/pari/distinfo                              |   41 +++---
 math/pari/options.mk                            |    8 +-
 math/pari/patches/patch-config_DOC__Make.SH     |   18 +-
 math/pari/patches/patch-config_Makefile.SH      |  148 ++++++++++++-----------
 math/pari/patches/patch-config_TOP__Make.SH     |    8 +-
 math/pari/patches/patch-config_get__PATH        |    4 +-
 math/pari/patches/patch-config_get__X11         |    4 +-
 math/pari/patches/patch-config_get__archos      |    4 +-
 math/pari/patches/patch-config_get__dlld        |   14 +-
 math/pari/patches/patch-config_get__fltk        |   14 ++
 math/pari/patches/patch-config_get__install     |    4 +-
 math/pari/patches/patch-config_get__ld          |    4 +-
 math/pari/patches/patch-config_get__libpth      |   36 -----
 math/pari/patches/patch-src_basemath_nflist.c   |   24 +++
 math/pari/patches/patch-src_basemath_nflistQT.c |   17 ++
 math/pari/patches/patch-src_headers_paridecl.h  |   16 +-
 math/pari/patches/patch-src_headers_paristio.h  |   13 --
 math/pari/patches/patch-src_language_anal.c     |    4 +-
 math/pari/patches/patch-src_language_compile.c  |    4 +-
 math/pari/patches/patch-src_language_es.c       |   21 ---
 math/pari/patches/patch-src_language_parsec.h   |   14 +-
 math/pari/patches/patch-src_modules_mpqs.c      |   40 ------
 25 files changed, 235 insertions(+), 253 deletions(-)

diffs (truncated from 829 to 300 lines):

diff -r 681e56adf23d -r 4520b4693b12 math/pari/Makefile
--- a/math/pari/Makefile        Sun Oct 30 08:28:43 2022 +0000
+++ b/math/pari/Makefile        Sun Oct 30 10:00:15 2022 +0000
@@ -1,7 +1,6 @@
-# $NetBSD: Makefile,v 1.85 2022/10/29 18:28:06 nros Exp $
+# $NetBSD: Makefile,v 1.86 2022/10/30 10:00:15 nros Exp $
 
-DISTNAME=      pari-2.7.6
-PKGREVISION=   10
+DISTNAME=      pari-2.15.0
 CATEGORIES=    math
 MASTER_SITES=  http://pari.math.u-bordeaux.fr/pub/pari/unix/
 
diff -r 681e56adf23d -r 4520b4693b12 math/pari/PLIST
--- a/math/pari/PLIST   Sun Oct 30 08:28:43 2022 +0000
+++ b/math/pari/PLIST   Sun Oct 30 10:00:15 2022 +0000
@@ -1,11 +1,12 @@
-@comment $NetBSD: PLIST,v 1.12 2018/01/01 22:29:43 rillig Exp $
-bin/gp-2.7
+@comment $NetBSD: PLIST,v 1.13 2022/10/30 10:00:15 nros Exp $
+bin/gp-2.15
 include/pari/genpari.h
 include/pari/mpinl.h
 include/pari/pari.h
 include/pari/paricast.h
 include/pari/paricfg.h
 include/pari/paricom.h
+include/pari/paridbglvl.h
 include/pari/paridecl.h
 include/pari/parierr.h
 include/pari/parigen.h
@@ -20,22 +21,29 @@
 ${PLIST.gmp}lib/libpari-gmp.la
 ${PLIST.nogmp}lib/libpari.la
 lib/pari/pari.cfg
-man/man1/gp-2.7.1
+man/man1/gp-2.15.1
 man/man1/gp.1
 man/man1/pari.1
 share/pari/PARI/822.pm
-${PLIST.doc}share/pari/doc/appa.tex
+${PLIST.doc}share/pari/doc/INSTALL.pdf
 ${PLIST.doc}share/pari/doc/appb.tex
 ${PLIST.doc}share/pari/doc/appd.tex
 ${PLIST.doc}share/pari/doc/develop.pdf
 ${PLIST.doc}share/pari/doc/develop.tex
 ${PLIST.doc}share/pari/doc/libpari.pdf
+${PLIST.doc}share/pari/doc/parallel.pdf
 ${PLIST.doc}share/pari/doc/paricfg.tex
 ${PLIST.doc}share/pari/doc/parimacro.tex
 ${PLIST.doc}share/pari/doc/pdfmacs.tex
+${PLIST.doc}share/pari/doc/refcard-ell.pdf
+${PLIST.doc}share/pari/doc/refcard-lfun.pdf
+${PLIST.doc}share/pari/doc/refcard-mf.pdf
+${PLIST.doc}share/pari/doc/refcard-nf.pdf
 ${PLIST.doc}share/pari/doc/refcard.pdf
 ${PLIST.doc}share/pari/doc/refcard.tex
 ${PLIST.doc}share/pari/doc/translations
+${PLIST.doc}share/pari/doc/tutorial-mf.pdf
+${PLIST.doc}share/pari/doc/tutorial-mf.tex
 ${PLIST.doc}share/pari/doc/tutorial.pdf
 ${PLIST.doc}share/pari/doc/tutorial.tex
 ${PLIST.doc}share/pari/doc/users.pdf
@@ -45,6 +53,9 @@
 ${PLIST.doc}share/pari/doc/usersch3.tex
 ${PLIST.doc}share/pari/doc/usersch4.tex
 ${PLIST.doc}share/pari/doc/usersch5.tex
+${PLIST.doc}share/pari/doc/usersch6.tex
+${PLIST.doc}share/pari/doc/usersch7.tex
+${PLIST.doc}share/pari/doc/usersch8.tex
 share/pari/examples/EXPLAIN
 share/pari/examples/Inputrc
 share/pari/examples/Makefile
diff -r 681e56adf23d -r 4520b4693b12 math/pari/buildlink3.mk
--- a/math/pari/buildlink3.mk   Sun Oct 30 08:28:43 2022 +0000
+++ b/math/pari/buildlink3.mk   Sun Oct 30 10:00:15 2022 +0000
@@ -1,4 +1,4 @@
-# $NetBSD: buildlink3.mk,v 1.12 2022/06/28 11:34:44 wiz Exp $
+# $NetBSD: buildlink3.mk,v 1.13 2022/10/30 10:00:15 nros Exp $
 
 BUILDLINK_TREE+=       pari
 
@@ -13,7 +13,7 @@
 .include "../../mk/pkg-build-options.mk"
 
 PARI_LIB?=     pari
-.if !empty(PKG_BUILD_OPTIONS.pari:Mgmp)
+.if ${PKG_BUILD_OPTIONS.pari:Mgmp}
 PARI_LIB=      pari-gmp
 .  include "../../devel/gmp/buildlink3.mk"
 .endif
diff -r 681e56adf23d -r 4520b4693b12 math/pari/distinfo
--- a/math/pari/distinfo        Sun Oct 30 08:28:43 2022 +0000
+++ b/math/pari/distinfo        Sun Oct 30 10:00:15 2022 +0000
@@ -1,23 +1,22 @@
-$NetBSD: distinfo,v 1.30 2022/10/29 18:28:06 nros Exp $
+$NetBSD: distinfo,v 1.31 2022/10/30 10:00:15 nros Exp $
 
-BLAKE2s (pari-2.7.6.tar.gz) = 13518517347d8c82eb30790eb4400b5bf20e2df211fe9df8fd54f4bf5d67b2a2
-SHA512 (pari-2.7.6.tar.gz) = 9cc623778068fe06878b2be0e4c60b75b585220e78446ed0c5e0197a3688e32cb901ce8a0e794d6dd310dab036784f73c0c9a608628ef89dd3e40fe3d9f7dc48
-Size (pari-2.7.6.tar.gz) = 3160272 bytes
+BLAKE2s (pari-2.15.0.tar.gz) = 30331a9207a8c83538c811b699bfb14a79a4b3916abd990edd24f8cc855cc122
+SHA512 (pari-2.15.0.tar.gz) = 6366734f7746a3982c464646e42b67382d5e5473709b192a359791621be14bb0e7521481a42c35f9a28ac6428485307472eb3fc8bd877bf3466f3610368a9f09
+Size (pari-2.15.0.tar.gz) = 5172089 bytes
 SHA1 (patch-Configure) = e9a50be80b2def703da1bcb10fe1b9854629e9b9
-SHA1 (patch-config_DOC__Make.SH) = 088e1b0ff98a42ed50ef90fae87e3a7989239dea
-SHA1 (patch-config_Makefile.SH) = 7a0c80c195eb5e922d36ff75e94e4386c6db7f20
-SHA1 (patch-config_TOP__Make.SH) = 82e39e82660fbe94b304e4691f0598b8f28a856a
-SHA1 (patch-config_get__PATH) = 6644f898eb784c2131bbb443ad4e1115fafd1bb8
-SHA1 (patch-config_get__X11) = 0bb8f77d5c5adfb29f89ad95ead1b5726c1a3918
-SHA1 (patch-config_get__archos) = f813a841f4795df30ef0b908263bea3d90e42b86
-SHA1 (patch-config_get__dlld) = 2e356255cb84d43f9859a66907bf8ed335639d78
-SHA1 (patch-config_get__install) = 0cccbb2dcf875b287787d88265730fdbeb5abd42
-SHA1 (patch-config_get__ld) = 3a0539211311c2686f3c8b1b289038ad54397134
-SHA1 (patch-config_get__libpth) = 8716d5ad8fb363593c0589196a72e452af727c02
-SHA1 (patch-src_headers_paridecl.h) = 996c1d0d0fcf1a1070699cd46a10def8901718ee
-SHA1 (patch-src_headers_paristio.h) = dd37ba9c6882a72e0d78d28eaaa00e7e18803111
-SHA1 (patch-src_language_anal.c) = 4570cd7fdd0c0d135391630bf0f6612a22ceaea8
-SHA1 (patch-src_language_compile.c) = ea356968c3e5f8d599a61d4413bf04552b673ea6
-SHA1 (patch-src_language_es.c) = ee470a5e050839573e213d7644d1e182fb3a4f0f
-SHA1 (patch-src_language_parsec.h) = 5cf4772aa2c9d7c912e68f2638bbc99de2d388a6
-SHA1 (patch-src_modules_mpqs.c) = 54adabc5bffe06ebbb79f3dd6366a4e7e219a676
+SHA1 (patch-config_DOC__Make.SH) = 0bf95b7d2b88676b2788b94292687dd83ffeebf7
+SHA1 (patch-config_Makefile.SH) = 725ef2222305794b4fd46a6309e7db36331715f0
+SHA1 (patch-config_TOP__Make.SH) = 86837ad721d1671b82f0bbfcb62dfa87b0e0b79f
+SHA1 (patch-config_get__PATH) = 8c474a2976632a41be43c9f0e8ab3fa3d875c06e
+SHA1 (patch-config_get__X11) = f605bd79401a97dc199ea700765946580107df06
+SHA1 (patch-config_get__archos) = 99e349fb6f4a6f3907abfa601e516bf41af010bf
+SHA1 (patch-config_get__dlld) = 9dcf5d7ac29578b41150508eaafe3abe9237f02f
+SHA1 (patch-config_get__fltk) = a46abaf8d34c7fd07bac251452f7f319657087fa
+SHA1 (patch-config_get__install) = 8cc084b48e39d3cf7c41be429feda63cbfc1ddbd
+SHA1 (patch-config_get__ld) = 121253ac21551efc313934ac4c5dde493245a46c
+SHA1 (patch-src_basemath_nflist.c) = 4fb6a5ede81a036727346f3a242ac4dfa3ca0132
+SHA1 (patch-src_basemath_nflistQT.c) = defd07b152766d98c28dbbb479850df6734c392e
+SHA1 (patch-src_headers_paridecl.h) = f22f0258d4ac21bde5c51ae53668058f46021310
+SHA1 (patch-src_language_anal.c) = fa02bddaf90fdf3b3f86b996f4d533c5cbd959ac
+SHA1 (patch-src_language_compile.c) = db29a10dabbc42299d83751d75f3ccb62039b760
+SHA1 (patch-src_language_parsec.h) = 2d74fc3fbcaa23b02fcf84996954eea5a81ca51e
diff -r 681e56adf23d -r 4520b4693b12 math/pari/options.mk
--- a/math/pari/options.mk      Sun Oct 30 08:28:43 2022 +0000
+++ b/math/pari/options.mk      Sun Oct 30 10:00:15 2022 +0000
@@ -1,4 +1,4 @@
-# $NetBSD: options.mk,v 1.13 2020/08/09 23:12:13 joerg Exp $
+# $NetBSD: options.mk,v 1.14 2022/10/30 10:00:15 nros Exp $
 
 PKG_OPTIONS_VAR=       PKG_OPTIONS.pari
 PKG_SUPPORTED_OPTIONS= doc gmp x11
@@ -11,12 +11,14 @@
 PLIST_VARS+=           doc
 .if !empty(PKG_OPTIONS:Mdoc)
 BUILD_DEPENDS+=                tex-amsfonts>=3.0:../../fonts/tex-amsfonts
-BUILD_DEPENDS+=                tex-pdftex>=1.40.11:../../print/tex-pdftex
+BUILD_DEPENDS+=                tex-ec-[0-9]*:../../fonts/tex-ec
+BUILD_DEPENDS+=                tex-metafont-[0-9]*:../../fonts/tex-metafont
+BUILD_DEPENDS+=                tex-latex-bin-[0-9]*:../../print/tex-latex-bin
 BUILD_DEPENDS+=                dvipsk-[0-9]*:../../print/dvipsk
 PLIST.doc=             yes
 BUILD_TARGET+=         doc
 INSTALL_TARGET+=       install-doc
-MAKE_ENV+=             PDFTEX=${PREFIX}/bin/pdftex
+#MAKE_ENV+=            PDFTEX=${PREFIX}/bin/pdftex
 .endif
 
 PLIST_VARS+=           nogmp gmp
diff -r 681e56adf23d -r 4520b4693b12 math/pari/patches/patch-config_DOC__Make.SH
--- a/math/pari/patches/patch-config_DOC__Make.SH       Sun Oct 30 08:28:43 2022 +0000
+++ b/math/pari/patches/patch-config_DOC__Make.SH       Sun Oct 30 10:00:15 2022 +0000
@@ -1,15 +1,15 @@
-$NetBSD: patch-config_DOC__Make.SH,v 1.1 2016/03/03 13:28:22 wiz Exp $
+$NetBSD: patch-config_DOC__Make.SH,v 1.2 2022/10/30 10:00:15 nros Exp $
 
 Rules for dvi/ps are broken, just generate PDFs to work around this.
 
---- config/DOC_Make.SH.orig    2014-07-30 13:38:47.000000000 +0000
+--- config/DOC_Make.SH.orig    2022-09-16 17:16:27.000000000 +0000
 +++ config/DOC_Make.SH
-@@ -21,7 +21,7 @@ MACROS= paricfg.tex parimacro.tex
- USERS_TEX=\$(MACROS) appa.tex users.tex usersch1.tex usersch2.tex usersch3.tex
- PARI_TEX=\$(MACROS) libpari.tex appb.tex appd.tex usersch4.tex usersch5.tex usersch6.tex usersch7.tex
+@@ -42,7 +42,7 @@ MACROS= paricfg.tex parimacro.tex
+ USERS_TEX=\$(MACROS) users.tex usersch1.tex usersch2.tex usersch3.tex
+ PARI_TEX=\$(MACROS) libpari.tex appb.tex appd.tex usersch4.tex usersch5.tex usersch6.tex usersch7.tex usersch8.tex
  
--doc all: develop.dvi libpari.dvi parallel.dvi users.dvi refcard.ps tutorial.dvi
-+doc all: develop.pdf libpari.pdf parallel.pdf users.pdf refcard.pdf tutorial.pdf
- docps: develop.ps libpari.ps parallel.ps refcard.ps tutorial.ps users.ps INSTALL.ps
- docpdf: develop.pdf libpari.pdf parallel.pdf users.pdf tutorial.pdf refcard.pdf INSTALL.pdf
+-doc all: $outdvi
++doc all: docpdf
+ docpdf: $outpdf
  
+ .SUFFIXES: .tex .ipf .pod .inf .dumbpod .3 .html
diff -r 681e56adf23d -r 4520b4693b12 math/pari/patches/patch-config_Makefile.SH
--- a/math/pari/patches/patch-config_Makefile.SH        Sun Oct 30 08:28:43 2022 +0000
+++ b/math/pari/patches/patch-config_Makefile.SH        Sun Oct 30 10:00:15 2022 +0000
@@ -1,42 +1,46 @@
-$NetBSD: patch-config_Makefile.SH,v 1.3 2020/08/09 23:12:13 joerg Exp $
+$NetBSD: patch-config_Makefile.SH,v 1.4 2022/10/30 10:00:15 nros Exp $
 
---- config/Makefile.SH.orig    2016-02-25 14:12:36.000000000 +0000
+* libtoolize
+* add rpath to X11 libs
+* don't install docs implicitly
+
+--- config/Makefile.SH.orig    2022-09-18 13:13:38.000000000 +0000
 +++ config/Makefile.SH
-@@ -52,8 +52,6 @@ case "$osname" in
-       dlld_ignore=- ;;
+@@ -57,8 +57,6 @@ case "$osname" in
    mingw)
-     export_file='$(LIBPARI).def';;
+     export_file='$(LIBPARI).def';
+     export_exe='$(LIBPARI)_exe.def';;
 -  darwin)
 -    ld_install_name="-Wl,-install_name -Wl,\"$libdir\"/\$(LIBPARI_DYN)";;
  esac
  case "$osname" in
    mingw|cygwin)
-@@ -93,7 +91,7 @@ plotrunpath=
- case "$which_graphic_lib" in
-   *X11*)
-     PLOTCFLAGS="$PLOTCFLAGS $X11_INC"
--    PLOTLIBS="$PLOTLIBS $X11_LIBS"
-+    PLOTLIBS="-Wl,-R${X11BASE}/lib $PLOTLIBS $X11_LIBS"
-     plotrunpath=$X11
-     graph="plotX $graph"
-   ;;
+@@ -88,7 +86,7 @@ win32)
+   graph=plotWin32;;
+ X11)
+   PLOTCFLAGS="$PLOTCFLAGS $X11_INC"
+-  PLOTLIBS="$PLOTLIBS $X11_LIBS"
++  PLOTLIBS="-Wl,-R${X11BASE}/lib $PLOTLIBS $X11_LIBS"
+   plotrunpath=$X11
+   graph=plotX;;
+ *)
 @@ -134,20 +132,11 @@ if test -n "$runpathprefix"; then
    RUNPTH=`$config_dir/ldflags "$LDneedsWl" $runpathprefix\\\$\(TOPDIR\)/$objdir$dir_sep"$tmp"`
  fi
  
 -if test -z "$DLLD"; then
--  exec="gp-sta"; static=y
+-  exec="gp-sta$exe_suff"; static=y
 -else
--  exec="gp-sta gp-dyn"
+-  exec="gp-sta$exe_suff gp-dyn$exe_suff"
 -fi
  case "$sizeof_long" in
    4) numbits=32;;
    8) numbits=64;;
  esac
- dotest="env \"RUNTEST=\$(RUNTEST)\" \"LD_LIBRARY_PATH=.$dir_sep\$\$LD_LIBRARY_PATH\" \$(SHELL) $src/test/dotest $numbits"
+ dotest="env \"RUNTEST=\$(RUNTEST)\" \"GPTESTOPT=\$(GPTESTOPT)\" \"LD_LIBRARY_PATH=.$dir_sep\$\$LD_LIBRARY_PATH\" \$(SHELL) ../src/test/dotest $numbits \"$exe_suff\""
 -case "$static" in
--  n) dft=dyn; libdft=lib-dyn;;
--  y) dft=sta; libdft= ;;
+-  n) dft=dyn; libdft=lib-dyn; dfttarget="gp-dyn gp-sta";;
+-  y) dft=sta; libdft= ; dfttarget="gp-sta";;
 -esac
  
  CPPFLAGS="-I. -I$src/headers"
@@ -61,7 +65,7 @@
  DLLDFLAGS  = $DLLDFLAGS
  EXTRADLLDFLAGS = $EXTRADLLDFLAGS
  RUNTEST    = $RUNTEST
-@@ -204,18 +193,12 @@ RUNTEST    = $RUNTEST
+@@ -205,18 +194,12 @@ GPTESTOPT  = $GPTESTOPT
  #the following line
  #GMPO2 = \$(GMP)/sparcv9.o
  
@@ -84,15 +88,24 @@
  DL_DFLT_NAME = $DL_DFLT_NAME
  
  LD_INSTALL_NAME  = $ld_install_name
-@@ -289,21 +272,15 @@ OBJSGP = $OBJSGP
+@@ -276,7 +259,7 @@ QTINC      = $QTINC
+ QTLIB      = $QTLIB
+ PLOTCFLAGS = $PLOTCFLAGS
+ PLOTLIBS   = $PLOTLIBS
+-CXX        = g++
++CXX        = \$(LIBTOOL) --mode=compile $CXX
  
- .PHONY: gp dft clean
+ TOPLDDYN   = "$TOP/$objdir"
+ # Description system
+@@ -295,21 +278,15 @@ TESTS  = $test_extra
+ 
+ dft: $dfttarget ../gp$suffix$exe_suff $libdft
  
 -gp: gp-$dft ../gp$suffix$exe_suff $libdft
 -
--../gp$suffix$exe_suff: gp-$dft
+-../gp$suffix$exe_suff: gp-$dft$exe_suff
 -      -\$(RM) \$@
--      -\$(LN) $ln_objdir/gp-$dft \$@
+-      -\$(LN) $ln_objdir/gp-$dft$exe_suff \$@
 -
 -all: $exec lib-sta
 +gp: \$(OBJSGP) \$(LIBPARI)
@@ -108,51 +121,54 @@



Home | Main Index | Thread Index | Old Index