Git Product home page Git Product logo

guidelines's People

Contributors

andreashaerter avatar meissnerim avatar niriain avatar rolandriester avatar tatjanagoebes avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

Forkers

florianmoss

guidelines's Issues

Repositories: Guideline for .gitattributes

We often provide smaller tools and plugins where automatically release-tarballs are more then enough. When creating a release, Github creates a zip and a tar archive (the so called zipball and tarball), you can also get them via specific URLs:

https://api.github.com/repos/<user|org>/<repo>/tarball
https://api.github.com/repos/<user|org>/<repo>/zipball
https://api.github.com/repos/<user|org>/<repo>/tarball/<tag>
https://api.github.com/repos/<user|org>/<repo>/zipball/<tag>

However, these archives contain all files found in the projects repository. To exclude repository content (e.g. documentation, .git-files and so one) from being added to these archives, export-ignore can be used as the release feature pays attention to .gitattributes

Therefore, a useful template for .gitattributes would be as useful als it is for .gitignore

Guideline about licensing, copyright information and updates in this regard

Minimum content:

Improve REUSE recommendations

Our current approach to introduce REUSE is

  1. .reuse/dep5 with Files: * stanza
  2. Use header comment in files with a high profitability to be used stand-alone, e.g. script files
  3. The header must state the same license as the default or an explicit entry in .reuse/dep5

The main reasoning for this was (after discussions):

  1. Having a compliant default is a good machine readable staring point and far better than simple LICENSE files + README.md entry, especially as preparation for multiple licenses
  2. the reuse lint tool complains with a deprecation warning even if the license in .reuse/dep5 and the inline header is exactly the same.

We like the default as it prevents the need to put license information for very few, insignificant files and tooling directories while still making it technically easy to determine the license plus putting license headers in nearly every file in the future.

However, our .reuse/dep5 with Files: * stanza-default seems to be strongly discouraged (see fsfe/reuse-docs#117, especially one comment). We therefore should discuss how to proceed and how to adapt licensing-how-to-apply.md.

Additionally, the Gem used by GitHub and others is still not able to detect the license of our repositories automatically because of this. Symlinks might be the solution (but this is a good example why Files: * is so pleasant... it is clumsy to have a LICENSE file because of licensee-Gem issues even if a LICENSE.license is not needed as REUSE ignores a COPYING or LICENSE file in the root).

Licensee even does not support symlinks (while reuse lint does), so one could only put a LICENSE file in the project root and create a Symlink to it in the LICENSES directory to prevent duplication.

Licensing, How to apply: Add notes about `SPDX-File` and `SPDX-Snippet`

REUSE is using SPDX tags for the inline comments and .license files. It is good to know how they work. A few examples should be added to our guide, especially handling:

Guideline for shell scripting

We have tons of best practices (beside "don't use a shell script :-D") which should be converted into a public visible guideline document.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.