{"id":28281,"library":"spring-py-core","title":"Spring Python Core","description":"A Python implementation of the Spring Framework Inversion of Control (IoC) container, providing dependency injection, bean management, and configuration support. Currently at version 0.1.5, released with a monthly cadence. Requires Python 3.11+.","status":"active","version":"0.1.5","language":"python","source_language":"en","source_url":"https://github.com/spring-py/spring-py-core","tags":["spring","ioc","dependency-injection","python3.11+"],"install":[{"cmd":"pip install spring-py-core","lang":"bash","label":"Latest stable"}],"dependencies":[],"imports":[{"wrong":"from spring_py_core import SpringApplication","symbol":"SpringApplication","correct":"from spring_py import SpringApplication"},{"symbol":"ApplicationContext","correct":"from spring_py import ApplicationContext"},{"symbol":"Autowired","correct":"from spring_py import Autowired"}],"quickstart":{"code":"from spring_py_core import SpringApplication\nfrom spring_py_core.annotations import Component, Autowired\n\n@Component\nclass Greeter:\n    def greet(self):\n        return \"Hello, Spring!\"\n\n@Component\nclass App:\n    @Autowired\n    def __init__(self, greeter: Greeter):\n        self.greeter = greeter\n\n    def run(self):\n        print(self.greeter.greet())\n\nif __name__ == \"__main__\":\n    SpringApplication.run(App)","lang":"python","description":"Create two components with dependency injection and run the application."},"warnings":[{"fix":"Use 'import spring_py_core' (underscores) after pip installing 'spring-py-core' (hyphens).","message":"The package name on PyPI is 'spring-py-core' but the import module uses underscores: 'spring_py_core'. Common installation mistake leads to ImportError.","severity":"gotcha","affected_versions":"all"},{"fix":"Ensure Python 3.11 or higher is used.","message":"Only Python 3.11+ is supported. Installing on older Python versions will fail.","severity":"gotcha","affected_versions":"all"},{"fix":"Pass the class object directly: SpringApplication.run(App)","message":"In version 0.1.5, the 'SpringApplication.run()' method no longer accepts a class as a string; it must be a class reference.","severity":"breaking","affected_versions":">=0.1.5"},{"fix":"Replace 'XmlBeanFactory' with 'AnnotationConfigApplicationContext' and use annotations for configuration.","message":"The 'XmlBeanFactory' is deprecated in 0.1.5. Use 'AnnotationConfigApplicationContext' instead.","severity":"deprecated","affected_versions":">=0.1.5"}],"env_vars":null,"search_vec":"'0.1.5':27 '3.11':35 'bean':19 'cadenc':32 'configur':22 'contain':15 'control':13 'core':3 'current':24 'depend':17,39 'dependency-inject':38 'framework':10 'implement':6 'inject':18,40 'invers':11 'ioc':14,37 'manag':20 'month':31 'provid':16 'python':2,5,34 'python3.11':41 'releas':28 'requir':33 'spring':1,9,36 'support':23 'version':26","created_at":"2026-05-09T05:54:41.067088+00:00","updated_at":"2026-05-09T05:54:41.067088+00:00","problems":null,"ecosystem":"pypi","meta_description":null,"install_score":null,"quickstart_score":null,"quickstart_tag":null,"pypi_latest":null,"cli_name":"","cli_version":null,"type":"library","homepage":null,"github":null,"docs":null,"changelog":null,"pypi":"https://pypi.org/project/spring-py-core/","npm":null,"openapi_spec":null,"status_page":null,"smithery":null,"categories":["web-framework","serialization"],"base_url":null,"auth_type":null,"provenance":{"verified_status":"passing","verified_at":"2026-07-03","last_verified":"2026-07-03","next_check":"2026-08-02","install_tag":null}}