Commit Graph

81 Commits (b609dbbbbbb654397a315dc8e28e38703f9853ac)

Author SHA1 Message Date
AMZN-Phil b609dbbbbb Pass a callback instead of weak linking a module
Signed-off-by: AMZN-Phil <pconroy@amazon.com>
4 years ago
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>
4 years ago
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>
4 years ago
AMZN-Phil 02364b869e First part of UI feedback for downloading gems
Signed-off-by: AMZN-Phil <pconroy@amazon.com>
4 years ago
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>
4 years ago
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>
4 years ago
nggieber 3698c3c3a7 Merge branch 'development' into Prism/ShowRepoList 4 years ago
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>
4 years ago
nggieber 118834efde Added ability to list gem repos using CLI and integrated support into Project Manager
Signed-off-by: nggieber <nggieber@amazon.com>
4 years ago
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>
4 years ago
nggieber 4b73637ffd Merge branch 'development' into Prism/AddRepoDialog 4 years ago
nggieber 536ef46e2b Add Add Gem Repo Dialog
Signed-off-by: nggieber <nggieber@amazon.com>
4 years ago
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>
4 years ago
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>
4 years ago
Steve Pham cfc9ec2530
Implement Project Manager 'build' button for Mac and Linux(#4248)
Signed-off-by: Steve Pham <spham@amazon.com>
4 years ago
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>
4 years ago
Esteban Papp b255334535 Code/Tools fixes
Signed-off-by: Esteban Papp <81431996+amznestebanpapp@users.noreply.github.com>
4 years ago
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>
4 years ago
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>
4 years ago
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>
4 years ago
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>
5 years ago
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>
5 years ago
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
5 years ago
pconroy ae6a424064 Make remove_invalid_o3de_projects take a path and return a value
Signed-off-by: pconroy <pconroy@amazon.com>
5 years ago
pconroy e0c3d15d5a Remove deleted projects from project manager
Signed-off-by: pconroy <pconroy@amazon.com>
5 years ago
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>
5 years ago
Steve Pham 70042fcdcd
O3DE Copyright Updates for Linux Foundation (#1504) 5 years ago
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>
5 years ago
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
5 years ago
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
5 years ago
Alex Peterson ecded991b5
Display error when unable to start Python
Added AzFramework Application, logging, unit tests
5 years ago
scottr 5061241992 [cpack/stabilization/2106] early out if sys import fails in PythonBindings::StartPython 5 years ago
scottr 2eefc08d2e [cpack/stabilization/2106] fixed startup crash in project manager from installer build 5 years ago
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
5 years ago
Alex Peterson 7ca7ad9b72
Fix missing user_tags exception and configure gems button 5 years ago
amzn-mgwynn 38865c95e2
Merge pull request #1162 from aws-lumberyard-dev/Prism/gem-db
Adding python bindings for modifying project properties
5 years ago
mgwynn 1900a42203 remove const ref from iterator for python object conversion since pybind only returns copies and produces a clang error 5 years ago
mgwynn 01b200ad42 removing unused define 5 years ago
mgwynn 6d6f8413c8 Incorporating review comments. Some parameter modifications. Some cli edge case handling. Remove remove_tag member from project info 5 years ago
Alex Peterson aeaf1bcdbe
Fix engine settings not populating or saving
* Allow multiple settings to be registered at once
* Old manifests versions may not have default_third_party_folder
5 years ago
amzn-mgwynn ffdce2ef7f
Merge branch 'main' into Prism/gem-db 5 years ago
mgwynn 7984f82e48 Bing project_properties CLI to updateProject method. Update project info struct.
Update project properties cli to support lists for tags. Minor adjustments to support
changes.
5 years ago
AMZN-nggieber 3b60bcc0f1
Project Manager Build Project from Projects Page (#1142)
* Added loading bar mode to project button

* Added ProjectBuilder files

* commmit current progress for project building

* Push current project building work

* Full build commands built out and message boxes for lots of situation

* Replaced defaultProjectImage placeholder

* Added installed cmake path to builder process env PATH
5 years ago
mgwynn accd473ff5 Adding python bindings for modifying project properties 5 years ago
Alex Peterson 9b17754278
Project Template details and preview changes 5 years ago
scottr 9e7f8e45eb [default_3rdparty] fixed typo 5 years ago
scottr 08a2e50ee3 [default_3rdparty] missed updating a call to register 5 years ago
scottr d30fd8b1dd Merge branch 'main' into default_3rdparty 5 years ago
lumberyard-employee-dm 816d05ef2d
Updating manifest.py template query functions (#1113)
* Updating manifest.py template query functions
The get_project_templates, get_gem_templates and get_generic_templates
methods have been renamed to indicate that the methods return the
templates that can be used in a create-project, create-gem and
create-from-template command of the engine_template.py

Updated the print_registration.py script to support outputing project
specific gems and templates.
Add a unit test script for the manifest.py script.
Added unit test to validate the new functions:
`get_templates_for_project_creation`
`get_templates_for_gem_creation`
`get_templates_for_generic_creation`

* Implementing the project print registration methods

Added implementations of the project print registration methods and tested them locally
Removed implementations of the download print registration methods, since they have not went through app-sec review.

* Renaming get_restricted_data to get_restricted_json_data

Fixed the get_registered method in manifest.py when looking up projects

* Updated the print_manifest_json_data calls to return the result
5 years ago
scottr 85e6d06c2c [default_3rdparty] add 3rd party to engine registration + specific path registration fixes 5 years ago