hdalsania commented on code in PR #1180: URL: https://github.com/apache/daffodil-vscode/pull/1180#discussion_r1999590212
########## DEVELOPMENT.md: ########## @@ -15,65 +15,513 @@ limitations under the License. --> -# Welcome -If you would like the latest stable release of the extension, please reference the README.md for instructions on how to retrieve that. -You can download a zip archive of the source code for the extension. You can extract this to any directory of your choice and open it within vscode to begin poking around. +# Daffodil-VSCode Developer's Guide -The project currently has many components and is growing, please refer to the wiki for an overview of what the extension includes. There is also user documentation on the right side with additional release specific use case guides. Here is the one for v1.3.1: -https://github.com/apache/daffodil-vscode/wiki/Apache-Daffodil%E2%84%A2-Extension-for-Visual-Studio-Code:-v1.3.1 +## Build Status -## Contributing -Due to this being an Apache project, if you would like to contribute, you will need to fork the daffodil-vscode main branch to your own repo of choice and create pull requests to the main branch with your code changes. +[](https://github.com/apache/daffodil-vscode/actions/workflows/CI.yml) +[](https://github.com/apache/daffodil-vscode/actions/workflows/nightly.yml) + +## Table of Contents + +- [Daffodil-VSCode Developer's Guide](#daffodil-vscode-developers-guide) + - [Build Status](#build-status) + - [Table of Contents](#table-of-contents) + - [Welcome](#welcome) + - [Prerequisites](#prerequisites) + - [Install Git](#install-git) + - [Install Visual Studio Code (VSCode)](#install-visual-studio-code-vscode) + - [Installing Build Requirements](#installing-build-requirements) + - [Summary of Build Requirements](#summary-of-build-requirements) + - [Step-by-step Guide for Installing Build Requirements](#step-by-step-guide-for-installing-build-requirements) + - [Installing Node](#installing-node) + - [Installing Node on Windows Note](#installing-node-on-windows-note) + - [Installing Java (JDK 17)](#installing-java-jdk-17) + - [Build Issues with Higher JDK Versions](#build-issues-with-higher-jdk-versions) + - [Switching Java Versions on Linux](#switching-java-versions-on-linux) + - [Installing SBT](#installing-sbt) + - [Enabling Yarn from Within Node](#enabling-yarn-from-within-node) + - [Do Not Use the Latest Version of Yarn](#do-not-use-the-latest-version-of-yarn) + - [How to Enable](#how-to-enable) + - [Contributing and Setup](#contributing-and-setup) + - [Forking the Project](#forking-the-project) + - [Cloning the Project to Local Environment](#cloning-the-project-to-local-environment) + - [Setting up SSH Keys](#setting-up-ssh-keys) + - [General Workflow](#general-workflow) + - [Opening the Repository in VSCode](#opening-the-repository-in-vscode) + - [Recommended VSCode Extensions](#recommended-vscode-extensions) + - [Required VSCode Extensions](#required-vscode-extensions) + - [Verifying Setup Can Build](#verifying-setup-can-build) + - [Yarn Package](#yarn-package) + - [Automated Testing Suite](#automated-testing-suite) + - [Testing Against a Specific Version of VS Code](#testing-against-a-specific-version-of-vs-code) + - [Debugging the Extension](#debugging-the-extension) + - [Changing the sampleWorkspace folder name and location](#changing-the-sampleworkspace-folder-name-and-location) + - [Test a Local Version of Apache Daffodil Debugger](#test-a-local-version-of-apache-daffodil-debugger) + - [Troubleshooting](#troubleshooting) + - [Yarn Package Issues](#yarn-package-issues) + - [If Yarn Keeps Updating to The Latest Version](#if-yarn-keeps-updating-to-the-latest-version) + - [Yarn Test Issues](#yarn-test-issues) + - [Data Editor Opens Test Case Failing](#data-editor-opens-test-case-failing) + - [TLS Certificate Issues](#tls-certificate-issues) + - [Debugging Issues](#debugging-issues) + - [SELinux Port Functionality](#selinux-port-functionality) + - [Windows Yarn Test Window Not Loading Extensions](#windows-yarn-test-window-not-loading-extensions) + - [Variable Values Not Displaying in VSCode Debugger](#variable-values-not-displaying-in-vscode-debugger) + - [Re-trying Verification After Errors](#re-trying-verification-after-errors) + - [Building the Documentation](#building-the-documentation) + - [Install Pandoc](#install-pandoc) + - [Command to build the Documentation](#command-to-build-the-documentation) + - [Reviewing and Verifying Dependency Bot Updates](#reviewing-and-verifying-dependency-bot-updates) + - [Testing Information](#testing-information) + - [Monitoring Project Status](#monitoring-project-status) + - [Thank you for your interest in contributing to this project!](#thank-you-for-your-interest-in-contributing-to-this-project) + +## Welcome + +This guide contains developer-oriented instructions on how to setup your local development environment for contributing to this project. + +If you would like the latest stable release of the extension, please reference the [README file](README.md). + +The project is currently growing, please refer to the [wiki](https://github.com/apache/daffodil-vscode/wiki) for an overview of what the extension includes. There is also user documentation on the right pane with release specific use case guides. + +## Prerequisites + +### Install Git + +If your system doesn’t have Git installed, [install Git](https://git-scm.com/downloads). Select the appropriate operating system and follow the listed instructions. +To verify git is installed on your system, enter git -v into your system’s terminal and it should display the version of git if properly installed. + +### Install Visual Studio Code (VSCode) + +Install VSCode per [official VSCode documentation](https://code.visualstudio.com/docs/setup/setup-overview): + +- [Windows](https://code.visualstudio.com/docs/setup/windows) +- [Linux](https://code.visualstudio.com/docs/setup/linux) +- [MacOS](https://code.visualstudio.com/docs/setup/mac) + +## Installing Build Requirements + +This section will provide describe what requirements are needed to build with a step-by-step guide to assist developers of varying skill levels. + +### Summary of Build Requirements + +- Java Development Kit (JDK) 17 or lower, but higher than or equal to 8 +- SBT 0.13.8 or higher +- Node 16 or higher Review Comment: Is this true? I think with latest version we need Node 20 or higher. Please double check the requirement for Node. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
