Re: [Python-Dev] PEP 557: Data Classes

2017-10-11 Thread Nick Coghlan
On 12 October 2017 at 14:49, Mike Miller wrote: > > On 2017-10-11 19:56, Nick Coghlan wrote: > >> From my perspective, the main benefit of a compound name like "data >> class" is that it emphasises a deliberate behavioural choice (adopted from >> attrs):

[Python-Dev] What is the design purpose of metaclasses vs code generating decorators? (was Re: PEP 557: Data Classes)

2017-10-12 Thread Nick Coghlan
lt values, but that's a real conflict, as you'd be trying to use the same name on the class object for both the slot descriptor and the default value) Cheers, Nick. -- Nick Coghlan | ncogh...@gmail.com | Brisbane, Australia ___ Python-Dev mailin

Re: [Python-Dev] What is the design purpose of metaclasses vs code generating decorators? (was Re: PEP 557: Data Classes)

2017-10-13 Thread Nick Coghlan
pattern extraction from cases where people have decided the feature was valuable enough to be worth the hassle of maintaining a custom metaclass. Cheers, Nick. -- Nick Coghlan | ncogh...@gmail.com | Brisbane, Australia ___ Python-Dev mailing list Pytho

Re: [Python-Dev] What is the design purpose of metaclasses vs code generating decorators? (was Re: PEP 557: Data Classes)

2017-10-14 Thread Nick Coghlan
hod in the class body using the zero-arg super() form (when cls.__classcell__ is non-None), and either issue a warning or fail outright (since methods that rely on cooperative multiple inheritance need a specific defining class or else the runtime parent resolution gets inconsistent). Cheers, Nick.

Re: [Python-Dev] PEP 560 vs metaclass' class definition protections [was Re: What is the design purpose of metaclasses ...]

2017-10-14 Thread Nick Coghlan
_" and "mcl.__prepare__/bases.__prepare_subclass__". OTOH, if you have multiple bases with competing __prepare__ methods you really *should* get a metaclass conflict, since the class body can only be executed in one namespace. Cheers, Nick. -- Nick Coghlan | ncogh...@gmail.com

Re: [Python-Dev] Timeout for PEP 550 / Execution Context discussion

2017-10-15 Thread Nick Coghlan
lly undefined in 3.7, I think that's reasonable - folks that want to ensure the current behaviour indefinitely should keep using thread locals rather than switching over to context variables. Cheers, Nick. -- Nick Coghlan | ncogh...@gmail.com | Brisbane, Australia _

Re: [Python-Dev] Timeout for PEP 550 / Execution Context discussion

2017-10-16 Thread Nick Coghlan
nted to do something different (like capturing the context at the point where iterator was created and then temporarily switching back to that on each iteration). Cheers, Nick. -- Nick Coghlan | ncogh...@gmail.com | Brisbane, Australia ___ Python

Re: [Python-Dev] Timeout for PEP 550 / Execution Context discussion

2017-10-16 Thread Nick Coghlan
strong intuition about how it should work, then instead of attempting to guess suitable semantics, we can instead define it as raising RuntimeError for now, and then wait and see if the appropriate semantics become clearer over time. Cheers, Nick. -- Nick Coghlan | ncogh...@gmail.com | Brisb

Re: [Python-Dev] Timeout for PEP 550 / Execution Context discussion

2017-10-16 Thread Nick Coghlan
untimeError("Cannot modify an inactive execution context") That way, to actually mutate a different context, you'd still have to switch contexts, just as you have to switch threads in C if you want to modify another thread's thread specific storage.

Re: [Python-Dev] Timeout for PEP 550 / Execution Context discussion

2017-10-16 Thread Nick Coghlan
On 17 October 2017 at 15:02, Nick Coghlan wrote: > On 17 October 2017 at 14:31, Guido van Rossum wrote: > >> No, that version just defers to magic in ContextVar.get/set, whereas what >> I'd like to see is that the latter are just implemented in terms of >> manipulat

Re: [Python-Dev] Timeout for PEP 550 / Execution Context discussion

2017-10-17 Thread Nick Coghlan
process: - sched - concurrent.futures - arbitrary callback APIs - method based protocols (including iteration) By contrast, "contextvars.set_ctx" would need various wrappers to handle correctly reverting the context change, and would hence be prone to "changed the active context

Re: [Python-Dev] PEP 510 (function specialization) rejected

2017-10-17 Thread Nick Coghlan
1] as a good recent example of the effectiveness of the latter approach). Cheers, Nick. [1] https://blog.sentry.io/2016/10/19/fixing-python-performance-with-rust.html -- Nick Coghlan | ncogh...@gmail.com | Brisbane, Australia ___ Python-Dev mai

Re: [Python-Dev] Timeout for PEP 550 / Execution Context discussion

