Skip to content

Commit 94efc8a

Browse files
authored
#39: Updated developer guide (#45)
Fixes #39
1 parent 7cda05e commit 94efc8a

File tree

1 file changed

+8
-75
lines changed

1 file changed

+8
-75
lines changed

doc/development/developer_guide.md

Lines changed: 8 additions & 75 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
This guide provides development workflows that are used to develop and maintain
44
the import-export-udf-common-scala and the projects based on it. It is intended
55
for those who wish to address the issues, merge a pull request, perform release
6-
or deep dive into the codebase of the project.
6+
or deep dive into the codebase of the project.
77

88
## Contributing
99

@@ -38,7 +38,7 @@ follow the steps below to submit your patches.
3838
- Code
3939
- Write tests for changes
4040
- Update documentation if needed
41-
- **Make sure everything is working**, run `./scripts/ci.sh`
41+
- **Make sure everything is working**, run `mvn clean verify`
4242
- If everything is okay, commit and push to your fork
4343
- [Submit a pull request][submit-pr]
4444
- Let us work together to get your changes reviewed
@@ -71,61 +71,10 @@ First clone a local copy of the repository:
7171
git clone https://github.com/exasol/import-export-udf-common-scala.git
7272
```
7373

74-
Then run `sbt`, and run any of these commands:
75-
76-
- `clean` : cleans previously compiled outputs; to start clean again.
77-
- `compile` : compiles the source files.
78-
- `test:compile`: compiles the unit test files.
79-
- `it:compile` : compiles the integration test files.
80-
- `test` : run all the unit tests.
81-
- `it:test` : run all the integration tests.
82-
- `doc` : generate the API documentation.
83-
84-
You can also run several commands combined together:
74+
Then run the end-to-end build process:
8575

86-
```
87-
;clean;test;it:test
88-
```
89-
90-
Additionally, you can run `testOnly filename` or `it:testOnly filename` commands
91-
to only run single file tests.
92-
93-
### Running E2E Build Script
94-
95-
Inside the `scripts/` folder, you will find the `ci.sh` bash file, that runs
96-
end-to-end build process. This file is intended to be run in continuous
97-
integration (CI) environment. For the continuous integration we use the Github
98-
Actions.
99-
100-
Please run this file to make sure that everything is working before committing
101-
code or submitting a pull request.
102-
103-
```bash
104-
./scripts/ci.sh
105-
```
106-
107-
Additionally, ensure that the `ci.sh` scripts work with different versions of
108-
the Scala programming language. You can check that with the following command:
109-
110-
```bash
111-
SCALA_VERSION=2.13.6 ./scripts/ci.sh
112-
```
113-
114-
## Checking the Test Coverage
115-
116-
The `ci.sh` script also creates the code coverage reports. They are located in
117-
the target path, `target/scala-<SCALA.VERSION>/scoverage-report/`.
118-
119-
You can open the `index.html` file, it should show the code coverage reports per
120-
file.
121-
122-
![alt text](../images/code_coverage_example.png "Code Coverage Example")
123-
124-
You can also generate the coverage reports using the `sbt` command line, by
125-
running:
126-
127-
```bash
128-
;clean;coverage;test;it:test;coverageReport
76+
```sh
77+
mvn clean verify
12978
```
13079

13180
## Checking the Dependency Updates
@@ -138,39 +87,23 @@ running the following commands.
13887
Check if any plugins have new versions:
13988

14089
```bash
141-
pluginUpdates
90+
mvn versions:display-plugin-updates -U
14291
```
14392

14493
Check if any dependencies have new versions:
14594

14695
```bash
147-
dependencyUpdates
96+
mvn versions:display-dependency-updates -U
14897
```
14998

15099
### Dependency Tree and Artifact Eviction
151100

152101
You can check the dependency tree by running the command below:
153102

154103
```bash
155-
dependencyTree
104+
mvn dependency:tree
156105
```
157106

158-
Additionally, it is also good practice to check the evicted artifacts, and maybe
159-
to exclude them explicitly when declaring the library dependencies. In order to
160-
check the evicted artifacts, run:
161-
162-
```bash
163-
evicted
164-
```
165-
166-
## Editor Setups
167-
168-
We try to keep the codebase code editor agnostic. But we tested that it works
169-
with IntelliJ.
170-
171-
Any setups required for editors are out of scope. However, this can change when
172-
we get contributors who use those code editors :)
173-
174107
## Conclusion
175108

176109
This guide is expected to change and evolve with the changes to the project.

0 commit comments

Comments
 (0)