Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Move consent #22

Merged
merged 83 commits into from
Aug 22, 2022
Merged

Move consent #22

merged 83 commits into from
Aug 22, 2022

Conversation

xjunior
Copy link
Contributor

@xjunior xjunior commented Aug 22, 2022

Move consent library (with history) from powerhome/consent into powerhome/power-tools.

Commits moved

  • Initial extraction of Nitro::Consent
  • Fix railtie
  • Make actions an array instead of a hash
  • Add Permission
  • Add support for default view
  • Unexisting view means no permission
  • Add support for object conditions
  • Extract Consent::Permissions
  • Update Consent rspec matchers
  • Add documentation
  • Documentation update
  • Allow multiple permission directories
  • Add consent:permissins rails generator
  • Bump version
  • Remove Nitro module/namespace
  • Rename gem from nitro-consent to consent
  • Bump version
  • Remove private repository restriction
  • Add Travis badge
  • Setup rubygems deployment
  • Bump version
  • Creates a generator for spec
  • Make subjects an array instead of a hash
  • Move methods from Rspec to consent API
  • Bump to 0.4
  • Bump activesupport version – clear security alert
  • Bump version 0.4.2
  • Prevent permissions from being loaded twice
  • Bump version 0.4.3
  • Fix flaky spec on symbol permissions
  • Update bundler version to satisfy CI scenario
  • Load permissions via load instead of require
  • Introduce Consent::Reloader to reload permissions in rails
  • Move consent preloading to after_initialize to avoid permissions loaded twice in production
  • Rubocop compliant code
  • Add basic YARD docs
  • Configure travis to run rubocop on test
  • Bump consent to v0.5.0
  • Only deploy on ruby 2.5.0
  • Always reload on prepare
  • Release v0.5.1
  • Bump version 0.5.2
  • License as MIT
  • License metadata
  • Whitespace
  • Release 0.6.0
  • Introduce ability#consent to consent specific permission to ability
  • Build Consent::Permission with keys
  • Do not consent invalid permission
  • Only apply default permissions on initialization
  • Remove permissions mapping
  • Remove unused subject#view_for
  • Remove unused dependency on activesupport
  • Update supported rubies
  • Update documentation
  • Add renovate.json
  • Update README.md
  • Release 1.0.0
  • Update rake
  • Add pry for development
  • Simplify find_subjects
  • Add subject reference to action
  • Find view definition within action context
  • Remove unused permission class
  • Remove nitro directory
  • Fix rspec module
  • Fix rubocop violations
  • Extract Consent::Rspec::ConsentAction and ConsentView matchers
  • Add activerecord to consent test environment
  • Turn SomeModel into an activerecord
  • Add support for testing scope conditions
  • Improve messages for consent action and consent view matchers
  • Release v1.0.1
  • Adding initial portal configs
  • Fixed heroes typo
  • Moved consent to packages

@xjunior xjunior marked this pull request as ready for review August 22, 2022 19:40
@xjunior xjunior requested a review from a team as a code owner August 22, 2022 19:40
docs/README.md Outdated Show resolved Hide resolved
@xjunior xjunior enabled auto-merge (squash) August 22, 2022 20:05
that-jill
that-jill previously approved these changes Aug 22, 2022
README.md Outdated Show resolved Hide resolved
@xjunior xjunior merged commit e641c5a into main Aug 22, 2022
@xjunior xjunior deleted the move-consent branch August 22, 2022 21:26
@xjunior xjunior mentioned this pull request Oct 26, 2022
xjunior pushed a commit that referenced this pull request Oct 26, 2022
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
wadewinningham added a commit that referenced this pull request Oct 26, 2022
* Initial commit

