[RFC] process: new library approval in principle

Message ID 20230213092616.3589932-1-jerinj@marvell.com (mailing list archive)
State Changes Requested, archived
Delegated to: Thomas Monjalon
Headers
Series [RFC] process: new library approval in principle |

Checks

Context Check Description
ci/checkpatch success coding style OK
ci/loongarch-compilation success Compilation OK
ci/loongarch-unit-testing success Unit Testing PASS
ci/Intel-compilation success Compilation OK
ci/intel-Testing success Testing PASS

Commit Message

Jerin Jacob Feb. 13, 2023, 9:26 a.m. UTC
From: Jerin Jacob <jerinj@marvell.com>

Based on TB meeting[1] action item, defining
the process for new library approval in principle.

[1]
https://mails.dpdk.org/archives/dev/2023-January/260035.html

Signed-off-by: Jerin Jacob <jerinj@marvell.com>
---
 content/process/_index.md | 33 +++++++++++++++++++++++++++++++++
 1 file changed, 33 insertions(+)
 create mode 100644 content/process/_index.md
  

Comments

Jerin Jacob March 1, 2023, 8:28 a.m. UTC | #1
On Mon, Feb 13, 2023 at 2:56 PM <jerinj@marvell.com> wrote:
>
> From: Jerin Jacob <jerinj@marvell.com>
>
> Based on TB meeting[1] action item, defining
> the process for new library approval in principle.
>
> [1]
> https://mails.dpdk.org/archives/dev/2023-January/260035.html


Ping for review.


>
> Signed-off-by: Jerin Jacob <jerinj@marvell.com>
> ---
>  content/process/_index.md | 33 +++++++++++++++++++++++++++++++++
>  1 file changed, 33 insertions(+)
>  create mode 100644 content/process/_index.md
>
> diff --git a/content/process/_index.md b/content/process/_index.md
> new file mode 100644
> index 0000000..21c2642
> --- /dev/null
> +++ b/content/process/_index.md
> @@ -0,0 +1,33 @@
> ++++
> +title = "Process"
> +weight = "9"
> ++++
> +
> +## Process for new library approval in principle
> +
> +### Rational
> +
> +Adding a new library to DPDK codebase with proper RFC and then full patch-sets is
> +significant work and getting early approval-in-principle that a library help DPDK contributors
> +avoid wasted effort if it is not suitable for various reasons.
> +
> +### Process
> +
> +1. When a contributor would like to add a new library to DPDK code base, the contributor must send
> +the following items to DPDK mailing list for TB approval-in-principle.
> +
> +   - Purpose of the library.
> +   - Scope of the library.
> +   - Any licensing constraints.
> +   - Justification for adding to DPDK.
> +   - Any other implementations of the same functionality in other libs/products and how this version differs.
> +   - Public API specification header file as RFC
> +       - Optional and good to have.
> +       - TB may additionally request this collateral if needed to get more clarity on scope and purpose.
> +
> +2. TB to schedule discussion on this in upcoming TB meeting along with author. Based on the TB
> +schedule and/or author availability, TB may need maximum three TB meeting slots.
> +
> +3. Based on mailing list and TB meeting discussions, TB to vote for approval-in-principle and share
> +the decision in the mailing list.
> +
> --
> 2.39.1
>
  
Thomas Monjalon March 3, 2023, 6:25 p.m. UTC | #2
Thanks for formalizing our process.

13/02/2023 10:26, jerinj@marvell.com:
> --- /dev/null
> +++ b/content/process/_index.md

First question: is the website the best place for this process?

Inside the code guides, we have a contributing section,
but I'm not sure it is a good fit for the decision process.

In the website, you are creating a new page "process".
Is it what we want?
What about making it a sub-page of "Technical Board"?

> @@ -0,0 +1,33 @@
> ++++
> +title = "Process"
> +weight = "9"
> ++++
> +
> +## Process for new library approval in principle
> +
> +### Rational

s/Rational/Rationale/

> +
> +Adding a new library to DPDK codebase with proper RFC and then full patch-sets is
> +significant work and getting early approval-in-principle that a library help DPDK contributors
> +avoid wasted effort if it is not suitable for various reasons.

That's a long sentence we could split.

> +
> +### Process
> +
> +1. When a contributor would like to add a new library to DPDK code base, the contributor must send
> +the following items to DPDK mailing list for TB approval-in-principle.

I think we can remove "code base".

TB should be explained: Technical Board.

> +
> +   - Purpose of the library.
> +   - Scope of the library.

Not sure I understand the difference between Purpose and Scope.

> +   - Any licensing constraints.
> +   - Justification for adding to DPDK.
> +   - Any other implementations of the same functionality in other libs/products and how this version differs.

libs/products -> libraries/projects

> +   - Public API specification header file as RFC
> +       - Optional and good to have.

You mean providing API is optional at this stage?

> +       - TB may additionally request this collateral if needed to get more clarity on scope and purpose.
> +
> +2. TB to schedule discussion on this in upcoming TB meeting along with author. Based on the TB
> +schedule and/or author availability, TB may need maximum three TB meeting slots.

Better to translate the delay into weeks: 5 weeks?

> +
> +3. Based on mailing list and TB meeting discussions, TB to vote for approval-in-principle and share
> +the decision in the mailing list.

I think we should say here that it is safe to start working
on the implementation after this step,
but the patches will need to match usual quality criterias
to be effectively accepted.
  
Jerin Jacob March 15, 2023, 1:47 p.m. UTC | #3
On Fri, Mar 3, 2023 at 11:55 PM Thomas Monjalon <thomas@monjalon.net> wrote:
>
> Thanks for formalizing our process.

Thanks for the review.

>
> 13/02/2023 10:26, jerinj@marvell.com:
> > --- /dev/null
> > +++ b/content/process/_index.md
>
> First question: is the website the best place for this process?
>
> Inside the code guides, we have a contributing section,
> but I'm not sure it is a good fit for the decision process.
>
> In the website, you are creating a new page "process".
> Is it what we want?
> What about making it a sub-page of "Technical Board"?

Since it is a process, I thought of keeping "process" page.
No specific opinion on where to add it.
If not other objections, Then I can add at
doc/guides/contributing/new_library_policy.rst in DPDK repo.
Let me know if you think better name or better place to keep the file

>
> > @@ -0,0 +1,33 @@
> > ++++
> > +title = "Process"
> > +weight = "9"
> > ++++
> > +
> > +## Process for new library approval in principle
> > +
> > +### Rational
>
> s/Rational/Rationale/

Ack

>
> > +
> > +Adding a new library to DPDK codebase with proper RFC and then full patch-sets is
> > +significant work and getting early approval-in-principle that a library help DPDK contributors
> > +avoid wasted effort if it is not suitable for various reasons.
>
> That's a long sentence we could split.

OK Changing as:

Adding a new library to DPDK codebase with proper RFC and full
patch-sets is significant work.

Getting early approval-in-principle that a library can help DPDK
contributors avoid wasted effort
if it is not suitable for various reasons


>
> > +
> > +### Process
> > +
> > +1. When a contributor would like to add a new library to DPDK code base, the contributor must send
> > +the following items to DPDK mailing list for TB approval-in-principle.
>
> I think we can remove "code base".

Ack

>
> TB should be explained: Technical Board.

Ack

>
> > +
> > +   - Purpose of the library.
> > +   - Scope of the library.
>
> Not sure I understand the difference between Purpose and Scope.

Purpose → The need for the library
Scope → I meant the work scope associated with it.

I will change "Scope of the library" to,

- Scope of work: Outline the various additional tasks planned for this
library, such as developing new test applications, adding new drivers,
and updating existing applications.

>
> > +   - Any licensing constraints.
> > +   - Justification for adding to DPDK.
> > +   - Any other implementations of the same functionality in other libs/products and how this version differs.
>
> libs/products -> libraries/projects

Ack

>
> > +   - Public API specification header file as RFC
> > +       - Optional and good to have.
>
> You mean providing API is optional at this stage?

Yes. I think, TB can request if more clarity is needed as mentioned below.
"TB may additionally request this collateral if needed to get more
clarity on scope and purpose"

>
> > +       - TB may additionally request this collateral if needed to get more clarity on scope and purpose.
> > +
> > +2. TB to schedule discussion on this in upcoming TB meeting along with author. Based on the TB
> > +schedule and/or author availability, TB may need maximum three TB meeting slots.
>
> Better to translate the delay into weeks: 5 weeks?

