From e91d303f057461ba984d22713140ff009cea5d22 Mon Sep 17 00:00:00 2001 From: Francisco Date: Thu, 11 Sep 2025 16:59:22 +0700 Subject: [PATCH 1/2] feature: reverse slice --- slice.go | 9 +++++++++ slice_test.go | 14 ++++++++++++++ 2 files changed, 23 insertions(+) diff --git a/slice.go b/slice.go index edf99e9..b44e9c4 100644 --- a/slice.go +++ b/slice.go @@ -206,3 +206,12 @@ func ConvertSlice[T1 any, T2 any](in []T1, converter func(T1) T2) []T2 { } return res } + +// ReverseSlice :nodoc: +func ReverseSlice[T any](in []T) []T { + reversed := make([]T, 0) + for i := len(in) - 1; i >= 0; i-- { + reversed = append(reversed, in[i]) + } + return reversed +} diff --git a/slice_test.go b/slice_test.go index 653c6c5..7a1ed15 100644 --- a/slice_test.go +++ b/slice_test.go @@ -235,3 +235,17 @@ func Test_ConvertSliceType(t *testing.T) { assert.Equal(t, dstSlice, ConvertSlice(srcSlice, strings.TrimSpace)) }) } + +func Test_ReverseSlice(t *testing.T) { + t.Run("success", func(t *testing.T) { + source := []int{1, 2, 3, 4, 5} + dest := []int{5, 4, 3, 2, 1} + assert.Equal(t, dest, ReverseSlice(source)) + }) + + t.Run("empty slice", func(t *testing.T) { + source := []int{} + dest := []int{} + assert.Equal(t, dest, ReverseSlice(source)) + }) +} From 395aa1b39ef1f50290608e155ab1a251c815e776 Mon Sep 17 00:00:00 2001 From: Francisco Date: Thu, 11 Sep 2025 17:07:34 +0700 Subject: [PATCH 2/2] bump: update changelog --- CHANGELOG.md | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 2fd586c..d231b46 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,9 +1,21 @@ # go-utils + +## [v1.41.0] - 2025-09-11 +### New Features +- reverse slice + + + +## [v1.40.2] - 2025-06-10 +### Fixes +- handle space on node link ([#70](https://github.com/kumparan/go-utils/issues/70)) + + ## [v1.40.1] - 2025-04-24 ### Fixes -- force jpeg on push notif image for better compression +- force jpeg on push notif image for better compression ([#69](https://github.com/kumparan/go-utils/issues/69)) @@ -363,7 +375,9 @@ - init go-utils -[Unreleased]: https://github.com/kumparan/go-utils/compare/v1.40.1...HEAD +[Unreleased]: https://github.com/kumparan/go-utils/compare/v1.41.0...HEAD +[v1.41.0]: https://github.com/kumparan/go-utils/compare/v1.40.2...v1.41.0 +[v1.40.2]: https://github.com/kumparan/go-utils/compare/v1.40.1...v1.40.2 [v1.40.1]: https://github.com/kumparan/go-utils/compare/v1.40.0...v1.40.1 [v1.40.0]: https://github.com/kumparan/go-utils/compare/v1.39.6...v1.40.0 [v1.39.6]: https://github.com/kumparan/go-utils/compare/v1.39.5...v1.39.6