Skip to content

Commit f429b14

Browse files
saenai255Elsie19
andauthored
feat(parser): replace with new srcinfo parser (#995)
Co-authored-by: Elsie <[email protected]>
1 parent 43713e4 commit f429b14

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

42 files changed

+407
-973
lines changed

Dockerfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ COPY --from=client /root/client/dist/ /root/client/dist/
3232
COPY --from=server /root/server/dist/ /root/server/dist/
3333
COPY ./Makefile ./Makefile
3434

35-
RUN apt update && apt install make git jo jq -y
35+
RUN apt update && apt install make git jq -y
3636

3737
RUN make dist \
3838
&& rm -rf server client

client/src/components/package-details/MinimalPackageTable.tsx

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
import { Table, Tbody, Th, Thead, Tr } from '@chakra-ui/react'
22
import { FC } from 'react'
3-
import PackageInfo from '../../types/package-info'
3+
import { ArchDistroString } from '../../types/package-info'
44
import MinimalPackageTableRow from './MinimalPackageTableRow'
55
import { useTranslation } from 'react-i18next'
66

7-
const MinimalPackageTable: FC<{ packages: (PackageInfo | string)[] }> = ({
7+
const MinimalPackageTable: FC<{ packages: (ArchDistroString | string)[] }> = ({
88
packages,
99
}) => {
1010
const { t } = useTranslation()
@@ -22,11 +22,8 @@ const MinimalPackageTable: FC<{ packages: (PackageInfo | string)[] }> = ({
2222
{packages.map((pkg, i) => (
2323
<MinimalPackageTableRow
2424
external={typeof pkg === 'string'}
25-
key={
26-
(typeof pkg === 'string' ? pkg : pkg.packageName) +
27-
i
28-
}
29-
pkg={typeof pkg === 'string' ? pkg : pkg.packageName}
25+
key={(typeof pkg === 'string' ? pkg : pkg.value) + i}
26+
pkg={typeof pkg === 'string' ? pkg : pkg.value}
3027
/>
3128
))}
3229
</Tbody>

client/src/components/package-details/MinimalPackageTableRow.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,13 +11,13 @@ import { useTranslation } from 'react-i18next'
1111
import { Link as Rlink } from 'react-router-dom'
1212

1313
const getDescription = (nameWithDescription: string): string | null => {
14-
return nameWithDescription.includes(':')
14+
return nameWithDescription?.includes(':')
1515
? nameWithDescription.split(':')[1].trim()
1616
: null
1717
}
1818

1919
const getName = (nameWithDescription: string): string => {
20-
return nameWithDescription.includes(':')
20+
return nameWithDescription?.includes(':')
2121
? nameWithDescription.split(':')[0]
2222
: nameWithDescription
2323
}

client/src/components/package-details/PackageDetailsPage.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import { Container, UseDisclosureProps } from '@chakra-ui/react'
22
import { FC } from 'react'
33
import { Helmet } from 'react-helmet'
4-
import PackageInfo from '../../types/package-info'
4+
import PackageInfo, { ArchDistroString } from '../../types/package-info'
55
import HowToInstall from './HowToInstall'
66
import PackageDependenciesModal from './PackageDependenciesModal'
77
import PackageDetailsHeader from './PackageDetailsHeader'
@@ -10,7 +10,7 @@ import PackageRequiredByModal from './PackageRequiredByModal'
1010

1111
type PackageDetailsPageProps = {
1212
data: PackageInfo
13-
allDependencies: string[]
13+
allDependencies: ArchDistroString[]
1414
isMobile: boolean
1515
requiredByModal: UseDisclosureProps
1616
dependenciesModal: UseDisclosureProps

client/src/components/packages/PackageTableRow.tsx

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ const PackageTableRow: FC<{ pkg: PackageInfo; disabled?: boolean }> = ({
5353
<Tooltip
5454
openDelay={500}
5555
label={
56-
pkg.maintainers.length
56+
pkg.maintainers?.length
5757
? t(
5858
'packageSearch.maintainerTooltip.maintainedBy',
5959
{
@@ -68,7 +68,7 @@ const PackageTableRow: FC<{ pkg: PackageInfo; disabled?: boolean }> = ({
6868
}
6969
>
7070
<Text fontSize='sm'>
71-
{pkg.maintainers
71+
{(pkg.maintainers ?? [])
7272
.map(maintainer => maintainer.split('<')[0].trim())
7373
.join(', ') || t('packageDetails.orphaned')}
7474
</Text>
@@ -81,7 +81,7 @@ const PackageTableRow: FC<{ pkg: PackageInfo; disabled?: boolean }> = ({
8181
<SemanticVersionColor
8282
git={pkg.packageName.endsWith('-git')}
8383
fill
84-
version={pkg.version.substring(0, 14)}
84+
version={pkg.version.substring(0, 18)}
8585
status={pkg.updateStatus}
8686
/>
8787
</Text>
Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
1-
import PackageInfo from './package-info'
1+
import PackageInfo, { ArchDistroString } from './package-info'
22

33
export default interface PackageDependencies {
4-
runtimeDependencies: (PackageInfo | string)[]
5-
buildDependencies: (PackageInfo | string)[]
6-
optionalDependencies: (PackageInfo | string)[]
7-
pacstallDependencies: (PackageInfo | string)[]
4+
runtimeDependencies: (ArchDistroString | string)[]
5+
buildDependencies: (ArchDistroString | string)[]
6+
optionalDependencies: (ArchDistroString | string)[]
7+
pacstallDependencies: (ArchDistroString | string)[]
88
}

client/src/types/package-info.ts

Lines changed: 37 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,24 +1,50 @@
11
export default interface PackageInfo {
2+
architectures: string[]
23
version: string
34
packageName: string
45
maintainers: string[]
56
description: string
6-
source: string[]
7-
runtimeDependencies: string[]
8-
buildDependencies: string[]
9-
optionalDependencies: string[]
10-
conflicts: string[]
11-
gives: string
12-
replaces: string[]
13-
hash?: string
14-
ppa: string[]
15-
pacstallDependencies: string[]
16-
patch: string[]
7+
source: ArchDistroString[]
8+
runtimeDependencies: ArchDistroString[]
9+
buildDependencies: ArchDistroString[]
10+
optionalDependencies: ArchDistroString[]
11+
checkDependencies: ArchDistroString[]
12+
pacstallDependencies: ArchDistroString[]
13+
conflicts: ArchDistroString[]
14+
gives: ArchDistroString
15+
replaces: ArchDistroString[]
16+
sha1sums: ArchDistroString[]
17+
sha224sums: ArchDistroString[]
18+
sha256sums: ArchDistroString[]
19+
sha384sums: ArchDistroString[]
20+
sha512sums: ArchDistroString[]
21+
md5sums: ArchDistroString[]
22+
priority: ArchDistroString[]
1723
requiredBy: string[]
24+
suggests: ArchDistroString[]
25+
recommends: ArchDistroString[]
1826
latestVersion?: string
1927
prettyName: string
2028
updateStatus: UpdateStatus
2129
lastUpdatedAt: string
30+
enhances: ArchDistroString[]
31+
changelog: string
32+
backup: string[]
33+
compatible: string[]
34+
incompatible: string[]
35+
epoch: string
36+
install: string
37+
license: string[]
38+
mask: string[]
39+
noExtract: string[]
40+
validPgpKeys: string[]
41+
groups: string[]
42+
}
43+
44+
export interface ArchDistroString {
45+
arch?: string
46+
distro?: string
47+
value: string
2248
}
2349

2450
export enum UpdateStatus {

server/consts/consts.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
package consts
22

3-
const PACSCRIPT_FILE_EXTENSION = "pacscript"
3+
const SRCINFO_FILE_EXTENSION = ".SRCINFO"

server/fixtures/test-programs/packages/clipboard-bin/clipboard-bin.pacscript

Lines changed: 0 additions & 35 deletions
This file was deleted.

server/fixtures/test-programs/packages/clipboard-bin/clipboard-bin.snapshot.json

Lines changed: 0 additions & 35 deletions
This file was deleted.

0 commit comments

Comments
 (0)