-
Notifications
You must be signed in to change notification settings - Fork 293
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
GitHub: Simplify root directory and migrate documentation #1812
Open
Lamparter
wants to merge
27
commits into
IronLanguages:main
Choose a base branch
from
Lamparter:collapse
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
+383
−2,072
Open
Changes from 18 commits
Commits
Show all changes
27 commits
Select commit
Hold shift + click to select a range
de5d663
Simplify root directory
Lamparter 51cab09
Remove Markdown issue template
Lamparter f6b721b
Rename `LICENSE` to `LICENSE.md`
Lamparter 403b7e3
Migrate "what's new" documents to GitHub Wiki
Lamparter 9f6a906
Migrate documentation to Wiki
Lamparter 9830c77
Move images
Lamparter b187b7b
Fix references
Lamparter 0141a45
Fix documentation references
Lamparter 35d0f65
Improve `README.md`
Lamparter e43cf2d
Improve sections in `README.md`
Lamparter e080072
Ignore languages from GitHub Linguist
Lamparter d7364b7
Fix references in solution
Lamparter ccad233
Add bug report issue template
Lamparter fa337a5
Add feature request issue template
Lamparter d162817
Add spec issue template
Lamparter c7961d1
Create issue template config
Lamparter aba3b0e
Add PR template
Lamparter f16e79c
Add link to "Using IronPython" wiki under examples section in `README…
Lamparter d0bee73
Force allow blank issues
Lamparter b49e6c3
Improve bug report template
Lamparter 48e1d17
Remove `type` from bug report
Lamparter 61ea588
Remove `type` from feature request
Lamparter 02dad37
Remove `type` from spec issue
Lamparter 2583c6c
Add comment
Lamparter 38c8be9
Merge branch 'IronLanguages:main' into collapse
Lamparter 56c0e14
Fix MSBuild references
Lamparter 57e5905
Replace Unicode dash with ASCII dash in "what's new" wiki pages
Lamparter File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
File renamed without changes.
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,72 @@ | ||
name: Bug Report | ||
description: Create a bug report to help improve! | ||
labels: [bug] | ||
title: "Bug: " | ||
type: Bug | ||
body: | ||
- type: markdown | ||
attributes: | ||
value: | | ||
##### ⏱️ Before you start... | ||
- Are you on the latest version? You might be using an old version. | ||
- Have you checked whether or not a similar bug has already been reported? | ||
- type: textarea | ||
attributes: | ||
label: 🪟 What OS build is this issue present? | ||
description: Windows key + R > winver.exe / Apple Logo (in menu bar) > About This Mac (may not be like this on Ventura) | ||
placeholder: Windows 11 Insider Beta 22623.1250 / macOS Monterey 12.6.3 | ||
- type: textarea | ||
attributes: | ||
label: 🔢 What version are you on? | ||
- type: textarea | ||
attributes: | ||
label: 📄 Description | ||
description: A clear and concise description of what the bug is. | ||
validations: | ||
required: true | ||
- type: textarea | ||
attributes: | ||
label: 🪜 Steps To Reproduce | ||
description: Steps to reproduce the behavior. | ||
placeholder: | | ||
1. Go to '....' | ||
2. Click on '....' | ||
3. Scroll down to '....' | ||
4. See the error | ||
validations: | ||
required: false | ||
- type: textarea | ||
attributes: | ||
label: 🤔 Expected behavior | ||
description: A clear and concise description of what you expected to happen. | ||
- type: dropdown | ||
id: platforms-affected | ||
attributes: | ||
label: Affected platforms | ||
description: Select all or any platform that you see this issue on. This helps us determine if it's something platform-specific or in the core. If you were only able to test on 1 platform, please check the last option to inform us about that. | ||
multiple: true | ||
options: | ||
- 📱 Android | ||
- 📲 iOS | ||
- 💻 macOS | ||
- 🪨 Rosetta (macOS Catalyst) | ||
- 🪟 Windows | ||
- 🪟 WPF | ||
- 🐧 GTK | ||
- 🐧 Linux Framebuffer | ||
- ⌨️ Skia Desktop | ||
- 🕸️ WebAssembly | ||
- ❓ Other | ||
- ☹️ I was unable to test on other platforms | ||
validations: | ||
required: true | ||
- type: textarea | ||
id: workaround | ||
attributes: | ||
label: ⚒️ Did you find any workaround? | ||
description: Did you find any workaround for this issue? This can unblock other people while waiting for this issue to be resolved or even give us a hint on how to fix this. | ||
- type: textarea | ||
attributes: | ||
label: 📸 Assets | ||
description: | | ||
A list of assets (errors, screenshots) relevant to the bug. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,5 @@ | ||
blank_issues_enabled: false | ||
contact_links: | ||
- name: Discussion | ||
url: https://github.com/IronLanguages/ironpython3/discussions | ||
about: "Ask questions, discuss implementation, or just have a chat! If you're unsure what to choose, a discussion is probably best." |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,67 @@ | ||
name: Feature Request | ||
description: Request a new feature to make things better! | ||
labels: [feature request] | ||
title: "Feature: " | ||
type: Feature | ||
body: | ||
- type: markdown | ||
attributes: | ||
value: | | ||
##### ⏱️ Before you start... | ||
- Have you checked whether or not a similar feature request has already been reported? | ||
- type: textarea | ||
attributes: | ||
label: 📄 Description | ||
description: A clear and concise description of what your idea is. Include things like possible use cases, drawbacks, etc. | ||
validations: | ||
required: true | ||
- type: textarea | ||
attributes: | ||
label: 🗃️ Alternative solutions | ||
description: Describe more ways this idea could be implemented. | ||
validations: | ||
required: false | ||
- type: textarea | ||
id: api-changes | ||
attributes: | ||
label: ⚡ API Changes | ||
description: Include a list of all API changes, additions, subtractions as would be required by your proposal. These APIs should be considered placeholders, so the naming is not as important as getting the concepts correct. If possible you should include some example (pseudo-)code of usage of your new API. | ||
placeholder: | | ||
```csharp | ||
var button = new Button (); | ||
button.MakeShiny = true; // new API | ||
``` | ||
|
||
The MakeShiny API works even if the button is already visible. | ||
validations: | ||
required: false | ||
- type: textarea | ||
id: use-case | ||
attributes: | ||
label: 👥 Intended Use-Case | ||
description: Provide a detailed example of where your proposal would be used and for what purpose. Focus on _why_ you want this feature instead of _what_ the feature does. | ||
placeholder: I have a situation where I would really want a shiny button to make it stand out from the rest of the plain and boring buttons. | ||
validations: | ||
required: false | ||
- type: textarea | ||
attributes: | ||
label: ✅ Tasks | ||
description: Give an overview of all the specific things you would like to be changed or implemented. | ||
value: | | ||
#### 📋 High Priority | ||
- [ ] Something | ||
- [ ] Another thing | ||
- [ ] https://github.com/link/to/an/issue | ||
|
||
#### 📋 Nice to have | ||
- [ ] Something | ||
- [ ] Another thing | ||
- [ ] https://github.com/link/to/an/issue | ||
validations: | ||
required: false | ||
- type: textarea | ||
attributes: | ||
label: 📸 Assets | ||
description: A list of assets (screenshots, mockups) relevant to this feature request. | ||
validations: | ||
required: false |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,74 @@ | ||
name: Spec | ||
description: An official specification for enhancements. | ||
labels: ["enhancement"] | ||
assignees: [] | ||
title: "Spec: " | ||
type: Spec | ||
body: | ||
- type: markdown | ||
attributes: | ||
value: | | ||
Thank you for taking the time to provide us with a detailed specification of your idea. | ||
|
||
In a spec you will give a detailed and complete representation of the (public) APIs that are implemented as part of this change. Additionally please think about backwards compatibility, breaking changes, supported platforms and the difficulty. | ||
- type: textarea | ||
id: description | ||
attributes: | ||
label: 📄 Description | ||
description: Provide a concise description of the feature and the motivation for adding it. This can be a modified version from the feature request prior to this. | ||
validations: | ||
required: true | ||
- type: textarea | ||
id: api-changes | ||
attributes: | ||
label: ⚡ API Changes | ||
description: Include a complete list of all API changes, additions, subtractions as would be required by your proposal. | ||
value: | | ||
## `[ class ]` | ||
|
||
| API | Description | | ||
| ------------- | ------------- | | ||
| [name] | Gets or sets [description]. | | ||
validations: | ||
required: true | ||
- type: textarea | ||
id: usage-scenarios | ||
attributes: | ||
label: 👥 Usage scenarios | ||
description: Give us a couple of scenarios that demonstrate how developers would consume the above APIs. | ||
placeholder: | | ||
# C# Example | ||
```csharp | ||
var thing = new MyNewControl(); | ||
thing.BeAwesome = true; | ||
thing.Color = Colors.Cornsilk; | ||
``` | ||
|
||
# XAML Example | ||
```xaml | ||
<MyNewControl x:Name="thing" BeAwesome="true" Color="Cornsilk" /> | ||
``` | ||
validations: | ||
required: true | ||
- type: textarea | ||
id: backwards-compatibility | ||
attributes: | ||
label: 🔙 Backward Compatibility | ||
description: Please describe here anything in terms of backwards compatibility. Will there be breaking changes? Do we need to update dependencies to support this? What are the minimum supported API/OS levels? And lastly, are there any platforms that can't support this and why? | ||
placeholder: | | ||
Minimum API levels? | ||
Breaking changes? | ||
Unsupported platforms? | ||
validations: | ||
required: false | ||
- type: dropdown | ||
id: difficulty | ||
attributes: | ||
label: 🤔 Difficulty | ||
description: What do you feel will be the difficulty of this change all things considering? No exact science, just your gut feeling. | ||
options: | ||
- Low | ||
- Medium | ||
- High | ||
validations: | ||
required: true |
File renamed without changes
File renamed without changes
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,101 @@ | ||
<p align="center"> | ||
<img alt="IronPython Console" src="https://github.com/user-attachments/assets/ea038aa3-36fa-42c3-b72f-a79ae06fdada" /> | ||
</p> | ||
|
||
<p align="center"> | ||
<a style="text-decoration:none" href="https://ironpython.net/"> | ||
<img src="https://img.shields.io/badge/IronPython-Website-darkgreen" alt="IronPython Website" /></a> | ||
<a style="text-decoration:none" href="https://github.com/IronLanguages/ironpython3/actions?workflow=CI"> | ||
<img src="https://github.com/IronLanguages/ironpython3/workflows/CI/badge.svg" alt="GitHub CI Status" /></a> | ||
<a style="text-decoration:none" href="https://dotnet.visualstudio.com/IronLanguages/_build/latest?definitionId=43"> | ||
<img src="https://dotnet.visualstudio.com/IronLanguages/_apis/build/status/ironpython3" alt="Azure CI Status" /></a> | ||
<a style="text-decoration:none" href="https://gitter.im/IronLanguages/ironpython"> | ||
<img src="https://badges.gitter.im/IronLanguages/ironpython.svg" alt="Gitter" /></a> | ||
</p> | ||
|
||
**IronPython** is a popular, open-source implementation of Python 3.x for .NET that is built on top of its very own [Dynamic Language Runtime](https://github.com/IronLanguages/dlr). | ||
|
||
> [!NOTE] | ||
> There is still much that needs to be done to support Python 3. We are working on it, albeit slowly. | ||
> We welcome all those who would like to help! ❤️ | ||
|
||
IronPython is an open-source implementation of the Python programming language that is tightly integrated with .NET. IronPython can use .NET and Python libraries, and other .NET languages can use Python code just as easily. | ||
|
||
IronPython 3 targets Python 3, including the re-organized standard library, Unicode strings, and all of the other new features. | ||
|
||
## 🎁 Installation | ||
|
||
Binaries of IronPython 3 can be downloaded from the [release page](https://github.com/IronLanguages/ironpython3/releases/latest), available in various formats: `.msi`, `.zip`, `.deb`, `.pkg`. The IronPython package is also available on [NuGet](https://www.nuget.org/packages/IronPython). See the [installation article](https://github.com/IronLanguages/ironpython3/wiki/Installing) for detailed instructions on how to install a standalone IronPython interpreter on various operating systems and .NET frameworks. | ||
|
||
## ✍️ Examples | ||
|
||
The following C# program: | ||
|
||
```cs | ||
using System.Windows.Forms; | ||
|
||
MessageBox.Show("Hello World!", "Greetings", MessageBoxButtons.OKCancel); | ||
``` | ||
|
||
can be written in IronPython as follows: | ||
|
||
```py | ||
import clr | ||
clr.AddReference("System.Windows.Forms") | ||
from System.Windows.Forms import MessageBox, MessageBoxButtons | ||
|
||
MessageBox.Show("Hello World!", "Greetings", MessageBoxButtons.OKCancel) | ||
``` | ||
|
||
Here is an example how to call Python code from a C# program. | ||
|
||
```cs | ||
var eng = IronPython.Hosting.Python.CreateEngine(); | ||
var scope = eng.CreateScope(); | ||
eng.Execute(@" | ||
def greetings(name): | ||
return 'Hello ' + name.title() + '!' | ||
", scope); | ||
dynamic greetings = scope.GetVariable("greetings"); | ||
System.Console.WriteLine(greetings("world")); | ||
``` | ||
|
||
> This example assumes that `IronPython` has been added to the C# project as a NuGet package. | ||
|
||
More examples and documentation on how to use IronPython outside the interactive console can be found [here](https://github.com/IronLanguages/ironpython3/wiki/Using-IronPython). | ||
|
||
## 🐍 State of the Project | ||
|
||
The current target is Python 3.4, although features and behaviors from later versions may be included. | ||
|
||
See the following lists for features from each version of CPython that have been implemented: | ||
|
||
- [`Python3.0`](https://github.com/IronLanguages/ironpython3/wiki/WhatsNew%E2%80%90Python3.0) | ||
Lamparter marked this conversation as resolved.
Show resolved
Hide resolved
|
||
- [`Python3.1`](https://github.com/IronLanguages/ironpython3/wiki/WhatsNew%E2%80%90Python3.1) | ||
- [`Python3.2`](https://github.com/IronLanguages/ironpython3/wiki/WhatsNew%E2%80%90Python3.2) | ||
- [`Python3.3`](https://github.com/IronLanguages/ironpython3/wiki/WhatsNew%E2%80%90Python3.3) | ||
- [`Python3.4`](https://github.com/IronLanguages/ironpython3/wiki/WhatsNew%E2%80%90Python3.4) | ||
- [`Python3.5`](https://github.com/IronLanguages/ironpython3/wiki/WhatsNew%E2%80%90Python3.5) | ||
- [`Python3.6`](https://github.com/IronLanguages/ironpython3/wiki/WhatsNew%E2%80%90Python3.6) | ||
|
||
## 🙋 Contributing | ||
|
||
Want to contribute to this project? Let us know with an [issue](https://github.com/IronLanguages/IronPython3/issues) that communicates your intent to create a [pull request](https://github.com/IronLanguages/IronPython3/pulls). Also, view our [contributing guidelines](CONTRIBUTING.md) to make sure you're up to date on the coding conventions. | ||
For more details on contributing see the [Contributing](CONTRIBUTING.md) article. | ||
|
||
#### 🫡 Code of Conduct | ||
This project has adopted the code of conduct defined by the Contributor Covenant to clarify expected behavior in our community. | ||
For more information see the [.NET Foundation Code of Conduct](https://dotnetfoundation.org/code-of-conduct). | ||
|
||
### 🛠️ Building from source | ||
|
||
See the article on [building from source](https://github.com/IronLanguages/ironpython3/wiki/Building). Since the main development is on Windows, bugs on other platforms may inadvertently be introduced - please report them! | ||
|
||
### ⚖️ License | ||
|
||
This project is licensed under the Apache-2.0 License as stated in the [`LICENSE`](https://github.com/IronLanguages/ironpython3/blob/56d1799/LICENSE). | ||
> Copyright (c) .NET Foundation and Contributors. | ||
|
||
### 📝 Wiki | ||
|
||
The documentation and guides for IronPython are available [on the wiki](https://github.com/IronLanguages/ironpython3/wiki). Enjoy! |
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Although I like the idea of better structured bug reports I'm not sure this set of templates is well suited for the project. I assume this lets you pick a style before proceeding to filing an issue? Is there an escape hatch that allows not using a template?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There is a way to still use blank issues, it can be enabled from the
config.yml
file I created. I'll enable it now.