Skip to content

Commit

Permalink
Merge branch 'master' into v4
Browse files Browse the repository at this point in the history
  • Loading branch information
jankapunkt authored Dec 22, 2023
2 parents 4bcccf2 + d4731e8 commit 57357c9
Show file tree
Hide file tree
Showing 26 changed files with 4,315 additions and 350 deletions.
103 changes: 103 additions & 0 deletions .github/CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,103 @@
# Contributing to Meteor Roles

Any contribution to this repository is highly appreciated!

## Setup development env

### Clone project and create a new branch to work on

First, clone this repository and create a new branch to work on.
Branch names should follow the GitFlow standard and start with a descriptive prefix of their intended outcome, for example:

- `feature/` for features
- `fix/` for general fixes

Then the name of the branch should describe the purpose of the branch and potentially reference the issue number it is solving.

```shell
$ git clone [email protected]:Meteor-Community-Packages/meteor-roles.git
$ cd meteor-roles
$ git checkout -b fix/some-issue
```

### Initialize test app

We use a proxy Meteor application to run our tests and handle coverage etc.
This app contains several npm scripts to provide the complete toolchain that is required
for your development and testing needs.

The setup is very easy. Go into the `testapp` directory, install dependencies and link
the package:

```shell
$ cd testapp
$ meteor npm install
$ meteor npm run setup # this is important for the tools to work!
```

## Development toolchain

The `testapp` comes with some builtin scripts you can utilize during your development.
They will also be picked up by our CI during pull requests.
Therefore, it's a good call for you, that if they pass or fail, the CI will do so, too.

**Note: all tools require the npm `setup` script has been executed at least once!**

### Linter

We use `standard` as our linter. You can run either the linter or use it's autofix feature for
the most common issues:

```shell
# in testapp
$ meteor npm run lint # show only outputs
$ meteor npm run lint:fix # with fixes + outputs
```

### Tests

We provide three forms of tests: once, watch, coverage

#### Once

Simply runs the test suite once, without coverage collection:

```shell
$ meteor npm run test
```

#### Watch

Runs the test suite in watch mode, good to use during active development, where your changes
are picked up automatically to re-run the tests:

```shell
$ meteor npm run test:watch
```

#### Coverage

Runs the test suite once, including coverage report generation.
Generates an html and json report output.

```shell
$ meteor npm run test:coverage
$ meteor npm run report # summary output in console
```

If you want to watch the HTML output to find (un)covered lines, open
the file at `testapp/.coverage/index.html` in your browser.

## Open a pull request

If you open a pull request, please make sure the following requirements are met:

- the `lint` script is passing
- the `test` script is passing
- your contribution is on point and solves one issue (not multiple)
- your commit messages are descriptive and informative
- complex changes are documented in the code with comments or jsDoc-compatible documentation

Please understand, that there will be a review process and your contribution
might require changes before being merged. This is entirely to ensure quality and is
never used as a personal offense.
37 changes: 37 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
---
name: Bug report
about: Create a report to help us improve
title: ''
labels: bug
assignees: ''

