Commit graph

119 commits

Author SHA1 Message Date
269c05cbb4
chore(CHANGELOG): update changelog 2024-12-25 16:00:25 +00:00
ed8d5594b9
fix(lib): unhandled error when no gh CLI present
We did not correctly handle the case if the `gh` CLI was not present,
since `process.spawn` errors. We now wrap it in a `Result.try` and
handle that as required.
2024-12-25 15:56:39 +00:00
aba182cea5
fix(lib): handle result conditionally too
Previously, we were calling `:unwrap` while trying to increment the
progress bar even if we were not in an interactive environment. This
fixes that.
2024-12-25 15:48:50 +00:00
35fb2df3a4
chore(lib): prepare for v0.1.6 2024-12-25 05:59:33 +00:00
e8dc5ecffb
chore(CHANGELOG): update changelog 2024-12-25 05:56:31 +00:00
3d5bdc55bf
chore(bins): bump darklua to v0.15.0 2024-12-25 05:55:31 +00:00
f219d27f34
chore(CHANGELOG): use new domain for all links 2024-12-22 21:52:45 +05:30
dfc8acb5b2
chore(CHANGELOG): update unreleased changes 2024-12-22 16:03:19 +00:00
773cc1b2a1
fix(lib): error while attempting to migrate when new dir exists 2024-12-22 15:59:27 +00:00
76e434ec6d
fix(lib): propagate ProgressBar results and handle them 2024-12-22 15:58:52 +00:00
e323dc08a3
chore: include CHANGELOG 2024-12-22 21:17:56 +05:30
09248561bf
chore(bins): update blink to v0.15.1 2024-12-22 14:57:33 +00:00
cbf58c8ca1
chore(bins): update blink to v0.15.0 2024-12-22 14:55:22 +00:00
ffefa493df
chore(bins): sync README for asphalt 2024-12-22 14:53:58 +00:00
e6e5debcac
chore: update lockfiles 2024-12-22 14:42:22 +00:00
f0524d036d
chore(lib): bump version 2024-12-22 14:35:20 +00:00
4a26699691
chore(pkg): update pesde lockfiles 2024-12-16 19:39:08 +00:00
682088dbca
chore(bins): include asphalt bin 2024-12-16 19:37:56 +00:00
7bf8063366
feat(lib): make ProgressBar:nextStage return a result 2024-12-16 19:28:28 +00:00
8a074d0406
chore(lib): bump version 2024-12-16 07:32:58 +00:00
e0a9ca9aa4
fix(lib)!: check if existing tool_storage is dir, not file 2024-12-16 07:28:26 +00:00
db91ef8af5
chore(lib): bump version 2024-12-16 06:33:30 +00:00
3f4acfc759
chore(bins): update tools to latest
* Bumped luau-lsp@1.37.0
* Bumpted stylua@v2.0.2
* Bumped zap@v0.6.16
2024-12-16 06:32:03 +00:00
daimond113
e6068b2ef6
fix: strip leading version of tag names in finding new releases 2024-12-15 01:26:40 +01:00
daimond113
d219a8b668
fix: substitute version on platforms with different line endings 2024-12-15 01:22:02 +01:00
52c8992fe3
chore(lune): add comment for update_tools dev script 2024-12-14 08:20:43 +00:00
9a3f3717de
feat(lib): address type related FIXMEs 2024-12-14 06:18:40 +00:00
bb6278407d
feat(lib): use gh CLI to get token and condition bar start
* Looks for `$GITHUB_TOKEN` env var, and if not found, tries to run `gh
  auth token` to get the token from the GitHub CLI.
* Made a conditional `start` method for the bar, which was previously
  missed.
