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.

131 lines
8.6 KiB

4 years ago
  1. /*
  2. * This program source code file is part of KiCad, a free EDA CAD application.
  3. *
  4. * Copyright (C) 2020-2021 CERN
  5. * Copyright The KiCad Developers, see AUTHORS.txt for contributors.
  6. * @author Wayne Stambaugh <stambaughw@gmail.com>
  7. *
  8. * This program is free software; you can redistribute it and/or
  9. * modify it under the terms of the GNU General Public License
  10. * as published by the Free Software Foundation; either version 2
  11. * of the License, or (at your option) any later version.
  12. *
  13. * This program is distributed in the hope that it will be useful,
  14. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  15. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  16. * GNU General Public License for more details.
  17. *
  18. * You should have received a copy of the GNU General Public License along
  19. * with this program. If not, see <http://www.gnu.org/licenses/>.
  20. */
  21. /**
  22. * This file contains the file format version information for the s-expression schematic
  23. * and symbol library file formats.
  24. *
  25. * @note Comment out the last version and add the new version as a date time stamp in the
  26. * YYYYMMDD format. Comment the changes to the file format for historical purposes.
  27. */
  28. /**
  29. * Symbol library file version.
  30. */
  31. //#define SEXPR_SYMBOL_LIB_FILE_VERSION 20200126 // Initial version. Add alternate pin
  32. // definitions.
  33. //#define SEXPR_SYMBOL_LIB_FILE_VERSION 20200820
  34. //#define SEXPR_SYMBOL_LIB_FILE_VERSION 20200827 // Remove host tag.
  35. //#define SEXPR_SYMBOL_LIB_FILE_VERSION 20200908 // Add include in BOM and on board support.
  36. //#define SEXPR_SYMBOL_LIB_FILE_VERSION 20201005 // Separate ki_fp_filters by spaces.
  37. //#define SEXPR_SYMBOL_LIB_FILE_VERSION 20210619 // Change pin overbar syntax from `~...~` to `~{...}`.
  38. //#define SEXPR_SYMBOL_LIB_FILE_VERSION 20211014 // Arc formatting.
  39. //#define SEXPR_SYMBOL_LIB_FILE_VERSION 20220101 // Class flags.
  40. //#define SEXPR_SYMBOL_LIB_FILE_VERSION 20220102 // Fonts.
  41. //#define SEXPR_SYMBOL_LIB_FILE_VERSION 20220126 // Text boxes.
  42. //#define SEXPR_SYMBOL_LIB_FILE_VERSION 20220328 // Text box start/end -> at/size.
  43. //#define SEXPR_SYMBOL_LIB_FILE_VERSION 20220331 // Text colors.
  44. //#define SEXPR_SYMBOL_LIB_FILE_VERSION 20220914 // Symbol unit display names.
  45. //#define SEXPR_SYMBOL_LIB_FILE_VERSION 20220914 // Don't save property ID
  46. //#define SEXPR_SYMBOL_LIB_FILE_VERSION 20230620 // ki_description -> Description Field
  47. //#define SEXPR_SYMBOL_LIB_FILE_VERSION 20231120 // generator_version; V8 cleanups
  48. //#define SEXPR_SYMBOL_LIB_FILE_VERSION 20240529 // Embedded Files
  49. //#define SEXPR_SYMBOL_LIB_FILE_VERSION 20240819 // Embedded Files - Update hash algorithm to Murmur3
  50. //#define SEXPR_SYMBOL_LIB_FILE_VERSION 20241209 // Private flags for SCH_FIELDs
  51. //#define SEXPR_SYMBOL_LIB_FILE_VERSION 20250318 // ~ no longer means empty text
  52. //#define SEXPR_SYMBOL_LIB_FILE_VERSION 20250324 // Jumper pin groups
  53. //#define SEXPR_SYMBOL_LIB_FILE_VERSION 20250829 // Rounded Rectangles
  54. #define SEXPR_SYMBOL_LIB_FILE_VERSION 20250901 // Stacked Pin notation
  55. /**
  56. * Schematic file version.
  57. */
  58. //#define SEXPR_SCHEMATIC_FILE_VERSION 20200310 // Initial version. Sheet fields were named
  59. // incorrectly (using symbol field vocabulary).
  60. //#define SEXPR_SCHEMATIC_FILE_VERSION 20200506 // Used "page" instead of "paper" for paper
  61. // sizes.
  62. //#define SEXPR_SCHEMATIC_FILE_VERSION 20200512 // Add support for exclude from BOM.
  63. //#define SEXPR_SCHEMATIC_FILE_VERSION 20200602 // Add support for exclude from board.
  64. //#define SEXPR_SCHEMATIC_FILE_VERSION 20200608 // Add support for bus and junction properties.
  65. //#define SEXPR_SCHEMATIC_FILE_VERSION 20200618 // Disallow duplicate field ids.
  66. //#define SEXPR_SCHEMATIC_FILE_VERSION 20200714 // Add alternate pin definitions.
  67. //#define SEXPR_SCHEMATIC_FILE_VERSION 20200820
  68. //#define SEXPR_SCHEMATIC_FILE_VERSION 20200827 // Remove host tag.
  69. //#define SEXPR_SCHEMATIC_FILE_VERSION 20200828 // Add footprint to symbol_instances.
  70. //#define SEXPR_SCHEMATIC_FILE_VERSION 20201015 // Add sheet instance properties.
  71. //#define SEXPR_SCHEMATIC_FILE_VERSION 20210123 // Rename "unconnected" pintype to "no_connect".
  72. //#define SEXPR_SCHEMATIC_FILE_VERSION 20210125 // R/W uuids for pins, labels, wires, etc.
  73. //#define SEXPR_SCHEMATIC_FILE_VERSION 20210126 // Fix bug with writing pin uuids.
  74. //#define SEXPR_SCHEMATIC_FILE_VERSION 20210406 // Add schematic level uuids.
  75. //#define SEXPR_SCHEMATIC_FILE_VERSION 20210606 // Change overbar syntax from `~...~` to `~{...}`.
  76. //#define SEXPR_SCHEMATIC_FILE_VERSION 20210615 // Update overbar syntax in net names.
  77. //#define SEXPR_SCHEMATIC_FILE_VERSION 20210621 // Update overbar syntax in bus aliases.
  78. //#define SEXPR_SCHEMATIC_FILE_VERSION 20211123 // R/W uuids for junctions.
  79. //#define SEXPR_SCHEMATIC_FILE_VERSION 20220101 // Circles, arcs, rects, polys & beziers
  80. //#define SEXPR_SCHEMATIC_FILE_VERSION 20220102 // Dash-dot-dot
  81. //#define SEXPR_SCHEMATIC_FILE_VERSION 20220103 // Label fields
  82. //#define SEXPR_SCHEMATIC_FILE_VERSION 20220104 // Fonts
  83. //#define SEXPR_SCHEMATIC_FILE_VERSION 20220124 // netclass_flag -> directive_label
  84. //#define SEXPR_SCHEMATIC_FILE_VERSION 20220126 // Text boxes
  85. //#define SEXPR_SCHEMATIC_FILE_VERSION 20220328 // Text box start/end -> at/size
  86. //#define SEXPR_SCHEMATIC_FILE_VERSION 20220331 // Text colors
  87. //#define SEXPR_SCHEMATIC_FILE_VERSION 20220404 // Default schematic symbol instance data.
  88. //#define SEXPR_SCHEMATIC_FILE_VERSION 20220622 // New simulation model format.
  89. //#define SEXPR_SCHEMATIC_FILE_VERSION 20220820 // Fix broken default symbol instance data.
  90. //#define SEXPR_SCHEMATIC_FILE_VERSION 20220822 // Hyperlinks in text objects
  91. //#define SEXPR_SCHEMATIC_FILE_VERSION 20220903 // Field name visibility
  92. //#define SEXPR_SCHEMATIC_FILE_VERSION 20220904 // Do not autoplace field option
  93. //#define SEXPR_SCHEMATIC_FILE_VERSION 20220914 // Add support for DNP
  94. //#define SEXPR_SCHEMATIC_FILE_VERSION 20220929 // Don't save property ID
  95. //#define SEXPR_SCHEMATIC_FILE_VERSION 20221002 // Move instance data back into symbol definition.
  96. //#define SEXPR_SCHEMATIC_FILE_VERSION 20221004 // Move instance data back into symbol definition.
  97. //#define SEXPR_SCHEMATIC_FILE_VERSION 20221110 // Move sheet instance data to sheet definition.
  98. //#define SEXPR_SCHEMATIC_FILE_VERSION 20221126 // Remove value and footprint from instance data.
  99. //#define SEXPR_SCHEMATIC_FILE_VERSION 20221206 // Simulation model fields V6 -> V7
  100. //#define SEXPR_SCHEMATIC_FILE_VERSION 20230121 // SCH_MARKER specific sheet path serialisation
  101. //#define SEXPR_SCHEMATIC_FILE_VERSION 20230221 // Modern power symbols (editable value = net)
  102. //#define SEXPR_SCHEMATIC_FILE_VERSION 20230409 // Add exclude_from_sim markup
  103. //#define SEXPR_SCHEMATIC_FILE_VERSION 20230620 // ki_description -> Description Field
  104. //#define SEXPR_SCHEMATIC_FILE_VERSION 20230808 // Move Sim.Enable field to exclude_from_sim attr
  105. //#define SEXPR_SCHEMATIC_FILE_VERSION 20230819 // Allow multiple library symbol inheritance depth.
  106. //#define SEXPR_SCHEMATIC_FILE_VERSION 20231120 // generator_version; V8 cleanups
  107. //#define SEXPR_SCHEMATIC_FILE_VERSION 20240101 // Tables.
  108. //#define SEXPR_SCHEMATIC_FILE_VERSION 20240417 // Rule areas
  109. //#define SEXPR_SCHEMATIC_FILE_VERSION 20240602 // Sheet attributes
  110. //#define SEXPR_SCHEMATIC_FILE_VERSION 20240620 // Embedded Files
  111. //#define SEXPR_SCHEMATIC_FILE_VERSION 20240716 // Multiple netclass assignments
  112. //#define SEXPR_SCHEMATIC_FILE_VERSION 20240812 // Netclass color highlighting
  113. //#define SEXPR_SCHEMATIC_FILE_VERSION 20240819 // Embedded Files - Update hash algorithm to Murmur3
  114. //#define SEXPR_SCHEMATIC_FILE_VERSION 20241004 // Use booleans for 'hide' in symbols
  115. //#define SEXPR_SCHEMATIC_FILE_VERSION 20241209 // Private flags for SCH_FIELDs
  116. //#define SEXPR_SCHEMATIC_FILE_VERSION 20250114 // Full paths for text variable cross references
  117. //#define SEXPR_SCHEMATIC_FILE_VERSION 20250222 // Hatched fills for shapes
  118. //#define SEXPR_SCHEMATIC_FILE_VERSION 20250227 // Support for local power symbols
  119. //#define SEXPR_SCHEMATIC_FILE_VERSION 20250318 // ~ no longer means empty text
  120. //#define SEXPR_SCHEMATIC_FILE_VERSION 20250425 // uuids for tables
  121. //#define SEXPR_SCHEMATIC_FILE_VERSION 20250513 // Groups can have design block lib_id
  122. //#define SEXPR_SCHEMATIC_FILE_VERSION 20250610 // DNP, etc. flags for rule areas
  123. //#define SEXPR_SCHEMATIC_FILE_VERSION 20250827 // Custom body styles
  124. //#define SEXPR_SCHEMATIC_FILE_VERSION 20250829 // Rounded Rectangles
  125. #define SEXPR_SCHEMATIC_FILE_VERSION 20250901 // Stacked Pin notation