purtea 0.0.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA256:
3
+ metadata.gz: 9dc77516d3e5f71d6f14a9e097bd84fe6737a9d5d992158643a66cf1b7d20673
4
+ data.tar.gz: 479b49c9283a36bcfe4f5ee06a1e036299325e3717f13000bc73775519189567
5
+ SHA512:
6
+ metadata.gz: cfb5c01f96098daf6515dabdbe201ade9fd4e6f916c24d53f93d5e8a0985afeab6cb5805f758fb6ee714b4545247105740fa8c3c84d06614a278b8f7dd2d9071
7
+ data.tar.gz: 3bbacef42de9416059d18cfc29daadff236bca086156ca9755c18cd89714e069e5c06534233e1079dbfff7a86218687ca1709949ce5abe769179ecec4bdaee08
data/.editorconfig ADDED
@@ -0,0 +1,6 @@
1
+ [*]
2
+ charset = utf-8
3
+ indent_style = space
4
+ indent_size = 2
5
+ insert_final_newline = true
6
+ trim_trailing_whitespace = true
@@ -0,0 +1,6 @@
1
+ <!--- Provide a general summary of your issue in the Title above -->
2
+
3
+ ## Environment (please complete the following information)
4
+ - OS: [e.g. Ubuntu 20.04]
5
+ - Ruby version: [e.g. 2.7.3]
6
+ - Gem version: [e.g. 2.5.11]
@@ -0,0 +1,36 @@
1
+ ---
2
+ name: Bug report
3
+ about: Create a report to help us improve
4
+ title: ''
5
+ labels: bug
6
+ assignees: ''
7
+ ---
8
+
9
+ <!--- Provide a general summary of your bug report in the Title above -->
10
+
11
+ ## Describe the bug
12
+ A clear and concise description of what the bug is.
13
+
14
+ ### To Reproduce
15
+ Steps to reproduce the behavior:
16
+ 1. Go to '...'
17
+ 2. Click on '....'
18
+ 3. Scroll down to '....'
19
+ 4. See error
20
+
21
+ ### Expected behavior
22
+ A clear and concise description of what you expected to happen.
23
+
24
+ ### Screenshots
25
+ If applicable, add screenshots to help explain your problem.
26
+
27
+ ## Environment (please complete the following information)
28
+ - OS: [e.g. Ubuntu 20.04]
29
+ - Ruby version: [e.g. 2.7.3]
30
+ - Gem version: [e.g. 2.5.11]
31
+
32
+ ## Additional context
33
+ Add any other context about the problem here.
34
+
35
+ ### Will you be working to fix this problem yourself in a PR?
36
+ Yes/No.
@@ -0,0 +1,26 @@
1
+ ---
2
+ name: Feature request
3
+ about: Suggest an idea for this project
4
+ title: ''
5
+ labels: enhancement
6
+ assignees: ''
7
+ ---
8
+
9
+ <!--- Provide a general summary of your feature request in the Title above -->
10
+
11
+ ## Describe the feature
12
+
13
+ ### Is your feature request related to a problem? Please describe.
14
+ A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
15
+
16
+ ### Describe the solution you'd like
17
+ A clear and concise description of what you want to happen.
18
+
19
+ ### Describe alternatives you've considered
20
+ A clear and concise description of any alternative solutions or features you've considered.
21
+
22
+ ## Additional context
23
+ Add any other context or screenshots about the feature request here.
24
+
25
+ ### Will you be working to implement this feature yourself in a PR?
26
+ Yes/No.
@@ -0,0 +1,34 @@
1
+ <!--- Provide a general summary of your changes in the Title above -->
2
+
3
+ ## Description
4
+ <!--- Describe your changes in detail -->
5
+
6
+ ## Motivation and Context
7
+ <!--- Why is this change required? What problem does it solve? -->
8
+ <!--- If it fixes an open issue, please link to the issue here. -->
9
+
10
+ ## How Has This Been Tested?
11
+ <!--- Please describe in detail how you tested your changes. -->
12
+ <!--- Include details of your testing environment, and the tests you ran to -->
13
+ <!--- see how your change affects other areas of the code, etc. -->
14
+
15
+ ## Screenshots (if appropriate):
16
+
17
+ ## Types of changes
18
+ <!--- What types of changes does your code introduce? Put an `X` in all the boxes that apply: -->
19
+ - [ ] Bug fix (non-breaking change which fixes an issue)
20
+ - [ ] New feature (non-breaking change which adds functionality)
21
+ - [ ] Breaking change (fix or feature that would cause existing functionality to change)
22
+
23
+ ## Checklist:
24
+ <!--- Go over all the following points, and put an `X` in all the boxes that apply. -->
25
+ <!--- If you're unsure about any of these, don't hesitate to ask. We're here to help! -->
26
+ - [ ] My code follows the code style of this project.
27
+ - [ ] My change requires a change to the documentation.
28
+ - [ ] I have updated the documentation accordingly.
29
+ - [ ] I have read the [**CONTRIBUTING**][contrib] document.
30
+ - [ ] I have added tests to cover my changes.
31
+ - [ ] All new and existing tests passed.
32
+ - [ ] `bundle exec rake` passed without errors.
33
+
34
+ [contrib]: https://github.com/Sharparam/purtea/blob/master/CONTRIBUTING.md
@@ -0,0 +1,25 @@
1
+ version: 2
2
+ updates:
3
+ - package-ecosystem: "bundler"
4
+ directory: "/"
5
+ versioning-strategy: increase-if-necessary
6
+ schedule:
7
+ interval: "daily"
8
+ labels:
9
+ - "dependencies"
10
+ - "dependencies:bundler"
11
+ assignees:
12
+ - "Sharparam"
13
+ reviewers:
14
+ - "Sharparam"
15
+ - package-ecosystem: "github-actions"
16
+ directory: "/"
17
+ schedule:
18
+ interval: "daily"
19
+ labels:
20
+ - "dependencies"
21
+ - "dependencies:github-actions"
22
+ assignees:
23
+ - "Sharparam"
24
+ reviewers:
25
+ - "Sharparam"
@@ -0,0 +1,29 @@
1
+ name: main
2
+
3
+ on: [ push, pull_request ]
4
+
5
+ jobs:
6
+ build:
7
+ strategy:
8
+ fail-fast: false
9
+ matrix:
10
+ os:
11
+ - ubuntu-latest
12
+ - macos-latest
13
+ ruby:
14
+ - 2.6
15
+ - 2.7
16
+ - '3.0'
17
+ #- head
18
+ - truffleruby
19
+ - truffleruby-head
20
+ runs-on: ${{ matrix.os }}
21
+ steps:
22
+ - uses: actions/checkout@v2.3.4
23
+ - name: Set up Ruby
24
+ uses: ruby/setup-ruby@v1
25
+ with:
26
+ ruby-version: ${{ matrix.ruby }}
27
+ bundler-cache: true
28
+ - name: Run the default task
29
+ run: bundle exec rake
data/.gitignore ADDED
@@ -0,0 +1,78 @@
1
+
2
+ # Created by https://www.toptal.com/developers/gitignore/api/ruby
3
+ # Edit at https://www.toptal.com/developers/gitignore?templates=ruby
4
+
5
+ ### Ruby ###
6
+ *.gem
7
+ *.rbc
8
+ /.config
9
+ /coverage/
10
+ /InstalledFiles
11
+ /pkg/
12
+ /spec/reports/
13
+ /spec/examples.txt
14
+ /test/tmp/
15
+ /test/version_tmp/
16
+ /tmp/
17
+
18
+ # Used by dotenv library to load environment variables.
19
+ .env
20
+
21
+ # Ignore Byebug command history file.
22
+ .byebug_history
23
+
24
+ ## Specific to RubyMotion:
25
+ .dat*
26
+ .repl_history
27
+ build/
28
+ *.bridgesupport
29
+ build-iPhoneOS/
30
+ build-iPhoneSimulator/
31
+
32
+ ## Specific to RubyMotion (use of CocoaPods):
33
+ #
34
+ # We recommend against adding the Pods directory to your .gitignore. However
35
+ # you should judge for yourself, the pros and cons are mentioned at:
36
+ # https://guides.cocoapods.org/using/using-cocoapods.html#should-i-check-the-pods-directory-into-source-control
37
+ # vendor/Pods/
38
+
39
+ ## Documentation cache and generated files:
40
+ /.yardoc/
41
+ /_yardoc/
42
+ /doc/
43
+ /rdoc/
44
+
45
+ ## Environment normalization:
46
+ /.bundle/
47
+ /vendor/bundle
48
+ /lib/bundler/man/
49
+
50
+ # for a library or gem, you might want to ignore these files since the code is
51
+ # intended to run in multiple environments; otherwise, check them in:
52
+ # Gemfile.lock
53
+ # .ruby-version
54
+ # .ruby-gemset
55
+
56
+ # unless supporting rvm < 1.11.0 or doing something fancy, ignore this:
57
+ .rvmrc
58
+
59
+ # Used by RuboCop. Remote config files pulled in from inherit_from directive.
60
+ .rubocop-https?--*
61
+
62
+ # End of https://www.toptal.com/developers/gitignore/api/ruby
63
+
64
+ # Ignore RSpec cache
65
+ .rspec_status
66
+
67
+ # Ignore config files
68
+ config.yml
69
+ config.toml
70
+ !*.example.yml
71
+ !*.example.toml
72
+
73
+ # Ignore FF Logs credentials
74
+ fflogs_token.json
75
+
76
+ # Ignore GCP credentials
77
+ google_credentials.json
78
+ google_token.yaml
data/.rspec ADDED
@@ -0,0 +1,3 @@
1
+ --format documentation
2
+ --color
3
+ --require spec_helper
data/.rubocop.yml ADDED
@@ -0,0 +1,110 @@
1
+ # The behavior of RuboCop can be controlled via the .rubocop.yml
2
+ # configuration file. It makes it possible to enable/disable
3
+ # certain cops (checks) and to alter their behavior if they accept
4
+ # any parameters. The file can be placed either in your home
5
+ # directory or in some project directory.
6
+ #
7
+ # RuboCop will start looking for the configuration file in the directory
8
+ # where the inspected file is and continue its way up to the root directory.
9
+ #
10
+ # See https://docs.rubocop.org/rubocop/configuration
11
+
12
+ require:
13
+ - rubocop-rake
14
+ - rubocop-rspec
15
+
16
+ Gemspec/DateAssignment: # (new in 1.10)
17
+ Enabled: true
18
+
19
+ Layout/LineLength:
20
+ Max: 80
21
+
22
+ Layout/SpaceBeforeBrackets: # (new in 1.7)
23
+ Enabled: true
24
+
25
+ Lint/AmbiguousAssignment: # (new in 1.7)
26
+ Enabled: true
27
+
28
+ Lint/DeprecatedConstants: # (new in 1.8)
29
+ Enabled: true
30
+
31
+ Lint/DuplicateBranch: # (new in 1.3)
32
+ Enabled: true
33
+
34
+ Lint/DuplicateRegexpCharacterClassElement: # (new in 1.1)
35
+ Enabled: true
36
+
37
+ Lint/EmptyBlock: # (new in 1.1)
38
+ Enabled: true
39
+
40
+ Lint/EmptyClass: # (new in 1.3)
41
+ Enabled: true
42
+
43
+ Lint/LambdaWithoutLiteralBlock: # (new in 1.8)
44
+ Enabled: true
45
+
46
+ Lint/NoReturnInBeginEndBlocks: # (new in 1.2)
47
+ Enabled: true
48
+
49
+ Lint/NumberedParameterAssignment: # (new in 1.9)
50
+ Enabled: true
51
+
52
+ Lint/OrAssignmentToConstant: # (new in 1.9)
53
+ Enabled: true
54
+
55
+ Lint/RedundantDirGlobSort: # (new in 1.8)
56
+ Enabled: true
57
+
58
+ Lint/SymbolConversion: # (new in 1.9)
59
+ Enabled: true
60
+
61
+ Lint/ToEnumArguments: # (new in 1.1)
62
+ Enabled: true
63
+
64
+ Lint/TripleQuotes: # (new in 1.9)
65
+ Enabled: true
66
+
67
+ Lint/UnexpectedBlockArity: # (new in 1.5)
68
+ Enabled: true
69
+
70
+ Lint/UnmodifiedReduceAccumulator: # (new in 1.1)
71
+ Enabled: true
72
+
73
+ Metrics/MethodLength:
74
+ Max: 15
75
+
76
+ Style/ArgumentsForwarding: # (new in 1.1)
77
+ Enabled: true
78
+
79
+ Style/CollectionCompact: # (new in 1.2)
80
+ Enabled: true
81
+
82
+ Style/DocumentDynamicEvalDefinition: # (new in 1.1)
83
+ Enabled: true
84
+
85
+ Style/EndlessMethod: # (new in 1.8)
86
+ Enabled: true
87
+
88
+ Style/HashConversion: # (new in 1.10)
89
+ Enabled: true
90
+
91
+ Style/HashExcept: # (new in 1.7)
92
+ Enabled: true
93
+
94
+ Style/IfWithBooleanLiteralBranches: # (new in 1.9)
95
+ Enabled: true
96
+
97
+ Style/NegatedIfElseCondition: # (new in 1.2)
98
+ Enabled: true
99
+
100
+ Style/NilLambda: # (new in 1.3)
101
+ Enabled: true
102
+
103
+ Style/RedundantArgument: # (new in 1.4)
104
+ Enabled: true
105
+
106
+ Style/StringChars: # (new in 1.12)
107
+ Enabled: true
108
+
109
+ Style/SwapValues: # (new in 1.1)
110
+ Enabled: true
data/.solargraph.yml ADDED
@@ -0,0 +1,22 @@
1
+ ---
2
+ include:
3
+ - "**/*.rb"
4
+ exclude:
5
+ - spec/**/*
6
+ - test/**/*
7
+ - vendor/**/*
8
+ - ".bundle/**/*"
9
+ require: []
10
+ domains: []
11
+ reporters:
12
+ - rubocop
13
+ #- require_not_found
14
+ formatter:
15
+ rubocop:
16
+ cops: safe
17
+ except: []
18
+ only: []
19
+ extra_args: []
20
+ require_paths: []
21
+ plugins: []
22
+ max_files: 5000
@@ -0,0 +1,3 @@
1
+ {
2
+ "solargraph.useBundler": true
3
+ }
data/.yardopts ADDED
@@ -0,0 +1,3 @@
1
+ --markup markdown
2
+ --readme README.md
3
+ - LICENSE CODE_OF_CONDUCT.md CONTRIBUTING.md
@@ -0,0 +1,130 @@
1
+ # Contributor Covenant Code of Conduct
2
+
3
+ ## Our Pledge
4
+
5
+ We as members, contributors, and leaders pledge to make participation in our
6
+ community a harassment-free experience for everyone, regardless of age, body
7
+ size, visible or invisible disability, ethnicity, sex characteristics, gender
8
+ identity and expression, level of experience, education, socio-economic status,
9
+ nationality, personal appearance, race, religion, or sexual identity and
10
+ orientation.
11
+
12
+ We pledge to act and interact in ways that contribute to an open, welcoming,
13
+ diverse, inclusive, and healthy community.
14
+
15
+ ## Our Standards
16
+
17
+ Examples of behavior that contributes to a positive environment for our
18
+ community include:
19
+
20
+ * Demonstrating empathy and kindness toward other people
21
+ * Being respectful of differing opinions, viewpoints, and experiences
22
+ * Giving and gracefully accepting constructive feedback
23
+ * Accepting responsibility and apologizing to those affected by our mistakes,
24
+ and learning from the experience
25
+ * Focusing on what is best not just for us as individuals, but for the overall
26
+ community
27
+
28
+ Examples of unacceptable behavior include:
29
+
30
+ * The use of sexualized language or imagery, and sexual attention or
31
+ advances of any kind
32
+ * Trolling, insulting or derogatory comments, and personal or political attacks
33
+ * Public or private harassment
34
+ * Publishing others' private information, such as a physical or email
35
+ address, without their explicit permission
36
+ * Other conduct which could reasonably be considered inappropriate in a
37
+ professional setting
38
+
39
+ ## Enforcement Responsibilities
40
+
41
+ Community leaders are responsible for clarifying and enforcing our standards of
42
+ acceptable behavior and will take appropriate and fair corrective action in
43
+ response to any behavior that they deem inappropriate, threatening, offensive,
44
+ or harmful.
45
+
46
+ Community leaders have the right and responsibility to remove, edit, or reject
47
+ comments, commits, code, wiki edits, issues, and other contributions that are
48
+ not aligned to this Code of Conduct, and will communicate reasons for moderation
49
+ decisions when appropriate.
50
+
51
+ ## Scope
52
+
53
+ This Code of Conduct applies within all community spaces, and also applies when
54
+ an individual is officially representing the community in public spaces.
55
+ Examples of representing our community include using an official e-mail address,
56
+ posting via an official social media account, or acting as an appointed
57
+ representative at an online or offline event.
58
+
59
+ ## Enforcement
60
+
61
+ Instances of abusive, harassing, or otherwise unacceptable behavior may be
62
+ reported to the community leaders responsible for enforcement at
63
+ [purtea@sharparam.com][contact]. All complaints will be reviewed and
64
+ investigated promptly and fairly.
65
+
66
+ All community leaders are obligated to respect the privacy and security of the
67
+ reporter of any incident.
68
+
69
+ ## Enforcement Guidelines
70
+
71
+ Community leaders will follow these Community Impact Guidelines in determining
72
+ the consequences for any action they deem in violation of this Code of Conduct:
73
+
74
+ ### 1. Correction
75
+
76
+ **Community Impact**: Use of inappropriate language or other behavior deemed
77
+ unprofessional or unwelcome in the community.
78
+
79
+ **Consequence**: A private, written warning from community leaders, providing
80
+ clarity around the nature of the violation and an explanation of why the
81
+ behavior was inappropriate. A public apology may be requested.
82
+
83
+ ### 2. Warning
84
+
85
+ **Community Impact**: A violation through a single incident or series of
86
+ actions.
87
+
88
+ **Consequence**: A warning with consequences for continued behavior.
89
+ No interaction with the people involved, including unsolicited interaction with
90
+ those enforcing the Code of Conduct, for a specified period of time.
91
+ This includes avoiding interactions in community spaces as well as external
92
+ channels like social media. Violating these terms may lead to a temporary or
93
+ permanent ban.
94
+
95
+ ### 3. Temporary Ban
96
+
97
+ **Community Impact**: A serious violation of community standards, including
98
+ sustained inappropriate behavior.
99
+
100
+ **Consequence**: A temporary ban from any sort of interaction or public
101
+ communication with the community for a specified period of time. No public or
102
+ private interaction with the people involved, including unsolicited interaction
103
+ with those enforcing the Code of Conduct, is allowed during this period.
104
+ Violating these terms may lead to a permanent ban.
105
+
106
+ ### 4. Permanent Ban
107
+
108
+ **Community Impact**: Demonstrating a pattern of violation of community
109
+ standards, including sustained inappropriate behavior, harassment of an
110
+ individual, or aggression toward or disparagement of classes of individuals.
111
+
112
+ **Consequence**: A permanent ban from any sort of public interaction within the
113
+ community.
114
+
115
+ ## Attribution
116
+
117
+ This Code of Conduct is adapted from the [Contributor Covenant][homepage],
118
+ version 2.0, available at
119
+ https://www.contributor-covenant.org/version/2/0/code_of_conduct.html.
120
+
121
+ Community Impact Guidelines were inspired by
122
+ [Mozilla's code of conduct enforcement ladder][mcocel].
123
+
124
+ For answers to common questions about this code of conduct, see the FAQ at
125
+ https://www.contributor-covenant.org/faq. Translations are available at
126
+ https://www.contributor-covenant.org/translations.
127
+
128
+ [contact]: mailto:purtea@sharparam.com
129
+ [homepage]: https://www.contributor-covenant.org
130
+ [mcocel]: https://github.com/mozilla/diversity