tag:github.com,2008:https://github.com/oldratlee/useful-scripts/releases Release notes from useful-scripts 2024-04-15T11:57:51Z tag:github.com,2008:Repository/8732561/v3.0.0-Alpha 2024-04-27T20:20:20Z ๐ŸŒ v3.0.0-Alpha: a WIP/cleanup release <p><a href="#dummy"><img src="https://private-user-images.githubusercontent.com/1063891/259157301-82f2d184-ca16-4c37-b053-07f21fd8aef1.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MzkwMDA1ODgsIm5iZiI6MTczOTAwMDI4OCwicGF0aCI6Ii8xMDYzODkxLzI1OTE1NzMwMS04MmYyZDE4NC1jYTE2LTRjMzctYjA1My0wN2YyMWZkOGFlZjEucG5nP1gtQW16LUFsZ29yaXRobT1BV1M0LUhNQUMtU0hBMjU2JlgtQW16LUNyZWRlbnRpYWw9QUtJQVZDT0RZTFNBNTNQUUs0WkElMkYyMDI1MDIwOCUyRnVzLWVhc3QtMSUyRnMzJTJGYXdzNF9yZXF1ZXN0JlgtQW16LURhdGU9MjAyNTAyMDhUMDczODA4WiZYLUFtei1FeHBpcmVzPTMwMCZYLUFtei1TaWduYXR1cmU9ZDIzNTBhZGYxMDNkMDM1NzkyM2RiY2UzZmI1YmM2NWI2ODMyNzI2Zjc1NTM4M2I1YmJmNWZhOWMwNDBlZjY2ZSZYLUFtei1TaWduZWRIZWFkZXJzPWhvc3QifQ.U-g0cHlrN6dImWyV76xoYcOdw0IU1ITw3Do3mGD9gIw" alt="repo-icon" width="20%" align="right" content-type-secured-asset="image/png" secured-asset-link="" style="max-width: 100%;"></a></p> <div class="markdown-alert markdown-alert-note"><p class="markdown-alert-title"><svg class="octicon octicon-info mr-2" viewBox="0 0 16 16" version="1.1" width="16" height="16" aria-hidden="true"><path d="M0 8a8 8 0 1 1 16 0A8 8 0 0 1 0 8Zm8-6.5a6.5 6.5 0 1 0 0 13 6.5 6.5 0 0 0 0-13ZM6.5 7.75A.75.75 0 0 1 7.25 7h1a.75.75 0 0 1 .75.75v2.75h.25a.75.75 0 0 1 0 1.5h-2a.75.75 0 0 1 0-1.5h.25v-2h-.25a.75.75 0 0 1-.75-.75ZM8 6a1 1 0 1 1 0-2 1 1 0 0 1 0 2Z"></path></svg>Note</p><p>This is a WIP/cleanup release for upgrading version to <code>3.x</code></p> </div> <ul> <li>remove <code>legacy bin</code> ๐Ÿšฎ</li> <li>rename dir <code>test-cases</code> to <code>test</code> ๐Ÿ†™</li> </ul> <blockquote> <h4>It's time to say goodbye, <a href="#"><img src="https://camo.githubusercontent.com/4850bd675fe48ac0bd56c564a46d95e43e85c93aae2f97934a6bc02ee699b429/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f6c65676163792d62696e2d7265643f6c6f676f3d506173746562696e266c6f676f436f6c6f723d7768697465" alt="legacy bin" data-canonical-src="https://img.shields.io/badge/legacy-bin-red?logo=Pastebin&amp;logoColor=white" style="max-width: 100%;"></a> my friend</h4> <p>It's been a long day without you my friend<br> And I'll tell you all about it when I see you again<br> We've come a long way from where we began<br> Oh I'll tell you all about it when I see you again</p> </blockquote> <hr> <p>Have Fun! ๐Ÿ’•<br> 2024-04-15</p> oldratlee tag:github.com,2008:Repository/8732561/v2.5.4 2024-08-06T10:08:48Z ๐ŸŒ v2.5.4 ๐Ÿฌ๐ŸŽฐ <p><a href="#dummy"><img src="https://private-user-images.githubusercontent.com/1063891/259157301-82f2d184-ca16-4c37-b053-07f21fd8aef1.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MzkwMDA1ODgsIm5iZiI6MTczOTAwMDI4OCwicGF0aCI6Ii8xMDYzODkxLzI1OTE1NzMwMS04MmYyZDE4NC1jYTE2LTRjMzctYjA1My0wN2YyMWZkOGFlZjEucG5nP1gtQW16LUFsZ29yaXRobT1BV1M0LUhNQUMtU0hBMjU2JlgtQW16LUNyZWRlbnRpYWw9QUtJQVZDT0RZTFNBNTNQUUs0WkElMkYyMDI1MDIwOCUyRnVzLWVhc3QtMSUyRnMzJTJGYXdzNF9yZXF1ZXN0JlgtQW16LURhdGU9MjAyNTAyMDhUMDczODA4WiZYLUFtei1FeHBpcmVzPTMwMCZYLUFtei1TaWduYXR1cmU9ZDIzNTBhZGYxMDNkMDM1NzkyM2RiY2UzZmI1YmM2NWI2ODMyNzI2Zjc1NTM4M2I1YmJmNWZhOWMwNDBlZjY2ZSZYLUFtei1TaWduZWRIZWFkZXJzPWhvc3QifQ.U-g0cHlrN6dImWyV76xoYcOdw0IU1ITw3Do3mGD9gIw" alt="repo-icon" width="20%" align="right" content-type-secured-asset="image/png" secured-asset-link="" style="max-width: 100%;"></a></p> <h2>โ˜˜๏ธ Features</h2> <ul> <li>[<code>c</code>]: ensure using command on <code>PATH</code>, and check the command existence on <code>PATH</code> ๐Ÿ‘ฃ</li> <li>[<code>coat/taoc</code>]: add <code>--help/--version</code> options ๐Ÿšฉ</li> </ul> <h2>๐Ÿฌ Improvements</h2> <ul> <li>[<code>find-in-jars</code>]: add <code>IFS=</code> for <code>read</code>, more robust ๐Ÿ’ช <ul> <li>file paths may contain leading spaces</li> </ul> </li> <li>[<code>show-busy-java-threads</code>]: <ul> <li>improve separator blank line output ๐Ÿ’… fix wrong blank line logic</li> <li>extract <code>timestamp</code> var to avoid inconsistency โŒš๏ธ</li> </ul> </li> <li>unify error message format and refactor related functions โ„น๏ธ <ul> <li>keep <code>usage</code> function simple</li> <li>use <code>-s</code>/<code>-h</code> option for optional argument of <code>die</code> function</li> </ul> </li> <li>use <code>${var##*/}</code> instead of <code>basename</code> to assign <code>PROG</code> var ๐ŸŽ›๏ธ <ul> <li>faster, no subprocess fork</li> </ul> </li> <li>use command <code>realpath</code> instead of function <code>portableReadLink</code> ๐Ÿ”— <ul> <li>faster and without losing portability</li> </ul> </li> <li>use bash builtin <code>type -P</code> instead of <code>which</code> command, faster ๐Ÿš</li> </ul> <h2>๐Ÿ› ๏ธ Refactor</h2> <ul> <li>[<code>show-busy-java-threads</code>]: rename global var <code>USER</code> -&gt; <code>WHOAMI</code> ๐Ÿ‘ค</li> <li>[<code>uq</code>]: use exponential operation instead of multiplication to calculate size ๐Ÿงฎ</li> <li>[<code>c</code>]: rename functions ๐Ÿ”ก</li> <li>use <code>Shell Arithmetic</code> comparison instead of <code>Conditional Expressions</code> ๐Ÿ”ข</li> <li>use <code>=</code> instead of <code>==</code> in <code>Conditional Expressions</code></li> <li>use <code>||/&amp;&amp;</code> instead of one branch/one line <code>if</code> ๐ŸŽฐ</li> <li>inline <code>colorPrint</code> function if only one caller</li> <li>variable related refactors: <ul> <li>extract <code>UNAME</code> var ๐Ÿ” </li> <li>rename var, use <code>COLOR_INDEX</code> instead of <code>COUNT</code></li> <li>remove <code>declare</code> keyword for global vars, more consistent</li> <li>use upper-case var name for global readonly vars</li> <li>unset temp global vars after use</li> <li>remove unnecessary <code>{}</code> when use var</li> <li>remove <code>local nl=$'\n'</code> declaration if only one usage</li> </ul> </li> <li>small code cleanup <ul> <li>remove unnecessary file descriptor number <code>1</code> in redirections โžก๏ธ</li> <li>remove section comments for simple section</li> <li>improve/fix/add code comments</li> </ul> </li> </ul> <h2>๐Ÿ“š Documentation</h2> <ul> <li>update manual pages links to manned.org ๐Ÿ“š</li> <li>use <code>shellcheck</code> item doc link instead of prolixity comments โœจ</li> </ul> <h2>๐Ÿšœ Build/CI</h2> <ul> <li>upgrade GitHub actions; add <code>dependabot.yml</code> ๐Ÿค–</li> <li>upgrade <code>shunit2</code> lib</li> </ul> <hr> <p>Have Fun! ๐Ÿ’•<br> 2024-04-12</p> oldratlee tag:github.com,2008:Repository/8732561/v2.5.3 2024-04-12T06:13:03Z ๐ŸŒ v2.5.3 โ˜•๏ธ <p><a href="#dummy"><img src="https://private-user-images.githubusercontent.com/1063891/259157301-82f2d184-ca16-4c37-b053-07f21fd8aef1.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MzkwMDA1ODgsIm5iZiI6MTczOTAwMDI4OCwicGF0aCI6Ii8xMDYzODkxLzI1OTE1NzMwMS04MmYyZDE4NC1jYTE2LTRjMzctYjA1My0wN2YyMWZkOGFlZjEucG5nP1gtQW16LUFsZ29yaXRobT1BV1M0LUhNQUMtU0hBMjU2JlgtQW16LUNyZWRlbnRpYWw9QUtJQVZDT0RZTFNBNTNQUUs0WkElMkYyMDI1MDIwOCUyRnVzLWVhc3QtMSUyRnMzJTJGYXdzNF9yZXF1ZXN0JlgtQW16LURhdGU9MjAyNTAyMDhUMDczODA4WiZYLUFtei1FeHBpcmVzPTMwMCZYLUFtei1TaWduYXR1cmU9ZDIzNTBhZGYxMDNkMDM1NzkyM2RiY2UzZmI1YmM2NWI2ODMyNzI2Zjc1NTM4M2I1YmJmNWZhOWMwNDBlZjY2ZSZYLUFtei1TaWduZWRIZWFkZXJzPWhvc3QifQ.U-g0cHlrN6dImWyV76xoYcOdw0IU1ITw3Do3mGD9gIw" alt="repo-icon" width="20%" align="right" content-type-secured-asset="image/png" secured-asset-link="" style="max-width: 100%;"></a></p> <h2>๐Ÿฌ Improvements</h2> <ul> <li>[<code>show-busy-java-threads</code>] support <code>Java21</code> ๐Ÿ†• โ˜•๏ธ <ul> <li>missing stack on <code>Java21</code>, because <code>Java21</code> changed the format of stack title line (issue <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="2114247740" data-permission-text="Title is private" data-url="https://github.com/oldratlee/useful-scripts/issues/120" data-hovercard-type="issue" data-hovercard-url="/oldratlee/useful-scripts/issues/120/hovercard" href="https://github.com/oldratlee/useful-scripts/issues/120">#120</a> submmited by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/jianyun/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/jianyun">@jianyun</a>)</li> </ul> </li> <li>[<code>show-busy-java-threads</code>] improve separator blank line output format ๐Ÿ’…</li> </ul> <hr> <p>Have Fun! ๐Ÿ’•<br> 2024-02-18</p> oldratlee tag:github.com,2008:Repository/8732561/v2.5.2 2024-04-14T03:26:23Z ๐ŸŒ v2.5.2 ๐ŸŒ—๐Ÿš๐Ÿˆ <p><a href="#dummy"><img src="https://private-user-images.githubusercontent.com/1063891/259157301-82f2d184-ca16-4c37-b053-07f21fd8aef1.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MzkwMDA1ODgsIm5iZiI6MTczOTAwMDI4OCwicGF0aCI6Ii8xMDYzODkxLzI1OTE1NzMwMS04MmYyZDE4NC1jYTE2LTRjMzctYjA1My0wN2YyMWZkOGFlZjEucG5nP1gtQW16LUFsZ29yaXRobT1BV1M0LUhNQUMtU0hBMjU2JlgtQW16LUNyZWRlbnRpYWw9QUtJQVZDT0RZTFNBNTNQUUs0WkElMkYyMDI1MDIwOCUyRnVzLWVhc3QtMSUyRnMzJTJGYXdzNF9yZXF1ZXN0JlgtQW16LURhdGU9MjAyNTAyMDhUMDczODA4WiZYLUFtei1FeHBpcmVzPTMwMCZYLUFtei1TaWduYXR1cmU9ZDIzNTBhZGYxMDNkMDM1NzkyM2RiY2UzZmI1YmM2NWI2ODMyNzI2Zjc1NTM4M2I1YmJmNWZhOWMwNDBlZjY2ZSZYLUFtei1TaWduZWRIZWFkZXJzPWhvc3QifQ.U-g0cHlrN6dImWyV76xoYcOdw0IU1ITw3Do3mGD9gIw" alt="repo-icon" width="20%" align="right" content-type-secured-asset="image/png" secured-asset-link="" style="max-width: 100%;"></a></p> <h2>๐Ÿž BugFix</h2> <ul> <li><code>coat/taoc</code>: missing last line if thereโ€™s no newline at the end of the file ๐ŸŒ— ๐Ÿ™€</li> <li><code>xpl</code>: wrong exit code when file not existed or open file failure ๐Ÿ”ข</li> </ul> <h2>๐Ÿ› ๏ธ Improvements/Refactor</h2> <ul> <li>find bash with <code>/usr/bin/env</code> in shebang (by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/hyperupcall/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/hyperupcall">@hyperupcall</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="2080484198" data-permission-text="Title is private" data-url="https://github.com/oldratlee/useful-scripts/issues/119" data-hovercard-type="pull_request" data-hovercard-url="/oldratlee/useful-scripts/pull/119/hovercard" href="https://github.com/oldratlee/useful-scripts/pull/119">#119</a>) ๐Ÿš</li> <li><code>coat/taoc</code>: ๐Ÿˆ <ul> <li>remove pipe when naked <code>cat</code>(more straightforward and faster) ๐Ÿ˜ธ</li> <li>extract <code>colorLines</code> function ๐ŸŒˆ</li> </ul> </li> <li><code>a2l</code>: merge function <code>colorPrint</code> into <code>rotateColorPrint</code> ๐Ÿ› ๏ธ</li> <li>improve readability <ul> <li>remove var interpolation in <code>printf format</code> if possible</li> <li>rename vars, e.g. <code>message</code> -&gt; <code>content</code>, <code>normal</code> -&gt; <code>color_reset</code> ๐Ÿ‘“</li> <li>use <code>\e</code> instead of <code>\033</code></li> <li>improve comments for <code>-t</code> check</li> </ul> </li> <li>simplify var usage <ul> <li>remove unnecessary <code>{}</code> when use var</li> <li>remove quote of values in simple assignment <ul> <li>All values undergo tilde expansion, parameter and variable expansion,<br> command substitution, arithmetic expansion, and quote removal.<br> Word splitting and filename expansion are not performed.</li> <li>more info about assignment see<br> <a href="https://www.gnu.org/software/bash/manual/html_node/Shell-Parameters.html" rel="nofollow">https://www.gnu.org/software/bash/manual/html_node/Shell-Parameters.html</a></li> </ul> </li> </ul> </li> </ul> <h2>๐Ÿšœ Build/CI</h2> <ul> <li>upgrade <code>shunit2</code> lib</li> </ul> <hr> <p>Have Fun! ๐Ÿ’•<br> 2024-01-25</p> oldratlee tag:github.com,2008:Repository/8732561/v2.5.1 2024-04-14T03:26:36Z ๐ŸŒ v2.5.1 ๐Ÿž๐Ÿšž๐Ÿ•ต๏ธ <p><a href="#dummy"><img src="https://private-user-images.githubusercontent.com/1063891/259157301-82f2d184-ca16-4c37-b053-07f21fd8aef1.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MzkwMDA1ODgsIm5iZiI6MTczOTAwMDI4OCwicGF0aCI6Ii8xMDYzODkxLzI1OTE1NzMwMS04MmYyZDE4NC1jYTE2LTRjMzctYjA1My0wN2YyMWZkOGFlZjEucG5nP1gtQW16LUFsZ29yaXRobT1BV1M0LUhNQUMtU0hBMjU2JlgtQW16LUNyZWRlbnRpYWw9QUtJQVZDT0RZTFNBNTNQUUs0WkElMkYyMDI1MDIwOCUyRnVzLWVhc3QtMSUyRnMzJTJGYXdzNF9yZXF1ZXN0JlgtQW16LURhdGU9MjAyNTAyMDhUMDczODA4WiZYLUFtei1FeHBpcmVzPTMwMCZYLUFtei1TaWduYXR1cmU9ZDIzNTBhZGYxMDNkMDM1NzkyM2RiY2UzZmI1YmM2NWI2ODMyNzI2Zjc1NTM4M2I1YmJmNWZhOWMwNDBlZjY2ZSZYLUFtei1TaWduZWRIZWFkZXJzPWhvc3QifQ.U-g0cHlrN6dImWyV76xoYcOdw0IU1ITw3Do3mGD9gIw" alt="repo-icon" width="20%" align="right" content-type-secured-asset="image/png" secured-asset-link="" style="max-width: 100%;"></a></p> <h2>๐Ÿž BugFix</h2> <ul> <li><code>c</code>: wrong exit code with <code>-q</code> option ๐Ÿž</li> </ul> <h2>๐Ÿ› ๏ธ Improvements/Refactor</h2> <ul> <li>use <code>${array[@]:-}</code>/<code>${array[@]:+}</code> to simplify codes ๐Ÿšž</li> <li>use file descriptor number instead of <code>/dev/std*</code> (issue <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="1241440446" data-permission-text="Title is private" data-url="https://github.com/oldratlee/useful-scripts/issues/114" data-hovercard-type="issue" data-hovercard-url="/oldratlee/useful-scripts/issues/114/hovercard" href="https://github.com/oldratlee/useful-scripts/issues/114">#114</a> summitted by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/wushengde/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/wushengde">@wushengde</a>)</li> <li><code>console-text-color-themes.sh</code>, improve robustness/portability: <ul> <li>use <code>BASH_SOURCE</code> array to detect whether this script is sourced or not ๐Ÿ•ต๏ธ</li> <li>use <code>printf</code> ๐Ÿ’ช instead of <code>echo</code></li> <li>use <code>if</code> instead of <code>&amp;&amp;</code></li> <li>remove global var declare if possible</li> </ul> </li> </ul> <h2>๐Ÿ“š Documentation</h2> <ul> <li>add more resources of <code>bash</code> ๐Ÿ“š</li> </ul> <hr> <p>Have Fun! ๐Ÿ’•<br> 2023-12-05</p> oldratlee tag:github.com,2008:Repository/8732561/v2.5.0 2024-04-14T03:26:47Z ๐ŸŒ v2.5.0: add `taoc` ๐Ÿˆ improve shell robustness/portability ๐Ÿ’ช <p><a href="#dummy"><img src="https://private-user-images.githubusercontent.com/1063891/259157301-82f2d184-ca16-4c37-b053-07f21fd8aef1.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MzkwMDA1ODgsIm5iZiI6MTczOTAwMDI4OCwicGF0aCI6Ii8xMDYzODkxLzI1OTE1NzMwMS04MmYyZDE4NC1jYTE2LTRjMzctYjA1My0wN2YyMWZkOGFlZjEucG5nP1gtQW16LUFsZ29yaXRobT1BV1M0LUhNQUMtU0hBMjU2JlgtQW16LUNyZWRlbnRpYWw9QUtJQVZDT0RZTFNBNTNQUUs0WkElMkYyMDI1MDIwOCUyRnVzLWVhc3QtMSUyRnMzJTJGYXdzNF9yZXF1ZXN0JlgtQW16LURhdGU9MjAyNTAyMDhUMDczODA4WiZYLUFtei1FeHBpcmVzPTMwMCZYLUFtei1TaWduYXR1cmU9ZDIzNTBhZGYxMDNkMDM1NzkyM2RiY2UzZmI1YmM2NWI2ODMyNzI2Zjc1NTM4M2I1YmJmNWZhOWMwNDBlZjY2ZSZYLUFtei1TaWduZWRIZWFkZXJzPWhvc3QifQ.U-g0cHlrN6dImWyV76xoYcOdw0IU1ITw3Do3mGD9gIw" alt="repo-icon" width="20%" align="right" content-type-secured-asset="image/png" secured-asset-link="" style="max-width: 100%;"></a></p> <h2>โ˜˜๏ธ Features</h2> <ul> <li>add <a href="https://github.com/oldratlee/useful-scripts/blob/v2.5.0/docs/shell.md#-coat"><code>taoc</code></a> ๐Ÿซด ๐Ÿˆ</li> <li><code>echo-args</code>: align the index number</li> </ul> <h2>๐Ÿ› ๏ธ Improvements/Refactor</h2> <ul> <li><code>c</code>, improve readable: ๐Ÿ‘“ <ul> <li>simplify <code>teeAndCopy</code> function</li> <li>use boolean option parse value holder</li> <li>reanme vars</li> </ul> </li> <li>improve shell robustness/portability ๐Ÿ’ช <ul> <li>use <code>printf</code> instead of <code>echo</code></li> <li>use <code>if-else</code> instead of <code>&amp;&amp;-||</code></li> <li>involved almost all scripts:<br> <code>c</code>/<code>coat</code>/<code>a2l</code>/<code>echo-args</code>/<code>ap</code>/<code>rp</code>/<code>xpl</code>/<code>xpf</code>/<code>uq</code><br> <code>cp-into-docker-run</code>/<code>tcp-connection-state-counter</code>/<code>console-text-color-themes.sh</code><br> <code>find-in-jars</code>/<code>show-busy-java-threads</code></li> </ul> </li> <li>fix <code>shellcheck</code> issues</li> </ul> <h2>๐Ÿ“š Documentation</h2> <ul> <li>update logo and image links in docs ๐ŸŒ</li> <li>disable default link of github images</li> </ul> <h2>๐Ÿšœ Build/CI</h2> <ul> <li>update <code>ci.yaml</code>, test on latest <code>MacOS</code> ๐ŸŽ</li> <li>upgrade <code>shunit2</code> lib</li> </ul> <hr> <p>Have Fun! ๐Ÿ’•<br> 2023-09-06</p> oldratlee tag:github.com,2008:Repository/8732561/v2.4.4 2022-12-28T15:36:07Z v2.4.4 ๐ŸŒˆ๐Ÿšž๐Ÿ’… <h1>Improvements/Refactor</h1> <ul> <li><code>show-duplicate-java-classes</code>: print info message and exit when search no jar files or find no class files โ„น๏ธ</li> <li><code>coat/a2l</code>: skip color for white space lines ๐ŸŒˆ</li> <li>refactor: declare var as <code>readonly</code> if possible ๐Ÿ“Œ <ul> <li>more info in Google's Shell Style Guide:</li> <li><a href="https://zh-google-styleguide.readthedocs.io/en/latest/google-shell-styleguide/naming_conventions/#id4" rel="nofollow">https://zh-google-styleguide.readthedocs.io/en/latest/google-shell-styleguide/naming_conventions/#id4</a></li> <li><a href="https://zh-google-styleguide.readthedocs.io/en/latest/google-shell-styleguide/naming_conventions/#id6" rel="nofollow">https://zh-google-styleguide.readthedocs.io/en/latest/google-shell-styleguide/naming_conventions/#id6</a></li> </ul> </li> <li>refactor: use <code>$*</code> in string instead of <code>$@</code> ๐Ÿšž</li> </ul> <h1>Style</h1> <ul> <li>style: adjust file format ๐Ÿ’… <ul> <li>update <code>.editorconfig</code></li> <li>shell files <ul> <li>use 2 spaces indentation</li> <li>use <code>$()</code> instead of ``</li> </ul> </li> </ul> </li> </ul> <h1>Docs</h1> <ul> <li>add dev guide <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="282061827" data-permission-text="Title is private" data-url="https://github.com/oldratlee/useful-scripts/issues/64" data-hovercard-type="issue" data-hovercard-url="/oldratlee/useful-scripts/issues/64/hovercard" href="https://github.com/oldratlee/useful-scripts/issues/64">#64</a> ๐ŸŽ“</li> <li>add logo ๐ŸŽจ</li> <li>add TOC for README</li> <li>improve wording/format</li> </ul> <h1>Build/CI</h1> <ul> <li>add github action <code>ci.yaml</code>(remove <code>travis</code>) ๐Ÿ‘ทโ€โ™€๏ธ</li> <li>add <code>MacOS CI</code> ๐ŸŽ</li> </ul> <hr> <p>Have Fun! ๐Ÿ’•<br> 2022-12-24</p> oldratlee tag:github.com,2008:Repository/8732561/v2.4.3 2022-12-24T22:37:49Z v2.4.3 ๐Ÿขโณ <h1>Improvements</h1> <ul> <li><code>show-duplicate-java-classes</code>: <ul> <li>fix wrong <code>CPU</code> percentage order under <code>ps</code> from <code>procps-ng 3.3.12</code> ๐Ÿข</li> <li>use one option <code>--cpu-sample-interval</code> instead of <code>--top-delay</code>/<code>--use-ps</code> โณ</li> </ul> </li> </ul> <h1>Cleanup</h1> <ul> <li>code cleanup <ul> <li>remove unused var</li> <li>reorder parameters of function</li> </ul> </li> <li>improve documentations <ul> <li>update travis badge to travis.com</li> </ul> </li> </ul> <hr> <p>Have Fun! ๐Ÿ’•<br> 2021-7-21</p> oldratlee tag:github.com,2008:Repository/8732561/v2.4.2 2021-05-16T14:41:51Z v2.4.2 ๐Ÿ•ต๏ธโ€โ™‚๏ธ๐Ÿ—‚ <h1>Improvements</h1> <ul> <li><code>show-duplicate-java-classes</code>: <ul> <li>output duplicate ratio and class number of class path <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="263775387" data-permission-text="Title is private" data-url="https://github.com/oldratlee/useful-scripts/issues/59" data-hovercard-type="issue" data-hovercard-url="/oldratlee/useful-scripts/issues/59/hovercard" href="https://github.com/oldratlee/useful-scripts/issues/59">#59</a> ๐Ÿ•ต๏ธโ€โ™‚๏ธ</li> <li>improve percent output format</li> </ul> </li> <li><code>cp-into-docker-run</code>: <ul> <li>check required option <code>-c/--container</code> ๐Ÿ—‚</li> </ul> </li> <li>code cleanup</li> <li>improve documentations: fix broken link <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="878529433" data-permission-text="Title is private" data-url="https://github.com/oldratlee/useful-scripts/issues/98" data-hovercard-type="issue" data-hovercard-url="/oldratlee/useful-scripts/issues/98/hovercard" href="https://github.com/oldratlee/useful-scripts/issues/98">#98</a></li> </ul> <p>Have Fun! ๐Ÿ’•<br> 2021-5-16</p> oldratlee tag:github.com,2008:Repository/8732561/v2.4.1 2021-05-01T07:37:46Z v2.4.1 ๐Ÿ•ต๏ธโ€โ™‚๏ธ๐Ÿ“ญ๐Ÿ”— <h1>Improvements</h1> <ul> <li><code>show-busy-java-threads</code>: ๐Ÿ•ต๏ธโ€โ™‚๏ธ <ul> <li>improve <code>jstack</code> command search order, <code>JAVA_HOME</code> before <code>PATH</code></li> </ul> </li> <li><code>find-in-jars</code>: <ul> <li>check list zip entries fail, especially common case "Empty zipfile" ๐Ÿ“ญ</li> <li>improve command to list zip entries search ๐Ÿ•ต๏ธโ€โ™‚๏ธ</li> </ul> </li> <li>improve scripts <code>cp-into-docker-run/ap/xpf</code>: use <code>portableReadLink</code> ๐Ÿ”—</li> </ul> <h1>BugFix</h1> <ul> <li><code>xpl</code>: fix unbound variable <code>args[@]</code> โ™พ</li> </ul> <p>Have Fun! ๐Ÿ’•<br> 2021-4-30</p> oldratlee