SimpleWorkflowRecipes
Documentation for SimpleWorkflowRecipes.
See the Index for the complete list of documented functions and types.
The code is hosted on GitHub, with some continuous integration services to test its validity.
This repository is created and maintained by @singularitti. You are very welcome to contribute.
Installation
The package can be installed with the Julia package manager. From the Julia REPL, type ] to enter the Pkg REPL mode and run:
pkg> add SimpleWorkflowRecipesOr, equivalently, via the Pkg API:
julia> import Pkg; Pkg.add("SimpleWorkflowRecipes")Resolving package versions... Installed SimpleWorkflowRecipes ─ v0.2.0 Updating `~/work/SimpleWorkflowRecipes.jl/SimpleWorkflowRecipes.jl/docs/build/developers/Project.toml` [8a651d91] + SimpleWorkflowRecipes v0.2.0 [loaded: `/home/runner/work/SimpleWorkflowRecipes.jl/SimpleWorkflowRecipes.jl/src/SimpleWorkflowRecipes.jl` (v0.2.0) expected `/home/runner/.julia/packages/SimpleWorkflowRecipes/brOIE/src/SimpleWorkflowRecipes.jl` (v0.2.0)] Updating `~/work/SimpleWorkflowRecipes.jl/SimpleWorkflowRecipes.jl/docs/build/developers/Manifest.toml` [ec485272] + ArnoldiMethod v0.4.0 [6e4b80f9] + BenchmarkTools v1.6.3 [fa961155] + CEnum v0.5.0 [523fee87] + CodecBzip2 v0.8.5 [944b1d66] + CodecZlib v0.7.8 [bbf7d656] + CommonSubexpressions v0.3.1 [34da2185] + Compat v4.18.1 [864edb3b] + DataStructures v0.19.3 [163ba53b] + DiffResults v1.1.0 [b552c78f] + DiffRules v1.15.1 [ffbed154] + DocStringExtensions v0.9.5 [e2685f51] + ECOS v1.1.3 [db8ca866] + EasyJobsBase v0.15.0 [f6369f11] + ForwardDiff v1.3.0 [86223c79] + Graphs v1.13.1 [87dc4568] + HiGHS v1.20.1 [d25df0c9] + Inflate v0.1.5 [92d709cd] + IrrationalConstants v0.2.6 [c8e1da08] + IterTools v1.10.0 [692b3bcd] + JLLWrappers v1.7.1 [682c06a0] + JSON v1.3.0 [0f8b85d8] + JSON3 v1.14.3 [4076af6c] + JuMP v1.29.3 [f4a74d36] + LayeredLayouts v0.2.10 [2ab3a3ac] + LogExpFunctions v0.3.29 [1914dd2f] + MacroTools v0.5.16 [8c4f8055] + MathOptIIS v0.1.1 [b8f27783] + MathOptInterface v1.46.0 [d8a4904e] + MutableArithmetics v1.6.7 [77ba4419] + NaNMath v1.1.3 [bac558e1] + OrderedCollections v1.8.1 [69de0a69] + Parsers v2.8.3 [3cdcf5f2] + RecipesBase v1.3.4 [699a6c99] + SimpleTraits v0.9.5 [8a651d91] + SimpleWorkflowRecipes v0.2.0 [loaded: `/home/runner/work/SimpleWorkflowRecipes.jl/SimpleWorkflowRecipes.jl/src/SimpleWorkflowRecipes.jl` (v0.2.0) expected `/home/runner/.julia/packages/SimpleWorkflowRecipes/brOIE/src/SimpleWorkflowRecipes.jl` (v0.2.0)] [6a97d125] + SimpleWorkflows v0.29.0 [276daf66] + SpecialFunctions v2.6.1 [90137ffa] + StaticArrays v1.9.15 [1e83bf80] + StaticArraysCore v1.4.4 [10745b16] + Statistics v1.11.1 [856f2bd8] + StructTypes v1.11.0 [ec057cc2] + StructUtils v2.6.0 [6d80a3f9] + Thinkers v0.4.1 [3bb67fe8] + TranscodingStreams v0.11.3 [6e34b625] + Bzip2_jll v1.0.9+0 [c2c64177] + ECOS_jll v200.0.800+0 [8fd58aa0] + HiGHS_jll v1.12.0+0 [d00139f3] + METIS_jll v5.1.3+0 [656ef2d0] + OpenBLAS32_jll v0.3.29+0 [efe28fd5] + OpenSpecFun_jll v0.5.6+0 [0dad84c5] + ArgTools v1.1.2 [56f22d72] + Artifacts v1.11.0 [2a0f44e3] + Base64 v1.11.0 [8ba89e20] + Distributed v1.11.0 [f43a241f] + Downloads v1.7.0 [7b1f6079] + FileWatching v1.11.0 [b77e0a4c] + InteractiveUtils v1.11.0 [ac6e5ff7] + JuliaSyntaxHighlighting v1.12.0 [b27032c2] + LibCURL v0.6.4 [76f85450] + LibGit2 v1.11.0 [8f399da3] + Libdl v1.11.0 [37e2e46d] + LinearAlgebra v1.12.0 [56ddb016] + Logging v1.11.0 [d6f4376e] + Markdown v1.11.0 [a63ad114] + Mmap v1.11.0 [ca575930] + NetworkOptions v1.3.0 [44cfe95a] + Pkg v1.12.0 [9abbd945] + Profile v1.11.0 [9a3f8284] + Random v1.11.0 [ea8e919c] + SHA v0.7.0 [9e88b42a] + Serialization v1.11.0 [1a1011a3] + SharedArrays v1.11.0 [6462fe0b] + Sockets v1.11.0 [2f01184e] + SparseArrays v1.12.0 [f489334b] + StyledStrings v1.11.0 [a4e569a6] + Tar v1.10.0 [8dfed614] + Test v1.11.0 [cf7118a7] + UUIDs v1.11.0 [e66e0078] + CompilerSupportLibraries_jll v1.3.0+1 [deac9b47] + LibCURL_jll v8.15.0+0 [e37daf67] + LibGit2_jll v1.9.0+0 [29816b5a] + LibSSH2_jll v1.11.3+1 [14a3606d] + MozillaCACerts_jll v2025.5.20 [4536629a] + OpenBLAS_jll v0.3.29+0 [05823500] + OpenLibm_jll v0.8.7+0 [458c3c95] + OpenSSL_jll v3.5.4+0 [bea87d4a] + SuiteSparse_jll v7.8.3+2 [83775a58] + Zlib_jll v1.3.1+2 [8e850b90] + libblastrampoline_jll v5.15.0+0 [8e850ede] + nghttp2_jll v1.64.0+1 [3f19e933] + p7zip_jll v17.7.0+0 Precompiling packages... 2483.0 ms ✓ SimpleWorkflowRecipes 1 dependency successfully precompiled in 3 seconds. 95 already precompiled. 1 dependency precompiled but a different version is currently loaded. Restart julia to access the new version. Otherwise, loading dependents of this package may trigger further precompilation to work with the unexpected version.
Documentation
- STABLE — documentation of the most recently tagged version.
- DEV — documentation of the in-development version.
Project status
The package is tested against, and being developed for, Julia 1.6 and above on Linux, macOS, and Windows.
Questions and contributions
Usage questions can be posted on our discussion page.
Contributions are very welcome, as are feature requests and suggestions. Please open an issue if you encounter any problems. The Contributing page has a few guidelines that should be followed when opening pull requests and contributing code.
Manual outline
- Installation Guide
- Contributing
- Code of conduct
- Join the community forum
- Improve the documentation
- File a bug report
- Contribute code to SimpleWorkflowRecipes
- Step 1: decide what to work on
- Step 2: fork SimpleWorkflowRecipes
- Step 3: install SimpleWorkflowRecipes locally
- Step 4: checkout a new branch
- Step 5: make changes
- Step 6a: test your code changes
- Step 6b: test your documentation changes
- Step 7: make a pull request
- Step 8: respond to comments
- Step 9: cleaning up
- Style Guide
- Design Principles
- Consistency vs adherence
- Community contribution guidelines
- Open source contributions are allowed to start small and grow over time
- Generic code is preferred unless code is known to be specific
- Internal types should match the types used by users when possible
- Trait definition and adherence to generic interface is preferred when possible
- Macros should be limited and only be used for syntactic sugar
- Errors should be caught as high as possible, and error messages should be contextualized for newcomers
- Subpackaging and interface packages is preferred over conditional modules via Requires.jl
- Functions should either attempt to be non-allocating and reuse caches, or treat inputs as immutable
- Out-Of-Place and Immutability is preferred when sufficient performant
- Tests should attempt to cover a wide gamut of input types
- When in doubt, a submodule should become a subpackage or separate package
- Globals should be avoided whenever possible
- Type-stable and Type-grounded code is preferred wherever possible
- Closures should be avoided whenever possible
- Numerical functionality should use the appropriate generic numerical interfaces
- Functions should capture one underlying principle
- Internal choices should be exposed as options whenever possible
- Prefer code reuse over rewrites whenever possible
- Prefer to not shadow functions
- Troubleshooting