devlog 0.3.3 → 0.3.5
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.
- checksums.yaml +4 -4
- data/.github/workflows/devlog_test.yml +28 -0
- data/.ruby-version +1 -3
- data/README.md +5 -6
- data/VERSION +1 -1
- data/bin/devlog +1 -0
- data/devlog.gemspec +11 -16
- data/lib/devlog.rb +21 -3
- data/lib/devlog_settings.rb +10 -0
- data/test/devlog_settings_test.rb +2 -0
- data/test/test_devlogs/.devlog.yml +2 -1
- data/test/test_devlogs/test_settings.yml +1 -1
- metadata +7 -7
- data/.travis.yml +0 -8
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: b1a45392960ca81bf6302d673596bf04eccd7a070b66cb51b23e9ba692b9ccac
|
4
|
+
data.tar.gz: d641ca12c1ecf98e909162c47b6ff4a62c7d75f917cfc9c78a061ce06b3bad28
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 2cf0628f73115547749bb7154aa7fc5711b87503afcb50109aef5905450b2fe25d09093f9fb4eab235bf58c2d5d0348ea6f2882389c16d37f79c7761282f90bb
|
7
|
+
data.tar.gz: 0e6be9b4a306be177a7234594c71c19962ea343773aec4ef5bd5fee04a3db4f18e9c7cb4c64278fa81a57c7e52d3058b3ae87750d1734d3e1ba284ebb3bcf0ee
|
@@ -0,0 +1,28 @@
|
|
1
|
+
name: devlog CI
|
2
|
+
|
3
|
+
on:
|
4
|
+
push:
|
5
|
+
branches: [ main ]
|
6
|
+
pull_request:
|
7
|
+
branches: [ main ]
|
8
|
+
|
9
|
+
jobs:
|
10
|
+
test:
|
11
|
+
|
12
|
+
runs-on: ubuntu-latest
|
13
|
+
|
14
|
+
strategy:
|
15
|
+
matrix:
|
16
|
+
ruby-version: [3.0.1, 2.7.3]
|
17
|
+
os: [ubuntu-latest, macOS-lates]
|
18
|
+
|
19
|
+
steps:
|
20
|
+
- uses: actions/checkout@v2
|
21
|
+
- name: Set up Ruby ${{ runner.os }}-§${{ matrix.ruby-version }}
|
22
|
+
uses: ruby/setup-ruby@477b21f02be01bcb8030d50f37cfec92bfa615b6
|
23
|
+
with:
|
24
|
+
ruby-version: ${{ matrix.ruby-version }}
|
25
|
+
- name: Install dependencies
|
26
|
+
run: bundle install
|
27
|
+
- name: Run tests
|
28
|
+
run: bundle exec rake
|
data/.ruby-version
CHANGED
data/README.md
CHANGED
@@ -28,15 +28,14 @@ like a book, top down, but always start a new session on top of the file, so tha
|
|
28
28
|
devlog DSL
|
29
29
|
==========
|
30
30
|
|
31
|
+
#DD.MM.YYYY HH:MM:SS CodingSession::END
|
31
32
|
|
32
|
-
|
33
|
+
devlog text...
|
33
34
|
|
34
|
-
|
35
|
+
#DD.MM.YYYY HH:MM:SS CodingSession::BEGIN
|
35
36
|
|
36
|
-
|
37
|
-
|
38
|
-
using the devlog binary
|
39
|
-
===================
|
37
|
+
using the devlog CLI
|
38
|
+
====================
|
40
39
|
|
41
40
|
to parse a devlog file explicitly:
|
42
41
|
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.3.
|
1
|
+
0.3.5
|
data/bin/devlog
CHANGED
data/devlog.gemspec
CHANGED
@@ -2,16 +2,16 @@
|
|
2
2
|
# DO NOT EDIT THIS FILE DIRECTLY
|
3
3
|
# Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
|
4
4
|
# -*- encoding: utf-8 -*-
|
5
|
-
# stub: devlog 0.3.
|
5
|
+
# stub: devlog 0.3.5 ruby lib
|
6
6
|
|
7
7
|
Gem::Specification.new do |s|
|
8
8
|
s.name = "devlog".freeze
|
9
|
-
s.version = "0.3.
|
9
|
+
s.version = "0.3.5"
|
10
10
|
|
11
11
|
s.required_rubygems_version = Gem::Requirement.new(">= 0".freeze) if s.respond_to? :required_rubygems_version=
|
12
12
|
s.require_paths = ["lib".freeze]
|
13
13
|
s.authors = ["mihael".freeze]
|
14
|
-
s.date = "
|
14
|
+
s.date = "2023-09-25"
|
15
15
|
s.description = "devlog.markdown time&space extractor".freeze
|
16
16
|
s.email = "kitschmaster@gmail.com".freeze
|
17
17
|
s.executables = ["devlog".freeze]
|
@@ -20,9 +20,9 @@ Gem::Specification.new do |s|
|
|
20
20
|
"README.md"
|
21
21
|
]
|
22
22
|
s.files = [
|
23
|
+
".github/workflows/devlog_test.yml",
|
23
24
|
".ruby-gemset",
|
24
25
|
".ruby-version",
|
25
|
-
".travis.yml",
|
26
26
|
"Gemfile",
|
27
27
|
"LICENSE",
|
28
28
|
"README.md",
|
@@ -64,23 +64,18 @@ Gem::Specification.new do |s|
|
|
64
64
|
]
|
65
65
|
s.homepage = "http://github.com/mihael/devlog".freeze
|
66
66
|
s.licenses = ["MIT".freeze]
|
67
|
-
s.rubygems_version = "3.
|
67
|
+
s.rubygems_version = "3.2.15".freeze
|
68
68
|
s.summary = "takes devlog.markdown and gives info".freeze
|
69
69
|
|
70
70
|
if s.respond_to? :specification_version then
|
71
71
|
s.specification_version = 4
|
72
|
+
end
|
72
73
|
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
else
|
79
|
-
s.add_dependency(%q<activesupport>.freeze, ["> 4.1"])
|
80
|
-
s.add_dependency(%q<test-unit>.freeze, ["~> 3.1"])
|
81
|
-
s.add_dependency(%q<jeweler>.freeze, ["~> 2.0"])
|
82
|
-
s.add_dependency(%q<nokogiri>.freeze, ["~> 1.8"])
|
83
|
-
end
|
74
|
+
if s.respond_to? :add_runtime_dependency then
|
75
|
+
s.add_runtime_dependency(%q<activesupport>.freeze, ["> 4.1"])
|
76
|
+
s.add_development_dependency(%q<test-unit>.freeze, ["~> 3.1"])
|
77
|
+
s.add_development_dependency(%q<jeweler>.freeze, ["~> 2.0"])
|
78
|
+
s.add_development_dependency(%q<nokogiri>.freeze, ["~> 1.8"])
|
84
79
|
else
|
85
80
|
s.add_dependency(%q<activesupport>.freeze, ["> 4.1"])
|
86
81
|
s.add_dependency(%q<test-unit>.freeze, ["~> 3.1"])
|
data/lib/devlog.rb
CHANGED
@@ -296,7 +296,7 @@ module Devlog
|
|
296
296
|
|
297
297
|
def weekly_pdf(tajm, weeks_from_now = 0, devlog_file = 'devlog.markdown')
|
298
298
|
require 'erb'
|
299
|
-
devlog_file = settings.
|
299
|
+
devlog_file = settings.devlog_file_setting || devlog_file
|
300
300
|
template = settings.has?(:weekly_timesheet_template) ? settings.weekly_timesheet_template : File.join(Devlog.path, 'templates', 'weekly_timesheet.erb.html')
|
301
301
|
convert_command = settings.has?(:convert_to_pdf_command) ? settings.convert_to_pdf_command : 'wkhtmltopdf'
|
302
302
|
puts "Using weekly template: #{template} #{settings.has?(:weekly_timesheet_template)}".green
|
@@ -400,6 +400,10 @@ module Devlog
|
|
400
400
|
all.first.zzbegin.strftime("%Y/%m/%d")
|
401
401
|
end
|
402
402
|
|
403
|
+
def ends_at
|
404
|
+
all.last.zzend.strftime("%Y/%m/%d")
|
405
|
+
end
|
406
|
+
|
403
407
|
def date
|
404
408
|
DateTime.current.strftime("%Y/%m/%d")
|
405
409
|
end
|
@@ -563,6 +567,10 @@ module Devlog
|
|
563
567
|
@zezzions.last # devlog_end
|
564
568
|
end
|
565
569
|
|
570
|
+
def last_payed_session
|
571
|
+
@zezzions.select{|zezzion| zezzion.payed_time<0}.first
|
572
|
+
end
|
573
|
+
|
566
574
|
# return all sessions
|
567
575
|
def devlog_sessions
|
568
576
|
@zezzions
|
@@ -622,11 +630,21 @@ module Devlog
|
|
622
630
|
s << ("begins at: #{current_day.begins_at}\n")
|
623
631
|
s << ("breaks: #{current_day.breaks_at}\n")
|
624
632
|
s << ("end_at: #{current_day.ends_at}\n")
|
625
|
-
s << ("sum: #{current_day_total_hours}\n")
|
633
|
+
s << ("sum: #{current_day_total_hours}h\n")
|
626
634
|
s << ("\n")
|
627
635
|
end
|
628
636
|
end
|
629
|
-
|
637
|
+
|
638
|
+
0.upto(5) do |week|
|
639
|
+
weekly_zezzions = zezzions_for_week(week, DateTime.current)
|
640
|
+
if weekly_zezzions.any?
|
641
|
+
sevendays = Sevendays.new(weekly_zezzions)
|
642
|
+
s << ("#{sevendays.begins_at}->#{sevendays.ends_at}: #{sevendays.total_hours_string}\n")
|
643
|
+
else
|
644
|
+
s << "No weekly sessions for week #{week}.\n"
|
645
|
+
end
|
646
|
+
end
|
647
|
+
s << "Last payed: #{last_payed_session.zzend.to_s(:long)}" if last_payed_session
|
630
648
|
end
|
631
649
|
s
|
632
650
|
end
|
data/lib/devlog_settings.rb
CHANGED
@@ -49,4 +49,14 @@ module Devlog
|
|
49
49
|
DEVLOG_FILE
|
50
50
|
end
|
51
51
|
end
|
52
|
+
|
53
|
+
def devlog_timezone_setting
|
54
|
+
return 'Amsterdam' unless settings
|
55
|
+
devlog_timezone_setting = settings['timezone']
|
56
|
+
if devlog_timezone_setting.present?
|
57
|
+
devlog_timezone_setting
|
58
|
+
else
|
59
|
+
'Amsterdam'
|
60
|
+
end
|
61
|
+
end
|
52
62
|
end
|
@@ -26,6 +26,8 @@ class DevlogSettingsTest < Test::Unit::TestCase
|
|
26
26
|
def test_loading_from_yaml
|
27
27
|
assert(settings.devlog_file == 'development_log.markdown',
|
28
28
|
'example setting should be loaded')
|
29
|
+
assert(settings.timezone == 'Amsterdam',
|
30
|
+
'example setting should be loaded')
|
29
31
|
end
|
30
32
|
|
31
33
|
def test_devlog_file_setting_returns_default_when_overriden_devlog_file_does_not_exist
|
@@ -1 +1,2 @@
|
|
1
|
-
devlog_file: "test/test_devlogs/test_devlog.markdown"
|
1
|
+
devlog_file: "test/test_devlogs/test_devlog.markdown"
|
2
|
+
timezone: 'Ljubljana'
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: devlog
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.3.
|
4
|
+
version: 0.3.5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- mihael
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2023-09-25 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activesupport
|
@@ -75,9 +75,9 @@ extra_rdoc_files:
|
|
75
75
|
- LICENSE
|
76
76
|
- README.md
|
77
77
|
files:
|
78
|
+
- ".github/workflows/devlog_test.yml"
|
78
79
|
- ".ruby-gemset"
|
79
80
|
- ".ruby-version"
|
80
|
-
- ".travis.yml"
|
81
81
|
- Gemfile
|
82
82
|
- LICENSE
|
83
83
|
- README.md
|
@@ -120,7 +120,7 @@ homepage: http://github.com/mihael/devlog
|
|
120
120
|
licenses:
|
121
121
|
- MIT
|
122
122
|
metadata: {}
|
123
|
-
post_install_message:
|
123
|
+
post_install_message:
|
124
124
|
rdoc_options: []
|
125
125
|
require_paths:
|
126
126
|
- lib
|
@@ -135,8 +135,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
135
135
|
- !ruby/object:Gem::Version
|
136
136
|
version: '0'
|
137
137
|
requirements: []
|
138
|
-
rubygems_version: 3.
|
139
|
-
signing_key:
|
138
|
+
rubygems_version: 3.2.15
|
139
|
+
signing_key:
|
140
140
|
specification_version: 4
|
141
141
|
summary: takes devlog.markdown and gives info
|
142
142
|
test_files: []
|