Skip to content

Commit

Permalink
docs(generic): add contributing/issue/pull request docs + news
Browse files Browse the repository at this point in the history
  • Loading branch information
malept committed Dec 11, 2016
1 parent eddd61d commit d25d701
Show file tree
Hide file tree
Showing 4 changed files with 218 additions and 0 deletions.
88 changes: 88 additions & 0 deletions CONTRIBUTING.md
@@ -0,0 +1,88 @@
# Contributing to Electron Forge

Electron Forge is a community-driven project. As such, we welcome and encourage all sorts of
contributions. They include, but are not limited to:

* Constructive feedback
* [Questions about usage](#questions-about-usage)
* [Bug reports / technical issues](#before-opening-bug-reportstechnical-issues)
* Documentation changes
* Feature requests
* [Pull requests](#filing-pull-requests)

We strongly suggest that before filing an issue, you search through the existing issues to see
if it has already been filed by someone else.

This project is a part of the Electron ecosystem. As such, all contributions to this project follow
[Electron's code of conduct](https://github.com/electron/electron/blob/master/CODE_OF_CONDUCT.md)
where appropriate.

## Questions about usage

If you have questions about usage, we encourage you to visit one of the several [community-driven
sites](https://github.com/electron/electron#community).

## Before opening bug reports/technical issues

### Debugging

One way to troubleshoot potential problems is to set the `DEBUG` environment variable before
running `electron-forge`. This will print debug information from the specified modules. The
value of the environment variable is a comma-separated list of modules which support this logging
feature. Known modules include:

* `electron-download`
* `electron-forge:*` (always use this one before filing an issue)
* `electron-osx-sign`
* `electron-packager`
* `extract-zip`
* `get-package-info`

We use the [`debug`](https://www.npmjs.com/package/debug#usage) module for this functionality. It
has examples on how to set environment variables if you don't know how.

**If you are using `npm run` to execute `electron-forge`, run the `electron-forge` command
without using `npm run` and make a note of the output, because `npm run` does not print out error
messages when a script errors.**

## Contribution suggestions

We use the label [`help wanted`](https://github.com/MarshallOfSound/electron-forge/issues?q=is%3Aopen+is%3Aissue+label%3A%22help+wanted%22)
in the issue tracker to denote fairly-well-scoped-out bugs or feature requests that the community
can pick up and work on. If any of those labeled issues do not have enough information, please feel
free to ask constructive questions. (This applies to any open issue.)

## Filing Pull Requests

Here are some things to keep in mind as you file pull requests to fix bugs, add new features, etc.:

* Travis CI is used to make sure that the project builds packages as expected on the supported
platforms, using supported Node.js versions, and that the project conforms to the configured
coding standards.
* Unless it's impractical, please write tests for your changes. This will help us so that we can
spot regressions much easier.
* If your PR changes the behavior of an existing feature, or adds a new feature, please add/edit
the package's documentation.
* One of the philosophies of the project is to keep the code base as small as possible. If you are
adding a new feature, think about whether it is appropriate to go into a separate Node module,
and then be integrated into this project.
* If you are contributing a nontrivial change, please add an entry to `NEWS.md`. The format is
similar to the one described at [Keep a Changelog](http://keepachangelog.com/).
* Please **do not** bump the version number in your pull requests, the maintainers will do that.
Feel free to indicate whether the changes require a major, minor, or patch version bump, as
prescribed by the [semantic versioning specification](http://semver.org/).
* This project uses `git-cz` to generate commit messages. To make commits, please run
`npm run commit`.
* If you are continuing the work of another person's PR and need to rebase/squash, please retain the
attribution of the original author(s) and continue the work in subsequent commits.

### Release process

- if you aren't sure if a release should happen, open an issue
- make sure that `NEWS.md` is up to date
- make sure the tests pass
- `npm version <major|minor|patch>`
- `git push && git push --tags` (or `git push` with `git config --global push.followTags true` on latest git)
- create a new GitHub release from the pushed tag with the contents of `NEWS.md` for that version
- close the milestone associated with the version if one is open
- `npm publish`
83 changes: 83 additions & 0 deletions NEWS.md
@@ -0,0 +1,83 @@
# Changes by Version

## Unreleased

## [0.0.9] - 2016-12-10

### Added

* Map Electron Packager `afterExtract` hooks to `require` calls

## [0.0.8] - 2016-12-10

### Added

* Flatpak support for the `make` subcommand (#6)

## [0.0.7] - 2016-12-07

### Fixed

* Add `electron-compile` to the prod dependencies of the initialized app
* Spawn the `zip` command in the containing directory
* Pass through parent environment to the started application

## [0.0.6] - 2016-12-04

### Added

* Windows.Squirrel support for `make` subcommand
* DMG support for the `make` subcommand
* Debian support for the `make` subcommand (#4)
* RPM support for the `make` subcommand

### Fixed

* Throw error when `electron-prebuilt-compile` not found (#2)

## [0.0.5] - 2016-12-03

### Added

* `make` subcommand, with support for zips

### Fixed

* Show linter error if Electron app not found

## [0.0.4] - 2016-12-02

### Fixed

* Launching an app via `start`

## [0.0.3] - 2016-12-02

### Added

* `forge` CLI alias
* Support for using `yarn` to install dependencies

### Changed

* Only support Node 6
* Electron Packager is invoked via its API instead of its CLI

## [0.0.2] - 2016-10-05

### Added

* Debug logging when using the `start` subcommand

## 0.0.1 - 2016-10-05

Initial release.

[0.0.9]: https://github.com/MarshallOfSound/electron-forge/compare/v0.0.8...v0.0.9
[0.0.8]: https://github.com/MarshallOfSound/electron-forge/compare/v0.0.7...v0.0.8
[0.0.7]: https://github.com/MarshallOfSound/electron-forge/compare/v0.0.6...v0.0.7
[0.0.6]: https://github.com/MarshallOfSound/electron-forge/compare/v0.0.5...v0.0.6
[0.0.5]: https://github.com/MarshallOfSound/electron-forge/compare/v0.0.4...v0.0.5
[0.0.4]: https://github.com/MarshallOfSound/electron-forge/compare/v0.0.3...v0.0.4
[0.0.3]: https://github.com/MarshallOfSound/electron-forge/compare/v0.0.2...v0.0.3
[0.0.2]: https://github.com/MarshallOfSound/electron-forge/compare/v0.0.1...v0.0.2
28 changes: 28 additions & 0 deletions issue_template.md
@@ -0,0 +1,28 @@
**Please describe your issue:**


<!-- For bugs and questions, please answer these questions to the best of your ability. -->

**Console output when you run `electron-forge` with the environment variable `DEBUG=electron-forge:*`. (Instructions on how to do so [here](https://www.npmjs.com/package/debug#usage). Please include the stack trace if one exists.**

```
Put the console output here
```

**What command line arguments are you passing?**

```
Put the arguments here
```

**What does your `config.forge` data in `package.json` look like?**

```
Paste the config.forge JSON object here
```

**Please provide either a failing minimal testcase (with a link to the code) or detailed steps to
reproduce your problem. Using `electron-forge init` is a good starting point, if that is not the
source of your problem.**


19 changes: 19 additions & 0 deletions pull_request_template.md
@@ -0,0 +1,19 @@
**Have you read the [section in CONTRIBUTING.md about pull requests](https://github.com/MarshallOfSound/electron-forge/blob/master/CONTRIBUTING.md#filing-pull-requests)?**



**Are your changes appropriately documented?**



**Do your changes have sufficient test coverage?**



**Does the testsuite pass successfully on your local machine?**



**Summarize your changes:**


0 comments on commit d25d701

Please sign in to comment.