Ack

>
> > +
> > +3. Based on mailing list and TB meeting discussions, TB to vote for approval-in-principle and share
> > +the decision in the mailing list.
>
> I think we should say here that it is safe to start working
> on the implementation after this step,
> but the patches will need to match usual quality criterias
> to be effectively accepted.

OK.

I will add the following,

4.  Once TB approves the library in principle, it is safe to start
working on its implementation.
However, the patches will need to meet the usual quality criteria in
order to be effectively accepted.


>
>
  
Jerin Jacob March 30, 2023, 12:48 p.m. UTC | #4
On Wed, Mar 15, 2023 at 7:17 PM Jerin Jacob <jerinjacobk@gmail.com> wrote:
>
> On Fri, Mar 3, 2023 at 11:55 PM Thomas Monjalon <thomas@monjalon.net> wrote:
> >
> > Thanks for formalizing our process.
>
> Thanks for the review.

Ping

>
> >
> > 13/02/2023 10:26, jerinj@marvell.com:
> > > --- /dev/null
> > > +++ b/content/process/_index.md
> >
> > First question: is the website the best place for this process?
> >
> > Inside the code guides, we have a contributing section,
> > but I'm not sure it is a good fit for the decision process.
> >
> > In the website, you are creating a new page "process".
> > Is it what we want?
> > What about making it a sub-page of "Technical Board"?
>
> Since it is a process, I thought of keeping "process" page.
> No specific opinion on where to add it.
> If not other objections, Then I can add at
> doc/guides/contributing/new_library_policy.rst in DPDK repo.
> Let me know if you think better name or better place to keep the file
>
> >
> > > @@ -0,0 +1,33 @@
> > > ++++
> > > +title = "Process"
> > > +weight = "9"
> > > ++++
> > > +
> > > +## Process for new library approval in principle
> > > +
> > > +### Rational
> >
> > s/Rational/Rationale/
>
> Ack
>
> >
> > > +
> > > +Adding a new library to DPDK codebase with proper RFC and then full patch-sets is
> > > +significant work and getting early approval-in-principle that a library help DPDK contributors
> > > +avoid wasted effort if it is not suitable for various reasons.
> >
> > That's a long sentence we could split.
>
> OK Changing as:
>
> Adding a new library to DPDK codebase with proper RFC and full
> patch-sets is significant work.
>
> Getting early approval-in-principle that a library can help DPDK
> contributors avoid wasted effort
> if it is not suitable for various reasons
>
>
> >
> > > +
> > > +### Process
> > > +
> > > +1. When a contributor would like to add a new library to DPDK code base, the contributor must send
> > > +the following items to DPDK mailing list for TB approval-in-principle.
> >
> > I think we can remove "code base".
>
> Ack
>
> >
> > TB should be explained: Technical Board.
>
> Ack
>
> >
> > > +
> > > +   - Purpose of the library.
> > > +   - Scope of the library.
> >
> > Not sure I understand the difference between Purpose and Scope.
>
> Purpose → The need for the library
> Scope → I meant the work scope associated with it.
>
> I will change "Scope of the library" to,
>
> - Scope of work: Outline the various additional tasks planned for this
> library, such as developing new test applications, adding new drivers,
> and updating existing applications.
>
> >
> > > +   - Any licensing constraints.
> > > +   - Justification for adding to DPDK.
> > > +   - Any other implementations of the same functionality in other libs/products and how this version differs.
> >
> > libs/products -> libraries/projects
>
> Ack
>
> >
> > > +   - Public API specification header file as RFC
> > > +       - Optional and good to have.
> >
> > You mean providing API is optional at this stage?
>
> Yes. I think, TB can request if more clarity is needed as mentioned below.
> "TB may additionally request this collateral if needed to get more
> clarity on scope and purpose"
>
> >
> > > +       - TB may additionally request this collateral if needed to get more clarity on scope and purpose.
> > > +
> > > +2. TB to schedule discussion on this in upcoming TB meeting along with author. Based on the TB
> > > +schedule and/or author availability, TB may need maximum three TB meeting slots.
> >
> > Better to translate the delay into weeks: 5 weeks?
>
> Ack
>
> >
> > > +
> > > +3. Based on mailing list and TB meeting discussions, TB to vote for approval-in-principle and share
> > > +the decision in the mailing list.
> >
> > I think we should say here that it is safe to start working
> > on the implementation after this step,
> > but the patches will need to match usual quality criterias
> > to be effectively accepted.
>
> OK.
>
> I will add the following,
>
> 4.  Once TB approves the library in principle, it is safe to start
> working on its implementation.
> However, the patches will need to meet the usual quality criteria in
> order to be effectively accepted.
>
>
> >
> >
  
