Skip to content

Commit

Permalink
Switch to SHA256 for detecting changes to files
Browse files Browse the repository at this point in the history
  • Loading branch information
sebhub committed Oct 19, 2019
1 parent 74e8c61 commit 804153c
Show file tree
Hide file tree
Showing 68 changed files with 151 additions and 133 deletions.
4 changes: 4 additions & 0 deletions CHANGELOG.md
@@ -1,6 +1,10 @@
# 2.0 (unreleased)

- Dropped support for Python 3.5.
- **BREAKING:** Switched to SHA256 for tracking changes to files. Use
`doorstop review all` followed by `doorstop clear all` to update an existing
project. Warning: this marks all items as reviewed and clears all suspect
links.

# 1.6 (2019-08-10)

Expand Down
3 changes: 2 additions & 1 deletion docs/reference/item.md
Expand Up @@ -133,7 +133,8 @@ values of extended attributes can be added to the fingerprint through a
The value of the *reviewed* attribute indicates the fingerprint of the item
when it was last reviewed. "null" if the item has not yet been reviewed.
Doorstop will use this to detect unreviewed changes to an item by comparing the
current item fingerprint to the last reviewed fingerprint.
current item fingerprint to the last reviewed fingerprint. The fingerprint
hash algorithm is SHA256 stored in URL-safe Base64 encoding.

You should not calculate this value manually, use `doorstop review`.

