{
	"SPDXID":"SPDXRef-DOCUMENT",
	"name":"parallel-0.20240122-1.oe2409.aarch64.rpm",
	"spdxVersion":"SPDX-2.2",
	"creationInfo":{
		"created":"2024-09-30T03:30:07.5589037Z",
		"creators":"[openeuler_creator]"
	},
	"dataLicense":"CC0-1.0",
	"documentNamespace":"https://repo.openeuler.org/security/data/sbom/parallel-0.20240122-1.oe2409.aarch64.rpm",
	"packages":[
		{
			"SPDXID":"SPDXRef-rpm-perl-5.38.0-3373dd29-00bf-4751-bc96-5b01fbd1f07c-12aa1d4d-7c38-4c97-830d-220f868093ad",
			"name":"perl",
			"checksums":[
				{
					"algorithm":"SHA256",
					"checksumValue":"1cc1d4df3e2feb90c5250bb3619d63d60b9ec82bb75e180bdeecccce97e37e91"
				}
			],
			"description":"Perl 5 is a highly capable, feature-rich programming language with over 30 years of development.\nPerl 5 runs on over 100 platforms from portables to mainframes and is suitable for both rapid\nprototyping and large scale development projects.",
			"downloadLocation":"NOASSERTION",
			"externalRefs":[
				{
					"referenceCategory":"PACKAGE_MANAGER",
					"referenceLocator":"pkg:rpm/perl@5.38.0-8.oe2409?arch=aarch64&epoch=4&upstream=perl-5.38.0-8.oe2409.src.rpm",
					"referenceType":"purl"
				}
			],
			"filesAnalyzed":false,
			"homepage":"https://www.perl.org/",
			"sourceInfo":"acquired package info from repodata DB: repodata/6e742f68b2ae62313d1861c02b7faa39b44c963cbbc6ac979fb577de9af9babc-primary.sqlite.bz2",
			"summary":"A highly capable, feature-rich programming language",
			"supplier":"Organization: http://openeuler.org",
			"versionInfo":"4:5.38.0-8.oe2409"
		},
		{
			"SPDXID":"SPDXRef-rpm-perl-File-Path-2.18-ccb0451a-6141-4311-b643-6178d50deb7f-09255a92-0f52-4d33-8ae2-ec590c6a8cb4",
			"name":"perl-File-Path",
			"checksums":[
				{
					"algorithm":"SHA256",
					"checksumValue":"c871d9773e469dc912d91802441e3338a4a7b5a41ab7c2a3aa0e1368ab2235eb"
				}
			],
			"description":"This module provides a convenient way to create directories\nof arbitrary depth and to delete an entire directory subtree\nfrom the filesystem.",
			"downloadLocation":"NOASSERTION",
			"externalRefs":[
				{
					"referenceCategory":"PACKAGE_MANAGER",
					"referenceLocator":"pkg:rpm/perl-File-Path@2.18-2.oe2409?arch=noarch&epoch=0&upstream=perl-File-Path-2.18-2.oe2409.src.rpm",
					"referenceType":"purl"
				}
			],
			"filesAnalyzed":false,
			"homepage":"https://metacpan.org/pod/File::Path",
			"sourceInfo":"acquired package info from repodata DB: repodata/6e742f68b2ae62313d1861c02b7faa39b44c963cbbc6ac979fb577de9af9babc-primary.sqlite.bz2",
			"summary":"Create or remove directory trees",
			"supplier":"Organization: http://openeuler.org",
			"versionInfo":"0:2.18-2.oe2409"
		},
		{
			"SPDXID":"SPDXRef-rpm-perl-File-Temp-0.2311-02ffb909-c5b3-46ed-a812-57d56710f881-ec1a340e-a862-4c0d-98e4-db2c25a1a7db",
			"name":"perl-File-Temp",
			"checksums":[
				{
					"algorithm":"SHA256",
					"checksumValue":"bc12b09af6c50572fabe78649d6c539cc0209d4617c616425c8f9078b91f7582"
				}
			],
			"description":"File::Temp can be used to create and open temporary files in a safe way.\nThere is both a function interface and an object-oriented interface. The\nFile::Temp constructor or the tempfile() function can be used to return the\nname and the open file handle of a temporary file. The tempdir() function\ncan be used to create a temporary directory.\n\nThe security aspect of temporary file creation is emphasized such that a\nfilehandle and filename are returned together.\nThis helps guarantee that a race condition can not occur where the temporary\nfile is created by another process between checking for the existence of the\nfile and its opening. Additional security levels are provided to check,\nfor example, that the sticky bit is set on world writable directories.\nSee \"safe_level\" for more information.\n\nFor compatibility with popular C library functions, Perl implementations of\nthe mkstemp() family of functions are provided. These are, mkstemp(),\nmkstemps(), mkdtemp() and mktemp().\n\nAdditionally, implementations of the standard POSIX tmpnam() and tmpfile()\nfunctions are provided if required.\n\nImplementations of mktemp(), tmpnam(), and tempnam() are provided, but should\nbe used with caution since they return only a filename that was valid when\nfunction was called, so cannot guarantee that the file will not exist by the\ntime the caller opens the filename.\n\nFilehandles returned by these functions support the seekable methods.",
			"downloadLocation":"NOASSERTION",
			"externalRefs":[
				{
					"referenceCategory":"PACKAGE_MANAGER",
					"referenceLocator":"pkg:rpm/perl-File-Temp@0.2311-3.oe2409?arch=noarch&epoch=1&upstream=perl-File-Temp-0.2311-3.oe2409.src.rpm",
					"referenceType":"purl"
				}
			],
			"filesAnalyzed":false,
			"homepage":"https://metacpan.org/release/File-Temp",
			"sourceInfo":"acquired package info from repodata DB: repodata/6e742f68b2ae62313d1861c02b7faa39b44c963cbbc6ac979fb577de9af9babc-primary.sqlite.bz2",
			"summary":"Return name and handle of a temporary file safely",
			"supplier":"Organization: http://openeuler.org",
			"versionInfo":"1:0.2311-3.oe2409"
		},
		{
			"SPDXID":"SPDXRef-rpm-perl-Getopt-Long-2.57-7543f068-83c3-48da-8b41-70faad8865aa-d35e3a36-52fe-46f1-b72b-0da94b1b42d2",
			"name":"perl-Getopt-Long",
			"checksums":[
				{
					"algorithm":"SHA256",
					"checksumValue":"1e734a72588e3b97d3a3ac3a7b2eec76ac90d3cc1d83969594a35a4779cb34f7"
				}
			],
			"description":"Module Getopt::Long implements an extended getopt function called\nGetOptions(). This function implements the POSIX standard for command\nline options, with GNU extensions, while still capable of handling\nthe traditional one-letter options.",
			"downloadLocation":"NOASSERTION",
			"externalRefs":[
				{
					"referenceCategory":"PACKAGE_MANAGER",
					"referenceLocator":"pkg:rpm/perl-Getopt-Long@2.57-1.oe2409?arch=noarch&epoch=1&upstream=perl-Getopt-Long-2.57-1.oe2409.src.rpm",
					"referenceType":"purl"
				}
			],
			"filesAnalyzed":false,
			"homepage":"https://metacpan.org/pod/Getopt::Long",
			"sourceInfo":"acquired package info from repodata DB: repodata/6e742f68b2ae62313d1861c02b7faa39b44c963cbbc6ac979fb577de9af9babc-primary.sqlite.bz2",
			"summary":"Extended processing of command line options",
			"supplier":"Organization: http://openeuler.org",
			"versionInfo":"1:2.57-1.oe2409"
		},
		{
			"SPDXID":"SPDXRef-rpm-perl-Thread-Queue-3.13-77d9191c-ca1e-4158-8191-1f388f1d6508-566809ac-c0b4-423b-8d06-fa424e07420a",
			"name":"perl-Thread-Queue",
			"checksums":[
				{
					"algorithm":"SHA256",
					"checksumValue":"e924feb8038af676eed352e1bf26918505c5b28d70d16ddc20f8226485d8f7f3"
				}
			],
			"description":"This module provides thread-safe FIFO queues that can be accessed safely by\nany number of threads.\n\nAny data types supported by threads::shared can be passed via queues:\n    -Ordinary scalars\n    -Array refs\n    -Hash refs\n    -Scalar refs\n    -Objects based on the above\nOrdinary scalars are added to queues as they are.\n\nIf not already thread-shared, the other complex data types will be cloned\n(recursively, if needed, and including any blessings and read-only settings)\ninto thread-shared structures before being placed onto a queue.",
			"downloadLocation":"NOASSERTION",
			"externalRefs":[
				{
					"referenceCategory":"PACKAGE_MANAGER",
					"referenceLocator":"pkg:rpm/perl-Thread-Queue@3.13-4.oe2409?arch=noarch&epoch=0&upstream=perl-Thread-Queue-3.13-4.oe2409.src.rpm",
					"referenceType":"purl"
				}
			],
			"filesAnalyzed":false,
			"homepage":"https://metacpan.org/release/Thread-Queue",
			"sourceInfo":"acquired package info from repodata DB: repodata/6e742f68b2ae62313d1861c02b7faa39b44c963cbbc6ac979fb577de9af9babc-primary.sqlite.bz2",
			"summary":"Thread-safe queues",
			"supplier":"Organization: http://openeuler.org",
			"versionInfo":"0:3.13-4.oe2409"
		},
		{
			"SPDXID":"SPDXRef-rpm-perl-libs-5.38.0-7fdc2fc9-5bac-4a1d-a41c-6c102fdcce47-d1386d7d-d17b-476e-851b-839464ead08b",
			"name":"perl-libs",
			"checksums":[
				{
					"algorithm":"SHA256",
					"checksumValue":"767b285aad322c1f004fa698cf646f37bf052c9caaafecbbdf567655466b12f2"
				}
			],
			"description":"This package is the shared library for perl.",
			"downloadLocation":"NOASSERTION",
			"externalRefs":[
				{
					"referenceCategory":"PACKAGE_MANAGER",
					"referenceLocator":"pkg:rpm/perl-libs@5.38.0-8.oe2409?arch=aarch64&epoch=4&upstream=perl-5.38.0-8.oe2409.src.rpm",
					"referenceType":"purl"
				}
			],
			"filesAnalyzed":false,
			"homepage":"https://www.perl.org/",
			"sourceInfo":"acquired package info from repodata DB: repodata/6e742f68b2ae62313d1861c02b7faa39b44c963cbbc6ac979fb577de9af9babc-primary.sqlite.bz2",
			"summary":"The libraries for the perl",
			"supplier":"Organization: http://openeuler.org",
			"versionInfo":"4:5.38.0-8.oe2409"
		},
		{
			"SPDXID":"SPDXRef-rpm-perl-threads-2.36-e337e64a-ae7d-4d8e-a68c-d90383ebdf60-6e254b66-5c79-4232-8f2e-5d50cb378bd8",
			"name":"perl-threads",
			"checksums":[
				{
					"algorithm":"SHA256",
					"checksumValue":"9cfbc7791f8d31dcf4c457e329defa977a752433823e4292e38abdf424dc43cb"
				}
			],
			"description":"Since Perl 5.8, thread programming has been available using a model called\ninterpreter threads which provides a new Perl interpreter for each thread,\nand, by default, results in no data or state information being shared\nbetween threads.\n\n(Prior to Perl 5.8, 5005threads was available through the \"Thread.pm\" API.\nThis threading model has been deprecated, and was removed as of Perl 5.10.0.)",
			"downloadLocation":"NOASSERTION",
			"externalRefs":[
				{
					"referenceCategory":"PACKAGE_MANAGER",
					"referenceLocator":"pkg:rpm/perl-threads@2.36-2.oe2409?arch=aarch64&epoch=2&upstream=perl-threads-2.36-2.oe2409.src.rpm",
					"referenceType":"purl"
				}
			],
			"filesAnalyzed":false,
			"homepage":"https://metacpan.org/release/threads",
			"sourceInfo":"acquired package info from repodata DB: repodata/6e742f68b2ae62313d1861c02b7faa39b44c963cbbc6ac979fb577de9af9babc-primary.sqlite.bz2",
			"summary":"Perl interpreter-based threads",
			"supplier":"Organization: http://openeuler.org",
			"versionInfo":"2:2.36-2.oe2409"
		},
		{
			"SPDXID":"SPDXRef-rpm-perl-threads-shared-1.62-806d37e0-a4f6-47e4-a6dd-8227e0fafe7c-7047a12f-542b-4f88-b991-02838b05fcc0",
			"name":"perl-threads-shared",
			"checksums":[
				{
					"algorithm":"SHA256",
					"checksumValue":"3b3082c030af54fe156054becc22b0f9f84897d7c4e10bf307ea51b81d517f14"
				}
			],
			"description":"By default, variables are private to each thread, and each newly created\nthread gets a private copy of each existing variable. This module allows\nyou to share variables across different threads (and pseudo-forks on\nWin32). It is used together with the threads module.\n\nThis module supports the sharing of the following data types only: scalars\nand scalar refs, arrays and array refs, and hashes and hash refs.",
			"downloadLocation":"NOASSERTION",
			"externalRefs":[
				{
					"referenceCategory":"PACKAGE_MANAGER",
					"referenceLocator":"pkg:rpm/perl-threads-shared@1.62-2.oe2409?arch=aarch64&epoch=0&upstream=perl-threads-shared-1.62-2.oe2409.src.rpm",
					"referenceType":"purl"
				}
			],
			"filesAnalyzed":false,
			"homepage":"https://metacpan.org/release/threads-shared",
			"sourceInfo":"acquired package info from repodata DB: repodata/6e742f68b2ae62313d1861c02b7faa39b44c963cbbc6ac979fb577de9af9babc-primary.sqlite.bz2",
			"summary":"Perl extension for sharing data structures between threads",
			"supplier":"Organization: http://openeuler.org",
			"versionInfo":"0:1.62-2.oe2409"
		}
	],
	"relationships":[
		{
			"spdxElementId":"SPDXRef-rpm-parallel-20240122-30d01e53-e4db-480f-bcc5-6596cad5989d",
			"relationshipType":"DEPENDS_ON",
			"relatedSpdxElement":"SPDXRef-rpm-perl-5.38.0-3373dd29-00bf-4751-bc96-5b01fbd1f07c-12aa1d4d-7c38-4c97-830d-220f868093ad"
		},
		{
			"spdxElementId":"SPDXRef-rpm-parallel-20240122-30d01e53-e4db-480f-bcc5-6596cad5989d",
			"relationshipType":"DEPENDS_ON",
			"relatedSpdxElement":"SPDXRef-rpm-perl-File-Path-2.18-ccb0451a-6141-4311-b643-6178d50deb7f-09255a92-0f52-4d33-8ae2-ec590c6a8cb4"
		},
		{
			"spdxElementId":"SPDXRef-rpm-parallel-20240122-30d01e53-e4db-480f-bcc5-6596cad5989d",
			"relationshipType":"DEPENDS_ON",
			"relatedSpdxElement":"SPDXRef-rpm-perl-File-Temp-0.2311-02ffb909-c5b3-46ed-a812-57d56710f881-ec1a340e-a862-4c0d-98e4-db2c25a1a7db"
		},
		{
			"spdxElementId":"SPDXRef-rpm-parallel-20240122-30d01e53-e4db-480f-bcc5-6596cad5989d",
			"relationshipType":"DEPENDS_ON",
			"relatedSpdxElement":"SPDXRef-rpm-perl-Getopt-Long-2.57-7543f068-83c3-48da-8b41-70faad8865aa-d35e3a36-52fe-46f1-b72b-0da94b1b42d2"
		},
		{
			"spdxElementId":"SPDXRef-rpm-parallel-20240122-30d01e53-e4db-480f-bcc5-6596cad5989d",
			"relationshipType":"DEPENDS_ON",
			"relatedSpdxElement":"SPDXRef-rpm-perl-Thread-Queue-3.13-77d9191c-ca1e-4158-8191-1f388f1d6508-566809ac-c0b4-423b-8d06-fa424e07420a"
		},
		{
			"spdxElementId":"SPDXRef-rpm-parallel-20240122-30d01e53-e4db-480f-bcc5-6596cad5989d",
			"relationshipType":"DEPENDS_ON",
			"relatedSpdxElement":"SPDXRef-rpm-perl-libs-5.38.0-7fdc2fc9-5bac-4a1d-a41c-6c102fdcce47-d1386d7d-d17b-476e-851b-839464ead08b"
		},
		{
			"spdxElementId":"SPDXRef-rpm-parallel-20240122-30d01e53-e4db-480f-bcc5-6596cad5989d",
			"relationshipType":"DEPENDS_ON",
			"relatedSpdxElement":"SPDXRef-rpm-perl-threads-2.36-e337e64a-ae7d-4d8e-a68c-d90383ebdf60-6e254b66-5c79-4232-8f2e-5d50cb378bd8"
		},
		{
			"spdxElementId":"SPDXRef-rpm-parallel-20240122-30d01e53-e4db-480f-bcc5-6596cad5989d",
			"relationshipType":"DEPENDS_ON",
			"relatedSpdxElement":"SPDXRef-rpm-perl-threads-shared-1.62-806d37e0-a4f6-47e4-a6dd-8227e0fafe7c-7047a12f-542b-4f88-b991-02838b05fcc0"
		}
	]
}