Konstantin Ananyev April 10, 2023, 1:42 p.m. UTC | #5
> rom: Jerin Jacob <jerinj at marvell.com>
> 
> Based on TB meeting[1] action item, defining
> the process for new library approval in principle.
> 
> [1]
> https://mails.dpdk.org/archives/dev/2023-January/260035.html
> 
> Signed-off-by: Jerin Jacob <jerinj at marvell.com>
> ---
>  content/process/_index.md | 33 +++++++++++++++++++++++++++++++++
>  1 file changed, 33 insertions(+)
>  create mode 100644 content/process/_index.md
> 
> diff --git a/content/process/_index.md b/content/process/_index.md
> new file mode 100644
> index 0000000..21c2642
> --- /dev/null
> +++ b/content/process/_index.md
> @@ -0,0 +1,33 @@
> ++++
> +title = "Process"
> +weight = "9"
> ++++
> +
> +## Process for new library approval in principle
> +
> +### Rational
> +
> +Adding a new library to DPDK codebase with proper RFC and then full patch-sets is
> +significant work and getting early approval-in-principle that a library help DPDK contributors
> +avoid wasted effort if it is not suitable for various reasons.
> +
> +### Process
> +
> +1. When a contributor would like to add a new library to DPDK code base, the contributor must send
> +the following items to DPDK mailing list for TB approval-in-principle.
> +
> +   - Purpose of the library.
> +   - Scope of the library.

I'd probably extend it to:
Scope and expected usage models of the library.
Apart from that - LGTM.
Acked-by: Konstantin Ananyev <konstantin.v.ananyev@yandex.ru>

> +   - Any licensing constraints.
> +   - Justification for adding to DPDK.
> +   - Any other implementations of the same functionality in other libs/products and how this version differs.
> +   - Public API specification header file as RFC
> +       - Optional and good to have.
> +       - TB may additionally request this collateral if needed to get more clarity on scope and purpose.
> +
> +2. TB to schedule discussion on this in upcoming TB meeting along with author. Based on the TB
> +schedule and/or author availability, TB may need maximum three TB meeting slots.
> +
> +3. Based on mailing list and TB meeting discussions, TB to vote for approval-in-principle and share
> +the decision in the mailing list.
> +
> -- 
> 2.39.1
  
Jerin Jacob April 17, 2023, 1:33 p.m. UTC | #6
On Thu, Mar 30, 2023 at 6:18 PM Jerin Jacob <jerinjacobk@gmail.com> wrote:
>
> On Wed, Mar 15, 2023 at 7:17 PM Jerin Jacob <jerinjacobk@gmail.com> wrote:
> >
> > On Fri, Mar 3, 2023 at 11:55 PM Thomas Monjalon <thomas@monjalon.net> wrote:
> > >
> > > Thanks for formalizing our process.
> >
> > Thanks for the review.
>
> Ping

@Thomas Monjalon  Could you check the below comments and share your
opinion to make forward progress.

