This PR adds a [devbox](https://www.jetpack.io/devbox/) config to the repo.
This may be beneficial to anyone interested in nix but doesn't want to deal with the language, or anyone interested in an easy way to start development for `tea`.
With `devbox` installed, `devbox shell` should drop you into a shell with `go 1.20.x`, `gopls` (language server), and `make` for build targets available.
I didn't want to duplicate all of our Makefile, but I did add a single script `devbox run build` because it also has the packages above available, so at the very least a user with `devbox` should be able to build the project.
We don't have CGO, so nothing extra should be required that I can think of, and our linters are invoked via `go run` so they should also work since the `go` package would be available.
-----
As a quick note, I am more familiar with nix itself than I am with devbox, but I think this could potentially help anyone wanting to quickly contribute.
If you want to get really meta and are a nix user, you could even run `nix run nixpkgs#devbox shell` to drop into the shell.
Another alternative would be to write an actual flake with a devShell, however I think `devbox` is a nice in-between. Anyone comfortable with nix can probably whip up a dev environment fairly easily without `devbox`.
Co-authored-by: techknowlogick <techknowlogick@noreply.gitea.com>
Reviewed-on: https://gitea.com/gitea/tea/pulls/572
Co-authored-by: jolheiser <john.olheiser@gmail.com>
Co-committed-by: jolheiser <john.olheiser@gmail.com>
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| code.gitea.io/gitea-vet | require | patch | `v0.2.1` -> `v0.2.2` |
---
### ⚠ Dependency Lookup Warnings ⚠
Warnings were logged while processing this repo. Please check the Dependency Dashboard for more information.
---
### Configuration
📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.
♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 **Ignore**: Close this PR and you won't be reminded about this update again.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNi43OS4xIiwidXBkYXRlZEluVmVyIjoiMzYuNzkuMSIsInRhcmdldEJyYW5jaCI6Im1haW4ifQ==-->
Reviewed-on: https://gitea.com/gitea/tea/pulls/574
Co-authored-by: Renovate Bot <renovate-bot@gitea.com>
Co-committed-by: Renovate Bot <renovate-bot@gitea.com>
Welcome to [Renovate](https://github.com/renovatebot/renovate)! This is an onboarding PR to help you understand and configure settings before regular Pull Requests begin.
🚦 To activate Renovate, merge this Pull Request. To disable Renovate, simply close this Pull Request unmerged.
---
### Detected Package Files
* `Dockerfile` (dockerfile)
* `go.mod` (gomod)
### Configuration Summary
Based on the default config's presets, Renovate will:
- Start dependency updates only once this onboarding PR is merged
- Enable Renovate Dependency Dashboard creation.
- Use semantic commit type `fix` for dependencies and `chore` for all others if semantic commits are in use.
- Ignore `node_modules`, `bower_components`, `vendor` and various test/tests directories.
- Group known monorepo packages together.
- Use curated list of recommended non-monorepo package groupings.
- Apply crowd-sourced package replacement rules.
- Apply crowd-sourced workarounds for known problems with packages.
- Pin Docker digests.
🔡 Would you like to change the way Renovate is upgrading your dependencies? Simply edit the `renovate.json5` in this branch with your custom config and the list of Pull Requests in the "What to Expect" section below will be updated the next time Renovate runs.
---
### What to Expect
With your current configuration, Renovate will create 12 Pull Requests:
<details>
<summary>chore(deps): pin golang docker tag to 46571ac</summary>
- Schedule: ["at any time"]
- Branch name: `renovate/pin-dependencies`
- Merge into: `main`
- Upgrade golang to `sha256:46571ac5f5f793cae20df72cc6f29b155eeba6e6b4377eccc641f84880529986`
</details>
<details>
<summary>fix(deps): update module code.gitea.io/gitea-vet to v0.2.2</summary>
- Schedule: ["at any time"]
- Branch name: `renovate/code.gitea.io-gitea-vet-0.x`
- Merge into: `main`
- Upgrade code.gitea.io/gitea-vet to `v0.2.2`
</details>
<details>
<summary>fix(deps): update module github.com/alecaivazis/survey/v2 to v2.3.7</summary>
- Schedule: ["at any time"]
- Branch name: `renovate/github.com-alecaivazis-survey-v2-2.x`
- Merge into: `main`
- Upgrade [github.com/AlecAivazis/survey/v2](https://github.com/AlecAivazis/survey) to `v2.3.7`
</details>
<details>
<summary>chore(deps): update golang docker tag to v1.21.1</summary>
- Schedule: ["at any time"]
- Branch name: `renovate/golang-1.x`
- Merge into: `main`
- Upgrade golang to `sha256:96634e55b363cb93d39f78fb18aa64abc7f96d372c176660d7b8b6118939d97b`
</details>
<details>
<summary>fix(deps): update module github.com/charmbracelet/glamour to v0.6.0</summary>
- Schedule: ["at any time"]
- Branch name: `renovate/github.com-charmbracelet-glamour-0.x`
- Merge into: `main`
- Upgrade [github.com/charmbracelet/glamour](https://github.com/charmbracelet/glamour) to `v0.6.0`
</details>
<details>
<summary>fix(deps): update module github.com/go-git/go-git/v5 to v5.8.1</summary>
- Schedule: ["at any time"]
- Branch name: `renovate/github.com-go-git-go-git-v5-5.x`
- Merge into: `main`
- Upgrade [github.com/go-git/go-git/v5](https://github.com/go-git/go-git) to `v5.8.1`
</details>
<details>
<summary>fix(deps): update module github.com/muesli/termenv to v0.15.2</summary>
- Schedule: ["at any time"]
- Branch name: `renovate/github.com-muesli-termenv-0.x`
- Merge into: `main`
- Upgrade [github.com/muesli/termenv](https://github.com/muesli/termenv) to `v0.15.2`
</details>
<details>
<summary>fix(deps): update module github.com/stretchr/testify to v1.8.4</summary>
- Schedule: ["at any time"]
- Branch name: `renovate/github.com-stretchr-testify-1.x`
- Merge into: `main`
- Upgrade [github.com/stretchr/testify](https://github.com/stretchr/testify) to `v1.8.4`
</details>
<details>
<summary>fix(deps): update module github.com/urfave/cli/v2 to v2.25.7</summary>
- Schedule: ["at any time"]
- Branch name: `renovate/github.com-urfave-cli-v2-2.x`
- Merge into: `main`
- Upgrade [github.com/urfave/cli/v2](https://github.com/urfave/cli) to `v2.25.7`
</details>
<details>
<summary>fix(deps): update module golang.org/x/crypto to v0.13.0</summary>
- Schedule: ["at any time"]
- Branch name: `renovate/golang.org-x-crypto-0.x`
- Merge into: `main`
- Upgrade golang.org/x/crypto to `0d375be9b61cb69eb94173d0375a05e90875bbf6`
</details>
<details>
<summary>fix(deps): update module golang.org/x/term to v0.12.0</summary>
- Schedule: ["at any time"]
- Branch name: `renovate/golang.org-x-term-0.x`
- Merge into: `main`
- Upgrade golang.org/x/term to `f413282cd8dbb55102093d9f16ab3ba90f7b9b31`
</details>
<details>
<summary>fix(deps): update module gopkg.in/yaml.v2 to v3</summary>
- Schedule: ["at any time"]
- Branch name: `renovate/gopkg.in-yaml.v2-3.x`
- Merge into: `main`
- Upgrade [gopkg.in/yaml.v2](https://github.com/go-yaml/yaml) to `v3.0.1`
</details>
<br />
🚸 Branch creation will be limited to maximum 2 per hour, so it doesn't swamp any CI resources or overwhelm the project. See docs for `prhourlylimit` for details.
---
### ⚠ Dependency Lookup Warnings ⚠
Please correct - or verify that you can safely ignore - these lookup failures before you merge this PR.
- `Could not determine new digest for update (datasource: go)`
Files affected: `go.mod`
---
❓ Got questions? Check out Renovate's [Docs](https://docs.renovatebot.com/), particularly the Getting Started section.
If you need any further assistance then you can also [request help here](https://github.com/renovatebot/renovate/discussions).
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-config-hash:b0e8c3aba9246cf9ec209c46e593f123f2daeea739622a97656e285413290a78-->
Reviewed-on: https://gitea.com/gitea/tea/pulls/573
Co-authored-by: Renovate Bot <renovate-bot@gitea.com>
Co-committed-by: Renovate Bot <renovate-bot@gitea.com>
created a plugin to install tea via asdf - hoping someone else can find it useful.
Co-authored-by: mvaldes <mvaldes.revilla@gmail.com>
Reviewed-on: https://gitea.com/gitea/tea/pulls/563
Co-authored-by: mvaldes14 <mvaldes14@noreply.gitea.com>
Co-committed-by: mvaldes14 <mvaldes14@noreply.gitea.com>
As title, then we could potentially start ingesting these in the docs repo as they are expanded.
Reviewed-on: https://gitea.com/gitea/tea/pulls/565
Reviewed-by: Lunny Xiao <xiaolunwen@gmail.com>
Co-authored-by: jolheiser <john.olheiser@gmail.com>
Co-committed-by: jolheiser <john.olheiser@gmail.com>
Fixes#567 by offloading the `$PATH` interpolation to the shell instead of letting make handle it.
Tested and works on Linux, tested and works on Windows using MSYS2/MingW64. Not tested on a pure Windows env without translation layers, but nothing was changed that would actively break it either.
Reviewed-on: https://gitea.com/gitea/tea/pulls/568
Reviewed-by: Lunny Xiao <xiaolunwen@gmail.com>
Reviewed-by: 6543 <6543@obermui.de>
Co-authored-by: Martin Veldwijk <riven@tae.moe>
Co-committed-by: Martin Veldwijk <riven@tae.moe>
Fixes#564 (/gitea/tea/issues/564) by applying minor changes to the Makefile.
- Defines a `BINEXT` variable which holds a file name extension (.exe for Windows, empty otherwise)
- Replaces uses of `$(EXECUTABLE)` with `tea$(EXECUTABLE)`
- appends `$(BINEXT)` to the custom vet tool flag
Besides that I made two minor changes
- Add `[.exe]` to the ignore rule for gitea-vet, so it also ignores the binary when built on Windows hosts
- Removed `$(DIST)/binaries` from release-dirs as this is not being called anywhere else
I've tested almost all `make` tasks to work on Windows. The only one I haven't run is the docker build.
WIP tag is because I still have to test it on Linux, will do so in a bit. I also asked for some discussion on the original issue, which I'd like to do before blindly asking to merge in changes
Reviewed-on: https://gitea.com/gitea/tea/pulls/566
Co-authored-by: Martin Veldwijk <riven@tae.moe>
Co-committed-by: Martin Veldwijk <riven@tae.moe>
if you just hit "enter" the loginMethod is `` so this coves that case
Reviewed-on: https://gitea.com/gitea/tea/pulls/557
Reviewed-by: Lunny Xiao <xiaolunwen@gmail.com>
Reviewed-by: techknowlogick <techknowlogick@noreply.gitea.com>
Co-authored-by: 6543 <6543@obermui.de>
Co-committed-by: 6543 <6543@obermui.de>
- Import "regexp" package in pull_create.go
- Replace existing code for `GetDefaultPRTitle` with a more efficient regular expression approach
- Add a new test file pull_create_test.go with a test function for `GetDefaultPRTitle`
Signed-off-by: appleboy <appleboy.tw@gmail.com>
Reviewed-on: https://gitea.com/gitea/tea/pulls/549
Reviewed-by: Lunny Xiao <xiaolunwen@gmail.com>
Reviewed-by: techknowlogick <techknowlogick@noreply.gitea.io>
Co-authored-by: appleboy <appleboy.tw@gmail.com>
Co-committed-by: appleboy <appleboy.tw@gmail.com>
This PR adds two small improvements to the compilation Section of the Readme:
- Add go/The Go Programming Language to the list of required tools in the compilation section of the readme.
- Add a short explanation how the compiled source can be installed via make install, with a note about the GOPATH
Co-authored-by: Christoph Wildhagen <git@christoph-wildhagen.de>
Reviewed-on: https://gitea.com/gitea/tea/pulls/543
Reviewed-by: John Olheiser <john+gitea@jolheiser.com>
Reviewed-by: techknowlogick <techknowlogick@noreply.gitea.io>
Co-authored-by: ASDFGamer <asdfgamer@noreply.gitea.io>
Co-committed-by: ASDFGamer <asdfgamer@noreply.gitea.io>
This fixed a Bug, that a wrong directory could be written to shell via
@echo, when the env var GOPATH isn't set.
Co-authored-by: Christoph Wildhagen <git@christoph-wildhagen.de>
Reviewed-on: https://gitea.com/gitea/tea/pulls/544
Reviewed-by: John Olheiser <john+gitea@jolheiser.com>
Reviewed-by: techknowlogick <techknowlogick@noreply.gitea.io>
Co-authored-by: ASDFGamer <asdfgamer@noreply.gitea.io>
Co-committed-by: ASDFGamer <asdfgamer@noreply.gitea.io>
As title, we no longer use vendoring (or dep!).
Also updated the link to Discord.
Co-authored-by: jolheiser <john.olheiser@gmail.com>
Reviewed-on: https://gitea.com/gitea/tea/pulls/534
Reviewed-by: techknowlogick <techknowlogick@gitea.io>
Co-authored-by: John Olheiser <john+gitea@jolheiser.com>
Co-committed-by: John Olheiser <john+gitea@jolheiser.com>
Fixes "Only signed in user is allowed to call APIs." as the
/api/v1/version returns a 403 when running a gitea where
REQUIRE_SIGNIN_VIEW is enabled
Co-authored-by: Wim <wim@42.be>
Reviewed-on: https://gitea.com/gitea/tea/pulls/520
Reviewed-by: 6543 <6543@obermui.de>
Reviewed-by: Lunny Xiao <xiaolunwen@gmail.com>
Co-authored-by: Wim <42wim@noreply.gitea.io>
Co-committed-by: Wim <42wim@noreply.gitea.io>
at the moment we crash with an nil exeption if there exist team reviews
this fix it and add support to display them
Reviewed-on: https://gitea.com/gitea/tea/pulls/515
Reviewed-by: Norwin <noerw@noreply.gitea.io>
Reviewed-by: wxiaoguang <wxiaoguang@noreply.gitea.io>
commands now accept multiple arguments where it makes sense.
#### before
```
NAME:
tea issues close - Change state of an issue to 'closed'
USAGE:
tea issues close [command options] <issue index>
```
#### after
```
NAME:
tea issues close - Change state of one ore more issues to 'closed'
USAGE:
tea issues close [command options] <issue index> [<issue index>...]
```
Co-authored-by: Norwin <git@nroo.de>
Reviewed-on: https://gitea.com/gitea/tea/pulls/512
Reviewed-by: 6543 <6543@obermui.de>
Reviewed-by: justusbunsi <justusbunsi@noreply.gitea.io>
Co-authored-by: Norwin <noerw@noreply.gitea.io>
Co-committed-by: Norwin <noerw@noreply.gitea.io>
This adds support for authentication using a SSH certificate and normal public keys when you've got an ssh-agent running that has this certificate or your public key loaded.
First question when creating a new login is to ask about the ssh certificates or public keys, when the answer is yes, we don't need to ask about tokens/usernames anymore.
Co-authored-by: Wim <wim@42.be>
Reviewed-on: https://gitea.com/gitea/tea/pulls/442
Reviewed-by: Lunny Xiao <xiaolunwen@gmail.com>
Reviewed-by: 6543 <6543@obermui.de>
Co-authored-by: Wim <42wim@noreply.gitea.io>
Co-committed-by: Wim <42wim@noreply.gitea.io>
because some wrong tagging was done in the past, `latest` will point to `1.3.3` witch is actually v0.1.x.
so you have to specify the version
Reviewed-on: https://gitea.com/gitea/tea/pulls/505
Reviewed-by: Norwin <noerw@noreply.gitea.io>
Reviewed-by: techknowlogick <techknowlogick@gitea.io>
Co-authored-by: 6543 <6543@obermui.de>
Co-committed-by: 6543 <6543@obermui.de>
Together with #415 this finally adds the field flag to all entity listings.
closes#342
### ⚠️ breaking changes ⚠️
This changes the column names of `tea milestones ls`:
```diff
- TITLE | OPEN/CLOSED ISSUES | DUEDATE
+ TITLE | ITEMS | DUEDATE
```
Co-authored-by: Norwin <git@nroo.de>
Co-authored-by: 6543 <6543@obermui.de>
Reviewed-on: https://gitea.com/gitea/tea/pulls/422
Reviewed-by: delvh <dev.lh@web.de>
Reviewed-by: 6543 <6543@obermui.de>
Co-authored-by: Norwin <noerw@noreply.gitea.io>
Co-committed-by: Norwin <noerw@noreply.gitea.io>
Allows generating a plain text version of an issue (i.e. without colors and other terminal formatting) when storing stdout in a file.
```
tea issue --comments 1 > issue1.txt
```
`IsInteractive()` had to be moved to avoid a recursive import chain.
---
In the future, it would be nice to also respect the `--output` flag. This flag is currently designed for tabular output, but we could add more supported values like `markdown` `ansi`, `plain` to it
Co-authored-by: Norwin <git@nroo.de>
Co-authored-by: 6543 <6543@obermui.de>
Reviewed-on: https://gitea.com/gitea/tea/pulls/491
Reviewed-by: 6543 <6543@obermui.de>
Reviewed-by: delvh <dev.lh@web.de>