@ -14,7 +14,7 @@ Next steps should work on clear Ubuntu 18.04.
- Install necessary dependencies:
- Install necessary dependencies:
```sh
```sh
$ sudo apt-get update & & sudo apt-get --no-install-recommends install -y ffmpeg build-essential curl redis-server python3-dev python3-pip python3-venv libldap2-dev libsasl2-dev
$ sudo apt-get update & & sudo apt-get --no-install-recommends install -y ffmpeg build-essential curl redis-server python3-dev python3-pip python3-venv python3-tk libldap2-dev libsasl2-dev
```
```
Also please make sure that you have installed ffmpeg with all necessary libav* libraries and pkg-config package.
Also please make sure that you have installed ffmpeg with all necessary libav* libraries and pkg-config package.
```sh
```sh
@ -60,6 +60,7 @@ for development
- Install npm packages for UI and start UI debug server (run the following command from CVAT root directory):
- Install npm packages for UI and start UI debug server (run the following command from CVAT root directory):
```sh
```sh
npm install & & \
cd cvat-core & & npm install & & \
cd cvat-core & & npm install & & \
cd ../cvat-ui & & npm install & & npm start
cd ../cvat-ui & & npm install & & npm start
```
```
@ -83,12 +84,13 @@ for development
You have done! Now it is possible to insert breakpoints and debug server and client of the tool.
You have done! Now it is possible to insert breakpoints and debug server and client of the tool.
## How to s etup additional components in development environment
## S etup additional components in development environment
### Automatic annotation
### Automatic annotation
- Install OpenVINO on your host machine according to instructions from
- Install OpenVINO on your host machine according to instructions from
[OpenVINO website ](https://docs.openvinotoolkit.org/latest/index.html )
[OpenVINO website ](https://docs.openvinotoolkit.org/latest/index.html )
- Add some environment variables (copy code below to the end of ``.env/bin/activate`` file):
- Add some environment variables (copy code below to the end of ``.env/bin/activate`` file):
```sh
```sh
source /opt/intel/openvino/bin/setupvars.sh
source /opt/intel/openvino/bin/setupvars.sh
@ -161,9 +163,10 @@ litle exception - we prefere 4 spaces for indentation of nested blocks and state
The project uses [a successful Git branching model ](https://nvie.com/posts/a-successful-git-branching-model ).
The project uses [a successful Git branching model ](https://nvie.com/posts/a-successful-git-branching-model ).
Thus it has a couple of branches. Some of them are described below:
Thus it has a couple of branches. Some of them are described below:
- `origin/master` to be the main branch where the source code of
- `origin/master` to be the main branch where the source code of
HEAD always reflects a production-ready state.
HEAD always reflects a production-ready state
- `origin/develop` to be the main branch where the source code of
- `origin/develop` to be the main branch where the source code of
HEAD always reflects a state with the latest delivered development
HEAD always reflects a state with the latest delivered development
changes for the next release. Some would call this the “integration branch”.
changes for the next release. Some would call this the “integration branch”.
@ -173,13 +176,13 @@ The issue tracker is the preferred channel for [bug reports](#bugs),
[features requests ](#features ) and [submitting pull
[features requests ](#features ) and [submitting pull
requests](#pull-requests), but please respect the following restrictions:
requests](#pull-requests), but please respect the following restrictions:
* Please **do not** use the issue tracker for personal support requests (use
- Please **do not** use the issue tracker for personal support requests (use
[Stack Overflow ](http://stackoverflow.com )).
[Stack Overflow ](http://stackoverflow.com )).
* Please **do not** derail or troll issues. Keep the discussion on topic and
- Please **do not** derail or troll issues. Keep the discussion on topic and
respect the opinions of others.
respect the opinions of others.
< a name = "bugs" > < / a >
< a name = "bugs" > < / a >
## Bug reports
## Bug reports
A bug is a _demonstrable problem_ that is caused by the code in the repository.
A bug is a _demonstrable problem_ that is caused by the code in the repository.
@ -187,13 +190,13 @@ Good bug reports are extremely helpful - thank you!
Guidelines for bug reports:
Guidelines for bug reports:
1. **Use the GitHub issue search** — check if the issue has already been
1. **Use the GitHub issue search** — check if the issue has already been
reported.
reported.
2. **Check if the issue has been fixed** — try to reproduce it using the
1. **Check if the issue has been fixed** — try to reproduce it using the
latest `develop` branch in the repository.
latest `develop` branch in the repository.
3. **Isolate the problem** — ideally create a reduced test case.
1. **Isolate the problem** — ideally create a reduced test case.
A good bug report shouldn't leave others needing to chase you up for more
A good bug report shouldn't leave others needing to chase you up for more
information. Please try to be as detailed as possible in your report. What is
information. Please try to be as detailed as possible in your report. What is
@ -209,9 +212,8 @@ Example:
> suitable, include the steps required to reproduce the bug.
> suitable, include the steps required to reproduce the bug.
>
>
> 1. This is the first step
> 1. This is the first step
> 2. This is the second step
> 1. This is the second step
> 3. Further steps, etc.
> 1. Further steps, etc.
>
>
>
> Any other information you want to share that is relevant to the issue being
> Any other information you want to share that is relevant to the issue being
> reported. This might include the lines of code that you have identified as
> reported. This might include the lines of code that you have identified as
@ -222,7 +224,7 @@ Example:
## Feature requests
## Feature requests
Feature requests are welcome. But take a moment to find out whether your idea
Feature requests are welcome. But take a moment to find out whether your idea
fits with the scope and aims of the project. It's up to *you* to make a strong
fits with the scope and aims of the project. It's up to _you_ to make a strong
case to convince the project's developers of the merits of this feature. Please
case to convince the project's developers of the merits of this feature. Please
provide as much detail and context as possible.
provide as much detail and context as possible.
@ -244,51 +246,51 @@ accurate comments, etc.) and any other requirements (such as test coverage).
Follow this process if you'd like your work considered for inclusion in the
Follow this process if you'd like your work considered for inclusion in the
project:
project:
1. [Fork ](http://help.github.com/fork-a-repo/ ) the project, clone your fork,
1. [Fork ](http://help.github.com/fork-a-repo/ ) the project, clone your fork,
and configure the remotes:
and configure the remotes:
```bash
```bash
# Clone your fork of the repo into the current directory
# Clone your fork of the repo into the current directory
git clone https://github.com/< your-username > /< repo-name >
git clone https://github.com/< your-username > /< repo-name >
# Navigate to the newly cloned directory
# Navigate to the newly cloned directory
cd < repo-name >
cd < repo-name >
# Assign the original repo to a remote called "upstream"
# Assign the original repo to a remote called "upstream"
git remote add upstream https://github.com/< upstream-owner > /< repo-name >
git remote add upstream https://github.com/< upstream-owner > /< repo-name >
```
```
2. If you cloned a while ago, get the latest changes from upstream:
1. If you cloned a while ago, get the latest changes from upstream:
```bash
```bash
git checkout < dev-branch >
git checkout < dev-branch >
git pull upstream < dev-branch >
git pull upstream < dev-branch >
```
```
3. Create a new topic branch (off the main project development branch) to
1. Create a new topic branch (off the main project development branch) to
contain your feature, change, or fix:
contain your feature, change, or fix:
```bash
```bash
git checkout -b < topic-branch-name >
git checkout -b < topic-branch-name >
```
```
4. Commit your changes in logical chunks. Please adhere to these [git commit
1. Commit your changes in logical chunks. Please adhere to these [git commit
message guidelines](http://tbaggery.com/2008/04/19/a-note-about-git-commit-messages.html)
message guidelines](http://tbaggery.com/2008/04/19/a-note-about-git-commit-messages.html)
or your code is unlikely be merged into the main project. Use Git's
or your code is unlikely be merged into the main project. Use Git's
[interactive rebase ](https://help.github.com/articles/interactive-rebase )
[interactive rebase ](https://help.github.com/articles/interactive-rebase )
feature to tidy up your commits before making them public.
feature to tidy up your commits before making them public.
5. Locally merge (or rebase) the upstream development branch into your topic branch:
1. Locally merge (or rebase) the upstream development branch into your topic branch:
```bash
```bash
git pull [--rebase] upstream < dev-branch >
git pull [--rebase] upstream < dev-branch >
```
```
6. Push your topic branch up to your fork:
1. Push your topic branch up to your fork:
```bash
```bash
git push origin < topic-branch-name >
git push origin < topic-branch-name >
```
```
7. [Open a Pull Request ](https://help.github.com/articles/using-pull-requests/ )
1. [Open a Pull Request ](https://help.github.com/articles/using-pull-requests/ )
with a clear title and description.
with a clear title and description.
**IMPORTANT**: By submitting a patch, you agree to allow the project owner to
**IMPORTANT**: By submitting a patch, you agree to allow the project owner to