friends 0.51 → 0.55

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 1a48314cd65423f48134663c087be43e3978f940c9c26d47dd25e83f9d3d7af1
4
- data.tar.gz: cb6064161d7ff10e4b2300127aa22a0740f02fec6051a93e90288ed1268f8595
3
+ metadata.gz: 04bb70e6973e141306240dba6c4c8f0d26322ad9e795c70b9407b36fa243386d
4
+ data.tar.gz: 4495b8c22adc4274ca870c81c5112d0ef616a2bf804e168cf469cdbfafee6a99
5
5
  SHA512:
6
- metadata.gz: 941c76dab927034c7b9663b48f06f1299b522b2595e92ccb5b829c4adea7fc52b37e7ac8f03d50810b799422cf59441b56b26851f11b2835d380b26ba244a0f3
7
- data.tar.gz: 4e079a3d0e94d69f4e18d30e3313a4e0e520f9c3917528c313d2ac919a7ac920c1dbdf5e3ad0d6afe95d44bda47ce85bd06c3fd64fdad4b3a45f96a7ece3b16e
6
+ metadata.gz: 8e2638a0504eca66dc731052edaa2c86c070222571509187165a08eaff29a57f89c69aa00ee7b2ca1bd633cc783fbeb7f880767151ec7b6de737938b5dea875e
7
+ data.tar.gz: 16c2a9a1ba086507060dc53cc1a76ef4789195bf8152a45a80a8f453027ee7c494921b7ec30c26ebcebb89c0a3c8653a63a9de6d258273d62d7b3cd474201a3f
@@ -55,7 +55,7 @@ promise I don't bite. 😊
55
55
 
56
56
  ## Code of Conduct
57
57
 
