Skip to content
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

Adds ANSIDriver - Pure "Console Virtual Terminal Sequences" driver #2940

Draft
wants to merge 1,921 commits into
base: v2_develop
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
1921 commits
Select commit Hold shift + click to select a range
6b72b3f
Remove PowerShell module for analyzers
dodexahedron Jul 10, 2024
93c2425
Remove analyzers from CI build
dodexahedron Jul 10, 2024
d1730f0
Convert package reference versions to ranges
dodexahedron Jul 10, 2024
6f098d5
Fixes #3592. DateField unit tests fail on macos.latest.
BDisp Jul 10, 2024
d3727e4
Merge pull request #3600 from dodexahedron/v2_3572_Remove_Analyzers
tig Jul 11, 2024
36c71fe
Merge branch 'v2_develop' into v2_3592_culture-unit-test-on-macos-fix
BDisp Jul 11, 2024
f974861
Resolving merge conflicts.
BDisp Jul 11, 2024
69f8c6d
Merge branch 'v2_develop' into v2_PackageReference_Ranges
tig Jul 11, 2024
9aee2d1
Merge pull request #3601 from dodexahedron/v2_PackageReference_Ranges
tig Jul 11, 2024
d8d491a
Resolving merge conflicts.
BDisp Jul 11, 2024
a22f661
Add version ranges.
BDisp Jul 11, 2024
6cc4d54
Fix version ranges.
BDisp Jul 11, 2024
bbce488
Remove JETBRAINS_ANNOTATIONS from project.
BDisp Jul 11, 2024
aa20990
updated readmes for v2
tig Jul 11, 2024
b620865
Bump gittools/actions from 0 to 1
dependabot[bot] Jul 11, 2024
4f95f93
Bump actions/configure-pages from 4 to 5
dependabot[bot] Jul 11, 2024
5608a79
Bump peter-evans/repository-dispatch from 2 to 3
dependabot[bot] Jul 11, 2024
e32b20a
Merge pull request #3605 from tig/v2_2815-branches
tig Jul 11, 2024
425267b
Merge pull request #3602 from BDisp/v2_3592_culture-unit-test-on-maco…
tig Jul 11, 2024
b64db9b
Fixed gitversion
tig Jul 11, 2024
bebf7c6
Fixed publish.yml
tig Jul 11, 2024
1c254cc
Merge pull request #3610 from gui-cs/dependabot/github_actions/peter-…
tig Jul 11, 2024
b3ebd7e
Merge pull request #3609 from gui-cs/dependabot/github_actions/action…
tig Jul 11, 2024
7dc12a4
Merge pull request #3608 from gui-cs/dependabot/github_actions/gittoo…
tig Jul 11, 2024
3b19567
Merge branch 'v2_develop' into v2_3574_self-contained-single-file
BDisp Jul 12, 2024
abdde3a
Remove Terminal.Gui.Analyzers.Internal project from the Terminal.Gui …
BDisp Jul 12, 2024
f1fe7e7
Merge pull request #3582 from BDisp/v2_3574_self-contained-single-file
tig Jul 12, 2024
39b39dd
Fixes #3611. Localization not working on self-contained single-file.
BDisp Jul 13, 2024
ff7a68b
Change all Scenarios to merge their Init, Setup, and Run overrides in…
BDisp Jul 13, 2024
f925625
Add GetQuitKeyAndName helper method.
BDisp Jul 13, 2024
748be6c
Remove obsolete Init, Setup and Run virtual methods.
BDisp Jul 13, 2024
fb20fea
Remove obsolete Top and Win properties
BDisp Jul 13, 2024
3e598e7
Merge pull request #3613 from BDisp/v2_3350_scenario-refactoring
tig Jul 14, 2024
d71fa11
Fixed README, Showcase, and images
tig Jul 14, 2024
7c0a3be
Merge pull request #3614 from tig/v2-Readme-Showcase
tig Jul 14, 2024
2e8b461
Merge branch 'v2_develop' into v2_3611_localization-self-contained-si…
BDisp Jul 14, 2024
3650392
Merged with v2_develop
tig Jul 14, 2024
725855d
Removed accidental stuff
tig Jul 14, 2024
ba4ab0c
Involving assertive code within a region.
BDisp Jul 14, 2024
78ab7ec
Progress. WIP
tig Jul 14, 2024
e105643
Updated About box
tig Jul 15, 2024
58e4271
MessageBox works. Dialog broken
tig Jul 15, 2024
8bf0207
Dialog works
tig Jul 15, 2024
918299b
Changing README explaining the purpose of this project.
BDisp Jul 15, 2024
a3b606f
New unit tests. Lots of fixes
tig Jul 15, 2024
0c10d4b
More unit tests
tig Jul 15, 2024
f51e38d
Fixed TextFormatter.FormatAndGetSize for wide vertical text
tig Jul 16, 2024
06339c9
Fixed ShadowTests
tig Jul 16, 2024
ce5fc1c
Fixed ShadowTests
tig Jul 16, 2024
3b8319b
Added low-level TextFormatter.FormatAndGetSize tests
tig Jul 16, 2024
0e7e1e2
Fixed bogus Title test
tig Jul 16, 2024
fbd7dc7
Changes comment for clarification.
BDisp Jul 16, 2024
e93eebb
Fixed little things.
tig Jul 17, 2024
dd6d96a
Undid PosCenter change
tig Jul 17, 2024
4654d4a
Undid PosCenter change
tig Jul 17, 2024
a30dbe7
Fixed broken Window test
tig Jul 17, 2024
f6064be
Fixed SetTextFormatterSize
tig Jul 17, 2024
d8bc511
Fixed Shortcut
tig Jul 17, 2024
e566dce
Fixed Horizontal FormatAndGetSize Fill issue; Vertical is still broken
tig Jul 17, 2024
b528ba8
Fixed Vertical FormatAndGetSize Fill issue
tig Jul 17, 2024
3708873
Removed lame title test
tig Jul 17, 2024
51433c0
Refactored DimAuto unit tests
tig Jul 17, 2024
2cecc77
WIP - Trying to make TextFormatter have indepdentent width/height
tig Jul 17, 2024
b4e1b3e
All unit tests pass.
tig Jul 18, 2024
48eba3b
Code cleanup
tig Jul 18, 2024
c4de9fe
Code cleanup
tig Jul 18, 2024
6c07532
Code cleanup
tig Jul 18, 2024
e4e2b59
Code cleanup
tig Jul 18, 2024
952fc49
Fix typos
csinkers Jul 19, 2024
114d9aa
Fix typo in config.json
csinkers Jul 19, 2024
7733a69
Code cleanup
tig Jul 19, 2024
c119fc5
Updated DimAuto.md
tig Jul 19, 2024
ee57f41
Fixed @bdisp noted error
tig Jul 19, 2024
153f101
Fixed warnings
tig Jul 19, 2024
c6a9021
Fixed error in Textformatter
tig Jul 19, 2024
c537c34
doc tweak
tig Jul 19, 2024
e8644f3
Merge pull request #3620 from csinkers/fix-typos
tig Jul 19, 2024
23737de
rebased against v2_develop
tig Jul 19, 2024
6b5bcce
Fix typo in config.json
csinkers Jul 19, 2024
24e5fbd
Revert "Fix typo in config.json"
tig Jul 19, 2024
fa847f4
Revert "rebased against v2_develop"
tig Jul 19, 2024
4128b51
Merge branch 'v2_develop' into v2_3499-Finish-DimAuto
tig Jul 19, 2024
3ed3076
Addressed review feedback from @dodexahedron.
tig Jul 20, 2024
6550cde
Nuked Textformatter.AutoSize.
tig Jul 20, 2024
0e70444
Renamed Width/Height/Size
tig Jul 20, 2024
71e14c8
API doc improvements
tig Jul 20, 2024
4bdaef7
Nuked TextFormatter.CalcRect and unit tests
tig Jul 20, 2024
31ef0fc
Revamped Messagebox tests
tig Jul 20, 2024
c7ae986
Review feedback
tig Jul 20, 2024
8a8666c
Removed old comments
tig Jul 20, 2024
07d7bbb
reverted bad change
tig Jul 20, 2024
6c6244a
Updated DatePicker BUGBUG
tig Jul 20, 2024
ffc4136
Fixed ExpanderButton
tig Jul 20, 2024
c59f59a
Identified Dim.Auto bug with AnchorEnd
tig Jul 20, 2024
149bedf
Added more AnchorEnd unit tests.
tig Jul 20, 2024
bf852ff
Added BUGBUG
tig Jul 20, 2024
87c5a43
Undid previous change that broke StatusBar
tig Jul 20, 2024
6f9fb1a
Trying to debug @bdisp's About box issue
tig Jul 20, 2024
6da8dab
Trying to figure out aboutbox issue
tig Jul 20, 2024
0073156
added message box unit test for UI Catalog about box
tig Jul 20, 2024
d003d00
Removed verbatim strings
tig Jul 20, 2024
b2cd779
Use .ReplaceLineEndings() in TextFormatter
tig Jul 21, 2024
8ca972b
Learning how to use [CombinatorialData]
tig Jul 21, 2024
f0d4c48
Learning how to use [CombinatorialData] moar
tig Jul 21, 2024
f328f0c
Initial commit.
tig Jul 21, 2024
7c4d94c
Bump gittools/actions from 1 to 2
dependabot[bot] Jul 22, 2024
43ed4b5
Initial commit. Added interface. Testing with RadioGroup
tig Jul 22, 2024
d79b8c0
Merge pull request #3624 from gui-cs/dependabot/github_actions/gittoo…
tig Jul 22, 2024
74521d8
Added Orientation unit tests.
tig Jul 22, 2024
557bc13
Merge branch 'v2_develop' into v2-IOrientation
tig Jul 22, 2024
329cd2f
One class per file
tig Jul 22, 2024
840e198
Beefed up unit tests
tig Jul 22, 2024
b04846b
Adde example
tig Jul 22, 2024
6d464a0
API docs
tig Jul 22, 2024
3b89159
API docs
tig Jul 22, 2024
112d043
Upgraded Slider
tig Jul 22, 2024
e8b32b0
Upgraed Bar
tig Jul 22, 2024
aec901f
Upgraded Line
tig Jul 22, 2024
16b374b
Upgraded Shortcut
tig Jul 22, 2024
2097a17
Default orientation is Horiz
tig Jul 22, 2024
6220863
Fixed issues @bdisp noted:
tig Jul 22, 2024
14d8bf5
Merge branch 'v2_develop' into v2_2491-Toplevel-Redesign
tig Jul 22, 2024
44ce74a
Refactored Application into smaller files.
tig Jul 22, 2024
2e0a9a7
Fixed nullable warnings
tig Jul 22, 2024
0b8e434
Applicaation Toplevel handling moved to separate file
tig Jul 22, 2024
2939108
Added Toplevel to spelling dict
tig Jul 22, 2024
250050c
Toplevel cleanup
tig Jul 22, 2024
4701080
Toplevel.cs organization
tig Jul 23, 2024
d44e8d3
More Toplevel.cs organization & docs
tig Jul 23, 2024
d813b1f
Fixed dumb enum cast in KeyBinding code
tig Jul 23, 2024
fe5cbe4
More Toplevel.cs organization & docs
tig Jul 23, 2024
f8e8aff
More Toplevel.cs organization & docs
tig Jul 23, 2024
feaf5c0
WIP (Very Broken) try to move keybindings out of Toplevel to app
tig Jul 24, 2024
c03dd32
Moved Toplevel keybindings out of Toplevel to Application.
tig Jul 24, 2024
22dcbc1
removed un needed key handling code from TextView
tig Jul 24, 2024
c088f2e
removed unneeded key handling code from Toplevel
tig Jul 24, 2024
4a56b84
removed unneeded AlternateBack/FormardKey code from Toplevel
tig Jul 24, 2024
0c56dfe
Moved view navigation out of Toplevel and into Application (via ViewN…
tig Jul 24, 2024
73a9dc3
Fixed nullable warnings 2
tig Jul 24, 2024
04dbe68
Fixed nullable warnings 3
tig Jul 24, 2024
3b35189
Fixed nullable warnings 4
tig Jul 24, 2024
689c0cd
Fixed nullable warnings 5
tig Jul 24, 2024
ff47aa2
Fixed nullable warnings 6
tig Jul 24, 2024
022050d
Fixed nullable warnings 7
tig Jul 24, 2024
f37ec5e
Moved Overlapped stuff to ApplicationOverlap static class. Fixed null…
tig Jul 24, 2024
cb3e806
Moved Overlapped stuff to ApplicationOverlap static class. Fixed null…
tig Jul 24, 2024
cbecae5
Moved Overlapped stuff to ApplicationOverlap static class. Fixed null…
tig Jul 24, 2024
331d972
nullable enable TopLevel
tig Jul 24, 2024
ca4d10b
WIP: Modify Focus logic to properly deal with ViewArrangement.Overlap…
tig Jul 25, 2024
3a40851
WIP: More - Modify Focus logic to properly deal with ViewArrangement.…
tig Jul 25, 2024
d735f2a
Merge branch 'v2_develop' into v2_3611_localization-self-contained-si…
tig Jul 25, 2024
d874f56
Reorganized View source files to get my head straight
tig Jul 25, 2024
88954b9
Fix WSL InvariantCulture test.
BDisp Jul 25, 2024
9b89fe6
Code cleanup and API docs - getting better understanding of navigatio…
tig Jul 25, 2024
ccec0ee
Documenting focus code
tig Jul 25, 2024
2d2954d
Merge branch 'v2_develop' into v2_3499-Finish-DimAuto
tig Jul 25, 2024
0583d45
Merge pull request #3615 from tig/v2_3499-Finish-DimAuto
tig Jul 25, 2024
2ec07b8
Merge branch 'v2_develop' into v2-IOrientation
tig Jul 25, 2024
15e6b4e
Documenting focus code
tig Jul 25, 2024
a935ef8
Merge remote-tracking branch 'refs/remotes/origin/v2_2491-Toplevel-Re…
tig Jul 25, 2024
78f527e
Fixed post merge errors.
tig Jul 25, 2024
5b1ac0e
Merge branch 'v2_2491-Toplevel-Redesign' into v2_2491-Arrangement-Ove…
tig Jul 25, 2024
4b785c8
Prepping to reduce duplicated code in FocusNext/Prev
tig Jul 25, 2024
66f83ad
Reduced duplicated code by leverating Navigationdirection enum
tig Jul 25, 2024
911f2c6
Rewrote FocusNearestView to be understandable
tig Jul 26, 2024
aa9d42f
Renamed FocusNearestView to be understandable
tig Jul 26, 2024
3f19a6f
Added low-level Focus tests
tig Jul 26, 2024
5e28ba1
Added low-level Focus tests
tig Jul 26, 2024
3e9f585
Fixes #3628. SixLabors.ImageSharp prior to version 3.1.5 are vulnerable.
BDisp Jul 26, 2024
745f013
Merge branch 'v2_develop' into v2_3611_localization-self-contained-si…
BDisp Jul 26, 2024
ee3c48a
Progress
tig Jul 27, 2024
e90213a
Merge pull request #3629 from BDisp/v2_3628_sixlabors-imagesharp-vers…
tig Jul 27, 2024
207266b
Fixed unit test
tig Jul 27, 2024
e41b24f
Removed coupling between TabStop and CanFocus
tig Jul 27, 2024
5d1467d
Converted TabStop to auto property
tig Jul 27, 2024
7577edb
Merge branch 'v2_develop' into v2_3611_localization-self-contained-si…
BDisp Jul 27, 2024
4ede064
TabStop -> now of type TabStop.
tig Jul 27, 2024
fa4b9dc
Added BUGBUGs and TODOs re TabIndex
tig Jul 27, 2024
d507426
Changed semantics of TabIndexes, TabIndex, and CanFocus relative to T…
tig Jul 27, 2024
d407683
Made View.Navigation nullable enable.
tig Jul 27, 2024
a225b42
Update ReactiveUI Example
ChrisPulman Jul 28, 2024
e167f4e
Update Formatting
ChrisPulman Jul 28, 2024
eb8036b
Merge pull request #3630 from ChrisPulman/v2_develop
tig Jul 28, 2024
65592b4
WIP: Refining TabStop and GroupStop
tig Jul 28, 2024
f2eb9ce
WIP: More refining
tig Jul 29, 2024
1c57b4f
Merge branch 'v2_develop' into v2_3611_localization-self-contained-si…
BDisp Jul 29, 2024
cf1435a
WIP: Fixed stuff. Broke stuff. Making progress.
tig Jul 29, 2024
66ac07a
Merge pull request #3612 from BDisp/v2_3611_localization-self-contain…
tig Jul 29, 2024
37f3490
WIP: More. Trying to fix TableView regression
tig Jul 31, 2024
6c889c9
Fixed FileDialog test
tig Jul 31, 2024
3d00102
Added BUGBUGs
tig Jul 31, 2024
47e1c87
Added AllViews_AtLeastOneNavKey_Leaves
tig Jul 31, 2024
38e517c
Added AllViews_AtLeastOneNavKey_Leaves
tig Jul 31, 2024
6f4c7be
Cleaned up some unit tests
tig Jul 31, 2024
469b357
Revamped Scenario
tig Jul 31, 2024
60da57d
Fixes #3632. Automatize getting cultures from the embedded resources …
BDisp Jul 31, 2024
5910d13
Remove unused using.
BDisp Jul 31, 2024
f3146a2
Re-add assertions to ensure it's working running the executable file.
BDisp Aug 1, 2024
a0e639d
Merge pull request #3633 from BDisp/v2_3632_embedded-strings-resource…
tig Aug 1, 2024
2f71fc0
Code cleanup
tig Aug 2, 2024
25018b7
Changed Shortcuts scenario to use Ctrl-F4 to exit instead of Ctrl-Z a…
tig Aug 2, 2024
9a6e09f
Merge branch 'v2_develop' into v2_2491-Refactor-TopLevel-Application-…
tig Aug 2, 2024
5768add
Merge branch 'v2_develop' into v2-IOrientation
tig Aug 2, 2024
94fdcbe
Merge pull request #3625 from tig/v2-IOrientation
tig Aug 2, 2024
bb16e69
merged with v2_develop
tig Aug 2, 2024
79e50b4
Nuked AlternateFwd/BkKeys.
tig Aug 2, 2024
8da833a
Added Next/PrevTabKeys.
tig Aug 2, 2024
8cbbcd8
backported adornmentseditor
tig Aug 2, 2024
eaa5b01
backported ViewExperiments
tig Aug 2, 2024
09c1003
Enabled ViewArrangement.Overlapped zorder hack
tig Aug 2, 2024
ac9d011
Updated Window.Arrangement
tig Aug 2, 2024
4985da4
Hacked in Application.Navigation.Set/GetFocused
tig Aug 3, 2024
288e3fb
Fixed hack
tig Aug 3, 2024
8772645
Fixed KeyBinding issue @bdisp found
tig Aug 3, 2024
981963a
Fix api doc publish
tig Aug 3, 2024
bbe8fbf
Merge branch 'v2_develop' into v2_2491-Refactor-TopLevel-Application-…
tig Aug 3, 2024
5f567be
Code cleanup & doc fix
tig Aug 3, 2024
18997e0
Merge branch 'v2_2491-Refactor-TopLevel-Application-And-Focus' of tig…
tig Aug 3, 2024
3072d8b
Back ported navigation.md
tig Aug 3, 2024
8c14ab3
Doc updates
tig Aug 3, 2024
fc05d06
Merge branch 'v2_develop' into v2_2491-Refactor-TopLevel-Application-…
tig Aug 4, 2024
f70e8de
Doc updates
tig Aug 4, 2024
bc1483e
Merge branch 'v2_2491-Refactor-TopLevel-Application-And-Focus' of tig…
tig Aug 4, 2024
18ac4ab
simplified test
tig Aug 4, 2024
9526b4e
Found and fixed another Shortcut bug
tig Aug 4, 2024
ae46bba
MessageBox now centered by default.
tig Aug 4, 2024
271a73c
Made unit tests more resiliant to config changes
tig Aug 4, 2024
f5b1984
Made unit tests more resiliant to config changes
tig Aug 4, 2024
a9f63ad
Made unit tests more resiliant to config changes
tig Aug 4, 2024
990b7ee
Merge pull request #3639 from tig/v2_3523-MessageBox-Center-Buttons
tig Aug 4, 2024
17e14ab
Initial commit.
tig Aug 4, 2024
cebf177
Added other types
tig Aug 4, 2024
e86a2fc
Simplfiied app scope key setters
tig Aug 5, 2024
331ab51
Updatd keyboard.md
tig Aug 5, 2024
9865f72
Merged with v2_develop.
tig Aug 5, 2024
af9887b
Fixed merged issue
tig Aug 5, 2024
5516791
Merge pull request #3634 from tig/v2_2491-Refactor-TopLevel-Applicati…
tig Aug 5, 2024
126120b
Merged.
tig Aug 5, 2024
de10e22
Code cleanup
tig Aug 5, 2024
c0fc83b
Added Scenario and expanded API
tig Aug 5, 2024
b6db4a3
Fixed warning
tig Aug 5, 2024
5dd3db9
Fixed linux/mac failure
tig Aug 5, 2024
12df9be
Fixed linux/mac test failure
tig Aug 6, 2024
363cddd
Merge pull request #3640 from tig/v2_3261-NumericUpDown
tig Aug 6, 2024
0bd50c5
Fixes #3641. `CheckBox.State` -> `CheckBox.CheckState` (#3648)
tig Aug 6, 2024
1b973ee
Trying to fix publish issue
tig Aug 6, 2024
63e75b7
Fixes #3109. AOT support with .Net 8. (#3638)
BDisp Aug 6, 2024
1f310fd
Fixes #3655 - Fixes rendering issue in `Dialog`/`MessageBox` (#3656)
tig Aug 10, 2024
a893169
Fixes #3541. Checking if clipboard is available on windows. (#3657)
BDisp Aug 12, 2024
6ce0d09
Updated to get building again. Not sure of status but it runs
tig Aug 13, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
1,777 changes: 1,753 additions & 24 deletions .editorconfig

Large diffs are not rendered by default.

37 changes: 37 additions & 0 deletions .filenesting.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
{
"help": "https://go.microsoft.com/fwlink/?linkid=866610",
"root": true,

"dependentFileProviders": {
"add": {
"addedExtension": {},
"pathSegment": {
"add": {
".*": [
".config",
".cs",
".json",
".resx"
]
}
},
"extensionToExtension": {
"add": {
".designer.cs": [
".resx"
],
".cs.d.ts": [
".cs"
]
}
},
"fileToFile": {
"add": {
"package-lock.json": [
"package.json"
]
}
}
}
}
}
16 changes: 8 additions & 8 deletions .github/workflows/api-docs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ name: Build and publish API docs

on:
push:
branches: [main, develop, v2_develop]
branches: [v1_release, v2_develop]

permissions:
id-token: write
Expand All @@ -17,11 +17,11 @@ jobs:
runs-on: windows-latest
steps:
- name: Checkout
if: github.ref_name == 'main' || github.ref_name == 'develop'
#if: github.ref_name == 'v1_release' || github.ref_name == 'v1_develop'
uses: actions/checkout@v4

- name: DocFX Build
if: github.ref_name == 'main' || github.ref_name == 'develop'
#if: github.ref_name == 'v1_release' || github.ref_name == 'v1_develop'
working-directory: docfx
run: |
dotnet tool install -g docfx
Expand All @@ -31,25 +31,25 @@ jobs:
continue-on-error: false

- name: Setup Pages
if: github.ref_name == 'main' || github.ref_name == 'develop'
uses: actions/configure-pages@v4
#if: github.ref_name == 'v1_release' || github.ref_name == 'v1_develop'
uses: actions/configure-pages@v5

- name: Upload artifact
if: github.ref_name == 'main' || github.ref_name == 'develop'
#if: github.ref_name == 'v1_release' || github.ref_name == 'v1_develop'
uses: actions/upload-pages-artifact@v3
with:
path: docfx/_site

- name: Deploy to GitHub Pages
if: github.ref_name == 'main' || github.ref_name == 'develop'
if: github.ref_name == 'v1_release' || github.ref_name == 'v1_develop'
id: deployment
uses: actions/deploy-pages@v4
with:
token: ${{ secrets.GITHUB_TOKEN }}

- name: v2_develop Repository Dispatch ${{ github.ref_name }}
if: github.ref_name == 'v2_develop'
uses: peter-evans/repository-dispatch@v2
uses: peter-evans/repository-dispatch@v3
with:
token: ${{ secrets.V2DOCS_TOKEN }}
repository: gui-cs/Terminal.GuiV2Docs
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/codeql-analysis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,15 +4,15 @@ name: "Code scanning"

on:
push:
branches: [main]
branches: [main, v2_release]
paths-ignore:
- '**/*.md'
- '**/*.txt'
- '**/*.html'
- docs
- docfx
pull_request:
branches: [main]
branches: [main, v2_release]
paths-ignore:
- '**/*.md'
- '**/*.txt'
Expand Down
97 changes: 70 additions & 27 deletions .github/workflows/dotnet-core.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,22 +2,36 @@ name: Build & Test Terminal.Gui with .NET Core

on:
push:
branches: [ main, develop, v2_develop ]
branches: [ v2_release, v2_develop ]
paths-ignore:
- '**.md'
pull_request:
branches: [ main, develop, v2_develop ]

branches: [ v2_release, v2_develop ]
paths-ignore:
- '**.md'

jobs:
build_and_test:

runs-on: windows-latest
runs-on: ${{ matrix.os }}
strategy:
# Turn off fail-fast to let all runners run even if there are errors
fail-fast: true
matrix:
os: [ ubuntu-latest, windows-latest, macos-latest ]

timeout-minutes: 10
steps:
- uses: actions/checkout@v4

- name: Setup dotnet

# Build

- name: Checkout code
uses: actions/checkout@v4

- name: Setup .NET Core
uses: actions/setup-dotnet@v4
with:
dotnet-version: 8.0
dotnet-version: 8.x
dotnet-quality: 'ga'

- name: Install dependencies
Expand All @@ -27,26 +41,55 @@ jobs:
- name: Build Debug
run: dotnet build --configuration Debug --no-restore

# Test
# Note: The --blame and VSTEST_DUMP_PATH stuff is needed to diagnose the test runner crashing on ubuntu/mac
# See https://github.com/microsoft/vstest/issues/2952 for why the --blame stuff below is needed.
# Without it, the test runner crashes on ubuntu (but not Windows or mac)

- name: MacOS - Patch test runner settings to stop on fail
if: runner.os == 'macOS'
run: |
brew install gnu-sed
gsed -i 's/"stopOnFail": false/"stopOnFail": true/g' UnitTests/xunit.runner.json

- name: Windows/Linux - Patch test runner settings to stop on fail
if: runner.os != 'macOS'
run: |
sed -i 's/"stopOnFail": false/"stopOnFail": true/g' UnitTests/xunit.runner.json

- name: Set VSTEST_DUMP_PATH
shell: bash
run: echo "{VSTEST_DUMP_PATH}={logs/${{ runner.os }}/}" >> $GITHUB_ENV

- name: Test
run: |
sed -i 's/"stopOnFail": false/"stopOnFail": true/g' UnitTests/xunit.runner.json
dotnet test --no-restore --verbosity normal --collect:"XPlat Code Coverage" --settings UnitTests/coverlet.runsettings --blame
mv -v UnitTests/TestResults/*/*.* UnitTests/TestResults/
dotnet test --verbosity normal --collect:"XPlat Code Coverage" --settings UnitTests/coverlet.runsettings --diag:logs/${{ runner.os }}/logs.txt --blame --blame-crash --blame-hang --blame-hang-timeout 60s --blame-crash-collect-always

# mv -v UnitTests/TestResults/*/*.* UnitTests/TestResults/

# Note: this step is currently not writing to the gist for some reason
- name: Create Test Coverage Badge
uses: simon-k/dotnet-code-coverage-badge@v1.0.0
id: create_coverage_badge
- name: Upload Test Logs
if: always()
uses: actions/upload-artifact@v4
with:
label: Unit Test Coverage
color: brightgreen
path: UnitTests/TestResults/coverage.opencover.xml
gist-filename: code-coverage.json
# https://gist.github.com/migueldeicaza/90ef67a684cb71db1817921a970f8d27
gist-id: 90ef67a684cb71db1817921a970f8d27
gist-auth-token: ${{ secrets.GIST_AUTH_TOKEN }}

- name: Print Code Coverage
run: |
echo "Code coverage percentage: ${{steps.create_coverage_badge.outputs.percentage}}%"
echo "Badge data: ${{steps.create_coverage_badge.outputs.badge}}"
name: test-logs-${{ runner.os }}
path: |
logs/
UnitTests/TestResults/

# Note: this step is currently not writing to the gist for some reason
# - name: Create Test Coverage Badge
# uses: simon-k/dotnet-code-coverage-badge@v1.0.0
# id: create_coverage_badge
# with:
# label: Unit Test Coverage
# color: brightgreen
# path: UnitTests/TestResults/coverage.opencover.xml
# gist-filename: code-coverage.json
# # https://gist.github.com/migueldeicaza/90ef67a684cb71db1817921a970f8d27
# gist-id: 90ef67a684cb71db1817921a970f8d27
# gist-auth-token: ${{ secrets.GIST_AUTH_TOKEN }}

# - name: Print Code Coverage
# run: |
# echo "Code coverage percentage: ${{steps.create_coverage_badge.outputs.percentage}}%"
# echo "Badge data: ${{steps.create_coverage_badge.outputs.badge}}"
8 changes: 4 additions & 4 deletions .github/workflows/publish.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ name: Publish Terminal.Gui

on:
push:
branches: [ main, develop, v2_release, v2_develop ]
branches: [ v1_release, v1_develop, v2_release, v2_develop ]
tags:
- v*
paths-ignore:
Expand All @@ -19,13 +19,13 @@ jobs:
fetch-depth: 0 # fetch-depth is needed for GitVersion

- name: Install GitVersion
uses: gittools/actions/gitversion/setup@v0
uses: gittools/actions/gitversion/setup@v2
with:
versionSpec: '5.x'
includePrerelease: true

- name: Determine Version
uses: gittools/actions/gitversion/execute@v0
uses: gittools/actions/gitversion/execute@v2
with:
useConfigFile: true
#additionalArguments: /b develop
Expand All @@ -43,7 +43,7 @@ jobs:
- name: Build Release
run: |
dotnet-gitversion /updateprojectfiles
dotnet build --no-restore -c Release
dotnet build --no-incremental --nologo --force --configuration Release

- name: Pack
run: dotnet pack -c Release --include-symbols -p:Version='${{ steps.gitversion.outputs.SemVer }}'
Expand Down
58 changes: 46 additions & 12 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,29 +1,63 @@
bin
obj
~$*
# Build artifacts
[Bb]in/
[Oo]bj/
[Rr]elease/
[Dd]ebug/
[Xx]64/
[Aa][Rr][Mm]/
[Aa][Rr][Mm]64/

# User-local settings and caches
*.rsuser
*.suo
*.user
*.userosscache
*.sln.docstates
*.userprefs
_ReSharper.**
*.[Rr]e[Ss]harper
*.DotSettings.user
.devcontainer/
.vscode/
.vs/

# Visual Studio cache files
# files ending in .cache can be ignored
*.[Cc]ache
# but keep track of directories ending in .cache
!?*.[Cc]ache/

# Roslyn generated cs files
**.g.cs

# Common temporary files
~$*
*~
packages
.vs

# User-specific files
*.user
# NuGet Stuff
*.nupkg
*.snupkg
# Exclude everything in packages directory except the packages/build directory
**/[Pp]ackages/*
!**/[Pp]ackages/build/

# API Docs
docfx/api
docfx/_site

# Unit Tests
# Test Results
UnitTests/TestResults
TestResults

#git merge files
# git merge files
*.orig

.vscode/
*.theirs
*.ours

demo.*

*.deb

*.tui/
*.tui/

*.dotCover
33 changes: 33 additions & 0 deletions .vsconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
{
"version": "1.0",
"components": [
"Microsoft.VisualStudio.Component.DependencyValidation.Community",
"Microsoft.VisualStudio.Component.CoreEditor",
"Microsoft.VisualStudio.Workload.CoreEditor",
"Microsoft.Net.Component.4.8.SDK",
"Microsoft.Net.Component.4.7.2.TargetingPack",
"Microsoft.Net.ComponentGroup.DevelopmentPrerequisites",
"Microsoft.VisualStudio.Component.Roslyn.Compiler",
"Microsoft.Component.MSBuild",
"Microsoft.VisualStudio.Component.Roslyn.LanguageServices",
"Microsoft.VisualStudio.Component.TextTemplating",
"Microsoft.VisualStudio.Component.NuGet",
"Microsoft.VisualStudio.Component.ManagedDesktop.Core",
"Microsoft.NetCore.Component.Runtime.8.0",
"Microsoft.NetCore.Component.SDK",
"Microsoft.VisualStudio.Component.FSharp",
"Microsoft.NetCore.Component.DevelopmentTools",
"Microsoft.VisualStudio.Component.AppInsights.Tools",
"Microsoft.VisualStudio.Component.Debugger.JustInTime",
"Microsoft.Net.Component.4.6.2.TargetingPack",
"Microsoft.Net.Component.4.8.1.TargetingPack",
"Microsoft.VisualStudio.Component.ManagedDesktop.Prerequisites",
"Microsoft.VisualStudio.Component.NuGet.BuildTools",
"Microsoft.Net.Component.4.6.TargetingPack",
"Microsoft.VisualStudio.Component.VSSDK",
"Microsoft.VisualStudio.ComponentGroup.VisualStudioExtension.Prerequisites",
"Microsoft.Component.CodeAnalysis.SDK",
"Microsoft.VisualStudio.Workload.VisualStudioExtension"
],
"extensions": []
}
Loading