Skip to content

Allow language build profiles #21

@strangemonad

Description

@strangemonad

Profiles are collections of build settings e.g. JavaIntelliJ vs JavaGuava vs JavaApache vs JavaAndroid vs Java6 (controls things like the style of toSting() and hashCode() overrides whether to assume guava is globally available as a base library, joda time vs java8 time etc., getFoo vs Foo functions etc)

Javascript would be more messy. It could be things like use es6 for classes or generate legacy style constructors. modules or no modules etc (that is mostly mitigated by the large prevalence on Babel in most build workflows). The other axis is whether to generate flow type defs vs flow type annotated code, typescript etc.

In C / C++ (do we want that even?) we need support for stylistic things like primitive constants get a #define with a name prefix vs name prefixed init constructor functions (modular C style).

Finally, we need a path for migrating existing code bases by possibly adopting an existing coding convention.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions