To make contributions you should create a fork of the Vaadin repository and check out the sources to your development environment. If you are not familiar with Git and GitHub, you can refer to [GitHub's forking guide](https://guides.github.com/activities/forking/). | To make contributions you should create a fork of the Vaadin repository and check out the sources to your development environment. If you are not familiar with Git and GitHub, you can refer to [GitHub's forking guide](https://guides.github.com/activities/forking/). | ||||
We encourige to develop all features in separate branches. This way you can have one feature per pull request. | |||||
We encourage to develop all features in separate branches. This way you can have one feature per pull request. | |||||
https://robots.thoughtbot.com/keeping-a-github-fork-updated has instructions on how to keep your local fork up to date. | https://robots.thoughtbot.com/keeping-a-github-fork-updated has instructions on how to keep your local fork up to date. | ||||
### Describe the user impact & describe what was done to solve the problem: | ### Describe the user impact & describe what was done to solve the problem: | ||||
This change introduces a separate icon font for valo (9KB instead of 80KB) and decouples Valo from Font Awesome to enable updating Font Awesome without taking Valo into account. | |||||
This change introduces a separate icon font for Valo (9KB instead of 80KB) and decouples Valo from Font Awesome to enable updating Font Awesome without taking Valo into account. | |||||
This change also makes it easy to not load Font Awesome when using Valo by setting $v-font-awesome:false | This change also makes it easy to not load Font Awesome when using Valo by setting $v-font-awesome:false | ||||
## Source code auto-formatting | ## Source code auto-formatting | ||||
Before submitting changes to Github, run the command `mvn process-sources` from project's root. This maven goal automatically formats source code according to Vaadin standards. The same goal is run automatically if you invoke `mvn install` or `mvn compile`. | |||||
Before submitting changes to Github, run the command `mvn process-sources` from project's root. This Maven goal automatically formats source code according to Vaadin standards. The same goal is run automatically if you invoke `mvn install` or `mvn compile`. | |||||
## Creating a pull request in GitHub | ## Creating a pull request in GitHub | ||||
For IntelliJ IDEA users, see [IntelliJ IDEA Quick Setup](#intellij-idea-quick-setup). | For IntelliJ IDEA users, see [IntelliJ IDEA Quick Setup](#intellij-idea-quick-setup). | ||||
1. Decide were you would like your Eclipse workspace to be located. | |||||
1. Decide where you would like your Eclipse workspace to be located. | |||||
* This project contains multiple modules and uses configurations that might clash with your existing projects, using a separate workspace is recommended. | * This project contains multiple modules and uses configurations that might clash with your existing projects, using a separate workspace is recommended. | ||||
* Eclipse Oxygen is recommended, different versions may treat formatting rules differently. | * Eclipse Oxygen is recommended, different versions may treat formatting rules differently. | ||||
* If you are using Windows, you may wish to keep the workspace path reasonably short (e.g. `C:\dev\<workspaceName>`) to avoid problems with too long file paths. | * If you are using Windows, you may wish to keep the workspace path reasonably short (e.g. `C:\dev\<workspaceName>`) to avoid problems with too long file paths. | ||||
### Getting started | ### Getting started | ||||
Run <code>install</code> maven goal for the project root to get started. | |||||
Run the <code>install</code> maven goal for the project root to get started. | |||||
In Eclipse this is done by right-clicking on the project root in Project Explorer and choosing *Run As* -> *Maven Build...*. If you choose to skip tests you may need to run the <code>install</code> maven goal for `vaadin-uitest` project separately. | In Eclipse this is done by right-clicking on the project root in Project Explorer and choosing *Run As* -> *Maven Build...*. If you choose to skip tests you may need to run the <code>install</code> maven goal for `vaadin-uitest` project separately. | ||||
* Note that the first compilation takes a while to finish as Maven downloads dependencies used in the projects. | * Note that the first compilation takes a while to finish as Maven downloads dependencies used in the projects. | ||||
* Vaadin 7 open source maintenance ended in Febraury 2019, [extended support](https://vaadin.com/support/vaadin-7-extended-maintenance) is available until February 2029. Starting with version 7.7.18, Vaadin 7 is subject to commercial Vaadin licenses (CVDLv4 from 7.7.18 onward, VCL-1 from 7.7.37 onward, and VCL-2 starting with 7.7.41). The current license is [Vaadin Commercial License, version 2](https://vaadin.com/commercial-license-and-service-terms). | * Vaadin 7 open source maintenance ended in Febraury 2019, [extended support](https://vaadin.com/support/vaadin-7-extended-maintenance) is available until February 2029. Starting with version 7.7.18, Vaadin 7 is subject to commercial Vaadin licenses (CVDLv4 from 7.7.18 onward, VCL-1 from 7.7.37 onward, and VCL-2 starting with 7.7.41). The current license is [Vaadin Commercial License, version 2](https://vaadin.com/commercial-license-and-service-terms). | ||||
Starting with Vaadin 8.21.0 and Vaadin 7.7.41, Vaadin Framework releases will be made available through a *private Maven repository*. To gain access to this private repository, you can find instructions [here](https://vaadin.com/vaadin-8-extended-maintenance-releases). Vaadin Framework releases will eventually be exclusively available through this private repository, but for the time being artifacts will also be released to Maven Central. | |||||
Extended Maintenance versions of Vaadin Framework are being made available through Maven Central. | |||||
In order to get access to extended maintenance Framework source code, [contact sales](https://pages.vaadin.com/contact). | In order to get access to extended maintenance Framework source code, [contact sales](https://pages.vaadin.com/contact). | ||||