fewald-worklog 0.2.1 → 0.2.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (5) hide show
  1. checksums.yaml +4 -4
  2. data/.version +1 -1
  3. data/lib/daily_log.rb +12 -0
  4. data/lib/version.rb +5 -0
  5. metadata +1 -1
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 6dfe82763d0872a3c92d8df46abb164b8a40cbebd9c9f69ee678861d56fd6933
4
- data.tar.gz: d30d1d630b209c882f3f707b0af12f49a6cde2c9561f4c454958983baa0eb602
3
+ metadata.gz: a96472b19aed7c8be5089c026c81feb764d2b48a2694fd77d7cbbe10cc116639
4
+ data.tar.gz: 879af891f9009e3c0afe477d4cab68404970647e35a4d82cc8f30f2e3d54964d
5
5
  SHA512:
6
- metadata.gz: 7db2e0df84b61045b6bb2eb1ef28d34eadbae455071ba281cceea457616446aa7cbf9dcda02d4ce3472b4008d8c4dfd977be99e6eab328ed4d78cbbb11c34877
7
- data.tar.gz: 1dc3e202e93f1a14257653fad55fad124834fd7b081773e01615a2678a45fa76bfd9c90e7af4b285c40c5a4b83da9f48feed6a62e31326d4998c3edac1db5864
6
+ metadata.gz: 5a2e2329393e493c533cd092eda4ca1a3db201a36224d80a332eca08f0a1355c1aa61df608388c9d316410715aed7bfdc1b01298004a7a9f24d9fb440d49c69f
7
+ data.tar.gz: a16ffafc2dafae3796d013f01ec860c1a5b79fd61c81569c1f15ead531632a055c3455d9720c2c295d1bad8cdc32cb6d311db6fec32ca0606517effa953db3ce
data/.version CHANGED
@@ -1 +1 @@
1
- 0.2.1
1
+ 0.2.3
data/lib/daily_log.rb CHANGED
@@ -29,6 +29,18 @@ class DailyLog
29
29
  entries.map(&:people).flatten.tally
30
30
  end
31
31
 
32
+ # Returns a sorted list of tags used in the entries for the current day.
33
+ #
34
+ # @return [Array<String>]
35
+ #
36
+ # @example
37
+ # log = DailyLog.new(date: Date.today,
38
+ # entries: [LogEntry.new(message: "Work on something", tags: ['work', 'project'])])
39
+ # log.tags # => ["project", "work"]
40
+ def tags
41
+ entries.flat_map(&:tags).uniq.sort
42
+ end
43
+
32
44
  def ==(other)
33
45
  date == other.date && entries == other.entries
34
46
  end
data/lib/version.rb CHANGED
@@ -15,6 +15,11 @@ end
15
15
  # @param part [String] The part of the version to increment.
16
16
  # @return [String] The incremented version.
17
17
  def increment_version(version, part = 'patch')
18
+ raise ArgumentError if version.nil? || version.empty? || !version.match?(/^\d+\.\d+\.\d+$/)
19
+
20
+ # Validate the part to increment
21
+ raise ArgumentError, "Invalid part: #{part}" unless %w[major minor patch].include?(part)
22
+
18
23
  major, minor, patch = version.split('.').map(&:to_i)
19
24
  case part
20
25
  when 'major'
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: fewald-worklog
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.1
4
+ version: 0.2.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Friedrich Ewald