You are viewing a plain text version of this content. The canonical link for it is here.
Posted to server-dev@james.apache.org by David Leangen <ap...@leangen.net> on 2020/05/16 07:36:59 UTC

[jseive] Folding into a single module

Hi!

I noticed that there is a “util” module that is released as a separate jar.

Given that the size of the jsieve project is so small, is it really necessary to release it as two separate jar files? Would it be reasonable to consider folding the “util” module into the “core” module, and to just have a single-module project with a single jar release?


In the role of an application assembler / operation, I am much happier when I have fewer dependencies I have to worry about. I appreciate it when projects consider what dependencies they make me have to worry about.


If you agree that it would make the library simpler to use, I will gladly submit a PR that integrates the two modules into a single module.

At the same time, if the project is now considered as “stable”, I would propose to release as v1.0.0, for semantic versioning.


Thoughts?


Cheers,
=David



---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org


Re: [jseive] Folding into a single module

Posted by David Leangen <ap...@leangen.net>.
>> If you agree with this approach, then I will create a Jira Issue this time and work against that. :-)
> 
> :+1:

Created https://issues.apache.org/jira/browse/JAMES-3188
---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org


Re: [jseive] Folding into a single module

Posted by Tellier Benoit <bt...@apache.org>.
On 19/05/2020 08:59, David Leangen wrote:
[...]
> Ok, cool. Let’s get back to this after we resolve the current issues.
> 
> If you agree with this approach, then I will create a Jira Issue this time and work against that. :-)

:+1:

Thanks for taking care about this.

Best regards,

Benoit

> Cheers,
> =David
> 
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
> For additional commands, e-mail: server-dev-help@james.apache.org
> 

---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org


Re: [jseive] Folding into a single module

Posted by David Leangen <ap...@leangen.net>.
Hi Benoit,

> I would be carefull: the maven module "util" has a depedency to
> javax.mail, causing some potential dependecy conflicts for users.

I think it’s ok to have optional dependencies. Only those who want to use the functionality that requires javax.mail would have to provide it at runtime. Those who don’t need that functionality don’t need to worry about javax.mail.

We would only have to document this.

However (as per below) I think it would be better to have no dependencies than to have an optional dependency on javax.mail.


> As such, your proposition makes sense to me if we remove
> ScriptChecker & ScriptCheckMailAdapter.
> 
> Maybe it can be moved as a usage example?

Good idea!

So here is what I could do:

 * Move what is relevant in utils to core
 * Rename “jsieve-core” to just “jsieve”
 * Rename “jsieve-util” to “jsieve-examples”


Only jsieve would be deployed as a single-jar library with no dependencies: the ideal kind of library!!

> From the few extensions I contributed to JSIEVE, I would consider it
> stable thus would agree with a 1.0.0 release.

Ok, cool. Let’s get back to this after we resolve the current issues.

If you agree with this approach, then I will create a Jira Issue this time and work against that. :-)


Cheers,
=David



---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org


Re: [jseive] Folding into a single module

Posted by Tellier Benoit <bt...@apache.org>.
Hi David,

Answers inlined.

Cheers,

On 16/05/2020 14:36, David Leangen wrote:
> Hi!
> 
> I noticed that there is a “util” module that is released as a separate jar.
> 
> Given that the size of the jsieve project is so small, is it really necessary to release it as two separate jar files? Would it be reasonable to consider folding the “util” module into the “core” module, and to just have a single-module project with a single jar release?

I would be carefull: the maven module "util" has a depedency to
javax.mail, causing some potential dependecy conflicts for users.

Also, I might be curious on "who uses jsieve-utils" ... (James Server
don't).

As such, your proposition makes sense to me if we remove
ScriptChecker & ScriptCheckMailAdapter.

Maybe it can be moved as a usage example?

> In the role of an application assembler / operation, I am much happier when I have fewer dependencies I have to worry about. I appreciate it when projects consider what dependencies they make me have to worry about.
> 
> 
> If you agree that it would make the library simpler to use, I will gladly submit a PR that integrates the two modules into a single module.
> 
> At the same time, if the project is now considered as “stable”, I would propose to release as v1.0.0, for semantic versioning.

From the few extensions I contributed to JSIEVE, I would consider it
stable thus would agree with a 1.0.0 release.

> 
> 
> Thoughts?
> 
> 
> Cheers,
> =David
> 
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
> For additional commands, e-mail: server-dev-help@james.apache.org
> 

---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org