2017-10-17 Thread Nick Coghlan
On 18 October 2017 at 16:25, Ethan Furman wrote: > On 10/17/2017 09:40 PM, Nick Coghlan wrote: > >> At the Python API layer, we don't expose the ability to switch explicitly >> to another thread state while remaining within >> the current function. Instead, we only

Re: [Python-Dev] Timeout for PEP 550 / Execution Context discussion

2017-10-18 Thread Nick Coghlan
in your latest API design, and marking that specific function as private will cover the fact that its semantics aren't guaranteed yet. Cheers, Nick. -- Nick Coghlan | ncogh...@gmail.com | Brisbane, Australia ___ Python-Dev maili

Re: [Python-Dev] PEP 564: Add new time functions with nanosecond resolution

2017-10-21 Thread Nick Coghlan
ronics.stackexchange.com/questions/14816/what-is-metastability [3] https://medium.com/@decodoku/how-to-program-a-quantum-computer-982a9329ed02 -- Nick Coghlan | ncogh...@gmail.com | Brisbane, Australia ___ Python-Dev mailing list Python-D

Re: [Python-Dev] PEP 564: Add new time functions with nanosecond resolution

2017-10-22 Thread Nick Coghlan
On 23 October 2017 at 01:06, Wes Turner wrote: > On Saturday, October 21, 2017, Nick Coghlan wrote: > >> So yeah, for nanosecond resolution to not be good enough for programs >> running in Python, we're going to be talking about some genuinely >> fundamental chang

Re: [Python-Dev] iso8601 parsing

2017-10-25 Thread Nick Coghlan
pecified as "If the constructor arguments consist of a single string, that is handled by calling the fromisoformat class method". Cheers, Nick. -- Nick Coghlan | ncogh...@gmail.com | Brisbane, Australia ___ Python-Dev mailing list Py

Re: [Python-Dev] Migrate python-dev to Mailman 3?

2017-10-26 Thread Nick Coghlan
erview). Cheers, Nick. P.S. MM3 supports a multi-archiver design, so it would presumably also be possible to write a static-HTML-only pipermail style archiver that ran in parallel with the interactive web gateway. -- Nick Coghlan | ncogh...@gmail.com | Brisbane, Australia __

Re: [Python-Dev] Migrate python-dev to Mailman 3?

2017-10-26 Thread Nick Coghlan
you can't safely delete messages from MM2 archives: doing so will renumber the archive URLs for all subsequent messages). Cheers, Nick. -- Nick Coghlan | ncogh...@gmail.com | Brisbane, Australia ___ Python-Dev mailing list Python-Dev@pyth

Re: [Python-Dev] If aligned_alloc() is missing on your platform, please let us know.

2017-10-27 Thread Nick Coghlan
ks, rather than asking them to speculate about what they think *might* break. Cheers, Nick. -- Nick Coghlan | ncogh...@gmail.com | Brisbane, Australia ___ Python-Dev mailing list Python-Dev@python.org https://mail.python.org/mailman/listinfo/python-dev Unsubscribe: https://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com

Re: [Python-Dev] \G (match last position) regex operator non-existant in python?

2017-10-28 Thread Nick Coghlan
y seems like it would be a maintainability nightmare that delivered the worst of all possible outcomes for everyone involved (CPython maintainers, regex maintainers, Python end users) Cheers, Nick. -- Nick Coghlan | ncogh...@gmail.com | Brisbane, Australia __

Re: [Python-Dev] \G (match last position) regex operator non-existant in python?

2017-10-28 Thread Nick Coghlan
he ensurepip and venv modules (using existing documented third party recommendations like those in the re docs for regex and the urllib.request docs for requests), without actually bundling anything directly into the python.org installers. Cheers, Nick. -- Nick Coghlan | ncogh...@gmail.com |

Re: [Python-Dev] [python-committers] Reminder: 12 weeks to 3.7 feature code cutoff

2017-11-01 Thread Nick Coghlan
liably inject expections at "bad" times, so otherwise rare race conditions can be deliberately provoked. -- Nick Coghlan | ncogh...@gmail.com | Brisbane, Australia ___ Python-Dev mailing list Python-Dev@python.org https://mail.python.or

Re: [Python-Dev] PEP 511 (code transformers) rejected

2017-11-01 Thread Nick Coghlan
ces, but it wasn't worth it when it came at the cost of making tracebacks unreadable). Cheers, Nick. -- Nick Coghlan | ncogh...@gmail.com | Brisbane, Australia ___ Python-Dev mailing list Python-Dev@python.org https://mail.python.org/mailm

Re: [Python-Dev] PEP 511 (code transformers) rejected

2017-11-02 Thread Nick Coghlan
On 2 November 2017 at 23:42, Victor Stinner wrote: > (Email resent, I first sent it to Nick privately by mistake.) Oops, I didn't even notice that. Reposting my reply below. > 2017-11-02 2:53 GMT+01:00 Nick Coghlan : >> The piece that we're currently missing to make su

