<feed xmlns='http://www.w3.org/2005/Atom'>
<title>gotp, branch v0.4.0</title>
<subtitle>CLI to manage Time-based OTP.</subtitle>
<id>http://git.kilabit.info/gotp/atom?h=v0.4.0</id>
<link rel='self' href='http://git.kilabit.info/gotp/atom?h=v0.4.0'/>
<link rel='alternate' type='text/html' href='http://git.kilabit.info/gotp/'/>
<updated>2023-11-10T17:11:29Z</updated>
<entry>
<title>Release gotp v0.4.0 (2023-11-11)</title>
<updated>2023-11-10T17:11:29Z</updated>
<author>
<name>Shulhan</name>
<email>ms@kilabit.info</email>
</author>
<published>2023-11-10T17:11:29Z</published>
<link rel='alternate' type='text/html' href='http://git.kilabit.info/gotp/commit/?id=6ae7feb1cc14a8aebc726850ef9def0db5242bc6'/>
<id>urn:sha1:6ae7feb1cc14a8aebc726850ef9def0db5242bc6</id>
<content type='text'>
=== New features

* all: implement command "get"

  The "get" command get and print the issuer by its LABEL.
  This will print the issuer secret, unencrypted.

=== Enhancements

* all: unfold private key path before reading

  By unfolding, user can set the path to private key using "~" that points
  to their home.
  This make the key can works across home directory, in case user have
  multiple homes (Linux and macOS have different home path and maybe
  user name, but both can use "~" as substitution for $HOME)

* Makefile: add task to install and uninstall gotp in macOS
</content>
</entry>
<entry>
<title>go.mod: update all dependencies</title>
<updated>2023-11-10T17:00:15Z</updated>
<author>
<name>Shulhan</name>
<email>ms@kilabit.info</email>
</author>
<published>2023-11-10T17:00:15Z</published>
<link rel='alternate' type='text/html' href='http://git.kilabit.info/gotp/commit/?id=56213d03be16b368830a159543e89f6b5f7a6817'/>
<id>urn:sha1:56213d03be16b368830a159543e89f6b5f7a6817</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Makefile: add task to install and uninstall gotp in macOS</title>
<updated>2023-10-09T05:59:25Z</updated>
<author>
<name>Shulhan</name>
<email>ms@kilabit.info</email>
</author>
<published>2023-10-06T09:49:42Z</published>
<link rel='alternate' type='text/html' href='http://git.kilabit.info/gotp/commit/?id=311b36b05897fd0b86051eb1cbaf342861eb140c'/>
<id>urn:sha1:311b36b05897fd0b86051eb1cbaf342861eb140c</id>
<content type='text'>
</content>
</entry>
<entry>
<title>all: convert the issuer's label to lowercase in NewIssuer</title>
<updated>2023-10-06T09:46:52Z</updated>
<author>
<name>Shulhan</name>
<email>ms@kilabit.info</email>
</author>
<published>2023-10-06T09:46:52Z</published>
<link rel='alternate' type='text/html' href='http://git.kilabit.info/gotp/commit/?id=246b65008ff6c6b20db2f26f0bfcd4ddaabd3301'/>
<id>urn:sha1:246b65008ff6c6b20db2f26f0bfcd4ddaabd3301</id>
<content type='text'>
</content>
</entry>
<entry>
<title>all: implement command "get"</title>
<updated>2023-10-06T09:35:12Z</updated>
<author>
<name>Shulhan</name>
<email>ms@kilabit.info</email>
</author>
<published>2023-10-06T09:35:12Z</published>
<link rel='alternate' type='text/html' href='http://git.kilabit.info/gotp/commit/?id=aedc3c206dd997c6dd96ce53a807b0b6ae635b3c'/>
<id>urn:sha1:aedc3c206dd997c6dd96ce53a807b0b6ae635b3c</id>
<content type='text'>
The "get" command get and print the issuer by its LABEL.
This will print the issuer secret, unencrypted.
</content>
</entry>
<entry>
<title>all: pass the configuration directory parameter to NewCli</title>
<updated>2023-10-06T06:59:51Z</updated>
<author>
<name>Shulhan</name>
<email>ms@kilabit.info</email>
</author>
<published>2023-10-06T06:59:51Z</published>
<link rel='alternate' type='text/html' href='http://git.kilabit.info/gotp/commit/?id=3ca05089eccb6c2e738c0a86725bd22695f5b7a7'/>
<id>urn:sha1:3ca05089eccb6c2e738c0a86725bd22695f5b7a7</id>
<content type='text'>
Previously, the configuration directory initialized inside NewCli.
This changes we make the NewCli accept the config directory so we can
changes it during testing.
</content>
</entry>
<entry>
<title>all: add task linter and fix all warnings</title>
<updated>2023-10-06T06:49:39Z</updated>
<author>
<name>Shulhan</name>
<email>ms@kilabit.info</email>
</author>
<published>2023-10-06T06:49:39Z</published>
<link rel='alternate' type='text/html' href='http://git.kilabit.info/gotp/commit/?id=c5cc07900c67c2c8b565758dc4a66bc36b8cd7a9'/>
<id>urn:sha1:c5cc07900c67c2c8b565758dc4a66bc36b8cd7a9</id>
<content type='text'>
We use revive [1], fieldalignment [2], and shadow [3] as linters.

