1. 08 Mar, 2019 1 kayıt (commit)
  2. 26 Eki, 2018 1 kayıt (commit)
  3. 25 Eki, 2018 1 kayıt (commit)
  4. 18 Eyl, 2018 1 kayıt (commit)
  5. 16 Haz, 2018 1 kayıt (commit)
    • Carl Meyer's avatar
      bpo-33499: Add PYTHONPYCACHEPREFIX env var for alt bytecode cache location. (GH-6834) · b193fa99
      Carl Meyer yazdı
      In some development setups it is inconvenient or impossible to write bytecode
      caches to the code tree, but the bytecode caches are still useful. The
      PYTHONPYCACHEPREFIX environment variable allows specifying an alternate
      location for cached bytecode files, within which a directory tree mirroring the code
      tree will be created. This cache tree is then used (for both reading and writing)
      instead of the local `__pycache__` subdirectory within each source directory.
      
      Exposed at runtime as sys.pycache_prefix (defaulting to None), and can
      be set from the CLI as "-X pycache_prefix=path".
      
      Patch by Carl Meyer.
      b193fa99
  6. 31 May, 2018 1 kayıt (commit)
  7. 06 Nis, 2018 1 kayıt (commit)
  8. 23 Mar, 2018 1 kayıt (commit)
    • Serhiy Storchaka's avatar
      bpo-33041: Rework compiling an "async for" loop. (#6142) · 702f8f36
      Serhiy Storchaka yazdı
      * Added new opcode END_ASYNC_FOR.
      * Setting global StopAsyncIteration no longer breaks "async for" loops.
      * Jumping into an "async for" loop is now disabled.
      * Jumping out of an "async for" loop no longer corrupts the stack.
      * Simplify the compiler.
      702f8f36
  9. 22 Şub, 2018 2 kayıt (commit)
  10. 02 Şub, 2018 1 kayıt (commit)
  11. 30 Ock, 2018 1 kayıt (commit)
  12. 15 Ock, 2018 1 kayıt (commit)
  13. 09 Ara, 2017 1 kayıt (commit)
    • Benjamin Peterson's avatar
      closes bpo-31650: PEP 552 (Deterministic pycs) implementation (#4575) · 42aa93b8
      Benjamin Peterson yazdı
      Python now supports checking bytecode cache up-to-dateness with a hash of the
      source contents rather than volatile source metadata. See the PEP for details.
      
      While a fairly straightforward idea, quite a lot of code had to be modified due
      to the pervasiveness of pyc implementation details in the codebase. Changes in
      this commit include:
      
      - The core changes to importlib to understand how to read, validate, and
        regenerate hash-based pycs.
      
      - Support for generating hash-based pycs in py_compile and compileall.
      
      - Modifications to our siphash implementation to support passing a custom
        key. We then expose it to importlib through _imp.
      
      - Updates to all places in the interpreter, standard library, and tests that
        manually generate or parse pyc files to grok the new format.
      
      - Support in the interpreter command line code for long options like
        --check-hash-based-pycs.
      
      - Tests and documentation for all of the above.
      42aa93b8
  14. 06 Eki, 2017 1 kayıt (commit)
  15. 18 Eyl, 2017 1 kayıt (commit)
  16. 16 Nis, 2017 1 kayıt (commit)
  17. 14 Ara, 2016 1 kayıt (commit)
  18. 12 Ara, 2016 1 kayıt (commit)
  19. 05 Ara, 2016 1 kayıt (commit)
    • Nick Coghlan's avatar
      Issue #23722: improve __classcell__ compatibility · 19d24674
      Nick Coghlan yazdı
      Handling zero-argument super() in __init_subclass__ and
      __set_name__ involved moving __class__ initialisation to
      type.__new__. This requires cooperation from custom
      metaclasses to ensure that the new __classcell__ entry
      is passed along appropriately.
      
      The initial implementation of that change resulted in abruptly
      broken zero-argument super() support in metaclasses that didn't
      adhere to the new requirements (such as Django's metaclass for
      Model definitions).
      
      The updated approach adopted here instead emits a deprecation
      warning for those cases, and makes them work the same way they
      did in Python 3.5.
      
      This patch also improves the related class machinery documentation
      to cover these details and to include more reader-friendly
      cross-references and index entries.
      19d24674
  20. 02 Eki, 2016 1 kayıt (commit)
  21. 11 Eyl, 2016 1 kayıt (commit)
    • Nick Coghlan's avatar
      Issue #23722: Initialize __class__ from type.__new__() · 944368e1
      Nick Coghlan yazdı
      The __class__ cell used by zero-argument super() is now initialized
      from type.__new__ rather than __build_class__, so class methods
      relying on that will now work correctly when called from metaclass
      methods during class creation.
      
      Patch by Martin Teichmann.
      944368e1
  22. 09 Eyl, 2016 3 kayıt (commit)
    • Eric Snow's avatar
      50fd8980
    • Victor Stinner's avatar
      Rework CALL_FUNCTION* opcodes · f9b760f4
      Victor Stinner yazdı
      Issue #27213: Rework CALL_FUNCTION* opcodes to produce shorter and more
      efficient bytecode:
      
      * CALL_FUNCTION now only accepts position arguments
      * CALL_FUNCTION_KW accepts position arguments and keyword arguments, but keys
        of keyword arguments are packed into a constant tuple.
      * CALL_FUNCTION_EX is the most generic, it expects a tuple and a dict for
        positional and keyword arguments.
      
      CALL_FUNCTION_VAR and CALL_FUNCTION_VAR_KW opcodes have been removed.
      
      2 tests of test_traceback are currently broken: skip test, the issue #28050 was
      created to track the issue.
      
      Patch by Demur Rumed, design by Serhiy Storchaka, reviewed by Serhiy Storchaka
      and Victor Stinner.
      f9b760f4
    • Yury Selivanov's avatar
      Issue #27985: Implement PEP 526 -- Syntax for Variable Annotations. · f8cb8a16
      Yury Selivanov yazdı
      Patch by Ivan Levkivskyi.
      f8cb8a16
  23. 08 Eyl, 2016 1 kayıt (commit)
  24. 06 Eyl, 2016 1 kayıt (commit)
  25. 16 Tem, 2016 1 kayıt (commit)
  26. 15 Tem, 2016 1 kayıt (commit)
  27. 08 Tem, 2016 1 kayıt (commit)
  28. 12 Haz, 2016 3 kayıt (commit)
  29. 11 Haz, 2016 1 kayıt (commit)
  30. 27 May, 2016 1 kayıt (commit)
  31. 24 May, 2016 1 kayıt (commit)
  32. 16 May, 2016 1 kayıt (commit)
  33. 15 Mar, 2016 1 kayıt (commit)
    • Victor Stinner's avatar
      regrtest: Fix module.__path__ · 82f04e2d
      Victor Stinner yazdı
      Issue #26538: libregrtest: Fix setup_tests() to keep module.__path__ type
      (_NamespacePath), don't convert to a list.
      
      Add _NamespacePath.__setitem__() method to importlib._bootstrap_external.
      82f04e2d
  34. 11 Şub, 2016 1 kayıt (commit)
  35. 20 Ock, 2016 1 kayıt (commit)
    • Victor Stinner's avatar
      co_lnotab supports negative line number delta · f3914eb1
      Victor Stinner yazdı
      Issue #26107: The format of the co_lnotab attribute of code objects changes to
      support negative line number delta.
      
      Changes:
      
      * assemble_lnotab(): if line number delta is less than -128 or greater than
        127, emit multiple (offset_delta, lineno_delta) in co_lnotab
      * update functions decoding co_lnotab to use signed 8-bit integers
      
        - dis.findlinestarts()
        - PyCode_Addr2Line()
        - _PyCode_CheckLineNumber()
        - frame_setlineno()
      
      * update lnotab_notes.txt
      * increase importlib MAGIC_NUMBER to 3361
      * document the change in What's New in Python 3.6
      * cleanup also PyCode_Optimize() to use better variable names
      f3914eb1