unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
* Golang mudules to follow common grouping
@ 2023-10-10  2:00 Sharlatan Hellseher
  2023-10-10  3:52 ` Maxim Cournoyer
  2023-10-15 21:12 ` Wilko Meyer
  0 siblings, 2 replies; 23+ messages in thread
From: Sharlatan Hellseher @ 2023-10-10  2:00 UTC (permalink / raw)
  To: guix-devel

Hi Guix!

I've noticed the number of Golang packages start growing. I expect more packages
to be reviewed and merged by quick check of Issues.

I think it's time to split (gnu packages golang) into some logical groups, see
Python, Lisp for example.

- golang-web
- golang-check
- golang-build
- golang-compression
- golang-crypto
- golang-xyz
- golang-...

Thoughts?


-- 
… наш разум - превосходная объяснительная машина которая способна
найти смысл почти в чем угодно, истолковать любой феномен, но
совершенно не в состоянии принять мысль о непредсказуемости.

^ permalink raw reply	[flat|nested] 23+ messages in thread
* Golang mudules to follow common grouping
@ 2023-12-11  9:21 Sharlatan Hellseher
  0 siblings, 0 replies; 23+ messages in thread
From: Sharlatan Hellseher @ 2023-12-11  9:21 UTC (permalink / raw)
  To: guix-devel; +Cc: Ludovic Courtès, Andreas Enge, Tobias Geerinckx-Rice

[-- Attachment #1: Type: text/plain, Size: 112 bytes --]

Hi Guix,

Do you think it is correctly extracted to golang-web?

https://issues.guix.gnu.org/66827

Thank,
Oleg

[-- Attachment #2: Type: text/html, Size: 346 bytes --]

^ permalink raw reply	[flat|nested] 23+ messages in thread
* Re: Golang mudules to follow common grouping
@ 2024-01-29  0:34 Sharlatan Hellseher
  2024-01-29 23:15 ` Christina O'Donnell
  0 siblings, 1 reply; 23+ messages in thread
From: Sharlatan Hellseher @ 2024-01-29  0:34 UTC (permalink / raw)
  To: Christina O'Donnell; +Cc: guix-devel

[-- Attachment #1: Type: text/plain, Size: 2690 bytes --]


Hi,

I've pushed the split III to master.
- https://issues.guix.gnu.org/68605
- https://debbugs.gnu.org/cgi/bugreport.cgi?bug=68605

And it's picked up by CI.
- https://ci.guix.gnu.org/eval/1082575

> Hmm, there seems to be a limit in the degree of parallelizability in
> this process unfortunately. But if there's anything you can think of
> that could help (manually) in this effort, then I'd be happy to help!

I think you may help! The identification of the group is still human
decision making process and I'm not sure it may be automated in any point.
So...
There are golang dedicated modules now and few more coming soon!

Each of the module header contains a short annotation which packages it
expects to have, feel free to improve it to make it even more clear
for others.

- golang-check
- golang-web
- golang-crypto

TBA:
- golang-compression :: Anything related to that subject, see
  python-compression, java-compression, perl-compression.

- golang-build or golang-extension :: Any low level golang add-ons not
included in core distribution see <https://pkg.go.dev/golang.org/x> or
any 0 dependencies high reference modules.

- golang-xyz :: As any other *-xyz module would absorb anything else
  left behind.

Maybe:
- golang-graphics
- golang-maths / golang-science
- ...

> 1. Put a magic comment above each package that you would like to move.
> 2. Run a simple script that makes a note of all of these into a
> to-move-list.
> 3. Then stash the change with the comments you made (in case you need
> to change things)
> 4. Run another script that takes the package list and performs the
> move in one's repository.
> 5. Sort out the use-package declarations manually and run tests.
> 6. When satisfied, stash the change and keep just the use-package
> changes.
> 7. Run a final script that loops through all the packages and commits
> each one in turn.
> 8. Rebase to suit.

We may extend handy script accelerating committing process, see
"etc/committer.scm"

> - I'm not a scheme programmer, but I did use Haskell at university so
>  I'm familiar with thinking in a functional style.
Me too =), but you still can help by just providing some review to
existing code base and available packages in golagn.scm and trying to
identify close group for each of them.

> I'm also imagining some the possibility of having a script that can
> remove redundant #:use-module's in the future, though I don't know if
> we care about a few unneeded modules being included.
The clean up task may be organasied after sort process is completed, having
not required #:use-module does not hurt too much but for keeping modules
tidy and fast to load it definitely beneficial.

Regards,
Oleg

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 832 bytes --]

^ permalink raw reply	[flat|nested] 23+ messages in thread

end of thread, other threads:[~2024-02-16 15:16 UTC | newest]

Thread overview: 23+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-10-10  2:00 Golang mudules to follow common grouping Sharlatan Hellseher
2023-10-10  3:52 ` Maxim Cournoyer
2023-10-19  1:34   ` Sharlatan Hellseher
2023-10-15 21:12 ` Wilko Meyer
2023-10-16 18:17   ` Sharlatan Hellseher
2023-10-19  9:40     ` Sharlatan Hellseher
2023-10-30  1:17       ` Sharlatan Hellseher
2024-01-13 21:05         ` Sharlatan Hellseher
2024-01-18 19:36           ` Maxim Cournoyer
2024-01-20 10:01             ` Sharlatan Hellseher
2024-02-13 14:45             ` Sharlatan Hellseher
2024-02-16 15:15               ` Maxim Cournoyer
2024-01-20 11:31           ` Christina O'Donnell
2024-01-20 12:26             ` Sharlatan Hellseher
2024-01-20 19:49               ` Christina O'Donnell
2024-01-20 18:33             ` Maxim Cournoyer
  -- strict thread matches above, loose matches on Subject: below --
2023-12-11  9:21 Sharlatan Hellseher
2024-01-29  0:34 Sharlatan Hellseher
2024-01-29 23:15 ` Christina O'Donnell
2024-02-05  0:19   ` Christina O'Donnell
2024-02-05 14:00     ` Sharlatan Hellseher
2024-02-05 18:44       ` Christina O'Donnell
2024-02-05 19:52         ` Sharlatan Hellseher

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).