[1] https://github.com/mgechev/revive
[2] https://pkg.go.dev/golang.org/x/tools@v0.13.0/go/analysis/passes/fieldalignment/cmd/fieldalignment
[3] https://pkg.go.dev/golang.org/x/tools@v0.13.0/go/analysis/passes/shadow/cmd/shadow
</content>
</entry>
<entry>
<title>all: replace encrypt and decryption functions from "lib/crypto"</title>
<updated>2023-10-06T04:10:17Z</updated>
<author>
<name>Shulhan</name>
<email>ms@kilabit.info</email>
</author>
<published>2023-10-06T04:10:17Z</published>
<link rel='alternate' type='text/html' href='http://git.kilabit.info/gotp/commit/?id=f364f10b8c5c71954d4ceb572cf3b18a61f077e0'/>
<id>urn:sha1:f364f10b8c5c71954d4ceb572cf3b18a61f077e0</id>
<content type='text'>
The "lib/crypto" DecryptAoep and EncryptAoep support large message.
</content>
</entry>
<entry>
<title>all: unfold private key path before reading</title>
<updated>2023-10-06T03:03:04Z</updated>
<author>
<name>Shulhan</name>
<email>ms@kilabit.info</email>
</author>
<published>2023-07-24T06:01:36Z</published>
<link rel='alternate' type='text/html' href='http://git.kilabit.info/gotp/commit/?id=8a1a81a6428ae970569d9c2a506acf90deb2e0c4'/>
<id>urn:sha1:8a1a81a6428ae970569d9c2a506acf90deb2e0c4</id>
<content type='text'>
By unfolding, user can set the path to private key using "~" that points
to their home.
This make the key can works across home directory, in case user have
multiple homes (Linux and macOS have different home path and maybe
user name, but both can use "~" as substitution for $HOME)
</content>
</entry>
<entry>
<title>Release gotp v0.3.1 (2023-05-25)</title>
<updated>2023-05-25T11:34:33Z</updated>
<author>
<name>Shulhan</name>
<email>ms@kilabit.info</email>
</author>
<published>2023-05-25T11:34:33Z</published>
<link rel='alternate' type='text/html' href='http://git.kilabit.info/gotp/commit/?id=479e33040d93e582aa10f19c299b2633f2270d24'/>
<id>urn:sha1:479e33040d93e582aa10f19c299b2633f2270d24</id>
<content type='text'>
===  Bug fix

* all: load private key only when needed

In case the configuration use private key with passphrase, the bash
completion will hang due to the command ask for passphrase.

This changes fix this issue by loading private key only when doing add,
generate, import, or remote-private-key.
</content>
</entry>
</feed>