Re: [Python-Dev] PEP 511 (code transformers) rejected

2017-11-02 Thread Nick Coghlan
pyc files") To make this syntactic polyfill approach usable with older Python versions (including 2.7), importlib2 could be resynced to the first importlib version that supported this (importlib2 is currently up to date with Python 3.5's multi-phase initialisation support, since that was the last maj

Re: [Python-Dev] PEP 563: Postponed Evaluation of Annotations

2017-11-02 Thread Nick Coghlan
tyles in a nested function definition Baseline: $ python -m perf timeit -s "def f(): str" "f()" . Mean +- std dev: 103 ns +- 3 ns String constant (~1.25x speedup): $ python -m perf timeit -s "def f(): 'str'" "f()" .......

Re: [Python-Dev] PEP 563: Postponed Evaluation of Annotations

2017-11-02 Thread Nick Coghlan
nge, even though you'd only have to type a single ! character extra -- > that's not a lot work, right? > > I think that the analogy is reasonable. I think it also makes a pretty decent argument that pushing function annotations into implicit lambda expressions will be easier to e

Re: [Python-Dev] Reorganizing re and curses related code

2017-11-03 Thread Nick Coghlan
refix to the sre_*.py files in their new home). The one caveat I'll note is that this may limit automatic backporting of fixes to this files (I'm not sure how good 'git cherry-pick' is at handling file renames). Cheers, Nick. -- Nick Coghlan | ncogh..

Re: [Python-Dev] Reminder: 12 weeks to 3.7 feature code cutoff

2017-11-03 Thread Nick Coghlan
lp", "copyright", "credits" or "license" for more information. >>> await = 1 >>> async = 1 >>> print(async, await) 1 1 So if we're going to go ahead with making them real keywords in 3.7 (as specified in PEP 492

Re: [Python-Dev] Remove typing from the stdlib

2017-11-03 Thread Nick Coghlan
instance and issubclass respect that new hook as well, and define the hooks as returning the relevant ABCs. Cheers, Nick. -- Nick Coghlan | ncogh...@gmail.com | Brisbane, Australia ___ Python-Dev mailing list Python-Dev@python.org https://ma

Re: [Python-Dev] PEP 563: Postponed Evaluation of Annotations

2017-11-04 Thread Nick Coghlan
. If we subsequently decided to elevate expression thunks to a first class language primitive, they shouldn't need any further semantic enhancements beyond that one, since the existing scoping rules already give the desired behaviour at module and function scope. -- Nick Coghlan | ncogh...

Re: [Python-Dev] PEP 563: Postponed Evaluation of Annotations

2017-11-04 Thread Nick Coghlan
hunk to be executed with eval rather than via a regular function call), or a new kind of cell stored on a regular function object (implicit access to class attributes from implicitly defined scopes in the class body). Cheers, Nick. -- Nick Coghlan | ncogh...@gmail.com | Brisbane, Australia

Re: [Python-Dev] Guarantee ordered dict literals in v3.7?

2017-11-04 Thread Nick Coghlan
ms, while collections.OrderedDict uses the ordered array algorithms. -- Nick Coghlan | ncogh...@gmail.com | Brisbane, Australia ___ Python-Dev mailing list Python-Dev@python.org https://mail.python.org/mailman/listinfo/python-dev Unsubscribe:

Re: [Python-Dev] [python-committers] Reminder: 12 weeks to 3.7 feature code cutoff

2017-11-05 Thread Nick Coghlan
On 6 November 2017 at 02:02, Yury Selivanov wrote: > On Fri, Nov 3, 2017 at 11:30 PM, Nick Coghlan wrote: >> The current lack of DeprecationWarnings in 3.6 is a fairly major >> oversight/bug, though: > > There's no oversight. We had PendingDeprecationWarning for >

[Python-Dev] Proposal: go back to enabling DeprecationWarning by default

2017-11-05 Thread Nick Coghlan
vant sections of the documentation, and just use DeprecationWarning as the specific example) Cheers, Nick. [1] https://docs.python.org/3/library/exceptions.html#DeprecationWarning -- Nick Coghlan | ncogh...@gmail.com | Brisbane, Australia ___ Pyt

Re: [Python-Dev] Remove typing from the stdlib

2017-11-05 Thread Nick Coghlan
def is_class_var(annotation): return isinstance(annotation, _ClassVar) It would put the burden on static analysers and the typing module to understand that `dataclasses.ClassVar` meant the same thing conceptually as `typing.ClassVar`, but I think that's OK. Cheers, Nick. -- Nick Coghlan |

Re: [Python-Dev] Guarantee ordered dict literals in v3.7?

