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

Simplify Development.md #23142

Merged
merged 12 commits into from
Jun 24, 2024
Merged

Simplify Development.md #23142

merged 12 commits into from
Jun 24, 2024

Conversation

PureWeen
Copy link
Member

Description of Change

The majority of the information in this file is edge case and confusing for new users. This just simplifies the file down to the minimum amount that should be need to work on MAUI and then references external wikis for testing purposes.

Copy link
Member

@Eilon Eilon left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

A few suggestions to add some clarification. This is great!!

.github/DEVELOPMENT.md Outdated Show resolved Hide resolved
.github/DEVELOPMENT.md Outdated Show resolved Hide resolved
.github/DEVELOPMENT.md Outdated Show resolved Hide resolved
.github/DEVELOPMENT.md Outdated Show resolved Hide resolved
PureWeen and others added 4 commits June 19, 2024 12:02
Eilon
Eilon previously approved these changes Jun 19, 2024
.github/DEVELOPMENT.md Show resolved Hide resolved
.github/DEVELOPMENT.md Show resolved Hide resolved
Copy link
Contributor

@dustin-wojciechowski dustin-wojciechowski left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Some comments I've found starting from a totally clean setup on a Macbook Pro M1:

  1. Doesn't actually say to install VS Code for Mac users. Pretty much the most obvious thing in in the world, but the completionist in me had to say something)
  2. When I set up things, normally I create a blank project maui project first and then test if I can build on all devices before opening the entire maui project (lots of restarting usually involved as you install components you missed)
  3. The wiki for Maui Dev Kit is a good resource for the most part but there a lot of extra steps to get Android working:
    a. I always kind of have trouble with the "recommended" way of downloading Android and end up doing Android Studio, which has a bunch of extra steps (which are outlined mostly by the terminal output when maui dev kit verifies the dev environment, like downloading the command line tools, then using ./sdkmanager to approve licenses and install the build tools for version 34, then using android studio to setup the right version emulator, download versions 34 and 33. But at least all the path stuff is taken care of that was previously in the doc.
  4. The apple side is not that bad, explicitly setting the xcode version in vscode seems to work well.
  5. Step needs to be added to do dotnet build Microsoft.Maui.BuildTasks.slnf before opening the project, or it won't let you build and run when you first open the project.

@PureWeen PureWeen marked this pull request as ready for review June 19, 2024 23:22
@PureWeen PureWeen requested a review from a team as a code owner June 19, 2024 23:22
@PureWeen PureWeen added the area-infrastructure CI, Maestro / Coherency, upstream dependencies/versions label Jun 20, 2024
@MartyIX
Copy link
Contributor

MartyIX commented Jun 20, 2024

I think this is relevant here as well: #19554. One typically writes a test and then it would be nice to run it easily.

.github/DEVELOPMENT.md Outdated Show resolved Hide resolved
docs/DevelopmentTips.md Outdated Show resolved Hide resolved
docs/DevelopmentTips.md Show resolved Hide resolved
docs/DevelopmentTips.md Show resolved Hide resolved
docs/DevelopmentTips.md Outdated Show resolved Hide resolved
docs/DevelopmentTips.md Show resolved Hide resolved
PureWeen and others added 3 commits June 20, 2024 11:37
Co-authored-by: Gerald Versluis <[email protected]>
Co-authored-by: Gerald Versluis <[email protected]>
Co-authored-by: Gerald Versluis <[email protected]>
@jfversluis jfversluis merged commit 2ddcf72 into main Jun 24, 2024
5 checks passed
@jfversluis jfversluis deleted the simplify_dev_instructions branch June 24, 2024 17:44
mattleibow added a commit that referenced this pull request Jul 1, 2024
* Simplify Development.md (#23142)

* Simplify Development.md

* Update .github/DEVELOPMENT.md

Co-authored-by: Eilon Lipton <[email protected]>

* Update .github/DEVELOPMENT.md

Co-authored-by: Eilon Lipton <[email protected]>

* Update .github/DEVELOPMENT.md

Co-authored-by: Eilon Lipton <[email protected]>

* Update .github/DEVELOPMENT.md

Co-authored-by: Eilon Lipton <[email protected]>

* Update DEVELOPMENT.md

* - modify and move advanced tips to different file

* Update DEVELOPMENT.md

* Update .github/DEVELOPMENT.md

Co-authored-by: Gerald Versluis <[email protected]>

* Update docs/DevelopmentTips.md

Co-authored-by: Gerald Versluis <[email protected]>

* Update docs/DevelopmentTips.md

Co-authored-by: Gerald Versluis <[email protected]>

* - updates based on review

---------

Co-authored-by: Eilon Lipton <[email protected]>
Co-authored-by: Gerald Versluis <[email protected]>

* Wire RefreshView up to our xplat layout workflow (#23169) (#23218)

* Use better layout/measure path with refreshview

* - fix naming

* - set RefreshView content to maui compatible container

* - add test

* - fix null operator

* Update Issue23029.xaml.cs

* - fix content panel so it removes previous content

* - add additional check

* Remove adding to FutureAccessList as the app is running with runFullTrust capability (#23047)

* Call base.OnResume if Existing NavigationFragment Early (#23187)

* VSCode no longer uses MAUI to launch (#23222)

* [Android] Fix flyout behaviour switching exception (#22453)

* Fix flyout behaviour switching exception

* Tests added

* Flyout test page added

* Flyoutpage test fixes

* Flyout toggle test added

* Remove duplicate ] characters

* Flyout test pages added

* Check for platforms

* Fix title

* - fix tests

---------

Co-authored-by: Gerald Versluis <[email protected]>
Co-authored-by: Shane Neuville <[email protected]>

* Renamed the project because macOS uses .app (#23223)

* Renamed the project because macOS uses .app

* And the folder

* merge first

* ns

* Move tests to new location (#23251)

* Split SingleProject targets (#23269)

* Split SingleProject targets

* Update Microsoft.Maui.Controls.SingleProject.Before.targets

* Update bug-report.yml with 8.0.61 (#23273)

* Null terminate Page on TabbedRenderer (#23290)

Co-authored-by: Shane Neuville <[email protected]>

* [Windows] Improve performance in accessibility extensions (#22698)

* AccessibilityExtensions: Add missing braces

* AccessibilityExtensions: Enable nullability and improve performance

* Update shipped & unshipped API

---------

Co-authored-by: Javier Suárez <[email protected]>

* [Android] Avoid double event subscribes in gesture manager (#23242)

* [Android] Avoid double event subscribes in gesture manager

* Fix typo in test text

* Bump Microsoft.Web.WebView2 from 1.0.2151.40 to 1.0.2592.51 (#23209)

* [tests] test a lot more things in `MemoryTests.cs` (#23324)

* [tests] test a lot more things in `MemoryTests.cs`

This expands the tests to cover more controls and areas.

* Add test cases for more controls:

  * `Ellipse`
  * `Grid`
  * `Path`
  * `Line`
  * `Path`
  * `RadioButton`
  * `Rectangle`
  * `RoundRectangle`

* Expand tests for a couple controls:

    * `Border` has a `StrokeShape`
    * Any `TemplatedView` gets a `ControlTemplate`

* Re-enable `ListView` for Android

This should work now after merging:

* dotnet/android#8900
* #23120

* Add a complicated test case for `BindableLayout`

Similar to the case at:

* #23199

* Skip `ListView` on API 23

* Bump Appium version to 2.11 (#23337)

* Bump Appium version to 2.11

* Update CarouselViewUITests.UpdateCurrentItem.cs

* Update appium-install.ps1

* Update CarouselViewUITests.UpdateCurrentItem.cs

* Simplify `NavigationRootManager.Connect` on the Windows platform. (#23345)

* Simplify `NavigationRootManager.Connect` on the Windows platform.

* Use ternary operator syntax

* Removed extra tabs

* Moved `_disconnected = false;` to `if (_disconnected)`

* Bump Appium Drivers (#23349)

* Fix Merge

---------

Co-authored-by: Eilon Lipton <[email protected]>
Co-authored-by: Gerald Versluis <[email protected]>
Co-authored-by: MartyIX <[email protected]>
Co-authored-by: Matthew Leibowitz <[email protected]>
Co-authored-by: Thomas Muller <[email protected]>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Javier Suárez <[email protected]>
Co-authored-by: Jonathan Dick <[email protected]>
Co-authored-by: Jonathan Peppers <[email protected]>
Co-authored-by: Takym (たかやま) <[email protected]>
@ederbond
Copy link
Contributor

ederbond commented Jul 9, 2024

Loved these simplified instructions @PureWeen . 🥰👍

@samhouts samhouts added fixed-in-8.0.70 fixed-in-net9.0-nightly This may be available in a nightly release! labels Aug 2, 2024
@github-actions github-actions bot locked and limited conversation to collaborators Sep 2, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
area-infrastructure CI, Maestro / Coherency, upstream dependencies/versions fixed-in-8.0.70 fixed-in-net9.0-nightly This may be available in a nightly release!
Projects
None yet
Development

Successfully merging this pull request may close these issues.

8 participants