Skip to content

pub package manager support for new project template #2432

Closed
@DartBot

Description

@DartBot

This issue was originally filed by dhconnelly@gmail.com


Per the discussion of the Dart package manager, I'm requesting an additional "pub" command to create a new project with a standard layout and files.

Use:

pub new awesome_app

This will create a folder named "awesome_app" with:

  • a package description/dependencies file (correctly configured, so if a package needs to declare its own version in addition to declaring its dependencies, this is already filled-in);
  • a packages directory;
  • an awesome_app.dart program, or whatever;
  • etc.

Extensions:

Maybe supports "client", "server", "both" sub-commands so that these project types can be autogenerated appropriately (including io or html or json libraries, etc).

Activity

munificent

munificent commented on Apr 4, 2012

@munificent
Member

Removed Type-Defect label.
Added Type-Enhancement label.

DartBot

DartBot commented on Apr 4, 2012

@DartBot
Author

This comment was originally written by @chrisbu


Similar to issue #2435, it would be great if the functionality described above was available to apps by being able to #import pub itself and call functions on pub directly.

 (Ok, as a workaround, you could just start pub as a process from another dart script).

kasperl

kasperl commented on Apr 11, 2012

@kasperl

Added Area-Pub, Triaged labels.

DartBot

DartBot commented on May 1, 2012

@DartBot
Author

This comment was originally written by @butlermatt


This discussion is turning interesting. The package manager seems to be converting to a general purpose framework controller, similar to Rails, Padrino, etc. So as oppose to just a 'gems' functionality, we're creating projects, running a development web server, deploying/finalizing scripts and compiling/minifying. Would this functionality then become integrated with the Dart editor (either adding new functionality or replacing the current existing functionality). I'm certainly not against this direction, however if it is the direction you'll be taking then you may want to consider other features they provide as well from the get go (MVC generation, console servers, etc) rather than seeming like you're just tacking on cool features. Already with serve and deploy commands it seems to be becoming more than just a package manager (at least of the ones I've used, gems and cpan), and more of an all encompassing project manager which, as a subset, also handles/manages the packages of a project. Again, I'm not against the idea, just think that if it's the direction you're going it should be considered that from the beginning and designed as such.

munificent

munificent commented on Jun 6, 2012

@munificent
Member

Added this to the Later milestone.

munificent

munificent commented on Dec 12, 2012

@munificent
Member

Issue #7181 has been merged into this issue.

pq

pq commented on Jan 11, 2013

@pq
Member

FWIW: I'm in the process of porting the editor's project template creation to dart (dartbug.com/7856) with an eye towards providing a simple stand-alone commandline tool for quick and easy project bootstrap. If that would meet your needs, feel free to merge this request into that one. In the long run, I'd love to see this tool (and possibly pub too) behind some kind of framework controller (a la the go command --- http://golang.org/doc/articles/go_command.html).

munificent

munificent commented on Feb 6, 2013

@munificent
Member

Set owner to @pq.

DartBot

DartBot commented on Apr 3, 2013

@DartBot
Author

This comment was originally written by johnmccu...@chromium.org


At today's hackathon a team struggled because they put their unit tests under the "tests" directory instead of the pub required "test" directory. They wasted a lot of time confused by an import error. Perhaps if pub auto-populated the directory structure this could have been avoided.

DartBot

DartBot commented on May 14, 2013

@DartBot
Author

This comment was originally written by ped...@gmail.com


I think it could work like leiningen for clojure (https://github.com/technomancy/leiningen).

DartBot

DartBot commented on Mar 24, 2014

@DartBot
Author

This comment was originally written by beatgammi...@gmail.com


All I want from this is to generate a bare-bones pubspec.yaml, kind of like npm init in node.js.

I basically want just enough that "pub install" works with all available fields provided.

kasperl

kasperl commented on Jul 10, 2014

@kasperl

Removed this from the Later milestone.
Added Oldschool-Milestone-Later label.

kasperl

kasperl commented on Aug 4, 2014

@kasperl
nex3

nex3 commented on Aug 27, 2014

@nex3
Member

Issue #20701 has been merged into this issue.

sethladd

sethladd commented on Aug 27, 2014

@sethladd
Contributor

We'll encourage the community and tools to deliver this.


Added NotPlanned label.

13 remaining items

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

closed-not-plannedClosed as we don't intend to take action on the reported issuetype-enhancementA request for a change that isn't a bug

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

    Development

    No branches or pull requests

      Participants

      @nex3@sethladd@kevmoo@munificent@pq

      Issue actions

        pub package manager support for new project template · Issue #2432 · dart-lang/sdk