>
> >
> > >
> > > 13/02/2023 10:26, jerinj@marvell.com:
> > > > --- /dev/null
> > > > +++ b/content/process/_index.md
> > >
> > > First question: is the website the best place for this process?
> > >
> > > Inside the code guides, we have a contributing section,
> > > but I'm not sure it is a good fit for the decision process.
> > >
> > > In the website, you are creating a new page "process".
> > > Is it what we want?
> > > What about making it a sub-page of "Technical Board"?
> >
> > Since it is a process, I thought of keeping "process" page.
> > No specific opinion on where to add it.
> > If not other objections, Then I can add at
> > doc/guides/contributing/new_library_policy.rst in DPDK repo.
> > Let me know if you think better name or better place to keep the file
> >
> > >
> > > > @@ -0,0 +1,33 @@
> > > > ++++
> > > > +title = "Process"
> > > > +weight = "9"
> > > > ++++
> > > > +
> > > > +## Process for new library approval in principle
> > > > +
> > > > +### Rational
> > >
> > > s/Rational/Rationale/
> >
> > Ack
> >
> > >
> > > > +
> > > > +Adding a new library to DPDK codebase with proper RFC and then full patch-sets is
> > > > +significant work and getting early approval-in-principle that a library help DPDK contributors
> > > > +avoid wasted effort if it is not suitable for various reasons.
> > >
> > > That's a long sentence we could split.
> >
> > OK Changing as:
> >
> > Adding a new library to DPDK codebase with proper RFC and full
> > patch-sets is significant work.
> >
> > Getting early approval-in-principle that a library can help DPDK
> > contributors avoid wasted effort
> > if it is not suitable for various reasons
> >
> >
> > >
> > > > +
> > > > +### Process
> > > > +
> > > > +1. When a contributor would like to add a new library to DPDK code base, the contributor must send
> > > > +the following items to DPDK mailing list for TB approval-in-principle.
> > >
> > > I think we can remove "code base".
> >
> > Ack
> >
> > >
> > > TB should be explained: Technical Board.
> >
> > Ack
> >
> > >
> > > > +
> > > > +   - Purpose of the library.
> > > > +   - Scope of the library.
> > >
> > > Not sure I understand the difference between Purpose and Scope.
> >
> > Purpose → The need for the library
> > Scope → I meant the work scope associated with it.
> >
> > I will change "Scope of the library" to,
> >
> > - Scope of work: Outline the various additional tasks planned for this
> > library, such as developing new test applications, adding new drivers,
> > and updating existing applications.
> >
> > >
> > > > +   - Any licensing constraints.
> > > > +   - Justification for adding to DPDK.
> > > > +   - Any other implementations of the same functionality in other libs/products and how this version differs.
> > >
> > > libs/products -> libraries/projects
> >
> > Ack
> >
> > >
> > > > +   - Public API specification header file as RFC
> > > > +       - Optional and good to have.
> > >
> > > You mean providing API is optional at this stage?
> >
> > Yes. I think, TB can request if more clarity is needed as mentioned below.
> > "TB may additionally request this collateral if needed to get more
> > clarity on scope and purpose"
> >
> > >
> > > > +       - TB may additionally request this collateral if needed to get more clarity on scope and purpose.
> > > > +
> > > > +2. TB to schedule discussion on this in upcoming TB meeting along with author. Based on the TB
> > > > +schedule and/or author availability, TB may need maximum three TB meeting slots.
> > >
> > > Better to translate the delay into weeks: 5 weeks?
> >
> > Ack
> >
> > >
> > > > +
> > > > +3. Based on mailing list and TB meeting discussions, TB to vote for approval-in-principle and share
> > > > +the decision in the mailing list.
> > >
> > > I think we should say here that it is safe to start working
> > > on the implementation after this step,
> > > but the patches will need to match usual quality criterias
> > > to be effectively accepted.
> >
> > OK.
> >
> > I will add the following,
> >
> > 4.  Once TB approves the library in principle, it is safe to start
> > working on its implementation.
> > However, the patches will need to meet the usual quality criteria in
> > order to be effectively accepted.
> >
> >
> > >
> > >
  
Kevin Traynor April 19, 2023, 3:40 p.m. UTC | #7
On 13/02/2023 09:26, jerinj@marvell.com wrote:
> From: Jerin Jacob <jerinj@marvell.com>
> 
> Based on TB meeting[1] action item, defining
> the process for new library approval in principle.
> 
> [1]
> https://mails.dpdk.org/archives/dev/2023-January/260035.html
> 
> Signed-off-by: Jerin Jacob <jerinj@marvell.com>
> ---
>   content/process/_index.md | 33 +++++++++++++++++++++++++++++++++
>   1 file changed, 33 insertions(+)
>   create mode 100644 content/process/_index.md
> 
> diff --git a/content/process/_index.md b/content/process/_index.md
> new file mode 100644
> index 0000000..21c2642
> --- /dev/null
> +++ b/content/process/_index.md
> @@ -0,0 +1,33 @@
> ++++
> +title = "Process"
> +weight = "9"
> ++++
> +
> +## Process for new library approval in principle
> +
> +### Rational
> +
> +Adding a new library to DPDK codebase with proper RFC and then full patch-sets is
> +significant work and getting early approval-in-principle that a library help DPDK contributors
> +avoid wasted effort if it is not suitable for various reasons.
> +
> +### Process
> +
> +1. When a contributor would like to add a new library to DPDK code base, the contributor must send
> +the following items to DPDK mailing list for TB approval-in-principle.
> +
> +   - Purpose of the library.
> +   - Scope of the library.
> +   - Any licensing constraints.
> +   - Justification for adding to DPDK.
> +   - Any other implementations of the same functionality in other libs/products and how this version differs.