Expand Down
14 changes: 7 additions & 7 deletions doorstop/cli/tests/docs/HLT001.yml
Expand Up @@ -3,14 +3,14 @@ derived: false
header: ''
level: 1.1
links:
- TUT001: 63207cc0be9a957dd43f20eb88b20170
- TUT002: 3a4234ca2b58212fa1bd6052b113daa7
- TUT004: 81b4d9e74572f0a91b46c924de931c36
- TUT008: 2dbd9266fa287cc3f765c2a81aa57a91
- TUT017: b77c84ce6fd12c137a11197baa3064e9
- TUT019: 85c96dfa447540b5433a67f1e1114c61
- TUT001: UdIKq3W6wFQh-0c_VH39gf_h_ylXOAhobQ-ULSgiH-Y=
- TUT002: yJH1DjAtUch02wejY1yhbglJskFa9mf2VgusvEF03vU=
- TUT004: I36aGjE75oB5vbPvUlM_gXuyLh_56CfVmYuAcEzsa6U=
- TUT008: z3Xivwhj4Ii69-OvVs7lj1qt4owdivQLvMi7wMGxL6Y=
- TUT017: JvHYGJBTVYk--HFVudf5PMOvTHZuikZf5trmX1TKikE=
- TUT019: Wg_m37OqgVhFw9YvjZkxv9mFdrg04ZIy8u1NLg4Pvh0=
normative: true
ref: test_tutorial_section_1
reviewed: 2e4702d52e9ab2fd24b9d22270bcc4dc
reviewed: LuZMejVVbNoVI-fZff7mrEqiORKLfSvW0IYGX1CTafA=
text: |
Tutorial Section 1.0:
6 changes: 3 additions & 3 deletions doorstop/cli/tests/docs/HLT002.yml
Expand Up @@ -3,10 +3,10 @@ derived: false
header: ''
level: 1.2
links:
- TUT009: 49abe5f194cc21ad59a12973f320e93e
- TUT010: 8617d77ba54ccf850c3e590dd6fa0222
- TUT009: A_rTJjsI_7B9QRUOWaqSBxquBdz1t9h_HwNn3cQXtQQ=
- TUT010: zgtZEugq0wM6J06MTFhb_kGQtUdus1Qdi_HTc-ZiReI=
normative: true
ref: test_tutorial_section_2
reviewed: ff6c3f091c35d597121a1466bf157b7a
reviewed: zXSVvXJUdWg5mMc78SyoUg7iFagz82_GKz1uDSK0tAA=
text: |
Tutorial Section 2.0:
8 changes: 4 additions & 4 deletions doorstop/cli/tests/docs/HLT003.yml
Expand Up @@ -3,11 +3,11 @@ derived: false
header: ''
level: 1.3
links:
- TUT012: 000c0e9c39a92c6eb93902e4ea972740
- TUT013: d9ecaf05f4eba86402b07d0ef10ff8f6
- TUT016: 1e9933f973dc2d1ebbc101b414046fa1
- TUT012: VkQ9YnIdcmX4-9b9WpMwi2Ghqd4Tg5qMn8pqrGGmXas=
- TUT013: 7lqiX5VtcvclAHuCzl7mqVr17Xu1PEQNuquw80DNDSQ=
- TUT016: ZA0D9hs_RcGQvBR3EjlVdAYRp1lonVCBBq29AVU-vPE=
normative: true
ref: test_tutorial_section_3
reviewed: b69dc79fcd47cc1fca2cdea7f8c1ac1e
reviewed: aME0_SIctRosiaSzFJLZSugR1lZfDkgnSXyPiMUQd-A=
text: |
Tutorial Section 3.0:
4 changes: 2 additions & 2 deletions doorstop/cli/tests/docs/HLT004.yml
Expand Up @@ -3,9 +3,9 @@ derived: false
header: ''
level: 1.4
links:
- TUT015: 208dbf9e5350223aa2c261411b9075ea
- TUT015: ClzVApdcWd-VQIuz7XN_SRyRvlFUVD9A6XONsF9ZNT4=
normative: true
ref: test_tutorial_section_4
reviewed: 05cc1129d5beef4a69808529b68147f0
reviewed: uqurqigZ0qa92QvdApGpiaV4htLBKHLOZT0xoOOe6-8=
text: |
Tutorial Section 4.0:
2 changes: 1 addition & 1 deletion doorstop/cli/tests/docs/HLT005.yml
Expand Up @@ -5,6 +5,6 @@ level: 1.0
links: []
normative: false
ref: ''
reviewed: 3ff43d3e1c49802b6d00018f66fbb53d
reviewed: b15hY4KHGmxUEWzRPFSCWv5ToVl0lbsdIgTv8O5xVA0=
text: |
Automated Tests
5 changes: 3 additions & 2 deletions doorstop/cli/tests/files/A001.txt
@@ -1,10 +1,11 @@
active: true
derived: false
header: ''
level: 1.0
links:
- B001: 4f8f0ce49c56474c07bb7d3aebee81fd
- B001: xaO5x-ZxaHLy2knS_DD73aXtVRV3hxqCmJInnCh2PZY=
normative: true
ref: ''
reviewed: e805f473655509bd0b1d0bd167d5e9b3
reviewed: JEp17AY60onnnNJH7zLSYmM5O2d3heNVB96iEGFkX48=
text: |
A001
5 changes: 3 additions & 2 deletions doorstop/cli/tests/files/A002.txt
@@ -1,10 +1,11 @@
active: true
derived: false
header: ''
level: 1.1
links:
- A002: 23e02cca707fc2db356546bf9b09c664
- A002: xwOeM6ISel7jEK2qfGlKduG-u5zjhv0uybQrC61UbDQ=
normative: true
ref: ''
reviewed: 1e9d4868c614ccb2c73f06145df5e21b
reviewed: 4jsCT-Eq-WsIKbMoEV-tzo4AJ_I2_Bs0laFUehmJETg=
text: |
A002
5 changes: 3 additions & 2 deletions doorstop/cli/tests/files/B001.txt
@@ -1,10 +1,11 @@
active: true
derived: false
header: ''
level: 1.0
links:
- B002: 26f9500c1a290315dbfffade4a4a3eba
- B002: gDTkEwZSPXcHS-l4h25uOvA8kPtZ6kF0srVr6KbD2Zo=
normative: true
ref: ''
reviewed: e393ce229853b50eb4f8b4e27457bb22
reviewed: GZSV6eLVc5kAfY6bwMSAT1oTHouyBLJHLOUDJu5E-J8=
text: |
B001
7 changes: 4 additions & 3 deletions doorstop/cli/tests/files/B002.txt
@@ -1,11 +1,12 @@
active: true
derived: false
header: ''
level: 1.1
links:
- A001: a5e44cddfa203a4e3f8ae9d93e28bda7
- A002: 23e02cca707fc2db356546bf9b09c664
- A001: tVIIYUpx8ypqwRceNq8fPnXtMRBkuVJEcJHF-0oVya8=
- A002: xwOeM6ISel7jEK2qfGlKduG-u5zjhv0uybQrC61UbDQ=
normative: true
ref: ''
reviewed: b151d8073a4562ca541c64968e8efa6d
reviewed: 64iJUOaTCc2Ufto1KD7_B5Rj2mthKNbuElJvZI52n9k=
text: |
B002
7 changes: 4 additions & 3 deletions doorstop/cli/tests/files/C001.txt
@@ -1,11 +1,12 @@
active: true
derived: false
header: ''
level: 1.0
links:
- C002: deadbeefdeadbeefdeadbeefdeadbeef
- C003: deadbeefdeadbeefdeadbeefdeadbeef
- C002: ThisIsTheFingerprintOfASuspectLinkABCDEFGHI=
- C003: ThisIsTheFingerprintOfASuspectLinkABCDEFGHI=
normative: true
ref: ''
reviewed: 918294db8654e4443cc4b221a51d618b
reviewed: czv54TPcUklkenTWIS96RvaEKb_vYY9wKgwD5TJcKsA=
text: |
C001
3 changes: 2 additions & 1 deletion doorstop/cli/tests/files/C002.txt
@@ -1,9 +1,10 @@
active: true
derived: false
header: ''
level: 1.1
links: []
normative: true
ref: ''
reviewed: d48826bf3f51ec9d79f9ef501e397ccf
reviewed: d05UOdrvVooFi8X_3XHRFPrHG3d5DE5yH0sc1dIaZ64=
text: |
C002
3 changes: 2 additions & 1 deletion doorstop/cli/tests/files/C003.txt
@@ -1,9 +1,10 @@
active: true
derived: false
header: ''
level: 1.2
links: []
normative: true
ref: ''
reviewed: 486c91baf12e1e0190e7c37b0ef9d526
reviewed: QERl1YZnr5RYggS6Pkf5Sibzh9FJ0CfDGGFe6lDpY5U=
text: |
C003
4 changes: 2 additions & 2 deletions doorstop/core/tests/docs/LLT001.yml
Expand Up @@ -3,9 +3,9 @@ derived: false
header: ''
level: 1.1
links:
- REQ003: 1f33605bbc5d1a39c9a6441b91389e88
- REQ003: 9TcFUzsQWUHhoh5wsqnhL7VRtSqMaIhrCXg7mfIkxKM=
normative: true
ref: Verify an item can be added to a document.
reviewed: c87f21066512a269d35f83944607893c
reviewed: 3cWsswJTpxB9WHng7lXLeM4jQW6zbPTZtt1vL1mZFMI=
text: |
Test adding items:
4 changes: 2 additions & 2 deletions doorstop/core/tests/docs/LLT002.yml
Expand Up @@ -3,9 +3,9 @@ derived: false
header: ''
level: 1.2
links:
- REQ004: 94f4db8d1a50ab62ee0edec1e28c0afb
- REQ004: T2tSkn27DO3GXvagwOgNNLvhW4FPNg9gyLfru-l9hWQ=
normative: true
ref: Verify Markdown can be published from a document.
reviewed: ac1b90d6b6404a0c4b6f512bf8c4644a
reviewed: ly_FQiijvn6dMCKTGW5gzw3zovTXRmB5g_WFv39j0nA=
text: |
Test publishing Markdown:
4 changes: 2 additions & 2 deletions doorstop/core/tests/docs/LLT003.yml
Expand Up @@ -3,9 +3,9 @@ derived: false
header: ''
level: 1.3
links:
- REQ007: 1b2201126b830e4ea9f57c77dbd6a38e
- REQ007: N4qTPlDi0z6kClsYAWlTsYPYWPylyr5KscMlxyYlzbA=
normative: true
ref: Verify text can be published from a document.
reviewed: bbe335058ebdee8d5d3740ae8e601120
reviewed: nZXA_TD_MfctNFPxpkuwjeucmfGh3588iDeLsaExROA=
text: |
Test publishing text:
4 changes: 2 additions & 2 deletions doorstop/core/tests/docs/LLT004.yml
Expand Up @@ -3,9 +3,9 @@ derived: false
header: ''
level: 1.4
links:
- REQ008: 0bcefd81b9d92145690ac5ab7d6e2ca0
- REQ008: Y9QwGNJVzJSHbW9sHzBqswqAtF5v8OJup8HEH7E2qHU=
normative: true
ref: Verify the items in a document can be accessed.
reviewed: a97970c0bc91f349e54211023345a67a
reviewed: vD17pIGCoBclRlwG71wnHHt_Ng1jkCo4uq2h6hOYBWw=
text: |
Test getting items from a document:
4 changes: 2 additions & 2 deletions doorstop/core/tests/docs/LLT005.yml
Expand Up @@ -3,9 +3,9 @@ derived: false
header: ''
level: 1.5
links:
- REQ001: 37a3faae380b4e466aaf18c31f2184c0
- REQ001: avwblqPimDJ2OgTrRCXxRPN8FQhUBWqPIXm7kSR95C4=
normative: true
ref: Verify an item's reference can also be a filename.
reviewed: 3d708f9247d638ef3580312c99a873e7
reviewed: G96xqQH4CjV1i3ZwiWtUKbbDisOK28E7ik8aItcy07A=
text: |
Test referencing an external file by name:
14 changes: 7 additions & 7 deletions doorstop/core/tests/docs/LLT007.yml
Expand Up @@ -3,15 +3,15 @@ derived: false
header: ''
level: 2.1
links:
- REQ009: 6c23761dd907de37c62614155cca22cc
- REQ011: e58a22974b6610a0698866fce6c1ad14
- REQ012: 456cf6a9040c790588ca8c78e1ed350f
- REQ013: 3dce36a426be6e9901feac6de75c1d71
- REQ014: 634e782d9c7ec27a279e4fd303afe05f
- REQ015: 5057c48dd88b53fe5e639e1e33126714
- REQ009: uuTiyRLtSfUnneuE71WqML8D_X8YtiKj02Ehlb8b2bg=
- REQ011: 3N-eJ3o7Va-Vwx8F4VCE1eYw4WCwK1DleYM95RfsaEQ=
- REQ012: aDEVUTCV4yqDY99sfjch7otkgidiyG0We8tGSTWD9Hs=
- REQ013: ch1ilz7OJnQhSuKbpcN81Z0ml2z6lBTQqV6rWanW_ZA=
- REQ014: r_QHE6crBVcD_cEeXXtztbaeU7PoTnvpQ6uSpR3M63w=
- REQ015: DxAA240XYSKeWMmaKCR3OymyabO52_T7dQGRVfF7yKw=
normative: true
ref: ''
reviewed: e865230b7f344df2b0122ca90e278fce
reviewed: yFFQ523SPsaP7IgGKaQ1f-guLTZ0-8msYsaqK-zuxAI=
text: |
These checks ensure the version control system (VCS) meets the needs of
requirements management:
Expand Down
4 changes: 2 additions & 2 deletions doorstop/core/tests/docs/LLT008.yml
Expand Up @@ -3,10 +3,10 @@ derived: false
header: ''
level: 2.2
links:
- REQ015: 5057c48dd88b53fe5e639e1e33126714
- REQ015: DxAA240XYSKeWMmaKCR3OymyabO52_T7dQGRVfF7yKw=
normative: true
ref: ''
reviewed: 05bcc369bcf9b1869049674546b41dba
reviewed: 5HmM-ABqS824omdludZzfX5gPwIH2gEq4l3EYf9wXkY=
text: |
These checks ensure the Python package is distributed properly:
Expand Down
2 changes: 1 addition & 1 deletion doorstop/core/tests/docs/LLT009.yml
Expand Up @@ -5,6 +5,6 @@ level: 1.0
links: []
normative: false
ref: ''
reviewed: 34bc7c87d78400ef325041b4dd2e6fa2
reviewed: kSJLszT3Mu5O-OdoMVqiniUEc1w4voBPiZZJ4bmfBBs=
text: |
Automated Tests
2 changes: 1 addition & 1 deletion doorstop/core/tests/docs/LLT010.yml
Expand Up @@ -5,6 +5,6 @@ level: 2.0
links: []
normative: false
ref: ''
reviewed: 6db517f3e8cf9e8f861e9c53f93019ff
reviewed: vAqWkWng0CMNOxNTMWZGUC-l3YfBOIpl1dIxJdUh3wQ=
text: |
Inspection Tests
2 changes: 1 addition & 1 deletion doorstop/core/tests/files/REQ002.yml
Expand Up @@ -6,7 +6,7 @@ level: 2.1
links: []
normative: true
ref: ''
reviewed: 50ae164a198e612dee696cc80942dc29
reviewed: 1PvBLmy0xmdK_zLKrLu1au0wlIw_zsD6A8Oc5F4zWxU=
text: |
Hello, world!
Expand Down
2 changes: 1 addition & 1 deletion doorstop/core/tests/files/exported.csv
Expand Up @@ -28,7 +28,7 @@ Reviewer --> (Review Item)
System --> (Suspect Changes)
System --> (Integrity)
@enduml
```",,,True,False,Plantuml,True,50ae164a198e612dee696cc80942dc29
```",,,True,False,Plantuml,True,1PvBLmy0xmdK_zLKrLu1au0wlIw_zsD6A8Oc5F4zWxU=
REQ2-001,2.1,"Hello, world!

