Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: F1bonacc1/process-compose
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: v0.10.0
Choose a base ref
...
head repository: F1bonacc1/process-compose
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: main
Choose a head ref
Loading
Showing with 23,329 additions and 2,114 deletions.
  1. +2 −0 .env.local
  2. +2 −0 .github/FUNDING.yml
  3. +4 −0 .github/ISSUE_TEMPLATE/blank_issue.md
  4. +23 −0 .github/ISSUE_TEMPLATE/defect.md
  5. +15 −0 .github/ISSUE_TEMPLATE/feature_request.md
  6. +7 −0 .github/dependabot.yml
  7. +32 −0 .github/workflows/docs.yml
  8. +7 −4 .github/workflows/go.yml
  9. +18 −0 .github/workflows/nix.yml
  10. +13 −1 .gitignore
  11. +111 −0 .golangci.yaml
  12. +141 −0 .goreleaser.yaml
  13. +58 −0 .idx/dev.nix
  14. +85 −15 Makefile
  15. +59 −315 README.md
  16. 0 bin/.gitkeep
  17. +43 −0 default.nix
  18. +8 −8 examples/data_aggregation_workflow.yaml
  19. +69 −0 fixtures-code/process-compose-chain-exit.yaml
  20. +17 −15 {fixtures → fixtures-code}/process-compose-chain.yaml
  21. +20 −0 fixtures-code/process-compose-circular.yaml
  22. +11 −0 fixtures-code/process-compose-non-circular.yaml
  23. +23 −0 fixtures-code/process-compose-scale.yaml
  24. +29 −0 fixtures-code/process-compose-shutdown-inorder.yaml
  25. +22 −0 fixtures-code/process-compose-transitive-dep.yaml
  26. +5 −0 fixtures-code/process-compose-with-extends.yaml
  27. +7 −7 {fixtures → fixtures-code}/process-compose-with-log.yaml
  28. +16 −18 fixtures/process-compose-chain-arrow.yaml
  29. +17 −17 fixtures/process-compose-chain-rhombus.yaml
  30. +5 −5 fixtures/process-compose-chain-with-errors.yaml
  31. +16 −16 fixtures/process-compose-many-for-one.yaml
  32. +13 −13 fixtures/process-compose-odd-then-even.yaml
  33. +14 −14 fixtures/process-compose-one-for-many.yaml
  34. +43 −0 flake.lock
  35. +37 −0 flake.nix
  36. +75 −35 go.mod
  37. +238 −147 go.sum
  38. BIN imgs/btc.wallet.qr.png
  39. BIN imgs/tui.png
  40. +28 −0 issues/issue_102/process-compose.yaml
  41. +22 −0 issues/issue_107/after.4h.alloc_space.txt
  42. +20 −0 issues/issue_107/after.4h.txt
  43. +104 −0 issues/issue_107/process-compose.yaml
  44. +42 −0 issues/issue_111/process-compose-probes.yaml
  45. +26 −0 issues/issue_111/process-compose.yaml
  46. +11 −0 issues/issue_120/process-compose.yaml
  47. +47 −0 issues/issue_156/process-compose.yaml
  48. +21 −0 issues/issue_166/process-compose.yaml
  49. +7 −0 issues/issue_177/process-compose.override.yml
  50. +5 −0 issues/issue_177/process-compose.yml
  51. +22 −0 issues/issue_189/process-compose.yaml
  52. +4 −0 issues/issue_191/process-compose.yaml
  53. +10 −0 issues/issue_200/process-compose.yaml
  54. +15 −0 issues/issue_214/process-compose.yaml
  55. +42 −0 issues/issue_237/logger.sh
  56. +11 −0 issues/issue_237/process-compose.yml
  57. +11 −0 issues/issue_238/process-compose.yaml
  58. +6 −0 issues/issue_239/process-compose.yaml
  59. +20 −0 issues/issue_258/devbox.json
  60. +158 −0 issues/issue_258/devbox.lock
  61. +22 −0 issues/issue_258/process-compose.yaml
  62. +45 −0 issues/issue_274/process-compose.json
  63. +2 −0 issues/issue_278/db/db.sh
  64. +4 −0 issues/issue_278/db/process-compose.yaml
  65. +9 −0 issues/issue_278/server/process-compose.yaml
  66. +2 −0 issues/issue_278/server/server.sh
  67. +18 −0 issues/issue_280/process-compose.yaml
  68. +13 −0 issues/issue_49/bad_script.sh
  69. +12 −0 issues/issue_49/process-compose.yaml
  70. +11 −0 issues/issue_57/long_log.py
  71. +10 −0 issues/issue_57/process-compose.yaml
  72. +14 −0 issues/issue_57/too_chatty.py
  73. 0 issues/issue_72/clientA/.gitkeep
  74. +24 −0 issues/issue_72/process-compose.yaml
  75. +9 −0 issues/issue_84/process-compose.yaml
  76. +4 −4 process-compose-win.yaml
  77. +224 −0 process-compose.override.yaml
  78. +100 −15 process-compose.yaml
  79. +383 −0 scripts/get-pc.sh
  80. +7 −0 src/admitter/admitter.go
  81. +10 −0 src/admitter/disabled.go
  82. +19 −0 src/admitter/namespace.go
  83. +92 −0 src/admitter/namespace_test.go
  84. +362 −43 src/api/pc_api.go
  85. +30 −23 src/api/routes.go
  86. +73 −0 src/api/server.go
  87. +6 −0 src/api/types.go
  88. +131 −0 src/api/ws_api.go
  89. +0 −96 src/app/config.go
  90. +29 −0 src/app/daemon.go
  91. +55 −1 src/app/pc_string.go
  92. +83 −0 src/app/pc_string_test.go
  93. +69 −0 src/app/proc_opts.go
  94. +764 −117 src/app/process.go
  95. +0 −67 src/app/process_test.go
  96. +0 −378 src/app/project.go
  97. +35 −0 src/app/project_interface.go
  98. +52 −0 src/app/project_opts.go
  99. +1,083 −0 src/app/project_runner.go
  100. +254 −0 src/app/project_runner_test.go
  101. +0 −130 src/app/project_test.go
  102. +1,051 −48 src/app/system_test.go
  103. +182 −0 src/client/client.go
  104. +5 −0 src/client/common.go
  105. +91 −0 src/client/logs.go
  106. +129 −0 src/client/processes.go
  107. +107 −0 src/client/project.go
  108. +27 −0 src/client/restart.go
  109. +31 −0 src/client/scale_process.go
  110. +27 −0 src/client/start.go
  111. +41 −0 src/client/status.go
  112. +67 −0 src/client/stop.go
  113. +34 −0 src/cmd/0-init.go
  114. +25 −0 src/cmd/attach.go
  115. +27 −0 src/cmd/docs.go
  116. +25 −0 src/cmd/down.go
  117. +33 −0 src/cmd/get.go
  118. +34 −0 src/cmd/info.go
  119. +113 −0 src/cmd/list.go
  120. +69 −0 src/cmd/logs.go
  121. +29 −0 src/cmd/ports.go
  122. +17 −0 src/cmd/process.go
  123. +19 −0 src/cmd/project.go
  124. +140 −0 src/cmd/project_runner.go
  125. +44 −0 src/cmd/project_runner_unix.go
  126. +7 −0 src/cmd/project_runner_windows.go
  127. +26 −0 src/cmd/restart.go
  128. +245 −0 src/cmd/root.go
  129. +54 −0 src/cmd/run.go
  130. +31 −0 src/cmd/scale.go
  131. +27 −0 src/cmd/start.go
  132. +67 −0 src/cmd/state.go
  133. +82 −0 src/cmd/stop.go
  134. +125 −0 src/cmd/stop_test.go
  135. +47 −0 src/cmd/up.go
  136. +93 −0 src/cmd/update.go
  137. +31 −0 src/cmd/version.go
  138. +85 −0 src/command/command.go
  139. +61 −0 src/command/command_wrapper.go
  140. +63 −0 src/command/command_wrapper_pty.go
  141. +20 −0 src/command/commander.go
  142. +8 −0 src/command/config.go
  143. +72 −0 src/command/mock_command.go
  144. +48 −0 src/command/noise_maker.go
  145. +44 −0 src/command/stopper_unix.go
  146. +16 −0 src/command/stopper_windows.go
  147. +113 −0 src/config/Flags.go
  148. +68 −0 src/config/color.go
  149. +218 −0 src/config/config.go
  150. +15 −0 src/config/files.go
  151. +67 −0 src/config/settings.go
  152. +260 −0 src/config/styles.go
  153. +156 −0 src/config/themes.go
  154. +36 −0 src/config/themes/cobalt-theme.yaml
  155. +36 −0 src/config/themes/default-theme.yaml
  156. +38 −0 src/config/themes/light-theme.yaml
  157. +36 −0 src/config/themes/monokai-theme.yaml
  158. +36 −0 src/config/themes/onedark-theme.yaml
  159. +981 −12 src/docs/docs.go
  160. +1,136 −53 src/docs/swagger.json
  161. +780 −82 src/docs/swagger.yaml
  162. +27 −0 src/health/exec_checker.go
  163. +125 −0 src/health/health_checks.go
  164. +85 −0 src/health/probe.go
  165. +158 −0 src/health/probe_test.go
  166. +222 −0 src/loader/loader.go
  167. +47 −0 src/loader/loader_options.go
  168. +50 −0 src/loader/loader_options_test.go
  169. +184 −0 src/loader/loader_test.go
  170. +161 −0 src/loader/merger.go
  171. +442 −0 src/loader/merger_test.go
  172. +136 −0 src/loader/mutators.go
  173. +487 −0 src/loader/mutators_test.go
  174. +169 −0 src/loader/validators.go
  175. +188 −0 src/loader/validators_test.go
  176. +2 −106 src/main.go
  177. +47 −0 src/pclog/colortracker.go
  178. +35 −0 src/pclog/log_observer_connector.go
  179. +166 −26 src/pclog/logger_facade.go
  180. +3 −0 src/pclog/logger_interface.go
  181. +4 −2 src/pclog/logs_observer.go
  182. +8 −3 src/pclog/nil_logger.go
  183. +25 −29 src/pclog/process_log_buffer.go
  184. +15 −0 src/pclog/unique_id.go
  185. +96 −0 src/templater/templater.go
  186. +77 −0 src/templater/templater_test.go
  187. +404 −0 src/tui/actions.go
  188. +11 −0 src/tui/debug.go
  189. +17 −0 src/tui/dialog.go
  190. +128 −0 src/tui/help-dialog.go
  191. +121 −0 src/tui/log-operations.go
  192. +187 −0 src/tui/log-viewer.go
  193. +0 −63 src/tui/log_viewer.go
  194. +158 −0 src/tui/main-grid.go
  195. +97 −0 src/tui/namespace-selector.go
  196. +134 −0 src/tui/proc-editor.go
  197. +71 −0 src/tui/proc-info-form.go
  198. +94 −0 src/tui/proc-starter.go
  199. +491 −0 src/tui/proc-table.go
  200. +66 −0 src/tui/proc-table_test.go
  201. +179 −0 src/tui/procstate_sorter.go
  202. +38 −0 src/tui/scale-form.go
  203. +54 −0 src/tui/search-form.go
  204. +151 −0 src/tui/stat-table.go
  205. +78 −0 src/tui/styles.go
  206. +85 −0 src/tui/theme-selector.go
  207. +54 −0 src/tui/tui_option.go
  208. +548 −181 src/tui/view.go
  209. +30 −0 src/types/deprecation.go
  210. +37 −0 src/types/logger.go
  211. +305 −0 src/types/process.go
  212. +130 −0 src/types/process_test.go
  213. +121 −0 src/types/project.go
  214. +22 −0 src/types/project_state.go
  215. +183 −0 src/types/project_test.go
  216. +28 −0 src/updater/update_checker.go
  217. +10 −5 test_loop.bash
  218. +49 −0 www/docs/cli/process-compose.md
  219. +37 −0 www/docs/cli/process-compose_attach.md
  220. +37 −0 www/docs/cli/process-compose_completion.md
  221. +56 −0 www/docs/cli/process-compose_completion_bash.md
  222. +47 −0 www/docs/cli/process-compose_completion_fish.md
  223. +44 −0 www/docs/cli/process-compose_completion_powershell.md
  224. +58 −0 www/docs/cli/process-compose_completion_zsh.md
  225. +32 −0 www/docs/cli/process-compose_down.md
  226. +31 −0 www/docs/cli/process-compose_info.md
  227. +32 −0 www/docs/cli/process-compose_list.md
  228. +36 −0 www/docs/cli/process-compose_process.md
  229. +33 −0 www/docs/cli/process-compose_process_get.md
  230. +33 −0 www/docs/cli/process-compose_process_list.md
  231. +35 −0 www/docs/cli/process-compose_process_logs.md
  232. +32 −0 www/docs/cli/process-compose_process_ports.md
  233. +32 −0 www/docs/cli/process-compose_process_restart.md
  234. +32 −0 www/docs/cli/process-compose_process_scale.md
  235. +32 −0 www/docs/cli/process-compose_process_start.md
  236. +33 −0 www/docs/cli/process-compose_process_stop.md
  237. +30 −0 www/docs/cli/process-compose_project.md
  238. +33 −0 www/docs/cli/process-compose_project_state.md
  239. +34 −0 www/docs/cli/process-compose_project_update.md
  240. +39 −0 www/docs/cli/process-compose_run.md
  241. +50 −0 www/docs/cli/process-compose_up.md
  242. +31 −0 www/docs/cli/process-compose_version.md
  243. +84 −0 www/docs/client.md
  244. +523 −0 www/docs/configuration.md
  245. +46 −0 www/docs/contributing.md
  246. +72 −0 www/docs/health.md
  247. BIN www/docs/img/favicon.ico
  248. +48 −0 www/docs/index.md
  249. +42 −0 www/docs/installation.md
  250. +79 −0 www/docs/intro.md
  251. +321 −0 www/docs/launcher.md
  252. +95 −0 www/docs/logging.md
  253. +189 −0 www/docs/merge.md
  254. +17 −0 www/docs/sponsors.md
  255. +193 −0 www/docs/tui.md
  256. +99 −0 www/mkdocs.yml
