https://github.com/SoftwareHeritage/swh-model

sort by:
Revision Author Date Message Commit Date
2aca1be add .tox to gitignore 18 October 2018, 13:24:52 UTC
0250497 add a simple tox file 18 October 2018, 13:23:22 UTC
b6c1ca3 tests: rename TestedMerkleLeaf and TestedMerkleNode classes so pytest does not think they are test classes. 18 October 2018, 13:23:00 UTC
0c95a59 tests: assertEquals -> assertEqual to clear deprecation warnings. 18 October 2018, 13:03:30 UTC
b210fdd tests: use pytest instead of nose related to T1261 18 October 2018, 12:57:43 UTC
7af882a Rename test methods to test_ to allow py.test collection Summary: Related to T1261 Test Plan: before and after: 138 tests passed (2 skipped) Reviewers: #reviewers! Differential Revision: https://forge.softwareheritage.org/D520 12 October 2018, 09:47:31 UTC
866548c tests: move dir-folder test data back here and ensure it is included in the source package. Related to T1265. 12 October 2018, 09:38:27 UTC
1032c73 setup: rename extra_requirements as blake2_requirements to prevent confusion with setup()'s "extras_require" argument. 08 October 2018, 10:09:08 UTC
01440f7 docs: add a basic README file 08 October 2018, 10:04:52 UTC
607e3a1 add build/ to the gitignore file 08 October 2018, 10:04:52 UTC
e9dd7ba setup: prepare for pypi upload related to T1242 08 October 2018, 10:04:52 UTC
8473446 Add requirements-test.txt 05 October 2018, 10:53:51 UTC
6d86b69 doc: use inkscape instead of dia to generate image files it makes life a bit easier for CI (less dependencies). 03 October 2018, 12:20:55 UTC
92e240e bin: Migrate swh-hashtree to swh-model This is a temporary move. This will eventually converge with swh.model.cli as the directory hashing ability overlaps. What's missing in the cli for now is the ability to filter patterns. This is mostly used to compute hashes on tree coming from multiple dvcs. This imposes the need to be able to filter pattern like .svn, .hg, etc... 03 October 2018, 09:12:22 UTC
6f5d74b docs: make sure images are built/cleaned on sphinx targets Related D454 03 October 2018, 09:07:43 UTC
94c1a97 docs: add title and brief module description 01 October 2018, 13:47:47 UTC
ac3b0f8 swh.model.hashutil: Remove extra length parameter This aligns the new api with the old one. 27 September 2018, 15:44:01 UTC
0119f4c swh.model: Do multiple reads with a fixed chunk size 27 September 2018, 12:28:05 UTC
3487025 hashutil: Migrate towards MultiHash api 21 September 2018, 13:32:55 UTC
eb338cd hashutil: Clarify further the module dostring 17 September 2018, 09:41:17 UTC
8c26ddb hashutil: Update module and functions docstrings 17 September 2018, 09:31:22 UTC
5676bd6 hashutil: Remove unused variables 17 September 2018, 09:29:43 UTC
50e583f MultiHash.from_path: Use the length coming from os.path 17 September 2018, 09:29:43 UTC
7bfb0a8 swh.model.hashutil: Reuse hash_path's old definition Remove unused track_length parameter 17 September 2018, 09:29:43 UTC
4959a45 swh.model.hashutil: Mark hash_* function as deprecated And revert to their original behavior (returning only digest as bytes) 14 September 2018, 22:48:52 UTC
9084f96 hashutil: Improve MultiHash class from_* to compute hashes This allows calls like: - MultiHash.from_file(file_object).digest() - MultiHash.from_path(b'foo').hexdigest() - MultiHash.from_data(b'foo').bytehexdigest() 14 September 2018, 22:37:29 UTC
836198c swh.model.hashutil: Remove unnecessary endpoints 14 September 2018, 21:49:36 UTC
3b9e8e9 hashutil: Set the hash_names defaulting to swh default hash algo 14 September 2018, 21:32:31 UTC
0e71ebf hashutil: Add MultiHash to compute hashes of content in 1 roundtrip This is the first step to improve the hashutil module according to "the" plan [1]. In this regards, the hashutil exposes the same function as before. Internally though, they now uses a MultiHash instance. Related D410 [1] D410#7952 14 September 2018, 18:07:05 UTC
7f885ed swh.model.hashutil: Open hash_stream endpoint Related T421 13 September 2018, 23:42:22 UTC
5ca5dce hashutil: Allow option to require hexdigest instead of binary digest Related T421 13 September 2018, 23:41:56 UTC
2034fed swh.model.identifiers: Open metadata in persistent_identifier method Related T1152 20 July 2018, 12:57:17 UTC
ad2c349 refactor CLI tests to avoid duplicate assertion pairs 12 July 2018, 14:22:36 UTC
07208f0 swh-identify: follow symlinks for CLI arguments (by default) ... and add an option to explicitly not follow them, if needed. Closes T1135 12 July 2018, 14:19:11 UTC
abffb22 cli.py: prefer os.fsdecode() over manual fiddling with locale.getpref... 12 July 2018, 14:01:47 UTC
89f8d11 swh-identify: add support for passing multiple CLI arguments Closes T1134 12 July 2018, 13:32:07 UTC
f539890 swh-identify: show filename in output (by default) with explicit option to hide it Closes T1133 12 July 2018, 13:00:24 UTC
edcd365 identifiers: Improve persistent identifiers representation This commit changes the swh pids representation returned by the parse_persistent_identifier function from a dict to a named tuple. Also, the 'object_type' attribute of that named tuple now contains a full name instead of an abbreviated one. Closes T1112 Closes T1125 29 June 2018, 09:45:17 UTC
5eb055d d/rules: Avoid fs tests during packaging 22 June 2018, 13:36:52 UTC
3803ac3 d/control: Add missing dependency 22 June 2018, 13:34:27 UTC
bd22f27 identifiers: Reuse ValidationError exception + update docstring Close T1104 Close D346 21 June 2018, 11:45:17 UTC
f2422d6 identifiers: Validate that inputs are correct Related T1104 21 June 2018, 11:45:17 UTC
dfb128e swh.model.cli: Catch specific exception during identifiers check Related T1104 21 June 2018, 11:45:17 UTC
b6073e2 identifiers: Permit to pass directly the object's id As the client of this api might not be aware of what's the right id key for a given object. Related T1104 21 June 2018, 11:45:17 UTC
79d57ac identifiers: Fix wrong type in docstring 21 June 2018, 11:45:17 UTC
7779c57 identifiers: Also validate the hash is correct Related T1104 21 June 2018, 11:45:16 UTC
0d3a051 identifiers: Raise when invalid contextual data in persistent id Related T1104 21 June 2018, 11:45:16 UTC
8a0cc22 identifiers: Make invalid persistent identifier parsing raise error Related T1104 21 June 2018, 11:45:16 UTC
90f08ee Update blake2 support to be less Debian-specific Summary: We used to depend on the 'blake2s256' and 'blake2b512' names to be available in hashlib.algorithms_available. It turns out that that's specific to OpenSSL 1.1. We now try, in order: - blake2s256/blake2b512 as shipped by libssl1.1 (Python 3.5+ on Debian stretch and up) - blake2s/blake2b as built into Python 3.6+ - pyblake2 if all else fails While we're here, let's also avoid doing not-so-subtle hacks with hashlib builtins. Thanks to Alexios Zavras for the report. Test Plan: New unit tests added to check for behavior in all cases. Manually running the tests on Python 3.4 + pyblake2, Python 3.5 and Python 3.6 as shipped by Debian exercises all three cases. Reviewers: zack, #reviewers! Differential Revision: https://forge.softwareheritage.org/D347 21 June 2018, 10:21:17 UTC
0d5bc17 add swh-identify CLI tool to compute persistent identifiers Currently only content and directory object types are supported, but more can be added in the future. Closes T1039 16 June 2018, 20:40:44 UTC
0c00db9 remove obsolete doc about sha1 computation superseded by the doc of swh.model.identifiers 15 June 2018, 10:40:48 UTC
8359879 docs/persistent-identifiers.rst: Fix typo and align formatting 14 June 2018, 09:16:40 UTC
078460b docs: add high-level description of the Merkle DAG text adapted from iPRES 2017 paper about Software Heritage, section "Data Model" Closes T787 13 June 2018, 14:00:14 UTC
3f31a9c doc: use / as documented endpoint to resolve persistent identifiers 05 June 2018, 09:30:03 UTC
bc30e8b doc: add documentation of contextual information for persistent IDs Closes T1041 05 June 2018, 09:04:32 UTC
448eafa parse_persistent_identifier: Add optional parts parsing This commits adds support for parsing optional parts in persistent identifiers. Optional parts are defined the following way: <swh_id>[;key1=val1][;key2=val2] Related T1040 18 May 2018, 14:57:36 UTC
3f72bca docs: Remove Lorem ipsum paragraph in data-model page 07 March 2018, 12:38:39 UTC
d1b975a docs: add snapshot, branches, and visits to Merkle DAG diagram 09 February 2018, 15:50:24 UTC
6fe1595 docs: generate PDF Merkle DAG diagram by default 09 February 2018, 15:49:56 UTC
96114f6 docs: add preliminary version of the Merkle DAG diagram 09 February 2018, 13:32:03 UTC
d788ef1 swh.model.identifiers: Fix typo in snapshot_identifier docstring 31 January 2018, 09:33:34 UTC
a06122e docs: Fix small issue 23 January 2018, 13:16:49 UTC
ab0fb5a Add swh.model.toposort algorithm 19 January 2018, 13:40:52 UTC
bdf26f5 swh.model.identifiers: persistent_identifier takes object as input Related T335 17 January 2018, 10:01:32 UTC
122326d swh.models.hashutil: Add persistent identifier function Related T335 Related T933 15 January 2018, 18:28:22 UTC
b61c666 docs: document the naming scheme for persistent identifiers Closes: T335 14 January 2018, 21:30:16 UTC
a01d81c docs: shorter fulltitle for the data model document 14 January 2018, 21:30:02 UTC
c79c446 swh-hash-file: make sure that paths are passed on as bytes 14 January 2018, 13:54:58 UTC
73d5ffb bin/swh-hash-file: new binary to compute SWH-style content identifiers reincarnation of the old shw.model bin/ script, which is now gone 14 January 2018, 13:47:43 UTC
a5f7d1e improve hash_file() docstring to specify algorithms type 14 January 2018, 13:39:45 UTC
91d74ef swh.model.hashutil.hash_data: Optionally integrate length in result 20 December 2017, 09:46:03 UTC
eff2692 Merge branch 'wip/snapshots' 13 December 2017, 10:30:21 UTC
1b1cc8d hashutil: add `snapshot` object type for git hashes Summary: Add support for snapshot identifiers Close T566. Related to D268. Test Plan: Unit tests included Reviewers: zack, #reviewers! Maniphest Tasks: T566 Differential Revision: https://forge.softwareheritage.org/D277 13 December 2017, 10:30:10 UTC
46ce819 hashutil: add `snapshot` object type for git hashes 12 December 2017, 19:08:30 UTC
94bd8dd docs: add absolute anchor to documentation index 02 November 2017, 10:09:21 UTC
0b7f217 Cleanup packaging 12 October 2017, 15:16:56 UTC
34228c5 test_from_disk: use os.fsencode to consistently get tmpfile names as bytes 05 October 2017, 18:45:42 UTC
2ab8360 mark tests needing the filesystem as such 05 October 2017, 18:38:07 UTC
6c30346 d/control: add breaks on packages depending on removed APIs 05 October 2017, 18:31:27 UTC
f6a4d7e Remove swh.model.git Close T709 05 October 2017, 18:28:11 UTC
c67f012 from_disk: full test coverage 04 October 2017, 20:33:45 UTC
8900a91 from_disk.Directory: fix some random bugs found when using the API 04 October 2017, 20:33:17 UTC
a8e919a test_hashutil: remove temporary file after test 04 October 2017, 18:08:19 UTC
c790b85 from_disk: add a way to save the path to contents This allows loaders to lazily load data: you can read from disk and transfer only the contents that are really missing. 04 October 2017, 17:12:39 UTC
d54c066 from_disk: convert on-disk data to Software Heritage archive objects Summary: This module is a reimplementation of swh.model.git, with the underlying goal of replacing it and fixing T709 in the process. Reviewers: #reviewers! Differential Revision: https://forge.softwareheritage.org/D248 03 October 2017, 17:47:46 UTC
f44949a Add a Merkle tree data structure 03 October 2017, 17:47:46 UTC
ac3df91 docs/: add sub document data-model.rst Currently just a stub (but with a hereby fixed anchor) to allow linking to it from other part of the development documentation. Will be fillen later on with an abstract description of the Software Heritage data model. 19 September 2017, 15:07:36 UTC
8bafb40 hashutil: improve docstrings 15 September 2017, 17:15:38 UTC
bd43a7f docstring: drop useless heading ":py" domain in crossrefs 06 September 2017, 18:27:43 UTC
1d898f7 sanitize docstrings for sphinx 06 September 2017, 18:22:30 UTC
b53f5d8 docs/: add sphinx apidoc generation skeleton change cherry picked from python module template commit 71b117ba0cf9f1251b1cac26d0994df03a4c787d 30 August 2017, 10:25:57 UTC
8aa5c3a Load pyblake2 dynamically instead of hardcoding the Python version Summary: for those people with legacy openssls Reviewers: anlambert, #reviewers! Differential Revision: https://forge.softwareheritage.org/D224 12 July 2017, 14:12:35 UTC
11de644 requirements: make pyblake2 conditional on Python3.5 26 June 2017, 12:41:11 UTC
d281faf d/control: drop pyblake2 if python >= 3.5 19 June 2017, 17:56:07 UTC
6f89adf git: make GitPerm an IntEnum rather than bytes Fix T685 out of spite. While we wait for a cleaner refactoring of this code, this fixes the immediate clogging of the database with bogus data issue. 07 April 2017, 10:02:30 UTC
4d6d748 d/changelog: Fix sbuild warning 24 March 2017, 14:17:13 UTC
9812285 swh.model.hashutil: Add blake2s256 in default algorithms Related T703 24 March 2017, 14:16:36 UTC
a42c75e swh.model.hashutil: Use pyblake2 dependency on python3 <= 3.4 This resolves the caveat mentioned in prior commit about not being able to use blake2 prior to 3.5 Related T692 Closes D192 21 March 2017, 09:35:45 UTC
24f8dd4 swh.model.hashutil: Adapt according to latest discussion - Add module docstring - Add blake2s256 and blake2b512 in supported algorithms - Spawn a new variable DEFAULT_ALGORITHMS as default computed algorithms for the main functions Related T692 17 March 2017, 08:43:15 UTC
f75be5a swh.model.hashutil: Make unknown variable length algo creation break Remove the limit on the python3 version, this should be transparent. If the hash requested is not available, this will raise with an explanation on the error. Related T692 17 March 2017, 08:42:32 UTC
back to top