Deutsch   English   Français   Italiano  
<mailman.7.1733237158.2965.python-list@python.org>

View for Bookmarking (what is this?)
Look up another Usenet article

Path: ...!news.roellig-ltd.de!open-news-network.org!weretis.net!feeder8.news.weretis.net!fu-berlin.de!uni-berlin.de!not-for-mail
From: Mohammadreza Saveji <mohammadrezasaveji@gmail.com>
Newsgroups: comp.lang.python
Subject: Re: Cheetah 3.4.0
Date: Mon, 2 Dec 2024 15:36:50 +0330
Lines: 145
Message-ID: <mailman.7.1733237158.2965.python-list@python.org>
References: <Z020jV1djKNWSQY5@phdru.name>
 <CA+KYhwxfH2CchN+qGrF2CbRj1TPOBep3LUaW2aScK=YcjTqjmg@mail.gmail.com>
Mime-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
X-Trace: news.uni-berlin.de z1cTxNN9UoBPrxSLk4NTswq6Z8ZlRRAbWXogNsY0XoYg==
Cancel-Lock: sha1:5hWKcclMpbZVNYQK5n2Wj8RiLn4= sha256:YfHjC8e35Jol4sZmtlIPbUSpBMMxDYVdaKT3VC8knSM=
Return-Path: <mohammadrezasaveji@gmail.com>
X-Original-To: python-list@python.org
Delivered-To: python-list@mail.python.org
Authentication-Results: mail.python.org; dkim=pass
 reason="2048-bit key; unprotected key"
 header.d=gmail.com header.i=@gmail.com header.b=CZoGAX34;
 dkim-adsp=pass; dkim-atps=neutral
