• v0.0.5 19ced9795c

    v0.0.5 Stable

    Elara6331 released this 2022-12-05 00:03:36 +00:00 | 196 commits to master since this release

    This release contains lots of very big changes.

    First of all, LURE now creates a database containing all the package metadata, and updates it every time a repo is updates. It only updates packages that have changed, and does not rebuild the entire DB, so it should be extremely fast. This will allow for some very complicated features, and has already provided some nice improvements, which will be mentioned later in this release.

    Unfortunately, the DB does not support 32-bit architectures at the moment, but this is being worked on. In the meantime, LURE will not compile for 32-bit. Hopefully this does get fixed soon. It also does not have riscv64 support, but I've forked the dependency that wasn't compiling, added support, and opened a PR for that.

    A new helper command, called git-version has been added. This helper command provides a version number calculated from the amount of revisions and commit hash of a git repo. It should be used instead of the current printf command in the version() function, because it doesn't depend on the git binary and it provides a version compatible with Debian, which requires that versions start with digits.

    LURE will now check the provides array to find packages. This means the package name no longer needs to be exact. For example, if you do lure in itd, it will find itd-git and itd-bin because they both have itd in their provides arrays, and then it will prompt you for which one you want to install. This change was enabled by the new DB.

    Bash and ZSH completions have now been added in the scripts/completion directory. They will complete LURE's commands as well as package names for the install command. This has also been enabled by the new DB.

    LURE will now ask if you want to read the build scripts before building the package, similar to what AUR helpers do. Unlike the aforementioned AUR helpers, this feature does not depend on any $PAGER or $EDITOR program being installed. It uses an internal pager with mouse and keyboard support, syntax highlighting, and text wrapping. This is based on the amazing https://github.com/charmbracelet/bubbletea library.

    Changelog

    • 7d00c7b Add --installed/-I flag to ls command
    • 3663a8e Add FindPkgs to repos package
    • 79c0e7e Add ability to list packages matching pattern
    • b3479bd Add archlinux packager
    • 23fd711 Add bash and zsh completions
    • 56ba3ec Add build script viewer and prompt users asking if they want to read the script
    • 67b9801 Add doc comments
    • 9fa3977 Add fix command
    • fbf0aa3 Add git-version helper command
    • 6013bdf Add git-version to table of contents
    • fcd5c1c Add info logs to fix command
    • 84336e4 Add install script
    • 5d411ac Add new commands to usage.md table of contents
    • 3c260a7 Allow parsing additional scripts via source when pulling repos
    • 715fd6c Begin moving repository operations into separate package
    • 5f12d2a Build and update database when repo pulled
    • 715ec7f Clear screen when starting pager
    • 4e71a5c Create function for asking yes or no questions
    • 7164aac Create function for getting canonical CPU architecture
    • df72d95 Disable root in ls command
    • c512487 Do two parsing passes when building a package, and prompt user to view script after the first
    • 14078ec Fix SQL for deleting packages
    • c2d396d Fix bash completion install path
    • 40cf0da Fix closing brace in infoCmd() function
    • a2bd151 Fix install-completion example
    • 664f01a Fix spacing in database schema
    • 0ac8cca Handle the possibility of the DB not existing on startup
    • eaf49a4 Make actions in internal/repos unexported
    • 8f9bdf6 Make sure scripts are valid when updating DB
    • edf5b67 Mention install script in README
    • 56550a5 Merge pull request #44 from Arsen6331/add-database
    • 9a06894 Move configuration into separate package
    • 43d6461 Move pkgPrompt() to cli.go
    • 5ed538c Move promptViewScript() call to installScripts()
    • 99b7085 Move version comparison to separate package
    • 7405186 Properly resolve relative paths in helper functions
    • 5e8ed1c Provide scriptdir during first interpreter pass
    • 66a6b30 Pull repos before every command that uses them
    • dbfcde0 Remove 32-bit architectures until 32-bit support is added to Pebble
    • 1377ef1 Remove packages from DB when removing repository
    • 2e591d9 Remove unnecessary PkgNotFoundError
    • c0439a2 Remove unused imports
    • 4eac9cd Remove unused internal/db.GetPkg() function
    • dd33a30 Rename repodir to scriptdir
    • 5549873 Revert 8ceb61d
    • e4b8348 Run version function in srcdir
    • a106100 Show version of installed package when listing installed packages
    • a88adb4 Switch all LURE operations to use new DB
    • 01a9f23 Switch to global log variable
    • 19ced97 Switch to riscv64 fork of pebble
    • 269222b Update usage docs
    • ead0c79 Use correct verb when prompting user to choose packages
    • b4f4633 Use strict database table schema
    Downloads