luckyframework / luckyframework/lucky_cli

Provide lucky init --edge support

Open
#744 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

feature request hacktoberfest
Dominant language
HTML
Stars
92
Forks
48
PR merge metrics
No merged PRs in 30d

Description

One of the woes of installing lucky_cli from source is that, in order for `lucky init` to work properly, you must be on a tag.

I would be nice if the functionality of lucky init worked as such:

- `lucky init` always yields an app checked out from $LATEST_TAG of all respective repos
- If a user passes an `--edge` flag, `lucky init` uses `branch: main` for all lucky deps

We might be able to look to rails for how to achieve this.

One way this might work better too, is to have the "concerns" of app gen be inside lucky/another repo, and have the "lucky cli" functions in this repo, then clone via linked tag/edge from there.

Lots of ways to achieve this easily, but picking the best way for the future is important here.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start at the `lucky init` command and trace how it selects versions and branches for Lucky dependencies. Compare the requested `$LATEST_TAG` behavior with `--edge` using `branch: main`, and review the Rails approach mentioned in the issue. Done means source installs generate apps from the latest tags by default and use main branches consistently when `--edge` is passed.

Written by the indexing model from the issue text.

Assessment

Tech stack
crystal, git
Domain
cli
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.