रिलीज़ नोट्स
0.38.2
27 जुलाई, 2024
तय
- यह नहीं माना जाता है कि सभी दिनचर्या हैं
routing.get_name()# 2648 में यह सब है__name__...
0.38.1
23 जुलाई, 2024
हटा दिया गया
- "ASGI पाथसेंड एक्सटेंशन के लिए समर्थन जोड़ें" # 2649 पुनर्स्थापित करें।
0.38.0
20 जुलाई, 2024
जोड़ा गया
- में अनुमति दें
StreamingResponseऔरResponse# 2576 और # 2577 में उपयोग किया जाता हैmemoryview... - जब में
StaticFiles# 2583 जब अनुरोधित फ़ाइल नाम बहुत लंबा हो, तो 500 के बजाय 404 भेजें।
परिवर्तन (or: change)
- अमान्य में
Jinja2Templateतात्कालिक पैरामीटर # 2568 पर तेजी से विफलता। - एंडपॉइंट हैंडलर को केवल एक बार # 2536 पर अतुल्यकालिक रूप से जांचें।
तय
- की ओर
WebSocketTestSession# 2597 उपयुक्त सिंक्रनाइज़ेशन जोड़ें।
0.37.2
5 मार्च, 2024
जोड़ा गया
- जोड़ें
bytesको_RequestDataप्रकार # 2510 हाँ।
तय
- पलटें "मुड़ें
scope["client"]कोNoneपरTestClient(# 2377) " # 2525 हाँ। - पदावनत निकालें
appतर्क पारित कियाhttpx.ClientपरTestClient# 2526 हाँ।
0.37.1
9 फरवरी, 2024
निश्चित
- लापता env फ़ाइलों के लिए बढ़ाने के बजाय चेतावनी
Config# 2485 हाँ।
0.37.0
5 फरवरी, 2024
जोड़ा गया
- वेबसॉकेट डेनियल रिस्पांस ASGI एक्सटेंशन का समर्थन करता है # 2041 हाँ।
0.36.3
4 फरवरी, 2024
निश्चित
- बनाएँ
anyio.Eventasync संदर्भ पर # 2459 हाँ।
0.36.2
3 फरवरी, 2024
निश्चित
- अपग्रेड करें
python-multipartको0.0.713E5c26 हाँ। - डुप्लिकेट चार्सेट से बचें
Content-Type# 2443 हाँ।
0.36.1
23 जनवरी, 2024
निश्चित
- एक्सटेंशन की जाँच करने से पहले जांचें कि क्या "एक्सटेंशन" दायरे में है # 2438 हाँ।
0.36.0
22 जनवरी, 2024
जोड़ा गया
- ASGI के लिए समर्थन जोड़ा गया
pathsendविस्तार # 2435 हाँ। - रद्द करें
WebSocketTestSessionकरीब पर # 2427 हाँ। - उठाएँ
WebSocketDisconnectजबWebSocket.send()अपवादIOError# 2425 हाँ। - उठाएँ
FileNotFoundErrorजबenv_fileपैरामीटर परConfigमान्य नहीं है # 2422 हाँ।
0.35.1
11 जनवरी, 2024
तय
- में पदावनत "विधि" पैरामीटर का उपयोग करना बंद करें
FileResponseके अंदरStaticFiles# 2406 हाँ। - बनाना
typing-extensionsवैकल्पिक फिर से # 2409 हाँ।
0.35.0
11 जनवरी, 2024
जोड़ा गया
- होगा
*argsमें जोड़ेंMiddlewareऔर इसके प्रकार संकेत # 2381 में सुधार करें।
तय
- मौजूद है
iterate_in_threadpool# 2362 का उपयोग किया जाता हैIterableबजायIterator
परिवर्तन
- प्रक्रिया
root_pathस्थापित ASGI अनुप्रयोगों और WSGI # 2400 के साथ संगतता बनाए रखने के लिए। - मौजूद है
TestClient# 2377 जनरलscope["client"]बन जानाNone
0.34.0
16 दिसंबर, 2023
जोड़ा गया
- उपयोग
ParamSpecके लिएrun_in_threadpool# 2375। - जोड़ें
UploadFile.__repr__# 2360।
तय
- मौजूद है
TestClient# 2376 URL को सही ढंग से मर्ज करें। - में विचार करें
StaticFiles# 2334 पर कमजोर ईटैग।
पुराना
- पदावनत
FileResponse(method=...)पैरामीटर # 2366।
0.33.0
1 दिसंबर, 2023
जोड़ा गया
- प्रत्येक
Route/WebSocketRouteजोड़ेंmiddleware# 2349। - प्रत्येक
Routerजोड़ेंmiddleware# 2351।
तय
- अधिलेखित न करें
"path"और"root_path"रेंज कुंजी # 2352। - होगा
ensure_ascii=Falseमें सेट करेंjson.dumps()पर, के लिएWebSocket.send_json()# 2341।
0.32.0 पोस्ट 1
5 नवंबर, 2023
तय
- 9.1.17 से 9.4.7 # 2326 तक वापस mkdocs-material।
0.32.0
4 नवंबर, 2023
जोड़ा गया
- मौजूद है
WebSocketDisconnectऊपर भेजेंreason# 2309। - होगा
domainपैरामीटर में जोड़ा गयाSessionMiddleware# 2280 में।
परिवर्तन; परिवर्तन; परिवर्तन
- मौजूद है
_TemplateResponse# 2274 सेHTMLResponseके बजायResponseविरासत। - होगा
Response.renderप्रकार एनोटेशन अपनी 0.31.0 स्थिति # 2264 पर निर्भर करता है।
0.31.1
26 अगस्त, 2023
तय
exceptiongroup उपलब्ध नहीं होने पर* आयात त्रुटि # 2231 को ठीक करता है।
* एक कस्टम जिंजा वातावरण के लिए सेटिंग्स url_for वैश्विक चर # 2230।
0.31.0
24 जुलाई, 2023
जोड़ा गया
- आधिकारिक तौर पर पायथन 3.12 का समर्थन करता है # 2214 हाँ।
- 4.0 का समर्थन करें # 2211 हाँ।
- कड़ाई से टाइप एनोटेट स्टारलेट (myPy पर सख्त मोड) # 2180 हाँ।
निश्चित
- उपयोग करते समय एक स्ट्रिंग पर डुप्लिकेट किए गए हेडर को समूह न करें
TestClient# 2219 हाँ।
0.30.0
13 जुलाई, 2023
हटा दिया गया
- ड्रॉप पायथन 3.7 समर्थन # 2178 हाँ।
0.29.0
13 जुलाई, 2023
जोड़ा गया
- जोड़ें
follow_redirectsके लिए पैरामीटरTestClient# 2207 हाँ। - जोड़ें
__str__कोHTTPExceptionऔरWebSocketException# 2181 हाँ। - उपयोग करते समय उपयोगकर्ताओं को चेतावनी दें
lifespanसाथ मेंon_startup/on_shutdown# 2193 हाँ। - से मार्ग एकत्र करें
Hostस्कीमा उत्पन्न करने के लिए # 2183 हाँ। - जोड़ें
requestके लिए तर्कTemplateResponse# 2191 हाँ।
तय
- बंद करो
body_streamमामले मेंmore_body=FalseपरBaseHTTPMiddleware# 2194 हाँ।
0.28.0
7 जून, 2023
बदल गया
- पुन: उपयोग
Requestकॉल_नेक्स्ट के लिए बॉडी बफरBaseHTTPMiddleware# 1692 हाँ। - तर्क को अपवाद हैंडलिंग में ले जाना
Route# 2026 हाँ।
जोड़ा गया
- होगा
envपैरामीटर में जोड़ा गयाJinja2Templatesमें और पदावनत**env_options# 2159। - जब
httpxस्थापित नहीं होने पर स्पष्ट त्रुटि संदेश # 2177 जोड़ें।
तय
- में अनुमति दें
templates url_for()# 2"नाम" पैरामीटर का उपयोग करें।
0.27.0
16 मई, 2023
यह संस्करण ठीक करता है StaticFiles पथ ट्रैवर्सल भेद्यता में। आप पूर्ण सुरक्षा बुलेटिन देख सकते हैं: https://github.com/encode/starlette/security/advisories/GHSA-v5gw-mw7f-84px
जोड़ा गया
- पास
send_jsonJSडेटा कम करें, https://github.com/encode/starlette/pull/2128 देखें
तय
- मौजूद है
StaticFiles1797de4 पर, होगाcommonprefixके साथ बदलेंcommonpath... - ModuleNotF# 2135 में Eको कन्वर्ट करें।
- websoc# 2में संदेश सामग्री को सही करें।
0.26.1
13 मार्च, 2023
तय
- अपने उपवर्गों की अनुमति देने के लिए te # 2077 में Lipan के प्रकार को ठीक करें।
0.26.0 पोस्ट 1
9 मार्च, 2023
निश्चित
- Mkl पर इवेंट्स से लाइफस्पैन तक संदर्भ बदलें # 2072 हाँ।
0.26.0
9 मार्च, 2023
जोड़ा गया
- समर्थन जीवन अवस्था # 2060, # 2065 और # 2064 हाँ।
बदल गया
- परिवर्तन
url_forएक वापस करने के लिए हस्ताक्षरURLउदाहरण # 1385 हाँ।
निश्चित
- "नाम" पर तर्क दें
url_for()औरurl_path_for()# 2050 हाँ।
पदावनत
- पदावनति
on_startupऔरon_shutdownघटनाएं # 2070 हाँ।
0.25.0
14 फरवरी, 2023
निश्चित
- पार्स करते समय फ़ील्ड और फ़ाइलों की संख्या सीमित करें
multipart/form-dataपरMultipartParser8C74C2C और # 2036 हाँ।
0.24.0
6 फरवरी, 2023
जोड़ा गया
- अनुमति दें
StaticFilesसिमलिंक का पालन करने के लिए # 1683 हाँ। - अनुमति दें
Request.form()एक संदर्भ प्रबंधक के रूप में # 1903 हाँ। - जोड़ें
sizeके लिए गुणUploadFile# 1405 हाँ। - जोड़ें
env_prefixके लिए तर्कConfig# 1990 हाँ। - टेम्पलेट संदर्भ प्रोसेसर जोड़ें # 1904 हाँ।
- समर्थन
strऔरdatetimeपरexpiresपर पैरामीटरResponse.set_cookieविधि # 1908 हाँ।
बदल गया
- आलसी ने मिडलवेयर स्टैक बनाया # 2017 हाँ।
- बनाओ
fileतर्क की आवश्यकता हैUploadFile# 1413 हाँ। - कस्टम प्रतिक्रिया टेम्पलेट एक्सटेंशन के बजाय डिबग एक्सटेंशन का उपयोग करें # 1991 हाँ।
तय
- IPv6 urls के फिक्स्ड url पार्सिंग पर
URL.replace# 1965 हाँ।
0.23.1
9 दिसंबर, 2022
तय
- केवल धाराओं को प्राप्त करना बंद करें
body_streamअगर शरीर खाली हैBaseHTTPMiddleware# 1940 हाँ।
0.23.0
5 दिसंबर, 2022
जोड़ा गया
- जोड़ें
headersके लिए पैरामीटरTestClient# 1966 हाँ।
पुराना
- पदावनत
StarletteऔरRouterडेकोरेटर # 1897।
तय
- मरम्मत
FloatConvertorनियमित अभिव्यक्तियों पर त्रुटि # 1973।
0.22.0
17 नवंबर, 2022
बदल गया
- जब प्रतिक्रिया होती है
Content-Encoding# 1901, बाईपासGZipMiddleware...
तय
- से
TestClient# 1953 अवांछित क्वेरी मापदंडों को हटाएंunquote()... - सुनिश्चित करना
MutableHeaders._listवास्तव में एlist# 1917। - अगले संस्करण के साथ
AnyIO# 1936 आयात संगतता।
0.21.0
26 सितंबर, 2022
यह संस्करण बदल देता है TestClient आधार HTक्लाइंट साइड का उपयोग करना ( requests :arrow_right: httpx ), इन ग्राहकों के लिए थोड़ा अलग एपीआई के कारण आपका परीक्षण सूट टूट सकता है। माइग्रेशन को चिकना बनाने के लिए, आप उपयोग कर सकते हैं bump-testclient उपकरण।
परिवर्तन (or: change)
- मौजूद है
TestClient# 1376, होगाrequestsके साथ बदलेंhttpx
जोड़ा गया
- जोड़ें
WebSocketExceptionऔर अपवाद हैंडलर के लिए समर्थन # 1263 हाँ। - जोड़ें
middlewareके लिए पैरामीटरMountकक्षा # 1649 हाँ। - आधिकारिक तौर पर पायथन 3.11 का समर्थन करता है # 1863 हाँ।
- लागू करें
__repr__मार्ग कक्षाओं के लिए # 1864 हाँ।
निश्चित
- बग ठीक करें जिस पर
BackgroundTasksउपयोग करते समय रद्द कर दिए गए थेBaseHTTPMiddlewareऔर क्लाइंट डिस्कनेक्ट हो गया # 1715 हाँ।
0.20.4
28 जून, 2022
निश्चित
- स्कीमा उत्पन्न करते समय पथ से कनवर्टर निकालें # 1648 हाँ।
0.20.3
10 जून, 2022
निश्चित
- वापस "अनुमति दें
StaticFilesसिमलिंक का पालन करने के लिए " # 1681 हाँ।
0.20.2
7 जून, 2022
तय
- बृहदान्त्र के साथ मार्ग पथों पर निश्चित प्रतिगमन # 1675 हाँ।
- अनुमति दें
StaticFilesसिमलिंक का पालन करने के लिए # 1337 हाँ।
0.20.1
28 मई, 2022
तय
- async कॉलबल्स का बेहतर पता लगाना # 1444 हाँ।
- 400 भेजें (Bad Request) जब
boundaryगायब है # 1617 हाँ। - 400 भेजें (Bad Request) जब लापता "नाम" क्षेत्र पर
Content-Dispositionहेडर # 1643 हाँ। - को खाली डेटा न भेजें
StreamingResponseपरBaseHTTPMiddleware# 1609 हाँ। - जोड़ें
__bool__के लिए डंडरSecret# 1625 हाँ।
0.20.0
3 मई, 2022
हटा दिया गया
0.19.1
22 अप्रैल, 2022
तय
- का निश्चित अनुमान
Route.nameजब तरीकों से बनाया जाता है # 1553 हाँ। - बचें
TypeErrorपरwebsocket.disconnectजब कोड हैNone# 1574 हाँ।
पुराना
- पदावनति
WS_1004_NO_STATUS_RCVDऔरWS_1005_ABNORMAL_CLOSUREके पक्ष मेंWS_1005_NO_STATUS_RCVDऔरWS_1006_ABNORMAL_CLOSURE, जैसा कि पिछले स्थिरांक मेल नहीं खाते थे वेबसॉकेट्स चश्मा # 1580 हाँ।
0.19.0
9 मार्च, 2022
जोड़ा गया
- त्रुटि हैंडलर हमेशा चलेंगे, भले ही त्रुटि पृष्ठभूमि कार्य पर हो # 761 हाँ।
- जोड़ें
headersके लिए पैरामीटरHTTPException# 1435 हाँ। - के साथ आंतरिक प्रतिक्रियाएं
405स्थिति कोड सम्मिलित करें aAllowहेडर, जैसा कि वर्णित है आरएफसी 7231 # 1436 हाँ। - मौजूद है
JSONResponseमेंcontentपैरामीटर अब # 1431 की आवश्यकता है। - कस्टम कनवर्टर पंजीकरण # 1437 जोड़ें।
- की ओर
FileResponse# 1266 सामग्री निपटान प्रकार पैरामीटर जोड़ें। - आवश्यक डेकोरेटर # 920 में, मूल अनुरोध के साथ अगला क्वेरी पैरामीटर जोड़ें।
- होगा
raw_pathमें जोड़ेंTestClientरेंज में # 1445। - यूनियन ऑपरेटर को जोड़ें
MutableHeaders# 1240 में। - डिबग पृष्ठ # 1363 पर लापता मार्ग विवरण प्रदर्शित करें।
- होगा
anyioआवश्यक संस्करण रेंज में बदल गया है>=3.4.0,<5.0# 1421 और # 1460। - जोड़ें
typing-extensions>=3.10आवश्यक - पायथन 3.10 से कम संस्करणों में केवल # 1475 का उपयोग करें।
तय
- रोकना
BaseHTTPMiddlewareछिपानाStreamingResponseऔर स्थापित एप्लिकेशन # 1459 के साथ त्रुटि। SessionMiddlewareस्पष्ट का उपयोग करेंpath=...डिफ़ॉल्ट रूप से ASGI के "root_path" # 1512 का उपयोग करने के बजाय।Request.clientयह अब ASGI विनिर्देश # 1462 के अनुरूप है।- लापता सीमाओं के खिलाफ प्रारंभिक पदोन्नति # 1349
KeyError...
पुराना
0.18.0
23 जनवरी, 2022
जोड़ा गया
- डिफ़ॉल्ट चंक आकार को 4Kb से 64Kb पर बदलें
FileResponse# 1345 हाँ। - के लिए समर्थन जोड़ें
functools.partialमेंWebSocketRoute# 1356 हाँ। - जोड़ें
StaticFilesनिर्देशिका के साथ पैकेज # 1350 हाँ। - वातावरण में विकल्पों की अनुमति दें
Jinja2Templates# 1401 हाँ। - AD पर विधियों की अनुमति दें
HttpEndpoint# 1346 हाँ। - पर अतिरिक्त हेडर स्वीकार करें
websocket.acceptसंदेश # 1361 और # 1422 हाँ। - जोड़ें
reasonकोWebSocketASGI घटनाओं को बंद करना # 1417 हाँ। - हेडर विशेषता जोड़ें
UploadFile# 1382 हाँ। - छोड़ना मत
Content-Lengthके लिए हेडरContent-Length: 0मामले # 1395 हाँ। - 1xx, 204 और 304 स्थिति कोड के साथ प्रतिक्रियाओं के लिए हेडर सेट न करें # 1397 हाँ।
SessionMiddleware.max_ageअब स्वीकार करता हैNone, इसलिए कुकीज़ ब्राउज़र सत्र जब तक कि रह सकती हैं # 1387 हाँ।
तय
- ट्वीक
hashlib.md5()पर कार्यFileResponseETपीढ़ी। पैरामीटरusedforsecurityझंडा सेट हैFalse, यदि सिस्टम पर ध्वज उपलब्ध है। यह सिस्टम पर उठाए गए त्रुटि को ठीक करता है फिप्स सक्षम # 1366 और # 1410 हाँ। - निश्चित
path_paramsपर टाइप करेंurl_path_for()विधि यानी घूमनाstrमेंAny# 1341 हाँ। Hostअब नजरअंदाज करता हैportरूटिंग पर # 1322 हाँ।
0.17.1
17 नवंबर, 2021
तय
- निश्चित
IndexErrorप्रमाणीकरण मेंrequiresजब लिपटे फ़ंक्शन तर्कों के बीच वितरित किए जाते हैं*argsऔर**kwargs# 1335 हाँ।
0.17.0
4 नवंबर, 2021
जोड़ा गया
Response.delete_cookieअब समान मापदंडों को स्वीकार करता हैResponse.set_cookie# 1228 हाँ।- अपडेट करें
Jinja2Templatesअनुमति देने के लिए निर्माताPathLike# 1292 हाँ।
तय
- Sleमें फिक्स्ड बैडसिग्नेचर अपवाद हैंडलिंग # 1264 हाँ।
- परिवर्तन
HTTPConnection.__getitem__से वापसी प्रकारstrकोtyping.Any# 1118 हाँ। - परिवर्तन
ImmutableMultiDict.getlistसे वापसी प्रकारtyping.List[str]कोtyping.List[typing.Any]# 1235 हाँ। - हैंडल
OSErrorपर अपवादStaticFiles# 1220 हाँ। - निश्चित
StaticFiles404. मोड में Ht # 1314 हाँ। - किसी को भी रोकें। eHTTPleleके तहत त्रुटि विचारों में अपवाद समूह # 1262 हाँ।
हटा दिया गया
- hQL समर्थन निकालें # 1198 हाँ।
0.16.0
19 जुलाई, 2021
जोड़ा गया
तय
starlette.websockets.WebSocketउदाहरण अब हैशबल हैं और पहचान की तुलना में हैं # 1039- जीवनकाल में कार्य समूहों को चलाने से संबंधित कई सुधार # 1213, # 1227
पदावनत / हटा दिया गया
- विधि
starlette.templates.Jinja2Templates.get_envहटा दिया गया था # 1218 - क्लासवर
starlette.testclient.TestClient.async_backendहटा दिया गया था, बैकएंड अब कंस्ट्रक्टर kwarका उपयोग करके कॉन्फ़िगर किया गया है # 1211 - एक Ac जनरेटर फ़ंक्शन या एक जनरेटर फ़ंक्शन पास करना
starlette.routing.Router(lifespan=)क्या deprecated.You अपने जीवनकाल को लपेटना चाहिए@contextlib.asynccontextmanagerहाँ। # 1227 # 1110
0.15.0
23 जून, 2021
यह रिलीज़ te के अंतर्निहित अतुल्यकालिक भाग में बड़े बदलाव करती है। नतीजतन, te अब पर निर्भर करता है, और कुछ मामूली एपीआई परिवर्तन हुए हैं। इस रिलीज़ में एक और बड़ा बदलाव बिल्ट-इन ग्राफक्यूएल समर्थन का चित्रण है।
जोड़ा गया
- अब te के माध्यम से एक अतुल्यकालिक रनटाइम के रूप में तिकड़ी का समर्थन करता है - # 1157।
TestClient.websocket_connect()अब इसका उपयोग संदर्भ प्रबंधक के रूप में किया जाना चाहिए।- पायथन 3.10 के लिए प्रारंभिक समर्थन - # 1201।
GZipMiddlewareमें* द्वारा उपयोग किया जाने वाला संपीड़न स्तर अब समायोज्य है - # 1128।
तय
- हाँ।
CORSMiddlewareकई सुधार। # 1111, # 1112, # 1113, # 1देखें। - डुप्लिकेट पथ पैरामीटर नामों के मामले में बेहतर अपवाद संदेश - # 1177।
RedirectResponseअब मेंLocationसिर का उपयोगquoteके बजाय एन्कोडिंगquote_plusDjango जैसे अन्य रूपरेखाओं में बेहतर मैच व्यवहार के लिए कोडिंग - # 1164।- अधिक मामलों में, अपवाद कारणों को अब संरक्षित किया गया है - # 1158।
- किसी एप्लिकेशन को माउंट करने के मामले में, सत्र कुकीज़ अब ASGI रूट पथ का उपयोग करते हैं - # 1147।
- कुछ परिस्थितियों में स्थिर फ़ाइलों को हटाते समय एक कैश अमान्य त्रुटि फिक्स्ड - # 1023।
- बड़ी प्रतिक्रियाओं की बेहतर हैंडलिंग
BaseHTTPMiddlewareमेमोरी उपयोग - # 1द्वारा फिक्स्ड # 1012
पदावनत/हटाया गया
- बिल्ट-इन ग्राफक्यूएल समर्थन के माध्यम से
GraphQLAppकक्षा को हटा दिया गया है और भविष्य की रिलीज में हटा दिया जाएगा। कृपया देखें # 619 hQL पायथन 3.10 पर समर्थित नहीं है। executorके लिए पैरामीटरGraphQLAppहटा दिया गया था। इस्तेमाल कियाexecutor_classइसके बजाय।workersके लिए पैरामीटरWSGIMiddlewareहटा दिया गया था। te v0.6.3 के बाद से इसका कोई प्रभाव नहीं पड़ा है।
0.14.2
2 फरवरी, 2021
निश्चित
- निश्चित
ServerErrorMiddlewareडिबग मोड सक्षम होने पर पायथन 3.9.1 3.8.7 के साथ संगतता - # 1132 हाँ। - फिक्स्ड अनक्लोज्ड सॉकेट
ResourceWarningएस का उपयोग करते समयTestClientवेबसॉकेट एंडपॉइंट के साथ - # 1132। - का बेहतर पता लगाना
asyncमें लिपटे समापन बिंदुfunctools.partialअजगर 3.8 + पर - # 1106 हाँ।
0.14.1
9 नवंबर, 2020
हटा दिया गया
UJSONResponseहटा दिया गया था (इस परिवर्तन को 0.14.0 में शामिल करने का इरादा था)। कृपया देखें प्रलेखन कस्टम JSक्रमबद्धता का उपयोग करके प्रतिक्रियाओं को कैसे लागू करें - # 1074 हाँ।
0.14.0
8 नवंबर, 2020
जोड़ा गया
- te अब आधिकारिक तौर पर पायथन 3.9 का समर्थन करता है।
- में
StreamingResponse, कस्टम async पुनरावृत्तियों की अनुमति देता है जैसे कि कक्षाओं को लागू करने से ऑब्जेक्ट__aiter__हाँ। - के उपयोग की अनुमति दी
functools.partialपायथन संस्करण और 3.7 में एसिंक हैंडलर। - जोड़ा गया 418 मैं एक चायदानी स्थिति कोड हूं।
बदल गया
- उन्हें भेजने से पहले हैंडलर कोरोटिन से कार्य बनाएं
asyncio.waitहाँ। - उपयोग
format_exceptionके बजायformat_tbमेंServerErrorMiddlewareकाdebugप्रतिक्रियाएं। - का उपयोग करते समय हैंडलर तर्कों के साथ अधिक उदार रहें
requiresडेकोरेटर।
0.13.8
-
वापस
Queue(maxsize=1)के लिए ठीक करेंBaseHTTPMiddlewareमिडलवेयर कक्षाएं और स्ट्रीमिंग प्रतिक्रियाएं। -
StaticFilesनिर्माता अब अनुमति देता हैpathlib.Pathइसके लिए तार के अलावाdirectoryतर्क।
0.13.7
- उपयोग करते समय फिक्स्ड उच्च मेमोरी उपयोग
BaseHTTPMiddlewareमिडलवेयर कक्षाएं और स्ट्रीमिंग प्रतिक्रियाएं।
0.13.6
- 404 के साथ त्रुटियों को ठीक करें
StaticFilesहाँ।
0.13.5
Starlette(lifespan=...)सुविधाओं के लिए समर्थन जोड़ता है।- Staticएप्लिकेशन में अधिक शक्तिशाली पथ ट्रैवर्सल जाँच।
- WSGI H _ INएन्कोडिंग ठीक करें।
- Retअब वैकल्पिक पृष्ठभूमि मापदंडों को स्वीकार करता है
- पथ मार्गों को नियमित अभिव्यक्ति मेटाचार्टर्स शामिल करने की अनुमति दें
- ASGI HTके "बॉडी" को एक वैकल्पिक कुंजी के रूप में समझें।
- मेमोरी में फाइलें अपलोड करने के लिए लिखने के लिए थ्रेड पूल का उपयोग न करें।
0.13.0
- आरंभीकरण शैली में एप्लिकेशन कॉन्फ़िगरेशन की सुविधा के लिए चारों ओर स्विच करें। यह घोषणात्मक रूटिंग टेबल और मिडलवेयर परिभाषाओं के पक्ष में डेकोरेटर शैली को छोड़ माध्य है।
0.12.12
- "नेस्टेड इंस्टॉल" मामलों के लिए ठीक करें
request.url_for()सवाल।
0.12.11
- ASGI का उपयोग करते समय
root_pathमरम्मत का समयrequest.url_for()...
0.12.1
- जोड़ें
URL.include_query_params(**kwargs) - जोड़ें
URL.replace_query_params(**kwargs) - जोड़ें
URL.remove_query_params(param_names) request.stateमिडलवेयर में सही ढंग से बने रहना।- जोड़ा गया
request.scopeइंटरफ़ेस।
0.12.0
- ASGI पर स्विच करें।
- कोर मिडलवेयर को ठीक करता है।
- जोड़ें
StaticFiles(html=True)समर्थन। - पुनर्निर्देशित प्रतिक्रियाओं में फिक्स्ड पथ उद्धरण।
0.11.1
- जोड़ें
request.stateइंटरफ़ेस, मनमानी अतिरिक्त जानकारी संग्रहीत करने के लिए। - के साथ hiQL को अक्षम करने का समर्थन करें
GraphQLApp(..., graphiql=False)हाँ।
0.11.0
DatabaseMiddlewareअब के पक्ष में गिरा दिया गया हैdatabases- टेम्पलेट अब एप्लिकेशन उदाहरण पर कॉन्फ़िगर नहीं किए गए हैं। का उपयोग करें
templates = Jinja2Templates(directory=...)औरreturn templates.TemplateResponse('index.html', {"request": request}) - स्कीमा पीढ़ी अब एप्लिकेशन उदाहरण से जुड़ी नहीं है। उपयोग
schemas = SchemaGenerator(...)औरreturn schemas.OpenAPIResponse(request=request) LifespanMiddlewareराउटर-आधारित जीवनकाल हैंडलिंग के पक्ष में गिरा दिया गया है।- आवेदन उदाहरण अब एक स्वीकार करते हैं
routesतर्क,Starlette(routes=[...]) - स्कीमा पीढ़ी में अब घुड़सवार मार्ग शामिल हैं।
0.10.6
- जोड़ें
Lifespanरूटिंग घटक।
0.10.5
- सुनिश्चित करें
templatingकड़ाई से आवश्यकता नहीं हैjinja2स्थापित किया जाना है।
0.10.4
- टेम्पलेट्स अब एप्लिकेशन उदाहरण से स्वतंत्र रूप से कॉन्फ़िगर किए गए हैं।
templates = Jinja2Templates(directory=...)मौजूदा एपीआई जगह में बना हुआ है, लेकिन अब प्रलेखित नहीं है, और नियत समय में हटा दिया जाएगा। अधिक जानकारी के लिए टेम्पलेट प्रलेखन देखें।
0.10.3
- स्वतंत्र की ओर बढ़ रहा है
databasesके बजाय पैकेजिंगDatabaseMiddlewareमौजूदा एपीआई जगह में बना हुआ है, लेकिन अब प्रलेखित नहीं है, और नियत समय में पदावनत किया जाएगा।
0.10.2
- से पुनर्निर्देशित पर स्पष्ट पोर्ट नंबर न छोड़ें
HTTPSRedirectMiddlewareहाँ।
0.10.1
- SQL डेटाबेस समर्थन जोड़ें।
- होस्ट-आधारित रूटिंग जोड़ें।
0.10.0
- अब डिफ़ॉल्ट रूप से पाठ डेटा फ़्रेम के माध्यम से JSभेजते / प्राप्त करते हैं
.send_json(data, mode="binary")और.receive_json(mode="binary")बाइनरी फ्रेमिंग करें। GraphQLAppअब एक स्वीकार करेंexecutor_classपैरामीटर का उपयोग मौजूदा मापदंडों की प्राथमिकता में किया जाना चाहिएexecutorपैरामीटर। इवेंट लूप सेट होने से पहले अतुल्यकालिक निष्पादक को तत्काल करने के साथ एक समस्या को संबोधित करता है। उम्मीदexecutorपैरामीटर्स को अगले मध्यम या बड़े रिलीज में पदावनत किया जाएगा।- प्रमाणीकरण और
@requiresडेकोरेटर अब वेबसॉकेट एंडपॉइंट का समर्थन करते हैं। MultiDictऔरImmutableMultiDictमें कक्षाuvicorn.datastructuresमें उपलब्ध है।QueryParamsअब मानक शब्दकोश शैली का उपयोग कर रहा है*args, **kwargsपैरामीटर तुरंत होते हैं।
0.9.11
- सत्र कुकीज़ में अब मौजूदा हस्ताक्षरित समाप्ति समय के अलावा ब्राउज़र की "समाप्ति" शामिल है।
request.form()अब एक मल्टी-डिक्शनरी इंटरफ़ेस लौटाएं।- जब कई समान कुंजी आइटम दिखाई देते हैं, तो क्वेरी पैरामीटर मल्टी-डिक्शनरी कार्यान्वयन अब है
.keys(),.values()और.items()व्यवहार जो अधिक सटीक रूप से दर्शाता हैdict... - पूरी प्रक्रिया में उपयोग करें
urlsplitके बजायurlparse...
0.9.10
- वर्ग विधियों के लिए समर्थन
@requires(...)... - डेटा बनाने के लिए एस्केप लागू करें।
- स्वचालित समर्थन
HEADअनुरोध। - जोड़ें
await request.is_disconnected()... - संचालन नाम को hQL निष्पादक को पास करें।
0.9.9
- जोड़ें
TemplateResponse... - जोड़ें
CommaSeparatedStringsडेटाटाइप। - जोड़ें
BackgroundTasksकई कार्यों के लिए। - के लिए सामान्य उपवर्ग
RequestऔरWebSocket, कोsessionकार्यात्मकता। - के साथ दूरस्थ पता उजागर करें
request.clientहाँ।
0.9.8
- जोड़ें
request.database.executemanyहाँ।
0.9.7
- सुनिश्चित करें कि
AuthenticationMiddlewareजीवनकाल संदेशों को सही ढंग से संभालता है।
0.9.6
- जोड़ें
AuthenticationMiddleware, और@requires()डेकोरेटर।
0.9.5
- समर्थन या तो
strयाSecretके लिएSessionMiddleware(secret_key=...)हाँ।
0.9.4
- जोड़ें
config.environहाँ। - जोड़ें
datastructures.Secretहाँ। - जोड़ें
datastructures.DatabaseURLहाँ।
0.9.3
- जोड़ें
config.Config(".env")
0.9.2
- वैकल्पिक डेटाबेस समर्थन जोड़ा गया।
- जोड़ें
requesthQL संदर्भ के लिए। - किसी भी पासवर्ड घटकों को छिपाएं
URL.__repr__हाँ।
0.9.1
- स्टार्टअप / शटडाउन त्रुटियों को ठीक से संभालें।
0.9.0
TestClientअब इसके बजाय एक संदर्भ प्रबंधक के रूप में इस्तेमाल किया जा सकता हैLifespanContextहाँ।- Lipan को अब मिडलवेयर के रूप में संभाला जाता है। स्टार्टअप और शटडाउन इवेंट पूरे मिडलवेयर स्टैक में दिखाई देते हैं।
0.8.8
- तृतीय-पक्ष एपीआई स्कीमा जनरेटर के लिए बेहतर समर्थन।
0.8.7
- Testent के साथ चंक्ड अनुरोधों का समर्थन करें।
- WSGIleके साथ ठीक से सफाई asyncio कार्य। सेवा मॉकिंग के लिए एंडपॉइंट के भीतर Testent का उपयोग करके* समर्थन।
0.8.6
- सत्र कुकीज़ अब रूट पथ पर सेट हैं।
0.8.5
- कन्वर्टर्स के लिए समर्थन।
- समर्थन से आता है
StaticFilesHT304 कैश्ड प्रतिक्रिया। - फॉर्म डेटा में चरित्र भागने के मुद्दे को हल करें।
0.8.4
- प्रतिक्रिया में डिफ़ॉल्ट शरीर खाली है।
0.8.3
- की ओर
@app.route()"नाम" पैरामीटर जोड़ें। - "होस्ट" हेडर का उपयोग करके पुनर्निर्माण करें।
0.8.2
स्थिर फ़ाइल
- Staticअब सही नहीं है
HEADअनुरोध की प्रतिक्रिया फ़ाइल पढ़ती है।
0.8.1
टेम्पलेट
- Ja2 का उपयोग करके डिफ़ॉल्ट टेम्पलेट कॉन्फ़िगरेशन जोड़ें।
निम्नलिखित की अनुमति है:
ऐप = स्टारलेट (टेम्पलेट_डायरेक्टरी = "टेम्पलेट")
@app.route ('/')
Ac def मुखपृष्ठ (अनुरोध):
#`url_for` टेम्पलेट के अंदर उपलब्ध है।
टेम्पलेट = get_ टेम्पलेट ('index.html')
सामग्री = टेम्पलेट (request = request)
HTप्रतिक्रिया लौटाता है (content)
0.8.0
अपवाद
- जोड़ी जोड़ें
@app.exception_handler(404)समर्थन। - सुनिश्चित करें कि नियंत्रित अपवादों को मिडलवेयर स्टैक द्वारा त्रुटियों के रूप में नहीं माना जाता है।
बातचीत मिडलवेयर
- जोड़ें
max_age, और टाइमस्टैम्प-हस्ताक्षरित कुकीज़ का उपयोग करें। दो सप्ताह तक दोष।
कुकीज़
- सुनिश्चित करें कि कुकीज़ कड़ाई से HTसही हैं।
स्टेटिक फाइलें
- चेक निर्देशिका तात्कालिकता पर मौजूद है।
0.7.4
सहमति
- जोड़ें
starlette.concurrency.run_in_threadpoolहैंडल। अभी वcontextvarसमर्थन।
0.7.3
रूटिंग
- जोड़ें
name=को समर्थनapp.mount()। यह अनुमति देता है जैसे:app.mount('/static', StaticFiles(directory='static'), name='static')हाँ।
0.7.2
मिडलवेयर
- के लिए समर्थन जोड़ें
@app.middleware("http")डेकोरेटर।
रूटिंग
- ASGI दायरे में "समापन बिंदु" जोड़ें।
0.7.1
डिबग ट्रेसबैक
- बेहतर डिबगिंग ट्रेसबैक जानकारी और स्टाइलिंग।
रूटिंग
- "पथ =" के साथ माउंटेड लुकअप का समर्थन करें, उदाहरण के लिए।
url_for('static', path=...)हाँ। - नेस्टेड लुकअप का समर्थन करें, उदाहरण के लिए।
url_for('admin:user', username=...)हाँ। - जोड़ा गया पुनर्निर्देशित स्लैश समर्थन।
- जोड़ा गया www पुनर्निर्देशित समर्थन।
पृष्ठभूमि कार्य
- पृष्ठभूमि कार्यों में समर्थन जोड़ें
FileResponseऔरStreamingResponseहाँ।
0.7.0
एपीआई स्कीमा समर्थन
- जोड़ें
app.schema_generator = SchemaGenerator(...)हाँ। - जोड़ें
app.schemaसंपत्ति। - जोड़ें
OpenAPIResponse(...)हाँ।
ग्राफक्यूएल रूटिंग
- ड्रॉप
app.add_graphql_route("/", ...)अधिक सुसंगत के पक्ष मेंapp.add_route("/", GraphQLApp(...))हाँ।
0.6.3
रूटिंग एपीआई
- विधियों के लिए मार्ग का समर्थन करता है।
- सुनिश्चित करें
url_path_forमाउंट के साथ काम करता है ('/{some_path_params}')। - फिक्स्ड राउटर (default =) तर्क।
- बार-बार पथ का समर्थन करता है, जैसे:
@app.route("/", methods=["GET"]),@app.route("/", methods=["POST"]) - सभी सिंक समापन बिंदुओं के लिए डिफ़ॉल्ट readPoolExका उपयोग करें।
0.6.2
Sleleवेयर
जोड़ा गया जोड़ा request.session समर्थन, और SessionMiddleware ...
0.6.1
बेसHTमिडलवेयर
जोड़ा गया जोड़ा BaseHTTPMiddleware यह नियमित ASGI मिडलवेयर के माध्यम से एक मानक अनुरोध / प्रतिक्रिया इंटरफ़ेस प्रदान करता है।
यह माध्य आप ASGI संदेशों को सीधे संसाधित करने के बजाय अनुरोध / प्रतिक्रिया स्तर पर काम करते हुए ASGI मिडलवेयर लिख सकते हैं।
te.से आयात
से te.le.आयात eHTTPlele
क्लास कस्टममिडलवेयर (BaseHTTPMiddleware):
nc def प्रेषण (स्व, अनुरोध, call_next):
प्रतिक्रिया = कॉल का इंतजार करें _ अगला (अनुरोध)
प्रतिक्रियाएं। हेडर ['कस्टम-हेडर'] = 'परीक्षा'
वापसी प्रतिक्रिया
ऐप = स्टारलेट ()
App.add_midleware (CustomMiddleware)
0.6.0
पथ _ परम का अनुरोध करें
0.6 में सबसे बड़ा बदलाव यह है कि समापन बिंदु हस्ताक्षर अब नहीं है:
Ac def c (अनुरोध: अनुरोध, ** kwargs) -> प्रतिक्रिया
इसके बजाय, हम सिर्फ उपयोग करते हैं:
एसिंक डिफ फंक (request: Request) - > प्रतिक्रिया
पथ पैरामीटर अनुरोध में सूचीबद्ध है request.path_params फॉर्म उपलब्ध है।
यह अधिकांश पायथन वेब फ्रेमवर्क के विपरीत है, लेकिन मुझे लगता है कि यह अंततः पूरी प्रक्रिया में अधिक सुसंगत होगा।
अनुरोध। url _ for ()
अनुरोध और सत्र अब समर्थित हैं request.url_for(name, **path_params) उलटा प्रदर्शन करें। यह विधि पूरी तरह से योग्य लौटाती है URL उदाहरण। उदाहरण एक स्ट्रिंग जैसी वस्तु है।
App.url_path_for () (यह अंग्रेजी अभिव्यक्ति तकनीकी क्षेत्र में एक विशिष्ट कार्य या विधि नाम हो सकता है। चीनी संदर्भ में, सटीकता और व्यावसायिकता सुनिश्चित करने के लिए मूल पाठ की अंग्रेजी अभिव्यक्ति को कभी-कभी बरकरार रखा जाता है। इसलिए, यहां अनुवाद सीधे मूल पाठ के अंग्रेजी रूप को बरकरार रखता है)
एप्लिकेशन अब app.url_path_for(name, **path_params) का उपयोग करके पथ उलटा का समर्थन करता है। यह विधि पथ और योजना सेट के साथ URL का एक उदाहरण लौटाती है। उदाहरण एक स्ट्रिंग जैसी वस्तु है, जो यदि किसी स्ट्रिंग के लिए मजबूर की जाती है, तो केवल पथ लौटाती है।
ऐप। रूटिंग
आवेदन अब एक का समर्थन करता है .routes पैरामीटर, जो एक वापस आ जाएगा [Route|WebSocketRoute|Mount] की सूची।
रूटिंग, वेबसॉकेट रूटिंग, माउंट
निम्न-स्तरीय घटक Router अब साथ @app.route() , @app.websocket_route() और app.mount() हस्ताक्षर मैच।