# Overcoming PyUnos Pythonic Limitations in LibreOffice > [! note]- > The content of this page is generated by audio/video transcription and text transformation from the content and links of this source. Source: [https://fosdem.org/2025/schedule/event/fosdem-2025-6346-libreoffice-s-python-api-working-around-limitations-of-the-pythonic-approach/](https://fosdem.org/2025/schedule/event/fosdem-2025-6346-libreoffice-s-python-api-working-around-limitations-of-the-pythonic-approach/) <video src="https://video.fosdem.org/2025/h2213/fosdem-2025-6346-libreoffice-s-python-api-working-around-limitations-of-the-pythonic-approach.av1.webm" controls></video> ## Summary & Highlights: This session at FOSDEM 2025, led by Sarper Akdemir, delves into the intricacies of using LibreOffice's Python API, known as PyUno, for extension development. PyUno is praised for its cross-platform capabilities and ease of use due to its Pythonic nature. However, it also poses challenges, particularly in handling sequences, enums, and interface queries. Akdemir provides insights into overcoming these limitations with practical tips and tricks. **Introduction to PyUno** PyUno, a Python API for LibreOffice, is highlighted for its user-friendly and cross-platform nature. Unlike other UNO bindings that require compilation, PyUno allows developers to create extensions that work across different systems effortlessly. This section introduces PyUno's advantages and sets the stage for discussing its limitations. **Challenges and Workarounds** Despite its benefits, PyUno has limitations, particularly with sequences and enums due to Python's handling of data types. Akdemir discusses the challenges of using sequences represented by tuples and the lack of native enums in Python. He offers workarounds such as using UNO.any for type casting and the UNO.invoke method for complex function calls, though these solutions can be cumbersome. **Interface Implementation Issues** Another challenge is querying the implementation of interfaces, which is not straightforward in PyUno. Akdemir explains the need to use the query interface method and provides guidance on how to work around these issues, emphasizing the importance of understanding underlying types. **Debugging and Practical Tips** Akdemir shares practical tips for debugging in PyUno, such as enabling debug flags to access Python exceptions and print statements. He highlights the importance of reading documentation and experimenting with PyUno's features to enhance development efficiency. **Potential and Applications** Despite its limitations, PyUno offers significant potential for application development in LibreOffice. Akdemir encourages developers to explore its capabilities for creating custom UIs and integrating various tools. He underscores the importance of community contributions to improve PyUno further. ## Importance for an eco-social transformation PyUno's cross-platform nature and ease of use make it a valuable tool for eco-social designers aiming to create accessible and inclusive software solutions. Its ability to integrate with various data processing tools and AI can support sustainable development by enabling the creation of efficient, adaptable applications. However, challenges such as handling data types and interface queries highlight the need for ongoing community collaboration to enhance its capabilities. Eco-social designers can leverage PyUno to develop tools that promote digital inclusivity and accessibility, though they must navigate technical hurdles and advocate for open-source collaboration to overcome these challenges. ## Links [Video recording (AV1/WebM)](https://video.fosdem.org/2025/h2213/fosdem-2025-6346-libreoffice-s-python-api-working-around-limitations-of-the-pythonic-approach.av1.webm) - 41.6 MB [Video recording (MP4)](https://video.fosdem.org/2025/h2213/fosdem-2025-6346-libreoffice-s-python-api-working-around-limitations-of-the-pythonic-approach.av1.mp4) - 226.8 MB [Video recording subtitle file (VTT)](https://video.fosdem.org/2025/h2213/fosdem-2025-6346-libreoffice-s-python-api-working-around-limitations-of-the-pythonic-approach.vtt) [Chat room(web)](https://fosdem.org/2025/chat/h2213) [Chat room(app)](https://fosdem.org/2025/chat/h2213/app)