A focused Docker Compose management web application.
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

chore: change line endings

Brooke e7250b31 cfa9511f

+94 -83
+21 -21
LICENSE
··· 1 - MIT License 2 - 3 - Copyright (c) 2025 brooke-ec 4 - 5 - Permission is hereby granted, free of charge, to any person obtaining a copy 6 - of this software and associated documentation files (the "Software"), to deal 7 - in the Software without restriction, including without limitation the rights 8 - to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 - copies of the Software, and to permit persons to whom the Software is 10 - furnished to do so, subject to the following conditions: 11 - 12 - The above copyright notice and this permission notice shall be included in all 13 - copies or substantial portions of the Software. 14 - 15 - THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 - IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 - FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 - AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 - LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 - OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 - SOFTWARE. 1 + MIT License 2 + 3 + Copyright (c) 2025 brooke-ec 4 + 5 + Permission is hereby granted, free of charge, to any person obtaining a copy 6 + of this software and associated documentation files (the "Software"), to deal 7 + in the Software without restriction, including without limitation the rights 8 + to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 + copies of the Software, and to permit persons to whom the Software is 10 + furnished to do so, subject to the following conditions: 11 + 12 + The above copyright notice and this permission notice shall be included in all 13 + copies or substantial portions of the Software. 14 + 15 + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 + SOFTWARE.
+1 -1
README.md
··· 1 - # Luminary 1 + # Luminary
+14 -14
justfile
··· 1 - [parallel] 2 - dev: _dev_web _dev_node 3 - 4 - [working-directory('packages/node')] 5 - _dev_node: 6 - cargo watch -x run 7 - 8 - [working-directory('packages/panel')] 9 - _dev_web: 10 - pnpm vite dev 11 - 12 - install: 13 - cd packages/panel; pnpm install 14 - cargo install cargo-watch --locked 1 + [parallel] 2 + dev: _dev_web _dev_node 3 + 4 + [working-directory('packages/node')] 5 + _dev_node: 6 + cargo watch -x run 7 + 8 + [working-directory('packages/panel')] 9 + _dev_web: 10 + pnpm vite dev 11 + 12 + install: 13 + cd packages/panel; pnpm install 14 + cargo install cargo-watch --locked
+1 -1
packages/macros/.gitignore
··· 1 - /target 1 + /target
+11 -11
packages/macros/Cargo.toml
··· 1 - [package] 2 - name = "luminary-macros" 3 - edition = "2021" 4 - 5 - [dependencies] 6 - proc-macro2 = "1.0" 7 - quote = "1.0.40" 8 - syn = "2.0.101" 9 - 10 - [lib] 11 - proc-macro = true 1 + [package] 2 + name = "luminary-macros" 3 + edition = "2021" 4 + 5 + [dependencies] 6 + proc-macro2 = "1.0" 7 + quote = "1.0.40" 8 + syn = "2.0.101" 9 + 10 + [lib] 11 + proc-macro = true
+30 -30
packages/macros/src/lib.rs
··· 1 - use proc_macro::TokenStream; 2 - use proc_macro2::TokenStream as TokenStream2; 3 - use quote::quote; 4 - use syn::{parse_macro_input, ItemFn}; 5 - 6 - /// A macro to wrap the body of a function in `wrap_err`. This is useful for reducing boilerplate when using `eyre`. 7 - #[proc_macro_attribute] 8 - pub fn wrap_err(attr: TokenStream, item: TokenStream) -> TokenStream { 9 - let func = parse_macro_input!(item as ItemFn); 10 - let attr: TokenStream2 = attr.into(); 11 - let visibility = &func.vis; 12 - 13 - // Create variables for quoting 14 - let asyncness = &func.sig.asyncness; 15 - let output = &func.sig.output; 16 - let signature = &func.sig; 17 - let block = &func.block; 18 - 19 - let wait = match asyncness.is_some() { 20 - true => Some(quote! { .await }), 21 - false => None, 22 - }; 23 - 24 - return quote! { 25 - #visibility #signature { 26 - (#asyncness move || #output #block)()#wait.wrap_err(#attr) 27 - } 28 - } 29 - .into(); 30 - } 1 + use proc_macro::TokenStream; 2 + use proc_macro2::TokenStream as TokenStream2; 3 + use quote::quote; 4 + use syn::{parse_macro_input, ItemFn}; 5 + 6 + /// A macro to wrap the body of a function in `wrap_err`. This is useful for reducing boilerplate when using `eyre`. 7 + #[proc_macro_attribute] 8 + pub fn wrap_err(attr: TokenStream, item: TokenStream) -> TokenStream { 9 + let func = parse_macro_input!(item as ItemFn); 10 + let attr: TokenStream2 = attr.into(); 11 + let visibility = &func.vis; 12 + 13 + // Create variables for quoting 14 + let asyncness = &func.sig.asyncness; 15 + let output = &func.sig.output; 16 + let signature = &func.sig; 17 + let block = &func.block; 18 + 19 + let wait = match asyncness.is_some() { 20 + true => Some(quote! { .await }), 21 + false => None, 22 + }; 23 + 24 + return quote! { 25 + #visibility #signature { 26 + (#asyncness move || #output #block)()#wait.wrap_err(#attr) 27 + } 28 + } 29 + .into(); 30 + }
+1 -1
packages/node/.gitignore
··· 1 - /target 1 + /target
+12 -2
packages/node/Cargo.lock
··· 268 268 checksum = "39cab71617ae0d63f51a36d69f866391735b51691dbda63cf6f96d042b63efeb" 269 269 dependencies = [ 270 270 "libc", 271 - "windows-sys 0.60.2", 271 + "windows-sys 0.61.2", 272 272 ] 273 273 274 274 [[package]] ··· 625 625 ] 626 626 627 627 [[package]] 628 + name = "itertools" 629 + version = "0.14.0" 630 + source = "registry+https://github.com/rust-lang/crates.io-index" 631 + checksum = "2b192c782037fadd9cfa75548310488aabdbf3d2da73885b31bd0abd03351285" 632 + dependencies = [ 633 + "either", 634 + ] 635 + 636 + [[package]] 628 637 name = "itoa" 629 638 version = "1.0.17" 630 639 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 686 695 "axum", 687 696 "bollard", 688 697 "color-eyre", 698 + "itertools 0.14.0", 689 699 "luminary-macros", 690 700 "serde", 691 701 "serde_json", ··· 977 987 checksum = "4605306321c356e03873b8ee71d7592a5e7c508add325c3ed0677c16fdf1bcfb" 978 988 dependencies = [ 979 989 "Inflector", 980 - "itertools", 990 + "itertools 0.10.5", 981 991 "proc-macro2", 982 992 "quote", 983 993 "syn 1.0.109",
+2 -1
packages/node/Cargo.toml
··· 1 1 [package] 2 2 name = "luminary-node" 3 - edition = "2021" 3 + edition = "2024" 4 4 5 5 [dependencies] 6 6 axum = "0.8.8" ··· 15 15 "macros", 16 16 "process", 17 17 ] } 18 + itertools = "0.14.0"
+1 -1
packages/node/rustfmt.toml
··· 1 - max_width = 110 1 + max_width = 110