* Make heroes-for-hire team CODEOWNERS of this repo (#1)

* Ruby linting gems (#2)

* Create rubocop-powerhome extension

* Introduce rubocop-cobra plugin with all cobra specific cops

* Fix copyright in LICENSE.txt

Co-authored-by: Ben Langfeld <ben@langfeld.me>

* Initial workflow setup

* Only release when tests passes

* Fix release command

* Set working directory for ruby build

* Add linux platform

* Remove duplicated run

* Manually require spec helper

* Write some documentation

Co-authored-by: Ben Langfeld <ben@langfeld.me>

* Publish to rubygems from workdir (#3)

* Publish to rubygems from workdir

* Switch from defaults to env

* Deploy for testing purpose

* Only release when version file changes

* Set WORKDIR from PROJECT_DIR

* Test release rubocop-cobra

* Only release tagged commits

* Fix release (#4)

Bump gem versions

* Correct links (#5)

* Comply with our own rules in the docs (#6)

* Build on ruby 3.1.2 (#7)

* Build on ruby 3.1.2

* Align required ruby version in Rubocop and gemspecs

* Add overriding AllCops/TargetRubyVersion recomendation

* Bump version

* Add Garett as author (#11)

* Create ViewComponent file placement cop (#10)

* Add debugging tool to rubocop-powerhome

* Add debugging tool to rubocop-cobra

* Create ViewComponentFilePlacement cop

* Small description fixes

Co-authored-by: Carlos Palhares <chjunior@gmail.com>

* ES Linting lib (#12)

* Introduce @powerhome/eslint-config library

* Initial github workflow

* Release step

* Validate eslint-config project with base config

* Fully switch to yarn

* Fix job names

* Update eslint-config/README.md

Co-authored-by: Ben Langfeld <ben@langfeld.me>

Co-authored-by: Ben Langfeld <ben@langfeld.me>

* Add publish config to make @powerhome/eslint-config public (#14)

* Configure Renovate (#13)

* Add renovate.json

* Standard renovate rules

Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Ben Langfeld <ben@langfeld.me>
Co-authored-by: Carlos Palhares <chjunior@gmail.com>

* Allow for ApplicationComponent namespacing (#25)

* Allow for ApplicationComponent namespacing

* Add Cobra/ViewComponentFilePlacement to default config

* Change version to future version

* Update rubocop-cobra/config/default.yml

Co-authored-by: Gabriel Fernandes Pereira <gmfvpereira@users.noreply.github.com>

Co-authored-by: Carlos Palhares <chjunior@gmail.com>
Co-authored-by: Gabriel Fernandes Pereira <gmfvpereira@users.noreply.github.com>

* Create Naming/ViewComponent cop (#26)

* Setup rubocop-performance for new naming cop

* Implement naming cop

* Add a cop description with examples

* Do not enforce BlockLength in spec files

* And gemspec

* Add rubocop binstubs

* Add Naming/ViewComponent to default config

Co-authored-by: Carlos Palhares <chjunior@gmail.com>

* Bump rack from 2.2.3 to 2.2.3.1 in /rubocop-powerhome (#29)

Bumps [rack](https://github.com/rack/rack) from 2.2.3 to 2.2.3.1.
- [Release notes](https://github.com/rack/rack/releases)
- [Changelog](https://github.com/rack/rack/blob/main/CHANGELOG.md)
- [Commits](rack/rack@2.2.3...2.2.3.1)

---
updated-dependencies:
- dependency-name: rack
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump rack from 2.2.3 to 2.2.3.1 in /rubocop-cobra (#30)

Bumps [rack](https://github.com/rack/rack) from 2.2.3 to 2.2.3.1.
- [Release notes](https://github.com/rack/rack/releases)
- [Changelog](https://github.com/rack/rack/blob/main/CHANGELOG.md)
- [Commits](rack/rack@2.2.3...2.2.3.1)

---
updated-dependencies:
- dependency-name: rack
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Create Style/NoHelpers cop (#28)

* Create Style/NoHelpers cop

* Update rubocop-powerhome/config/default.yml

Co-authored-by: Ben Langfeld <ben@langfeld.me>

Co-authored-by: Ben Langfeld <ben@langfeld.me>

* Update tj-actions/changed-files action to v22 (#31)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* Bump to 0.4.0 (#32)

* Bump to 0.4.0

* Add to CHANGELOGs

* Run bundle in repos

* Update actions/checkout action to v3 (#18)

Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Carlos Palhares <chjunior@gmail.com>

* Fix Naming/ViewComponent - Patch to 0.4.1 (#33)

* Do not fail for classes that do not inherit

* Bump patch version

Co-authored-by: Carlos Palhares <chjunior@gmail.com>

* Initial portal setup (#34)

* Initial portal setup

* Fix portal

* Update portal.yml

* Add undocumented fields to mkdocs

* Power Linting lives in Power Application Framework

* Split gems into subcomponents. Render docs for each

* Represent eslint-config

Co-authored-by: Ryan Rodriguez <62253265+ryanmrodriguez@users.noreply.github.com>
Co-authored-by: Ryan Rodriguez <ryanrodriguez@protonmail.com>

* Pin dependency babel-eslint to v (#15)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* Give more useful output on violations (#36)

* Give more useful output on violations

These are the standard options we tend to pass.

* Changelog

* Fix rel links in README (#37)

* Lock file maintenance (#35)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* Ensure license compliance (#41)

* Lock file maintenance (#40)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* Update tj-actions/changed-files action to v23 (#39)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* Update all non-major dependencies (#16)

* Update all non-major dependencies

* Fix lockfile

Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Carlos Palhares <chjunior@gmail.com>
Co-authored-by: Jill Klang <jill.tankersley@powerhrg.com>

* Update dependency babel-eslint to v10 (#19)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* Update dependency eslint-plugin-flowtype to v8 (#21)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* Update dependency eslint-plugin-jsx-control-statements to v3 (#22)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* Update dependency eslint-webpack-plugin to v3 (#23)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* Update typescript-eslint monorepo to v5 (major) (#24)

Update typescript-eslint monorepo to v5

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* Lock file maintenance (#42)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* Update all non-major dependencies (#44)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* Ignore rspec's describe and context on BlockLength (#43)

* Ignore rspec's describe and context on BlockLength

Ignore rspec's describe and context on BlockLength

* Update CHANGELOG

* Update dependency babel-eslint to v10 (#45)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* Update dependency rubocop to ~> 1.32.0 (#46)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* Update tj-actions/changed-files action to v24 (#47)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* Release version 0.5.0 (#48)

* Bump version 0.5.0

* Update rubocop-powerhome

* Update rubocop-powerhome in rubocop-cobra

* Release by tag name (#49)

* Release by tag name

* Use workflow name

* Remove unnecessary release conditional (#50)

* custom release command (#51)

* Remove unnecessary release conditional

* Release with gem push instead of rake release

* custom release command (#52)

* Remove unnecessary release conditional

* Release with gem push instead of rake release

* Push with release:rubygem_push task

* Update all non-major dependencies to v5.32.0 (#54)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* Lock file maintenance (#53)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* Update all non-major dependencies (#55)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* Lock file maintenance (#56)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* Update all non-major dependencies (#57)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* Update dependency typescript to v4.8.2 (#59)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* Update all non-major dependencies (#60)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* Lock file maintenance (#61)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* Update all non-major dependencies to v5.36.1 (#62)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* Update dependency rubocop to "~> 1.36.0" (#63)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* Update all non-major dependencies (#64)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* Update all non-major dependencies (#66)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* Update all non-major dependencies to v5.37.0 (#67)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* Lock file maintenance (#65)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* Lock file maintenance (#68)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* Update dependency @typescript-eslint/parser to v5.38.0 (#69)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* Update dependency @typescript-eslint/eslint-plugin to v5.38.0 (#70)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* Lock file maintenance (#73)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* Update dependency node to v14.20.1 (#71)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* Update all non-major dependencies to v5.38.1 (#74)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* Lock file maintenance (#76)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* Lock file maintenance (#77)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* Update dependency node to v16 (#72)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* Update all non-major dependencies (#75)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* Move rubocop-cobra

* Move rubocop-powerhome

* Run rubocop-powerhome with multiple versions of rails

* Ignore rails version to run rubocop-cobra

* Ignore Gemfile.lock to support multiple rails versions

* Make rubocop happy - it thinks create is calling FactoryBot.create

* Move eslint-config

* Move documentation and portal setup from power-linting to power-tools

Co-authored-by: Wade Winningham <wade@updrift.com>
Co-authored-by: Ben Langfeld <ben@langfeld.me>
Co-authored-by: Garett Arrowood <garettarrowood@gmail.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Gabriel Fernandes Pereira <gmfvpereira@users.noreply.github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Ryan Rodriguez <62253265+ryanmrodriguez@users.noreply.github.com>
Co-authored-by: Ryan Rodriguez <ryanrodriguez@protonmail.com>
Co-authored-by: Jill Klang <jillian.emilie@gmail.com>
Co-authored-by: Jill Klang <jill.tankersley@powerhrg.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants