det.social is one of the many independent Mastodon servers you can use to participate in the fediverse.
Mastodon Server des Unterhaltungsfernsehen Ehrenfeld zum dezentralen Diskurs.

Administered by:

Server stats:

1.8K
active users

#golang

47 posts29 participants0 posts today

ZenZX beeper audio

Not much to show, and it's not high quality audio but it's pitch perfect and speed perfect, which is hard to get right the first time!

It may look simple but the differences between the original physical beeper (controlled by a Z80!) and a modern audio synthesis system are so vast it's hard to believe this is even possible.

#ZenZX#Zen80#z80

We've got stripes! All of them now!

I actually replicate the pattern until the border is filled vertically.
Tape loading still doesn't work well for 128k games, which in turn prevents me from hearing much music, which prevents me from improving AY-3-8912 audio playback. I will probably resort to transcribing some music to PLAY commands myself, and trying the old synthesis commands. I can work the fine detail of tape loading at a later time.

🎉 New release (v2.4) of golangci-lint!

What's new?
- go1.25 support
- new documentation website (with search engine and more)
- as usual several improvements and bug fixes to linters

golangci-lint.run/docs/product

golangci-lint.runChangelogFollow the news and releases on Mastodon and on Bluesky. golangci-lint is a free and open-source project built by volunteers. If you value it, consider supporting us, we appreciate it! Donate ❤️ v2.4.0 Enhancements 🎉 go1.25 support Linters new features or changes exhaustruct: from v3.3.1 to 4.0.0 (new options: allow-empty, allow-empty-rx, allow-empty-returns, allow-empty-declarations) Linters bug fixes godox: trim filepath from report messages staticcheck: allow empty options tagalign: from 1.4.2 to 1.4.3 Documentation 🌟 New website (with a search engine) v2.3.1 Linters bug fixes gci: from 0.13.6 to 0.13.7 gosec: from 2.22.6 to 2.22.7 noctx: from 0.3.5 to 0.4.0 wsl: from 5.1.0 to 5.1.1 tagliatelle: force upper case for custom initialisms v2.3.0 Linters new features or changes ginkgolinter: from 0.19.1 to 0.20.0 (new option: force-assertion-description) iface: from 1.4.0 to 1.4.1 (report message improvements) noctx: from 0.3.4 to 0.3.5 (new detections: log/slog, exec, crypto/tls) revive: from 1.10.0 to 1.11.0 (new rule: enforce-switch-style) wsl: from 5.0.0 to 5.1.0 Linters bug fixes gosec: from 2.22.5 to 2.22.6 noinlineerr: from 1.0.4 to 1.0.5 sloglint: from 0.11.0 to 0.11.1 Misc. fix: panic close of closed channel v2.2.2 Linters bug fixes noinlineerr: from 1.0.3 to 1.0.4 Documentation Improve debug keys documentation Misc. fix: panic close of closed channel godot: add noinline value into the JSONSchema v2.2.1 Linters bug fixes varnamelen: fix configuration v2.2.0 New linters Add arangolint linter https://github.com/Crocmagnon/arangolint Add embeddedstructfieldcheck linter https://github.com/manuelarte/embeddedstructfieldcheck Add noinlineerr linter https://github.com/AlwxSin/noinlineerr Add swaggo formatter https://github.com/golangci/swaggoswag Linters new features or changes errcheck: add verbose option funcorder: from 0.2.1 to 0.5.0 (new option alphabetical) gomoddirectives: from 0.6.1 to 0.7.0 (new option ignore-forbidden) iface: from 1.3.1 to 1.4.0 (new option unexported) noctx: from 0.1.0 to 0.3.3 (new report messages, and new rules related to database/sql) noctx: from 0.3.3 to 0.3.4 (new SQL functions detection) revive: from 1.9.0 to 1.10.0 (new rules: time-date, unnecessary-format, use-fmt-print) usestdlibvars: from 1.28.0 to 1.29.0 (new option time-date-month) wsl: deprecation wsl_v5: from 4.7.0 to 5.0.0 (major version with new configuration) Linters bug fixes dupword: from 0.1.3 to 0.1.6 exptostd: from 0.4.3 to 0.4.4 forbidigo: from 1.6.0 to 2.1.0 gci: consistently format the code go-spancheck: from 0.6.4 to 0.6.5 goconst: from 1.8.1 to 1.8.2 gosec: from 2.22.3 to 2.22.4 gosec: from 2.22.4 to 2.22.5 makezero: from 1.2.0 to 2.0.1 misspell: from 0.6.0 to 0.7.0 usetesting: from 0.4.3 to 0.5.0 Misc. exclusions: fix path-expect formatters: write the input to stdout when using stdin and there are no changes migration: improve the error message when trying to migrate a migrated config typecheck: deduplicate errors typecheck: stops the analysis after the first error Deprecate print-resources-usage flag Unique version per custom build Documentation Improves typecheck FAQ Adds plugin systems recommendations Add description for linters.default sets v2.1.6 Linters bug fixes godot: from 1.5.0 to 1.5.1 musttag: from 0.13.0 to 0.13.1 Documentation Add note about golangci-lint v2 integration in VS Code v2.1.5 Due to an error related to Snapcraft, some artifacts of the v2.1.4 release have not been published.

I can't believe I'm still doing this. Anyway, it now has sound. Not perfect sound, but pitch-accurate sound at least, using ebitengine's excellent package 'oto'
github.com/ebitengine/oto

Accurate enough to identify a tune, possibly less accurate AY-3-8912 streaming, but I designed an audio manager with a proper pipeline, a ringbuffer and independent volume channels going into a mixer. That made replacing the audio backend quite straightforward. Sophisticated for this kind of project, perhaps unnecessary, but that was part of the fun too.

#go / #golang folks. If any of you is still using my `github.com/tealeg/xlsx` library (>6k stars suggest some of you are), please note that it has now been migrated to `codeberg.org/tealeg/xlsx` and bumped to v4 (to reflect the incompatibility of this path change).

The old #GitHub repo is now archived. It will still work in your code, but no further attention or work will happen there. Please create your issues and PRs at #Codeberg instead.

codeberg.org/tealeg/xlsx

Summary card of repository tealeg/xlsx
Codeberg.orgxlsxGo library for reading and writing XLSX files.

Bis zu 40 Prozent weniger Overhead: Go 1.25 mit neuem Garbage Collector

Der neue, experimentelle Garbage Collector soll den Overhead deutlich reduzieren. Weitere Updates gibt es auch für Tools, Libraries, Runtime und Compiler.

heise.de/news/Bis-zu-40-Prozen

heise online · Bis zu 40 Prozent weniger Overhead: Go 1.25 mit neuem Garbage CollectorBy Maika Möbus
#GoogleGo#GoLang#IT

TL;DR: github.com/git-bug/git-bug

For the people wondering for some alternative to GitHub. Enough people on mastodon already talk about Codeberg, so I won't link to it (I host my own gitea, and I will move to forgejo when I have time, so I approve).

But as Git was made decentralized, have you heard about Git Bug? It's a tool that allows you to store issues directly into git objects. So you decentralized your issues as well, and they get passed by cloning and synchronizing between clones and hosts.

github.com/git-bug/git-bug

I would love to have time to add some PR mechanism, which would be some contextual comments on a branch (linked to specific lines of code)

Distributed, offline-first bug tracker embedded in git - git-bug/git-bug
GitHubGitHub - git-bug/git-bug: Distributed, offline-first bug tracker embedded in gitDistributed, offline-first bug tracker embedded in git - git-bug/git-bug