There we go, v0.5 of the `nph` formatter 
[released](https://github.com/arnetheduck/nph/releases/tag/v0.5).

The release comes slightly earlier than I was planning but is also fairly 
small, cleaning up a few inconsistencies found while applying it to 
[fluffy](https://github.com/status-im/nimbus-eth1/pull/2020), one of our P2P 
data sharing projects as well as 
[serde](https://github.com/codex-storage/nim-serde), yet another entry in the 
never-ending story of turning things into JSON.

The dot-stacking logic stopped counting post-expressions (`something.postExpr: 
...`) as regular calls and allowed calls to start on the same line as an 
assignment - post-expressions are a big part of ergonomics when using 
[Result.valueOr](https://github.com/arnetheduck/nim-results/blob/dfeef8ba705d7bab3e2073bb44549f0a2562df70/results.nim#L1046)
 and this change helps keep the code using it tight:
    
    
    let value = someFunction().valueOr:
      warning "someFunction failed", error
      return
    
    
    Run

The other notable change is that all long lists, simple or not, now receive a 
[trailing comma](https://github.com/arnetheduck/nph/issues/57) similar to how 
[prettier](https://prettier.io/playground/#N4Igxg9gdgLgprEAuEAzArlMMCW0AEAEnADYkQDqEATiQCYAUwA5tXHLlM-gLz4A6IABalyggDT5W7eHV74A5IKq06ghZIDOOEghjzUAQxKa4k6AFkI6UwHkAbnGriAvgEp8wflG-5IUTX0bJwBJOk15AG1ffAB2ACYAZgAWAE5E+NTkgEZxGISU9PiE+LyofDiktIzE7NL8qqL0xLKKgur4gA4c1srCjOyANkHe9qLulob+zNjO0caM5MSRqY7Bztj56fjB1K2OgFZYyfK+jtTsk7aFruP9otjkudWixIPk+4GDq7Oi7M7ci8MllNkD4gdBj8xjV4h8wakDvVTtCup0Dp9MtlAcibrtnjjtk8MbFBnCCR0ltjrtMAVTfjVkmTqR00eiwUsAAwYxKpFbkpoAjEHLIYy50lFPPZgg6I0VDDGdRJQm6I8U3cFI5lFA4c5XTd5csGddLE5YY3lS-kDZJsq2ZcEYnKgu0pJn0+LZDn4rUDQZq6axQPm2L+jrZYWig7e92pL1CrEKknE9YYrpulGkw0ujmWn07A6hor2hWpaMotOpjmFjI6vl5wbvBXJLN5pXp9XJOvuxJJsE8ss3EPt6aXYcUt6iwXwzot93CsevXmijmzlGPPUsupCxUYwbxTXumerm61Y8jhPSnvEgvm+JnlkJYkrp8HjMy+O2vOZTreAC6AG5vG8FwQHEEAIAAB1waBNGQUBDGoagIAAdwABQQhBYJQYxkMMABPWCwIAI2oQwwAAaw4ABlQwAFs4AAGRwKA4GQIwTDMEASLIyiYCoiCyOY5hkBgah0E40xaJwESxM4uAAA8IKcHB6NgYwABUnCgBCcDgLD2NMMDtC4XQAEV0AgeA2OMQyQAAK00eSqKEsyLKspADM4gBHNy4FQpCIKwkBDE0ABaFi4DoSLQJAUTDB0ISAGEIFo2jDGQYKyBi4zmF0ABBGBRJwIj0HgVCnCYljrI4sChBgWiSAoIQcHgTQBLAOAqMwlqcHsFq8IysBNEIkB7HEkIoCi2AqLAagcCgvLJqomA8N0arbIgpDTAoUiIIyza9KcRwYuY0xqBgfzDGYNL1s4gTqDOjKiMMIjSBizbmJgCgcDoGAhGQGcwLYHycDYS7rvSjybM4mAXu+37-qQUoQGCdSXv06GwLgWjXroKK6AYwwuHQK64AAMRoNLCqEjLDFKiAQBcFwgA)
 does it, like in this example taken from the 
[docs](https://arnetheduck.github.io/nph/style.html):
    
    
    const values = [
      10000000, 2000000000, 3000000000,
      40000000, 5000000000,
    ]
    
    
    Run

Enjoy and check out the [previous version 
announcement](https://forum.nim-lang.org/t/10950) for the background story of 
how we got here :) 

Reply via email to