2024-12-14 06:13:17 +00:00
0726169df8
feat(lib): rename tool_storage dir
Tools are now stored in the `~/.pesde/bin/.tool_storage` directory, in
order to prevent naming conflicts with other tool linkers. An old
tool_storage directory gets migrated to the new path if present.
2024-12-13 18:20:29 +00:00
202dc85147
feat(lib): add a touch of color to progress bar
Also moves bar stopping logic for errors into pcall handler.
2024-12-13 18:04:42 +00:00
2f79159f95
fix(lib): progress bar interfering with warns
* Fixed overlapping warns and progress bar.
* Removed unnecessary `resume` and `stop` bar methods.
2024-12-13 17:52:28 +00:00
f377116271
refactor(lib): minor structure improvements for progress bar
* Made bar related conditional operations get constructed by a
  `makeCondBar` which returns a table of functions to conditionally handle
  a progress bar.
* Moved progress bar boolean out of function args for `installTool` into
  global state.
2024-12-13 16:34:36 +00:00
c69a7417a0
feat(lib): include optional progress bar
Includes an optional progress bar which gets enabled when lib is called
using the default convenience `__call` metamethod.
2024-12-13 16:25:42 +00:00
ead60c003e
refactor(lib): use extension pattern for result<->option
Formerly, we used metatables to get custom `Option` and `Result` objects
which were difficult to type properly, leading to a lot of `unknown` and
`any` casts.

This refactor fixes it by making extensions opt-in, where we import the
extension methods separately from the original implementations, thereby
allowing us to not have to typecast things everywhere.
2024-12-13 14:33:05 +00:00
45627ea4a9
feat(lib): only download asset when it is of a valid format
Small optimization to not fetch an asset if its need of a supported
compression format.
2024-12-13 13:51:38 +00:00
f003ce8895
chore(bins): update selene README 2024-12-13 13:39:18 +00:00
1613737c26
chore(toolchainlib): remove token param from README 2024-12-10 22:12:47 +05:30
daimond113
ad36473326
fix: correctly parse base64 with whitespace 2024-12-09 10:46:25 +01:00
3e22a38dca chore(bins): fetch and include READMEs for bins 2024-12-09 07:08:21 +00:00
940ceea50f style: apply stylua formatter 2024-12-09 04:43:15 +00:00
36677adc3e refactor(lune): minor tool update script improvements
* Added warn function more consistent with other logging functions.
* used `:isErr` instead of negating `:isOk`
* Added log message for README writes
2024-12-09 04:41:47 +00:00
a1b4b91ca3 chore(bins): add README.md to all bin includes 2024-12-09 04:36:42 +00:00
e7131cc589 chore(lune): fetch and update READMEs for bins too
* Updates the `update_tools` dev script to include logic for using the
  GitHub API to fetch and write READMEs for bins.
* Also optionally accepts a GitHub token for authenticated requests
  using the `$GITHUB_TOKEN` environment variable.
* Also moves dev script dependencies at root manifest into
  `dev_dependencies`.
2024-12-09 04:34:42 +00:00
80882fc173 feat(lib): remove reliance on semver parsing
Previously, we assumed that the tools followed semver, and hence parsed
their versions for comparison. Some tools may not follow semver, and we
should not impose such a requirement as a toolchain management library.

Therefore, we now only check if the requested version string matches an
asset version tag. In order to ensure backwards compatibility, we strip
the leading `v` from the version if present.
2024-12-09 03:34:05 +00:00
daimond113
b726f8eb51
docs: remove unnecessary -- 2024-12-08 21:56:18 +01:00
daimond113
c8488f169f
docs: symlink toolchainlib LICENSE 2024-12-08 18:21:06 +01:00
daimond113
e9c78bd0d5
chore: rename LICENSE.md to LICENSE 2024-12-08 18:10:04 +01:00
ad4e099722 chore(README): fix wrong package for zap package 2024-12-07 19:09:46 +05:30
a371a33521 chore(README): fix entire table being broken
I think I messed up while trying to resolve merge conflicts.
2024-12-07 19:09:22 +05:30
d6d6e119be merge: origin/main -> main 2024-12-07 13:37:56 +00:00