PEP 320 – Python 2.4 릴리스 일정
- Author:
- Barry Warsaw, Raymond Hettinger, Anthony Baxter
- Status:
- Final
- Type:
- Informational
- Topic:
- Release
- Created:
- 29-Jul-2003
- Python-Version:
- 2.4
- Post-History:
- 01-Dec-2004
Table of Contents
번역·라이선스 안내
이 비공식 한국어 번역은 원문 Copyright 절의 Public Domain 조건에 따라 제공합니다. 원저자와 공식 원문은 그대로 표시합니다. 수정되지 않은 기준 원문 · 공식 최신판
초록
이 문서는 Python 2.4의 개발 및 릴리스 일정을 설명합니다. 이 일정은 주로 PEP 규모의 항목을 다룹니다. 작은 기능은 첫 번째 베타 릴리스까지(해당 릴리스 포함) 추가할 수 있습니다. 버그는 최종 릴리스 전까지 수정할 수 있습니다.
최소한 알파 릴리스 두 번, 베타 릴리스 두 번, 릴리스 후보 한 번이 있을 예정입니다. 릴리스 날짜는 2004년 11월 30일이었습니다.
릴리스 관리자
Anthony Baxter
Martin von Lowis는 Windows 설치 프로그램을, Fred는 문서 패키지를, Sean은 RPM을 빌드합니다.
릴리스 일정
- 7월 9일: 알파 1 [완료]
- 8월 5/6일: 알파 2 [완료]
- 9월 3일: 알파 3 [완료]
- 10월 15일: 베타 1 [완료]
- 11월 3일: 베타 2 [완료]
- 11월 18일: 릴리스 후보 1 [완료]
- 11월 30일: 최종 릴리스 [완료]
2.4에서 완료된 기능
- PEP 218 내장 집합 객체.
- PEP 289 제너레이터 표현식.
- PEP 292 모듈로 구현될 더 간단한 문자열 치환.
- PEP 318: @ 구문을 사용하는 함수/메서드 데코레이터 문법
- PEP 322 역방향 이터레이션.
- PEP 327: 고정 정밀도 산술을 위한 Decimal 패키지.
- PEP 328: 여러 줄 임포트
- decorate-sort-undecorate 패턴을
list.sort()의 키워드로 캡슐화합니다. - 표현식에서 사용할 수 있는
sorted()라는 내장 함수를 추가했습니다. itertools모듈에tee()와groupby()라는 두 개의 새 함수가 추가되었습니다.deque()객체를 포함하는collections모듈을 추가합니다.heapq모듈에nlargest()와nsmallest()라는 두 개의 통계/축약 함수를 추가합니다.- Python의 Windows 설치 프로그램은 이제 MSI를 사용합니다
2.5로 연기되었습니다
- PEP 4에 나열된 모듈(
posixfile,gopherlib,pre,others)을 폐지하거나 제거합니다 - PEP 11에 설명된 대로 플랫폼 지원을 제거합니다.
- Distutils
bdist_dpkg명령의 구현을 완료합니다. (AMK) - 섀도 비밀번호 읽기 지원을 추가합니다 [1]
- 내장 SSL 소켓 타입을 논블로킹 SSL I/O에 사용할 수 있다면 좋을 것입니다. 현재 Twisted처럼 SSL을 사용하는 비동기 서버를 구현하는 패키지는 pyopenssl 같은 서드파티 패키지를 요구할 수밖에 없습니다.
- AST 기반 컴파일러: 이 브랜치는 2.4에 맞춰 완료되지 못했지만, 2.4 최종판이 나온 뒤 언젠가 트렁크에 반영되어 2.5에 포함될 것입니다.
- reST는 Zope3에서 많이 사용될 예정입니다. 어쩌면 표준 라이브러리 모듈이 될 수도 있지 않겠습니까? (reST의 작성자가 아직 너무 불안정하다고 생각하므로, 저는 이것을 하지 않는 쪽으로 기울어 있습니다.)
진행 중인 작업
다음은 특정 날짜까지 완료되기를 기대하지 않고 꾸준히 작업을 시도해야 할 진행 중인 TO-DO 항목입니다.
- 문서: 배포 및 설치 매뉴얼을 완성합니다.
- 문서: 새 스타일 클래스에 대한 문서를 완성합니다.
Demos/디렉터리를 검토하고 필요한 곳을 갱신합니다(Andrew Kuchling이 이미 상당 부분을 했습니다)- 새 테스트를 추가합니다.
- SF에 있는 문서 버그를 수정합니다.
- 코어에서 폐지된 기능의 사용을 제거합니다.
- 폐지된 기능을 적절히 문서화합니다.
- 폐지된 C API를
Py_DEPRECATED로 표시합니다. - 유지 보수되지 않는 모듈을 폐지하거나, 어쩌면 ‘Unmaintained’ 모듈이라는 새 범주를 만듭니다
- 전반적으로, 앞으로 나아가기 쉽도록 많은 정리를 합니다.
미해결 문제
현재로서는 없습니다.
Python 2.3에서 이월된 기능
- 임포트 잠금은 다소 재설계가 필요할 수 있습니다. [2]
- (일부 사람들이 보기에) 보기 흉한 “U” 모드 플래그를 대체하는, 텍스트 파일을 여는 더 나은 API를 제공합니다. 새 내장 타입
textfile(filename, mode, encoding)을 두자는 제안이 나와 있습니다. (bufsize 인자도 있어야 하지 않겠습니까?) - Tkinter를 위한 새 위젯???
이 작업을 할 시간이 있는 분이 있습니까? Tk 8.4에 새 위젯이 있기는 합니까? Tix 지원은 이미 개선되었다는 점에 유의하십시오(Windows에서는 아직 아니지만).
- PEP 304 (Montanaro의 바이트코드 파일 생성 제어)는 추진력을 잃은 것으로 보입니다.
- 다른 클래스 안에 정의된 클래스의 경우
__name__은 “outer.inner”여야 하며, 피클링도 동작해야 합니다. ([3]. 이제는 이것이 쉬운 일인지, 심지어 올바른 일인지조차 확신할 수 없습니다.) - (특히 모듈에 대해) 더 명확한 폐지 정책을 정하고 이를 실행합니다. 우선 Neal Norwitz의 이 메시지를 참고하십시오 [4]. 이 작업을 체계적으로 더 진전시키는 데 대한 관심이 부족해 보이며, 특별히 중요한 일도 아닙니다.
types모듈의 일반적인 용도에 대한 대안을 제공합니다. Skip Montanaro가 이 아이디어에 대한 초기 PEP 초안을 게시했습니다 [5]. 제가 아는 한, 이에 대해서는 아무런 진전이 없었습니다.types와string모듈에 폐지 예정(pending deprecation)을 적용합니다. 이를 위해서는 아직 대안이 마련되지 않은 부분(예:string.whitespace와types.TracebackType)에 대한 대안을 제공해야 합니다. 이에 대해서는 합의에 이르지 못할 것으로 보입니다.- PEP 262 설치된 Python 패키지의 데이터베이스 (Kuchling)
이는 Jack Jansen의 Python 설치 프로그램에 유용한 것으로 밝혀졌으므로, 이 데이터베이스는 구현할 가치가 있습니다. 코드는 sandbox/pep262에 들어갈 예정입니다.
- PEP 269 Python용 Pgen 모듈 (Riehl)
(필요한 변경 사항 중 일부는 반영되었으며,
pgen모듈 자체는 좀 더 성숙해져야 합니다.) - PEP 266 전역 변수/속성 접근 최적화 (Montanaro)
PEP 267 모듈 네임스페이스에 대한 최적화된 접근 (Hylton)
PEP 280 전역 변수 접근 최적화 (van Rossum)
이들은 기본적으로 서로 우호적으로 경쟁하는 세 가지 제안입니다. Jeremy가 새 컴파일러에 대해 약간의 진전을 이루었지만, 진행이 더디며 컴파일러는 첫 단계에 불과합니다. 어쩌면 이번 릴리스에서 컴파일러를 리팩터링할 수 있을지도 모릅니다. 너무 기대하지는 않겠다고 말하고 싶습니다.
- 튜플을 지연 추적하는 것은 어떻습니까? [6] [7] 그다지 호응이 없는 것으로 알고 있습니다.
- PEP 286 향상된 인자 튜플 (von Loewis)
이것을 꼼꼼히 검토할 시간이 없었습니다. 상당히 깊은 수준의 최적화 해킹으로 보입니다(물론 정확성도 더 잘 보장합니다).
- ‘
as’를 키워드로 만듭니다. 이미 충분히 오랫동안 의사 키워드였습니다. 신경 쓰기에는 너무 많은 노력이 듭니다.
참고 문헌
Copyright
This document has been placed in the public domain.