friends 0.47 → 0.52
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/CONTRIBUTING.md +41 -36
- data/.github/FUNDING.yml +4 -0
- data/.github/ISSUE_TEMPLATE.md +1 -6
- data/.rubocop.yml +20 -5
- data/.travis.yml +5 -5
- data/CHANGELOG.md +78 -10
- data/Gemfile +2 -4
- data/README.md +31 -28
- data/RELEASING.md +1 -1
- data/bin/friends +3 -7
- data/friends.gemspec +3 -5
- data/friends.md +2 -2
- data/lib/friends/commands/edit.rb +1 -1
- data/lib/friends/commands/update.rb +2 -2
- data/lib/friends/event.rb +4 -4
- data/lib/friends/friend.rb +20 -13
- data/lib/friends/graph.rb +1 -1
- data/lib/friends/introvert.rb +47 -9
- data/lib/friends/location.rb +1 -1
- data/lib/friends/post_install_message.rb +1 -2
- data/lib/friends/regex_builder.rb +8 -8
- data/lib/friends/sem_ver_comparator.rb +20 -0
- data/lib/friends/serializable.rb +1 -1
- data/lib/friends/version.rb +1 -1
- data/test/add_event_helper.rb +59 -3
- data/test/commands/add/activity_spec.rb +294 -0
- data/test/commands/edit_spec.rb +33 -2
- data/test/commands/graph_spec.rb +4 -4
- data/test/commands/list/activities_spec.rb +55 -25
- data/test/commands/list/favorite/friends_spec.rb +1 -1
- data/test/commands/list/favorite/locations_spec.rb +8 -8
- data/test/commands/list/locations_spec.rb +1 -1
- data/test/commands/remove/tag_spec.rb +9 -0
- data/test/commands/rename/friend_spec.rb +2 -2
- data/test/commands/suggest_spec.rb +2 -2
- data/test/editor +2 -0
- data/test/helper.rb +7 -7
- metadata +7 -25
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 57f457698261d056ca29ea09b153b0917cfebc74dd1c6abf735342d4fa52aa76
|
4
|
+
data.tar.gz: 47435bd44eda4f24f31f61df3cd84a7d4930fa92def6cc68b2b1111f9322a998
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 4c9500e8446cccad117a7110fb92f8f2871a7793f175e403100eae3455aeff473013c1fe0218481985d8a88b5949274501686187f05c0fac1aa4233b4175c1ad
|
7
|
+
data.tar.gz: 18ed3d0414a30c3d21350c8190bd6b56b7caec077592e8e32952abb6570aa9f3ea26b80d6c54d381aa8f7bdedbb10ec494166e8ed5c347fd1d19f875bcd384cf
|
data/.github/CONTRIBUTING.md
CHANGED
@@ -4,29 +4,44 @@ If you're reading this, it means you want to contribute to this project. Hooray!
|
|
4
4
|
|
5
5
|
Here's what to do:
|
6
6
|
|
7
|
-
1.
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
2.
|
13
|
-
3.
|
14
|
-
4.
|
15
|
-
|
16
|
-
5.
|
17
|
-
|
18
|
-
6.
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
7
|
+
1. If you're looking for a task to work on, check the
|
8
|
+
["up-for-grabs" issues](https://github.com/JacobEvelyn/friends/labels/upforgrabs). If you see something there that catches your
|
9
|
+
eye, leave a comment indicating you'll work on it and
|
10
|
+
it's yours! If you already have something to work on,
|
11
|
+
that's great as well!
|
12
|
+
2. Fork the repository (https://github.com/JacobEvelyn/friends/fork).
|
13
|
+
3. Clone your forked repository.
|
14
|
+
4. From within the repository directory, run
|
15
|
+
`bundle install` to install all dependencies needed for development.
|
16
|
+
5. Create your feature branch
|
17
|
+
(`git checkout -b my-new-feature`).
|
18
|
+
6. Make your changes. Add or modify tests if necessary!
|
19
|
+
- Run tests with `bundle exec rake test`. To run a subset of tests:
|
20
|
+
1. temporarily add this to `friends.gemspec`:
|
21
|
+
|
22
|
+
|
23
|
+
```ruby
|
24
|
+
spec.add_development_dependency "minitest-focus"
|
25
|
+
```
|
26
|
+
2. Re-run `bundle install` to install `minitest-focus`.
|
27
|
+
3. Replace the `it` for the test(s) you want to run with:
|
28
|
+
|
29
|
+
|
30
|
+
```ruby
|
31
|
+
require "minitest/focus" ; focus ; it
|
32
|
+
```
|
33
|
+
4. Run tests as usual with `bundle exec rake test`.
|
34
|
+
5. Don't forget to remove these debugging lines when you're done!
|
35
|
+
- You can run your version of the `friends` script with `bundle exec bin/friends`.
|
36
|
+
- Do your best to conform to existing style and commenting patterns.
|
37
|
+
7. Update the `README.md` as necessary to include your changes.
|
38
|
+
8. Check your changes for code style by running `bundle exec rubocop .` in
|
39
|
+
the repository directory. You may see output indicating that some lines
|
40
|
+
differ from the style guidelines. Change your code so that Rubocop gives
|
41
|
+
no warnings or errors (and don't hesitate to reach out if you don't know how!—this practice is meant to keep the code clean but it shouldn't be
|
42
|
+
scary and it's totally fine to need help!).
|
43
|
+
9. Commit your changes
|
44
|
+
(`git commit -am "Add some feature"`).
|
30
45
|
10. Push your changes to GitHub, and open a pull request.
|
31
46
|
11. Your code will be reviewed and merged as quickly as
|
32
47
|
possible!
|
@@ -45,19 +60,9 @@ If you're a polite, reasonable person you won't have any issues!
|
|
45
60
|
|
46
61
|
## Financial contributions
|
47
62
|
|
48
|
-
`friends` is a volunteer project. If you find it
|
49
|
-
making a small donation (🙏)
|
50
|
-
|
51
|
-
👇 Donate with these buttons! 👇
|
52
|
-
|
53
|
-
[/badge.svg>)](https://opencollective.com/friends#backer) [/badge.svg>)](https://opencollective.com/friends#sponsor)
|
54
|
-
[](https://www.patreon.com/jacobevelyn)
|
55
|
-
[](https://liberapay.com/jacobevelyn/donate)
|
56
|
-
[](https://www.paypal.com/cgi-bin/webscr?cmd=_donations&business=jacobevelyn%40gmail%2ecom&lc=US&item_name=Development%20of%20JacobEvelyn%2ffriends%20%28GitHub%20repository%29&no_note=0¤cy_code=USD&bn=PP%2dDonationsBF%3abtn_donate_SM%2egif%3aNonHostedGuest)
|
57
|
-
[](https://flattr.com/submit/auto?user_id=jacobevelyn&url=https://github.com/JacobEvelyn/friends&title=friends&tags=github&category=software)
|
58
|
-
[](https://nrobinson2000.github.io/donate-bitcoin?address=1CFu6gWpmS89EnitPPdYssZhFMRWx5qhW4&amount=10&name=support-friends-development)
|
59
|
-
|
60
|
-
👆 Donate with these buttons! 👆
|
63
|
+
`friends` is a volunteer project. If you find it valuable, please consider
|
64
|
+
making a small donation (🙏) with the **Sponsor** button at the top of this page
|
65
|
+
to show you appreciate its continued development.
|
61
66
|
|
62
67
|
## Contributors
|
63
68
|
|
data/.github/FUNDING.yml
ADDED
data/.github/ISSUE_TEMPLATE.md
CHANGED
@@ -1,6 +1 @@
|
|
1
|
-
<!-- Love friends? Please consider making a small donation (🙏) to show you appreciate its continued development
|
2
|
-
|
3
|
-
👉 https://opencollective.com/friends/donate
|
4
|
-
👉 https://www.patreon.com/jacobevelyn
|
5
|
-
👉 https://liberapay.com/jacobevelyn/donate
|
6
|
-
👉 ...or for more ways to donate (PayPal, Flattr, Bitcoin) see the README. -->
|
1
|
+
<!-- Love friends? Please consider making a small donation (🙏) with the **Sponsor** button at the top of this page to show you appreciate its continued development! 💝 -->
|
data/.rubocop.yml
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
AllCops:
|
2
|
-
TargetRubyVersion: 2.
|
2
|
+
TargetRubyVersion: 2.3
|
3
3
|
|
4
4
|
Gemspec/RequiredRubyVersion:
|
5
5
|
Enabled: false
|
@@ -10,9 +10,18 @@ Layout/ClosingHeredocIndentation:
|
|
10
10
|
Layout/DotPosition:
|
11
11
|
EnforcedStyle: trailing
|
12
12
|
|
13
|
-
Layout/
|
13
|
+
Layout/HeredocIndentation:
|
14
14
|
Enabled: false
|
15
15
|
|
16
|
+
Layout/LineLength:
|
17
|
+
Max: 100
|
18
|
+
|
19
|
+
Lint/RaiseException:
|
20
|
+
Enabled: true
|
21
|
+
|
22
|
+
Lint/StructNewOverride:
|
23
|
+
Enabled: true
|
24
|
+
|
16
25
|
Metrics/AbcSize:
|
17
26
|
Enabled: false
|
18
27
|
|
@@ -28,9 +37,6 @@ Metrics/ClassLength:
|
|
28
37
|
Metrics/CyclomaticComplexity:
|
29
38
|
Enabled: false
|
30
39
|
|
31
|
-
Metrics/LineLength:
|
32
|
-
Max: 100
|
33
|
-
|
34
40
|
Metrics/MethodLength:
|
35
41
|
Enabled: false
|
36
42
|
|
@@ -46,6 +52,15 @@ Naming/AccessorMethodName:
|
|
46
52
|
Style/Documentation:
|
47
53
|
Enabled: false
|
48
54
|
|
55
|
+
Style/HashEachMethods:
|
56
|
+
Enabled: true
|
57
|
+
|
58
|
+
Style/HashTransformKeys:
|
59
|
+
Enabled: true
|
60
|
+
|
61
|
+
Style/HashTransformValues:
|
62
|
+
Enabled: true
|
63
|
+
|
49
64
|
Style/MultilineBlockChain:
|
50
65
|
Enabled: false
|
51
66
|
|
data/.travis.yml
CHANGED
@@ -1,20 +1,20 @@
|
|
1
1
|
language: ruby
|
2
|
+
cache: bundler
|
2
3
|
rvm:
|
3
|
-
- 2.1
|
4
|
-
- 2.2
|
5
4
|
- 2.3
|
6
5
|
- 2.4
|
7
|
-
- 2.5
|
6
|
+
- 2.5
|
7
|
+
- 2.6 # 2.7 is tested below
|
8
8
|
gemfile: Gemfile.old # The latest Ruby version uses Gemfile below
|
9
9
|
script:
|
10
10
|
- bundle exec rake test
|
11
11
|
matrix:
|
12
12
|
include:
|
13
|
-
- rvm: 2.
|
13
|
+
- rvm: 2.7
|
14
14
|
gemfile: Gemfile
|
15
15
|
script:
|
16
16
|
- bundle exec rake test
|
17
|
-
-
|
17
|
+
- bundle exec rubocop
|
18
18
|
env:
|
19
19
|
- CODE_COVERAGE=true
|
20
20
|
branches:
|
data/CHANGELOG.md
CHANGED
@@ -1,18 +1,86 @@
|
|
1
1
|
# Changelog
|
2
2
|
|
3
|
-
`friends` is a volunteer project. If you find it
|
4
|
-
making a small donation (🙏)
|
3
|
+
`friends` is a volunteer project. If you find it valuable, please consider
|
4
|
+
making a small donation (🙏) with the **Sponsor** button at the top of this page to
|
5
|
+
show you appreciate its continued development.
|
5
6
|
|
6
|
-
|
7
|
+
## [v0.52](https://github.com/JacobEvelyn/friends/tree/v0.52) (2020-06-03)
|
7
8
|
|
8
|
-
[
|
9
|
-
[](https://www.patreon.com/jacobevelyn)
|
10
|
-
[](https://liberapay.com/jacobevelyn/donate)
|
11
|
-
[](https://www.paypal.com/cgi-bin/webscr?cmd=_donations&business=jacobevelyn%40gmail%2ecom&lc=US&item_name=Development%20of%20JacobEvelyn%2ffriends%20%28GitHub%20repository%29&no_note=0¤cy_code=USD&bn=PP%2dDonationsBF%3abtn_donate_SM%2egif%3aNonHostedGuest)
|
12
|
-
[](https://flattr.com/submit/auto?user_id=jacobevelyn&url=https://github.com/JacobEvelyn/friends&title=friends&tags=github&category=software)
|
13
|
-
[](https://nrobinson2000.github.io/donate-bitcoin?address=1CFu6gWpmS89EnitPPdYssZhFMRWx5qhW4&amount=10&name=support-friends-development)
|
9
|
+
[Full Changelog](https://github.com/JacobEvelyn/friends/compare/v0.51...v0.52)
|
14
10
|
|
15
|
-
|
11
|
+
**Fixed bugs:**
|
12
|
+
|
13
|
+
- undefined method error occurred when "remove tag" is executed with no arguments [\#262](https://github.com/JacobEvelyn/friends/issues/262)
|
14
|
+
|
15
|
+
**Closed issues:**
|
16
|
+
|
17
|
+
- Try using bundler caching in Travis [\#260](https://github.com/JacobEvelyn/friends/issues/260)
|
18
|
+
|
19
|
+
**Merged pull requests:**
|
20
|
+
|
21
|
+
- Use correct RuboCop version in Travis [\#264](https://github.com/JacobEvelyn/friends/pull/264) ([JacobEvelyn](https://github.com/JacobEvelyn))
|
22
|
+
- Fix convert\_to\_tag for the case of str is nil [\#263](https://github.com/JacobEvelyn/friends/pull/263) ([m-t-a-n-a-k-a](https://github.com/m-t-a-n-a-k-a))
|
23
|
+
- Cache bundler directory in Travis [\#261](https://github.com/JacobEvelyn/friends/pull/261) ([JacobEvelyn](https://github.com/JacobEvelyn))
|
24
|
+
- Update rubocop requirement from 0.67 to 0.81.0 [\#259](https://github.com/JacobEvelyn/friends/pull/259) ([dependabot-preview[bot]](https://github.com/apps/dependabot-preview))
|
25
|
+
|
26
|
+
## [v0.51](https://github.com/JacobEvelyn/friends/tree/v0.51) (2020-04-05)
|
27
|
+
|
28
|
+
[Full Changelog](https://github.com/JacobEvelyn/friends/compare/v0.50...v0.51)
|
29
|
+
|
30
|
+
**Implemented enhancements:**
|
31
|
+
|
32
|
+
- Drop Semverse dependency [\#256](https://github.com/JacobEvelyn/friends/issues/256)
|
33
|
+
|
34
|
+
**Closed issues:**
|
35
|
+
|
36
|
+
- Drop support for Ruby \<2.3 [\#257](https://github.com/JacobEvelyn/friends/issues/257)
|
37
|
+
|
38
|
+
**Merged pull requests:**
|
39
|
+
|
40
|
+
- Remove Semverse dependency, and require Ruby 2.3+ [\#258](https://github.com/JacobEvelyn/friends/pull/258) ([JacobEvelyn](https://github.com/JacobEvelyn))
|
41
|
+
|
42
|
+
## [v0.50](https://github.com/JacobEvelyn/friends/tree/v0.50) (2020-04-03)
|
43
|
+
|
44
|
+
[Full Changelog](https://github.com/JacobEvelyn/friends/compare/v0.49...v0.50)
|
45
|
+
|
46
|
+
**Implemented enhancements:**
|
47
|
+
|
48
|
+
- Add support for Ruby 2.7 [\#254](https://github.com/JacobEvelyn/friends/issues/254)
|
49
|
+
|
50
|
+
**Merged pull requests:**
|
51
|
+
|
52
|
+
- Add Travis tests for Ruby 2.7 [\#255](https://github.com/JacobEvelyn/friends/pull/255) ([JacobEvelyn](https://github.com/JacobEvelyn))
|
53
|
+
|
54
|
+
## [v0.49](https://github.com/JacobEvelyn/friends/tree/v0.49) (2020-04-02)
|
55
|
+
|
56
|
+
[Full Changelog](https://github.com/JacobEvelyn/friends/compare/v0.48...v0.49)
|
57
|
+
|
58
|
+
**Fixed bugs:**
|
59
|
+
|
60
|
+
- Multi-word editors no longer work with `friends edit` [\#251](https://github.com/JacobEvelyn/friends/issues/251)
|
61
|
+
- Punctuation swallowed after friend name with last initial [\#235](https://github.com/JacobEvelyn/friends/issues/235)
|
62
|
+
|
63
|
+
**Merged pull requests:**
|
64
|
+
|
65
|
+
- Improve name matching to not swallow punctuation [\#253](https://github.com/JacobEvelyn/friends/pull/253) ([JacobEvelyn](https://github.com/JacobEvelyn))
|
66
|
+
- Fix `friends edit` for multi-word EDITORs [\#252](https://github.com/JacobEvelyn/friends/pull/252) ([JacobEvelyn](https://github.com/JacobEvelyn))
|
67
|
+
|
68
|
+
## [v0.48](https://github.com/JacobEvelyn/friends/tree/v0.48) (2020-03-27)
|
69
|
+
|
70
|
+
[Full Changelog](https://github.com/JacobEvelyn/friends/compare/v0.47...v0.48)
|
71
|
+
|
72
|
+
**Implemented enhancements:**
|
73
|
+
|
74
|
+
- Change trigger for implicit location from `moved to \_LOCATION\_` to `to \_LOCATION\_` [\#245](https://github.com/JacobEvelyn/friends/pull/245) ([shen-sat](https://github.com/shen-sat))
|
75
|
+
|
76
|
+
**Closed issues:**
|
77
|
+
|
78
|
+
- Fix minitest deprecation warnings [\#249](https://github.com/JacobEvelyn/friends/issues/249)
|
79
|
+
|
80
|
+
**Merged pull requests:**
|
81
|
+
|
82
|
+
- Fix minitest deprecation warnings [\#250](https://github.com/JacobEvelyn/friends/pull/250) ([JacobEvelyn](https://github.com/JacobEvelyn))
|
83
|
+
- Bump simplecov from cb968abf857a704364283b5dec4d9fa3d096287e to 0.18.0 [\#248](https://github.com/JacobEvelyn/friends/pull/248) ([dependabot-preview[bot]](https://github.com/apps/dependabot-preview))
|
16
84
|
|
17
85
|
## [v0.47](https://github.com/JacobEvelyn/friends/tree/v0.47) (2019-12-11)
|
18
86
|
|
data/Gemfile
CHANGED
@@ -5,12 +5,10 @@ source "https://rubygems.org"
|
|
5
5
|
gemspec
|
6
6
|
|
7
7
|
group :development, :test do
|
8
|
-
gem "rubocop", "0.
|
8
|
+
gem "rubocop", "0.81.0"
|
9
9
|
end
|
10
10
|
|
11
11
|
group :test do
|
12
12
|
gem "codecov", "~> 0.1.14"
|
13
|
-
gem "simplecov"
|
14
|
-
git: "https://github.com/colszowka/simplecov",
|
15
|
-
ref: "cb968abf857a704364283b5dec4d9fa3d096287e"
|
13
|
+
gem "simplecov"
|
16
14
|
end
|
data/README.md
CHANGED
@@ -5,19 +5,9 @@
|
|
5
5
|
[](http://inch-ci.org/github/JacobEvelyn/friends)
|
6
6
|
[](https://rubygems.org/gems/friends)
|
7
7
|
|
8
|
-
`friends` is a volunteer project. If you find it
|
9
|
-
making a small donation (🙏)
|
10
|
-
|
11
|
-
👇 Donate with these buttons! 👇
|
12
|
-
|
13
|
-
[/badge.svg>)](#backers) [/badge.svg>)](#sponsors)
|
14
|
-
[](https://www.patreon.com/jacobevelyn)
|
15
|
-
[](https://liberapay.com/jacobevelyn/donate)
|
16
|
-
[](https://www.paypal.com/cgi-bin/webscr?cmd=_donations&business=jacobevelyn%40gmail%2ecom&lc=US&item_name=Development%20of%20JacobEvelyn%2ffriends%20%28GitHub%20repository%29&no_note=0¤cy_code=USD&bn=PP%2dDonationsBF%3abtn_donate_SM%2egif%3aNonHostedGuest)
|
17
|
-
[](https://flattr.com/submit/auto?user_id=jacobevelyn&url=https://github.com/JacobEvelyn/friends&title=friends&tags=github&category=software)
|
18
|
-
[](https://nrobinson2000.github.io/donate-bitcoin?address=1CFu6gWpmS89EnitPPdYssZhFMRWx5qhW4&amount=10&name=support-friends-development)
|
19
|
-
|
20
|
-
👆 Donate with these buttons! 👆
|
8
|
+
`friends` is a volunteer project. If you find it valuable, please consider
|
9
|
+
making a small donation (🙏) with the **Sponsor** button at the top of this page
|
10
|
+
to show you appreciate its continued development.
|
21
11
|
|
22
12
|
# `friends`
|
23
13
|
|
@@ -47,6 +37,7 @@ lots of help), and give feedback! This project is
|
|
47
37
|
- [`add tag`](#add-tag)
|
48
38
|
- [`add location`](#add-location)
|
49
39
|
- [`add nickname`](#add-nickname)
|
40
|
+
- [Adding a default location](#adding-a-default-location)
|
50
41
|
- [`clean`](#clean)
|
51
42
|
- [`graph`](#graph)
|
52
43
|
- [`help`](#help)
|
@@ -141,7 +132,7 @@ FRIENDS_PAGER="less -RF"
|
|
141
132
|
- **Friends**: The people you do _activities_ with. Each friend has a name and,
|
142
133
|
optionally, one or several nicknames. (Examples: `John`, `Grace Hopper`)
|
143
134
|
- **Locations**: The places in which _activities_ happen. (Examples: `Paris`,
|
144
|
-
`
|
135
|
+
`Martha's Vineyard`)
|
145
136
|
- **Tags**: A way to categorize your _activities_ with tags of your
|
146
137
|
choosing. Tags may contain colons and hyphens inside them. (Examples: `@exercise:running`, `@school`, `@science:indoors:agronomy-with-hydroponics`)
|
147
138
|
- **Notes**: Any additional information you want to record about a _friend_
|
@@ -155,7 +146,7 @@ The `friends.md` Markdown file that stores all of your data contains:
|
|
155
146
|
### Locations:
|
156
147
|
|
157
148
|
- Atlantis
|
158
|
-
-
|
149
|
+
- Martha's Vineyard
|
159
150
|
- Paris
|
160
151
|
```
|
161
152
|
|
@@ -174,7 +165,7 @@ The `friends.md` Markdown file that stores all of your data contains:
|
|
174
165
|
```markdown
|
175
166
|
### Activities:
|
176
167
|
|
177
|
-
- 2018-11-01: **Grace Hopper** and I went to
|
168
|
+
- 2018-11-01: **Grace Hopper** and I went to _Martha's Vineyard_. George had to cancel at the last minute.
|
178
169
|
- 2018-01-04: Got lunch with **Grace Hopper** and **George Washington Carver**.
|
179
170
|
- 2017-12-31: Celebrated the new year in _Paris_ with **Marie Curie**.
|
180
171
|
- 2017-11-15: Talked to **George Washington Carver** on the phone for an hour.
|
@@ -339,8 +330,8 @@ $ friends add activity last Monday
|
|
339
330
|
You can escape the names of friends you don't want `friends` to match with a backslash:
|
340
331
|
|
341
332
|
```bash
|
342
|
-
$ friends add activity "2018-11-01: Grace and I went to \
|
343
|
-
Activity added: "2018-11-01: Grace Hopper and I went to
|
333
|
+
$ friends add activity "2018-11-01: Grace and I went to \Martha's Vineyard. \George had to cancel at the last minute."
|
334
|
+
Activity added: "2018-11-01: Grace Hopper and I went to Martha's Vineyard. George had to cancel at the last minute."
|
344
335
|
```
|
345
336
|
|
346
337
|
And if an activity contains friends or locations you haven't yet added, you can simply
|
@@ -420,6 +411,27 @@ $ friends add nickname "Grace Hopper" "Amazing Grace"
|
|
420
411
|
Nickname added: "Grace Hopper (a.k.a. The Admiral a.k.a. Amazing Grace)"
|
421
412
|
```
|
422
413
|
|
414
|
+
#### Setting a default location
|
415
|
+
|
416
|
+
When an activity includes the phrase to \_LOCATION\_ (e.g., Took a plane to \_Paris\_), all future activities that have no explicit location will be associated with that location:
|
417
|
+
|
418
|
+
```bash
|
419
|
+
$ friends add activity Took a plane to Paris
|
420
|
+
Activity added: "2020-01-04: Took a plane to Paris"
|
421
|
+
Default location set to: "Paris"
|
422
|
+
$ friends add activity Ate lunch at a charming café
|
423
|
+
Activity added: "2020-01-04: Ate lunch at a charming café"
|
424
|
+
$ friends add activity Left the city to go to Chamonix
|
425
|
+
Activity added: "2020-01-04: Left the city to go to Chamonix"
|
426
|
+
Default location set to: "Chamonix"
|
427
|
+
```
|
428
|
+
|
429
|
+
```bash
|
430
|
+
$ friends list activities --in Paris
|
431
|
+
2019-01-04: Ate lunch at a charming café
|
432
|
+
2019-01-04: Took a plane to Paris
|
433
|
+
```
|
434
|
+
|
423
435
|
#### `clean`
|
424
436
|
|
425
437
|
Reads and re-writes the `friends.md` file:
|
@@ -951,16 +963,7 @@ A big big thanks to all of this project's lovely
|
|
951
963
|
|
952
964
|
<a href="https://github.com/JacobEvelyn/friends/graphs/contributors"><img src="https://opencollective.com/friends/contributors.svg?width=890" /></a>
|
953
965
|
|
954
|
-
Another way to contribute is to make a donation with
|
955
|
-
|
956
|
-
[/badge.svg>)](https://opencollective.com/friends#backer) [/badge.svg>)](https://opencollective.com/friends#sponsor)
|
957
|
-
[](https://www.patreon.com/jacobevelyn)
|
958
|
-
[](https://liberapay.com/jacobevelyn/donate)
|
959
|
-
[](https://www.paypal.com/cgi-bin/webscr?cmd=_donations&business=jacobevelyn%40gmail%2ecom&lc=US&item_name=Development%20of%20JacobEvelyn%2ffriends%20%28GitHub%20repository%29&no_note=0¤cy_code=USD&bn=PP%2dDonationsBF%3abtn_donate_SM%2egif%3aNonHostedGuest)
|
960
|
-
[](https://flattr.com/submit/auto?user_id=jacobevelyn&url=https://github.com/JacobEvelyn/friends&title=friends&tags=github&category=software)
|
961
|
-
[](https://nrobinson2000.github.io/donate-bitcoin?address=1CFu6gWpmS89EnitPPdYssZhFMRWx5qhW4&amount=10&name=support-friends-development)
|
962
|
-
|
963
|
-
👆 Donate with these buttons right here! 👆
|
966
|
+
Another way to contribute is to make a donation with the **Sponsor** button at the top of this page!
|
964
967
|
|
965
968
|
### Backers
|
966
969
|
|
data/RELEASING.md
CHANGED
@@ -8,7 +8,7 @@ These are steps for the maintainer to take to release a new version of this gem.
|
|
8
8
|
3. Add a tag (`git tag -am "vX.X" vX.X`).
|
9
9
|
4. `git push && git push --tags`
|
10
10
|
5. Copy the top of `CHANGELOG` to the clipboard.
|
11
|
-
6. `CHANGELOG_GITHUB_TOKEN=... github_changelog_generator`
|
11
|
+
6. `CHANGELOG_GITHUB_TOKEN=... github_changelog_generator --user JacobEvelyn --project friends`
|
12
12
|
7. Paste from the clipboard to the top of the `CHANGELOG`.
|
13
13
|
8. Confirm the `CHANGELOG` looks correct with `git diff`
|
14
14
|
9. `git add -A && git commit -m 'Update CHANGELOG for vX.X'`
|
data/bin/friends
CHANGED
@@ -12,7 +12,6 @@ end
|
|
12
12
|
require "gli"
|
13
13
|
require "paint"
|
14
14
|
require "readline"
|
15
|
-
require "semverse"
|
16
15
|
|
17
16
|
require "friends/introvert"
|
18
17
|
require "friends/version"
|
@@ -35,7 +34,7 @@ class Tag
|
|
35
34
|
# conversions for arguments.
|
36
35
|
# See: https://github.com/davetron5000/gli/issues/241
|
37
36
|
def self.convert_to_tag(str)
|
38
|
-
str = str.strip
|
37
|
+
str = str.to_s.strip
|
39
38
|
!str.empty? && str[0] == "@" ? str : "@#{str}"
|
40
39
|
end
|
41
40
|
end
|
@@ -48,10 +47,7 @@ class Stripped; end
|
|
48
47
|
accept(Stripped, &:strip)
|
49
48
|
|
50
49
|
class InputDate; end
|
51
|
-
accept(InputDate)
|
52
|
-
time = Chronic.parse(value)
|
53
|
-
time && time.to_date
|
54
|
-
end
|
50
|
+
accept(InputDate) { |value| Chronic.parse(value)&.to_date }
|
55
51
|
|
56
52
|
switch [:quiet],
|
57
53
|
negatable: false,
|
@@ -102,7 +98,7 @@ post do
|
|
102
98
|
rescue Errno::ENOENT
|
103
99
|
# If the pager is not installed, just print the output.
|
104
100
|
puts @introvert.output
|
105
|
-
rescue Errno::EPIPE
|
101
|
+
rescue Errno::EPIPE
|
106
102
|
# Occurs when quitting the pager.
|
107
103
|
end
|
108
104
|
end
|