google-cloud-eclipse icon indicating copy to clipboard operation
google-cloud-eclipse copied to clipboard

New App Engine project wizards should allow selecting Cloud Libraries too

Open briandealwis opened this issue 6 years ago • 6 comments

New App Engine project wizards should have a second page for selecting from the available Cloud Libraries.

briandealwis avatar Mar 07 '18 20:03 briandealwis

How many people will want this? It may cost users more time than it saves.

elharo avatar Mar 07 '18 21:03 elharo

The current process is pretty hard to discover. It would be an optional page so that they can hit "Finish" from the first page. I think many App Engine projects will want Datastore (if they don't choose Objectify). Pub/Sub is also useful.

Compare to the New Java Project wizard that has an optional second page to configure the source roots, associated projects, and libraries for the project.

briandealwis avatar Mar 08 '18 04:03 briandealwis

Endpoints and Objectify are on the initial screen:

image

We might add a second screen for the cloud client libraries, but at a minimum I'd like to fix https://github.com/GoogleCloudPlatform/appengine-plugins-core/issues/526 first. Any thoughts about we should approach that? Should we move the more important libraries to the top of the list? Should we separate GA and non-GA libraries?

#2459 is a nice to have too.

P.S. Not a prerequisite, but the alignment of the cloud icon in this dialog still itches me every time I see it. Need to figure out how to move it a pixel down and left. #2029

elharo avatar Mar 08 '18 12:03 elharo

For libraries like translate and vision this makes a lot of sense. But we risk really confusing AE standard users because the google-cloud-java versions of the core app engine services such as datastore are either not ready, completely break the API, or have poor to no emulator support.

patflynn avatar Mar 08 '18 13:03 patflynn

@briandealwis You mentioned the New Java Project wizard. That's a good comparison. To a large extent one our App Engine projects is a Java project, and that makes me wonder if it would be helpful to have a more general solution for handling external jars and such on project creation, much like the New Java Project wizard. This could handle cloud client libraries and non App Engine specific libraries such as JodaTime.

image

OTOH, the new Maven project wizard doesn't have anything like this. It's one screen and done, with no extra dependencies added on project creation.

elharo avatar Mar 08 '18 13:03 elharo

But Maven users are used to editing the POM, and they offer a POM editor that simplifies selecting items. Not to mention that no picker could ever scale to millions of artifacts :-)

I think it's more accurate to say we craft WTP Java web projects. They're not general Java projects. Most of the options in that Java Build Path panel are configured by WTP (or m2e-wtp).

briandealwis avatar Mar 08 '18 14:03 briandealwis