Contributing to Splitcells Network

Submitting via Pull Request

  • The authors of the commits have to sign off all commits of the pull request according to the Developer’s Certificate of Origin (DCO). You thereby confirm compliance with the DCO. Help regarding the version control Git can be found here.
  • At least the main author has to sign the last commit with its PGP key. PGP signing helps to ensure source code integrity. A quickstart and further guidelines for PGP can be found here.

API Compatibility

There is no guarantee of backwards compatibility.

All API changes are located and categorized in the Changelog. Breaking changes are tried to be omitted, but there is no guarantee for that. The author of the software use this project as a dependency for their own private code. So there is at least an interest, to keep breaking changes to a minimum. On the other hand, the API is not polished, so there will be breaking changes to the API.

Absolute backward compatibility creates a maintenance burden and if any kind of backward compatibility is required it may be best to just contact this project. We do not break backward compatibility just for fun and would like to support efforts to minimize breaking changes.

You can try to decrease the likelihood of breaking a certain feature, by contributing an appropriate test case/suite for this feature. Regardless of that, keep in mind, that there is no guarantee of backwards compatibility.

TODO: Consider declaring backward compatibility a nice to have feature, instead of an absolute goal. If backward compatibility is not guaranteed, an migration guideline should be provided. Maybe via OpenRewrite for Java code? The reasoning behind this is the maintenance burden without other relevant positive side effects.

Helpful Notes

Browsing Repository in Browser

When browsing the repo in the web some browser addons/extension might help to visualize its content:

Inspirational External Guidelines


  • SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-or-later
  • SPDX-FileCopyrightText: Contributors To The net.splitcells.* Projects

Meta
  1. network
    1. BUILD.html
    2. CHANGELOG.events.html
    3. CHANGELOG.html
    4. CONTRIBUTING.html
    5. DEVELOPMENT.html
    6. LICENSE.html
    7. NOTICE.html
    8. README.html
    9. advertisement.html
    10. blog
      1. articles
        1. 2021-07-07-Creating-The-First-Public-Release.html
        2. 2021-07-20-Pulling-The-Rip-Line.html
        3. 2021-08-10-Developing-Software-At-Gunpoint-Weak-Copy-Left-Versus-Pseudo-Permissive.html
        4. 2021-08-6-Its-over-Its-finnally-over.html
        5. 2021-10-04-Development-Timing-And-Discovery-Based-Networks-Of-Perspectives.html
        6. 2021-10-04-There-Is-Bad-There-Is-Horrible-And-Then-There-is-Error-Handling.html
        7. 2021-11-27-Supporting-Arbitrary-Website-Renderes.html
        8. 2022-02-15-Generic-Allocators-Fourth-Version.html
        9. 2022-05-01-Note-On-Creating-Your-Own-Web-Layout-And-Style.html
        10. 2022-07-18-Writing-tests-after-the-fact.html
        11. 2022-09-23-We-want-to-use-the-software-guys-RIGHT-Right-right-ehhh.html
        12. 2022-10-11-Reprioritization.html
        13. 2024-01-02-the-second-reprioritization.html
        14. 2024-02-04-minimal-apis.html
      2. index.html
    11. community
      1. accessibility
        1. 2023-07-12-make-project-deployable-as-a-single-jar.html
      2. compatibility-portability-and-adaptability
        1. 2021-03-08-create-minimal-java-grammar.html
      3. cooperation-and-symbiosis
        1. 2023-12-30-get-first-real-world-user.html
      4. deployment
        1. maintain-live-server-weekly.html
      5. features
        1. 2022-12-21-1-create-game-based-on-optimization-networks.html
        2. 2023-10-02-provide-scheduling-tool-for-schools-in-general.html
      6. index.html
      7. knowledge-base
        1. pseudo-structured-data
          1. optimization-language.html
          2. optimization-software.html
          3. versioning.html
      8. maintenance
        1. 2023-01-16-2-establish-uniform-code-formatting-for-Java.html
    12. deployment.html
    13. dictionary.html
    14. distro
      1. downloads
        1. index.html
    15. guidelines
      1. backwards-compatibility.html
      2. complexity-management.html
      3. dependency.html
      4. documentation.html
      5. gist
        1. git.html
        2. pgp.html
      6. index.html
      7. infrastructure.html
      8. licensing.html
      9. program-code.html
      10. project.html
      11. source-types.html
      12. standard-usage
        1. bash.html
        2. changelog.html
        3. chezmoi.html
        4. commonmark.html
        5. filesystem.html
        6. html.html
        7. java.html
        8. linking.html
        9. maven.html
        10. python.html
        11. shell.html
        12. xml.html
        13. xslt.html
      13. task-management.html
      14. technology-stack.html
      15. test.html
      16. web-design.html
    16. history
      1. index.html
    17. logo.html
    18. objectives.html
    19. overview.html
    20. refactoring-support.html
    21. status.csv
    22. status.html
    23. tickets
      1. done
        1. 0.html
        2. 77.html
      2. index.html
      3. open
        1. 10.html
        2. 37.html
        3. 71.html
    24. worker
      1. via
        1. java
          1. CHANGELOG.events.html
          2. CHANGELOG.html