Giter Club home page Giter Club logo

gama's People

Contributors

canack avatar fleimkeipa avatar marikann avatar semihbkgr avatar veyronsakai avatar viljkid avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

gama's Issues

Add `go install` support

GAMA can be install with go command.
Just needs to define current version as constant and needs to change version every release.

Increase the performance

Current version of gama fast enough. But you can make it better!
Take a look this directory internal/github. Might you use go routines to improve performance! ๐Ÿ™‚

Use .config/

I don't like dotfiles in home directory. Why not use .config instead?
It's exactly for that...
~/.config/gama/config.yaml
or
~/.config/gama.yaml?

Custom key maps to use GAMA

Currently we use gama with shift + R or shift + right etc.
May user's system can have custom shortcut that uses shift + (left or right)
This can be make annoying problem.

We can define custom key maps in gama config yaml.

Add Feature: "Favorite Repositories"

we can define F button to mark this repository as favorite. And shift+f like button shows only favorite repositories.
Favorite repositories can contains in .gama.yaml.
Let's discuss, any better ideas?

Cannot run binaries downloaded from Releases

Overview

This is to report that I could not execute the v1.1.4 Binary downloaded from Releases.

Verification environment

OS: macOS Sonoma 14.4.1
Chip: Apple M2 Max

Procedure

  1. I downloaded gama-macos-arm64 v1.1.4 from Releases.
  2. I double-clicked the downloaded gama-macos-arm64 file.
  3. A popup appeared that said "gama-macos-arm64 cannot be opened because it is from unidentified developer."
  4. I selected "Open Anyway" under Privacy & Security in macOS System Settings.
  5. I selected "Open" when the popup "macOS cannot verify the developer of gama-macos-arm64. Are you sure you want to open it?"
  6. The contents of the binary file have been opened. (Is it not recognized as an executable file?)

Other things I tried

chmod +x gama-macos-arm64

After executing the above commands, I tried the same procedure and were able to successfully launch the application.

Setup page for first time usage

Gama can be downloaded by package managers. Because of this, users might find it difficult to use if they are not familiar with the instructions on the GitHub page.

When Gama is first run, if there is no default configuration or if the --setup parameter is not passed, it offers the user an interactive setup opportunity.

Improve status messages

Show "Are you to do X?" type message each time switch an option to improve user experience.

Feature: Pagination for the repositories

In the ListRepositories request, the query param of per_page can be 100 at max.

from the doc:

per_page integer
The number of results per page (max 100).

so I think, would better to have pagination in the repositories tab (loading pages lazily).

`make build` fails with "toolchain not available" error

Overview

I got an error message "go: download go1.22 for darwin/arm64: toolchain not available" when running make build.

% make build
Getting latest Git tag...
v1.1.4
CGO_ENABLED=0 go build -ldflags="-s -w -X main.Version=v1.1.4" -o release/gama main.go
go: downloading go1.22 (darwin/arm64)
go: download go1.22 for darwin/arm64: toolchain not available
make: *** [build] Error 1

Execution environment

OS: macOS Sonoma 14.4.1
Chip: Apple M2 Max

Add binary releases for platform "linux/arm64" (ABI: "aarch64")

First of all: THANKS for this great open-source project โค๏ธ

I took it for a spin today and was really impressed ๐Ÿ˜ฎ

Could you please add binary releases for platform linux/arm64?

These binaries are required for use with:

  • Docker Images on Apple M1/M2/M3 hardware
  • IOT Devices like Raspberry Pi Zero 2 / Pi 3 / Pi 4 / Pi 5
  • Cloud VMs (Ampere) like AWS Graviton / Hetzner CAX-Series

Add predefined trigger rules

Sometimes, the values โ€‹โ€‹we trigger may be the same. Instead of filling them in one by one, we can define predefined rules and have them triggered.

Add branch option for workflow tab

User can switch the workflow's branch before the trigger.
Implement a textbox that have autocompletion feature. Use project's default branch as default.

Resize the 'Trigger' - 'Key' column

In the trigger section, I couldn't see long-named keys. Maybe we can resize that column ๐Ÿค”
Or, When we hover over it, we can show it below.

example-image

Rarely unexpected panics

Sometimes, gama throws panic. It is really rare, I can't reproduce..

But here is scenario:

  • Select a repository that have a triggerable workflow
  • Go to trigger pane
  • Go to workflow history
  • Wait a few minutes ( Usually you need to wait > ~15 minutes )
  • Go to trigger page again.. You might got a panic. But not all time. Really rare

Here is a panic output: (I'll edit and add other panics if I got any)

Caught panic:

runtime error: invalid memory address or nil pointer dereference

Restoring terminal...

goroutine 1 [running]:
runtime/debug.Stack()
        /opt/hostedtoolcache/go/1.22.0/x64/src/runtime/debug/stack.go:24 +0x5e
runtime/debug.PrintStack()
        /opt/hostedtoolcache/go/1.22.0/x64/src/runtime/debug/stack.go:16 +0x13
github.com/charmbracelet/bubbletea.(*Program).Run.func1()
        /home/runner/go/pkg/mod/github.com/charmbracelet/[email protected]/tea.go:478 +0x91
panic({0x7bcee0?, 0xb7a300?})
        /opt/hostedtoolcache/go/1.22.0/x64/src/runtime/panic.go:770 +0x132
github.com/termkit/gama/internal/terminal/handler/ghtrigger.(*ModelGithubTrigger).inputController(0xc0001dd008, {0x8db720?, 0xc0005b6000?})
        /home/runner/work/gama/gama/internal/terminal/handler/ghtrigger/ghtrigger.go:227 +0xe6
github.com/termkit/gama/internal/terminal/handler/ghtrigger.(*ModelGithubTrigger).Update(0xc0001dd008, {0x7ee880, 0xc00042c000})
        /home/runner/work/gama/gama/internal/terminal/handler/ghtrigger/ghtrigger.go:182 +0xc90
github.com/termkit/gama/internal/terminal/handler.(*model).handleTabContent(0xc0001da808, 0xc0003ed710?, {0x7ee880?, 0xc00042c000?})
        /home/runner/work/gama/gama/internal/terminal/handler/handler.go:253 +0x131
github.com/termkit/gama/internal/terminal/handler.(*model).Update(0xc0001da808, {0x7ee880, 0xc00050b440})
        /home/runner/work/gama/gama/internal/terminal/handler/handler.go:130 +0x88a
github.com/charmbracelet/bubbletea.(*Program).eventLoop(0xc00021ca90, {0x8db068?, 0xc0001da808?}, 0xc0001141e0)
        /home/runner/go/pkg/mod/github.com/charmbracelet/[email protected]/tea.go:411 +0x5e2
github.com/charmbracelet/bubbletea.(*Program).Run(0xc00021ca90)
        /home/runner/go/pkg/mod/github.com/charmbracelet/[email protected]/tea.go:543 +0x86b
main.main()
        /home/runner/work/gama/gama/main.go:31 +0x1e5

Improve the error handling

Some long error messages can disrupt the user interface. (Fortunately, these errors are not common. ๐Ÿ™‚)
Develop a more concise error handling mechanism

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.