2017-11-05 Thread Nick Coghlan
o-maps-in-action (search for "Iteration Order") [2] https://docs.oracle.com/javase/8/docs/api/java/util/LinkedHashMap.html [3] https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map [4] https://docs.microsoft.com/en-us/dotnet/api/system.collections.specialized.orde

Re: [Python-Dev] Guarantee ordered dict literals in v3.7?

2017-11-05 Thread Nick Coghlan
On 6 November 2017 at 09:43, Raymond Hettinger wrote: > On Nov 4, 2017, at 7:04 PM, Nick Coghlan wrote: >> I don't think that situation should change the decision, but I do >> think it would be helpful if folks that understand CPython's dict >> implementation cou

Re: [Python-Dev] Proposal: go back to enabling DeprecationWarning by default

2017-11-05 Thread Nick Coghlan
d-to-miss advance notice of upcoming breaking changes in the language definition and standard library), for the sake of letting app developers duck responsibility for managing what their own software writes to stderr. Cheers, Nick. -- Nick Coghlan | ncogh...@gmail.com | Brisbane, Australi

Re: [Python-Dev] Proposal: go back to enabling DeprecationWarning by default

2017-11-05 Thread Nick Coghlan
On 6 November 2017 at 14:14, Barry Warsaw wrote: > On Nov 5, 2017, at 18:05, Nick Coghlan wrote: > >> So my proposal is simple (and not really new): let's revert back to >> the way things were in 2.6 and earlier, with DeprecationWarning being >> visible by defaul

Re: [Python-Dev] PEP 563: Postponed Evaluation of Annotations

2017-11-05 Thread Nick Coghlan
On 6 November 2017 at 14:40, Lukasz Langa wrote: > On 4 Nov, 2017, at 6:32 PM, Nick Coghlan wrote: >> The only workaround I can see for that breakage is that instead of >> using strings, we could instead define a new "thunk" type that >> consists of two things:

Re: [Python-Dev] [python-committers] Reminder: 12 weeks to 3.7 feature code cutoff

2017-11-05 Thread Nick Coghlan
On 6 November 2017 at 16:00, Stephen J. Turnbull wrote: > -committers and some individuals dropped from address list. > > Nick Coghlan writes: > > > Gah, seven years on from Python 2.7's release, I still get caught by > > that. I'm tempted to propose we re

Re: [Python-Dev] Proposal: go back to enabling DeprecationWarning by default

2017-11-05 Thread Nick Coghlan
On 6 November 2017 at 16:26, Stephen J. Turnbull wrote: > Nick Coghlan writes: > > > Hence the proposed documentation change: the responsibility for > > silencing these warnings (for both their own code and for their > > dependencies) should rest with *application* de

Re: [Python-Dev] PEP 563: Postponed Evaluation of Annotations

2017-11-05 Thread Nick Coghlan
On 6 November 2017 at 16:36, Lukasz Langa wrote: > > On 5 Nov, 2017, at 9:55 PM, Nick Coghlan wrote: > > Python's name resolution rules are already ridiculously complicated, > and PEP 563 is proposing to make them *even worse*, purely for the > sake of an optional featur

Re: [Python-Dev] Proposal: go back to enabling DeprecationWarning by default

2017-11-06 Thread Nick Coghlan
ants to see. Cheers, Nick. P.S. That README also points out another problem with the status quo: DeprecationWarning still gets silenced by default when encountered in third party modules as well, meaning that also shows up as an abrupt compatibility break for anyone that didn't already know the

Re: [Python-Dev] Guarantee ordered dict literals in v3.7?

2017-11-06 Thread Nick Coghlan
ine to support Python implementations that don't provide insertion ordering semantics. Cheers, Nick. -- Nick Coghlan | ncogh...@gmail.com | Brisbane, Australia ___ Python-Dev mailing list Python-Dev@python.org https://mail.python.org/ma

Re: [Python-Dev] Guarantee ordered dict literals in v3.7?

2017-11-06 Thread Nick Coghlan
On 6 November 2017 at 19:14, Steven D'Aprano wrote: > On Mon, Nov 06, 2017 at 01:07:51PM +1000, Nick Coghlan wrote: >> When we did the "insertion ordered hash map" availability review, the >> main implementations we were checking on behalf of were Jython & VOC

Re: [Python-Dev] Proposal: go back to enabling DeprecationWarning by default

2017-11-06 Thread Nick Coghlan
On 6 November 2017 at 20:21, Paul Moore wrote: > On 6 November 2017 at 03:38, Nick Coghlan wrote: >> - if we ever write "import foo" ourselves, then we're a Python >> developer, and it's our responsibility to work out how to manage >> DeprecationWarning w

Re: [Python-Dev] Guarantee ordered dict literals in v3.7?

