Language | Version | Package |
---|---|---|
Java | Latest | OpenJDK (OpenJDK with HotSpot) |
Python | Latest 3.x | N/A |
I recommended using VS Code.
If you are on Windows, I highly recommend installing msys2. After installation, run the following from the msys2
shell:
pacman -Syu
pacman -S base-devel
pacman -S mingw-w64-x86_64-toolchain
pacman -S mingw-w64-x86_64-cmake
- Install latest version of Java: OpenJDK.
- On Windows, update the Path environment variable to point to new Java install location. Look out for JAVA_HOME env var, and javapath in the Path env var.
- Update build.gradle script (
sourceCompatibility
andtargetCompatibility
). - Download and update the (latest) version of gradle compatible with the new version of Java.
- In Windows, update the Path environment variable to point to new gradle install location.
- In the repository root, from admin command prompt, run
./gradlew wrapper --gradle-version <new gradle version> --distribution-type=bin
. - Make sure
distributionUrl
ingradle/wrapper/gradle-wrapper.properties
points to new gradle version. - Delete .project and .classpath files.
- Delete all contents of bin directory.
- Close VSCode.
- Clear workspace cache.
- Restart VSCode.
- Make sure new .project and .classpath files have been generated. Verify that .classpath now points to the new version of Java. This may take a good few minutes.
- Run gradlew test and code coverage tasks.
- Update CI scripts (GitHub, appveyor, circle-ci, travis) to point to new Java version.
- For circle-ci, docker image tags can be viewed here.
From the project root, run .\gradlew.bat wrapper --gradle-version=x.x.x --distribution-type=bin
. For Linux, run gradlew from the root, instead of the .bat file. Use the desired version in the command. Verify that the distributionUrl
field in the file gradle-wrapper.properties
has been updated to reflect the correct version. [Reference]
- Install latest version of Python.
- Run tasks for python tests, coverage reports and problems list.
- Update CI scripts (appveyor, circle-ci, travis) to point to new Python version.
- For those who may not wish to use VSCode and instead prefer a simple text editor
- There is a
Makefile
at the root of this repository for building and running tests. - Instructions will be provided at a later time for command line usage to add new problems, run tests, etc. [Ref]
- There is a
- I do not recommend using any sort of bloated IDE. They tend to add a lot of files simply for their specific plumbing.
- Added a new submodule:
git submodule add https://github.com/computer-science-engineering/bytebytego-courses_system-design-interview src\ByteByteGo\Courses\system-design-interview