README.md

Overview

This is the .NET Core 3.1 package for Fedora.

This package is maintained by the Fedora DotNet SIG (Special Interest Group). You can find out more about the DotNet SIG at:

Please report any issues using bugzilla.

Specification

This package follows package naming and contents suggested by upstream, with one exception. It installs dotnet to /usr/lib64/dotnet (aka %{_libdir}).

Contributing

General Changes

  1. Fork the repo.

  2. Checkout the forked repository.

    • git clone ssh://$USER@pkgs.fedoraproject.org/forks/$USER/rpms/dotnet3.1.git
    • cd dotnet3.1
  3. Make your changes. Don't forget to add a changelog.

  4. Do local builds.

    • fedpkg local
  5. Fix any errors that come up and rebuild until it works locally.

  6. Do builds in koji.

    • fedpkg scratch-build --srpm
  7. Commit the changes to the git repo.

    • git add any new patches
    • git remove any now-unnecessary patches
    • git commit -a
    • git push
  8. Create a pull request with your changes.

  9. Once the tests in the pull-request pass, and reviewers are happy, do a real build.

    • fedpkg build
  10. For non-rawhide releases, file updates using bodhi to ship the just-built package out to users.

    OR

    • fedpkg update

Updating to an new upstream release

  1. Fork the repo.

  2. Checkout the forked repository.

    • git clone ssh://$USER@pkgs.fedoraproject.org/forks/$USER/rpms/dotnet3.1.git
    • cd dotnet3.1
  3. Build the new upstream source tarball. Update the versions in the spec file. Add a changelog. This is generally automated by the following.

    • ./update-release <sdk-version> <runtime-version>

    If this fails because of compiler errors, you might have to figure out a fix, then add the patch in build-dotnet-tarball script rather than the spec file.

  4. Do local builds.

    • fedpkg local
  5. Fix any errors that come up and rebuild until it works locally. Any patches that are needed at this point should be added to the spec file.

  6. Do builds in koji.

    • fedpkg scratch-build --srpm
  7. Upload the source archive to the Fedora look-aside cache.

    • fedpkg new-sources path-to-generated-dotnet-source-tarball.tar.gz
  8. Commit the changes to the git repo.

    • git add any new patches
    • git remove any now-unnecessary patches
    • git commit -a
    • git push
  9. Create a pull request with your changes.

  10. Once the tests in the pull-request pass, and reviewers are happy, do a real build.

    • fedpkg build
  11. For non-rawhide releases, file updates using bodhi to ship the just-built package out to users.

    OR

    • fedpkg update

Testing

This package uses CI tests as defined in tests/test.yml. Creating a pull-request or running a build will fire off tests and flag any issues. We have enabled gating (via gating.yaml) on the tests. That prevents a build that fails any test from being released until the failures are waived.

The tests themselves are contained in this external repository: https://github.com/redhat-developer/dotnet-regular-tests/