58
- Note that this project follows a [Code of Conduct](https://github.com/JacobEvelyn/friends/blob/master/CODE_OF_CONDUCT.md).
58
+ Note that this project follows a [Code of Conduct](https://github.com/JacobEvelyn/friends/blob/main/CODE_OF_CONDUCT.md).
59
59
  If you're a polite, reasonable person you won't have any issues!
60
60
 
61
61
  ## Financial contributions
@@ -8,9 +8,9 @@ merge this change:
8
8
  - [ ] The code in these changes works correctly.
9
9
  - [ ] Code has tests as appropriate.
10
10
  - [ ] Code has been reviewed by @JacobEvelyn.
11
- - [ ] All tests pass on Travis CI.
11
+ - [ ] All tests pass on GitHub.
12
12
  - [ ] Code coverage remains high.
13
- - [ ] Rubocop reports no issues on Travis CI.
13
+ - [ ] RuboCop reports no issues on GitHub.
14
14
  - [ ] The `README.md` file is updated as appropriate.
15
15
 
16
16
  Don't worry—this list will get checked off in no time!
@@ -0,0 +1,36 @@
1
+ name: Main
2
+ on:
3
+ pull_request:
4
+ branches:
5
+ - main
6
+ push:
7
+ branches:
8
+ - main
9
+ jobs:
10
+ ci:
11
+ name: CI
12
+ strategy:
13
+ fail-fast: false
14
+ matrix:
15
+ ruby: [2.3, 2.4, 2.5, 2.6, 2.7, 3.0]
16
+ runs-on: ubuntu-latest
17
+ steps:
18
+ - uses: actions/checkout@v2
19
+
20
+ # Conditionally configure bundler via environment variables as advised
21
+ # * https://github.com/ruby/setup-ruby#bundle-config
22
+ - name: Set code coverage environment variable
23
+ run: echo "CODE_COVERAGE=true" >> $GITHUB_ENV
24
+ if: matrix.ruby == 3.0
25
+
26
+ # Use 'bundler-cache: true' instead of actions/cache as advised:
27
+ # * https://github.com/actions/cache/blob/main/examples.md#ruby---bundler
28
+ - uses: ruby/setup-ruby@v1
29
+ with:
30
+ ruby-version: ${{ matrix.ruby }}
31
+ bundler-cache: true
32
+
33
+ - run: bundle exec rake test
34
+
35
+ - run: bundle exec rubocop
36
+ if: matrix.ruby == 3.0
data/CHANGELOG.md CHANGED
@@ -4,6 +4,69 @@
4
4
  making a small donation (🙏) with the **Sponsor** button at the top of this page to
5
5
  show you appreciate its continued development.
6
6
 
7
+ ## [v0.55](https://github.com/JacobEvelyn/friends/tree/v0.55) (2021-07-25)
8
+
9
+ [Full Changelog](https://github.com/JacobEvelyn/friends/compare/v0.54...v0.55)
10
+
11
+ **Implemented enhancements:**
12
+
13
+ - Add --sort flag to list friends/locations [\#276](https://github.com/JacobEvelyn/friends/pull/276) ([JacobEvelyn](https://github.com/JacobEvelyn))
14
+
15
+ **Closed issues:**
16
+
17
+ - Add tests for Ruby 3.0 [\#279](https://github.com/JacobEvelyn/friends/issues/279)
18
+ - Switch from Travis to GitHub Actions [\#277](https://github.com/JacobEvelyn/friends/issues/277)
19
+ - Add new list command to log any activity or note related to specified friend [\#270](https://github.com/JacobEvelyn/friends/issues/270)
20
+ - Replace `favorites` commands with more flexible `--sort` options [\#247](https://github.com/JacobEvelyn/friends/issues/247)
21
+
22
+ **Merged pull requests:**
23
+
24
+ - Move CI from Travis to GitHub Actions [\#278](https://github.com/JacobEvelyn/friends/pull/278) ([JacobEvelyn](https://github.com/JacobEvelyn))
25
+
26
+ ## [v0.54](https://github.com/JacobEvelyn/friends/tree/v0.54) (2020-10-29)
27
+
28
+ [Full Changelog](https://github.com/JacobEvelyn/friends/compare/v0.53...v0.54)
29
+
30
+ **Implemented enhancements:**
31
+
32
+ - Add location nicknames [\#242](https://github.com/JacobEvelyn/friends/issues/242)
33
+
34
+ **Merged pull requests:**
35
+
36
+ - Add location alias [\#269](https://github.com/JacobEvelyn/friends/pull/269) ([RenCloud](https://github.com/RenCloud))
37
+ - Update codecov requirement from ~\> 0.1.14 to ~\> 0.2.0 [\#267](https://github.com/JacobEvelyn/friends/pull/267) ([dependabot-preview[bot]](https://github.com/apps/dependabot-preview))
38
+
39
+ ## [v0.53](https://github.com/JacobEvelyn/friends/tree/v0.53) (2020-07-06)
40
+
41
+ [Full Changelog](https://github.com/JacobEvelyn/friends/compare/v0.52...v0.53)
42
+
43
+ **Fixed bugs:**
44
+
45
+ - undefined method error occurred when “add tag" or “add nickname” executed with no arguments [\#265](https://github.com/JacobEvelyn/friends/issues/265)
46
+
47
+ **Merged pull requests:**
48
+
49
+ - Fix for the case of add tag or add nickname args are nill [\#266](https://github.com/JacobEvelyn/friends/pull/266) ([m-t-a-n-a-k-a](https://github.com/m-t-a-n-a-k-a))
50
+
51
+ ## [v0.52](https://github.com/JacobEvelyn/friends/tree/v0.52) (2020-06-03)
52
+
53
+ [Full Changelog](https://github.com/JacobEvelyn/friends/compare/v0.51...v0.52)
54
+
55
+ **Fixed bugs:**
56
+
57
+ - undefined method error occurred when "remove tag" is executed with no arguments [\#262](https://github.com/JacobEvelyn/friends/issues/262)
58
+
59
+ **Closed issues:**
60
+
61
+ - Try using bundler caching in Travis [\#260](https://github.com/JacobEvelyn/friends/issues/260)
62
+
63
+ **Merged pull requests:**
64
+
65
+ - Use correct RuboCop version in Travis [\#264](https://github.com/JacobEvelyn/friends/pull/264) ([JacobEvelyn](https://github.com/JacobEvelyn))
66
+ - 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))
67
+ - Cache bundler directory in Travis [\#261](https://github.com/JacobEvelyn/friends/pull/261) ([JacobEvelyn](https://github.com/JacobEvelyn))
68
+ - 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))
69
+
7
70
  ## [v0.51](https://github.com/JacobEvelyn/friends/tree/v0.51) (2020-04-05)
8
71
 
9
72
  [Full Changelog](https://github.com/JacobEvelyn/friends/compare/v0.50...v0.51)
@@ -52,7 +115,7 @@ show you appreciate its continued development.
52
115
 
53
116
  **Implemented enhancements:**
54
117
 
55
- - 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))
118
+ - 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))
56
119
 
57
120
  **Closed issues:**
58
121
 
@@ -73,7 +136,7 @@ show you appreciate its continued development.
73
136
 
74
137
  **Fixed bugs:**
75
138
 
76
- - Tests are failing in `master` [\#238](https://github.com/JacobEvelyn/friends/issues/238)
139
+ - Tests are failing in `main` [\#238](https://github.com/JacobEvelyn/friends/issues/238)
77
140
 
78
141
  **Merged pull requests:**
79
142
 
@@ -337,7 +400,7 @@ show you appreciate its continued development.
337
400
 
338
401
  **Implemented enhancements:**
339
402
 
340
- - Add `--since \<date\>` and `--until \<date\>` flags, and remove extraneous months from `graph` [\#153](https://github.com/JacobEvelyn/friends/issues/153)
403
+ - Add `--since <date>` and `--until <date>` flags, and remove extraneous months from `graph` [\#153](https://github.com/JacobEvelyn/friends/issues/153)
341
404
  - Add integration tests for bin/friends? [\#127](https://github.com/JacobEvelyn/friends/issues/127)
342
405
 
343
406
  **Merged pull requests:**
@@ -626,7 +689,7 @@ show you appreciate its continued development.
626
689
  **Merged pull requests:**
627
690
 
628
691
  - Highlight multiple occurrences [\#70](https://github.com/JacobEvelyn/friends/pull/70) ([GuruKhalsa](https://github.com/GuruKhalsa))
629
- - Fix Travis badge \(master only\) [\#67](https://github.com/JacobEvelyn/friends/pull/67) ([JacobEvelyn](https://github.com/JacobEvelyn))
692
+ - Fix Travis badge \(main only\) [\#67](https://github.com/JacobEvelyn/friends/pull/67) ([JacobEvelyn](https://github.com/JacobEvelyn))
630
693
  - Move activity prompt to bin/friends [\#64](https://github.com/JacobEvelyn/friends/pull/64) ([JacobEvelyn](https://github.com/JacobEvelyn))
631
694
  - Adds the --debug flag for printing backtraces on error [\#63](https://github.com/JacobEvelyn/friends/pull/63) ([JacobEvelyn](https://github.com/JacobEvelyn))
632
695
  - Move file writes to end of command actions [\#61](https://github.com/JacobEvelyn/friends/pull/61) ([JacobEvelyn](https://github.com/JacobEvelyn))
data/Gemfile CHANGED
@@ -5,10 +5,10 @@ source "https://rubygems.org"
5
5
  gemspec
6
6
 
7
7
  group :development, :test do
8
- gem "rubocop", "0.67"
8
+ gem "rubocop", "0.81.0"
9
9
  end
10
10
 
11
11
  group :test do
12
- gem "codecov", "~> 0.1.14"
12
+ gem "codecov", "~> 0.2.0"
13
13
  gem "simplecov"
14
14
  end
data/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  [![Gem Version](https://badge.fury.io/rb/friends.svg)](https://badge.fury.io/rb/friends)
2
- [![Code Coverage](https://codecov.io/gh/JacobEvelyn/friends/branch/master/graph/badge.svg)](https://codecov.io/gh/JacobEvelyn/friends)
3
- [![Build Status](https://travis-ci.com/JacobEvelyn/friends.svg?branch=master)](https://travis-ci.com/JacobEvelyn/friends)
2
+ [![Code Coverage](https://codecov.io/gh/JacobEvelyn/friends/branch/main/graph/badge.svg)](https://codecov.io/gh/JacobEvelyn/friends)
3
+ [![Tests](https://github.com/JacobEvelyn/friends/workflows/Main/badge.svg)](https://github.com/JacobEvelyn/friends/actions?query=workflow%3AMain)
4
4
  [![Readme Score](http://readme-score-api.herokuapp.com/score.svg?url=JacobEvelyn/friends&bust=1)](http://clayallsopp.github.io/readme-score?url=JacobEvelyn/friends)
5
5
  [![Inline docs](http://inch-ci.org/github/JacobEvelyn/friends.png)](http://inch-ci.org/github/JacobEvelyn/friends)
6
6
  [![Gem](https://img.shields.io/gem/dt/friends.svg)](https://rubygems.org/gems/friends)
@@ -32,21 +32,19 @@ lots of help), and give feedback! This project is
32
32
  - [Command reference](#command-reference)
33
33
  - `add`
34
34
  - [`add activity`](#add-activity)
35
+ - [Setting a default location](#setting-a-default-location)
35
36
  - [`add note`](#add-note)
36
37
  - [`add friend`](#add-friend)
37
38
  - [`add tag`](#add-tag)
38
39
  - [`add location`](#add-location)
39
40
  - [`add nickname`](#add-nickname)
40
- - [Adding a default location](#adding-a-default-location)
41
+ - [`add alias`](#add-alias)
41
42
  - [`clean`](#clean)
42
43
  - [`graph`](#graph)
43
44
  - [`help`](#help)
44
45
  - `list`
45
46
  - [`list activities`](#list-activities)
46
47
  - [`list notes`](#list-notes)
47
- - `list favorite`
48
- - [`list favorite friends`](#list-favorite-friends)
49
- - [`list favorite locations`](#list-favorite-locations)
50
48
  - [`list friends`](#list-friends)
51
49
  - [`list tags`](#list-tags)
52
50
  - [`list locations`](#list-locations)
@@ -54,6 +52,7 @@ lots of help), and give feedback! This project is
54
52
  - `remove`
55
53
  - [`remove tag`](#remove-tag)
56
54
  - [`remove nickname`](#remove-nickname)
55
+ - [`remove alias`](#remove-alias)
57
56
  - `rename`
58
57
  - [`rename friend`](#rename-friend)
59
58
  - [`rename location`](#rename-location)
@@ -181,7 +180,7 @@ The `friends.md` Markdown file that stores all of your data contains:
181
180
  ```
182
181
 
183
182
  See the example
184
- [`friends.md`](https://github.com/JacobEvelyn/friends/blob/master/friends.md)
183
+ [`friends.md`](https://github.com/JacobEvelyn/friends/blob/main/friends.md)
185
184
  file for more information.
186
185
 
187
186
  ### Global flags
@@ -291,11 +290,13 @@ $ friends add activity Got lunch with Earnest H and Earnest S. in the park. Man,
291
290
  Activity added: "2017-05-01: Got lunch with Earnest Hemingway and Earnest Shackleton in the park. Man, I like Earnest Hemingway but really love Earnest Shackleton."
292
291
  ```
293
292
 
294
- And locations will be matched as well:
293
+ And locations or their aliases will be matched as well:
295
294
 
296
295
  ```bash
297
296
  $ friends add activity Went swimming near atlantis with George.
298
297
  Activity added: "2017-01-06: Went swimming near Atlantis with George Washington Carver."
298
+ $ friends add activity Had lunch in nyc with George.
299
+ Activity added: "2017-01-06: Had lunch in New York City with George Washington Carver."
299
300
  ```
300
301
 
301
302
  Tags will be colored if they're provided (though this README can't display
@@ -350,6 +351,27 @@ This is really handy for when you have an activity involving a friend or locatio
350
351
  you can't remember if you've already added. Just use the signifiers and
351
352
  they'll be added if necessary!
352
353
 
354
+ ##### Setting a default location
355
+
356
+ 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:
357
+
358
+ ```bash
359
+ $ friends add activity Took a plane to Paris
360
+ Activity added: "2020-01-04: Took a plane to Paris"
361
+ Default location set to: "Paris"
362
+ $ friends add activity Ate lunch at a charming café
363
+ Activity added: "2020-01-04: Ate lunch at a charming café"
364
+ $ friends add activity Left the city to go to Chamonix
365
+ Activity added: "2020-01-04: Left the city to go to Chamonix"
366
+ Default location set to: "Chamonix"
367
+ ```
368
+
369
+ ```bash
370
+ $ friends list activities --in Paris
371
+ 2019-01-04: Ate lunch at a charming café
372
+ 2019-01-04: Took a plane to Paris
373
+ ```
374
+
353
375
  #### `add note`
354
376
 
355
377
  Notes can be added exactly like activities, either on one line:
@@ -406,30 +428,18 @@ Location added: "Atlantis"
406
428
 
407
429
  ```bash
408
430
  $ friends add nickname "Grace Hopper" "The Admiral"
409
- Nickname added: "Grace Hopper (a.k.a. The Admiral)
431
+ Nickname added: "Grace Hopper (a.k.a. The Admiral)"
410
432
  $ friends add nickname "Grace Hopper" "Amazing Grace"
411
433
  Nickname added: "Grace Hopper (a.k.a. The Admiral a.k.a. Amazing Grace)"
412
434
  ```
413
435
 
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:
436
+ #### `add alias`
417
437
 
418
438
  ```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
439
+ $ friends add alias "New York City" "NYC"
440
+ Alias added: "New York City (a.k.a. NYC)"
441
+ $ friends add alias "New York City" "Big Apple"
442
+ Alias added: "New York City (a.k.a. NYC a.k.a. Big Apple)"
433
443
  ```
434
444
 
435
445
  #### `clean`
@@ -698,39 +708,42 @@ $ friends list notes --tagged school --with Marie
698
708
  2015-06-06: Marie Curie just got accepted into a PhD program in Paris. @school
699
709
  ```
700
710
 
701
- #### `list favorite friends`
711
+ #### `list friends`
702
712
 
703
- Lists your "favorite" friends (by total number of activities):
713
+ Lists all of your friends in alphabetical order:
704
714
 
705
715
  ```bash
706
- $ friends list favorite friends
707
- Your favorite friends:
708
- 1. George Washington Carver (2 activities)
709
- 2. Grace Hopper (1)
710
- 3. Marie Curie (0)
716
+ $ friends list friends
717
+ George Washington Carver
718
+ Grace Hopper
719
+ Marie Curie
711
720
  ```
712
721
 
713
- #### `list favorite locations`
714
-
715
- Lists your "favorite" locations (by total number of activities):
722
+ Or you can choose to sort by number of activities:
716
723
 
717
724
  ```bash
718
- $ friends list favorite locations
719
- Your favorite locations:
720
- 1. Atlantis (2 activities)
721
- 2. Paris (1)
722
- 3. London (0)
725
+ $ friends list friends --sort n-activities
726
+ 2 activities: George Washington Carver
727
+ 2 activities: Grace Hopper
728
+ 1 activity: Marie Curie
723
729
  ```
724
730
 
725
- #### `list friends`
731
+ Or by most recent activity:
726
732
 
727
- Lists all of your friends in alphabetical order:
733
+ ```bash
734
+ $ friends list friends --sort recency
735
+ 7 days ago: Grace Hopper
736
+ 308 days ago: George Washington Carver
737
+ 312 days ago: Marie Curie
738
+ ```
739
+
740
+ And you can reverse the sorting at any time:
728
741
 
729
742
  ```bash
730
- $ friends list friends
731
- George Washington Carver
732
- Grace Hopper
733
- Marie Curie
743
+ $ friends list friends --sort n-activities --reverse
744
+ 1 activity: Marie Curie
745
+ 2 activities: Grace Hopper
746
+ 2 activities: George Washington Carver
734
747
  ```
735
748
 
736
749
  You can also include friend nicknames, locations, and tags:
@@ -823,6 +836,42 @@ New York City
823
836
  Paris
824
837
  ```
825
838
 
839
+ Or you can choose to sort by number of activities:
840
+
841
+ ```bash
842
+ $ friends list locations --sort n-activities
843
+ 1 activity: New York City
844
+ 1 activity: Paris
845
+ 0 activities: Atlantis
846
+ ```
847
+
848
+ Or by most recent activity:
849
+
850
+ ```bash
851
+ $ friends list locations --sort recency
852
+ N/A days ago: Atlantis
853
+ 7 days ago: New York City
854
+ 312 days ago: Paris
855
+ ```
856
+
857
+ And you can reverse the sorting at any time:
858
+
859
+ ```bash
860
+ $ friends list friends --sort n-activities --reverse
861
+ 0 activities: Atlantis
862
+ 1 activity: Paris
863
+ 1 activity: New York City
864
+ ```
865
+
866
+ You can also include location aliases:
867
+
868
+ ```bash
869
+ $ friends list locations --verbose
870
+ Atlantis
871
+ New York City (a.k.a. NYC)
872
+ Paris
873
+ ```
874
+
826
875
  #### Advanced searching
827
876
 
828
877
  Since `friends` is a command-line program, we can easily support
@@ -876,6 +925,15 @@ $ friends remove nickname "Grace Hopper" "The Admiral"
876
925
  Nickname removed: "Grace Hopper (a.k.a. Amazing Grace)"
877
926
  ```
878
927
 
928
+ #### `remove alias`
929
+
930
+ Removes a specific alias from a location:
931
+
932
+ ```bash
933
+ $ friends remove alias "New York City" "Big Apple"
934
+ Alias removed: "New York City (a.k.a. NYC)"
935
+ ```
936
+
879
937
  #### `rename friend`
880
938
 
881
939
  ```bash
@@ -956,7 +1014,7 @@ If you have an idea,
956
1014
  [make a GitHub issue](https://github.com/JacobEvelyn/friends/issues/new)!
957
1015
  Suggestions are very very welcome, and usually are implemented very
958
1016
  quickly. And if you'd like to do the implementing yourself, see the
959
- [contributing guide](https://github.com/JacobEvelyn/friends/blob/master/.github/CONTRIBUTING.md).
1017
+ [contributing guide](https://github.com/JacobEvelyn/friends/blob/main/.github/CONTRIBUTING.md).
960
1018
 
961
1019
  A big big thanks to all of this project's lovely
962
1020
  [contributors](https://github.com/JacobEvelyn/friends/graphs/contributors):
@@ -988,10 +1046,10 @@ Support this project by becoming a sponsor. Your logo will show up here with a l
988
1046
 
989
1047
  ## Code of Conduct
990
1048
 
991
- Note that this project follows a [Code of Conduct](https://github.com/JacobEvelyn/friends/blob/master/CODE_OF_CONDUCT.md).
1049
+ Note that this project follows a [Code of Conduct](https://github.com/JacobEvelyn/friends/blob/main/CODE_OF_CONDUCT.md).
992
1050
  If you're a polite, reasonable person you won't have any issues!
993
1051
 
994
1052
  ## License
995
1053
 
996
1054
  Friends is released under the
997
- [MIT License](https://github.com/JacobEvelyn/friends/blob/master/LICENSE.txt).
1055
+ [MIT License](https://github.com/JacobEvelyn/friends/blob/main/LICENSE.txt).