{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":377669544,"defaultBranch":"main","name":"spring-boot","ownerLogin":"quaff","currentUserCanPush":false,"isFork":true,"isEmpty":false,"createdAt":"2021-06-17T01:18:58.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/143040?v=4","public":true,"private":false,"isOrgOwned":false},"refInfo":{"name":"","listCacheKey":"v0:1727315176.0","currentOid":""},"activityList":{"items":[{"before":null,"after":"70c1f8e7dfca3f272d44a18b5b1272230861a30a","ref":"refs/heads/patch-77","pushedAt":"2024-09-26T01:46:16.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"quaff","name":"Yanming Zhou","path":"/quaff","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/143040?s=80&v=4"},"commit":{"message":"Configure sensible order for metrics aspects\n\nSee https://github.com/spring-projects/spring-framework/issues/33595","shortMessageHtmlLink":"Configure sensible order for metrics aspects"}},{"before":"99e6757cd854fa82096bcb6621292c3a50fb381d","after":"90b4b8b426878b482c59d33b60af086aa287a922","ref":"refs/heads/patch-72","pushedAt":"2024-09-26T00:50:19.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"quaff","name":"Yanming Zhou","path":"/quaff","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/143040?s=80&v=4"},"commit":{"message":"Add DB2 support for Docker Compose","shortMessageHtmlLink":"Add DB2 support for Docker Compose"}},{"before":"c7bbd7d01ef90bb88b3ec0a2a40bfb8d118c6695","after":"99e6757cd854fa82096bcb6621292c3a50fb381d","ref":"refs/heads/patch-72","pushedAt":"2024-09-25T09:32:05.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"quaff","name":"Yanming Zhou","path":"/quaff","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/143040?s=80&v=4"},"commit":{"message":"Add DB2 support for Docker Compose","shortMessageHtmlLink":"Add DB2 support for Docker Compose"}},{"before":"63febd221018b2f9403a5dbd8247df77f1ab1faa","after":"c7bbd7d01ef90bb88b3ec0a2a40bfb8d118c6695","ref":"refs/heads/patch-72","pushedAt":"2024-09-25T09:20:50.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"quaff","name":"Yanming Zhou","path":"/quaff","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/143040?s=80&v=4"},"commit":{"message":"Add DB2 support for Docker Compose","shortMessageHtmlLink":"Add DB2 support for Docker Compose"}},{"before":"e7b437f660002f9f2497f85a09e90c949bc24118","after":"63febd221018b2f9403a5dbd8247df77f1ab1faa","ref":"refs/heads/patch-72","pushedAt":"2024-09-25T08:50:09.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"quaff","name":"Yanming Zhou","path":"/quaff","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/143040?s=80&v=4"},"commit":{"message":"Add DB2 support for Docker Compose","shortMessageHtmlLink":"Add DB2 support for Docker Compose"}},{"before":"ba9796813853e44c3b74bcb2445e30f43c91700b","after":"e7b437f660002f9f2497f85a09e90c949bc24118","ref":"refs/heads/patch-72","pushedAt":"2024-09-25T01:48:53.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"quaff","name":"Yanming Zhou","path":"/quaff","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/143040?s=80&v=4"},"commit":{"message":"Add DB2 support for Docker Compose","shortMessageHtmlLink":"Add DB2 support for Docker Compose"}},{"before":"9ad27a92be570cfb033c7b1ca0f242ef03e597f6","after":"ba9796813853e44c3b74bcb2445e30f43c91700b","ref":"refs/heads/patch-72","pushedAt":"2024-09-25T01:46:48.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"quaff","name":"Yanming Zhou","path":"/quaff","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/143040?s=80&v=4"},"commit":{"message":"Add DB2 support for Docker Compose","shortMessageHtmlLink":"Add DB2 support for Docker Compose"}},{"before":null,"after":"f6fcd98cadab8a3353c4afc83f342bd30d67f24b","ref":"refs/heads/patch-76","pushedAt":"2024-09-25T01:29:42.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"quaff","name":"Yanming Zhou","path":"/quaff","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/143040?s=80&v=4"},"commit":{"message":"Remove duplicated dependency","shortMessageHtmlLink":"Remove duplicated dependency"}},{"before":"e494a02e9f3273130101e3b62999dae4685f657f","after":"6d6be523619fe79a0f8ce82cd7ad7eb1d94e344c","ref":"refs/heads/patch-71","pushedAt":"2024-09-24T07:37:09.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"quaff","name":"Yanming Zhou","path":"/quaff","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/143040?s=80&v=4"},"commit":{"message":"Support mixing constructor and setter binding for ConfigurationProperties\n\nIt's common to divide configuration properties into required and optional, the required properties are defined as final and should be bound via constructor, and the optional properties should be bound via setter.","shortMessageHtmlLink":"Support mixing constructor and setter binding for ConfigurationProper…"}},{"before":null,"after":"d9ccf7364eb64cf2fff344f7040bc1e6dfedb491","ref":"refs/heads/patch-75","pushedAt":"2024-09-24T07:35:31.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"quaff","name":"Yanming Zhou","path":"/quaff","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/143040?s=80&v=4"},"commit":{"message":"Polishing KotlinConfigurationPropertiesTests to use the same naming style","shortMessageHtmlLink":"Polishing KotlinConfigurationPropertiesTests to use the same naming s…"}},{"before":null,"after":"1686568a2ef45029fbf6fdea28295ba67815fe92","ref":"refs/heads/patch-74","pushedAt":"2024-09-24T07:27:37.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"quaff","name":"Yanming Zhou","path":"/quaff","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/143040?s=80&v=4"},"commit":{"message":"Polishing Javadoc of TestImage to keep consistency","shortMessageHtmlLink":"Polishing Javadoc of TestImage to keep consistency"}},{"before":"35d5bbbf49c59a02fd4dfa9bbd7397d166666a4d","after":"e494a02e9f3273130101e3b62999dae4685f657f","ref":"refs/heads/patch-71","pushedAt":"2024-09-24T07:19:07.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"quaff","name":"Yanming Zhou","path":"/quaff","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/143040?s=80&v=4"},"commit":{"message":"Support mixing constructor and setter binding for ConfigurationProperties\n\nIt's common to divide configuration properties into required and optional, the required properties are defined as final and should be bound via constructor, and the optional properties should be bound via setter.","shortMessageHtmlLink":"Support mixing constructor and setter binding for ConfigurationProper…"}},{"before":"128b45192862e85737dac93df7c1c5a07821a52c","after":"9ad27a92be570cfb033c7b1ca0f242ef03e597f6","ref":"refs/heads/patch-72","pushedAt":"2024-09-23T07:55:21.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"quaff","name":"Yanming Zhou","path":"/quaff","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/143040?s=80&v=4"},"commit":{"message":"Add DB2 support for Docker Compose","shortMessageHtmlLink":"Add DB2 support for Docker Compose"}},{"before":"893cfb2d76172aa926026be3a9562359b731453a","after":"128b45192862e85737dac93df7c1c5a07821a52c","ref":"refs/heads/patch-72","pushedAt":"2024-09-20T08:55:11.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"quaff","name":"Yanming Zhou","path":"/quaff","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/143040?s=80&v=4"},"commit":{"message":"Add DB2 support for Docker Compose","shortMessageHtmlLink":"Add DB2 support for Docker Compose"}},{"before":null,"after":"db928ff26a936ba1122e786c47f35fc6660c82cd","ref":"refs/heads/patch-73","pushedAt":"2024-09-20T05:10:15.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"quaff","name":"Yanming Zhou","path":"/quaff","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/143040?s=80&v=4"},"commit":{"message":"Remove redundant `@Test`","shortMessageHtmlLink":"Remove redundant @Test"}},{"before":null,"after":"893cfb2d76172aa926026be3a9562359b731453a","ref":"refs/heads/patch-72","pushedAt":"2024-09-20T05:03:01.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"quaff","name":"Yanming Zhou","path":"/quaff","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/143040?s=80&v=4"},"commit":{"message":"Add DB2 support for Docker Compose","shortMessageHtmlLink":"Add DB2 support for Docker Compose"}},{"before":"fc3324ecc64ff7aedbb673c7c098a35536bdc30f","after":"35d5bbbf49c59a02fd4dfa9bbd7397d166666a4d","ref":"refs/heads/patch-71","pushedAt":"2024-09-14T00:53:56.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"quaff","name":"Yanming Zhou","path":"/quaff","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/143040?s=80&v=4"},"commit":{"message":"Support mixing constructor and setter binding for ConfigurationProperties\n\nIt's common to divide configuration properties into required and optional, the required properties are defined as final and should be bound via constructor, and the optional properties should be bound via setter.","shortMessageHtmlLink":"Support mixing constructor and setter binding for ConfigurationProper…"}},{"before":"fde905484b9a6190a5b24b6cea7e516eafe98dda","after":"fc3324ecc64ff7aedbb673c7c098a35536bdc30f","ref":"refs/heads/patch-71","pushedAt":"2024-09-13T09:38:59.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"quaff","name":"Yanming Zhou","path":"/quaff","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/143040?s=80&v=4"},"commit":{"message":"Support mixing constructor and setter binding for ConfigurationProperties\n\nIt's common to divide configuration properties into required and optional, the required properties are defined as final and should be bound via constructor, and the optional properties should be bound via setter.\n\nFix GH-42276","shortMessageHtmlLink":"Support mixing constructor and setter binding for ConfigurationProper…"}},{"before":"e2ba5df06c84ca5d20b3f57c7405579ae6ea3213","after":"fde905484b9a6190a5b24b6cea7e516eafe98dda","ref":"refs/heads/patch-71","pushedAt":"2024-09-13T09:37:28.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"quaff","name":"Yanming Zhou","path":"/quaff","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/143040?s=80&v=4"},"commit":{"message":"Support mixing constructor and setter binding for ConfigurationProperties\n\nIt's common to divide configuration properties into required and optional, the required properties are defined as final and should be bound via constructor, and the optional properties should be bound via setter.\n\nFix GH-42276","shortMessageHtmlLink":"Support mixing constructor and setter binding for ConfigurationProper…"}},{"before":"7c530fa3ac6edb98c8e5059571d6fe266bf7633b","after":"e2ba5df06c84ca5d20b3f57c7405579ae6ea3213","ref":"refs/heads/patch-71","pushedAt":"2024-09-13T09:34:00.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"quaff","name":"Yanming Zhou","path":"/quaff","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/143040?s=80&v=4"},"commit":{"message":"Support mixing constructor and setter binding for ConfigurationProperties\n\nIt's common to divide configuration properties into required and optional, the required properties are defined as final and should be bound via constructor, and the optional properties should be bound via setter.\n\nFix GH-42276","shortMessageHtmlLink":"Support mixing constructor and setter binding for ConfigurationProper…"}},{"before":"5a34cd0cdf89157d063078ea3015888fad873898","after":"7c530fa3ac6edb98c8e5059571d6fe266bf7633b","ref":"refs/heads/patch-71","pushedAt":"2024-09-13T09:31:56.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"quaff","name":"Yanming Zhou","path":"/quaff","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/143040?s=80&v=4"},"commit":{"message":"Support mixing constructor and setter binding for ConfigurationProperties\n\nIt's common to divide configuration properties into required and optional, the required properties are defined as final and should be bound via constructor, and the optional properties should be bound via setter.\n\nFix GH-42276","shortMessageHtmlLink":"Support mixing constructor and setter binding for ConfigurationProper…"}},{"before":"b0cc7f8eb951b11ad2b602a0e059bb93c1d0d67f","after":"5a34cd0cdf89157d063078ea3015888fad873898","ref":"refs/heads/patch-71","pushedAt":"2024-09-13T09:27:07.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"quaff","name":"Yanming Zhou","path":"/quaff","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/143040?s=80&v=4"},"commit":{"message":"Support mixing constructor and setter binding for ConfigurationProperties\n\nIt's common to divide configuration properties into required and optional, the required properties are defined as final and should be bound via constructor, and the optional properties should be bound via setter.\n\nFix GH-42276","shortMessageHtmlLink":"Support mixing constructor and setter binding for ConfigurationProper…"}},{"before":"5f9e8241c625b120975db838439098df97c0aac3","after":"b0cc7f8eb951b11ad2b602a0e059bb93c1d0d67f","ref":"refs/heads/patch-71","pushedAt":"2024-09-13T09:24:00.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"quaff","name":"Yanming Zhou","path":"/quaff","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/143040?s=80&v=4"},"commit":{"message":"Support mixing constructor and setter binding for ConfigurationProperties\n\nIt's common to divide configuration properties into required and optional, the required properties are defined as final and should be bound via constructor, and the optional properties should be bound via setter.\n\nFix GH-42276","shortMessageHtmlLink":"Support mixing constructor and setter binding for ConfigurationProper…"}},{"before":null,"after":"5f9e8241c625b120975db838439098df97c0aac3","ref":"refs/heads/patch-71","pushedAt":"2024-09-13T09:22:15.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"quaff","name":"Yanming Zhou","path":"/quaff","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/143040?s=80&v=4"},"commit":{"message":"Support mixing constructor and setter binding for ConfigurationProperties\n\nIt's common to divide configuration properties into required and optional, the required properties are defined as final and should be bound via constructor, and the optional properties should be bound via setter.\n\nFix GH-42276","shortMessageHtmlLink":"Support mixing constructor and setter binding for ConfigurationProper…"}},{"before":null,"after":"1d164fa8656ccc195500b6c4fa8a47bcd5415020","ref":"refs/heads/patch-70","pushedAt":"2024-09-13T02:28:27.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"quaff","name":"Yanming Zhou","path":"/quaff","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/143040?s=80&v=4"},"commit":{"message":"Add common definition annotations support for ConfigurationProperties beans\n\nSuch as `@Lazy`, `@Primary` and `@Fallback` etc.","shortMessageHtmlLink":"Add common definition annotations support for ConfigurationProperties…"}},{"before":"e755d6f98140e7e8ec052ad76104910afacababc","after":"7ab1dda0ebfa9f73a8f7e07954cadfcaa9bc484d","ref":"refs/heads/patch-68","pushedAt":"2024-09-13T01:27:32.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"quaff","name":"Yanming Zhou","path":"/quaff","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/143040?s=80&v=4"},"commit":{"message":"Add tests to ensure private constructor is not used for value object binding\n\nSometimes we want to duplicate `@ConfigurationProperties` bean with different prefix, we should use the primary configuration properties as default of additional configuration properties instead of re-configuring them all, then we could inject that primary bean and copy its values as default via constructor, there are two ways to force constructor used for injection instead of binding, annotating it with `@Autowired` or marking it as `private`, and the former one is already covered by tests, this commit add test for latter one.","shortMessageHtmlLink":"Add tests to ensure private constructor is not used for value object …"}},{"before":"1d73939bfe525f740362f9de86f44fa39aebae29","after":"e755d6f98140e7e8ec052ad76104910afacababc","ref":"refs/heads/patch-68","pushedAt":"2024-09-13T00:45:17.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"quaff","name":"Yanming Zhou","path":"/quaff","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/143040?s=80&v=4"},"commit":{"message":"Add tests to ensure private constructor is not used for value object binding\n\nSometimes we want to duplicate `@ConfigurationProperties` bean with different prefix, we should use the primary configuration properties as default of additional configuration properties instead of re-configuring them all, then we could inject that primary bean and copy its values as default via constructor, there are two ways to force constructor used for injection instead of binding, annotating it with `@Autowired` or marking it as `private`, and the former one is already covered by tests, this commit add test for latter one.","shortMessageHtmlLink":"Add tests to ensure private constructor is not used for value object …"}},{"before":"8c889503cc050f3a0b198e3e74a47559be64293a","after":"1d73939bfe525f740362f9de86f44fa39aebae29","ref":"refs/heads/patch-68","pushedAt":"2024-09-13T00:43:36.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"quaff","name":"Yanming Zhou","path":"/quaff","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/143040?s=80&v=4"},"commit":{"message":"Add tests to ensure `private` constructor is not used for value object binding\n\nSometimes we want to duplicate `@ConfigurationProperties` bean with different prefix, we should use the primary configuration properties as default of additional configuration properties instead of re-configuring them all, then we could inject that primary bean and copy its values as default via constructor, there are two ways to force constructor used for injection instead of binding, annotating it with `@Autowired` or marking it as `private`, and the former one is already covered by tests, this commit add test for latter one.","shortMessageHtmlLink":"Add tests to ensure private constructor is not used for value objec…"}},{"before":"8ae78b6f9a1e53bf05b24697a6ddb475a9a4a971","after":"8c889503cc050f3a0b198e3e74a47559be64293a","ref":"refs/heads/patch-68","pushedAt":"2024-09-13T00:42:32.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"quaff","name":"Yanming Zhou","path":"/quaff","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/143040?s=80&v=4"},"commit":{"message":"Add tests to ensure `private` constructor is not used for value object binding\n\nSometimes we want to duplicate `@ConfigurationProperties` bean with different prefix, we should use the primary configuration properties as default of additional configuration properties instead of re-configuring them all, then we could inject that primary bean and copy its values as default via constructor, there are two ways to force constructor used for injection instead of binding, annotating it with `@Autowired` or marking it as `private`, and the former one is already covered by tests, this commit add test for latter one.","shortMessageHtmlLink":"Add tests to ensure private constructor is not used for value objec…"}},{"before":null,"after":"8ae78b6f9a1e53bf05b24697a6ddb475a9a4a971","ref":"refs/heads/patch-69","pushedAt":"2024-09-13T00:30:15.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"quaff","name":"Yanming Zhou","path":"/quaff","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/143040?s=80&v=4"},"commit":{"message":"Add tests to ensure `@Autowired` or `private` constructor is not used for value object binding\n\nSometimes we want to duplicate `@ConfigurationProperties` bean with different prefix, we should use the primary configuration properties as default of additional configuration properties instead of re-configuring them all, then we could inject that primary bean and copy its values as default via constructor, there are two ways to force constructor used for injection instead of binding, annotating it with `@Autowired` or marking it as `private`.","shortMessageHtmlLink":"Add tests to ensure @Autowired or private constructor is not used…"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"startCursor":"Y3Vyc29yOnYyOpK7MjAyNC0wOS0yNlQwMTo0NjoxNi4wMDAwMDBazwAAAATA8yZz","endCursor":"Y3Vyc29yOnYyOpK7MjAyNC0wOS0xM1QwMDozMDoxNS4wMDAwMDBazwAAAAS09fcf"}},"title":"Activity · quaff/spring-boot"}