X-Spam-Status: OK 0.001
X-Spam-Evidence: '*H*': 1.00; '*S*': 0.00; 'pfxlen:0': 0.03; 'pip':
 0.04; 'absolute': 0.05; 'library.': 0.05; 'pypi': 0.05; 'pep':
 0.07; 'template': 0.07; 'tests': 0.07; 'python.': 0.08;
 'url:mailman': 0.09; '2.7': 0.09; 'email addr:python.org>': 0.09;
 'fork': 0.09; 'skip:` 10': 0.09; 'skip:` 20': 0.09; 'url-
 ip:140/8': 0.14; 'import': 0.15; 'announce': 0.15; 'url:listinfo':
 0.15; '$person': 0.16; '3.4': 0.16; '=======': 0.16; 'changes:':
 0.16; 'compiled': 0.16; 'expects': 0.16; 'fixes': 0.16;
 'inadvertent': 0.16; 'lower.': 0.16; 'practically': 0.16;
 'protocol.': 0.16; 'silence': 0.16; 'url-ip:104.18.32/24': 0.16;
 'url-ip:172.64.155/24': 0.16; 'url:project': 0.16; 'url:pypi':
 0.16; 'wrote:': 0.16; 'python': 0.16; 'developer': 0.16; 'url-
 ip:140.82.121/24': 0.17; 'url-ip:140.82/16': 0.17; 'instead':
 0.17; 'bug': 0.19; 'implement': 0.19; 'to:addr:python-list': 0.20;
 'url-ip:188.166.95.178/32': 0.20; 'url-ip:188.166.95/24': 0.20;
 'exception': 0.22; "what's": 0.22; 'version': 0.23; 'install':
 0.23; 'url:github': 0.23; 'run': 0.23; 'url-ip:188.166/16': 0.24;
 'email addr:python.org>': 0.28; 'code,': 0.31; 'mailing': 0.31;
 'dec': 0.31; 'raise': 0.31; 'message-id:@mail.gmail.com': 0.31;
 "doesn't": 0.32; 'dropped': 0.32; 'objects': 0.32; 'programmers':
 0.32; 'python-list': 0.32; 'but': 0.32; "i'm": 0.33; 'header:In-
 Reply-To:1': 0.34; 'received:google.com': 0.34; 'release': 0.34;
 'from:addr:gmail.com': 0.34; 'final': 0.35; 'files': 0.36;
 'cases': 0.36; 'mon,': 0.36; 'source': 0.36; "it's": 0.37;
 'example': 0.37; 'url-ip:151.101.0.223/32': 0.38; 'url-
 ip:151.101.128.223/32': 0.38; 'url-ip:151.101.192.223/32': 0.38;
 'url-ip:151.101.64.223/32': 0.38; 'both': 0.38; 'thanks': 0.39;
 'use': 0.39; 'two': 0.39; "that's": 0.39; 'single': 0.39; 'url-
 ip:185.199.108.153/32': 0.39; 'url-ip:185.199.108/24': 0.39; 'url-
 ip:185.199/16': 0.39; 'branch': 0.39; 'hello!': 0.39; 'methods':
 0.39; 'case.': 0.40; 'define': 0.40; 'files.': 0.40; 'skip:$ 10':
 0.40; 'skip:\xc2 10': 0.62; 'skip:b 10': 0.63; 'key': 0.64;
 'your': 0.64; 'url:4': 0.64; 'url:name': 0.64; 'produce': 0.65;
 'news': 0.65; 'yours': 0.65; 'pleased': 0.67; 'url:net': 0.67;
 'site:': 0.69; 'templates': 0.69; 'url:news': 0.69; 'below': 0.69;
 'ignore': 0.71; 'free': 0.71; 'tools': 0.74; 'skip:f 20': 0.75;
 'attribute': 0.84; 'email name:<python-list': 0.84; 'inherit':
 0.84; 'spans': 0.84; 'stupid': 0.84; 'url:sourceforge': 0.84;
 'caused': 0.86; 'sincerely': 0.88; 'url:p': 0.88; 'return.': 0.91
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=gmail.com; s=20230601; t=1733202729; x=1733807529; darn=python.org;
 h=to:subject:message-id:date:from:in-reply-to:references:mime-version
 :from:to:cc:subject:date:message-id:reply-to;
 bh=keAyNnfky6CwILHpDX3hPb97iTFu71D5Wp98KqudOMQ=;
 b=CZoGAX34A/sKfkirkS1drX8ArZWOMgDYZwPrLRfHd81O1xi6X7JTktm87MFxtB6FEM
 12WtiBKxy7Iyc4bEqie/kkcYlz8JdOZ8p+RU4h8QhKgfrr07E/48eBLSqLnDcr0a9u+/
 CRqJxURK10S6IvW2Ck61hItY+fjEA93kEXnKym2Dj3pyozgTjvsa8CaqmpsTXtEybzIq
 lYfrMa4Zxca8WPmIezqsgy8x3OAupd+8ItDiPXGhbs2ReejHs0bggRFA+EYfOov6e6TV
 p9SW2/wxPYOS6wHXHkalqovymswyoBz1c/raTsKs8UR2+YZf5gmCOm1EU5cfxzKnR3mX
 P3Dw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20230601; t=1733202729; x=1733807529;
 h=to:subject:message-id:date:from:in-reply-to:references:mime-version
 :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
 bh=keAyNnfky6CwILHpDX3hPb97iTFu71D5Wp98KqudOMQ=;
 b=pyVJ7kgnTX13BGn0lAgSAAyhhia9ETA4pP57xoA6gvJ3qL6qhkVCD7PJyFGwvCNMsr
 ZGUm4RKo9YlcCZWkSwcEOTZ0eK0tLrVP58EoF8d/D5GYFqiLzdXxgCjdE+6b28/R3pcC
 QdiEXGysDCd6iJT6Xf3XsHPS1CytcOAwhpyfwV7UG7l+KxP7VQ+vmHcDvDBq0mjGQetL
 1RGFcta0uMufl22fLZF+N4P6KJVHSBb3xT1dmoqdOkAHxf8O1SrDgyj33DksEZz8vRGj
 OIeSLzeRRL/yTgFpNH8gsccRsYn/E5Y8pVWtpw01B9JWSlpdAh9D+Ft2xAIL13uCV2xc
 gc4A==
X-Forwarded-Encrypted: i=1;
 AJvYcCVb7yHFNX6O1fn2bhXSLUkgieJ4gT8aZn9oJAPiCwmUHAWSf/+ezRqmcv9ZQWZ5CVAhhvmtaS4CdobABQ==@python.org
X-Gm-Message-State: AOJu0YwBUucbWe87jl8TlzTvrF6qIl7SPukG64pqawQMBp3qvphdjs+A
 +4x0kO9jnvd6VEMTdEVXV6KYqRoXJ4k9Dz8bX0prGg4WxFDqkmRYlsVPdaheIMNy+CGhE5Db+vk
 K32Wydh9Rt5y5v8V2uf/soEF5VWHpctqmdmQ=
X-Gm-Gg: ASbGncs3p4l6ajsatuV8hC92McTKDVJTEXaK+0ANNlgSEmhF9LVeDWSw52YL4SShS0a
 qem0TX8EFuc8BxAzj+tTRhvCc4OkgtU8UlW+bT6uGvEjd96uVQo8UU9KL2XEz12jwlg==
