{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":642661495,"defaultBranch":"main","name":"PyNest","ownerLogin":"PythonNest","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2023-05-19T04:22:25.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/133997519?v=4","public":true,"private":false,"isOrgOwned":true},"refInfo":{"name":"","listCacheKey":"v0:1726389384.0","currentOid":""},"activityList":{"items":[{"before":"8cf9da7afefe69a990a9d82a57d30e4c495b99c8","after":"3105c4144c15de100a43f739152244949c811a5e","ref":"refs/heads/main","pushedAt":"2024-09-15T08:36:20.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"ItayTheDar","name":"Itay Dar","path":"/ItayTheDar","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/118370953?s=80&v=4"},"commit":{"message":"Increment version to","shortMessageHtmlLink":"Increment version to"}},{"before":"20afff12bcb6b93a5c52291d21e204645b1ea50c","after":"8cf9da7afefe69a990a9d82a57d30e4c495b99c8","ref":"refs/heads/main","pushedAt":"2024-09-15T08:29:35.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"ItayTheDar","name":"Itay Dar","path":"/ItayTheDar","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/118370953?s=80&v=4"},"commit":{"message":"Fix async orm provider session (#78)","shortMessageHtmlLink":"Fix async orm provider session (#78)"}},{"before":"6aa060a3425ff7458f7851642fdaa23c509ddcae","after":"20afff12bcb6b93a5c52291d21e204645b1ea50c","ref":"refs/heads/main","pushedAt":"2024-08-06T17:04:21.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"ItayTheDar","name":"Itay Dar","path":"/ItayTheDar","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/118370953?s=80&v=4"},"commit":{"message":"Increment version to","shortMessageHtmlLink":"Increment version to"}},{"before":"713a00e2bcaa89fae9dc15940f160bd33f7833cf","after":"6aa060a3425ff7458f7851642fdaa23c509ddcae","ref":"refs/heads/main","pushedAt":"2024-08-06T17:01:24.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"ItayTheDar","name":"Itay Dar","path":"/ItayTheDar","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/118370953?s=80&v=4"},"commit":{"message":"(feat) build cli apps with pynest (#73)\n\n* add echo as an extra param to allow disabling logs from db\r\n\r\n* (feat): add cli application building support using pynest structure\r\n\r\n* (fix): ModuleNotFoundError: No module named 'nest.cli.cli'\r\n\r\n* (fix): ModuleNotFoundError: No module named 'nest.cli.cli'\r\n\r\n* (fix): ModuleNotFoundError: No module named 'nest.cli.cli'\r\n\r\n* (fix): ModuleNotFoundError: No module named 'nest.cli.cli'\r\n\r\n* (fix): ModuleNotFoundError: No module named 'nest.cli.cli'\r\n\r\n* (fix): ModuleNotFoundError: No module named 'nest.cli.cli'\r\n\r\n* (fix): ModuleNotFoundError: No module named 'nest.cli.cli'\r\n\r\n* (fix): ModuleNotFoundError: No module named 'nest.cli.cli'\r\n\r\n* (fix): ModuleNotFoundError: No module named 'nest.cli.cli'\r\n\r\n* add support in async cli commands\r\n\r\n* (format): run black\r\n\r\n* remove aliases.py file","shortMessageHtmlLink":"(feat) build cli apps with pynest (#73)"}},{"before":"4d239923eace38afdeae6515eb68b139ec506ca5","after":"713a00e2bcaa89fae9dc15940f160bd33f7833cf","ref":"refs/heads/main","pushedAt":"2024-07-25T05:12:26.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"ItayTheDar","name":"Itay Dar","path":"/ItayTheDar","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/118370953?s=80&v=4"},"commit":{"message":"Increment version to","shortMessageHtmlLink":"Increment version to"}},{"before":"33a2fcfb4ca74ad0924bc549b363a12b372dfb28","after":"4d239923eace38afdeae6515eb68b139ec506ca5","ref":"refs/heads/main","pushedAt":"2024-07-24T16:34:13.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"ItayTheDar","name":"Itay Dar","path":"/ItayTheDar","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/118370953?s=80&v=4"},"commit":{"message":"add echo as an extra param to allow disabling logs from db (#71)","shortMessageHtmlLink":"add echo as an extra param to allow disabling logs from db (#71)"}},{"before":"67ab720309186acd0f5aad38a0d3b59540425047","after":"33a2fcfb4ca74ad0924bc549b363a12b372dfb28","ref":"refs/heads/main","pushedAt":"2024-06-24T07:03:04.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"ItayTheDar","name":"Itay Dar","path":"/ItayTheDar","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/118370953?s=80&v=4"},"commit":{"message":"Add HTTP Status Code Feature and Some Refactors (#66)","shortMessageHtmlLink":"Add HTTP Status Code Feature and Some Refactors (#66)"}},{"before":"3c67c923311c66ef3168e83858f3de59b823a30e","after":"67ab720309186acd0f5aad38a0d3b59540425047","ref":"refs/heads/main","pushedAt":"2024-06-06T11:16:08.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"ItayTheDar","name":"Itay Dar","path":"/ItayTheDar","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/118370953?s=80&v=4"},"commit":{"message":"Update pyproject.toml (#65)","shortMessageHtmlLink":"Update pyproject.toml (#65)"}},{"before":"bb22101ce731302a8f5bc96f153b670e86706807","after":"3c67c923311c66ef3168e83858f3de59b823a30e","ref":"refs/heads/main","pushedAt":"2024-05-22T18:02:29.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"ItayTheDar","name":"Itay Dar","path":"/ItayTheDar","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/118370953?s=80&v=4"},"commit":{"message":"add new docs to pynest (#64)","shortMessageHtmlLink":"add new docs to pynest (#64)"}},{"before":"8d56730d75c3b9fd99b602d0e7a383031b5b84a0","after":null,"ref":"refs/heads/new_docs","pushedAt":"2024-05-22T18:00:51.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"ItayTheDar","name":"Itay Dar","path":"/ItayTheDar","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/118370953?s=80&v=4"}},{"before":null,"after":"1930f078f70eb32b828d41682e38affbb8abf71c","ref":"refs/heads/build_new_docs","pushedAt":"2024-05-22T17:55:58.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"ItayTheDar","name":"Itay Dar","path":"/ItayTheDar","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/118370953?s=80&v=4"},"commit":{"message":"add new docs to pynest","shortMessageHtmlLink":"add new docs to pynest"}},{"before":null,"after":"8d56730d75c3b9fd99b602d0e7a383031b5b84a0","ref":"refs/heads/new_docs","pushedAt":"2024-05-22T17:40:41.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"ItayTheDar","name":"Itay Dar","path":"/ItayTheDar","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/118370953?s=80&v=4"},"commit":{"message":"add new docs to pynest","shortMessageHtmlLink":"add new docs to pynest"}},{"before":"9ce6c1f09cd69cd2f5db55209425f9b0a343ccd4","after":"bb22101ce731302a8f5bc96f153b670e86706807","ref":"refs/heads/main","pushedAt":"2024-05-21T05:59:18.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"ItayTheDar","name":"Itay Dar","path":"/ItayTheDar","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/118370953?s=80&v=4"},"commit":{"message":"Increment version to","shortMessageHtmlLink":"Increment version to"}},{"before":"21e6b0433465f9b1e8c72e4109a9326a43f11bb9","after":"9ce6c1f09cd69cd2f5db55209425f9b0a343ccd4","ref":"refs/heads/main","pushedAt":"2024-05-21T05:55:04.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"ItayTheDar","name":"Itay Dar","path":"/ItayTheDar","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/118370953?s=80&v=4"},"commit":{"message":"Fix branch (#60)\n\n* fix wrong import path in examples and documentations\r\n\r\n* Module decorator is not creating the EXPORT metadata correctly. I believe it should be setting the attribute with self.exports instead of imports.","shortMessageHtmlLink":"Fix branch (#60)"}},{"before":null,"after":"69771ac01d26ff29c8da088ed3a2e9da36b85db1","ref":"refs/heads/fix_branch","pushedAt":"2024-05-21T05:43:27.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"ItayTheDar","name":"Itay Dar","path":"/ItayTheDar","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/118370953?s=80&v=4"},"commit":{"message":"Module decorator is not creating the EXPORT metadata correctly. I believe it should be setting the attribute with self.exports instead of imports.","shortMessageHtmlLink":"Module decorator is not creating the EXPORT metadata correctly. I bel…"}},{"before":"bc26d1e008c09d1615b16313bc9a319f69f1223a","after":"21e6b0433465f9b1e8c72e4109a9326a43f11bb9","ref":"refs/heads/main","pushedAt":"2024-05-20T17:28:05.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"ItayTheDar","name":"Itay Dar","path":"/ItayTheDar","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/118370953?s=80&v=4"},"commit":{"message":"fix: return class in injectable decorator (#59)\n\n* fix: return class in injectable decorator\r\n\r\n# Proposal\r\nLinked to https://github.com/PythonNest/PyNest/issues/58\r\n\r\nThe issue with the Injectable decorator returning a string instead of the class itself likely stems from the decorator definition.\r\n\r\nIn the definition of Injectable, cls is treated as if it could potentially be a string (cls: str = None), which suggests that the decorator might be designed to accept optional parameters or configurations. However, if not handled properly, this design could lead to unexpected behavior, such as treating a class definition as a string.\r\n\r\n# Correcting the Injectable Decorator\r\nThe decorator needs to correctly handle both cases: when it is used with and without parameters. Here’s a more standard way of creating a decorator that can optionally accept arguments\r\n\r\n# Explanation\r\n1. Decorator Factory: The Injectable function can now correctly handle being called either as @Injectable or @Injectable(). It uses a nested decorator function to apply the actual class modifications.\r\n\r\n2. Class Modifications: It checks if the class has an __init__ method defined and, if not, assigns a default one. It then parses dependencies, sets necessary attributes, and applies injection.\r\n\r\n3. Handling Arguments: The outer function (Injectable) checks if it is given a class directly (cls is not None). If so, it directly returns the decorator applied to the class. Otherwise, it returns the decorator function itself, allowing for further customization or arguments.\r\n\r\n* fix: use elipsis instead of pass","shortMessageHtmlLink":"fix: return class in injectable decorator (#59)"}},{"before":"a0bd12bd82b0d57fb6f4785f755126138fa2b587","after":"bc26d1e008c09d1615b16313bc9a319f69f1223a","ref":"refs/heads/main","pushedAt":"2024-04-24T08:19:36.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"ItayTheDar","name":"Itay Dar","path":"/ItayTheDar","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/118370953?s=80&v=4"},"commit":{"message":"Increment version to","shortMessageHtmlLink":"Increment version to"}},{"before":"ab8cc6115dcb909c96a73b2d1bbfa45667aa9d01","after":"a0bd12bd82b0d57fb6f4785f755126138fa2b587","ref":"refs/heads/main","pushedAt":"2024-04-24T08:13:59.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"ItayTheDar","name":"Itay Dar","path":"/ItayTheDar","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/118370953?s=80&v=4"},"commit":{"message":"Fix docs (#54)\n\n* fix ERROR - Could not collect 'nest.core.pynest_applications.PyNestApp'\r\n\r\n* loosen fastapi range\r\n\r\n* run black\r\n\r\n* loose injector dependency range","shortMessageHtmlLink":"Fix docs (#54)"}},{"before":"ab6b059124994424c45d0d1795c1d3195d792f58","after":"e9434a10351b9b279ec031c64f0904f7b40d32b5","ref":"refs/heads/fix_docs","pushedAt":"2024-04-24T08:10:33.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"ItayTheDar","name":"Itay Dar","path":"/ItayTheDar","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/118370953?s=80&v=4"},"commit":{"message":"loose injector dependency range","shortMessageHtmlLink":"loose injector dependency range"}},{"before":"765bba97a8389ce923426acde1f8779f37fc1922","after":"ab8cc6115dcb909c96a73b2d1bbfa45667aa9d01","ref":"refs/heads/main","pushedAt":"2024-04-15T12:04:22.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"ItayTheDar","name":"Itay Dar","path":"/ItayTheDar","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/118370953?s=80&v=4"},"commit":{"message":"Increment version to","shortMessageHtmlLink":"Increment version to"}},{"before":"dc03ad44de6bfa0bf56fd6a4468da7240e6d942c","after":"765bba97a8389ce923426acde1f8779f37fc1922","ref":"refs/heads/main","pushedAt":"2024-04-15T12:00:19.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"ItayTheDar","name":"Itay Dar","path":"/ItayTheDar","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/118370953?s=80&v=4"},"commit":{"message":"Fix docs (#52)\n\n* fix ERROR - Could not collect 'nest.core.pynest_applications.PyNestApp'\r\n\r\n* loosen fastapi range\r\n\r\n* run black","shortMessageHtmlLink":"Fix docs (#52)"}},{"before":"856ceff7fa461eec6682e59abe890d73489db2c4","after":"ab6b059124994424c45d0d1795c1d3195d792f58","ref":"refs/heads/fix_docs","pushedAt":"2024-04-15T11:58:21.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"ItayTheDar","name":"Itay Dar","path":"/ItayTheDar","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/118370953?s=80&v=4"},"commit":{"message":"run black","shortMessageHtmlLink":"run black"}},{"before":"822ae41243de8beb7aec19994d7392a19873963d","after":"dc03ad44de6bfa0bf56fd6a4468da7240e6d942c","ref":"refs/heads/main","pushedAt":"2024-04-11T14:04:02.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"ItayTheDar","name":"Itay Dar","path":"/ItayTheDar","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/118370953?s=80&v=4"},"commit":{"message":"fix ERROR - Could not collect 'nest.core.pynest_applications.PyNestApp' (#51)","shortMessageHtmlLink":"fix ERROR - Could not collect 'nest.core.pynest_applications.PyNestAp…"}},{"before":null,"after":"856ceff7fa461eec6682e59abe890d73489db2c4","ref":"refs/heads/fix_docs","pushedAt":"2024-04-11T14:02:17.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"ItayTheDar","name":"Itay Dar","path":"/ItayTheDar","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/118370953?s=80&v=4"},"commit":{"message":"fix ERROR - Could not collect 'nest.core.pynest_applications.PyNestApp'","shortMessageHtmlLink":"fix ERROR - Could not collect 'nest.core.pynest_applications.PyNestApp'"}},{"before":"c79b6862a731a3372018e9a8ca173923aaeeb425","after":"822ae41243de8beb7aec19994d7392a19873963d","ref":"refs/heads/main","pushedAt":"2024-04-11T13:56:39.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"ItayTheDar","name":"Itay Dar","path":"/ItayTheDar","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/118370953?s=80&v=4"},"commit":{"message":"Increment version to","shortMessageHtmlLink":"Increment version to"}},{"before":"a0833a1c68115f1b38f5cd6741cad9572fe2bafd","after":"c79b6862a731a3372018e9a8ca173923aaeeb425","ref":"refs/heads/main","pushedAt":"2024-04-11T13:47:54.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"ItayTheDar","name":"Itay Dar","path":"/ItayTheDar","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/118370953?s=80&v=4"},"commit":{"message":"Introducing Module Decorator for Enhanced IoC and Context Management (#18)\n\n* Module decorator: IOC : app_context\r\n\r\n* fix bad import\r\n\r\n* fix tests\r\n\r\n* fix - ImportError: cannot import name 'async_db_request_handler' from 'nest.core.decorators'\r\n\r\nmodify blank app example to work with module decorator\r\n\r\n* modify blank app example to work with module decorator\r\n\r\n* Introduce @HttpCode decorator for specifying HTTP response status\r\n\r\n* Enhance route decorators to allow default path values using a generic @route decorator\r\n\r\n* Add type annotations in specific parts\r\n\r\n* renaming related_mod to compiled_related_module\r\n\r\n* fixing bad import for HttpCode decorator\r\n\r\n* fixing PyNestContainer) -> Module circular import\r\n\r\n* fixing PyNestContainer) -> Module circular import\r\n\r\n* fixing PyNestContainer) -> Module circular import\r\n\r\n* Type hints added to refactored HTTP methods\r\n\r\n* Feature: Multiple paths for controller's methods\r\n\r\n* Fix test failures in test_core/test_decorators/test_controller.py\r\n\r\n* run black\r\n\r\n* change examples to work with the new module decorator and the new application file structure\r\n\r\n* make cli g module add new module created to app module\r\n\r\n* fix:\r\n\r\nnest.common.exceptions.NoneInjectableException\r\n\r\n* fix: response 500\r\n\r\n* fix: config is not defined\r\n\r\n* fix tests\r\nrevert controller to 0.1.2 version\r\nrename helper in decorators\r\nrun black on project\r\n\r\n* modified documentations to show the new way for creating modules and applications.\r\nremove test app, app file\r\nmodified existing redis module from plugins\r\n\r\n* add documentation to pynest_app_context.py\r\nmodified redis module to work with the new architecture\r\nadd test to pynest factory\r\n\r\n* run black\r\n\r\n* Add working dependency injection system to pynest\r\n\r\n* fix ImportError: cannot import name 'run_nest_app'\r\n\r\n* fix E ModuleNotFoundError: No module named 'injector'\r\n\r\n* fix Exception: orm_config.py file not found\r\n\r\n* fix pydantic 2 error, fix app_module import error\r\n\r\n* fix ERROR: Error loading ASGI app. Could not import module \"app\".\r\n\r\n* fix app.py does not exist in AsyncORMApp.\r\n\r\n* fix integration test\r\n\r\n* fix integration test\r\n\r\n* fix integration test\r\n\r\n* fix integration test\r\n\r\n* fix integration test\r\n\r\n* fix integration test\r\n\r\n* fix config path\r\n\r\n* fix integreation test\r\n\r\n* fix integreation test\r\n\r\n* fix integreation test\r\n\r\n* fix integreation test\r\nrun isort\r\nrun black\r\n\r\n* fix controller docs file\r\n\r\n---------\r\n\r\nCo-authored-by: ItayTheDar ","shortMessageHtmlLink":"Introducing Module Decorator for Enhanced IoC and Context Management (#…"}},{"before":"b49b84e01d3d1a386e42f717f703a4a57bf38e17","after":"a0833a1c68115f1b38f5cd6741cad9572fe2bafd","ref":"refs/heads/main","pushedAt":"2024-03-15T05:34:54.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"ItayTheDar","name":"Itay Dar","path":"/ItayTheDar","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/118370953?s=80&v=4"},"commit":{"message":"edit blank.md (#49)\n\nrephrase a sentence","shortMessageHtmlLink":"edit blank.md (#49)"}},{"before":"1c24bcca455c0859ca36d758f1bd5c00e411c51c","after":"b49b84e01d3d1a386e42f717f703a4a57bf38e17","ref":"refs/heads/main","pushedAt":"2024-03-07T07:24:02.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"ItayTheDar","name":"Itay Dar","path":"/ItayTheDar","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/118370953?s=80&v=4"},"commit":{"message":"Increment version to","shortMessageHtmlLink":"Increment version to"}},{"before":"881ef5a8294c8e57ff7cf2d24f16b2603c4bd942","after":"1c24bcca455c0859ca36d758f1bd5c00e411c51c","ref":"refs/heads/main","pushedAt":"2024-03-07T07:21:21.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"ItayTheDar","name":"Itay Dar","path":"/ItayTheDar","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/118370953?s=80&v=4"},"commit":{"message":"refactor controller routes (#46)\n\n* refactor: refactor route decorators to use a common helper function and remove redundant code\r\n\r\n* run black\r\n\r\n* add event triggres to run actions\r\n\r\n* fix: HTTP methods in controller decorators\r\n\r\n* move http methods decorators to seperate file\r\n\r\n---------\r\n\r\nCo-authored-by: lucas alves \r\nCo-authored-by: ItayTheDar ","shortMessageHtmlLink":"refactor controller routes (#46)"}},{"before":"ffdef5041c2117c91ff4548da28fd6d847f0d9b2","after":"881ef5a8294c8e57ff7cf2d24f16b2603c4bd942","ref":"refs/heads/main","pushedAt":"2024-01-11T09:27:54.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"ItayTheDar","name":"Itay Dar","path":"/ItayTheDar","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/118370953?s=80&v=4"},"commit":{"message":"Increment version to","shortMessageHtmlLink":"Increment version to"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"Y3Vyc29yOnYyOpK7MjAyNC0wOS0xNVQwODozNjoyMC4wMDAwMDBazwAAAAS2mIJT","startCursor":"Y3Vyc29yOnYyOpK7MjAyNC0wOS0xNVQwODozNjoyMC4wMDAwMDBazwAAAAS2mIJT","endCursor":"Y3Vyc29yOnYyOpK7MjAyNC0wMS0xMVQwOToyNzo1NC4wMDAwMDBazwAAAAPdFgK4"}},"title":"Activity · PythonNest/PyNest"}