Commit Graph

97 Commits

Author SHA1 Message Date
AMZN-Phil 0102894a83 Handle servers with no content length and make downloading more obvious
Signed-off-by: AMZN-Phil <pconroy@amazon.com>
2021-11-10 08:44:24 -08:00
AMZN-Phil e9c3a453c5 Merge pull request #5341 from aws-lumberyard-dev/Prism/CheckGemUpdates
Add ability to overwrite o3de object when downloading
2021-11-09 10:41:35 -08:00
nggieber 14a1206274 Add additional info handling and proper display for gems
Signed-off-by: nggieber <nggieber@amazon.com>
2021-11-08 08:17:28 -08:00
AMZN-Phil 31382d080e Remove duplication, additional readability and added missed file
Signed-off-by: AMZN-Phil <pconroy@amazon.com>
2021-11-04 17:07:02 -07:00
AMZN-nggieber 4721ef8298 License Info is Displayed as Clickable Link in Gem Catalog + Other Inspector Improvements (#5272)
Signed-off-by: nggieber <nggieber@amazon.com>
2021-11-04 13:04:06 -07:00
nggieber 06f893edf1 Merge branch 'development' into Prism/ShowRepoGems 2021-10-22 17:28:28 -07:00
AMZN-Phil e8a7743aec Merge pull request #4911 from aws-lumberyard-dev/Prism/RefreshGemRepos
Gem Repos can be Refreshed through Project Manager
2021-10-22 17:23:35 -07:00
nggieber 88f7f66b04 Removed fullPathGiven and instead check if path is a file when getting gem json data
Signed-off-by: nggieber <nggieber@amazon.com>
2021-10-22 17:19:54 -07:00
nggieber 500ac030a3 Merge branch 'development' into Prism/ShowRepoGems 2021-10-22 16:30:02 -07:00
nggieber 673815c58d Merge branch 'development' into Prism/ShowRepoGems 2021-10-22 16:23:17 -07:00
nggieber 15f4c1a091 Undownloaded remote gems are shown in Gem Catalog and searchable by repo name
Signed-off-by: nggieber <nggieber@amazon.com>
2021-10-22 16:22:16 -07:00
AMZN-Phil 69771ab2e1 Merge pull request #4892 from aws-lumberyard-dev/TrackDownloadProgress
Project Manager track progress of, and cancel downloads
2021-10-22 15:53:29 -07:00
AMZN-Phil b609dbbbbb Pass a callback instead of weak linking a module
Signed-off-by: AMZN-Phil <pconroy@amazon.com>
2021-10-22 14:07:32 -07:00
nggieber f6d4556b60 Merge branch 'development' into Prism/RefreshGemRepos 2021-10-22 12:41:09 -07:00
Alex Peterson b536abbf4e Add existing gem through Project Manager 2021-10-22 10:53:29 -07:00
AMZN-Phil 993baeac7b Add a comment to inform that the process is limited to a single download
Signed-off-by: AMZN-Phil <pconroy@amazon.com>
2021-10-22 09:37:04 -07:00
nggieber 968c8640d0 Merge branch 'development' into Prism/RefreshGemRepos 2021-10-22 07:44:37 -07:00
nggieber b4a85a2ed6 Repos can be refreshed through Project Manager individually or all at once
Signed-off-by: nggieber <nggieber@amazon.com>
2021-10-22 07:38:41 -07:00
AMZN-Phil e3cfcd4cc7 Add the ability for Python to pass download progress to Project Manager and to cancel downloads.
Signed-off-by: AMZN-Phil <pconroy@amazon.com>
2021-10-21 16:07:07 -07:00
AMZN-Phil 02364b869e First part of UI feedback for downloading gems
Signed-off-by: AMZN-Phil <pconroy@amazon.com>
2021-10-19 19:48:36 -07:00
AMZN-nggieber 4899309b6a Connect Adding and Removal of Gem Repo UI to CLI (#4729)
* Connect Adding and Removal of Gem Repo UI to CLI

Signed-off-by: nggieber <nggieber@amazon.com>

* Addressed PR feedback

Signed-off-by: nggieber <nggieber@amazon.com>
2021-10-18 09:40:34 -07:00
AMZN-nggieber 10ab1a369f Adds Download status info UI to Gem Catalog (#4602)
* Adds Download status info UI to Gem Catalog

Signed-off-by: nggieber <nggieber@amazon.com>

* Removed test code

Signed-off-by: nggieber <nggieber@amazon.com>

* Remove unused variable

Signed-off-by: nggieber <nggieber@amazon.com>

* Addressed PR feedback

Signed-off-by: nggieber <nggieber@amazon.com>

* Fixed Open3DEngine spelling

Signed-off-by: nggieber <nggieber@amazon.com>
2021-10-13 12:52:44 -07:00
nggieber 3698c3c3a7 Merge branch 'development' into Prism/ShowRepoList 2021-10-11 09:20:06 -07:00
Alex Peterson df419a0990 Run get_python script when Python fails to load (#4482)
Signed-off-by: AMZN-alexpete <26804013+AMZN-alexpete@users.noreply.github.com>
2021-10-05 11:26:54 -07:00
nggieber 118834efde Added ability to list gem repos using CLI and integrated support into Project Manager
Signed-off-by: nggieber <nggieber@amazon.com>
2021-10-04 15:08:13 -07:00
lumberyard-employee-dm 090aa8f053 Removed ununeeded includes from EBus EBus.h and Policies.h (#4256)
* Removed ununeeded includes from EBus EBus.h and Policies.h

Updated the locations which needed those includes

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Adding missing include for <memory> to AWsClientAuthBus.h

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Remove the while true loop in the EBusQueuePolicy Execute() function

The while true loop in Execute was for allowing additional functions to be queued in the middle of execution of current list of functions.
That functionality was dangerous, because if a queued function added itself during execution unconditionally, then it would result in an infinite loop

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Updated the AssetManager::DispatchEvents function to pump the AssetBus event queue until empty

Queued Events on the AssetBus is able to queue additional events on that Bus during execution of those events.

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Changed the AssetManager::DispatchEvents function to only execute the
AssetBus queued events once

Changed the AssetJobsFloodTest.AssetWithNoLoadReference_LoadDependencies_BehaviorObeyed test to dispatch events until the OnAssetContainerReady callback is signaled.

This happens after every asset load to make sure that the
expiring AssetContainer instances are removed from `AssetManager::m_ownedAssetContainer` container before retrying to load the same asset.

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Added a MaxTimeoutSeconds constant for the maximum amount of the time to run a single DispatchEvents loop

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>
2021-09-29 18:13:37 -05:00
nggieber 4b73637ffd Merge branch 'development' into Prism/AddRepoDialog 2021-09-27 07:24:29 -07:00
nggieber 536ef46e2b Add Add Gem Repo Dialog
Signed-off-by: nggieber <nggieber@amazon.com>
2021-09-27 07:12:10 -07:00
AMZN-nggieber 9b14d49f87 Adds Inspector to Gem Repo Screen (#4242)
* Adds the gem repo screen with the UI built but with mocked data and not connected to the o3de scripts

Signed-off-by: nggieber <nggieber@amazon.com>

* Changed name of added to enabled, disabled define, removed unused functions

Signed-off-by: nggieber <nggieber@amazon.com>

* Added Repo Screen Inspector UI

Signed-off-by: nggieber <nggieber@amazon.com>

* Addressed minor PR feedback

Signed-off-by: nggieber <nggieber@amazon.com>

* Add some more minor PR changes

Signed-off-by: nggieber <nggieber@amazon.com>
2021-09-24 10:50:45 -07:00
Alex Peterson 43244d30e1 Project Manager Gem Dependencies (#4132)
* Fix engine API change and add gem dependencies

Signed-off-by: AMZN-alexpete <26804013+AMZN-alexpete@users.noreply.github.com>

* Add GemCatalog dependency test

Signed-off-by: AMZN-alexpete <26804013+AMZN-alexpete@users.noreply.github.com>

* Clarify display name and fix missing const

Signed-off-by: AMZN-alexpete <26804013+AMZN-alexpete@users.noreply.github.com>

* Moving a couple helper functions into private scope

Signed-off-by: AMZN-alexpete <26804013+AMZN-alexpete@users.noreply.github.com>

* Update gem count when unselecting a gem #4074

This addresses the following issue https://github.com/o3de/o3de/issues/4074

Signed-off-by: AMZN-alexpete <26804013+AMZN-alexpete@users.noreply.github.com>

* Active/Inactive filter and dependency tooltips

Signed-off-by: AMZN-alexpete <26804013+AMZN-alexpete@users.noreply.github.com>

* Accessors for previously added and dependencies

Signed-off-by: AMZN-alexpete <26804013+AMZN-alexpete@users.noreply.github.com>

* Cart displays gem dependency changes

Signed-off-by: AMZN-alexpete <26804013+AMZN-alexpete@users.noreply.github.com>

* Shorten titles to fit in summary popup

Signed-off-by: AMZN-alexpete <26804013+AMZN-alexpete@users.noreply.github.com>

* Remove QString::number

Signed-off-by: AMZN-alexpete <26804013+AMZN-alexpete@users.noreply.github.com>

* Remove extra space

Signed-off-by: AMZN-alexpete <26804013+AMZN-alexpete@users.noreply.github.com>

* Consolidate source model accesor helpers

Signed-off-by: AMZN-alexpete <26804013+AMZN-alexpete@users.noreply.github.com>

* Addressing minor feedback

Signed-off-by: AMZN-alexpete <26804013+AMZN-alexpete@users.noreply.github.com>

* Remove unused local variable

Signed-off-by: AMZN-alexpete <26804013+AMZN-alexpete@users.noreply.github.com>
2021-09-24 09:01:17 -07:00
Steve Pham cfc9ec2530 Implement Project Manager 'build' button for Mac and Linux(#4248)
Signed-off-by: Steve Pham <spham@amazon.com>
2021-09-22 13:44:21 -07:00
AMZN-nggieber 357e823323 Add Initial Gem Repository Management Screen (#4172)
* Adds the gem repo screen with the UI built but with mocked data and not connected to the o3de scripts

Signed-off-by: nggieber <nggieber@amazon.com>

* Changed name of added to enabled, disabled define, removed unused functions

Signed-off-by: nggieber <nggieber@amazon.com>

* Added eof nl to qss

Signed-off-by: nggieber <nggieber@amazon.com>
2021-09-20 08:36:29 -07:00
Esteban Papp b255334535 Code/Tools fixes
Signed-off-by: Esteban Papp <81431996+amznestebanpapp@users.noreply.github.com>
2021-08-16 16:42:24 -07:00
AMZN-nggieber 2c7f6f9742 Adds Links to Gem Directory and Documentation for Gems (#2922)
* Changed blue text to white that is not meant as a link, made 'View in Director' link work for gems in the inspector, added parsing for gem documentation link

Signed-off-by: nggieber <nggieber@amazon.com>

* Added documentation links for gems, changed markup for urls in summaries and requirements so they are clickable

Signed-off-by: nggieber <nggieber@amazon.com>

* Fixed a couple of the documentation links

Signed-off-by: nggieber <nggieber@amazon.com>

* Added documentation url to edit gem properties script and updated unit tests

Signed-off-by: nggieber <nggieber@amazon.com>
2021-08-06 10:19:35 -05:00
Steve Pham 38261d0800 Shorten copyright headers by splitting into 2 lines (#2213)
* Updated all copyright headers to split the longer original copyright line into 2 shorter lines

Signed-off-by: Steve Pham <spham@amazon.com>
2021-07-16 15:25:48 -07:00
lumberyard-employee-dm 6ebf3a93d1 Added protection in the register python script queries of the default folders against a non-existent key causing a KeyError in python (#1946)
Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>
2021-07-09 12:56:29 -05:00
lumberyard-employee-dm 02922806a5 Updated gem.json for all top-level Gems. (#1715) (#1917)
* Updated gem.json for all top-level Gems. All the top level gems now have identical gem.json formats based on the DefautlGem template gem.json. Two additional fields have been added, a type: field and a requirements: field. These fields are for display in Project Mananger. All gem.json files have a default requirements: value of None. Devs are responsible for providing requirements. Gem descriptions and tags have been signed off by developers.

Signed-off-by: Cronin <mikecro@amazon.com>

* Fixed minor formatting issues with RADTelemetry gem.json

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Adding newline to QtForPython gem.json

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Adding newline to the Twitch gem.json

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Adding newline to AWSCore gem.json

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Adding newline to the AtomTressFX gem.json

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Adding newline to the end of the AudioEngineWwise gem.json

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Adding newline to the end of the CertificateManager gem.json

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Removing extra whitespace in summary of CrashReporting gem.json

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Adding newline to the end of the CustomAssetExample gem.json

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Removing extra whitespace in editorPythonBindings gem summary

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Adding newline to the end of the ScriptedEntityTweener gem.json

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Adding newline to the end of the Gestures gem.json

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Removing extra whitetspace in the summary of the GameStateSamples gem

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Adding newline to the end of the ExpressionEvaluation gem.json

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Updated the ProjectManager PythonBindings.cpp code to reference the
newer fields in the gem.json files

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Updating the Gem and Project templates gem.json files to include the
"type" and the "requirements" field.

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Updated the default "requirments" field value to be empty string instead
of "None"

This works better with the ProjectManager GemInfoFromPath function.

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Correcting "summary" field name

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Added the requirements text to the AudioEngineWwise Gem

This gem requires downloading the Wwise 3rdParty library from AudioKinetic's website

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

Co-authored-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

Co-authored-by: Mike Cronin <58789750+micronAMZN@users.noreply.github.com>
2021-07-07 13:29:33 -05:00
lumberyard-employee-dm d73a98aa2f Added detection of gems which are not directly under an external subdirectory root (#1841)
* Added proper detection of the list of Gems in the Project Templates
enabled_gems.cmake file

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Added a CMake alias target for the Atom Gem and the AtomLyIntegration

Both of those targets just aliases the Atom_AtomBridge gem
Therefore they turn on Atom

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Replacing the Atom_AtomBridge gem in the project template with the Atom gem

The Atom gem is just an alias to the Atom_AtomBridge gem

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Updated the manifest.py gem gathering logic to recurse through the external subdirecotories locating gem.json files to discover all gems in a subdirectory

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>
2021-07-02 21:46:26 -05:00
AMZN-nggieber d4e4ebc2a7 Change Standard Project Template to Default and Change Open 3D Foundation to Open 3D Engine in gem catalog (#1842)
Made Standard Template Always Show First and Default Selection
    Changed Open 3D Foundation to Open 3D Engine in Gem Catalog and setup detection of Origin based on gem creator
2021-07-02 19:32:41 -07:00
pconroy ae6a424064 Make remove_invalid_o3de_projects take a path and return a value
Signed-off-by: pconroy <pconroy@amazon.com>
2021-07-01 20:10:16 -07:00
pconroy e0c3d15d5a Remove deleted projects from project manager
Signed-off-by: pconroy <pconroy@amazon.com>
2021-07-01 20:10:10 -07:00
Steve Pham b4a2edec6a Final update copyright headers to reference license files at the repo root (#1693)
* Final update copyright headers to reference license files at the repo root

Signed-off-by: spham <spham@amazon.com>

* Fix copyright validator unit tests to support the stale O3DE header scenario

Signed-off-by: spham <spham@amazon.com>
2021-06-30 19:51:55 -07:00
Steve Pham 70042fcdcd O3DE Copyright Updates for Linux Foundation (#1504) 2021-06-23 10:55:22 -07:00
Alex Peterson aa885e5d0b Fix project creation (#1445)
* Add ability to change project name

* Fixed several issues where path types were changed

* Added PythonBindings CreateProject unit test

* Fix python warning format

* Validate new project name in CLI

* Fix issue creating pathview on linux

* Use better testing macros

* Refactored the unit_test_engine_template.py test to actually test
against the current engine_template.py commands

The commands of create-template, create-from-template, create-project
and create-gem is now being validated.

Registered the unit_test_engine_template.py script with CTest in the smoke test
suite so that it runs in Automated Review

Fixed issues in the engine_template.py script where the template_restricted_path parameter was required in the create_project and create_gem functions

Co-authored-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>
2021-06-23 09:19:17 -07:00
AMZN-nggieber bc3aa45ed9 Prism Show Gem Requirements and Prompt when Adding Gems with Requirements (#1478)
* Added requirements section to gem inspector

* Added Dialog when configuring for gems with extra requirements
2021-06-22 19:44:33 -07:00
AMZN-nggieber e21443b5d6 Added Project Preview to Project Settings and Fixed Issues with Moving Projects (#1380)
* Updated Project Settings Screen with preview and fixed moving projects

* Tests for some Project Utils

* Remove old defined consts

* Update UX to use display name when avaliable where appropriate

* Use newPreviewImagePath for temp changing preview.png otherwise use iconPath for preview in UX

* Removed use of newPreviewImagePath in ProjectButton
2021-06-22 17:24:48 -07:00
Alex Peterson ecded991b5 Display error when unable to start Python
Added AzFramework Application, logging, unit tests
2021-06-14 17:02:22 -07:00
scottr 5061241992 [cpack/stabilization/2106] early out if sys import fails in PythonBindings::StartPython 2021-06-09 17:03:13 -07:00
scottr 2eefc08d2e [cpack/stabilization/2106] fixed startup crash in project manager from installer build 2021-06-09 15:21:30 -07:00
lumberyard-employee-dm 217eddc8bd Fixing the enable_gem.py and disable_gem.py commands (#1207)
* Fixing the enable_gem.py and disable_gem.py commands
The project path wasn't taking into account when querying for gems,
templates and restricted directories registered with the project

Fixing the cmake.py add_gem_dependency and remove_gem_dependency methods
to properly detect a gem within a `set(ENABLED_GEM ...)` cmake variable
Also updated the add_gem_dependency to add the gem right before the end
marker of ')'
Updated the remove_gem_dependency to remove each instance of a gem with
a content that is in between in the `set(ENABLED_GEM ...)` cmake
variable

* Correct Typo in manifest.get_registered doc string
2021-06-09 14:14:01 -05:00