---
<!-- Read a guide on [opening issues](https://opensource.guide/how-to-contribute/#opening-an-issue) -->
**Describe the bug**

A clear and concise description of what the bug is.

**To Reproduce**

Steps to reproduce the behavior:
1. Go to '...'
2. Click on '....'
3. Scroll down to '....'
4. See error

**Expected behavior**

A clear and concise description of what you expected to happen.

**Screenshots**

If applicable, add screenshots to help explain your problem.

**Versions (please complete the following information):**
- Meteor version: [e.g. 1.8.2]
- Browser: [e.g. Firefox, Chrome, Safari]
- Version: [e.g. 1.0.0]

**Additional context**

Add any other context about the problem here.
24 changes: 24 additions & 0 deletions .github/ISSUE_TEMPLATE/feature_request.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
---
name: Feature request
about: Suggest an idea for this project
title: ''
labels: enhancement
assignees: ''

---
<!-- Read a guide on [opening issues](https://opensource.guide/how-to-contribute/#opening-an-issue) -->
**Is your feature request related to a problem? Please describe.**

A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]

**Describe the solution you'd like**

A clear and concise description of what you want to happen.

**Describe alternatives you've considered**

A clear and concise description of any alternative solutions or features you've considered.

**Additional context**

Add any other context or screenshots about the feature request here.
26 changes: 26 additions & 0 deletions .github/SECURITY.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
# Security Policy

## Supported Versions

Unless otherwise noted, MCP packages and projects support the latest version of Meteor.
As of the time of writing this in September 2023 it is Meteor 2.13 and, in general the 2.x series.
Support for Meteor 1.x is not guaranteed and at best can include Meteor 1.12.1.
At the present time, we are also preparing to support Meteor 3.0 which is in development.

| Meteor Version | Supported |
| -------------- | ------------------ |
| 3.0 | 🚧 |
| > 2.0 ||
| < 1.12 ||

## Reporting a Vulnerability

We are not providing support for Meteor itself. See their [SECURITY](https://github.com/meteor/meteor/blob/devel/SECURITY.md) for more information.

Any security concerns should be first raised in the repository of the affected package.
If you want to report a vulnerability privately, please contact the maintainer of the package directly.
If you are not sure who that is, you can contact one of the following people, and they will take it from there:

Jan Dvorak
[email protected]

13 changes: 6 additions & 7 deletions .github/workflows/testsuite.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,10 +12,10 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: checkout
uses: actions/checkout@v3
uses: actions/checkout@v4

- name: setup node
uses: actions/setup-node@v3
uses: actions/setup-node@v4
with:
node-version: 16

Expand All @@ -36,16 +36,15 @@ jobs:
strategy:
matrix:
meteorRelease:
- '2.3'
- '2.7.3'
- '2.12'
- '2.8.0'
- '2.14'
# Latest version
steps:
- name: Checkout code
uses: actions/checkout@v3
uses: actions/checkout@v4

- name: Install Node.js
uses: actions/setup-node@v3
uses: actions/setup-node@v4
with:
node-version: 16

Expand Down
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@ npm-debug.log
smart.lock

.idea
.DS_Store
docs/
node_modules/
.npm/
Expand Down
22 changes: 11 additions & 11 deletions .versions
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
[email protected]
alanning:roles@3.5.1
alanning:roles@3.6.0
[email protected]
[email protected]
[email protected]
Expand All @@ -12,7 +12,7 @@ [email protected]
[email protected]
[email protected]
[email protected]
[email protected].1
[email protected].2
[email protected]
[email protected]
[email protected]
Expand All @@ -22,28 +22,28 @@ [email protected]
[email protected]
[email protected]
[email protected]
http@1.4.2
http@2.0.0
[email protected]
[email protected]
lmieulet:meteor-coverage@3.2.0
lmieulet:meteor-packages-coverage@0.2.0
local-test:alanning:roles@3.5.1
lmieulet:meteor-coverage@4.1.0
lmieulet:meteor-legacy-coverage@0.1.0
local-test:alanning:roles@3.6.0
[email protected]
[email protected]
[email protected]
meteortesting:[email protected]
meteortesting:[email protected]
[email protected]
meteortesting:[email protected]
meteortesting:[email protected]
meteortesting:[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected].6
[email protected].7
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
practicalmeteor:[email protected]
[email protected]
[email protected]
[email protected]
Expand Down
11 changes: 5 additions & 6 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,13 +7,12 @@ Any contribution to this repository is highly appreciated!
### Clone project and create a new branch to work on

First, clone this repository and create a new branch to work on.
Branch names should start with a descriptive suffix of their intended outcome, for example:
Branch names should follow the GitFlow standard and start with a descriptive prefix of their intended outcome, for example:

- `feature-` for features
- `tests-` for contributions that improve testing
- `fix-` for general fixes
- `build-` for contributions that update the build process
- `ci-` for contributions that improve/update the ci
- `feature/` for features
- `fix/` for general fixes

Then the name of the branch should describe the purpose of the branch and potentially reference the issue number it is solving.

```shell
$ git clone [email protected]:Meteor-Community-Packages/meteor-roles.git
Expand Down
12 changes: 12 additions & 0 deletions History.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,17 @@
# Changelog

## v3.6.1

* Added types for async functions [#386](https://github.com/Meteor-Community-Packages/meteor-roles/pull/386) [@storytellercz](https://github.com/sponsors/StorytellerCZ)
* Updated docs with async functions [@storytellercz](https://github.com/sponsors/StorytellerCZ)
* Updated `zodern:types` to v1.0.10

## v3.6.0

* Added async versions of functions [#361](https://github.com/Meteor-Community-Packages/meteor-roles/pull/361) [#378](https://github.com/Meteor-Community-Packages/meteor-roles/pull/378) [@bratelefant](https://github.com/bratelefant) [@storytellercz](https://github.com/sponsors/StorytellerCZ) [@jankapunkt](https://github.com/sponsors/jankapunkt)
* Added missing types [#383](https://github.com/Meteor-Community-Packages/meteor-roles/pull/383) [@storytellercz](https://github.com/sponsors/StorytellerCZ)
* Add complete test suite [#375](https://github.com/Meteor-Community-Packages/meteor-roles/pull/375) [@jankapunkt](https://github.com/sponsors/jankapunkt) [#380](https://github.com/Meteor-Community-Packages/meteor-roles/pull/380) [@bratelefant](https://github.com/bratelefant)

## v3.5.1

* Fix for index creation functions losing context [#371](https://github.com/Meteor-Community-Packages/meteor-roles/pull/371) [@copleykj](https://github.com/sponsors/copleykj)
Expand Down
Loading

0 comments on commit 57357c9

Please sign in to comment.