Skip Navigation
sbinet sbinet @lemmy.ml
Posts 14
Comments 2

peertube: a (simple) Go client for PeerTube

hi there,

just a quick message to announce my latest small pet project of the week :

  • https://sr.ht/~sbinet/peertube

A simple (and incomplete) Go client for PeerTube[1] (an alternative to Big Tech's video platforms).

Right now, the client can:

  • authenticate with a PeerTube server,
  • list accounts,
  • list videos for a given account,
  • upload videos for a given account,
  • remove videos for a given accounts.

There's also a simple peertube-cli command-line program to perform the things above:

```sh $> go install git.sr.ht/~sbinet/peertube/cmd/peertube-cli $> peertube-cli help peertube-cli - runs peertube-cli commands and sub-commands

Commands:

auth-add authenticate with a PeerTube server auth-ls list the known PeerTube servers auth-rm remove a PeerTube login video-ls list video(s) from a PeerTube server video-upload upload a video to a PeerTube server

Use "peertube-cli help <command>" for more information about a command. ```

It's not much, but it allowed me to ease the day-to-day work of uploading audio files for a podcast I am maintaining and authoring.

hth, -s

[1]: https://joinpeertube.org/

0

GopherConAU 2023 video track

Here is the full playlist from the GopherConAU 2023 conference:

  • https://invidious.fdn.fr/playlist?list=PLN_36A3Rw5hFsJqqs7olOAxxU-WJGlXS0
0

proposal: review meeting minutes

github.com proposal: review meeting minutes 路 Issue #33502 路 golang/go

The proposal review group meets regularly (roughly weekly) to review pending proposal issues and move them along in the proposal process. Review consists primarily of checking that discussion is on...

proposal: review meeting minutes 路 Issue #33502 路 golang/go

Your weekly appointment with the latest news about accepted/declined proposals.

  • https://github.com/golang/go/issues/33502#issuecomment-1662728074
0

Preview: ranging over functions in Go

A major Go language change proposal was published earlier this week: add range over int, range over func, and there's a good chance this change will make it into a future Go release. In this post I will discuss the motivation for this proposal, how it's going to work, and provide some examples of how Go code using it would look.

0
docs.google.com Go 1.22 inlining overhaul

Go 1.22 inlining overhaul , with contributions from , , , and Last update: The Go compiler鈥檚 inliner has never been particularly good. It wasn鈥檛 until Go 1.12, released in 2019, that the Go compiler supported inlining more than leaf functions, and we鈥檝e slowly chipped away at more limita...

Go 1.22 inlining overhaul

The Go compiler鈥檚 inliner has never been particularly good. It wasn鈥檛 until Go 1.12, released in 2019, that the Go compiler supported inlining more than leaf functions, and we鈥檝e slowly chipped away at more limitations of the inliner over the years (it started inlining functions with for loops in early 2021!). Go 1.20, released in February 2023, added support for basic profile-guided inlining, the most significant change to Go鈥檚 inlining policy since 1.12.

[...]

The rest of this document lays out a set of considerations for a redesign of Go鈥檚 inlining policy.

https://docs.google.com/document/d/1a6p7-nbk5PVyM1S2tmccFrrIuGzCyzclstBtaciHxVw/edit

1
Show off your project(s)!
    • star-tex: a TeX engine written in Go (automatically translated from Knuth's WEB description)
    • varda: a WIP photo/video album handler
    • odf: an OpenDocument format handler
  • proposal: review meeting minutes

    github.com proposal: review meeting minutes 路 Issue #33502 路 golang/go

    The proposal review group meets regularly (roughly weekly) to review pending proposal issues and move them along in the proposal process. Review consists primarily of checking that discussion is on...

    proposal: review meeting minutes 路 Issue #33502 路 golang/go

    Your weekly appointment with the latest news about accepted/declined proposals.

    Noteworthy accepted proposal:

    0

    Coroutines for Go

    Why we need coroutines for Go, and what they might look like.

    Another great post from Russ Cox, in his series on iterators and coroutines.

    https://research.swtch.com/coro

    0

    Storing Data in Control Flow

    Write programs, not simulations of programs.

    A great post from Russ Cox, setting the scene for his work on iterators and coroutines.

    https://research.swtch.com/pcdata

    0
    modern-c.blogspot.com ccgo/v4 experiment: Trying the new runtime.Pinner

    tl;dr: Looking forward future Pinner.Pin 聽performance improvements. The upcoming Go version 1.21, scheduled for release next month, is curre...

    tl;dr: Looking forward future Pinner.Pin performance improvements.

    The upcoming Go version 1.21, scheduled for release next month, is currently available for download as Go 1.21rc2 in the "Unstable version" section here. Go 1.21 introduces a new runtime type, Pinner.

    ccgo/v4, the next, also not yet released version of the C to Go transpiler, uses pinning to "freeze" addresses of local Go variables, addresses of which are passed around in the original C code. ccgo produces Go code where any C pointer points to memory not managed by the Go runtime. So ccgo simply puts such "escaping" variables in the memory not visible to the garbage collector, with stable, immovable addresses. Those are provided by the modernc.org/memory package. Otherwise a goroutine stack resizing can change the address of a local variable.

    0

    proposal: review meeting minutes

    github.com proposal: review meeting minutes 路 Issue #33502 路 golang/go

    The proposal review group meets regularly (roughly weekly) to review pending proposal issues and move them along in the proposal process. Review consists primarily of checking that discussion is on...

    proposal: review meeting minutes 路 Issue #33502 路 golang/go

    Your weekly appointment with the latest news about accepted/declined proposals.

    0

    md2spip: a simple Markdown to SPIP converter

    godocs.io Command md2spip

    Command md2spip converts a Markdown document to SPIP.

    A very simple-minded CommonMark to SPIP converter.

    SPIP is a rather popular french CMS, with its own wiki-like syntax to author documents.

    0

    proposal: review meeting minutes

    github.com proposal: review meeting minutes 路 Issue #33502 路 golang/go

    The proposal review group meets regularly (roughly weekly) to review pending proposal issues and move them along in the proposal process. Review consists primarily of checking that discussion is on...

    proposal: review meeting minutes 路 Issue #33502 路 golang/go

    Your weekly appointment with the latest news about accepted/declined proposals.

    0

    proposal: review meeting minutes

    github.com proposal: review meeting minutes 路 Issue #33502 路 golang/go

    The proposal review group meets regularly (roughly weekly) to review pending proposal issues and move them along in the proposal process. Review consists primarily of checking that discussion is on...

    proposal: review meeting minutes 路 Issue #33502 路 golang/go

    Your weekly appointment with the latest news about accepted/declined proposals.

    0

    odt: an OpenOffice document parser

    hi there,

    I've just cut [email protected], an OpenOffice document parser, "automatically" generated from the RelaxNG specification document.

    odt also provides odt2md, a command that tries its best to convert an ODT file into a CommonMark one.

    ``` $> go install sbinet.org/x/odt/cmd/odt2md@latest $> odt2md -h odt2md converts an ODT document into a CommonMark one.

    Usage: odt2md [OPTIONS] [INPUT.odt]

    Example:

    $> odt2md input.odt $> odt2md input.odt > out.md $> odt2md -o out.md input.odt $> odt2md < input.odt > out.md $> odt2md -o out.md < input.odt

    Options: -o string path to output CommonMark file

    $> odt2md ./testdata/simple.odt

    Title

    Hello World!

    ```

    0
    Websockets - Gorilla only?
  • I guess it's because gorilla/websocket has had a really big mindshare for a very long time. and no project has had time to catch up and/or provide "reliable" hints that they will maintain that new project for a sizeable long time.

    "the devil you know" and "the technical debt you know"...