## Versioning All core-utils will remain `0.1.0` until the entirety of core-utils reaches `1.0.0`. ## Issues If a particular utility is at issue please prepend with issue with its name as such: `"dd: not implemented"` ## Style Standard Rust indentation is used. No use of globs, and use of namespaces must be explicit, this rule does not apply for structures or enumerations, returns must be explicit. External crates must be imported before any `use`s. For example: ```Rust // Bad (set_exit_status is a function) use std::env::* use std::env::{set_exit_status}; extern crate common; use common::{Status}; // Good extern crate common; use common::{Status}; use std::env; use std::path::{PathBuf}; ``` Feel free to take a look at some of the source for the general structure of a util ## Help, Versions When writing help menus for any util, use the following structure: ``` $ util --help Usage: util [OPTION...] [FILE...] Useful utilitiy for doing things Options: -v --verbose Print things -f --function Do things Example: util -vf file.txt Does and prints a thing ``` Append an elipses if the program takes more than one option/file For printing versions use [`Prog.copyright`](lib/lib.rs). ## Commits Commits must be well documented, and signed off on. See [commits](https://github.com/0X1A/core-utils/commits/master) for examples ## License All files must be prepended with: ``` // Copyright (C) YEAR, CONTRIBUTER // All rights reserved. This file is part of core-utils, distributed under the // GPL v3 license. For full terms please see the LICENSE file. ```