X-Google-Smtp-Source: AGHT+IHdTQU8VTJ9I4ouEalIAQezlhpiN5lpPJ3H6FkbFZGJ/lsyo+MMAvM+LEwhG29EqJB+r4e9aO+Yu2qUcNSx97U=
X-Received: by 2002:a05:6000:23c7:b0:382:3c7b:9ae with SMTP id
 ffacd0b85a97d-385fd3ceb21mr682641f8f.16.1733202728997; Mon, 02 Dec 2024
 21:12:08 -0800 (PST)
In-Reply-To: <Z020jV1djKNWSQY5@phdru.name>
X-Mailman-Approved-At: Tue, 03 Dec 2024 09:45:57 -0500
X-Content-Filtered-By: Mailman/MimeDel 2.1.39
X-BeenThere: python-list@python.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: General discussion list for the Python programming language
 <python-list.python.org>
List-Unsubscribe: <https://mail.python.org/mailman/options/python-list>,
 <mailto:python-list-request@python.org?subject=unsubscribe>
List-Archive: <https://mail.python.org/pipermail/python-list/>
List-Post: <mailto:python-list@python.org>
List-Help: <mailto:python-list-request@python.org?subject=help>
List-Subscribe: <https://mail.python.org/mailman/listinfo/python-list>,
 <mailto:python-list-request@python.org?subject=subscribe>
X-Mailman-Original-Message-ID: <CA+KYhwxfH2CchN+qGrF2CbRj1TPOBep3LUaW2aScK=YcjTqjmg@mail.gmail.com>
X-Mailman-Original-References: <Z020jV1djKNWSQY5@phdru.name>
Bytes: 10834

Thanks a lot Oleg
sincerely yours

On Mon, Dec 2, 2024 at 5:27=E2=80=AFPM Oleg Broytman via Python-list <
python-list@python.org> wrote:

> Hello!
>
> I'm pleased to announce version 3.4.0, the final release
> of branch 3.4 of CheetahTemplate3.
>
>
> What's new in CheetahTemplate3
> =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D
>
> This release spans two topics: adapting to Python 3.13 and
> fixes in import hooks.
>
> Bug fixes:
>
>   - Fixed ``ImportHooks``: it must raise ``ModuleNotFoundError``
>     instead of ``ImportError``.
>
>   - Fixed absolute import in ``ImportHooks`` under Python 3.
>
>   - Use ``cache_from_source`` in ``ImportManager`` to find out
>     ``.pyc``/``.pyo`` byte-code files.
>
>   - Fixed unmarshalling ``.pyc``/``.pyo`` byte-code files
>     in ``ImportManager``.
>
>   - Fixed ``Template.webInput``: Use ``urllib.parse.parse_qs``
>     instead of ``cgi.FieldStorage``; Python 3.13 dropped ``cgi``.
>
>   - Fixed ``_namemapper.c``: Silent an inadvertent ``TypeError`` exceptio=
n
>     in ``PyMapping_HasKeyString`` under Python 3.13+
>     caused by ``_namemapper`` looking up a key in a non-dictionary.
>
>   - Fixed ``_namemapper.c``: Silence ``IndexError`` when testing
>     ``name[attr]``. Some objects like ``re.MatchObject`` implement both
>     attribute access and index access. This confuses ``NameMapper`` becau=
se
>     it expects ``name[attr]`` to raise ``TypeError`` for objects that don=
't
>     implement mapping protocol.
>
>   - Fixed mapping test in ``NameMapper.py``:
>     Python 3.13 brough a new mapping type ``FrameLocalsProxy``.
>
>   - Fixed another ``RecursionError`` in ``ImportHooks`` under PyPy3.
>
> Tests:
>
>   - tox: Run tests under Python 3.13.
>
> CI:
>
>   - CI(GHActions): Switch to ``setup-miniconda``.
>
>   - CI(GHActions): Run tests under Python 3.13.
>
> Build/release:
>
>   - Rename sdist to lowercase; different build tools produce different
> case.
>     This is important because stupid PyPI doesn't ignore sdists
>     in different cases but also doesn't allow uploading.
>     So we use single case, all lower. Also see PEP 625.
>
>
> What is CheetahTemplate3
> =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
>
> Cheetah3 is a free and open source (MIT) Python template engine.
> It's a fork of the original CheetahTemplate library.
>
> Python 2.7 or 3.4+ is required.
>
>
> Where is CheetahTemplate3
> =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D
>
> Site:
> https://cheetahtemplate.org/
========== REMAINDER OF ARTICLE TRUNCATED ==========