diff --git a/.github/CODE_OF_CONDUCT.md b/.github/CODE_OF_CONDUCT.md new file mode 100644 index 00000000000..698456d9195 --- /dev/null +++ b/.github/CODE_OF_CONDUCT.md @@ -0,0 +1,126 @@ +# Contributor Covenant Code of Conduct + +## Our Pledge + +We as members, contributors, and leaders pledge to make participation in our +community a harassment-free experience for everyone, regardless of age, body +size, visible or invisible disability, ethnicity, sex characteristics, gender +identity and expression, level of experience, education, socio-economic status, +nationality, personal appearance, race, caste, color, religion, or sexual +identity and orientation. + +We pledge to act and interact in ways that contribute to an open, welcoming, +diverse, inclusive, and healthy community. + +## Our Standards + +Examples of behavior that contributes to a positive environment for our +community include: + +* Demonstrating empathy and kindness toward other people +* Being respectful of differing opinions, viewpoints, and experiences +* Giving and gracefully accepting constructive feedback +* Accepting responsibility and apologizing to those affected by our mistakes, + and learning from the experience +* Focusing on what is best not just for us as individuals, but for the overall + community + +Examples of unacceptable behavior include: + +* The use of sexualized language or imagery, and sexual attention or advances of + any kind +* Trolling, insulting or derogatory comments, and personal or political attacks +* Public or private harassment +* Publishing others' private information, such as a physical or email address, + without their explicit permission +* Other conduct which could reasonably be considered inappropriate in a + professional setting + +## Enforcement Responsibilities + +Community leaders are responsible for clarifying and enforcing our standards of +acceptable behavior and will take appropriate and fair corrective action in +response to any behavior that they deem inappropriate, threatening, offensive, +or harmful. + +Community leaders have the right and responsibility to remove, edit, or reject +comments, commits, code, wiki edits, issues, and other contributions that are +not aligned to this Code of Conduct, and will communicate reasons for moderation +decisions when appropriate. + +## Scope + +This Code of Conduct applies within all community spaces, and also applies when +an individual is officially representing the community in public spaces. +Examples of representing our community include using an official e-mail address, +posting via an official social media account, or acting as an appointed +representative at an online or offline event. + +## Enforcement + +Instances of abusive, harassing, or otherwise unacceptable behavior may be +reported to the community leaders responsible for enforcement at codeofconduct@posit.co. +All complaints will be reviewed and investigated promptly and fairly. + +All community leaders are obligated to respect the privacy and security of the +reporter of any incident. + +## Enforcement Guidelines + +Community leaders will follow these Community Impact Guidelines in determining +the consequences for any action they deem in violation of this Code of Conduct: + +### 1. Correction + +**Community Impact**: Use of inappropriate language or other behavior deemed +unprofessional or unwelcome in the community. + +**Consequence**: A private, written warning from community leaders, providing +clarity around the nature of the violation and an explanation of why the +behavior was inappropriate. A public apology may be requested. + +### 2. Warning + +**Community Impact**: A violation through a single incident or series of +actions. + +**Consequence**: A warning with consequences for continued behavior. No +interaction with the people involved, including unsolicited interaction with +those enforcing the Code of Conduct, for a specified period of time. This +includes avoiding interactions in community spaces as well as external channels +like social media. Violating these terms may lead to a temporary or permanent +ban. + +### 3. Temporary Ban + +**Community Impact**: A serious violation of community standards, including +sustained inappropriate behavior. + +**Consequence**: A temporary ban from any sort of interaction or public +communication with the community for a specified period of time. No public or +private interaction with the people involved, including unsolicited interaction +with those enforcing the Code of Conduct, is allowed during this period. +Violating these terms may lead to a permanent ban. + +### 4. Permanent Ban + +**Community Impact**: Demonstrating a pattern of violation of community +standards, including sustained inappropriate behavior, harassment of an +individual, or aggression toward or disparagement of classes of individuals. + +**Consequence**: A permanent ban from any sort of public interaction within the +community. + +## Attribution + +This Code of Conduct is adapted from the [Contributor Covenant][homepage], +version 2.1, available at +. + +Community Impact Guidelines were inspired by +[Mozilla's code of conduct enforcement ladder](https://github.com/mozilla/inclusion). + +For answers to common questions about this code of conduct, see the FAQ at +. Translations are available at . + +[homepage]: https://www.contributor-covenant.org diff --git a/.github/README.md b/.github/README.md index a9a0e575f43..9e1e4dcb113 100644 --- a/.github/README.md +++ b/.github/README.md @@ -1,29 +1,26 @@ -# The Positron IDE +# Positron Positron -This repository hosts the source code for the Positron IDE, a fork of [Visual Studio Code](https://github.com/microsoft/vscode) that provides a batteries-included, opinionated environment for data science and scientific authoring. +What is Positron? -## Releases +- A next-generation data science IDE built by [Posit PBC](https://posit.co/) +- An extensible, polyglot tool for writing code and exploring data +- A familiar environment for reproducible authoring and publishing -In the [Releases](https://github.com/posit-dev/positron/releases) section you can download nightly Alpha builds of the Positron IDE. Currently Mac (Universal) and Windows (x86) installers are provided. +> [!IMPORTANT] +> Positron is an early stage project under active development and may [not yet be a good fit for you](https://github.com/posit-dev/positron/wiki#is-positron-for-me). If you are interested in experimenting with it, we welcome your feedback! -## Positron Developers +## Get started using Positron -You can read more about Positron IDE development on the [Positron Wiki](https://connect.rstudioservices.com/positron-wiki). +Check out [our wiki](https://github.com/posit-dev/positron/wiki) for information on what you should do before installing Positron, troubleshooting Positron, and more. -## Extensions +Positron is built on [Code OSS](https://github.com/microsoft/vscode). To learn about basic features like commands, settings, using source control, and more, see the [VS Code documentation](https://code.visualstudio.com/docs). -Positron is a highly extensible IDE. Its foundation is implemented in [`src`](../src), however, much of the core functionality is provided through [`extensions`](../extensions). +## Install Positron -Positron provides the following built-in extensions: +Install Positron from our [Releases](https://github.com/posit-dev/positron/releases) page. -- [**Jupyter Adapter**](../extensions/jupyter-adapter), the interface between the front end and language extensions described below -- [**Positron R**](../extensions/positron-r), the Positron extension for the R programming language powered by [ARK](https://github.com/posit-dev/amalthea/tree/main/crates/ark) (the Amalthea R kernel -- our Rust-based kernel for R) which is built on top of our [Amalthea](https://github.com/posit-dev/amalthea) Jupyter kernel framework and the open source [tower-lsp](https://github.com/ebkalderon/tower-lsp) LSP framework -- [**Positron Python**](https://github.com/posit-dev/positron-python), the Positron extension for the Python programming language, a fork of [Microsoft's Python VSCode extension](https://github.com/microsoft/vscode-python) built on top of the open source Python-based kernel [IPyKernel](https://github.com/ipython/ipykernel) and [Jedi Language Server](https://github.com/pappasam/jedi-language-server) -- [**Positron Zed**](https://github.com/posit-dev/positron/tree/main/extensions/positron-zed), the Positron extension for a test-bed language, intended for fast simulations primarily to aid UI development +Currently, Positron is producing pre-release builds from a continuous integration (CI) system for macOS, Windows, and Linux. These pre-release builds are tagged with a version number here on our Github repository. Select the build you want to download, then click on **Assets** and download the `.dmg` (for Mac), `.exe` (for Windows), or `.deb` (for Linux) file. -## Related Repositories +## Share your feedback about Positron -- [VSCode - OSS](https://github.com/microsoft/vscode), the upstream VS Code OSS repository -- [OpenVSCode Server](https://github.com/gitpod-io/openvscode-server), another fork of VS Code focused on running in the browser -- [Positron Codicons](https://github.com/posit-dev/positron-codicons), a fork of the MS Codicons repository -- [Positron Wiki](https://github.com/posit-dev/positron-wiki), the Quarto-based source for Positron's development wiki +We invite you to join us on [GitHub Discussions](https://github.com/posit-dev/positron/discussions) to ask questions and share feedback. [Read more](https://github.com/posit-dev/positron/wiki/Feedback-and-Issues) about giving feedback and reporting bugs. diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 6bece0ef03f..e60ce819945 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -1,99 +1,13 @@ -# Contributing to VS Code + +## Extensions -Welcome, and thank you for your interest in contributing to VS Code! +Positron is a highly extensible IDE. Its foundation is implemented in [`src`](../src), but much of the core functionality is provided through [`extensions`](../extensions). -There are several ways in which you can contribute, beyond writing code. The goal of this document is to provide a high-level overview of how you can get involved. +Positron provides the following built-in extensions: -## Asking Questions +- [**Jupyter Adapter**](../extensions/jupyter-adapter), the interface between the front end and language extensions described below +- [**Positron R**](../extensions/positron-r), the Positron extension for the R programming language powered by [ARK](https://github.com/posit-dev/amalthea/tree/main/crates/ark) (the Amalthea R kernel -- our Rust-based kernel for R) which is built on top of our [Amalthea](https://github.com/posit-dev/amalthea) Jupyter kernel framework and the open source [tower-lsp](https://github.com/ebkalderon/tower-lsp) LSP framework +- [**Positron Python**](../extensions/positron-python), the Positron extension for the Python programming language, a fork of [Microsoft's Python VSCode extension](https://github.com/microsoft/vscode-python) built on top of the open source Python-based kernel [IPyKernel](https://github.com/ipython/ipykernel) and [Jedi Language Server](https://github.com/pappasam/jedi-language-server) +- [**Positron Zed**](../extensions/positron-zed), the Positron extension for a test-bed language, intended for fast simulations primarily to aid UI development - -Have a question? Instead of opening an issue, please ask on [Stack Overflow](https://stackoverflow.com/questions/tagged/visual-studio-code) using the tag `visual-studio-code`. - -The active community will be eager to assist you. Your well-worded question will serve as a resource to others searching for help. - -## Providing Feedback - -Your comments and feedback are welcome, and the development team is available via a handful of different channels. - -See the [Feedback Channels](https://github.com/microsoft/vscode/wiki/Feedback-Channels) wiki page for details on how to share your thoughts. - -## Reporting Issues - -Have you identified a reproducible problem in VS Code? Do you have a feature request? We want to hear about it! Here's how you can report your issue as effectively as possible. - -### Identify Where to Report - -The VS Code project is distributed across multiple repositories. Try to file the issue against the correct repository. Check the list of [Related Projects](https://github.com/microsoft/vscode/wiki/Related-Projects) if you aren't sure which repo is correct. - -Can you recreate the issue even after [disabling all extensions](https://code.visualstudio.com/docs/editor/extension-gallery#_disable-an-extension)? If you find the issue is caused by an extension you have installed, please file an issue on the extension's repo directly. - -### Look For an Existing Issue - -Before you create a new issue, please do a search in [open issues](https://github.com/microsoft/vscode/issues) to see if the issue or feature request has already been filed. - -Be sure to scan through the [most popular](https://github.com/microsoft/vscode/issues?q=is%3Aopen+is%3Aissue+label%3Afeature-request+sort%3Areactions-%2B1-desc) feature requests. - -If you find your issue already exists, make relevant comments and add your [reaction](https://github.com/blog/2119-add-reactions-to-pull-requests-issues-and-comments). Use a reaction in place of a "+1" comment: - -* 👍 - upvote -* 👎 - downvote - -If you cannot find an existing issue that describes your bug or feature, create a new issue using the guidelines below. - -### Writing Good Bug Reports and Feature Requests - -File a single issue per problem and feature request. Do not enumerate multiple bugs or feature requests in the same issue. - -Do not add your issue as a comment to an existing issue unless it's for the identical input. Many issues look similar but have different causes. - -The more information you can provide, the more likely someone will be successful at reproducing the issue and finding a fix. - -The built-in tool for reporting an issue, which you can access by using `Report Issue` in VS Code's Help menu, can help streamline this process by automatically providing the version of VS Code, all your installed extensions, and your system info. Additionally, the tool will search among existing issues to see if a similar issue already exists. - -Please include the following with each issue: - -* Version of VS Code -* Your operating system -* List of extensions that you have installed -* Reproducible steps (1... 2... 3...) that cause the issue -* What you expected to see, versus what you actually saw -* Images, animations, or a link to a video showing the issue occurring -* A code snippet that demonstrates the issue or a link to a code repository the developers can easily pull down to recreate the issue locally - * **Note:** Because the developers need to copy and paste the code snippet, including a code snippet as a media file (i.e. .gif) is not sufficient. -* Errors from the Dev Tools Console (open from the menu: Help > Toggle Developer Tools) - -### Creating Pull Requests - -* Please refer to the article on [creating pull requests](https://github.com/microsoft/vscode/wiki/How-to-Contribute#pull-requests) and contributing to this project. - -### Final Checklist - -Please remember to do the following: - -* [ ] Search the issue repository to ensure your report is a new issue -* [ ] Recreate the issue after disabling all extensions -* [ ] Simplify your code around the issue to better isolate the problem - -Don't feel bad if the developers can't reproduce the issue right away. They will simply ask for more information! - -### Follow Your Issue - -Once submitted, your report will go into the [issue tracking](https://github.com/microsoft/vscode/wiki/Issue-Tracking) workflow. Be sure to understand what will happen next, so you know what to expect and how to continue to assist throughout the process. - -## Automated Issue Management - -We use GitHub Actions to help us manage issues. These Actions and their descriptions can be [viewed here](https://github.com/microsoft/vscode-github-triage-actions). Some examples of what these Actions do are: - -* Automatically close any issue marked `info-needed` if there has been no response in the past 7 days. -* Automatically lock issues 45 days after they are closed. -* Automatically implement the VS Code [feature request pipeline](https://github.com/microsoft/vscode/wiki/Issues-Triaging#managing-feature-requests). - -If you believe the bot got something wrong, please open a new issue and let us know. - -## Contributing Fixes - -If you are interested in writing code to fix issues, please see [How to Contribute](https://github.com/microsoft/vscode/wiki/How-to-Contribute) in the wiki. - -## Thank You - -Your contributions to open source, large or small, make great projects like this possible. Thank you for taking the time to contribute. +