2017-11-06 Thread Nick Coghlan
particular key order. The proposal is that in 3.7 we retroactively declare that the first, most obvious, version of this code should in fact reliably pass all three assertions. Failing that, the proposal is that we instead change the dict iteration implementation

Re: [Python-Dev] Proposal: go back to enabling DeprecationWarning by default

2017-11-06 Thread Nick Coghlan
er list to mark where the default filters start (and adjust the append mode to insert filters there), or else provide a new option for programmatic configuration that's "higher priority than the defaults, lower priority than the explicit configuration settings". -- Nick Coghlan

Re: [Python-Dev] [python-committers] Enabling depreciation warnings feature code cutoff

2017-11-06 Thread Nick Coghlan
for us to say "CPython uses [these warnings filters] by default, but redistributors may set the default warnings filter differently. Always use -W or PYTHONWARNINGS if you want to ensure a particular set of default filters are active." Cheers, Nick. -- Nick Coghlan | ncogh...@

Re: [Python-Dev] Remove typing from the stdlib

2017-11-06 Thread Nick Coghlan
On 6 November 2017 at 12:18, Nick Coghlan wrote: > That particular dependency could also be avoided by defining an > "is_class_var(annotation)" generic function and a "ClassVar" helper > object in the dataclasses module. For example: > > class _Cl

Re: [Python-Dev] Proposal: go back to enabling DeprecationWarning by default

2017-11-06 Thread Nick Coghlan
us quo, how do educators learn that the examples they're teaching to their students are using deprecated APIs? Cheers, Nick. -- Nick Coghlan | ncogh...@gmail.com | Brisbane, Australia ___ Python-Dev mailing list Python-Dev@python.org https://mai

Re: [Python-Dev] PEP 563: Postponed Evaluation of Annotations

