{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":718848600,"defaultBranch":"main","name":"cachesourcegenerator","ownerLogin":"jeppevammenkristensen","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2023-11-14T23:08:03.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/161545?v=4","public":true,"private":false,"isOrgOwned":false},"refInfo":{"name":"","listCacheKey":"v0:1713567597.0","currentOid":""},"activityList":{"items":[{"before":"617918dd7c538e7fd7d1b1e52d3c61d3343b955c","after":"add58ef8be5c696260a5d86de9e3e3debb5bc717","ref":"refs/heads/next","pushedAt":"2024-04-19T22:58:56.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"jeppevammenkristensen","name":"Jeppe Roi Kristensen","path":"/jeppevammenkristensen","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/161545?s=80&v=4"},"commit":{"message":"Rewrote logic and added CanAdd","shortMessageHtmlLink":"Rewrote logic and added CanAdd"}},{"before":null,"after":"617918dd7c538e7fd7d1b1e52d3c61d3343b955c","ref":"refs/heads/next","pushedAt":"2024-04-19T22:58:26.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"jeppevammenkristensen","name":"Jeppe Roi Kristensen","path":"/jeppevammenkristensen","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/161545?s=80&v=4"},"commit":{"message":"Rewrote logic and added CanAdd","shortMessageHtmlLink":"Rewrote logic and added CanAdd"}},{"before":"2dabba87e865eba2fde9b76890b1497757bc458e","after":"caaf32d050519d3d3a57de8235a234b0879f0fcf","ref":"refs/heads/main","pushedAt":"2024-02-13T23:17:10.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"jeppevammenkristensen","name":"Jeppe Roi Kristensen","path":"/jeppevammenkristensen","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/161545?s=80&v=4"},"commit":{"message":"Added fix for generic type issue","shortMessageHtmlLink":"Added fix for generic type issue"}},{"before":"3a4e5cf21e79db60b917b35dd6d16079ee4289e2","after":"2dabba87e865eba2fde9b76890b1497757bc458e","ref":"refs/heads/main","pushedAt":"2024-01-22T22:29:30.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"jeppevammenkristensen","name":"Jeppe Roi Kristensen","path":"/jeppevammenkristensen","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/161545?s=80&v=4"},"commit":{"message":"Add partial methods for cache call interception\n\nThis update adds support for partial methods, `OnCalling` and `OnCalled`, which are invoked respectively before and after the original methods. This allows interception of cache calls for debugging and additional workflows. The IgnoreKey remover is updated to ensure the IgnoreKey attribute is not produced in the resulted output.","shortMessageHtmlLink":"Add partial methods for cache call interception"}},{"before":"84429d1f9ba833815703cfb499447df6a0bca8f5","after":"3a4e5cf21e79db60b917b35dd6d16079ee4289e2","ref":"refs/heads/main","pushedAt":"2024-01-21T21:27:02.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"jeppevammenkristensen","name":"Jeppe Roi Kristensen","path":"/jeppevammenkristensen","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/161545?s=80&v=4"},"commit":{"message":"Refactor and comment code in CacheSourceGenerator\n\nThis commit refactors the method GenerateCacheEntryProcessing to remove unnecessary boolean checks. The logic for generating invocation methods has been simplified and made more readable. New comments have also been added for functions and data classes for better understanding.","shortMessageHtmlLink":"Refactor and comment code in CacheSourceGenerator"}},{"before":"5ee6f0ab68210ddba7d416851a05441ddeaf6e08","after":"84429d1f9ba833815703cfb499447df6a0bca8f5","ref":"refs/heads/main","pushedAt":"2024-01-16T23:08:28.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"jeppevammenkristensen","name":"Jeppe Roi Kristensen","path":"/jeppevammenkristensen","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/161545?s=80&v=4"},"commit":{"message":"Add support for IgnoreKey attribute\n\nThis update adds support for the IgnoreKey attribute, allowing it to be used on method parameters to exclude them from the caching key. Changes involve adjusting method parameters and collection syntax, as well as modifying test case and adding explicit handling for IgnoreKey attribute. Route to obtain method parameters was altered to exclude those marked with IgnoreKey.","shortMessageHtmlLink":"Add support for IgnoreKey attribute"}},{"before":"0c9fec8a426a9576e19014095d78c7cc2d294ad5","after":null,"ref":"refs/heads/prep-release","pushedAt":"2024-01-16T19:15:32.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"jeppevammenkristensen","name":"Jeppe Roi Kristensen","path":"/jeppevammenkristensen","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/161545?s=80&v=4"}},{"before":"c7ad3e1108969b61d46f0a5491446339cb1c1ad2","after":"5ee6f0ab68210ddba7d416851a05441ddeaf6e08","ref":"refs/heads/main","pushedAt":"2024-01-16T19:15:27.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"jeppevammenkristensen","name":"Jeppe Roi Kristensen","path":"/jeppevammenkristensen","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/161545?s=80&v=4"},"commit":{"message":"Preparing for release of 0.4.0\n\nFixed wrong diagnostic text and updated readme","shortMessageHtmlLink":"Preparing for release of 0.4.0"}},{"before":null,"after":"0c9fec8a426a9576e19014095d78c7cc2d294ad5","ref":"refs/heads/prep-release","pushedAt":"2024-01-16T19:13:27.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"jeppevammenkristensen","name":"Jeppe Roi Kristensen","path":"/jeppevammenkristensen","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/161545?s=80&v=4"},"commit":{"message":"Preparing for release of 0.4.0\n\nFixed wrong diagnostic text and updated readme","shortMessageHtmlLink":"Preparing for release of 0.4.0"}},{"before":"428d9d7b1c9a884d96a1ab5f2a14e7f9a9e57256","after":"c7ad3e1108969b61d46f0a5491446339cb1c1ad2","ref":"refs/heads/main","pushedAt":"2024-01-15T22:48:43.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"jeppevammenkristensen","name":"Jeppe Roi Kristensen","path":"/jeppevammenkristensen","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/161545?s=80&v=4"},"commit":{"message":"Update handling of return types in code generation\n\nImproved handling of nullability in generated code by introducing conditionals for return types. This ensures that the C# null-forgiving post-fix(!) is only applied when necessary. Facilitates more accurate return types for caching methods considering the nature of value types and nullable reference types. Added new tests to verify the changes.","shortMessageHtmlLink":"Update handling of return types in code generation"}},{"before":"88134efb0fd805ae2a364fbd1cf292c0cc74eeda","after":"428d9d7b1c9a884d96a1ab5f2a14e7f9a9e57256","ref":"refs/heads/main","pushedAt":"2024-01-14T22:47:59.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"jeppevammenkristensen","name":"Jeppe Roi Kristensen","path":"/jeppevammenkristensen","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/161545?s=80&v=4"},"commit":{"message":"Add custom key generator support for cache methods\n\nThis update adds the ability to use custom key generators for cache methods. The new \"KeyGenerator\" attribute can be used to specify a method that generates a caching key. The generator must have the same parameters as the decorated method but can return any type. The key generator can also be asynchronous, and appropriate handling is added for this case.","shortMessageHtmlLink":"Add custom key generator support for cache methods"}},{"before":"3aad5724dcb4d9bdd48a5e21922f8a6e35eaa8e9","after":"88134efb0fd805ae2a364fbd1cf292c0cc74eeda","ref":"refs/heads/main","pushedAt":"2024-01-11T23:30:54.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"jeppevammenkristensen","name":"Jeppe Roi Kristensen","path":"/jeppevammenkristensen","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/161545?s=80&v=4"},"commit":{"message":"Update cache generation logic and attribute naming\n\nUpdated attribute naming throughout the project, from \"CachoAttribute\" to \"GenerateMemoryCacheAttribute\".","shortMessageHtmlLink":"Update cache generation logic and attribute naming"}},{"before":"45a9e83cb20bad7c1b983bdf99ea92b87a77158f","after":"3aad5724dcb4d9bdd48a5e21922f8a6e35eaa8e9","ref":"refs/heads/main","pushedAt":"2023-12-28T22:49:40.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"jeppevammenkristensen","name":"Jeppe Roi Kristensen","path":"/jeppevammenkristensen","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/161545?s=80&v=4"},"commit":{"message":"Update PackageReleaseNotes in CacheSourceGenerator.csproj\n\nThe commit updates the PackageReleaseNotes in the CacheSourceGenerator.csproj file. An eviction method is now included in the package, and unnecessary null checks during cache creation or addition have been removed.","shortMessageHtmlLink":"Update PackageReleaseNotes in CacheSourceGenerator.csproj"}},{"before":"57bf3fc967b9cd3450ebe5dbba0579e90b6ca9af","after":"45a9e83cb20bad7c1b983bdf99ea92b87a77158f","ref":"refs/heads/main","pushedAt":"2023-12-28T22:48:15.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"jeppevammenkristensen","name":"Jeppe Roi Kristensen","path":"/jeppevammenkristensen","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/161545?s=80&v=4"},"commit":{"message":"Preparing for release","shortMessageHtmlLink":"Preparing for release"}},{"before":"c3a21d28d1e95dc325a0100b7777bd5e316c6f79","after":"e7553caecf0e3a24c145087686fd3a27c913c087","ref":"refs/heads/additonal-changes","pushedAt":"2023-12-28T22:37:21.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"jeppevammenkristensen","name":"Jeppe Roi Kristensen","path":"/jeppevammenkristensen","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/161545?s=80&v=4"},"commit":{"message":"Preparing for release","shortMessageHtmlLink":"Preparing for release"}},{"before":null,"after":"c3a21d28d1e95dc325a0100b7777bd5e316c6f79","ref":"refs/heads/additonal-changes","pushedAt":"2023-12-28T22:32:59.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"jeppevammenkristensen","name":"Jeppe Roi Kristensen","path":"/jeppevammenkristensen","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/161545?s=80&v=4"},"commit":{"message":"Add Playground project and update CacheSourceGenerator\n\nAdded a new Playground project to the solution for testing purposes. Made several updates in the CacheSourceGenerator project, including modifying variable names for clarity, removing unnecessary null check.","shortMessageHtmlLink":"Add Playground project and update CacheSourceGenerator"}},{"before":"d272a3f2fd8cb4730fdaea53b43b19c3a3e2656b","after":"57bf3fc967b9cd3450ebe5dbba0579e90b6ca9af","ref":"refs/heads/main","pushedAt":"2023-12-07T23:42:45.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"jeppevammenkristensen","name":"Jeppe Roi Kristensen","path":"/jeppevammenkristensen","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/161545?s=80&v=4"},"commit":{"message":"Refactor code generation logic and add new evict method\n\nThe method for generating the partial class in the cache source generator has been refactored for more readability. Moreover, an evict method, which removes cached items based on the provided key, has been added. A few related tests have also been included to ensure the new functionality works as expected.","shortMessageHtmlLink":"Refactor code generation logic and add new evict method"}},{"before":"ea8ca4d5c3700fe2da5df627c8a893fcbde49f46","after":"d272a3f2fd8cb4730fdaea53b43b19c3a3e2656b","ref":"refs/heads/main","pushedAt":"2023-11-30T22:30:24.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"jeppevammenkristensen","name":"Jeppe Roi Kristensen","path":"/jeppevammenkristensen","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/161545?s=80&v=4"},"commit":{"message":"Update package version and correct minor issues\n\nThe package version in the project file has been incremented. Changes have also been made to refine the PackageReadmeFile field and the PackageIcon field. In addition, an improper icon resource link in the ReadMe file is fixed.","shortMessageHtmlLink":"Update package version and correct minor issues"}},{"before":"2cd4bda49a3948653cc04dbde3ce462d520b800f","after":"ea8ca4d5c3700fe2da5df627c8a893fcbde49f46","ref":"refs/heads/main","pushedAt":"2023-11-26T21:56:25.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"jeppevammenkristensen","name":"Jeppe Roi Kristensen","path":"/jeppevammenkristensen","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/161545?s=80&v=4"},"commit":{"message":"Update cache handling and version in CacheSourceGenerator\n\nThis commit updates the handling of cache entries in CacheSourceGenerator by allowing MemoryCache to be nullable. It also increases the version number from 0.1.0 to 0.2.0, reflecting the changes made. The CacheSourceGenerator project file is updated by adding a package readme file, an icon URL, and modifying package release notes. A ReadMe.md was added in the 'docs' directory and unused spaces from various files have been removed.","shortMessageHtmlLink":"Update cache handling and version in CacheSourceGenerator"}},{"before":"452b4bc2787e209d0a260de54f8b3e051f363c22","after":"2cd4bda49a3948653cc04dbde3ce462d520b800f","ref":"refs/heads/main","pushedAt":"2023-11-26T12:26:26.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"jeppevammenkristensen","name":"Jeppe Roi Kristensen","path":"/jeppevammenkristensen","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/161545?s=80&v=4"},"commit":{"message":"updates to support adding cache processor","shortMessageHtmlLink":"updates to support adding cache processor"}},{"before":"66a8f1ab9c2f7e741e61016c6039adf250f38c8a","after":"452b4bc2787e209d0a260de54f8b3e051f363c22","ref":"refs/heads/main","pushedAt":"2023-11-21T23:11:31.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"jeppevammenkristensen","name":"Jeppe Roi Kristensen","path":"/jeppevammenkristensen","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/161545?s=80&v=4"},"commit":{"message":"Bumped version to 0.1.0","shortMessageHtmlLink":"Bumped version to 0.1.0"}},{"before":"cad0774f543211d5845f22e2690ffad647f116be","after":"66a8f1ab9c2f7e741e61016c6039adf250f38c8a","ref":"refs/heads/main","pushedAt":"2023-11-21T23:04:54.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"jeppevammenkristensen","name":"Jeppe Roi Kristensen","path":"/jeppevammenkristensen","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/161545?s=80&v=4"},"commit":{"message":"Updated readme","shortMessageHtmlLink":"Updated readme"}},{"before":"7d96898237c3fc3518e83d5ca25307945299a8d6","after":"cad0774f543211d5845f22e2690ffad647f116be","ref":"refs/heads/main","pushedAt":"2023-11-21T23:01:35.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"jeppevammenkristensen","name":"Jeppe Roi Kristensen","path":"/jeppevammenkristensen","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/161545?s=80&v=4"},"commit":{"message":"Fixed issue with null exception when result is Task and nullable","shortMessageHtmlLink":"Fixed issue with null exception when result is Task and nullable"}},{"before":"55cd6344d008ec05fd55a172ee6b26e818a7e66c","after":"7d96898237c3fc3518e83d5ca25307945299a8d6","ref":"refs/heads/main","pushedAt":"2023-11-21T21:24:27.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"jeppevammenkristensen","name":"Jeppe Roi Kristensen","path":"/jeppevammenkristensen","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/161545?s=80&v=4"},"commit":{"message":"Add cache methods to improve the performance of the program\n\nThis commit introduces the ability to enable caching behaviours per method in a class. If the class has an IMemoryCache then it uses its own cache. If not, it generates a Partial class with a simple cache implementation. It also makes sure that the \"Microsoft.Extensions.Caching.Memory\" is installed and if not, a diagnostic error is thrown. Testing was performed to ensure this version meets your needs. The option of which caching method to use can make data access more efficient. This is particularly useful in situations where the same data is accessed repeatedly. (Generated by AI. :) )","shortMessageHtmlLink":"Add cache methods to improve the performance of the program"}},{"before":"e792983496ad07dfb4af27f0106c85006968b565","after":"55cd6344d008ec05fd55a172ee6b26e818a7e66c","ref":"refs/heads/main","pushedAt":"2023-11-15T00:13:51.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"jeppevammenkristensen","name":"Jeppe Roi Kristensen","path":"/jeppevammenkristensen","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/161545?s=80&v=4"},"commit":{"message":"Update README.md","shortMessageHtmlLink":"Update README.md"}},{"before":"3313c979d0c9b37629920a08203bfe6a1cb67736","after":"e792983496ad07dfb4af27f0106c85006968b565","ref":"refs/heads/main","pushedAt":"2023-11-14T23:25:54.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"jeppevammenkristensen","name":"Jeppe Roi Kristensen","path":"/jeppevammenkristensen","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/161545?s=80&v=4"},"commit":{"message":"Update README.md","shortMessageHtmlLink":"Update README.md"}},{"before":"9a89568b4752225e6c6c77843d2a9267f0ae14a8","after":"3313c979d0c9b37629920a08203bfe6a1cb67736","ref":"refs/heads/main","pushedAt":"2023-11-14T23:13:12.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"jeppevammenkristensen","name":"Jeppe Roi Kristensen","path":"/jeppevammenkristensen","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/161545?s=80&v=4"},"commit":{"message":"added incremental source generator for generating cache","shortMessageHtmlLink":"added incremental source generator for generating cache"}},{"before":"3f5f3c789bbc3bebfb85d2e73add1ba2f8087e66","after":"9a89568b4752225e6c6c77843d2a9267f0ae14a8","ref":"refs/heads/main","pushedAt":"2023-11-14T23:08:38.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"jeppevammenkristensen","name":"Jeppe Roi Kristensen","path":"/jeppevammenkristensen","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/161545?s=80&v=4"},"commit":{"message":"Update README.md","shortMessageHtmlLink":"Update README.md"}},{"before":null,"after":"3f5f3c789bbc3bebfb85d2e73add1ba2f8087e66","ref":"refs/heads/main","pushedAt":"2023-11-14T23:08:03.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"jeppevammenkristensen","name":"Jeppe Roi Kristensen","path":"/jeppevammenkristensen","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/161545?s=80&v=4"},"commit":{"message":"Initial commit","shortMessageHtmlLink":"Initial commit"}}],"hasNextPage":false,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"Y3Vyc29yOnYyOpK7MjAyNC0wNC0xOVQyMjo1ODo1Ni4wMDAwMDBazwAAAAQ1lghj","startCursor":"Y3Vyc29yOnYyOpK7MjAyNC0wNC0xOVQyMjo1ODo1Ni4wMDAwMDBazwAAAAQ1lghj","endCursor":"Y3Vyc29yOnYyOpK7MjAyMy0xMS0xNFQyMzowODowMy4wMDAwMDBazwAAAAOvO9VK"}},"title":"Activity ยท jeppevammenkristensen/cachesourcegenerator"}