You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

80 lines
4.7 KiB

  1. # Stable Release Policy #
  2. This document defines the project requirements that must be satisfied in order to create a new
  3. stable release of the KiCad project. It is designed to be a reference for developers and user's
  4. so that both groups expectations are understood. This document is only to be modified by the
  5. project leader or at the request of the project leader. It should be noted that this policy is
  6. not cast in stone and at any time in the future, should the decision be made by the project at
  7. large that it can be revised to suit the ongoing needs of the project and it's users.
  8. The current release policy is to support the concept of a lightweight stable release. The goal
  9. is to provide regular stable releases of KiCad without the burden of trying to provide long term
  10. support of a full stable release branch. Therefore, once a new release is created, the only
  11. patches that will be made to the stable release branch will be for bugs that cause KiCad to crash
  12. or possible corruption and/or loss of data. No other changes from the current development branch
  13. will be backported to the last stable release by the project.
  14. [TOC]
  15. # Stable Release Interval # {#stable_release_interval}
  16. The criteria required for new stable releases is based on the developers decision that enough
  17. new features and/or improvements have been made to the current development branch to justify a
  18. new stable release. This decision is completely discretionary and can be proposed at any time
  19. by any developer on the KiCad developers mailing list. Once a request for a new stable release
  20. is made, a consensus must be reached by the primary developers to proceed with the release with
  21. the final decision and announcement being made by the project leader.
  22. # Feature Freeze # {#feature_freeze}
  23. Once the announcement has been made that a new stable release is in effect, the current
  24. development branch is frozen. No new features or potentially disruptive core code changes can
  25. be committed with out approval of the primary developers and/or the project leader.
  26. # Bug Fixing # {#bug_fixing}
  27. After the development branch has been frozen, work will continue to fix bugs reported against
  28. the development branch. Bugs will be prioritized based on their severity. All bugs that cause
  29. KiCad to crash or cause loss and/or corruption of data must be fixed. All other bugs must be
  30. evaluated to see if they fit into the scope of the stable release. All bugs that fit into the
  31. scope of the stable release will be tagged and must be fixed. All other bugs will be tagged for
  32. the next stable release and fixed when it is convenient. Once the stable release is officially
  33. announced, the bugs tagged as "Fix Committed" that are relevant to the stable release will be
  34. changed to "Fix Released".
  35. # User Documentation # {#user_docs}
  36. The user documentation will be updated to reflect the current changes in the code. This includes
  37. all new features, any behavioral changes to existing features, and all screen shots as required.
  38. Completion of the English version of the user documentation is minimum that is required for
  39. release. Foreign language translations can be released at any time as the become available.
  40. # Stable Release Series Branch # {#stable_branch}
  41. Once the primary developers decide that the stable release criteria has been met, a new series
  42. branch will be created from the current product branch on Launchpad. At this time the freeze
  43. will be removed from the product branch and normal development can resume. The stable release
  44. version will be incremented from the previous stable release and tagged in the stable release
  45. branch build configuration.
  46. # System Installers # {#system_installers}
  47. To proved the best user experience for platforms that do not have package managers, full system
  48. installers will be provided. Currently this only pertains to Windows and OSX. The full system
  49. installers will include all KiCad binary files, all binary library dependencies, user
  50. documentation, component libraries, 3D model libraries, demo project files, and project template
  51. files. Optionally, the footprint libraries can be included for users who prefer not us use the
  52. GitHub plugin.
  53. # Source Archives # {#source_archives}
  54. To provide a convenient method for system packagers to build KiCad from known stable sources,
  55. source archives in the most common formats along with the resulting md5sum checksum will be
  56. added to either the KiCad developer's site on Launchpad or the main website at www.kicad-pcb.org.
  57. # Stable Release Announcement # {#announcement}
  58. Once all of the above tasks have been completed, the project leader will post an announcement on
  59. the developers mailing list and the Launchpad site. This announcement should include a list of
  60. new features and improvements made since the previous stable release.