- Dependencies

(Need to know if it's introducing new dependencies to the project)

> +   - Public API specification header file as RFC
> +       - Optional and good to have.
> +       - TB may additionally request this collateral if needed to get more clarity on scope and purpose.
> +
> +2. TB to schedule discussion on this in upcoming TB meeting along with author. Based on the TB
> +schedule and/or author availability, TB may need maximum three TB meeting slots.
> +
> +3. Based on mailing list and TB meeting discussions, TB to vote for approval-in-principle and share
> +the decision in the mailing list.
> +

How about having three outcomes:
- Approval in principal
- Not approved
- Further information needed
  
Jerin Jacob April 20, 2023, 10:17 a.m. UTC | #8
On Wed, Apr 19, 2023 at 9:10 PM Kevin Traynor <ktraynor@redhat.com> wrote:
>
> On 13/02/2023 09:26, jerinj@marvell.com wrote:
> > From: Jerin Jacob <jerinj@marvell.com>
> >
> > Based on TB meeting[1] action item, defining
> > the process for new library approval in principle.
> >
> > [1]
> > https://mails.dpdk.org/archives/dev/2023-January/260035.html
> >
> > Signed-off-by: Jerin Jacob <jerinj@marvell.com>
> > ---
> >   content/process/_index.md | 33 +++++++++++++++++++++++++++++++++
> >   1 file changed, 33 insertions(+)
> >   create mode 100644 content/process/_index.md
> >
> > diff --git a/content/process/_index.md b/content/process/_index.md
> > new file mode 100644
> > index 0000000..21c2642
> > --- /dev/null
> > +++ b/content/process/_index.md
> > @@ -0,0 +1,33 @@
> > ++++
> > +title = "Process"
> > +weight = "9"
> > ++++
> > +
> > +## Process for new library approval in principle
> > +
> > +### Rational
> > +
> > +Adding a new library to DPDK codebase with proper RFC and then full patch-sets is
> > +significant work and getting early approval-in-principle that a library help DPDK contributors
> > +avoid wasted effort if it is not suitable for various reasons.
> > +
> > +### Process
> > +
> > +1. When a contributor would like to add a new library to DPDK code base, the contributor must send
> > +the following items to DPDK mailing list for TB approval-in-principle.
> > +
> > +   - Purpose of the library.
> > +   - Scope of the library.
> > +   - Any licensing constraints.
> > +   - Justification for adding to DPDK.
> > +   - Any other implementations of the same functionality in other libs/products and how this version differs.
>
> - Dependencies
>
> (Need to know if it's introducing new dependencies to the project)

Ack. I will add in next version.


>
> > +   - Public API specification header file as RFC
> > +       - Optional and good to have.
> > +       - TB may additionally request this collateral if needed to get more clarity on scope and purpose.
> > +
> > +2. TB to schedule discussion on this in upcoming TB meeting along with author. Based on the TB
> > +schedule and/or author availability, TB may need maximum three TB meeting slots.
> > +
> > +3. Based on mailing list and TB meeting discussions, TB to vote for approval-in-principle and share
> > +the decision in the mailing list.
> > +
>
> How about having three outcomes:
> - Approval in principal
> - Not approved
> - Further information needed

Ack. I will add in next version.

>
  
Thomas Monjalon April 24, 2023, 10:31 p.m. UTC | #9
17/04/2023 15:33, Jerin Jacob:
> On Wed, Mar 15, 2023 at 7:17 PM Jerin Jacob <jerinjacobk@gmail.com> wrote:
> > On Fri, Mar 3, 2023 at 11:55 PM Thomas Monjalon <thomas@monjalon.net> wrote:
> @Thomas Monjalon  Could you check the below comments and share your
> opinion to make forward progress.
> 
> > > 13/02/2023 10:26, jerinj@marvell.com:
> > > > --- /dev/null
> > > > +++ b/content/process/_index.md
> > >
> > > First question: is the website the best place for this process?
> > >
> > > Inside the code guides, we have a contributing section,
> > > but I'm not sure it is a good fit for the decision process.
> > >
> > > In the website, you are creating a new page "process".
> > > Is it what we want?
> > > What about making it a sub-page of "Technical Board"?
> >
> > Since it is a process, I thought of keeping "process" page.
> > No specific opinion on where to add it.
> > If not other objections, Then I can add at
> > doc/guides/contributing/new_library_policy.rst in DPDK repo.
> > Let me know if you think better name or better place to keep the file

Maybe that the contributing guide is the best place.
I'm OK with a new file doc/guides/contributing/new_library.rst
which could document more than the policy in future
(like things to remember and to check).

> > > > +Adding a new library to DPDK codebase with proper RFC and then full patch-sets is
> > > > +significant work and getting early approval-in-principle that a library help DPDK contributors
> > > > +avoid wasted effort if it is not suitable for various reasons.
> > >
> > > That's a long sentence we could split.
> >
> > OK Changing as:
> >
> > Adding a new library to DPDK codebase with proper RFC and full
> > patch-sets is significant work.
> >
> > Getting early approval-in-principle that a library can help DPDK
> > contributors avoid wasted effort
> > if it is not suitable for various reasons

It will be easier if starting with the goal:
In order to save effort, developers will get an early approval in principle,
or early feedback in case the library is not suitable for various reasons.

> >
> >
> > > > +   - Purpose of the library.
> > > > +   - Scope of the library.
> > >
> > > Not sure I understand the difference between Purpose and Scope.
> >
> > Purpose → The need for the library
> > Scope → I meant the work scope associated with it.
> >
> > I will change "Scope of the library" to,
> >
> > - Scope of work: Outline the various additional tasks planned for this
> > library, such as developing new test applications, adding new drivers,
> > and updating existing applications.

OK

> > > > +   - Public API specification header file as RFC
> > > > +       - Optional and good to have.
> > >
> > > You mean providing API is optional at this stage?
> >
> > Yes. I think, TB can request if more clarity is needed as mentioned below.
> > "TB may additionally request this collateral if needed to get more
> > clarity on scope and purpose"

OK

> > > > +3. Based on mailing list and TB meeting discussions, TB to vote for approval-in-principle and share
> > > > +the decision in the mailing list.
> > >
> > > I think we should say here that it is safe to start working
> > > on the implementation after this step,
> > > but the patches will need to match usual quality criterias
> > > to be effectively accepted.
> >
> > OK.
> >
> > I will add the following,
> >
> > 4.  Once TB approves the library in principle, it is safe to start
> > working on its implementation.
> > However, the patches will need to meet the usual quality criteria in
> > order to be effectively accepted.

OK
  

Patch

diff --git a/content/process/_index.md b/content/process/_index.md
new file mode 100644
index 0000000..21c2642
--- /dev/null
+++ b/content/process/_index.md
@@ -0,0 +1,33 @@ 
++++
+title = "Process"
+weight = "9"
++++
+
+## Process for new library approval in principle
+
+### Rational
+
+Adding a new library to DPDK codebase with proper RFC and then full patch-sets is
+significant work and getting early approval-in-principle that a library help DPDK contributors
+avoid wasted effort if it is not suitable for various reasons.
+
+### Process
+
+1. When a contributor would like to add a new library to DPDK code base, the contributor must send
+the following items to DPDK mailing list for TB approval-in-principle.
+
+   - Purpose of the library.
+   - Scope of the library.
+   - Any licensing constraints.
+   - Justification for adding to DPDK.
+   - Any other implementations of the same functionality in other libs/products and how this version differs.
+   - Public API specification header file as RFC
+       - Optional and good to have.
+       - TB may additionally request this collateral if needed to get more clarity on scope and purpose.
+
+2. TB to schedule discussion on this in upcoming TB meeting along with author. Based on the TB
+schedule and/or author availability, TB may need maximum three TB meeting slots.
+
+3. Based on mailing list and TB meeting discussions, TB to vote for approval-in-principle and share
+the decision in the mailing list.
+