F4 GitHub Organziations

fcrepo4

This organization is the home of the core Fedora4 API, ontologies, test compatibility kits, and reference implementation.

fcrepo4-exts

This organization is the home of non-core, extension Fedora4 projects, utilities, and ontologies that are actively maintained.

fcrepo4-labs

This organization is the home of experimental projects that are related to Fedora4.

fcrepo-archive

This organization is the home of Fedora4 modules that are no longer supported.

Principles

  1. Core Fedora capabilities/projects are the set of components that call fcrepo4 home.
    1. Repository CRUD: LDP
    2. Batch Atomic Operations
    3. Versioning: Memento ( Unable to locate Jira server for this macro. It may be due to Application Link configuration. )
    4. Authorization: WebAC (Design - WebAccessControl Authorization Delegate)
    5. Fixity
  2. No dependencies from fcrepo4 projects to fcrepo4-exts or fcrepo4-labs
  3. Dependencies from fcrepo4-exts or fcrepo4-labs on fcrepo4 are limited to kernel interfaces
  4. For fcrepo4-exts projects, package are org.fcrepo.<something-relevant>
  5. Each core capability area above should have its own separate ontologies, as appropriate
  6. TCKs for the Fedora core capabilities

Guidelines for fcrepo4-exts projects

Requirements

  1. The module is used by 3 or more installations
  2. The module has two or more formally publicized "owners" (documented in README)
  3. The module has an integration-test framework in-place
  4. The module has a unit-test framework in-place
  5. The module should contain documentation in GitHub release notes of the specific version of Fedora 4 its integration tests build against, when applicable

Considerations

For Java projects that are intended to be shared or used via Maven machinery, it is recommended that:

  1. The module be released to Maven Central
  2. The module has a parent pom of fcrepo-parent/pom.xml
  • No labels

7 Comments

  1. +1 to requirements 1-5

    +0 to requirement 6 – it could be optional.

  2. +1 to requirements 1-5

    -1 to requirement 6, based on the fcrepo-camel example this should be optional (but could be recommended).

  3. +1 to 1-4, with the number of installations at a minimum of three.

    -- 1 to 5-6.

  4. Unknown User (acoburn)

    +1 to 1-4

    -1 to 5 and 6 (which could be encouraged, but not required)

  5. Becoming an fcrepo4-exts project

    Section has been updated based on comments.

     

  6. "The module has two or more formally publicized "owners""

    Can we say something about contact info here? Like "…publicized "owners" with publicly-available contact information."

    1. What we included a "Maintainers" section in the README? We do this in Islandora: https://github.com/islandora/islandora/#maintainerssponsors