See the wiki.
See the wiki.
Clojurians slack (join) has a channel #cljsjs for talk about Cljsjs.
- Start commit message with
[<library-name>]
- Separate subject from body with a blank line
- Limit the subject line to 50 characters
- Capitalize the subject line
- Do not end the subject line with a period
- Use the imperative mood in the subject line
- "Add x", "Fix y", "Support z", "Remove x"
- Wrap the body at 72 characters
- Use the body to explain what and why vs. how
Example of good commit message: [pikaday] Add minified version of js and css
- Base your changes on the latest master commit. This will ensure that the build scripts are up-to-date.
- Please increment the build number (version part after the dash). This way maintainers only need to merge the PR and don't need to make any changes themselves.
- If you are asked to implement changes, please comment on PR after implementing the changes. This way maintainers will more easily notice your updates.
Pull requests need to be reviewed and eventually published to Clojars. If you would like to help with this process go to the list of open pull requests and pick an open PR.
Check the PR for the following things and help contributors understand where and how their contribution could be improved:
-
The directory structure in the
target/
after runningboot package
looks like the followingtarget/ ├── cljsjs │ └── <library-name> │ ├── common │ │ └── <library-name>.ext.js │ ├── development │ │ └── <library-name>.inc.js │ └── production │ └── <library-name>.min.inc.js └── deps.cljs
-
The externs are reasonably complete. Externs are an inexact science and it can't easily be verified if externs are complete but PRs should generally aim to provide externs as complete as possible.
-
The version number in the README matches the version number declared in the packages
build.boot
file. -
The version number ends with
-X
whereX
is a CLJSJS build number of the packages original version. This allows improving packages while clearly indicating that the original source version is unchanged. -
The PR's commits start with
[<library-name>]
followed by a description of the change. Commits are squashed where appropriate.
After you've reviewed a pull request or two we will happily add you to the cljsjs group on Clojars allowing you to deploy updates on your own. :-)
To test that your additions or changes to a library were successful, run following command from within the library-specific directory:
$ boot package install target
This will run your package instructions and create a jar for the given library in your local maven repository. From there, it can be included in projects and tested locally.
Deployment to Clojars is automated using a bash script and CircleCI.