11.. _aboutcode_data :
22
3- AboutCode Data : ABCD
3+ AboutCode Data : ABCD
44=====================
55
66Summary
@@ -57,7 +57,7 @@ technology-specific.
5757Recently there have been efforts to collect and expose more data such
5858as:
5959
60- - libraries.io (a catalog of packages, AGPL-licensed)
60+ - libraries.io (a catalog of packages, AGPL-licensed)
6161 and dependencyci.com its companion commercial service,
6262- versioneye.com (a catalog of package versions updates, now
6363 MIT-licensed),
@@ -76,9 +76,9 @@ consistently exchange data about code in a user-centric and
7676technology-neutral, normalized way.
7777
7878Why does this matter? Software and code are everywhere. FLOSS code is
79- exploding with millions of components and packages. The data about this
80- code is out there somewhere but getting it is harder than needed . This a
81- problem of data normalization, aggregation and exchange.
79+ exploding with millions of components and packages. The data about this
80+ code is out there somewhere but getting it is often too difficult . This
81+ is a problem of data normalization, aggregation and exchange.
8282
8383Whether you consume or produce software, accessing and creating
8484normalized data about your code and the code you use should be made
@@ -291,12 +291,12 @@ Name conventions
291291 {"http://someurl.com": "this is the home URL"}
292292
293293- Use rather this form to specify a name for the URL attribute::
294-
294+
295295 {"url": "http://someurl.com", "note": "this is the home URL"}
296296
297297- But this would be correct when using a list of plain values where
298298 "urls" is plural::
299-
299+
300300 {"urls": ["http://someurl.com", "http://someurl2.com"]}
301301
302302- An attribute names without a value is not needed. Only names with
@@ -319,7 +319,7 @@ Name conventions
319319 - urn: uniform resource name
320320 - vcs: version control system
321321 - uuid: universally unique identifier, used for uuid4 string
322- `https://tools.ietf.org/html/rfc4122.html <https://tools.ietf.org/html/rfc4122.html&sa=D&ust=1487355496775000&usg=AFQjCNFPvpqA_MFbGaOmykUF8a5GGUKRSw>`__
322+ `https://tools.ietf.org/html/rfc4122.html <https://tools.ietf.org/html/rfc4122.html&sa=D&ust=1487355496775000&usg=AFQjCNFPvpqA_MFbGaOmykUF8a5GGUKRSw >`__
323323 - id: identifier
324324 - info: information
325325 - os: operating system
@@ -351,7 +351,7 @@ Well known attribute names include:
351351 other objects. For instance a Party may be the
352352 "owner" or "author" of a Component or Package.
353353- uuid: a uuid4 string
354- `https://tools.ietf.org/html/rfc4122.html <https://tools.ietf.org/html/rfc4122.html>`__
354+ `https://tools.ietf.org/html/rfc4122.html <https://tools.ietf.org/html/rfc4122.html >`_
355355- algorithms for checksums: to store checksums we use a name/value
356356 pairs where the name is an algorithm such as sha1 and the value is a
357357 checksum in hexadecimal such as "sha1": "asasa231212" . The value is
@@ -441,10 +441,10 @@ Hence each object may need several attributes to be fully identifiable.
441441
442442For example, public package managers ensure that a name is unique within
443443the confines of a source. "logging" is the unique name of a single
444- Sourceforge project at
445- `https://sourceforge.net/projects/logging/ <https://sourceforge.net/projects/logging/>`__ .
444+ Sourceforge project at
445+ `https://sourceforge.net/projects/logging/ <https://sourceforge.net/projects/logging/ >`_ .
446446"logging" is the unique name of an Apache project at the Apache
447- Foundation `http://logging.apache.org/ <http://logging.apache.org/>`__ .
447+ Foundation `http://logging.apache.org/ <http://logging.apache.org/ >`_ .
448448
449449Yet, these two names point to completely different software. In most
450450cases, providing information about the "source" where an identifier is
@@ -535,7 +535,7 @@ lists. When embedding, you include not only the reference but also the
535535related object details in another object data. This could include all
536536data about an object or a subset as needed.
537537
538- For example, this components list embeds a list of two packages.
538+ For example, this components list embeds a list of two packages.
539539
540540Note: "components" is always a list, *even when it has a single component *::
541541
@@ -544,19 +544,19 @@ Note: "components" is always a list, *even when it has a single component*::
544544 "name": "Apache httpd",
545545 "version": "2.3",
546546 "packages": [
547- {"name": "httpd",
548- "version": "2.3.4",
547+ {"name": "httpd",
548+ "version": "2.3.4",
549549 "download_url": "http://apache.org/dist/httpd/httpd-2.3.4.zip",
550- "sha1": "acbf23256361abcdf",
551- "size": 3267,
550+ "sha1": "acbf23256361abcdf",
551+ "size": 3267,
552552 "filename": "httpd-2.3.4.zip"
553- },
554-
555- {"name": "httpd",
553+ },
554+
555+ {"name": "httpd",
556556 "version": "2.3.5",
557557 "download_url": "http://apache.org/dist/httpd/httpd-2.3.5.tar.gz",
558- "sha1": "ac8823256361adfcdf",
559- "size": 33267,
558+ "sha1": "ac8823256361adfcdf",
559+ "size": 33267,
560560 "filename": "httpd-2.3.5.tar.gz"
561561 }
562562 ]
@@ -579,14 +579,14 @@ organized differently::
579579 {"sha1": "ac8823256361adfcdf"}
580580 ]
581581 }],
582-
582+
583583 "packages": [
584- {"name": "httpd", "version": "2.3.4",
584+ {"name": "httpd", "version": "2.3.4",
585585 "download_url":
586586 "http://apache.org/dist/httpd/httpd-2.3.4.zip",
587587 "sha1": "acbf23256361abcdf", "size": 23267, "filename": "httpd-2.3.4.zip"},
588-
589- {"name": "httpd", "version": "2.3.5",
588+
589+ {"name": "httpd", "version": "2.3.5",
590590 "download_url": "http://apache.org/dist/httpd/httpd-2.3.5.tar.gz",
591591 "sha1": "ac8823256361adfcdf", "size": 33267, "filename": "httpd-2.3.5.tar.gz"}
592592 ]}
@@ -597,15 +597,15 @@ component detail data is not provided. The details may be available
597597elsewhere in a tool that tracks components::
598598
599599 "packages": [
600- {"name": "httpd", "version": "2.3.4",
600+ {"name": "httpd", "version": "2.3.4",
601601 "download_url": "http://apache.org/dist/httpd/httpd-2.3.4.zip",
602602 "sha1": "acbf23256361abcdf", "size": 23267, "filename": "httpd-2.3.4.zip",
603603 "components": [
604604 {"source": "http://apache.org", "name": "Apache httpd", "version": "2.3"}
605605 ]
606606 },
607-
608- {"name": "httpd", "version": "2.3.5",
607+
608+ {"name": "httpd", "version": "2.3.5",
609609 "download_url":"http://apache.org/dist/httpd/httpd-2.3.5.tar.gz",
610610 "sha1": "ac8823256361adfcdf", "size": 33267, "filename": "httpd-2.3.5.tar.gz",
611611 "components": [
@@ -833,8 +833,8 @@ writing primarily by humans.
833833- Multi-document YAML documents should be avoided (when using the ---
834834 separators).
835835
836- - Beware of parser shenanigans: Most YAML parsers recognize and convert
837- automatically certain data types such as numbers, booleans or dates.
836+ - Beware of parser shenanigans: Most YAML parsers recognize and convert
837+ automatically certain data types such as numbers, booleans or dates.
838838 You should be aware of this because the ABC Data strings may contain
839839 date stamps. You may want to configure a YAML parser to deactivate some
840840 of these automated format conversions to avoid unwanted conversions.
@@ -973,17 +973,17 @@ in YAML::
973973 - path: bitarray-0.8.1-cp27-cp27mu-manylinux1_x86_64.whl
974974 - path: bitarray-0.8.1-cp27-none-macosx_10_6_intel.whl
975975 - path: bitarray-0.8.1.tar.gz
976-
976+
977977 parties:
978978 - role: owner
979979 name: Ilan Schnell
980-
980+
981981 packages:
982982 - download_url: http://pypi.python.org/packages/source/b/bitarray/bitarray-0.8.1.tar.gz
983983 sha1: 468456384529abcdef342
984-
984+
985985 license_expression: psf
986-
986+
987987 licenses:
988988 - source: scancode.com
989989 key: psf
@@ -1003,7 +1003,7 @@ And here would be similar data in JSON::
10031003 "sha1": "468456384529abcdef342"
10041004 }],
10051005 "parties": [{"name": "Ilan Schnell", "role": "owner"}],
1006-
1006+
10071007 "files": [{"path": "some/directory/", "type": "dir"},
10081008 {"path": "bitarray-0.8.1-cp27-cp27m-macosx_10_9_intel.whl"},
10091009 {"path": "bitarray-0.8.1-cp27-cp27m-manylinux1_i686.whl"},
@@ -1015,7 +1015,7 @@ And here would be similar data in JSON::
10151015 {"path": "bitarray-0.8.1-cp27-none-macosx_10_6_intel.whl"},
10161016 {"path": "bitarray-0.8.1.tar.gz"}],
10171017 }],
1018-
1018+
10191019 aboutcode_version: "4.0"}
10201020
10211021
@@ -1116,7 +1116,7 @@ format::
11161116 }],
11171117 "licenses": [
11181118 { "detected": true,
1119- "key": "lgpl-2.1-plus",
1119+ "key": "lgpl-2.1-plus",
11201120 "category": "Copyleft Limited",
11211121 "homepage_url": "http://www.gnu.org/licenses/old-licenses/lgpl-2.1-standalone.html",
11221122 "start_line": 7,
@@ -1178,7 +1178,7 @@ AboutCode Manager
11781178
11791179As a primary GUI for data review and integration, AboutCode Manager
11801180will need to be fluent in ABC Data to read/write ABC Data locally and
1181- remotely through API from several sources.
1181+ remotely through API from several sources.
11821182
11831183The short term changes would include:
11841184
0 commit comments