Skip to content

Releases: maragudk/gomponents

v1.3.0 - the "fix a lot of stuff and make it faster" release

Choose a tag to compare

@markuswustenberg markuswustenberg released this 14 Apr 08:30
09f36dc

So many changes! Thank you to all contributors, you're great! 😎

Here are the highlights:

  • @Hendrikto found some nice performance improvements by introducing an internal raw type, that you'll get automatically by just keeping on using the Text/Textf and Raw/Rawf functions. He also fixed the benchmarks, which turned out to actually measure the wrong thing because of behind-the-scenes compiler optimizations in the benchmark code itself. Thanks, @Hendrikto!
  • I've added a new experimental x/slices package, as a way of letting people have the Map/Filter/Reduce workflow that's been requested so many times over the years. Note that the x package is for experimental stuff, so it doesn't have the same compatibility guarantees as the rest of the gomponents module.

There are a lot of smaller additions, fixes, and performance improvements. See the full list below.

Again, thank you to all contributors!

PS: You'll notice my coding agent @maragubot as a contributor. Rest assured, I still review and merge all changes to gomponents manually.

What's Changed

New Contributors

Full Changelog: v1.2.0...v1.3.0

v1.2.0 - `components.JoinAttrs` and performance improvements

Choose a tag to compare

@markuswustenberg markuswustenberg released this 19 Aug 13:09
b0cec2c

This change adds a new components.JoinAttrs component, which is useful for joining attribute values (such as the often requested class attribute merging).

Also, contributors added some missing/new HTML elements and attributes. Thanks!

Also, some performance improvements, which should help with less memory allocation especially in newer Go versions.

What's Changed

New Contributors

Full Changelog: v1.1.0...v1.2.0

v1.1.0 - Many small additions and improvements

Choose a tag to compare

@markuswustenberg markuswustenberg released this 05 Mar 11:48
1e222b6

Thanks to all the new contributors, you're awesome! 😎

What's Changed

New Contributors

Full Changelog: v1.0.0...v1.1.0

v1.0.0 - the v1 🥳🎉 release

Choose a tag to compare

@markuswustenberg markuswustenberg released this 11 Oct 08:51
e53dba6

This marks release v1.0.0, which means I'm committed to no more breaking changes.
Congratulations, you now have a totally stable, dependency-free HTML component library for your Go project! 😁

What's Changed

New Contributors

Full Changelog: v0.22.0...v1.0.0

v1.0.0-beta1 - The API is now stable!

Pre-release

Choose a tag to compare

@markuswustenberg markuswustenberg released this 03 Oct 09:46

This release marks the first beta of a 1.0.0 release. This means that I'm committed to this API going forward,
and breaking changes will only happen in a v2 that hopefully will never come.

The only major change from v0.22.0 is that the module is in a new namespace: maragu.dev/gomponents
Because of Go module dependency pinning and the Go module proxy, I don't think this will have much of an impact on people using the library, but I'm being cautious with a beta release and testing things extensively.

If you find any issues, please report them, either on the discussion attached to this release, or open a separate issue.

What's Changed

Full Changelog: v0.22.0...v1.0.0-beta1

v0.22.0 - the "remove SVG package" release

Choose a tag to compare

@markuswustenberg markuswustenberg released this 03 Oct 08:57
a58043d

The svg package is no more. Note that the html.SVG element still exists, and SVGs can easily be embedded in the HTML using g.Raw.

What's Changed

Full Changelog: v0.21.0...v0.22.0

v0.21.0 - the "Groups are just slices" release

Choose a tag to compare

@markuswustenberg markuswustenberg released this 24 Sep 08:38
04640fc

Group is now a type instead of a function, which is technically a breaking change, but is not expected to impact many codebases, if any at all. Special thanks to @deitrix for suggesting this design! 😎

What's Changed

Full Changelog: v0.20.5...v0.21.0

v0.20.5 - Make Groups renderable

Choose a tag to compare

@markuswustenberg markuswustenberg released this 19 Sep 15:03
c97605a

What's Changed

New Contributors

Full Changelog: v0.20.4...v0.20.5

v0.20.4 the "Iff, no really only if" release

Choose a tag to compare

@markuswustenberg markuswustenberg released this 26 Jun 10:35
8b43a90

This release adds the Iff function, which takes a callback function instead of the Node that regular If does, for those cases where you need to conditionally add components but they can fail for some reason (but usually nil pointer panics). Thanks, @JulienTant!

What's Changed

New Contributors

Full Changelog: v0.20.3...v0.20.4

v0.20.3 - the "opinionated node name collision choice" release

Choose a tag to compare

@markuswustenberg markuswustenberg released this 06 Jun 11:34
b950ec2

What's Changed

  • Deprecate DataAttr, StyleAttr, TitleAttr, FormEl by @markuswustenberg in #174
    This doesn't mean those elements and attributes have gone away, but that I've chosen one to be the "main" version without a suffix.
    See the PR at #174 and the issue at #170 for a discussion and the chosen solution.
    This is a non-breaking change, and the deprecated nodes will stay, probably forever.
  • Add script's integrity and crossorigin attributes by @JulienTant in #173
  • Add LabelAttr and List attributes by @markuswustenberg in #175

New Contributors

Full Changelog: v0.20.2...v0.20.3