;check: doc updates
This commit is contained in:
		
							parent
							
								
									16a212af57
								
							
						
					
					
						commit
						4dba59b0a1
					
				| @ -1,44 +1,74 @@ | ||||
| check\ | ||||
| Check for various kinds of errors in your data. | ||||
| Check for various kinds of errors in your data.  | ||||
| *experimental* | ||||
| 
 | ||||
| _FLAGS | ||||
| 
 | ||||
| hledger provides a number of built-in error checks to help | ||||
| prevent problems in your data. Some, but not all, of these are run | ||||
| automatically before all commands. You can also use this `check` | ||||
| command to run any of the available tests. They are named,  | ||||
| and run, as follows: | ||||
| prevent problems in your data.  | ||||
| Some of these are run automatically; or, | ||||
| you can use this `check` command to run them on demand, | ||||
| with no output and a zero exit code if all is well. | ||||
| Use it as follows: | ||||
| 
 | ||||
| `hledger check` runs the basic checks, like all other commands, | ||||
| but with no output unless there is a problem. These are: | ||||
| - `hledger check` - runs the basic checks | ||||
| - `hledger check -s`  - runs the basic + strict checks | ||||
| - `hledger check CHECK1 CHECK2 ..` - runs the basic + specified checks. | ||||
| 
 | ||||
| Here are the checks currently available: | ||||
| 
 | ||||
| ### Basic checks | ||||
| 
 | ||||
| These are always run by this command and other commands: | ||||
| 
 | ||||
| - **parseable** - data files are well-formed and can be  | ||||
|   [successfully parsed](hledger.html#input-files) | ||||
| 
 | ||||
| - **autobalanced** - all transactions are [balanced](journal.html#postings),  | ||||
|   inferring missing amounts where necessary, and possibly converting commodities  | ||||
|   using [transaction prices] or automatically-inferred transaction prices | ||||
| 
 | ||||
| - **assertions** - all [balance assertions] in the journal are passing.  | ||||
|   This can be disabled with `-I`/`--ignore-assertions`. | ||||
| 
 | ||||
| ### Strict checks | ||||
| 
 | ||||
| These are always run by this and other commands when `-s`/`--strict` is used | ||||
| ([strict mode]): | ||||
| 
 | ||||
| - **accounts** - all account names used by transactions  | ||||
|   [have been declared](journal.html#account-error-checking) | ||||
| 
 | ||||
| - **commodities** - all commodity symbols used  | ||||
|   [have been declared](journal.html#commodity-error-checking) | ||||
| 
 | ||||
| ### Other checks | ||||
| 
 | ||||
| These checks can be run by specifying their names as arguments to the check command: | ||||
| 
 | ||||
| - **ordereddates** - transactions are ordered by date (similar to the old `check-dates` command) | ||||
| 
 | ||||
| - **uniqueleafnames** - all account leaf names are unique ((similar to the old `check-dupes` command) | ||||
| 
 | ||||
| This command would run all of the checks above: | ||||
| ```shell | ||||
| $ hledger check -s ordereddates uniqueleafnames | ||||
| ``` | ||||
| 
 | ||||
| ### Addon checks | ||||
| 
 | ||||
| Some checks are not yet integrated with this command, but are available as | ||||
| [addon commands] in <https://github.com/simonmichael/hledger/tree/master/bin>: | ||||
| 
 | ||||
| - **hledger-check-tagfiles** - all tag values containing / (a forward slash) exist as file paths | ||||
| 
 | ||||
| - **hledger-check-fancyassertions** - more complex balance assertions are passing | ||||
| 
 | ||||
| You could make your own similar scripts to perform custom checks; | ||||
| Cookbook -> [Scripting](scripting.html) may be helpful. | ||||
| 
 | ||||
| - **parseable** - data files are well-formed and can be [successfully parsed](hledger.html#input-files) | ||||
| - **autobalanced** - all transactions are [balanced](journal.html#postings), inferring missing amounts where necessary, and possibly converting commodities using [transaction prices] or automatically-inferred transaction prices | ||||
| - **assertions** - all [balance assertions] are passing (except with `-I`/`--ignore-assertions`) | ||||
| 
 | ||||
| [transaction prices]: journal.html#transaction-prices | ||||
| [balance assertions]: journal.html#balance-assertions | ||||
| [strict mode]: hledger.html#strict-mode | ||||
| 
 | ||||
| `hledger check --strict` also runs the additional "strict mode" checks, | ||||
| which are: | ||||
| 
 | ||||
| - **accounts** - all account names used by transactions [have been declared](journal.html#account-error-checking) | ||||
| - **commodities** - all commodity symbols used [have been declared](journal.html#commodity-error-checking) | ||||
| 
 | ||||
| `hledger check CHECK1 CHECK2 ...` runs all of the named checks, in turn.  | ||||
| This may be useful when neither the default nor strict checks are exactly | ||||
| what you want, or when you want to focus on a single check of interest.  | ||||
| The arguments are standard lowercase names for the checks. Currently | ||||
| only these checks can be run in this way: | ||||
| 
 | ||||
| - **dates** - transactions are ordered by date (similar to the old `check-dates` command) | ||||
| - **leafnames** - all account leaf names are unique ((similar to the old `check-dupes` command) | ||||
| 
 | ||||
| See also:  | ||||
| 
 | ||||
| Some checks are shipped as addon scripts for now | ||||
| (cf <https://github.com/simonmichael/hledger/tree/master/bin>, and Cookbook -> [Scripting](scripting.html)): | ||||
| 
 | ||||
| - **tagfiles** - all tag values containing / (a forward slash) exist as file paths | ||||
| - **fancyassertions** - more complex balance assertions are passing | ||||
| [addon]: hledger.html#addon-commands | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user