{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":848293016,"defaultBranch":"main","name":"bevy_cli","ownerLogin":"TheBevyFlock","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2024-08-27T13:52:33.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/101017340?v=4","public":true,"private":false,"isOrgOwned":true},"refInfo":{"name":"","listCacheKey":"v0:1726799208.0","currentOid":""},"activityList":{"items":[{"before":"12d966a3954109bc64b02edea815fd1d54b079a0","after":"301cf92a8d963f2c4c19e5fee4540117a037b580","ref":"refs/heads/panicking-query-methods","pushedAt":"2024-09-20T02:50:26.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"BD103","name":"BD103","path":"/BD103","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/59022059?s=80&v=4"},"commit":{"message":"chore: do not specify redundant `rust` qualifier in code blocks","shortMessageHtmlLink":"chore: do not specify redundant rust qualifier in code blocks"}},{"before":"b6d5061bbac662d75a2df68ec339cb22a423fe14","after":"12d966a3954109bc64b02edea815fd1d54b079a0","ref":"refs/heads/panicking-query-methods","pushedAt":"2024-09-20T02:49:46.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"BD103","name":"BD103","path":"/BD103","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/59022059?s=80&v=4"},"commit":{"message":"feat: write documentation","shortMessageHtmlLink":"feat: write documentation"}},{"before":null,"after":"b6d5061bbac662d75a2df68ec339cb22a423fe14","ref":"refs/heads/panicking-query-methods","pushedAt":"2024-09-20T02:26:48.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"BD103","name":"BD103","path":"/BD103","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/59022059?s=80&v=4"},"commit":{"message":"feat: also check for `QueryState`","shortMessageHtmlLink":"feat: also check for QueryState"}},{"before":"cb3ac30b28076f78cada15b8725f69b3f6403dc2","after":null,"ref":"refs/heads/init-event-resource","pushedAt":"2024-09-19T21:45:36.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"BD103","name":"BD103","path":"/BD103","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/59022059?s=80&v=4"}},{"before":"9f53c800cb22037a639be469c43e936a4da06842","after":"18acaab31f3f423f9f52153543a0d592669b39d3","ref":"refs/heads/main","pushedAt":"2024-09-19T21:45:34.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"BD103","name":"BD103","path":"/BD103","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/59022059?s=80&v=4"},"commit":{"message":"Add lint: `bevy::insert_event_resource` (#86)","shortMessageHtmlLink":"Add lint: bevy::insert_event_resource (#86)"}},{"before":"6c15fc22d9a047200e3c12af45f22dc2e755e5df","after":null,"ref":"refs/heads/forward-exit-code","pushedAt":"2024-09-19T14:22:10.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"BD103","name":"BD103","path":"/BD103","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/59022059?s=80&v=4"}},{"before":"521cb475b5395679ebf0c13e357ede9ad29722ce","after":"9f53c800cb22037a639be469c43e936a4da06842","ref":"refs/heads/main","pushedAt":"2024-09-19T14:22:09.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"BD103","name":"BD103","path":"/BD103","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/59022059?s=80&v=4"},"commit":{"message":"Return `cargo`'s exit code on failure in `bevy_lint` (#93)\n\nThe code is pretty self-explanatory! Now, if `cargo` fails with exit\r\ncode 101, so will `bevy_lint`.\r\n\r\n---------\r\n\r\nCo-authored-by: Jan Hohenheim ","shortMessageHtmlLink":"Return cargo's exit code on failure in bevy_lint (#93)"}},{"before":"35ef625884237990d01effd2576508ee8f9ae92d","after":"6c15fc22d9a047200e3c12af45f22dc2e755e5df","ref":"refs/heads/forward-exit-code","pushedAt":"2024-09-19T14:18:44.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"BD103","name":"BD103","path":"/BD103","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/59022059?s=80&v=4"},"commit":{"message":"refactor: inline string formatting\n\nCo-authored-by: Jan Hohenheim ","shortMessageHtmlLink":"refactor: inline string formatting"}},{"before":"2aa5b2b1e52ea9f55254a5cad194d7cc6defa758","after":"cb3ac30b28076f78cada15b8725f69b3f6403dc2","ref":"refs/heads/init-event-resource","pushedAt":"2024-09-19T14:17:53.000Z","pushType":"push","commitsCount":3,"pusher":{"login":"BD103","name":"BD103","path":"/BD103","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/59022059?s=80&v=4"},"commit":{"message":"Merge branch 'main' into init-event-resource","shortMessageHtmlLink":"Merge branch 'main' into init-event-resource"}},{"before":"5cd697c7a505bf1a9fb057875dc21c0cb7b1cdea","after":"2aa5b2b1e52ea9f55254a5cad194d7cc6defa758","ref":"refs/heads/init-event-resource","pushedAt":"2024-09-19T14:14:13.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"BD103","name":"BD103","path":"/BD103","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/59022059?s=80&v=4"},"commit":{"message":"chore: replace \"Why is this bad?\" with \"Motivation\"","shortMessageHtmlLink":"chore: replace \"Why is this bad?\" with \"Motivation\""}},{"before":null,"after":"35ef625884237990d01effd2576508ee8f9ae92d","ref":"refs/heads/forward-exit-code","pushedAt":"2024-09-19T14:05:30.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"BD103","name":"BD103","path":"/BD103","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/59022059?s=80&v=4"},"commit":{"message":"feat: return `cargo`'s exit code on failure","shortMessageHtmlLink":"feat: return cargo's exit code on failure"}},{"before":"28aba235202b48e10ceca23d0356b55b1d881f07","after":"5cd697c7a505bf1a9fb057875dc21c0cb7b1cdea","ref":"refs/heads/init-event-resource","pushedAt":"2024-09-19T12:36:26.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"BD103","name":"BD103","path":"/BD103","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/59022059?s=80&v=4"},"commit":{"message":"chore: remove lifetime that can be elided","shortMessageHtmlLink":"chore: remove lifetime that can be elided"}},{"before":"5009f844c41ef5c2392b3c1a13b16056a25ec352","after":"28aba235202b48e10ceca23d0356b55b1d881f07","ref":"refs/heads/init-event-resource","pushedAt":"2024-09-19T12:33:08.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"BD103","name":"BD103","path":"/BD103","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/59022059?s=80&v=4"},"commit":{"message":"feat: improve documentation on why this lint exists\n\nCo-authored-by: Christopher Biscardi ","shortMessageHtmlLink":"feat: improve documentation on why this lint exists"}},{"before":"97e791bffedfc3c8777a40e4e3d0055736586355","after":null,"ref":"refs/heads/cargo-build-wrapper","pushedAt":"2024-09-19T12:21:46.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"janhohenheim","name":"Jan Hohenheim","path":"/janhohenheim","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/9047632?s=80&v=4"}},{"before":"4baba797f40e1817eb47ab1d7114966c588a8aaf","after":"521cb475b5395679ebf0c13e357ede9ad29722ce","ref":"refs/heads/main","pushedAt":"2024-09-19T12:21:46.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"janhohenheim","name":"Jan Hohenheim","path":"/janhohenheim","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/9047632?s=80&v=4"},"commit":{"message":"Add wrapper for cargo build command (#76)\n\nCo-authored-by: Jan Hohenheim ","shortMessageHtmlLink":"Add wrapper for cargo build command (#76)"}},{"before":"fd40d0ed0c50bbbc59ac174062a2a98d3985bba8","after":"97e791bffedfc3c8777a40e4e3d0055736586355","ref":"refs/heads/cargo-build-wrapper","pushedAt":"2024-09-19T12:16:22.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"janhohenheim","name":"Jan Hohenheim","path":"/janhohenheim","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/9047632?s=80&v=4"},"commit":{"message":"Update src/external_cli/cargo/build.rs","shortMessageHtmlLink":"Update src/external_cli/cargo/build.rs"}},{"before":"5c9d3ba25ab100a06b74b133f1ecc23d02d33ef6","after":"fd40d0ed0c50bbbc59ac174062a2a98d3985bba8","ref":"refs/heads/cargo-build-wrapper","pushedAt":"2024-09-19T12:10:14.000Z","pushType":"push","commitsCount":5,"pusher":{"login":"janhohenheim","name":"Jan Hohenheim","path":"/janhohenheim","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/9047632?s=80&v=4"},"commit":{"message":"Merge branch 'main' into cargo-build-wrapper","shortMessageHtmlLink":"Merge branch 'main' into cargo-build-wrapper"}},{"before":"d9066f5c7f27ebaef93228bfaa9b5907fc576c3a","after":"5c9d3ba25ab100a06b74b133f1ecc23d02d33ef6","ref":"refs/heads/cargo-build-wrapper","pushedAt":"2024-09-19T12:09:02.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"janhohenheim","name":"Jan Hohenheim","path":"/janhohenheim","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/9047632?s=80&v=4"},"commit":{"message":"Update src/external_cli/cargo/build.rs","shortMessageHtmlLink":"Update src/external_cli/cargo/build.rs"}},{"before":"fcf8bf36eebc1496ad81ba633043b4d1f9ce655a","after":null,"ref":"refs/heads/wasm-bindgen-wrapper","pushedAt":"2024-09-19T11:59:36.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"BD103","name":"BD103","path":"/BD103","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/59022059?s=80&v=4"}},{"before":"b12f311cd76a4fe85bf7936ac61b4930cf35729e","after":"4baba797f40e1817eb47ab1d7114966c588a8aaf","ref":"refs/heads/main","pushedAt":"2024-09-19T11:59:34.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"BD103","name":"BD103","path":"/BD103","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/59022059?s=80&v=4"},"commit":{"message":"Add wrapper for wasm_bindgen CLI (#75)\n\nFurther work towards #24 \r\n\r\n`wasm_bindgen` is used to generate JS bindings for the WASM executable.","shortMessageHtmlLink":"Add wrapper for wasm_bindgen CLI (#75)"}},{"before":"2ed44e0b924a03341c54ecbfc1d891f79f7de955","after":"d9066f5c7f27ebaef93228bfaa9b5907fc576c3a","ref":"refs/heads/cargo-build-wrapper","pushedAt":"2024-09-19T07:52:56.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"TimJentzsch","name":null,"path":"/TimJentzsch","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/13908946?s=80&v=4"},"commit":{"message":"Support changing the cargo command via an env var","shortMessageHtmlLink":"Support changing the cargo command via an env var"}},{"before":"3b03ac7a9d033b4839ea7f4dc850aa88969e7a77","after":"5009f844c41ef5c2392b3c1a13b16056a25ec352","ref":"refs/heads/init-event-resource","pushedAt":"2024-09-18T22:13:43.000Z","pushType":"push","commitsCount":3,"pusher":{"login":"BD103","name":"BD103","path":"/BD103","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/59022059?s=80&v=4"},"commit":{"message":"Merge branch 'main' into init-event-resource","shortMessageHtmlLink":"Merge branch 'main' into init-event-resource"}},{"before":"97ea8f1e0af4f04ef0890837394028bfad7e180c","after":null,"ref":"refs/heads/main-return-without-appexit","pushedAt":"2024-09-18T22:05:14.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"BD103","name":"BD103","path":"/BD103","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/59022059?s=80&v=4"}},{"before":"cd55663028df73b6f9509d0b6c0352f2473054fd","after":"b12f311cd76a4fe85bf7936ac61b4930cf35729e","ref":"refs/heads/main","pushedAt":"2024-09-18T22:05:13.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"BD103","name":"BD103","path":"/BD103","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/59022059?s=80&v=4"},"commit":{"message":"Add lint: `bevy::main_return_without_appexit` (#84)\n\nThis is the first lint! Closes #53. Please see the module documentation\r\nor [this\r\nlink](https://hackmd.io/4ciCsSb7SxyqnteFzirEDA?view#main_return_without_appexit)\r\nfor information about what the lint does.\r\n\r\n## Design decisions\r\n\r\n- Lint modules are there documentation, and as such are public.\r\n \r\n\r\n![image](https://github.com/user-attachments/assets/2626287d-ceab-4743-9f98-0ddbf559d3e0)\r\n\r\n- `lints/mod.rs` has the `LINTS` static for `register_passes()`\r\nfunction, so you don't have to remember to touch `BevyLintCallback` each\r\ntime you add a lint.\r\n- For now, lints are going to be manually added as modules, to `LINTS`,\r\nand to `register_passes()`. I tried using a macro, but it was too\r\ncomplicated and not worth it.\r\n- Lints should be declared with the builtin `declare_tool_lint!` and\r\n`declare_lint_pass!` macros.\r\n\r\n## Current drawbacks\r\n\r\n- This lint does not detect if you emit `AppExit` through some other\r\nmeans, such as:\r\n\r\n ```rust\r\n fn main() {\r\n let app_exit = App::new().run();\r\n println!(\"{app_exit:?}\");\r\n }\r\n ```\r\n\r\nI found this too complicated for a first lint, so I'm going to create a\r\nfollow-up issue to tackle this.\r\n- Lints currently do not support be silenced / changing levels.\r\n`#[allow(bevy::main_return_without_appexit)]`, `-A\r\nbevy::main_return_without_appexit`, and adding\r\n`main_return_without_appexit = \"allow\"` to `Cargo.toml` all fail. This\r\nis another follow-up issue.\r\n- I have not created the lint groups yet, so this is not within the\r\n`bevy::style` category yet. This is the final follow-up that I know of.\r\n\r\n## Testing!\r\n\r\nNow for the fun part! Because there are no UI tests (yet), manually\r\npaste the following in `bevy_lint/examples/lint_test.rs`:\r\n\r\n```rust\r\nuse bevy::prelude::*;\r\n\r\nfn main() {\r\n App::new().run();\r\n}\r\n```\r\n\r\nThen, run the following:\r\n\r\n```bash\r\ncd bevy_lint\r\ncargo build\r\ncargo run -- --example lint_test\r\n```\r\n\r\nThe outputted warning should look like this:\r\n\r\n```bash\r\nwarning: an entrypoint that calls `App::run()` does not return `AppExit`\r\n --> bevy_lint/examples/lint_test.rs:4:16\r\n |\r\n3 | fn main() {\r\n | - help: try: `-> AppExit`\r\n4 | App::new().run();\r\n | ^^^^^\r\n |\r\n = note: `App::run()` returns `AppExit`, which can be used to determine whether the app exited successfully or not\r\n = note: `#[warn(bevy::main_return_without_appexit)]` on by default\r\n```\r\n\r\n---------\r\n\r\nCo-authored-by: Jan Hohenheim ","shortMessageHtmlLink":"Add lint: bevy::main_return_without_appexit (#84)"}},{"before":"9f1f12353fc30f7abfd65dbcc2837c63873cdb96","after":"97ea8f1e0af4f04ef0890837394028bfad7e180c","ref":"refs/heads/main-return-without-appexit","pushedAt":"2024-09-18T21:58:35.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"BD103","name":"BD103","path":"/BD103","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/59022059?s=80&v=4"},"commit":{"message":"fix: leftover brace","shortMessageHtmlLink":"fix: leftover brace"}},{"before":"8fafa0b5315c610915eab08a265ae18e20598f34","after":"9f1f12353fc30f7abfd65dbcc2837c63873cdb96","ref":"refs/heads/main-return-without-appexit","pushedAt":"2024-09-18T21:56:04.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"BD103","name":"BD103","path":"/BD103","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/59022059?s=80&v=4"},"commit":{"message":"Merge branch 'main' into main-return-without-appexit","shortMessageHtmlLink":"Merge branch 'main' into main-return-without-appexit"}},{"before":"1baa1a33cc3a213bca545fd1e84b3db3add26704","after":"8fafa0b5315c610915eab08a265ae18e20598f34","ref":"refs/heads/main-return-without-appexit","pushedAt":"2024-09-18T21:54:46.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"BD103","name":"BD103","path":"/BD103","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/59022059?s=80&v=4"},"commit":{"message":"refactor: use `matches!()` macro\n\nCo-authored-by: Jan Hohenheim ","shortMessageHtmlLink":"refactor: use matches!() macro"}},{"before":"96576833990107d18f3f01f559122dc4391000b0","after":"1baa1a33cc3a213bca545fd1e84b3db3add26704","ref":"refs/heads/main-return-without-appexit","pushedAt":"2024-09-18T21:54:09.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"BD103","name":"BD103","path":"/BD103","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/59022059?s=80&v=4"},"commit":{"message":"chore: make `paths` module private","shortMessageHtmlLink":"chore: make paths module private"}},{"before":"b8c9d0ca0d7eed187df0dff544a1ae3649f4e131","after":"cd55663028df73b6f9509d0b6c0352f2473054fd","ref":"refs/heads/main","pushedAt":"2024-09-18T20:50:22.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"janhohenheim","name":"Jan Hohenheim","path":"/janhohenheim","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/9047632?s=80&v=4"},"commit":{"message":"Allow 2d as a template value for quickstart (#82)","shortMessageHtmlLink":"Allow 2d as a template value for quickstart (#82)"}},{"before":"fdddec3e7c12c5d9cb2d00989f5ef90811ea4aea","after":"3b03ac7a9d033b4839ea7f4dc850aa88969e7a77","ref":"refs/heads/init-event-resource","pushedAt":"2024-09-18T18:40:19.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"BD103","name":"BD103","path":"/BD103","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/59022059?s=80&v=4"},"commit":{"message":"feat: write documentation","shortMessageHtmlLink":"feat: write documentation"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"Y3Vyc29yOnYyOpK7MjAyNC0wOS0yMFQwMjo1MDoyNi4wMDAwMDBazwAAAAS7gANc","startCursor":"Y3Vyc29yOnYyOpK7MjAyNC0wOS0yMFQwMjo1MDoyNi4wMDAwMDBazwAAAAS7gANc","endCursor":"Y3Vyc29yOnYyOpK7MjAyNC0wOS0xOFQxODo0MDoxOS4wMDAwMDBazwAAAAS6DGJF"}},"title":"Activity ยท TheBevyFlock/bevy_cli"}