2 changes: 2 additions & 0 deletions .env.local
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
LOCAL_ENV_VAR1=FOO
LOCAL_ENV_VAR2=BAR
2 changes: 2 additions & 0 deletions .github/FUNDING.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
# These are supported funding model platforms
github: [F1bonacc1]
4 changes: 4 additions & 0 deletions .github/ISSUE_TEMPLATE/blank_issue.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
---
name: Blank Issue
about: Create an issue with a blank template.
---
23 changes: 23 additions & 0 deletions .github/ISSUE_TEMPLATE/defect.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
---
name: Defect Report
about: Report a bug found in Process Compose
labels: 🐞 bug
---

## Defect

Make sure that these boxes are checked before submitting your issue -- thank you!

- [ ] Included the relevant configuration snippet
- [ ] Included the relevant process-compose log (log location: `process-compose info`)
- [ ] Included a [Minimal, Complete, and Verifiable example] (https://stackoverflow.com/help/mcve)

#### Version of `process-compose`:

#### OS environment:

#### Steps or code to reproduce the issue:

#### Expected result:

#### Actual result:
15 changes: 15 additions & 0 deletions .github/ISSUE_TEMPLATE/feature_request.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
---
name: Feature Request
about: Request a feature for the Process Compose
labels: 🎉 enhancement
---

## Feature Request

#### Use Case:

#### Proposed Change:

#### Who Benefits From The Change(s)?

#### Alternative Approaches
7 changes: 7 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
---
version: 2
updates:
- package-ecosystem: "gomod"
directory: "/"
schedule:
interval: "weekly"
32 changes: 32 additions & 0 deletions .github/workflows/docs.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
name: docs
on:
push:
branches:
- main
- docs
paths:
- "www/**/*"
- ".github/workflows/docs.yml"
pull_request:
paths:
- "www/**/*"
- ".github/workflows/docs.yml"

permissions:
contents: write
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/setup-python@v4
with:
python-version: 3.x
- uses: actions/cache@v2
with:
key: ${{ github.ref }}
path: .cache
- run: pip install mkdocs-material
- run: pip install pillow cairosvg
- run: mkdocs gh-deploy --force
working-directory: ./www
11 changes: 7 additions & 4 deletions .github/workflows/go.yml
Original file line number Diff line number Diff line change
@@ -7,19 +7,22 @@ on:
branches: [ main ]

jobs:

build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4

- name: Set up Go
uses: actions/setup-go@v3
uses: actions/setup-go@v5
with:
go-version: 1.17
go-version: 1.22

- name: Build
run: go build -v -o process-compose ./src

- name: Test
run: go test -v ./src/...

- name: Run golangci-lint
uses: golangci/golangci-lint-action@v6

18 changes: 18 additions & 0 deletions .github/workflows/nix.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
name: Nix
on:
push:
branches:
- main
pull_request:
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Install Nix
uses: cachix/install-nix-action@v24
- name: Nix version
run: nix --version
- name: Nix build
run: nix build -L .#packages.x86_64-linux.process-compose
14 changes: 13 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
@@ -1,5 +1,17 @@
coverage.out
.vscode
bin/**
.idea
bin/*
*.log
*.log.gz
.env
# local build output via go build
process-compose

# nix build .#process-compose output
result

dist/
/exports
www/venv
www/.cache
111 changes: 111 additions & 0 deletions .golangci.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,111 @@
linters:
disable-all: true
# Enable specific linter
# https://golangci-lint.run/usage/linters/#enabled-by-default
enable:
- asasalint
- asciicheck
- bidichk
# - bodyclose
- canonicalheader
# - containedctx
- contextcheck
- copyloopvar
# - cyclop
- decorder
# - depguard
# - dogsled
# - dupl
- dupword
- durationcheck
# - err113
- errcheck
- errchkjson
- errname
# - errorlint
# - execinquery
# - exhaustive
# - exhaustruct
# - exportloopref
- fatcontext
# - forbidigo
# - forcetypeassert
# - funlen
# - gci
- ginkgolinter
- gocheckcompilerdirectives
# - gochecknoglobals
# - gochecknoinits
- gochecksumtype
# - gocognit
# - goconst
# - gocritic
- gocyclo
# - godot
# - godox
# - gofmt
# - gofumpt
- goheader
# - goimports
# - gomoddirectives
- gomodguard
# - goprintffuncname
# - gosec
- gosimple
- gosmopolitan
- govet
- grouper
- importas
# - inamedparam
- ineffassign
# - interfacebloat
# - intrange
# - ireturn
# - lll
- loggercheck
- maintidx
# - makezero
- mirror
- misspell
# - mnd
# - musttag
- nakedret
# - nestif
- nilerr
# - nilnil
# - nlreturn
# - noctx
- nolintlint
# - nonamedreturns
- nosprintfhostport
# - paralleltest
# - perfsprint
# - prealloc
# - predeclared
- promlinter
- protogetter
- reassign
# - revive
- rowserrcheck
- sloglint
- spancheck
- sqlclosecheck
- staticcheck
# - stylecheck
# - tagalign
- tenv
- testableexamples
- testifylint
# - testpackage
# - thelper
- tparallel
- unconvert
# - unparam
# - unused
- usestdlibvars
# - varnamelen
- wastedassign
# - whitespace
# - wrapcheck
# - wsl
- zerologlint
Loading