Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [umlgen-dev] API from the generators

Thanks Johan for your feedback.
Please check this review before rebasing on master: https://git.eclipse.org/r/#/c/55369/
Best regards,
Cedric

Le 03/07/2015 10:37, Johan Hardy a écrit :
Thanks Cédric for this proposition.

Concerning the external package, I'm not against.
Concerning the Modeling aspects, I'm obviously for.

Best regards;
Johan

-----Original Message-----
From: umlgen-dev-bounces@xxxxxxxxxxx [mailto:umlgen-dev-bounces@xxxxxxxxxxx] On Behalf Of Cédric Notot
Sent: jeudi 2 juillet 2015 15:42
To: umlgen-dev@xxxxxxxxxxx
Subject: [umlgen-dev] API from the generators

Hi,

For the creation of the new release 1.0.0, I suggest to specify each exported package as internal (x-internal:=true).

Indeed, today, the exposition of APIs from each generator is not clearly defined. So, just a simple modification on a Java class method (or
template) would involve an API break and a rising to the next major version of the related plugin and feature (and even of the whole UML Generators project).
On my mind, in the most cases, generators will not provide API (by nature). If this is not so, the generator has to be designed and implemented with caution in order to be extended or/and reused.

Defining these packages as internal, this enables "client" developers to extend or reuse some generators BUT warning them this could be broken in a next version (even service kind). From the "provider" developer point of view, this enables flexibility, waiting that the project gains in maturity. This is a good mean to watch needs and use cases in order to define real architectures and APIs in the future.
Also, it is really easier to open APIs than to close them.

Let me know your opinion in relation to your generator.

Note about modeling aspects:
The changes on UML Generators profiles (or DSLs) should not involve API breaks (unless for DSLs if there is not a migration procedure). Same things for the UML meta-model evolutions. All these changes will be come with evolutions and adaptations of the generators for a next minor version. The use of old profiles will not give any guarantee on the result of the generated code (this will have to be managed on a case by case basis by the generator leaders, adopting an implementing
strategy(*) and communicating on it) and the new models will not be back compatible.

(*) For example: Automatic model migration or use of Acceleo Java services managing different profile versions or just no management of old profiles/DSLs...

Best regards,
Cedric
_______________________________________________
umlgen-dev mailing list
umlgen-dev@xxxxxxxxxxx
To change your delivery options, retrieve your password, or unsubscribe from this list, visit https://dev.eclipse.org/mailman/listinfo/umlgen-dev

  ------------------------------------------------------------------------------

E-MAIL DISCLAIMER

The present message may contain confidential and/or legally privileged information. If you are not the intended addressee and in case of a transmission error, please notify the sender immediately and destroy this E-mail. Disclosure, reproduction or distribution of this document and its possible attachments is strictly forbidden.

SPACEBEL denies all liability for incomplete, improper, inaccurate, intercepted, (partly) destroyed, lost and/or belated transmission of the current information given that unencrypted electronic transmission cannot currently be guaranteed to be secure or error free.
Upon request or in conformity with formal, contractual agreements, an originally signed hard copy will be sent to you to confirm the information contained in this E-mail.

SPACEBEL denies all liability where E-mail is used for private use.

SPACEBEL cannot be held responsible for possible viruses that might corrupt this message and/or your computer system.
  -------------------------------------------------------------------------------
_______________________________________________
umlgen-dev mailing list
umlgen-dev@xxxxxxxxxxx
To change your delivery options, retrieve your password, or unsubscribe from this list, visit
https://dev.eclipse.org/mailman/listinfo/umlgen-dev




Back to the top