<feed xmlns='http://www.w3.org/2005/Atom'>
<title>pakakeh.go/lib/memfs/memfs_test.go, branch main</title>
<subtitle>Collections of packages and tools for working with Go programming language.</subtitle>
<id>http://git.kilabit.info/pakakeh.go/atom?h=main</id>
<link rel='self' href='http://git.kilabit.info/pakakeh.go/atom?h=main'/>
<link rel='alternate' type='text/html' href='http://git.kilabit.info/pakakeh.go/'/>
<updated>2026-04-12T15:36:59Z</updated>
<entry>
<title>lib/memfs: fix due to changes on [text/diff] package</title>
<updated>2026-04-12T15:36:59Z</updated>
<author>
<name>Shulhan</name>
<email>ms@kilabit.info</email>
</author>
<published>2026-04-12T14:57:24Z</published>
<link rel='alternate' type='text/html' href='http://git.kilabit.info/pakakeh.go/commit/?id=beccc10bc2fd1b80134c7acd5e180b9d31c7fb4e'/>
<id>urn:sha1:beccc10bc2fd1b80134c7acd5e180b9d31c7fb4e</id>
<content type='text'>
</content>
</entry>
<entry>
<title>all: apply go fix</title>
<updated>2026-04-04T20:52:47Z</updated>
<author>
<name>Shulhan</name>
<email>ms@kilabit.info</email>
</author>
<published>2026-04-04T20:50:32Z</published>
<link rel='alternate' type='text/html' href='http://git.kilabit.info/pakakeh.go/commit/?id=778fd16011ec1d39c41b62372dc65f045183266e'/>
<id>urn:sha1:778fd16011ec1d39c41b62372dc65f045183266e</id>
<content type='text'>
</content>
</entry>
<entry>
<title>all: convert license and copyright to use SPDX identifiers</title>
<updated>2026-01-15T10:26:33Z</updated>
<author>
<name>Shulhan</name>
<email>ms@kilabit.info</email>
</author>
<published>2026-01-15T10:14:54Z</published>
<link rel='alternate' type='text/html' href='http://git.kilabit.info/pakakeh.go/commit/?id=7db8c302e1396eda40cd6a1e57f58ed791448556'/>
<id>urn:sha1:7db8c302e1396eda40cd6a1e57f58ed791448556</id>
<content type='text'>
With help of spdxconv tool [1], we able to bulk update all files license
and copyright format to comply with SPDX formats.

[1] https://kilabit.info/project/spdxconv/
</content>
</entry>
<entry>
<title>lib/memfs: move compiled regex to their options</title>
<updated>2024-12-02T17:19:34Z</updated>
<author>
<name>Shulhan</name>
<email>ms@kilabit.info</email>
</author>
<published>2024-12-02T17:17:34Z</published>
<link rel='alternate' type='text/html' href='http://git.kilabit.info/pakakeh.go/commit/?id=904296da2f93b1376d7e2f5395ad11053ec7ab59'/>
<id>urn:sha1:904296da2f93b1376d7e2f5395ad11053ec7ab59</id>
<content type='text'>
This changes move the following fields and methods from MemFS,

* incRE and excRE fields to Options,
* isIncluded and isExclude methods to Options,
* watchRE field to WatchOptions,
* isWatched method to WatchOptions.

The reason is to allow other type that use Options or WatchOptions to use
isIncluded, isExclude, or isWatched methods.
</content>
</entry>
<entry>
<title>all: fix various linter warnings</title>
<updated>2024-09-03T18:09:51Z</updated>
<author>
<name>Shulhan</name>
<email>ms@kilabit.info</email>
</author>
<published>2024-09-02T17:36:12Z</published>
<link rel='alternate' type='text/html' href='http://git.kilabit.info/pakakeh.go/commit/?id=bea911e27eb064653e46493320d3a15061672acc'/>
<id>urn:sha1:bea911e27eb064653e46493320d3a15061672acc</id>
<content type='text'>
While at it, temporary disable gosec due to excessive report for G115,
which may be true, but may also break the current working program.
We should alter and fix once we can test and make sure that it does not
breaks.
</content>
</entry>
<entry>
<title>lib/memfs: sanitize the Root directory to fix refresh</title>
<updated>2024-07-21T17:38:19Z</updated>
<author>
<name>Shulhan</name>
<email>ms@kilabit.info</email>
</author>
<published>2024-07-18T18:48:28Z</published>
<link rel='alternate' type='text/html' href='http://git.kilabit.info/pakakeh.go/commit/?id=52ef9967fca5946ee047847d744d00ccaecff1a8'/>
<id>urn:sha1:52ef9967fca5946ee047847d744d00ccaecff1a8</id>
<content type='text'>
In [MemFS.refresh], if the requested url is "/file1" and [Options.Root]
is ".", the path during refresh become "file1" and if passed to
[filepath.Dir] it will return ".".
This cause the loop on refresh never end because there is no PathNodes
equal with ".".
</content>
</entry>
<entry>
<title>lib/memfs: trim trailing slash ("/") in the path of Get method</title>
<updated>2024-03-21T08:31:44Z</updated>
<author>
<name>Shulhan</name>
<email>ms@kilabit.info</email>
</author>
<published>2024-03-21T08:31:44Z</published>
<link rel='alternate' type='text/html' href='http://git.kilabit.info/pakakeh.go/commit/?id=547c4b59811091bd613564a2df5b8f3ebc72bd8f'/>
<id>urn:sha1:547c4b59811091bd613564a2df5b8f3ebc72bd8f</id>
<content type='text'>
The MemFS always store directory without slash.
If caller request a directory node with slash, it will always return nil.
</content>
</entry>
<entry>
<title>all: conform with linter gosec, ineffasign, and makezero</title>
<updated>2024-03-05T20:06:54Z</updated>
<author>
<name>Shulhan</name>
<email>ms@kilabit.info</email>
</author>
<published>2024-03-05T20:06:54Z</published>
<link rel='alternate' type='text/html' href='http://git.kilabit.info/pakakeh.go/commit/?id=1e7cb99f42bcd41e98326bd9406d3cecfb2a4542'/>
<id>urn:sha1:1e7cb99f42bcd41e98326bd9406d3cecfb2a4542</id>
<content type='text'>
Some of warnings from those linter are false positives, so we just
annotated them.
</content>
</entry>
<entry>
<title>lib/memfs: remove deprecated Merge function</title>
<updated>2024-03-05T09:21:54Z</updated>
<author>
<name>Shulhan</name>
<email>ms@kilabit.info</email>
</author>
<published>2024-03-05T08:16:02Z</published>
<link rel='alternate' type='text/html' href='http://git.kilabit.info/pakakeh.go/commit/?id=9e781fabef12b3ce4fa1938061f8a3152420a9f4'/>
<id>urn:sha1:9e781fabef12b3ce4fa1938061f8a3152420a9f4</id>
<content type='text'>
The Merge function has been replaced with [memfs.MemFS.Merge] for
better API.
</content>
</entry>
<entry>
<title>all: comply with linter recommendations #3</title>
<updated>2024-03-05T09:21:51Z</updated>
<author>
<name>Shulhan</name>
<email>ms@kilabit.info</email>
</author>
<published>2024-03-03T20:01:45Z</published>
<link rel='alternate' type='text/html' href='http://git.kilabit.info/pakakeh.go/commit/?id=7ec26b9f98b5af909e935b69fbaa1db17d89cf6a'/>
<id>urn:sha1:7ec26b9f98b5af909e935b69fbaa1db17d89cf6a</id>
<content type='text'>
For HTTP server that use TLS, set the minimum TLS version and
ReadHeaderTimeout to mitigate slowloris attack.

For HTTP client or server that parameterize the use of InsecureSkipVerify,
annotate the line with "nolint:gosec" to allow the code pass the check.

Library that still use sha1, in example in DKIM and TOTP, skip the
warnings by annotating the line with "nolint:gosec".

A pointer variable now allocated their address before assigning its
value.

Any error that returned now wrapped using "%w".
Also, replace error checking using [errors.Is] or [errors.As] instead of
using equal or not-equal operators.

In "lib/http", replace any usage of "math/rand" with "crypto/rand".

Any call of [math/big.Rat.SetString] now annotated with "nolint:gosec"
since its false positive, the issue has been fixed in Go &gt;= 1.17.7.

Any switch case that does not cover the rest of the possible values now
handled by adding the cases or by replacing the "default" case with
the rest of values.
</content>
</entry>
</feed>
