Compare commits

..

3 commits
v0.2.0 ... main

4 changed files with 18 additions and 5 deletions

4
.gitignore vendored
View file

@ -1 +1,5 @@
/.idea/
/check
/debian-dsa
/in
/out

View file

@ -65,11 +65,11 @@ shortened and pretty-printed example output looks like this:
[
{
"date": "2023-01-18",
"title": "DSA-5322"
"dsa": "DSA-5322"
},
{
"date": "2023-01-19",
"title": "DSA-5323"
"dsa": "DSA-5323"
}
]
```
@ -87,7 +87,7 @@ metadata. If the version exists. The following input example returns the output
"params": {},
"version": {
"date": "2023-01-18",
"title": "DSA-5322"
"dsa": "DSA-5322"
}
}
```

Binary file not shown.

View file

@ -147,8 +147,10 @@ func (r *Resource) Check() error {
return fmt.Errorf("could not parse input from Concourse: %w", err)
}
var inputDate time.Time
if len(input.Version.Date) > 0 {
_, err = parseISODate(input.Version.Date)
inputDate, err = parseISODate(input.Version.Date)
if err != nil {
return fmt.Errorf("could not interpret version from Concourse as date: %w", err)
}
@ -164,7 +166,14 @@ func (r *Resource) Check() error {
for _, item := range dsaData.Items {
parts := strings.SplitN(item.Title, " ", 2)
dates.addVersion(Version{Date: item.Date, DSANumber: parts[0]})
versionDate, err := parseISODate(item.Date)
if err != nil {
return fmt.Errorf("could not interpret date from RDF feed as date: %w", err)
}
if inputDate.IsZero() || inputDate.Before(versionDate) {
dates.addVersion(Version{Date: item.Date, DSANumber: parts[0]})
}
}
sort.Sort(dates)