Compare commits
5 Commits
renovate/g
...
v3.37.3
Author | SHA1 | Date | |
---|---|---|---|
b6451451b1 | |||
f06d2c0348 | |||
b7ae56b109 | |||
5d9167d676 | |||
1b42b9627c |
5
.github/workflows/beta_release.yml
vendored
5
.github/workflows/beta_release.yml
vendored
@ -29,12 +29,17 @@ jobs:
|
|||||||
ref: tags/beta
|
ref: tags/beta
|
||||||
sha: ${{ github.sha }}
|
sha: ${{ github.sha }}
|
||||||
|
|
||||||
|
- name: Delete beta tag
|
||||||
|
run: git tag -d beta
|
||||||
|
continue-on-error: true
|
||||||
|
|
||||||
- name: changelog # or changelogithub@0.12 if ensure the stable result
|
- name: changelog # or changelogithub@0.12 if ensure the stable result
|
||||||
id: changelog
|
id: changelog
|
||||||
run: |
|
run: |
|
||||||
git tag -l
|
git tag -l
|
||||||
npx changelogithub --output CHANGELOG.md
|
npx changelogithub --output CHANGELOG.md
|
||||||
# npx changelogen@latest --output CHANGELOG.md
|
# npx changelogen@latest --output CHANGELOG.md
|
||||||
|
|
||||||
- name: Upload assets
|
- name: Upload assets
|
||||||
uses: softprops/action-gh-release@v2
|
uses: softprops/action-gh-release@v2
|
||||||
with:
|
with:
|
||||||
|
4
.github/workflows/changelog.yml
vendored
4
.github/workflows/changelog.yml
vendored
@ -15,6 +15,10 @@ jobs:
|
|||||||
with:
|
with:
|
||||||
fetch-depth: 0
|
fetch-depth: 0
|
||||||
|
|
||||||
|
- name: Delete beta tag
|
||||||
|
run: git tag -d beta
|
||||||
|
continue-on-error: true
|
||||||
|
|
||||||
- run: npx changelogithub # or changelogithub@0.12 if ensure the stable result
|
- run: npx changelogithub # or changelogithub@0.12 if ensure the stable result
|
||||||
env:
|
env:
|
||||||
GITHUB_TOKEN: ${{secrets.MY_TOKEN}}
|
GITHUB_TOKEN: ${{secrets.MY_TOKEN}}
|
||||||
|
1
build.sh
1
build.sh
@ -8,6 +8,7 @@ if [ "$1" = "dev" ]; then
|
|||||||
version="dev"
|
version="dev"
|
||||||
webVersion="dev"
|
webVersion="dev"
|
||||||
else
|
else
|
||||||
|
git tag -d beta
|
||||||
version=$(git describe --abbrev=0 --tags)
|
version=$(git describe --abbrev=0 --tags)
|
||||||
webVersion=$(wget -qO- -t1 -T2 "https://api.github.com/repos/alist-org/alist-web/releases/latest" | grep "tag_name" | head -n 1 | awk -F ":" '{print $2}' | sed 's/\"//g;s/,//g;s/ //g')
|
webVersion=$(wget -qO- -t1 -T2 "https://api.github.com/repos/alist-org/alist-web/releases/latest" | grep "tag_name" | head -n 1 | awk -F ":" '{print $2}' | sed 's/\"//g;s/,//g;s/ //g')
|
||||||
fi
|
fi
|
||||||
|
@ -26,7 +26,7 @@ import (
|
|||||||
"github.com/pkg/errors"
|
"github.com/pkg/errors"
|
||||||
)
|
)
|
||||||
|
|
||||||
var UserAgent = driver115.UA115Desktop
|
var UserAgent = driver115.UA115Browser
|
||||||
|
|
||||||
func (d *Pan115) login() error {
|
func (d *Pan115) login() error {
|
||||||
var err error
|
var err error
|
||||||
|
@ -58,34 +58,10 @@ func (d *GooglePhoto) Link(ctx context.Context, file model.Obj, args model.LinkA
|
|||||||
URL: f.BaseURL + "=d",
|
URL: f.BaseURL + "=d",
|
||||||
}, nil
|
}, nil
|
||||||
} else if strings.Contains(f.MimeType, "video/") {
|
} else if strings.Contains(f.MimeType, "video/") {
|
||||||
var width, height int
|
|
||||||
|
|
||||||
fmt.Sscanf(f.MediaMetadata.Width, "%d", &width)
|
|
||||||
fmt.Sscanf(f.MediaMetadata.Height, "%d", &height)
|
|
||||||
|
|
||||||
switch {
|
|
||||||
// 1080P
|
|
||||||
case width == 1920 && height == 1080:
|
|
||||||
return &model.Link{
|
|
||||||
URL: f.BaseURL + "=m37",
|
|
||||||
}, nil
|
|
||||||
// 720P
|
|
||||||
case width == 1280 && height == 720:
|
|
||||||
return &model.Link{
|
|
||||||
URL: f.BaseURL + "=m22",
|
|
||||||
}, nil
|
|
||||||
// 360P
|
|
||||||
case width == 640 && height == 360:
|
|
||||||
return &model.Link{
|
|
||||||
URL: f.BaseURL + "=m18",
|
|
||||||
}, nil
|
|
||||||
default:
|
|
||||||
return &model.Link{
|
return &model.Link{
|
||||||
URL: f.BaseURL + "=dv",
|
URL: f.BaseURL + "=dv",
|
||||||
}, nil
|
}, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
|
||||||
return &model.Link{}, nil
|
return &model.Link{}, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -2,6 +2,8 @@ package op
|
|||||||
|
|
||||||
import (
|
import (
|
||||||
"context"
|
"context"
|
||||||
|
"fmt"
|
||||||
|
"runtime"
|
||||||
"sort"
|
"sort"
|
||||||
"strings"
|
"strings"
|
||||||
"time"
|
"time"
|
||||||
@ -83,11 +85,25 @@ func LoadStorage(ctx context.Context, storage model.Storage) error {
|
|||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func getCurrentGoroutineStack() string {
|
||||||
|
buf := make([]byte, 1<<16)
|
||||||
|
n := runtime.Stack(buf, false)
|
||||||
|
return string(buf[:n])
|
||||||
|
}
|
||||||
|
|
||||||
// initStorage initialize the driver and store to storagesMap
|
// initStorage initialize the driver and store to storagesMap
|
||||||
func initStorage(ctx context.Context, storage model.Storage, storageDriver driver.Driver) (err error) {
|
func initStorage(ctx context.Context, storage model.Storage, storageDriver driver.Driver) (err error) {
|
||||||
storageDriver.SetStorage(storage)
|
storageDriver.SetStorage(storage)
|
||||||
driverStorage := storageDriver.GetStorage()
|
driverStorage := storageDriver.GetStorage()
|
||||||
|
defer func() {
|
||||||
|
if err := recover(); err != nil {
|
||||||
|
errInfo := fmt.Sprintf("[panic] err: %v\nstack: %s\n", err, getCurrentGoroutineStack())
|
||||||
|
log.Errorf("panic init storage: %s", errInfo)
|
||||||
|
driverStorage.SetStatus(errInfo)
|
||||||
|
MustSaveDriverStorage(storageDriver)
|
||||||
|
storagesMap.Delete(driverStorage.MountPath)
|
||||||
|
}
|
||||||
|
}()
|
||||||
// Unmarshal Addition
|
// Unmarshal Addition
|
||||||
err = utils.Json.UnmarshalFromString(driverStorage.Addition, storageDriver.GetAddition())
|
err = utils.Json.UnmarshalFromString(driverStorage.Addition, storageDriver.GetAddition())
|
||||||
if err == nil {
|
if err == nil {
|
||||||
|
Reference in New Issue
Block a user