Commit graph

43 commits

Author SHA1 Message Date
William Martin
d4cd79e28c Use int64 for GitHub database IDs and add lint check
Change all struct fields representing GitHub database IDs from int to
int64 to match the API spec and prevent potential overflow on 32-bit
architectures.

Add a custom go/analysis linter (idtype-checker) that flags struct
fields with ID-like names or JSON tags using int instead of int64,
integrated into make lint.

Closes #9247

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-05-13 13:16:43 +02:00
William Martin
0a3706a404 Remove unncessary printf usage 2025-01-21 18:04:47 +01:00
Mikel Olasagasti Uranga
4396e40a31 Fix: Ensure constant format strings in fmt and printf calls
Go 1.24 introduces stricter checks for format string validation.
This commit fixes instances where non-constant format strings were
used in calls to functions like `fmt.Errorf`, `fmt.Printf`, and similar.

Signed-off-by: Mikel Olasagasti Uranga <mikel@olasagasti.info>
2025-01-20 16:27:27 +01:00
David Gardiner
20273d1f17 Move create codespace permission opt out behind else to fix token permissions 2024-01-12 12:16:38 -08:00
Mateus Marquezini
7a32b8b5f3 some code improvements after code review 2023-11-27 17:17:24 -03:00
Mateus Marquezini
7af33d090a added a new error handling when the display name flag exceeds 48 characters #8356 2023-11-20 18:45:12 -03:00
Josh Gross
c5f88bb551
Show full permissions URL in gh cs create (#7983)
* Show full permissions URL in `gh cs create`

* Validate that full permissions URL is displayed
2023-09-12 10:12:53 -07:00
John Keech
93e1511bae
Codespaces: Use the host name from the logged in server for commands (#7795)
* Use the host name from the logged in server for codespace commands

* Fix existing tests

* Add tests for server url configuration

* Rename defaultApiUrl to defaultAPIURL and comment cleanup

* Switch to t.Setenv in codespaces api tests

* Switch to t.Setenv in other tests

* Support custom server in web flows for list and create

* Rename GetServerURL() to ServerURL()
2023-08-08 09:32:06 -07:00
doaortu
83322104b7
feat: add web flag for codespace list & create subcommand (#7288)
* feat: add web flag to cs list subcommand

web flag only works with repo flag, because,
currently there only param for listing with repo_id

* feat: add web flag to cs crate subcommand

web flag used for creating codespace through web UI instead of terminal.
web flag cannot be used with display-name, idle-timeout,
or retention retention-period
because there's no option for that in the Web UI

* refactor: extract mutual excusive logic to PreRunE

- changed web flag mutual exclusive logic, using cmdutil
- extract that logic to PreRunE clause in createCmd
- move web flag up to make it close to PreRunE clause (for clarity)
- add new param to newCreateCmd fn to facilitate test logic
- apply new newCreateCmd fn to root.go

* fix: clarify flag desc and error message

- remove 'yet' from error messages that can cause misunderstanding
- clarify list web flag can only be used with repo flag

* fix: skip machine check when we use web flag ...
(..and no machine flag provided)

+ add test for this new case
+ adjust related test cases for this new change.

* refactor: move flag check logic to PreRunE

why: err on PreRunE or RunE will also print help if error happened

+ move web, repo, org, user mutual exclusive logic to PreRunE clause
+ move repo, org, user mutual exclusive logic to PreRunE
+ move limit check flag to PreRunE
+ modify newListCmd fn to facilitate test logic
+ apply new newListCmd to root.go
+ add test cases to check PreRunE clause
- remove mutual exclusive test cases from Test_AppList

* refactor: remove the opts equality checks

* fix: mutually exclusive misfires
because of wrong logic

+ refine test case too

* cleanup:removing useWeb check in fn getMachineName

because it's no longer needed

+ remove redundant test-case

* refactor: remove redundant ifs

* refactor: clarify test name

* re-clarify web flag desc in list.go

* refactor: break long lines, use more idiomatic err

* add test case for nonexistent/wrong machine
2023-04-13 10:37:16 -05:00
Ryan Caldwell
71ec2c4e23
Codespaces create: Fix missing billable owner notice for individuals (#6891) 2023-01-23 13:15:44 +01:00
Des Preston
4ade907ae8
Allow setting codespace display name during create (#6739)
Co-authored-by: Mislav Marohnić <mislav@github.com>
2022-12-19 17:10:34 +01:00
Ashwin Jeyaseelan
a756ffb1e8
Fix Codespace Creation Devcontainer bug (#6389) 2022-10-18 11:11:28 +03:00
Sam Coe
a30de8d72a
Output paid message for codespace create to stderr not stdout (#6258) 2022-09-14 11:33:55 +00:00
Ayesha Gagguturi
a80a63f3aa Delete blob + pool 2022-07-27 17:03:54 -07:00
Jake Shorty
bb753731e6 Update test for indentation 2022-06-21 15:19:24 +00:00
Jake Shorty
832f35e000 PreFlight => BillableOwner for less confusion 2022-06-20 17:12:07 +00:00
Jake Shorty
2b9f9bb92a Add test for individual case 2022-06-19 18:38:38 +00:00
Jake Shorty
454b3489aa Add test for billable owner in stdout 2022-06-17 22:45:04 +00:00
Jake Shorty
1c8b26c5d8 Remove unused test function 2022-06-17 19:59:29 +00:00
Jake Shorty
08446c8fcd Add new API client function to tests 2022-06-17 19:52:37 +00:00
Fengyi Li
04ed77ddf0
Update prebuild availability status display at codespace creation (#5737) 2022-06-02 17:20:12 +00:00
Greggory Rothmeier
77507cd94c
Bugfix: Retention period is being sent to the API as 0 (#5706)
Co-authored-by: Jose Garcia <josebalius@github.com>
2022-05-25 17:36:27 +02:00
Greggory Rothmeier
06153770a9
Merge pull request #5504 from greggroth/gregg/retention-period
Add support for setting codespace retention-period
2022-05-10 18:21:55 +02:00
HÃ¥vard Anda Estensen
58cb773e09
Replace ioutil with io and os (#5498) 2022-04-26 13:07:44 +02:00
Jeff Hubbard
9fb6cf5423 Fix tests 2022-04-12 10:26:08 -07:00
Jeff Hubbard
de9b5ad8f8
Merge branch 'trunk' into multi-devcontainer 2022-04-08 15:17:33 -07:00
Jake Shorty
6783509d3b
Merge pull request #5410 from cli/codespaces-location-optional
Make location an optional flag when creating codespaces
2022-04-07 10:58:39 -06:00
Amanda Lin
5b10b6e986 use stderr instead and add tests 2022-04-06 09:57:36 -05:00
Jake Shorty
41719f7624 Location is an optional flag when creating codespaces 2022-04-05 20:19:19 +00:00
Amanda Lin
6490f658de handle IdleTimeoutNotice 2022-04-05 10:27:26 -05:00
Jeff Hubbard
9554e522af Change the way we parse list-devcontainers response 2022-03-28 14:24:57 -07:00
Jeff Hubbard
125a7b00a2 Fix tests 2022-03-18 14:44:15 -07:00
Jeff Hubbard
8abf50be1d Change some copy per product's suggestions 2022-03-18 10:10:57 -07:00
Jeff Hubbard
ce3d0791c3
Merge branch 'trunk' into multi-devcontainer 2022-03-16 12:51:03 -07:00
Mark Phelps
dd5feda00a Update wording after consulting product 2022-02-25 17:32:08 -05:00
Mark Phelps
71f32376d0 Fix tests 2022-02-22 20:20:52 -05:00
Mark Phelps
1ea26f33d8 Add create test 2022-02-22 09:50:43 -05:00
Caleb Brose
eeeb73a3e3
Repo name suggestions for cs create (#5108)
Co-authored-by: Alan Donovan <alan@alandonovan.net>
2022-01-31 10:20:49 +00:00
Jeff Hubbard
71d6e61a5b Rename test 2022-01-21 14:28:17 -08:00
Jeff Hubbard
5cee9e16f3 Add interactive prompt to choose from list of available devcontainer files 2022-01-21 14:11:52 -08:00
Jeff Hubbard
e7f888ad1d Add devcontainer_path API param as an option 2022-01-21 10:20:15 -08:00
Jeff Hubbard
90313fbf96
Add idle timeout to cs create parameters (#4741)
Co-authored-by: Mislav Marohnić <mislav@github.com>
2021-11-18 11:47:48 +00:00
Amanda Lin
15c8f291e4
Add prebuild availability status to create codespaces (#4737) 2021-11-17 19:41:05 +01:00