2017-11-06 Thread Nick Coghlan
On 7 November 2017 at 09:20, Lukasz Langa wrote: > > >> On Nov 5, 2017, at 11:28 PM, Nick Coghlan wrote: >> >> On 6 November 2017 at 16:36, Lukasz Langa wrote: >> >> - compile annotations like a small nested class body (but returning >> the expr

Re: [Python-Dev] Guarantee ordered dict literals in v3.7?

2017-11-06 Thread Nick Coghlan
On 7 November 2017 at 03:27, Chris Jerdonek wrote: > On Mon, Nov 6, 2017 at 4:11 AM Nick Coghlan wrote: >> Getting from the "Works on CPython 3.6+ but is technically >> non-portable" state to a fully portable correct implementation that >> ensures a particular

Re: [Python-Dev] Guarantee ordered dict literals in v3.7?

2017-11-06 Thread Nick Coghlan
years of CPython working a particular way increasing the inertia against making such a change in 3.8 (and beyond that, I'd say we'd be well and truly into de facto standardisation territory, and the chances of ever introducing deliberate perturbation of dict iteration order would drop to

Re: [Python-Dev] Guarantee ordered dict literals in v3.7?

2017-11-06 Thread Nick Coghlan
ython's low end. So for CPython's target use cases algorithmic efficiency dominates performance, and we afford to invest extra memory usage and startup overhead in service to more efficient data access algorithms. MicroPython's the opposite - you&#x

Re: [Python-Dev] Proposal: go back to enabling DeprecationWarning by default

2017-11-07 Thread Nick Coghlan
On 7 November 2017 at 19:30, Paul Moore wrote: > On 7 November 2017 at 04:09, Nick Coghlan wrote: >> Given the status quo, how do educators learn that the examples they're >> teaching to their students are using deprecated APIs? > > By reading the documentation on what

Re: [Python-Dev] Proposal: go back to enabling DeprecationWarning by default

2017-11-07 Thread Nick Coghlan
ly assumed that their absence meant we'd forgotten to include them. Cheers, Nick. -- Nick Coghlan | ncogh...@gmail.com | Brisbane, Australia ___ Python-Dev mailing list Python-Dev@python.org https://mail.python.org/mailman/listinfo/pyth

Re: [Python-Dev] The current dict is not an "OrderedDict"

2017-11-07 Thread Nick Coghlan
"Insertion ordered until the first key removal" is the only guarantee that's being proposed. OrderedDict just comes into the discussion because reaching for its stronger guarantees is currently the only way to obtain that guarantee in a formally implementation-independent and futu

Re: [Python-Dev] [python-committers] Enabling depreciation warnings feature code cutoff

2017-11-07 Thread Nick Coghlan
On 8 November 2017 at 06:32, Guido van Rossum wrote: > On Mon, Nov 6, 2017 at 7:23 PM, Terry Reedy wrote: >> >> On 11/6/2017 9:47 PM, Nick Coghlan wrote: >> [...] >>> >>> - "only show me legacy calls in *my* code" (the "I trust my deps to &

Re: [Python-Dev] Remove typing from the stdlib

2017-11-07 Thread Nick Coghlan
oids future confusion if the final version of Python 3.7 were to start bundling Python 3.8's version of typing. Cheers, Nick. -- Nick Coghlan | ncogh...@gmail.com | Brisbane, Australia ___ Python-Dev mailing list Python-Dev@python.org https://

Re: [Python-Dev] [python-committers] Enabling depreciation warnings feature code cutoff

2017-11-07 Thread Nick Coghlan
er pass "-Wd" to get warnings for everything, or else enable them selectively using the default main module filter as an example. Cheers, Nick. -- Nick Coghlan | ncogh...@gmail.com | Brisbane, Australia ___ Python-Dev mailing list Python

Re: [Python-Dev] Guarantee ordered dict literals in v3.7?

2017-11-07 Thread Nick Coghlan
the array. The bounds checking and pointer validity testing becomes relatively fiddly if you try to push against that and instead start iteration from a point partway through the storage array. That second point also becomes a concern from a performance perspective because this is code that run

Re: [Python-Dev] Guarantee ordered dict literals in v3.7?

2017-11-07 Thread Nick Coghlan
On 8 November 2017 at 11:44, Nick Coghlan wrote: > 2. So far, I haven't actually come up with a perturbed iteration > implementation that doesn't segfault the interpreter. The dict > internals are nicely laid out to be iteration friendly, but they > really do assume that yo

Re: [Python-Dev] [python-committers] Enabling depreciation warnings feature code cutoff

2017-11-07 Thread Nick Coghlan
On 8 November 2017 at 11:46, Guido van Rossum wrote: > On Tue, Nov 7, 2017 at 5:35 PM, Nick Coghlan wrote: >> >> On 8 November 2017 at 10:03, Guido van Rossum wrote: >> > OK, so let's come up with a set of heuristics that does the right thing >> > for

Re: [Python-Dev] The current dict is not an "OrderedDict"

2017-11-07 Thread Nick Coghlan
iting portable code doesn't achieve anything in that scenario - it just puts an extra road block in the way of those users trying out the alternative interpreter implementation. Cheers, Nick. -- Nick Coghlan | ncogh...@gmail.com | Brisbane, Australia

Re: [Python-Dev] [python-committers] Enabling depreciation warnings feature code cutoff

2017-11-07 Thread Nick Coghlan
x27;s not Red Hat specific, but shortening it to the initialism is a bit enterprisey :) Cheers, Nick. -- Nick Coghlan | ncogh...@gmail.com | Brisbane, Australia ___ Python-Dev mailing list Python-Dev@python.org https://mail.python.org/mailman/

Re: [Python-Dev] [python-committers] Enabling depreciation warnings feature code cutoff

2017-11-08 Thread Nick Coghlan
On 8 November 2017 at 19:21, Antoine Pitrou wrote: > On Wed, 8 Nov 2017 11:35:13 +1000 > Nick Coghlan wrote: > >> On 8 November 2017 at 10:03, Guido van Rossum wrote: >> > OK, so let's come up with a set of heuristics that does the right thing for >> > thos

Re: [Python-Dev] [python-committers] Enabling depreciation warnings feature code cutoff

2017-11-08 Thread Nick Coghlan
On 9 November 2017 at 07:09, Simon Cross wrote: > On Wed, Nov 8, 2017 at 10:33 PM, Nick Coghlan wrote: >> For interactive use, the principle ends up being "Code you write gives >> deprecation warnings, code you import doesn't" (which is the main >> aspect I

Re: [Python-Dev] [python-committers] Enabling depreciation warnings feature code cutoff

2017-11-08 Thread Nick Coghlan
On 9 November 2017 at 07:46, Antoine Pitrou wrote: > > Le 08/11/2017 à 22:43, Nick Coghlan a écrit : >> >> However, between them, the following two guidelines should provide >> pretty good deprecation warning coverage for the world's Python code: >> >

Re: [Python-Dev] PEP 563: Postponed Evaluation of Annotations

2017-11-08 Thread Nick Coghlan
ok like: def f(): class C: field = 1 class D: def method(a: C.field): ... C.D.C = C # Make annotations work at runtime return f That leaves the door open to a future PEP that proposes thunk-based annotations

Re: [Python-Dev] Clarifying Cygwin support in CPython

2017-11-08 Thread Nick Coghlan
and the compatibility fixes without causing problems for the release manager (and you're currently fine on that front with respect to 3.7). Cheers, Nick. -- Nick Coghlan | ncogh...@gmail.com | Brisbane, Australia ___ Python-Dev mailing list

Re: [Python-Dev] Proposal: go back to enabling DeprecationWarning by default

2017-11-08 Thread Nick Coghlan
m Nathaniel pointed out that "stacklevel" can be hard to set correctly when emitting a warning (especially at import time), but it also opens a new way of dealing with that: using warnings.warn_explicit to claim that the reporting module is "__main__" if

Re: [Python-Dev] PEP 563: Postponed Evaluation of Annotations

2017-11-09 Thread Nick Coghlan
ed my mind :) On 9 November 2017 at 14:16, Guido van Rossum wrote: > On Wed, Nov 8, 2017 at 5:49 PM, Nick Coghlan wrote: >> >> On 8 November 2017 at 16:24, Guido van Rossum wrote: >> > I also don't like the idea that there's nothing you can do with a thunk >

Re: [Python-Dev] [python-committers] Enabling depreciation warnings feature code cutoff

2017-11-09 Thread Nick Coghlan
, and I routinely use the REPL to check the validity of snippets of code that I plan to use (or advise someone else to use). Those are the cases where the status quo sometimes trips me up, because I forget that I'm *not* getting deprecation warnings. Cheer

Re: [Python-Dev] [python-committers] Enabling depreciation warnings feature code cutoff

2017-11-09 Thread Nick Coghlan
#unittest.TextTestRunner So that's likely part of the problem. Cheers, Nick. -- Nick Coghlan | ncogh...@gmail.com | Brisbane, Australia ___ Python-Dev mailing list Python-Dev@python.org https://mail.python.org/mailman/listinfo/p

Re: [Python-Dev] [python-committers] Enabling depreciation warnings feature code cutoff

2017-11-09 Thread Nick Coghlan
On 10 November 2017 at 11:53, Nick Coghlan wrote: > On 10 November 2017 at 11:32, Nathaniel Smith wrote: >> Is this intended to be a description of the current state of affairs? >> Because I've never encountered a test runner that does this... Which runners >> are you t

Re: [Python-Dev] Add Py_SETREF and Py_XSETREF to the stable C API

2017-11-09 Thread Nick Coghlan
sistently be "Do not roll your own refcount management, get a code generator or library to handle it for you". Cheers, Nick. -- Nick Coghlan | ncogh...@gmail.com | Brisbane, Australia ___ Python-Dev mailing list Python-Dev@python.org

Re: [Python-Dev] PEP 563: Postponed Evaluation of Annotations

2017-11-09 Thread Nick Coghlan
tringify_annotations > is too hard to spell. Aye, I'd be fine with "from __future__ import string_annotations" - that's even more explicitly self-documenting than either of my suggestions. Cheers, Nick. -- Nick Coghlan | ncogh...@gmail.com | Brisbane, Australia __

Re: [Python-Dev] [python-committers] Enabling depreciation warnings feature code cutoff

2017-11-09 Thread Nick Coghlan
for these are generally either "Did it do what I wanted?" or else a dry-run mode where it prints out what it *would* have done in normal operation. Cheers, Nick. -- Nick Coghlan | ncogh...@gmail.com | Brisbane, Australia ___ Pytho

Re: [Python-Dev] PEP 563: Postponed Evaluation of Annotations

2017-11-09 Thread Nick Coghlan
r way, it just struck me that the reversed order might be marginally clearer, so it seemed worthwhile to mention it. -- Nick Coghlan | ncogh...@gmail.com | Brisbane, Australia ___ Python-Dev mailing list Python-Dev@python.org https://mail.python.o

Re: [Python-Dev] PEP 563: Postponed Evaluation of Annotations

2017-11-10 Thread Nick Coghlan
t; et al. I > think it has a nice vibe to it. Getting folks to *not* call type hinting static typing is an ongoing challenge though, so it doesn't seem like a good idea to encourage that link to me. Cheers, Nick. -- Nick Coghlan | ncogh...@gmail.com | Brisbane, Australia __

Re: [Python-Dev] Proposal: go back to enabling DeprecationWarning by default

2017-11-10 Thread Nick Coghlan
On 11 November 2017 at 02:02, Random832 wrote: > On Tue, Nov 7, 2017, at 07:22, Nick Coghlan wrote: >> My suggestion for that definition is to have the *default* meaning of >> "third party code" be "everything that isn't __main__". > > What is __main_

Re: [Python-Dev] PEP 563: Postponed Evaluation of Annotations

2017-11-10 Thread Nick Coghlan
On 11 November 2017 at 01:48, Guido van Rossum wrote: > I don't mind the long name. Of all the options so far I really only like > 'string_annotations' so let's go with that. +1 from me. Cheers, Nick. -- Nick Coghlan | ncogh...@gmail.com

Re: [Python-Dev] [python-committers] Enabling depreciation warnings feature code cutoff

2017-11-11 Thread Nick Coghlan
est runners that do import the code under test, I think that *our* responsibility is to make it clearer that the default warning state isn't something that test runner designers should passively inherit from the interpreter - deciding what the default warning state should be (and how to get s

[Python-Dev] PEP 565: Show DeprecationWarning in __main__

2017-11-12 Thread Nick Coghlan
have encountered the specific notion of "API deprecation" Cheers, Nick. == PEP: 565 Title: Show DeprecationWarning in __main__ Author: Nick Coghlan Status: Draft Type: Standards Track Content-Type: text/x-rst Created: 12-Nov-2017 Python-Version: 3.7 Post-History: 12-Nov-2017

Re: [Python-Dev] Analog of PEP 448 for dicts (unpacking in assignment with dict rhs)

2017-11-12 Thread Nick Coghlan
t;a")) operator.itemgetter and operator.attrgetter may provide some inspiration for possible proposals. Cheers, Nick. -- Nick Coghlan | ncogh...@gmail.com | Brisbane, Australia ___ Python-Dev mailing list Python-Dev@python.org https://

Re: [Python-Dev] PEP 565: Show DeprecationWarning in __main__

2017-11-12 Thread Nick Coghlan
On 13 November 2017 at 03:10, Serhiy Storchaka wrote: > 12.11.17 11:24, Nick Coghlan пише: >> >> The PEP also proposes repurposing the existing FutureWarning category >> to explicitly mean "backwards compatibility warnings that should be >> shown to users of Python

Re: [Python-Dev] Standardise the AST (Re: PEP 563: Postponed Evaluation of Annotations)

2017-11-12 Thread Nick Coghlan
rand precedence (we'd use the same rules as normal expressions), but we could still offer a runtime expression type that was compiled at the same time as everything else, but rather than accepting parameters like a regular function, instead accepted a namespace to use when evaluating the express

Re: [Python-Dev] PEP 561 rework

2017-11-13 Thread Nick Coghlan
luence, if any, should I have over the use of 'bar' as an import package or module name in other distribution packages? I expect that the PSF will need to address them directly some day, but I don't think PEP 561 itself needs to address them (and the first version of PEP 541 proba

Re: [Python-Dev] PEP 565: Show DeprecationWarning in __main__

2017-11-13 Thread Nick Coghlan
for them" snippet actually looks like: if not sys.warnoptions: warnings.simplefilter("ignore") (I'll mention this in the PEP and docs patch as well) Cheers, Nick. -- Nick Coghlan | ncogh...@gmail.com | Brisbane, Australia _

Re: [Python-Dev] Add a developer mode to Python: -X dev command line option

2017-11-13 Thread Nick Coghlan
dd more debugging capabilities. I don't consider it a replacement for tweaking how we handle DeprecationWarning by default, though :) Cheers, Nick. -- Nick Coghlan | ncogh...@gmail.com | Brisbane, Australia ___ Python-Dev mailing list Python-Dev@pyt

Re: [Python-Dev] PEP 560

2017-11-14 Thread Nick Coghlan
27;s getting much closer to the "negligible" range, even for command line apps. Cheers, Nick. -- Nick Coghlan | ncogh...@gmail.com | Brisbane, Australia ___ Python-Dev mailing list Python-Dev@python.org https://mail.python.org/mailma

Re: [Python-Dev] PEP 560: bases classes / confusion

2017-11-15 Thread Nick Coghlan
turned provides a way to programmatically combine mixins without having to define a new subclass for each combination Cheers, Nick. -- Nick Coghlan | ncogh...@gmail.com | Brisbane, Australia ___ Python-Dev mailing list Python-Dev@python.org https:/

Re: [Python-Dev] PEP 560: bases classes / confusion

2017-11-15 Thread Nick Coghlan
ig_bases" with __mro_entries__ methods, do all such methods get passed the *same* orig_bases tuple? Or do they receive partially resolved ones, such that bases listed before them have already been resolved to their MRO entries by the time they run. Cheers, Nick. -- Nick Coghlan | ncogh...@gmail

Re: [Python-Dev] Add a developer mode to Python: -X dev command line option

2017-11-16 Thread Nick Coghlan
se: default, once, module, and always are all different settings. once: once per process (regardless of location) module: once per module (regardless of line) default: once per location (line+module combination) always: every time Still, even with once-per-location behaviour, the warning o

Re: [Python-Dev] Make the stable API-ABI usable

2017-11-18 Thread Nick Coghlan
gent change, but the strict backwards compatibility policy means it's one where we'll be stuck with any mistakes we make for a long time. (Proper use of symbol versioning might offer a subsequent escape clause, but that introduces its own cross-platform compatibility

Re: [Python-Dev] Make the stable API-ABI usable

2017-11-18 Thread Nick Coghlan
On 18 November 2017 at 23:50, Nick Coghlan wrote: > On 18 November 2017 at 11:05, Victor Stinner wrote: >> Hi, >> >> tl; dr I propose to extend the existing "stable API" to make it almost >> as complete as the current API. For example, add back >>

<    1   2   3   4   5   6   7   8   9   10   >