OVERVIEW
"Suds" वेब सेवा क्लाइंट पायथन के लिए एक हल्का SOAP-आधारित क्लाइंट है, जो LGPL के तहत लाइसेंस प्राप्त है।
विवरण के लिए, यहां जाएं:
रिलीज़-नोट्स:
संस्करण 0.3.6 (04-31-09):
- हार्ड कोडेड /tmp/suds को tempfile.gettempdir() में बदलें और आवश्यकतानुसार suds/ बनाएं।
- Any.get_attribute() के लिए रिटर्न प्रकार ठीक करें।
- http कैशिंग को अपडेट करें ताकि file:// url अनदेखा किए जाएं।
- केवल रिप्लाई इंजेक्ट किए जाने पर संदेशों की बेहतर लॉगिंग।
- XInteger और XFloat प्रकारों को ठीक करें ताकि लौटाए गए ऐरे का सही अनुवाद हो।
- समान नेमस्पेस के साथ xs:import स्कीमा ठीक करें।
- बाहरी संदर्भों को लोड न करने के लिए पार्सर को अपडेट करें और XMLSchema.xsd स्थान के लिए Import.bind() जोड़ें।
- स्कीमा डॉक्टर जोड़ें - रनटाइम पर XSD में पैच लगाने के लिए उपयोग किया जाता है। (विकल्प.doctor देखें)
- पायथन 2.6 में डिप्रीकेशन चेतावनियों को ठीक करें।
- पर परिभाषित @default के लिए व्यवहार जोड़ें।
- @xsi:type मान को हमेशा doc/literal के लिए qualified बनाने के लिए बदलें। (0.3.5 परिवर्तन को वापस लेता है)।
- @xsi:type कब qualified होता है, इसे नियंत्रित करने के लिए Option.xstq विकल्प जोड़ें।
- फिक्स किए गए टिकट: #64, #129, #205, #206, #217, #221, #222, #224, #225, #228, #229, #230
संस्करण 0.3.5 (04-16-09):
- http कैशिंग जोड़ता है। डिफ़ॉल्ट (1) दिन है। विधि आह्वान पर लागू नहीं होता है। विवरण के लिए दस्तावेज़ीकरण देखें।
- अब fc9 से पहले निर्माण न करने के बाद से spec में फेडोरा संस्करण जांच हटा दी गई।
- tar.sh के साथ टारबॉल बनाने के लिए makefile अपडेट किया गया।
- document/literal के लिए bare/wrapped निर्धारण WSDL में स्थानांतरित किया गया।
- Transport को एक पैकेज में पुनर्गठित किया गया (http हेडर की बेहतर लॉगिंग प्रदान करता है)।
- फिक्स किए गए टिकट: #207, #209, #210, #212, #214, #215
संस्करण 0.3.4 (02-24-09):
- स्टैटिक (स्वचालित) Import.bind('http://schemas.xmlsoap.org/soap/encoding/'), उपयोगकर्ताओं को अब ऐसा करने की आवश्यकता नहीं है।
- मूल ws-सुरक्षा {{{UsernameToken}}} और केवल क्लियर-टेक्स्ट पासवर्ड के साथ।
- डिक्शनरी पास करके ''विरल'' सोप हेडर के लिए समर्थन जोड़ें
- उपयोगकर्ता द्वारा परिभाषित मनमाने सोप हेडर के लिए समर्थन जोड़ें
- एकाधिक सोप हेडर प्रविष्टियों वाले सेवा संचालन को ठीक करता है।
- स्कीमा लोडिंग और डीरेफरेंसिंग एल्गोरिदम में सुधार।
- नेस्टेड सोप मल्टीरेफ्स ठीक किया गया।
- elementFormDefault="unqualified" के लिए बेहतर (सच्चा) समर्थन अधिक सटीक नेमस्पेसिंग प्रदान करता है।
- WSDL भाग प्रकार अब डिफ़ॉल्ट रूप से WSDL targetNamespace नहीं होते।
- फिक्स किए गए टिकट: #4, #6, #21, #32, #62, #66, #71, #72, #114, #155, #201.
संस्करण 0.3.3 (11-31-08):
- अब (परीक्षण) पैकेज स्थापित नहीं करता।
- API-3 प्रस्ताव को लागू करता है ( https://fedorahosted.org/suds/wiki/Api3Proposal )
- प्लगेबल ट्रांसपोर्ट
- कीवर्ड विधि तर्क
- डिफ़ॉल्ट ट्रांसपोर्ट में बुनियादी http प्रमाणीकरण
- सोप संदेश में नेमस्पेस उपसर्ग सामान्यीकरण जोड़ें।
- खाली नोड्स की बेहतर सोप संदेश छंटाई।
- फिक्स किए गए टिकट: #51 - #60
संस्करण 0.3.2 (11-7-08):
- SOAP {{{MultiRef}}} समर्थन ''(पहला पास r300 में जोड़ा गया)''
- नए स्कीमा टैग के लिए समर्थन जोड़ें:
- नए xs <--> पायथन प्रकार रूपांतरणों के लिए समर्थन जोड़ा गया:
- xs:int
- xs:long
- xs:float
- xs:double
- उत्पादित नोड्स के नेमस्पेसिंग को और तेज करने के लिए मार्शलर और बाइंडिंग को संशोधित करें।
- स्कीमा लोडिंग के दौरान ''xsd'' पैकेज dereference() में अनंत पुनरावृत्ति ठीक की गई।
- WSDL रूट में स्कीमा फ़ाइलों के wsdl:import/ के लिए समर्थन जोड़ें।
- (&) के दोहरे एन्कोडिंग को ठीक करें।
- Client API जोड़ें:
- setheaders() - कीवर्ड के समान लेकिन सभी आह्वानों के लिए काम करता है।
- addprefix() - नेमस्पेस उपसर्गों का मैपिंग।
- setlocation() - WSDL में स्थान को ओवरराइड करें; सभी कॉल के लिए कीवर्ड के समान।
- setproxy() - सभी आह्वानों के लिए प्रॉक्सी कीवर्ड के समान।
- सोप हेडर के लिए उचित नेमस्पेस उपसर्ग जोड़ें।
- फिक्स किए गए टिकट: #5, #12, #34, #37, #40, #44, #45, #46, #48, #49, #50, #51
संस्करण 0.3.1 (10-1-08):
- 0.3 रिलीज़ का त्वरित अनुवर्ती, जिसने मल्टी-पोर्ट सेवा परिभाषाओं के साथ काम करना आवश्यकता से अधिक कठिन बना दिया था। विचार करने (और अच्छी नींद लेने) के बाद, यह स्पष्ट लगा कि कुछ बदलावों से यह बहुत आसान हो जाएगा: 1) गैर-सोप बाइंडिंग को फ़िल्टर करें - वे वास्तविक समस्या पैदा कर रहे थे; 2) चूंकि अधिकांश सर्वर किसी भी सोप बाइंडिंग (सोप 1.1 और 1.2) से खुश हैं, इसलिए पोर्ट योग्यता के बिना उन्हें आह्वान करते समय विधियों के अस्पष्ट संदर्भ लगभग हर मामले में ठीक काम करेंगे। तो, क्यों न केवल सड्स को पोर्ट चुनने दिया जाए? जब आवश्यक न हो तो उपयोगकर्ता को ऐसा करने के लिए मजबूर न करें। अधिकांश मामलों में, 0.2.9 और पहले के उपयोगकर्ताओं को 0.3 पर जाने पर अपने कोड को अपडेट करने की आवश्यकता नहीं होगी जैसा कि उन्हें 0.3 में हो सकती थी।
संस्करण 0.3 (9-30-08):
-
0.2.9 में शुरू की गई मल्टी-पोर्ट सेवाओं के लिए समर्थन का विस्तार करता है। यह जोड़ एकाधिक सेवाओं को समान विधि परिभाषित करने की अनुमति देता है और सड्स इसे उचित रूप से संभालेगा। अनुभाग 'एकाधिक पोर्ट वाली सेवाएं:' देखें।
-
मल्टी-डॉक्यूमेंट document/literal सोप बाइंडिंग शैली के लिए समर्थन जोड़ें।
अनुभाग 'मल्टी-डॉक्यूमेंट Document/Literal:' देखें।
-
(xs:group, xs:attributeGroup) टैग के लिए समर्थन जोड़ें।
-
Client.last_sent() और Client.last_received() जोड़ें।
संस्करण 0.2.9 (9-09-08):
- एक सेवा के भीतर एकाधिक पोर्ट के लिए समर्थन।
- विशेषता संदर्भ <xs:attribute ref=""/>
- सैक्स पैकेज में XML विशेष वर्ण एन्कोडर को प्लगेबल बनाएं
संस्करण 0.2.8 (8-28-08):
-
document/literal बाइंडिंग को अपडेट करें ताकि हमेशा द्वारा संदर्भित दस्तावेज़ रूट भेजा जाए।
स्पेस और उपयोगकर्ता इनपुट की एक और समीक्षा के बाद, ऐसा लगता है कि संदर्भित
तत्व हमेशा दस्तावेज़ रूट होता है।
-
'binding' schemaLocations को namespace-uri में मैप करने के लिए समर्थन जोड़ें।
यह उन आयातों के लिए है जो schemaLocation निर्दिष्ट नहीं करते हैं और फिर भी स्कीमा को डाउनलोड करने की अपेक्षा करते हैं।
जैसे: Axis 'http://schemas.xmlsoap.org/soap/encoding/' का संदर्भ बिना schemaLocation के देता है।
इसलिए, ऐसा करके:
from suds.xsd.sxbasic import Import.
Import.bind('http://schemas.xmlsoap.org/soap/encoding/')
स्कीमा एक schemaLocation से बंध जाता है और यह डाउनलोड हो जाता है।
-
बुनियादी अनमार्शलर को /schema/ की आवश्यकता नहीं है।
इसे पुनर्गठन के दौरान हटा दिया जाना चाहिए था लेकिन छूट गया था।
-
क्लाइंट को अपडेट करें ताकि kwargs को send() में पास किया जा सके और WSDL में सेवा स्थान को ओवरराइड करने के लिए /location/ kwarg जोड़ें।
-
मार्शलर को अपडेट करें ताकि उन ऑब्जेक्ट विशेषताओं के लिए XML उत्सर्जित न हो जो दोनों वैकल्पिक और value=None हों और जो तत्वों और/या विशेषताओं का प्रतिनिधित्व करती हों।
* फैक्ट्री (बिल्डर) को अपडेट करें ताकि सभी विशेषताएँ शामिल हों।
* SchemaObject में optional() विधि जोड़ें।
-
यदि निर्दिष्ट किया गया हो तो WSDL को अपडेट करें ताकि संचालन में नेमस्पेस ओवरराइड हो।
-
स्कीमा लोडिंग समस्या ठीक करें - आयात प्रसंस्करण से पहले सभी स्कीमा बनाएं।
-
फेडोरा में सबमिशन की तैयारी में पैकेजिंग अपडेट करें
संस्करण 0.2.7 (8-11-08):