Test Math Expressions in Latex Style:
Expand Down
2 changes: 1 addition & 1 deletion doorstop/core/tests/files/exported.tsv
Expand Up @@ -28,7 +28,7 @@ Reviewer --> (Review Item)
System --> (Suspect Changes)
System --> (Integrity)
@enduml
```" True False Plantuml True 50ae164a198e612dee696cc80942dc29
```" True False Plantuml True 1PvBLmy0xmdK_zLKrLu1au0wlIw_zsD6A8Oc5F4zWxU=
REQ2-001 2.1 "Hello, world!

Test Math Expressions in Latex Style:
Expand Down
Binary file modified doorstop/core/tests/files/exported.xlsx
Binary file not shown.
2 changes: 1 addition & 1 deletion doorstop/core/tests/files/exported.yml
Expand Up @@ -53,7 +53,7 @@ REQ002:
links: []
normative: true
ref: ''
reviewed: 50ae164a198e612dee696cc80942dc29
reviewed: 1PvBLmy0xmdK_zLKrLu1au0wlIw_zsD6A8Oc5F4zWxU=
text: |
Hello, world!
Expand Down
4 changes: 2 additions & 2 deletions doorstop/core/tests/test_importer.py
Expand Up @@ -170,7 +170,7 @@ def test_file_csv(self, mock_itemize):
False,
'Plantuml',
True,
'50ae164a198e612dee696cc80942dc29',
'1PvBLmy0xmdK_zLKrLu1au0wlIw_zsD6A8Oc5F4zWxU=',
],
[
'REQ2-001',
Expand Down Expand Up @@ -331,7 +331,7 @@ def test_file_xlsx(self, mock_itemize):
False,
'Plantuml',
True,
'50ae164a198e612dee696cc80942dc29',
'1PvBLmy0xmdK_zLKrLu1au0wlIw_zsD6A8Oc5F4zWxU=',
],
[
'REQ2-001',
Expand Down

0 comments on commit 804153c

Please sign in to comment.