Thymus release 0.1.6

The third autumn release has silently come out! There are not so many changes out of there, but I finally fixed a very annoying trouble.

Library updates

Textual is updated to 0.41.0. Nothing special, just a regular update.

Lots of other libs are updated to the latest versions too.

Thymus AST and JunOS navigation

I’ve decided to review my previous approach to fix the problem with the JunOS navigation through inactive sections. Yes, it didn’t work until now. The core of the problem belonged not to Thymus but to Thymus-AST. The former is just a drawing tool, while the latter is in charge of constructing and navigating trees. I separated an inactive keyword from the name of a branch. So, if a config has an inactive section, this keyword won’t be a part of a corresponding branch’s name. Any branch already has a dedicated property for that, stripping a keyword from a name eases navigation without losing the property itself. At the same time, the config’s body is not changed, and users see it as is. Frankly speaking, I’ve lost some time dealing with the alignment of some parsing functions to the new approach, but it’s done now (I hope, forever).

Additionally, I’ve brought support for yet another section’s property – protected. It can be used alone via the “protect:” keyword in the configuration or can be added to the inactive property. Now, Thymus supports navigation through such sections.

Folders mess

I’ve been ignoring some loose ends for a while, and Thymus could create a mess by its folders. It created them here and there, depending on a relative path during every execution. Finally, I’ve tied all of this. All folders are united under a “thymus_data” umbrella which resides in a user’s home.

Default path

The focus on user experience is pivotal and I continue polishing the usability. The Directory tree element of the Open Dialog loads the content of a predefined path now. This path can be set via the configuration file or CLI. By default, it is “~/thymus_data/saves”. If you have some path, that contains most of your configs or folders with them, you’d probably prefer Thymus to open it immediately, saving some clicks.

requirements.txt

Some time ago I stumbled upon some texts that blame the requirements.txt file. Thymus can be installed via the PIP tool from day one thanks to the Poetry backend. I know, some folks are more in a classical approach, that’s why I was holding this file alive. But now I’ve decided to get rid of this complexity and deleted it.

Known issues

I’ve completely broken the screenshots feature, it’ll be fixed in the upcoming release!

Thymus doesn’t support SSH keys yet. The reason is that the support of the keys by Netmiko is not the same as the support by Paramiko. I don’t know why, but Netmiko requires a key to be explicitly specified. Paramiko can work this way too, but it can also search for many possible keys automatically. I’ve offered the Netmiko devs to add this behavior too, but it looks like I haven’t been convincing. So, yet another reason to proceed without Netmiko further.

Stay tunatuned!

Written on November 24, 2023