版本发布 8
## What's Changed * refactor: move Build to be after Domain for readability on core, before Meta on plugins by @pcfreak30 in https://github.com/LumeWeb/portal/pull/577 * chore(deps): bump golang.org/x/crypto from 0.28.0 to 0.29.0 by @dependabot in https://github.com/LumeWeb/portal/pull/580 * chore(deps): bump github.com/redis/go-redis/v9 from 9.6.2 to 9.7.0 by @dependabot in https://github.com/LumeWeb/portal/pull/579 * chore(deps): bump github.com/aws/aws-sdk-go-v2 from 1.32.3 to 1.32.4 by @dependabot in https://github.com/LumeWeb/portal/pull/578 * chore(deps): bump github.com/knadh/koanf/v2 from 2.1.1 to 2.1.2 by @dependabot in https://github.com/LumeWeb/portal/pull/582 * chore(deps): bump github.com/aws/aws-sdk-go-v2/credentials from 1.17.42 to 1.17.44 by @dependabot in https://github.com/LumeWeb/portal/pull/581 * feat(renter): add renterd cluster support by @pcfreak30 in https://github.com/LumeWeb/portal/pull/583 * refactor(db): implement cluster-aware database migrations by @pcfreak30 in https://github.com/LumeWeb/portal/pull/584 * feat(config): add environment variable configuration support by @pcfreak30 in https://github.com/LumeWeb/portal/pull/585 * refactor(config, renter): reorganize Sia cluster validation logic by @pcfreak30 in https://github.com/LumeWeb/portal/pull/586 * chore(deps): bump github.com/casbin/gorm-adapter/v3 from 3.29.0 to 3.32.0 by @dependabot in https://github.com/LumeWeb/portal/pull/588 * chore(deps): bump github.com/aws/aws-sdk-go-v2/service/s3 from 1.66.2 to 1.67.0 by @dependabot in https://github.com/LumeWeb/portal/pull/590 * chore(deps): bump github.com/wneessen/go-mail from 0.5.1 to 0.5.2 by @dependabot in https://github.com/LumeWeb/portal/pull/589 * chore(deps): bump github.com/aws/aws-sdk-go-v2 from 1.32.4 to 1.32.5 by @dependabot in https://github.com/LumeWeb/portal/pull/594 * chore(deps): bump github.com/casbin/casbin/v2 from 2.100.0 to 2.101.0 by @dependabot in https://github.com/LumeWeb/portal/pull/592 * chore(deps): bump github.com/aws/aws-sdk-go-v2/service/s3 from 1.67.0 to 1.69.0 by @dependabot in https://github.com/LumeWeb/portal/pull/593 * chore(deps): bump github.com/aws/aws-sdk-go-v2/config from 1.28.1 to 1.28.6 by @dependabot in https://github.com/LumeWeb/portal/pull/595 * chore(deps): bump go.etcd.io/etcd/client/v3 from 3.5.16 to 3.5.17 by @dependabot in https://github.com/LumeWeb/portal/pull/597 * chore(deps): bump github.com/aws/aws-sdk-go-v2/service/s3 from 1.69.0 to 1.70.0 by @dependabot in https://github.com/LumeWeb/portal/pull/596 * chore(deps): bump github.com/aws/aws-sdk-go-v2/service/s3 from 1.70.0 to 1.71.0 by @dependabot in https://github.com/LumeWeb/portal/pull/599 * chore(deps): bump gorm.io/datatypes from 1.2.4 to 1.2.5 by @dependabot in https://github.com/LumeWeb/portal/pull/600 * chore(deps): bump golang.org/x/crypto from 0.29.0 to 0.30.0 by @dependabot in https://github.com/LumeWeb/portal/pull/602 * feat(config): add volatile flag to prevent config sync and persistence by @pcfreak30 in https://github.com/LumeWeb/portal/pull/603 * refactor(config): create dedicated constants file and add ENV_PREFIX by @pcfreak30 in https://github.com/LumeWeb/portal/pull/604 * chore: update mapstructure by @pcfreak30 in https://github.com/LumeWeb/portal/pull/605 * chore(deps): bump golang.org/x/crypto from 0.30.0 to 0.31.0 in the go_modules group by @dependabot in https://github.com/LumeWeb/portal/pull/606 * fix(config): merging core env and core config wrongly by @pcfreak30 in https://github.com/LumeWeb/portal/pull/607 * fix(build): if we have a commit, get the 1st 8 chars, don't access as a direct slice by @pcfreak30 in https://github.com/LumeWeb/portal/pull/608 * feat: add cli command system with urfave/cli. Includes a version and config-env command by @pcfreak30 in https://github.com/LumeWeb/portal/pull/609 * refactor(renter): nuke host manager system and require operator to manage hosts and prices directly by @pcfreak30 in https://github.com/LumeWeb/portal/pull/610 * chore: remove old Dockerfiles by @pcfreak30 in https://github.com/LumeWeb/portal/pull/611 * chore: need to update mapstructure replacement and sync with dependency by @pcfreak30 in https://github.com/LumeWeb/portal/pull/612 * refactor: put cli under cmd/internal, and move init'ing the cli to cmd/main by @pcfreak30 in https://github.com/LumeWeb/portal/pull/613 * refactor(cli): fix import cycle by @pcfreak30 in https://github.com/LumeWeb/portal/pull/614 * refactor: need to add both Main and main to cmd/portal so xportal can use it by @pcfreak30 in https://github.com/LumeWeb/portal/pull/615 * refactor(cmd): restructure package layout and improve error handling by @pcfreak30 in https://github.com/LumeWeb/portal/pull/616 * refactor(cli): add portal_embed pkg by @pcfreak30 in https://github.com/LumeWeb/portal/pull/617 * fix(cli): use Main not main by @pcfreak30 in https://github.com/LumeWeb/portal/pull/618 * fix(cli): rename package to portal_embed by @pcfreak30 in https://github.com/LumeWeb/portal/pull/619 * refactor(db): add tls support, with skip verify for self-signed certs by @pcfreak30 in https://github.com/LumeWeb/portal/pull/620 * Refactor config by @pcfreak30 in https://github.com/LumeWeb/portal/pull/626 * chore(deps): bump github.com/casbin/casbin/v2 from 2.101.0 to 2.102.0 by @dependabot in https://github.com/LumeWeb/portal/pull/622 * chore(deps): bump gorm.io/driver/sqlite from 1.5.6 to 1.5.7 by @dependabot in https://github.com/LumeWeb/portal/pull/624 * Refactor config by @pcfreak30 in https://github.com/LumeWeb/portal/pull/627 * refactor(cmd): pass cmd to NewManager to prevent flag error by @pcfreak30 in https://github.com/LumeWeb/portal/pull/628 * Refactor db by @pcfreak30 in https://github.com/LumeWeb/portal/pull/629 * Refactor config by @pcfreak30 in https://github.com/LumeWeb/portal/pull/630 * refactor(config, cmd): have config-env print the config setting in do… by @pcfreak30 in https://github.com/LumeWeb/portal/pull/631 * refactor(db): add more debug logging inside the database parsing by @pcfreak30 in https://github.com/LumeWeb/portal/pull/632 * refactor(db): fix migrations by fetching missing core registered models as well and merging by @pcfreak30 in https://github.com/LumeWeb/portal/pull/633 * refactor(db): optimize etcd lease keepalive to use streaming KeepAlive by @pcfreak30 in https://github.com/LumeWeb/portal/pull/639 * Refactor config by @pcfreak30 in https://github.com/LumeWeb/portal/pull/640 * chore(deps): bump github.com/aws/aws-sdk-go-v2 from 1.32.6 to 1.32.7 by @dependabot in https://github.com/LumeWeb/portal/pull/636 * refactor(config): improve etcd manager thread safety and API by @pcfreak30 in https://github.com/LumeWeb/portal/pull/641 * chore(deps): bump github.com/aws/aws-sdk-go-v2/credentials from 1.17.47 to 1.17.48 by @dependabot in https://github.com/LumeWeb/portal/pull/642 * chore(deps): bump github.com/aws/aws-sdk-go-v2/config from 1.28.6 to 1.28.7 by @dependabot in https://github.com/LumeWeb/portal/pull/637 * refactor(config): use etcd manager by @pcfreak30 in https://github.com/LumeWeb/portal/pull/643 * Refactor renter by @pcfreak30 in https://github.com/LumeWeb/portal/pull/644 **Full Changelog**: https://github.com/LumeWeb/portal/compare/v0.3.2...v0.3.3
## What's Changed * fix: dont pass nil as a second argument by @pcfreak30 in https://github.com/LumeWeb/portal/pull/574 * chore: release by @github-actions in https://github.com/LumeWeb/portal/pull/575 * Version Packages by @github-actions in https://github.com/LumeWeb/portal/pull/576 **Full Changelog**: https://github.com/LumeWeb/portal/compare/v0.3.1...v0.3.2
## What's Changed * refactor(http): call AddPluginWithBuild if we have Version set by @pcfreak30 in https://github.com/LumeWeb/portal/pull/571 * chore: release by @github-actions in https://github.com/LumeWeb/portal/pull/572 * Version Packages by @github-actions in https://github.com/LumeWeb/portal/pull/573 **Full Changelog**: https://github.com/LumeWeb/portal/compare/v0.3.0...v0.3.1
## What's Changed * refactor(renter): implement weighted price averaging with decay for Sia by @pcfreak30 in https://github.com/LumeWeb/portal/pull/547 * refactor(cron): support one off jobs of recurring jobs without interfering with the primary by @pcfreak30 in https://github.com/LumeWeb/portal/pull/548 * refactor(cron): improve one-off job handling and cleanup mechanism by @pcfreak30 in https://github.com/LumeWeb/portal/pull/549 * feat(renter)!: implement host scanner with hostscore.info API integration by @pcfreak30 in https://github.com/LumeWeb/portal/pull/550 * refactor(renter): add retry support on host scan by @pcfreak30 in https://github.com/LumeWeb/portal/pull/551 * refactor(renter): extract price tracking logic into dedicated component by @pcfreak30 in https://github.com/LumeWeb/portal/pull/552 * refactor(renter): add Hosts method for direct usable host querying by @pcfreak30 in https://github.com/LumeWeb/portal/pull/553 * refactor(renter): improve host scanning and autopilot testing by @pcfreak30 in https://github.com/LumeWeb/portal/pull/554 * refactor(renter): simplify price calculation and logging in host scanner by @pcfreak30 in https://github.com/LumeWeb/portal/pull/555 * feat(renter): implement advanced host scanning and price optimization by @pcfreak30 in https://github.com/LumeWeb/portal/pull/556 * refactor(auth): enhance JWT token validation with ED25519 by @pcfreak30 in https://github.com/LumeWeb/portal/pull/557 * chore(deps): bump github.com/gabriel-vasile/mimetype from 1.4.5 to 1.4.6 by @dependabot in https://github.com/LumeWeb/portal/pull/562 * chore(deps): bump github.com/casbin/gorm-adapter/v3 from 3.28.0 to 3.29.0 by @dependabot in https://github.com/LumeWeb/portal/pull/560 * chore(deps): bump go.uber.org/zap/exp from 0.2.0 to 0.3.0 by @dependabot in https://github.com/LumeWeb/portal/pull/559 * feat: add build information system by @pcfreak30 in https://github.com/LumeWeb/portal/pull/563 * refactor: remove build host by @pcfreak30 in https://github.com/LumeWeb/portal/pull/564 * refactor(build): restructure build info implementation by @pcfreak30 in https://github.com/LumeWeb/portal/pull/565 * refactor: externalize platform detection by @pcfreak30 in https://github.com/LumeWeb/portal/pull/566 * chore(ci): add workflow to trigger a release pr, which will trigger changesets by @pcfreak30 in https://github.com/LumeWeb/portal/pull/567 * chore: release by @github-actions in https://github.com/LumeWeb/portal/pull/569 * Version Packages by @github-actions in https://github.com/LumeWeb/portal/pull/570 **Full Changelog**: https://github.com/LumeWeb/portal/compare/v0.2.1...v0.3.0
## What's Changed * chore(ci): update release workflow concurrency and triggers by @pcfreak30 in https://github.com/LumeWeb/portal/pull/541 * fix: dereference pointer by @pcfreak30 in https://github.com/LumeWeb/portal/pull/542 * fix(tus): wrong index name by @pcfreak30 in https://github.com/LumeWeb/portal/pull/543 * ci: update golang-versioner-action by @pcfreak30 in https://github.com/LumeWeb/portal/pull/544 * chore: release by @pcfreak30 in https://github.com/LumeWeb/portal/pull/545 * Version Packages by @github-actions in https://github.com/LumeWeb/portal/pull/546 **Full Changelog**: https://github.com/LumeWeb/portal/compare/v0.2.0...v0.2.1
## What's Changed * ci: update build process and docker image by @pcfreak30 in https://github.com/LumeWeb/portal/pull/234 * ci: update docker process to use a .debug dockerfile to run delve by @pcfreak30 in https://github.com/LumeWeb/portal/pull/235 * ci: use debug tag suffix by @pcfreak30 in https://github.com/LumeWeb/portal/pull/236 * ci: always add a replace switch to use the local packages during buil… by @pcfreak30 in https://github.com/LumeWeb/portal/pull/237 * Fix events by @pcfreak30 in https://github.com/LumeWeb/portal/pull/238 * refactor(core): need to copy BasicEvent to our Event struct so we don… by @pcfreak30 in https://github.com/LumeWeb/portal/pull/239 * ci: update docker matrix to add a dashboard-only variation by @pcfreak30 in https://github.com/LumeWeb/portal/pull/240 * ci: wrong matrix name for dashboard entry by @pcfreak30 in https://github.com/LumeWeb/portal/pull/241 * Update ci by @pcfreak30 in https://github.com/LumeWeb/portal/pull/242 * Fix shutdown errors by @pcfreak30 in https://github.com/LumeWeb/portal/pull/243 * refactor: move events to a dedicated package outside of core by @pcfreak30 in https://github.com/LumeWeb/portal/pull/244 * fix: bad event receivers by @pcfreak30 in https://github.com/LumeWeb/portal/pull/245 * chore(deps): bump go.sia.tech/core from 0.2.7 to 0.2.8 by @dependabot in https://github.com/LumeWeb/portal/pull/250 * chore(deps): bump github.com/aws/aws-sdk-go-v2/config from 1.27.19 to 1.27.21 by @dependabot in https://github.com/LumeWeb/portal/pull/249 * chore(deps): bump gorm.io/driver/sqlite from 1.5.5 to 1.5.6 by @dependabot in https://github.com/LumeWeb/portal/pull/247 * chore(deps): bump go.sia.tech/coreutils from 0.0.6 to 0.0.7 by @dependabot in https://github.com/LumeWeb/portal/pull/248 * feat: add support for a cron entity at the plugin level by @pcfreak30 in https://github.com/LumeWeb/portal/pull/251 * refactor: make PluginInfo.Cron return a CronFactory type which accept… by @pcfreak30 in https://github.com/LumeWeb/portal/pull/252 * Refactor cron by @pcfreak30 in https://github.com/LumeWeb/portal/pull/253 * refactor: multipart upload needs the offset to be computed and provid… by @pcfreak30 in https://github.com/LumeWeb/portal/pull/254 * refactor(renter): don't pre-allocate uploadParts by @pcfreak30 in https://github.com/LumeWeb/portal/pull/255 * Refactor storage status by @pcfreak30 in https://github.com/LumeWeb/portal/pull/256 * feat(event): add event fire helpers for UserSubdomainSetEvent and Use… by @pcfreak30 in https://github.com/LumeWeb/portal/pull/257 * refactor(mailer): update how email processing is handled, how we regi… by @pcfreak30 in https://github.com/LumeWeb/portal/pull/258 * ci: update golang-versioner-action by @pcfreak30 in https://github.com/LumeWeb/portal/pull/259 * refactor(mailer): extract mailer templates to account plugin by @pcfreak30 in https://github.com/LumeWeb/portal/pull/260 * refactor(portal): split up logic in init, start, and stop to private … by @pcfreak30 in https://github.com/LumeWeb/portal/pull/261 * Refactor portal by @pcfreak30 in https://github.com/LumeWeb/portal/pull/262 * chore(deps): bump github.com/samber/lo from 1.39.0 to 1.44.0 by @dependabot in https://github.com/LumeWeb/portal/pull/267 * chore(deps): bump github.com/aws/aws-sdk-go-v2 from 1.30.0 to 1.30.1 by @dependabot in https://github.com/LumeWeb/portal/pull/266 * chore(deps): bump github.com/casbin/casbin/v2 from 2.95.0 to 2.97.0 by @dependabot in https://github.com/LumeWeb/portal/pull/264 * chore(deps): bump github.com/aws/aws-sdk-go-v2/service/s3 from 1.55.2 to 1.57.1 by @dependabot in https://github.com/LumeWeb/portal/pull/263 * chore(deps): bump github.com/aws/aws-sdk-go-v2/config from 1.27.21 to 1.27.23 by @dependabot in https://github.com/LumeWeb/portal/pull/265 * feat: add support for tracking the config in etcd and syncing between… by @pcfreak30 in https://github.com/LumeWeb/portal/pull/268 * refactor(config): refactor config file lookup and directory checks to… by @pcfreak30 in https://github.com/LumeWeb/portal/pull/269 * fix: we somehow lost registering the protocols and apis themselves 😅 by @pcfreak30 in https://github.com/LumeWeb/portal/pull/270 * feat: add a boot event that triggers at the end of startup by @pcfreak30 in https://github.com/LumeWeb/portal/pull/271 * chore(deps): bump golang.org/x/crypto from 0.24.0 to 0.25.0 by @dependabot in https://github.com/LumeWeb/portal/pull/276 * chore(deps): bump go.sia.tech/coreutils from 0.0.7 to 0.1.0 by @dependabot in https://github.com/LumeWeb/portal/pull/272 * chore(deps): bump github.com/aws/aws-sdk-go-v2/config from 1.27.23 to 1.27.24 by @dependabot in https://github.com/LumeWeb/portal/pull/274 * chore(deps): bump github.com/aws/aws-sdk-go-v2/service/s3 from 1.57.1 to 1.58.0 by @dependabot in https://github.com/LumeWeb/portal/pull/275 * refactor!: implement StorageHash interface and revamp upload process by @pcfreak30 in https://github.com/LumeWeb/portal/pull/277 * Fix price tracker by @pcfreak30 in https://github.com/LumeWeb/portal/pull/279 * fix(renter): refactor updatePrices method to use GORM subquery for fe… by @pcfreak30 in https://github.com/LumeWeb/portal/pull/280 * fix(renter): need to use a more sql agnostic query in price-tracker f… by @pcfreak30 in https://github.com/LumeWeb/portal/pull/281 * refactor(cron): improve job management and improve error handling by @pcfreak30 in https://github.com/LumeWeb/portal/pull/282 * fix(cron): need to register correct model for CronJobLog by @pcfreak30 in https://github.com/LumeWeb/portal/pull/283 * feat(db): add RetryOnLock helper to do an exponential retry on the qu… by @pcfreak30 in https://github.com/LumeWeb/portal/pull/284 * refactor(services): have all service db operations use db.RetryOnLock by @pcfreak30 in https://github.com/LumeWeb/portal/pull/285 * chore(deps): bump google.golang.org/grpc from 1.64.0 to 1.64.1 in the go_modules group by @dependabot in https://github.com/LumeWeb/portal/pull/286 * refactor(renter): improve price tracking and database compatibility by @pcfreak30 in https://github.com/LumeWeb/portal/pull/287 * refactor(db): add jitter to RetryOnLock by @pcfreak30 in https://github.com/LumeWeb/portal/pull/288 * chore: upgrade github.com/go-co-op/gocron/v2 and remove use of fork by @pcfreak30 in https://github.com/LumeWeb/portal/pull/289 * refactor(event): add helpers getEvent and assertEventType to reduce t… by @pcfreak30 in https://github.com/LumeWeb/portal/pull/290 * fix(event): wrong const by @pcfreak30 in https://github.com/LumeWeb/portal/pull/291 * refactor(core): Context is now an interface to match the stdlib desig… by @pcfreak30 in https://github.com/LumeWeb/portal/pull/292 * Events refactor by @pcfreak30 in https://github.com/LumeWeb/portal/pull/293 * Service helper by @pcfreak30 in https://github.com/LumeWeb/portal/pull/294 * Config refactor by @pcfreak30 in https://github.com/LumeWeb/portal/pull/295 * chore(deps): bump github.com/wneessen/go-mail from 0.4.1 to 0.4.2 by @dependabot in https://github.com/LumeWeb/portal/pull/300 * chore(deps): bump github.com/aws/aws-sdk-go-v2/credentials from 1.17.24 to 1.17.26 by @dependabot in https://github.com/LumeWeb/portal/pull/299 * chore(deps): bump go.sia.tech/coreutils from 0.1.0 to 0.1.2 by @dependabot in https://github.com/LumeWeb/portal/pull/298 * chore(deps): bump github.com/getkin/kin-openapi from 0.125.0 to 0.126.0 by @dependabot in https://github.com/LumeWeb/portal/pull/296 * chore(deps): bump github.com/aws/aws-sdk-go-v2/service/s3 from 1.58.0 to 1.58.2 by @dependabot in https://github.com/LumeWeb/portal/pull/297 * feat: add support for an api endpoint at the root that will serve the… by @pcfreak30 in https://github.com/LumeWeb/portal/pull/301 * refactor(http): allow meta api to be served anywhere in a fallback si… by @pcfreak30 in https://github.com/LumeWeb/portal/pull/302 * fix(http): add cors middleware to root api router by @pcfreak30 in https://github.com/LumeWeb/portal/pull/303 * fix(core): override Context Value method to correctly delegate to our… by @pcfreak30 in https://github.com/LumeWeb/portal/pull/304 * fix(core): fix ctx circular reference by @pcfreak30 in https://github.com/LumeWeb/portal/pull/305 * refactor(cron): Implement clustering support and enhance job management by @pcfreak30 in https://github.com/LumeWeb/portal/pull/311 * refactor(cron): remove default switch case by @pcfreak30 in https://github.com/LumeWeb/portal/pull/312 * chore(deps): bump github.com/samber/lo from 1.44.0 to 1.46.0 by @dependabot in https://github.com/LumeWeb/portal/pull/310 * chore(deps): bump github.com/casbin/casbin/v2 from 2.97.0 to 2.98.0 by @dependabot in https://github.com/LumeWeb/portal/pull/309 * chore(deps): bump gorm.io/gorm from 1.25.10 to 1.25.11 by @dependabot in https://github.com/LumeWeb/portal/pull/308 * chore(deps): bump go.sia.tech/coreutils from 0.1.2 to 0.2.1 by @dependabot in https://github.com/LumeWeb/portal/pull/307 * Price tracker refactor by @pcfreak30 in https://github.com/LumeWeb/portal/pull/313 * chore: update redis by @pcfreak30 in https://github.com/LumeWeb/portal/pull/314 * refactor(db): change Upload.HashType to uint64 by @pcfreak30 in https://github.com/LumeWeb/portal/pull/315 * refactor(core): change UploadMetadata.HashType to uint64 by @pcfreak30 in https://github.com/LumeWeb/portal/pull/316 * fix(pin): DeletePinByHash and PinByHash need to use the StorageHash i… by @pcfreak30 in https://github.com/LumeWeb/portal/pull/317 * fix(storage): dont cast decoded.Code by @pcfreak30 in https://github.com/LumeWeb/portal/pull/318 * refactor(middleware): dont make GetUserFromContext or GetAuthTokenFro… by @pcfreak30 in https://github.com/LumeWeb/portal/pull/319 * refactor(storage): make NewStorageHash type uint64 to match mh.Multih… by @pcfreak30 in https://github.com/LumeWeb/portal/pull/320 * refactor(storage): add NewStorageHashFromMultihashBytes by @pcfreak30 in https://github.com/LumeWeb/portal/pull/321 * feat(renter): created SlabSize method and have UploadObjectMultipart … by @pcfreak30 in https://github.com/LumeWeb/portal/pull/322 * refactor(core, service): add Type() to StorageHash and be sure to use… by @pcfreak30 in https://github.com/LumeWeb/portal/pull/323 * chore(deps): bump go.etcd.io/etcd/client/v3 from 3.5.14 to 3.5.15 by @dependabot in https://github.com/LumeWeb/portal/pull/327 * chore(deps): bump github.com/aws/aws-sdk-go-v2/config from 1.27.24 to 1.27.27 by @dependabot in https://github.com/LumeWeb/portal/pull/326 * chore(deps): bump github.com/gabriel-vasile/mimetype from 1.4.4 to 1.4.5 by @dependabot in https://github.com/LumeWeb/portal/pull/324 * feat: implement tus db service, re-usable handler abstraction, config… by @pcfreak30 in https://github.com/LumeWeb/portal/pull/328 * refactor: update cron system to use generics so that we don't need to… by @pcfreak30 in https://github.com/LumeWeb/portal/pull/329 * feat: add an api to the storage service for temporary uploads, that w… by @pcfreak30 in https://github.com/LumeWeb/portal/pull/330 * fix: always close the reader stream after uploading by @pcfreak30 in https://github.com/LumeWeb/portal/pull/331 * feat: add an api to the storage service for temporary uploads, that w… by @pcfreak30 in https://github.com/LumeWeb/portal/pull/332 * feat(core, storage): add S3GetTemporaryUpload to fetch uploads by @pcfreak30 in https://github.com/LumeWeb/portal/pull/333 * feat(core, storage): add S3DeleteTemporaryUpload to clean up uploads by @pcfreak30 in https://github.com/LumeWeb/portal/pull/334 * refactor(core, metadata): remove skipExisting on SaveUpload and simpl… by @pcfreak30 in https://github.com/LumeWeb/portal/pull/335 * refactor(metadata): ensure after FirstOrCreate we save any changes, b… by @pcfreak30 in https://github.com/LumeWeb/portal/pull/336 * refactor(core): add a GetContext getter to get the underlying embedde… by @pcfreak30 in https://github.com/LumeWeb/portal/pull/337 * fix(core, storage): we need to pass the data size to S3TemporaryUploa… by @pcfreak30 in https://github.com/LumeWeb/portal/pull/338 * fix(storage): bucket needs to be the BufferBucket from the config, no… by @pcfreak30 in https://github.com/LumeWeb/portal/pull/339 * fix(storage): bucket needs to be the BufferBucket from the config in … by @pcfreak30 in https://github.com/LumeWeb/portal/pull/340 * fix(cron): startDeadJobDetection needs to be started, use the ctx dir… by @pcfreak30 in https://github.com/LumeWeb/portal/pull/341 * fix(cron): on listenerFuncNoError need to fetch the record to get exi… by @pcfreak30 in https://github.com/LumeWeb/portal/pull/342 * fix(cron): on rescheduleJob, call kickOffJob instead by @pcfreak30 in https://github.com/LumeWeb/portal/pull/343 * fix(cron): refactor listenerFuncErr and updateJobState. have updateJo… by @pcfreak30 in https://github.com/LumeWeb/portal/pull/344 * fix(cron): on listenerFuncErr, separate the job error from the other … by @pcfreak30 in https://github.com/LumeWeb/portal/pull/345 * refactor(config): update cache to be a dedicated file, use a Defaults… by @pcfreak30 in https://github.com/LumeWeb/portal/pull/346 * fix(config): need to cast to string by @pcfreak30 in https://github.com/LumeWeb/portal/pull/347 * fix(cron): support catching both panics and normal cron errors by @pcfreak30 in https://github.com/LumeWeb/portal/pull/348 * fix(renter): use separate sql queries for mysql and sqlite for the pr… by @pcfreak30 in https://github.com/LumeWeb/portal/pull/349 * fix(db): add to isLockError the mysql too many connections error by @pcfreak30 in https://github.com/LumeWeb/portal/pull/350 * refactor: EPIC: Implement unified request-based architecture by @pcfreak30 in https://github.com/LumeWeb/portal/pull/354 * refactor(cron): improve cron job reliability and error handling by @pcfreak30 in https://github.com/LumeWeb/portal/pull/355 * fix(cron): dont log job props as it will be nil, use uuid by @pcfreak30 in https://github.com/LumeWeb/portal/pull/356 * fix(db, uploads): optimize database operations and error handling by @pcfreak30 in https://github.com/LumeWeb/portal/pull/357 * refactor(core): CreateRequest needs to handle both protocol and uploa… by @pcfreak30 in https://github.com/LumeWeb/portal/pull/358 * fix(tus): update CreateRequest call by @pcfreak30 in https://github.com/LumeWeb/portal/pull/359 * refactor(request): optimize and fix upload operation handling by @pcfreak30 in https://github.com/LumeWeb/portal/pull/360 * fix(request): QueryUploadData needs to use isUploadOperation and abor… by @pcfreak30 in https://github.com/LumeWeb/portal/pull/361 * fix(core,request, tus): QueryUploadData needs to test and fetch the u… by @pcfreak30 in https://github.com/LumeWeb/portal/pull/362 * fix(request): QueryUploadData needs to use uploadMethod to fetch the … by @pcfreak30 in https://github.com/LumeWeb/portal/pull/363 * refactor(cron): split queries up into multiple transactions by @pcfreak30 in https://github.com/LumeWeb/portal/pull/364 * fix(request): improve upload handling and data querying by @pcfreak30 in https://github.com/LumeWeb/portal/pull/365 * Refactor request tus by @pcfreak30 in https://github.com/LumeWeb/portal/pull/366 * fix(pin): Preload the Pin relation, not Request by @pcfreak30 in https://github.com/LumeWeb/portal/pull/367 * fix(pin): DeletePinByHash needs to just use core.PinFilter and not pa… by @pcfreak30 in https://github.com/LumeWeb/portal/pull/368 * refactor(request): simplify data queries and improve filtering by @pcfreak30 in https://github.com/LumeWeb/portal/pull/369 * refactor(cron): update heartbeat timer to 5 minutes, and use a const by @pcfreak30 in https://github.com/LumeWeb/portal/pull/370 * chore(deps): bump go.sia.tech/renterd from 1.0.7 to 1.0.8 by @dependabot in https://github.com/LumeWeb/portal/pull/353 * chore(deps): bump github.com/getkin/kin-openapi from 0.126.0 to 0.127.0 by @dependabot in https://github.com/LumeWeb/portal/pull/352 * chore(deps): bump github.com/aws/aws-sdk-go-v2/service/s3 from 1.58.2 to 1.58.3 by @dependabot in https://github.com/LumeWeb/portal/pull/351 * fix(request): update filter where filters to match upload data filter… by @pcfreak30 in https://github.com/LumeWeb/portal/pull/371 * chore(deps): bump golang.org/x/crypto from 0.25.0 to 0.26.0 by @dependabot in https://github.com/LumeWeb/portal/pull/374 * chore(deps): bump go.sia.tech/core from 0.4.1 to 0.4.3 by @dependabot in https://github.com/LumeWeb/portal/pull/373 * feat(cron): add configuration to enable/disable cron and set the max … by @pcfreak30 in https://github.com/LumeWeb/portal/pull/375 * chore(deps): bump go.sia.tech/coreutils from 0.2.1 to 0.2.5 by @dependabot in https://github.com/LumeWeb/portal/pull/372 * refactor(cron): query and process queued cron tasks at the end of sta… by @pcfreak30 in https://github.com/LumeWeb/portal/pull/376 * chore(deps): update cron dependency by @pcfreak30 in https://github.com/LumeWeb/portal/pull/377 * Refactor core by @pcfreak30 in https://github.com/LumeWeb/portal/pull/378 * Refactor events by @pcfreak30 in https://github.com/LumeWeb/portal/pull/379 * refactor(core): always wrap the ctx db getter in a withcontext to tie… by @pcfreak30 in https://github.com/LumeWeb/portal/pull/380 * refactor(core, portal): add a DBMigration type and change model setup… by @pcfreak30 in https://github.com/LumeWeb/portal/pull/381 * fix(core): TUSService does not inherit Service by @pcfreak30 in https://github.com/LumeWeb/portal/pull/382 * fix(portal): we need to range over plugin.Models, abd check it, not t… by @pcfreak30 in https://github.com/LumeWeb/portal/pull/383 * Config updates by @pcfreak30 in https://github.com/LumeWeb/portal/pull/384 * fix(portal): malformed model range by @pcfreak30 in https://github.com/LumeWeb/portal/pull/385 * fix(cron): prevent call to Lock from triggering a panic by checking f… by @pcfreak30 in https://github.com/LumeWeb/portal/pull/386 * refactor(config): require etcd to be configured in cluster mode by @pcfreak30 in https://github.com/LumeWeb/portal/pull/387 * refactor(tus): add FailUpload and centralize s3 delete code by @pcfreak30 in https://github.com/LumeWeb/portal/pull/388 * refactor(tus): change FailUpload to FailUploadById and don't try doin… by @pcfreak30 in https://github.com/LumeWeb/portal/pull/389 * fix(request): DeleteRequest uploadDataHandler needs to be GetUploadDa… by @pcfreak30 in https://github.com/LumeWeb/portal/pull/390 * refactor(portal): need to init the database first by @pcfreak30 in https://github.com/LumeWeb/portal/pull/391 * refactor(cron): update cluster-aware job monitoring and fix handling … by @pcfreak30 in https://github.com/LumeWeb/portal/pull/392 * refactor(cron): consolidate job state update logic by @pcfreak30 in https://github.com/LumeWeb/portal/pull/393 * refactor(cron): improve job querying and update process by @pcfreak30 in https://github.com/LumeWeb/portal/pull/394 * Tus set hash by @pcfreak30 in https://github.com/LumeWeb/portal/pull/395 * refactor(request): add user id to request filter by @pcfreak30 in https://github.com/LumeWeb/portal/pull/396 * refactor(request): manually use the table method and dynamically comp… by @pcfreak30 in https://github.com/LumeWeb/portal/pull/397 * refactor(tus): add afterFunc to TUSDefaultUploadCreatedHandler so we … by @pcfreak30 in https://github.com/LumeWeb/portal/pull/398 * refactor(tus): add UploadProcessing method and use it in DefaultUploa… by @pcfreak30 in https://github.com/LumeWeb/portal/pull/399 * refactor(pin): update pin query to use preloaded associations by @pcfreak30 in https://github.com/LumeWeb/portal/pull/400 * chore(deps): bump github.com/samber/lo from 1.46.0 to 1.47.0 by @dependabot in https://github.com/LumeWeb/portal/pull/405 * chore(deps): bump github.com/aws/aws-sdk-go-v2/credentials from 1.17.27 to 1.17.28 by @dependabot in https://github.com/LumeWeb/portal/pull/404 * chore(deps): bump github.com/wneessen/go-mail from 0.4.2 to 0.4.3 by @dependabot in https://github.com/LumeWeb/portal/pull/402 * chore(deps): bump github.com/aws/aws-sdk-go-v2/service/s3 from 1.58.3 to 1.59.0 by @dependabot in https://github.com/LumeWeb/portal/pull/401 * refactor(db): remove Download model, it is going to the billing plugin. by @pcfreak30 in https://github.com/LumeWeb/portal/pull/406 * Refactor pins by @pcfreak30 in https://github.com/LumeWeb/portal/pull/407 * refactor(core): add GetUploadByID to metadata service by @pcfreak30 in https://github.com/LumeWeb/portal/pull/408 * feat(db): add RetryableTransaction helper by @pcfreak30 in https://github.com/LumeWeb/portal/pull/409 * refactor(cron): add CronTaskDefinitionDaily helper by @pcfreak30 in https://github.com/LumeWeb/portal/pull/410 * chore(deps): bump go.sia.tech/core from 0.4.3 to 0.4.4 by @dependabot in https://github.com/LumeWeb/portal/pull/415 * chore(deps): bump github.com/aws/aws-sdk-go-v2/config from 1.27.27 to 1.27.31 by @dependabot in https://github.com/LumeWeb/portal/pull/414 * chore(deps): bump github.com/aws/aws-sdk-go-v2/service/s3 from 1.59.0 to 1.60.1 by @dependabot in https://github.com/LumeWeb/portal/pull/412 * chore(deps): bump go.sia.tech/coreutils from 0.2.5 to 0.3.0 by @dependabot in https://github.com/LumeWeb/portal/pull/411 * refactor(event, service): update and add new events by @pcfreak30 in https://github.com/LumeWeb/portal/pull/416 * chore(deps): bump go.sia.tech/coreutils from 0.3.0 to 0.3.2 by @dependabot in https://github.com/LumeWeb/portal/pull/421 * chore(deps): bump github.com/casbin/casbin/v2 from 2.98.0 to 2.99.0 by @dependabot in https://github.com/LumeWeb/portal/pull/417 * chore(deps): bump github.com/aws/aws-sdk-go-v2/service/s3 from 1.60.1 to 1.61.0 by @dependabot in https://github.com/LumeWeb/portal/pull/419 * refactor(db): if result in RetryOnLock is nil, get the caller, log, t… by @pcfreak30 in https://github.com/LumeWeb/portal/pull/422 * fix(request): need to properly conditionally handle upload operation… by @pcfreak30 in https://github.com/LumeWeb/portal/pull/423 * chore(deps): bump golang.org/x/crypto from 0.26.0 to 0.27.0 by @dependabot in https://github.com/LumeWeb/portal/pull/425 * chore(deps): bump github.com/rs/cors from 1.11.0 to 1.11.1 by @dependabot in https://github.com/LumeWeb/portal/pull/420 * chore(deps): bump github.com/aws/aws-sdk-go-v2 from 1.30.4 to 1.30.5 by @dependabot in https://github.com/LumeWeb/portal/pull/424 * chore(deps): bump github.com/wneessen/go-mail from 0.4.3 to 0.4.4 by @dependabot in https://github.com/LumeWeb/portal/pull/426 * chore(deps): bump github.com/aws/aws-sdk-go-v2/config from 1.27.31 to 1.27.33 by @dependabot in https://github.com/LumeWeb/portal/pull/427 * refactor(event): StorageObjectUploadedEvent should store the pin enti… by @pcfreak30 in https://github.com/LumeWeb/portal/pull/428 * fix(event): wrong method name by @pcfreak30 in https://github.com/LumeWeb/portal/pull/429 * refactor(event): add ip to StorageObjectUploadedEvent by @pcfreak30 in https://github.com/LumeWeb/portal/pull/430 * refactor(auth): add special support for remember me to extend the jwt… by @pcfreak30 in https://github.com/LumeWeb/portal/pull/431 * refactor(core,http): extend the portal meta structure to support feat… by @pcfreak30 in https://github.com/LumeWeb/portal/pull/432 * refactor(core,auth): Add LoginID method that will directly login and … by @pcfreak30 in https://github.com/LumeWeb/portal/pull/433 * refactor(core,http): Add APISubdomain helper method to HTTP service by @pcfreak30 in https://github.com/LumeWeb/portal/pull/434 * refactor(core,http): MetaPlugin should be PortalMetaPlugin by @pcfreak30 in https://github.com/LumeWeb/portal/pull/435 * refactor(http): ensure all feature flags are normalized to uppercase,… by @pcfreak30 in https://github.com/LumeWeb/portal/pull/436 * refactor(http): fix structure of PortalMetaPlugins by @pcfreak30 in https://github.com/LumeWeb/portal/pull/437 * refactor(user): update UpdateAccountInfo to use map[string]any by @pcfreak30 in https://github.com/LumeWeb/portal/pull/438 * refactor: add mutex on memoryCacher by @pcfreak30 in https://github.com/LumeWeb/portal/pull/439 * chore(deps): bump github.com/aws/aws-sdk-go-v2/service/s3 from 1.61.0 to 1.61.2 by @dependabot in https://github.com/LumeWeb/portal/pull/440 * chore(deps): bump github.com/AfterShip/email-verifier from 1.4.0 to 1.4.1 by @dependabot in https://github.com/LumeWeb/portal/pull/444 * chore(deps): bump gorm.io/gorm from 1.25.11 to 1.25.12 by @dependabot in https://github.com/LumeWeb/portal/pull/443 * chore(deps): bump go.etcd.io/etcd/client/v3 from 3.5.15 to 3.5.16 by @dependabot in https://github.com/LumeWeb/portal/pull/442 * chore(deps): bump github.com/aws/aws-sdk-go-v2/config from 1.27.33 to 1.27.34 by @dependabot in https://github.com/LumeWeb/portal/pull/441 * feat(account): implement account deletion functionality by @pcfreak30 in https://github.com/LumeWeb/portal/pull/445 * Refactor account errors by @pcfreak30 in https://github.com/LumeWeb/portal/pull/446 * refactor(db): remove APIKeys relation from user model by @pcfreak30 in https://github.com/LumeWeb/portal/pull/447 * refactor(auth): if the account is pending deletion, block the request by @pcfreak30 in https://github.com/LumeWeb/portal/pull/448 * Refactor errors by @pcfreak30 in https://github.com/LumeWeb/portal/pull/449 * refactor(auth): check if account is pending deletion in doLogin by @pcfreak30 in https://github.com/LumeWeb/portal/pull/450 * fix(user): RequestAccountDeletion query doesn't handle not found and … by @pcfreak30 in https://github.com/LumeWeb/portal/pull/451 * refactor(middleware): have pendingDelete use an account error by @pcfreak30 in https://github.com/LumeWeb/portal/pull/452 * Add Account verified by @pcfreak30 in https://github.com/LumeWeb/portal/pull/453 * Refactor events by @pcfreak30 in https://github.com/LumeWeb/portal/pull/454 * fix(event): FireUserActivatedEvent needs to use EVENT_USER_ACTIVATED by @pcfreak30 in https://github.com/LumeWeb/portal/pull/455 * refactor(core): optimize cookie handling to only output 1 cookie per … by @pcfreak30 in https://github.com/LumeWeb/portal/pull/456 * chore(deps): bump gorm.io/datatypes from 1.2.1 to 1.2.2 by @dependabot in https://github.com/LumeWeb/portal/pull/461 * chore(deps): bump github.com/aws/aws-sdk-go-v2/service/s3 from 1.61.2 to 1.63.1 by @dependabot in https://github.com/LumeWeb/portal/pull/460 * chore(deps): bump github.com/aws/aws-sdk-go-v2/credentials from 1.17.32 to 1.17.35 by @dependabot in https://github.com/LumeWeb/portal/pull/459 * chore(deps): bump github.com/casbin/casbin/v2 from 2.99.0 to 2.100.0 by @dependabot in https://github.com/LumeWeb/portal/pull/457 * chore(deps): bump github.com/aws/aws-sdk-go-v2/config from 1.27.34 to 1.27.37 by @dependabot in https://github.com/LumeWeb/portal/pull/458 * refactor(core, db, service): rename metadata service to upload service by @pcfreak30 in https://github.com/LumeWeb/portal/pull/462 * fix(event): need to register DownloadCompletedEvent by @pcfreak30 in https://github.com/LumeWeb/portal/pull/463 * refactor(db): add RequestStatusDuplicate to RequestStatusType by @pcfreak30 in https://github.com/LumeWeb/portal/pull/464 * refactor(core): add new error object ErrDuplicateRequest by @pcfreak30 in https://github.com/LumeWeb/portal/pull/465 * refactor(tus): if request status is duplicate, then no-op by @pcfreak30 in https://github.com/LumeWeb/portal/pull/466 * fix(email): need to set the subject by @pcfreak30 in https://github.com/LumeWeb/portal/pull/467 * refactor(middleware): add CORS middleware and refactor HTTP service by @pcfreak30 in https://github.com/LumeWeb/portal/pull/468 * refactor: allow UploadSize to handle both storage hashes and string u… by @pcfreak30 in https://github.com/LumeWeb/portal/pull/469 * fix(tus): use Type, not CIDType, but also store CIDType by @pcfreak30 in https://github.com/LumeWeb/portal/pull/470 * refactor(tus): allow CompleteUpload to take in multiple types by @pcfreak30 in https://github.com/LumeWeb/portal/pull/471 * refactor(tus, core): handle upload not found errors and improve statu… by @pcfreak30 in https://github.com/LumeWeb/portal/pull/476 * chore(deps): bump github.com/aws/aws-sdk-go-v2/credentials from 1.17.35 to 1.17.37 by @dependabot in https://github.com/LumeWeb/portal/pull/475 * chore(deps): bump github.com/aws/aws-sdk-go-v2/config from 1.27.37 to 1.27.39 by @dependabot in https://github.com/LumeWeb/portal/pull/472 * chore(deps): bump github.com/aws/aws-sdk-go-v2/service/s3 from 1.63.1 to 1.63.3 by @dependabot in https://github.com/LumeWeb/portal/pull/473 * chore(deps): bump go.sia.tech/core from 0.4.6 to 0.4.7 by @dependabot in https://github.com/LumeWeb/portal/pull/474 * chore(deps): update deps, and explicitly update coreutils to a master… by @pcfreak30 in https://github.com/LumeWeb/portal/pull/477 * chore(deps): update coreutils v2 by @pcfreak30 in https://github.com/LumeWeb/portal/pull/478 * refactor(config): if key return a nil value, and the value we are set… by @pcfreak30 in https://github.com/LumeWeb/portal/pull/479 * refactor(password): update reset link generation by @pcfreak30 in https://github.com/LumeWeb/portal/pull/480 * refactor(core): ensure security code generation uses both lower case … by @pcfreak30 in https://github.com/LumeWeb/portal/pull/481 * refactor(password): update resetUrl path by @pcfreak30 in https://github.com/LumeWeb/portal/pull/482 * Refactor password reset by @pcfreak30 in https://github.com/LumeWeb/portal/pull/483 * refactor(user): change verify url to include both the email and the t… by @pcfreak30 in https://github.com/LumeWeb/portal/pull/484 * refactor(tus): if we have an auth mw, also set a AccountVerifiedMiddleware by @pcfreak30 in https://github.com/LumeWeb/portal/pull/485 * chore(deps): bump github.com/wneessen/go-mail from 0.4.4 to 0.5.0 by @dependabot in https://github.com/LumeWeb/portal/pull/490 * chore(deps): bump github.com/getkin/kin-openapi from 0.127.0 to 0.128.0 by @dependabot in https://github.com/LumeWeb/portal/pull/488 * chore(deps): bump github.com/aws/aws-sdk-go-v2 from 1.31.0 to 1.32.1 by @dependabot in https://github.com/LumeWeb/portal/pull/486 * chore(deps): bump github.com/aws/aws-sdk-go-v2/service/s3 from 1.63.3 to 1.65.1 by @dependabot in https://github.com/LumeWeb/portal/pull/487 * feat(config): implement new configuration structure by @pcfreak30 in https://github.com/LumeWeb/portal/pull/491 * refactor(tus): replace etcd locker with redis locker by @pcfreak30 in https://github.com/LumeWeb/portal/pull/492 * refactor(mailer): track if a connection has ever been dialed via Dial… by @pcfreak30 in https://github.com/LumeWeb/portal/pull/493 * refactor(config): update configuration management system by @pcfreak30 in https://github.com/LumeWeb/portal/pull/494 * refactor: need to move ConfigPropertyUpdateCategory const to core to … by @pcfreak30 in https://github.com/LumeWeb/portal/pull/495 * refactor: need to move ConfigPropertyUpdateCategory const to config t… by @pcfreak30 in https://github.com/LumeWeb/portal/pull/496 * fix(config): need to handle reflect.Slice in FieldProcessor by @pcfreak30 in https://github.com/LumeWeb/portal/pull/497 * refactor(config): improve FieldProcessor recursion and add parent field tracking by @pcfreak30 in https://github.com/LumeWeb/portal/pull/498 * refactor(config): update FieldProcessor to use pointer for StructField by @pcfreak30 in https://github.com/LumeWeb/portal/pull/499 * fix(service): update configUpdatesProcessor method signature by @pcfreak30 in https://github.com/LumeWeb/portal/pull/500 * chore(deps): bump github.com/aws/aws-sdk-go-v2/config from 1.27.39 to 1.27.43 by @dependabot in https://github.com/LumeWeb/portal/pull/505 * chore(deps): bump github.com/redis/go-redis/v9 from 9.6.1 to 9.6.2 by @dependabot in https://github.com/LumeWeb/portal/pull/501 * chore(deps): bump github.com/aws/aws-sdk-go-v2/service/s3 from 1.65.1 to 1.65.3 by @dependabot in https://github.com/LumeWeb/portal/pull/503 * refactor(config): enhance configuration management and validation by @pcfreak30 in https://github.com/LumeWeb/portal/pull/506 * refactor(config): simplify struct field processing logic by @pcfreak30 in https://github.com/LumeWeb/portal/pull/507 * refactor(config): add Flags method and update sync logic by @pcfreak30 in https://github.com/LumeWeb/portal/pull/508 * feat(core,service): implement access control service and middleware by @pcfreak30 in https://github.com/LumeWeb/portal/pull/509 * refactor(access): support keyMatch5 for wildcard types and rest params by @pcfreak30 in https://github.com/LumeWeb/portal/pull/510 * fix(access): need to enable auto save on enforcer by @pcfreak30 in https://github.com/LumeWeb/portal/pull/511 * fix(access): don't have 3 fields n the role and update the match to r… by @pcfreak30 in https://github.com/LumeWeb/portal/pull/512 * fix(middleware): correct access check and rename authz.go to access.go by @pcfreak30 in https://github.com/LumeWeb/portal/pull/513 * fix(middleware): correct parameters in CheckAccess function call by @pcfreak30 in https://github.com/LumeWeb/portal/pull/514 * fix(access): need to pass user id as a string to Enforcer by @pcfreak30 in https://github.com/LumeWeb/portal/pull/515 * refactor(config): add maybeSave call back after setDefaultsForObject by @pcfreak30 in https://github.com/LumeWeb/portal/pull/516 * chore: need to update tusd and force update dbresolver by @pcfreak30 in https://github.com/LumeWeb/portal/pull/517 * fix(config): enhance struct processing in fieldProcessorRecursive by @pcfreak30 in https://github.com/LumeWeb/portal/pull/518 * refactor(config): enhance struct processing and config saving logic by @pcfreak30 in https://github.com/LumeWeb/portal/pull/519 * refactor: remove code for blake3, dnslink, and blocklist as these will be put into plugins by @pcfreak30 in https://github.com/LumeWeb/portal/pull/520 * fix(renter): fix handling of average_rate and use sql.NullString by @pcfreak30 in https://github.com/LumeWeb/portal/pull/521 * refactor(renter): add check on boot for the renter to call the /state… by @pcfreak30 in https://github.com/LumeWeb/portal/pull/522 * fix(config): need to use the child field not the parent and pass the actual interface by @pcfreak30 in https://github.com/LumeWeb/portal/pull/523 * fix(config): remove duplicate root struct processing by @pcfreak30 in https://github.com/LumeWeb/portal/pull/524 * fix(config): need to add a special case for types.UUID before the res… by @pcfreak30 in https://github.com/LumeWeb/portal/pull/525 * refactor(renter): improve price history import performance by @pcfreak30 in https://github.com/LumeWeb/portal/pull/526 * fix(access): fix the matcher by @pcfreak30 in https://github.com/LumeWeb/portal/pull/532 * chore(deps): bump github.com/wneessen/go-mail from 0.5.0 to 0.5.1 by @dependabot in https://github.com/LumeWeb/portal/pull/527 * chore(deps): bump gorm.io/datatypes from 1.2.2 to 1.2.4 by @dependabot in https://github.com/LumeWeb/portal/pull/529 * chore(deps): bump github.com/aws/aws-sdk-go-v2/service/s3 from 1.65.3 to 1.66.2 by @dependabot in https://github.com/LumeWeb/portal/pull/533 * chore(deps): bump github.com/aws/aws-sdk-go-v2/config from 1.27.43 to 1.28.1 by @dependabot in https://github.com/LumeWeb/portal/pull/535 * ci: remove docker workflows and update changeset base branch by @pcfreak30 in https://github.com/LumeWeb/portal/pull/536 * ci: only run publish for push on develop by @pcfreak30 in https://github.com/LumeWeb/portal/pull/538 * chore: version bump by @pcfreak30 in https://github.com/LumeWeb/portal/pull/539 * Version Packages by @github-actions in https://github.com/LumeWeb/portal/pull/540 **Full Changelog**: https://github.com/LumeWeb/portal/compare/v0.1.1...v0.2.0
## What's Changed * ci: change changesets/action publish command to a bash noop by @pcfreak30 in https://github.com/LumeWeb/portal/pull/220 * ci: try a new noop by @pcfreak30 in https://github.com/LumeWeb/portal/pull/221 * feat(core): add const for storage uploaded event by @pcfreak30 in https://github.com/LumeWeb/portal/pull/222 * feat(core): add api for registering custom events, a context builder … by @pcfreak30 in https://github.com/LumeWeb/portal/pull/223 * feat(core): add StorageObjectUploadedEvent by @pcfreak30 in https://github.com/LumeWeb/portal/pull/224 * fix(portal): append is adding to wrong array by @pcfreak30 in https://github.com/LumeWeb/portal/pull/225 * Db ctx by @pcfreak30 in https://github.com/LumeWeb/portal/pull/226 * fix(portal): add edge case sanity check for cronSvc, as it should nev… by @pcfreak30 in https://github.com/LumeWeb/portal/pull/227 * feat(config): add GetProtocol helper by @pcfreak30 in https://github.com/LumeWeb/portal/pull/228 * fix(config): only process the core config, as plugins will be process… by @pcfreak30 in https://github.com/LumeWeb/portal/pull/229 * refactor(http): extract http startup func to a dedicated init method … by @pcfreak30 in https://github.com/LumeWeb/portal/pull/230 * ci: try again to fix the release workflow, and use changeset publish by @pcfreak30 in https://github.com/LumeWeb/portal/pull/231 * chore: changeset by @pcfreak30 in https://github.com/LumeWeb/portal/pull/232 * Version Packages by @github-actions in https://github.com/LumeWeb/portal/pull/233 **Full Changelog**: https://github.com/LumeWeb/portal/compare/v0.1.0...v0.1.1
## What's Changed * Persistent Cron by @pcfreak30 in https://github.com/LumeWeb/portal/pull/28 * chore(deps): bump golang.org/x/crypto from 0.21.0 to 0.22.0 by @dependabot in https://github.com/LumeWeb/portal/pull/33 * chore(deps): bump gorm.io/gorm from 1.25.7 to 1.25.9 by @dependabot in https://github.com/LumeWeb/portal/pull/29 * chore(deps): bump go.uber.org/fx from 1.20.1 to 1.21.0 by @dependabot in https://github.com/LumeWeb/portal/pull/30 * chore(deps): bump github.com/go-sql-driver/mysql from 1.7.1 to 1.8.1 by @dependabot in https://github.com/LumeWeb/portal/pull/31 * chore(deps): bump gorm.io/driver/mysql from 1.5.4 to 1.5.6 by @dependabot in https://github.com/LumeWeb/portal/pull/32 * chore(deps): bump github.com/go-gorm/caches/v4 from 4.0.0 to 4.0.4 by @dependabot in https://github.com/LumeWeb/portal/pull/35 * S5 login bad pubkey size by @pcfreak30 in https://github.com/LumeWeb/portal/pull/34 * Refactor tus upload by @pcfreak30 in https://github.com/LumeWeb/portal/pull/37 * fix: need to pass arg structs by ref to properly do unmarshalling by @pcfreak30 in https://github.com/LumeWeb/portal/pull/38 * fix: need to export cron task arguments for json marshal by @pcfreak30 in https://github.com/LumeWeb/portal/pull/39 * fix: need to use longtext for args by @pcfreak30 in https://github.com/LumeWeb/portal/pull/40 * Remove recursive pinning by @pcfreak30 in https://github.com/LumeWeb/portal/pull/41 * fix: need to register s5 api with cron service by @pcfreak30 in https://github.com/LumeWeb/portal/pull/42 * fix: cron args need to be passed by ref by @pcfreak30 in https://github.com/LumeWeb/portal/pull/43 * fix: need to export cron args for s5 pin import for json marshal by @pcfreak30 in https://github.com/LumeWeb/portal/pull/44 * fix: need to create import record before kicking off the cron task by @pcfreak30 in https://github.com/LumeWeb/portal/pull/45 * S5 cron fixes by @pcfreak30 in https://github.com/LumeWeb/portal/pull/46 * fix: need to use groupLog not groupChunks in VerifyChunk as it comput… by @pcfreak30 in https://github.com/LumeWeb/portal/pull/47 * fix: groupChunks needs to be in KiB not bytes by @pcfreak30 in https://github.com/LumeWeb/portal/pull/48 * Fix build cache by @pcfreak30 in https://github.com/LumeWeb/portal/pull/50 * Changesets update by @pcfreak30 in https://github.com/LumeWeb/portal/pull/51 * fix(ci): downgrade actions/upload-artifact to v3 by @pcfreak30 in https://github.com/LumeWeb/portal/pull/52 * chore(ci): add golangci by @pcfreak30 in https://github.com/LumeWeb/portal/pull/53 * chore(dep): update libs5 by @pcfreak30 in https://github.com/LumeWeb/portal/pull/54 * Go deps by @pcfreak30 in https://github.com/LumeWeb/portal/pull/55 * chore: update module name to be based on github vs lumes git server by @pcfreak30 in https://github.com/LumeWeb/portal/pull/56 * chore: missed updating the module name by @pcfreak30 in https://github.com/LumeWeb/portal/pull/57 * chore: update required go version by @pcfreak30 in https://github.com/LumeWeb/portal/pull/58 * chore: update dashboard by @pcfreak30 in https://github.com/LumeWeb/portal/pull/59 * fix(lint): fix bugs found from golangci-lint by @pcfreak30 in https://github.com/LumeWeb/portal/pull/60 * refactor(protocol): use central registry to track protocol instances,… by @pcfreak30 in https://github.com/LumeWeb/portal/pull/62 * fix: DEFAULT_AUTH_CONTEXT_KEY needs to be DEFAULT_USER_ID_CONTEXT_KEY… by @pcfreak30 in https://github.com/LumeWeb/portal/pull/63 * fix(storage): use getProofPath by @pcfreak30 in https://github.com/LumeWeb/portal/pull/69 * fix(db): TusUpload UploadID needs to be a varchar to avoid index leng… by @pcfreak30 in https://github.com/LumeWeb/portal/pull/70 * fix(renter): use same prefix + trim in GetObject as in UploadObject by @pcfreak30 in https://github.com/LumeWeb/portal/pull/71 * fix(s5): set size when we are processing multipart from the file header by @pcfreak30 in https://github.com/LumeWeb/portal/pull/72 * Implement roles by @pcfreak30 in https://github.com/LumeWeb/portal/pull/78 * chore(deps): bump github.com/aws/aws-sdk-go-v2/config from 1.27.11 to 1.27.13 by @dependabot in https://github.com/LumeWeb/portal/pull/80 * chore(deps): bump golang.org/x/crypto from 0.22.0 to 0.23.0 by @dependabot in https://github.com/LumeWeb/portal/pull/74 * chore(deps): update blake3/bao by @pcfreak30 in https://github.com/LumeWeb/portal/pull/81 * fix(renter): use TB not TiB by @pcfreak30 in https://github.com/LumeWeb/portal/pull/83 * chore(dep): add xz by @pcfreak30 in https://github.com/LumeWeb/portal/pull/88 * Sync Protocol Part 1 by @pcfreak30 in https://github.com/LumeWeb/portal/pull/89 * Update build process by @pcfreak30 in https://github.com/LumeWeb/portal/pull/90 * fix: statically link everything so we don't rely on platform .so by @pcfreak30 in https://github.com/LumeWeb/portal/pull/91 * refactor(ci): use debian for final image and refactor build functions by @pcfreak30 in https://github.com/LumeWeb/portal/pull/92 * Add dev build by @pcfreak30 in https://github.com/LumeWeb/portal/pull/93 * Fix dev build by @pcfreak30 in https://github.com/LumeWeb/portal/pull/94 * fix(ci): github.repository.ref_name needs to be github.ref_name by @pcfreak30 in https://github.com/LumeWeb/portal/pull/95 * fix(ci): debug dockerfile env needs to be dev by @pcfreak30 in https://github.com/LumeWeb/portal/pull/96 * chore(ci): add workflow to delete all packages with the given branch … by @pcfreak30 in https://github.com/LumeWeb/portal/pull/97 * fix(ci): use context.ref by @pcfreak30 in https://github.com/LumeWeb/portal/pull/98 * fix(ci): add missing build step to download node.js for bundling and … by @pcfreak30 in https://github.com/LumeWeb/portal/pull/99 * fix(ci): add ca-certificates and fuse to final image by @pcfreak30 in https://github.com/LumeWeb/portal/pull/100 * fix(config): if db.cache is nil, create a new struct instance by @pcfreak30 in https://github.com/LumeWeb/portal/pull/101 * fix(db): db cache options is a reference by @pcfreak30 in https://github.com/LumeWeb/portal/pull/102 * refactor(ci): in dev mode, build from vendored dependencies so that w… by @pcfreak30 in https://github.com/LumeWeb/portal/pull/103 * Migrate from FUSE to zip archive for node server by @pcfreak30 in https://github.com/LumeWeb/portal/pull/104 * Cluster Support Part 1 by @pcfreak30 in https://github.com/LumeWeb/portal/pull/105 * Sync Support by @pcfreak30 in https://github.com/LumeWeb/portal/pull/108 * EPIC: Redesign to use caddy-inspired modular system by @pcfreak30 in https://github.com/LumeWeb/portal/pull/113 * Fix config by @pcfreak30 in https://github.com/LumeWeb/portal/pull/115 * Fix sync init by @pcfreak30 in https://github.com/LumeWeb/portal/pull/116 * refactor: move service guts into internal to prevent outside use by @pcfreak30 in https://github.com/LumeWeb/portal/pull/117 * chore(middleware): we need to track the generated swagger middleware … by @pcfreak30 in https://github.com/LumeWeb/portal/pull/118 * refactor(core): create a portalcmd package and make cmd/portal a basi… by @pcfreak30 in https://github.com/LumeWeb/portal/pull/119 * fix(services): need to create a re-export of template registry due to… by @pcfreak30 in https://github.com/LumeWeb/portal/pull/120 * Wallet coreutils by @pcfreak30 in https://github.com/LumeWeb/portal/pull/121 * refactor(sync): split out node and grpc code bases to dedicated repos… by @pcfreak30 in https://github.com/LumeWeb/portal/pull/122 * chore(ci): update makefile to simplify based on new build process by @pcfreak30 in https://github.com/LumeWeb/portal/pull/123 * fix(config): need to use coreutils wallet not renterd wallet due to u… by @pcfreak30 in https://github.com/LumeWeb/portal/pull/124 * fix(renter,storage): update usage of renter client apis, and finally … by @pcfreak30 in https://github.com/LumeWeb/portal/pull/125 * chore(ci): update docker build process to use golang image directly a… by @pcfreak30 in https://github.com/LumeWeb/portal/pull/126 * chore(ci): delete unneeded docker partial by @pcfreak30 in https://github.com/LumeWeb/portal/pull/127 * feat(portal): add account, s5, and sync plugins under a new standard … by @pcfreak30 in https://github.com/LumeWeb/portal/pull/128 * fix(config): need to use UnmarshalWithConf by @pcfreak30 in https://github.com/LumeWeb/portal/pull/130 * fix(config): need to use cfg not m.root by @pcfreak30 in https://github.com/LumeWeb/portal/pull/131 * chore: update s5 dep by @pcfreak30 in https://github.com/LumeWeb/portal/pull/132 * refactor(config): enable IgnoreUntaggedFields by @pcfreak30 in https://github.com/LumeWeb/portal/pull/133 * chore: update s5 dep by @pcfreak30 in https://github.com/LumeWeb/portal/pull/134 * fix(core): register all api routes with the http router via their hos… by @pcfreak30 in https://github.com/LumeWeb/portal/pull/135 * chore(deps): bump github.com/casbin/casbin/v2 from 2.89.0 to 2.92.0 by @dependabot in https://github.com/LumeWeb/portal/pull/129 * feat: add Init support to APIs by @pcfreak30 in https://github.com/LumeWeb/portal/pull/136 * chore: update s5 by @pcfreak30 in https://github.com/LumeWeb/portal/pull/137 * chore: update s5 by @pcfreak30 in https://github.com/LumeWeb/portal/pull/138 * chore: update dashboard by @pcfreak30 in https://github.com/LumeWeb/portal/pull/139 * chore: update dashboard by @pcfreak30 in https://github.com/LumeWeb/portal/pull/140 * chore(deps): bump github.com/aws/aws-sdk-go-v2/config from 1.27.17 to 1.27.18 by @dependabot in https://github.com/LumeWeb/portal/pull/145 * chore(deps): bump go.sia.tech/coreutils from 0.0.4 to 0.0.5 by @dependabot in https://github.com/LumeWeb/portal/pull/141 * chore(deps): bump github.com/casbin/casbin/v2 from 2.92.0 to 2.95.0 by @dependabot in https://github.com/LumeWeb/portal/pull/142 * feat(config): add ConfigDir to Manager by @pcfreak30 in https://github.com/LumeWeb/portal/pull/146 * fix(db): use ConfigDir and ensure the db file is in the config folder… by @pcfreak30 in https://github.com/LumeWeb/portal/pull/147 * feat(sync,config): make sync an optional service, disabled by default by @pcfreak30 in https://github.com/LumeWeb/portal/pull/148 * refactor(portal): allow GetProtocol and GetAPI to return nil in the c… by @pcfreak30 in https://github.com/LumeWeb/portal/pull/149 * refactor(core): rename syncer to sync in context by @pcfreak30 in https://github.com/LumeWeb/portal/pull/150 * chore: update sync plugin by @pcfreak30 in https://github.com/LumeWeb/portal/pull/151 * chore: update sync plugin by @pcfreak30 in https://github.com/LumeWeb/portal/pull/153 * chore(deps-dev): bump braces from 3.0.2 to 3.0.3 in the npm_and_yarn group across 1 directory by @dependabot in https://github.com/LumeWeb/portal/pull/152 * chore: update s5 plugin by @pcfreak30 in https://github.com/LumeWeb/portal/pull/154 * chore: update s5 plugin by @pcfreak30 in https://github.com/LumeWeb/portal/pull/155 * fix: user service and otp service needs to be registered before auth … by @pcfreak30 in https://github.com/LumeWeb/portal/pull/156 * Fix swagger by @pcfreak30 in https://github.com/LumeWeb/portal/pull/157 * refactor: export Exists and make it public by @pcfreak30 in https://github.com/LumeWeb/portal/pull/158 * feat(service): add pin service implementation by @pcfreak30 in https://github.com/LumeWeb/portal/pull/159 * feat(service): add dnslink service implementation by @pcfreak30 in https://github.com/LumeWeb/portal/pull/160 * chore: update s5 by @pcfreak30 in https://github.com/LumeWeb/portal/pull/161 * chore: update s5 by @pcfreak30 in https://github.com/LumeWeb/portal/pull/162 * Refactor shutdown by @pcfreak30 in https://github.com/LumeWeb/portal/pull/163 * refactor: if sync isn't enabled, make Update a no-op by @pcfreak30 in https://github.com/LumeWeb/portal/pull/164 * Skip protocols by @pcfreak30 in https://github.com/LumeWeb/portal/pull/165 * refactor(middleware): organize middleware, remove MergeRoutes, CtxAbo… by @pcfreak30 in https://github.com/LumeWeb/portal/pull/166 * Default auth middleware by @pcfreak30 in https://github.com/LumeWeb/portal/pull/167 * feat(http): add pprof runtime support protected by auth by @pcfreak30 in https://github.com/LumeWeb/portal/pull/168 * chore: update s5 by @pcfreak30 in https://github.com/LumeWeb/portal/pull/169 * chore: update sync node server by @pcfreak30 in https://github.com/LumeWeb/portal/pull/170 * chore: update sync node server by @pcfreak30 in https://github.com/LumeWeb/portal/pull/171 * chore: update sync node server by @pcfreak30 in https://github.com/LumeWeb/portal/pull/172 * chore: update sync node server by @pcfreak30 in https://github.com/LumeWeb/portal/pull/173 * Sync System refactor by @pcfreak30 in https://github.com/LumeWeb/portal/pull/174 * fix(renter): update cron task handlers to use new method signature by @pcfreak30 in https://github.com/LumeWeb/portal/pull/175 * refactor: rename module to use new vanity import go.lumeweb.com by @pcfreak30 in https://github.com/LumeWeb/portal/pull/176 * chore: update deps to use new vanity version of modules by @pcfreak30 in https://github.com/LumeWeb/portal/pull/177 * chore: update s5 plugin by @pcfreak30 in https://github.com/LumeWeb/portal/pull/178 * chore: update s5 plugin by @pcfreak30 in https://github.com/LumeWeb/portal/pull/179 * chore: update s5 plugin by @pcfreak30 in https://github.com/LumeWeb/portal/pull/180 * chore: update s5 plugin by @pcfreak30 in https://github.com/LumeWeb/portal/pull/181 * chore: update deps by @pcfreak30 in https://github.com/LumeWeb/portal/pull/182 * chore: update deps by @pcfreak30 in https://github.com/LumeWeb/portal/pull/183 * fix: need to parse uuids on decode in pass through incase its already… by @pcfreak30 in https://github.com/LumeWeb/portal/pull/184 * ci: update build and release processes by @pcfreak30 in https://github.com/LumeWeb/portal/pull/185 * chore(deps): bump go.sia.tech/coreutils from 0.0.5 to 0.0.6 by @dependabot in https://github.com/LumeWeb/portal/pull/190 * chore(deps): bump github.com/aws/aws-sdk-go-v2 from 1.27.2 to 1.28.0 by @dependabot in https://github.com/LumeWeb/portal/pull/189 * chore(deps): bump gorm.io/driver/mysql from 1.5.6 to 1.5.7 by @dependabot in https://github.com/LumeWeb/portal/pull/188 * chore(deps): bump github.com/getkin/kin-openapi from 0.118.0 to 0.125.0 by @dependabot in https://github.com/LumeWeb/portal/pull/187 * chore(deps): bump github.com/aws/aws-sdk-go-v2/credentials from 1.17.18 to 1.17.19 by @dependabot in https://github.com/LumeWeb/portal/pull/186 * Another Core Design Change by @pcfreak30 in https://github.com/LumeWeb/portal/pull/193 * chore(deps): bump github.com/aws/aws-sdk-go-v2/config from 1.27.18 to 1.27.19 by @dependabot in https://github.com/LumeWeb/portal/pull/192 * chore(deps): bump github.com/aws/aws-sdk-go-v2/service/s3 from 1.55.1 to 1.55.2 by @dependabot in https://github.com/LumeWeb/portal/pull/191 * Update account by @pcfreak30 in https://github.com/LumeWeb/portal/pull/194 * refactor: slim down the standard plugin preset to just the account pl… by @pcfreak30 in https://github.com/LumeWeb/portal/pull/195 * chore: update deps by @pcfreak30 in https://github.com/LumeWeb/portal/pull/196 * Config Redesign by @pcfreak30 in https://github.com/LumeWeb/portal/pull/197 * refactor: merge together the user and user_verify services by @pcfreak30 in https://github.com/LumeWeb/portal/pull/198 * fix: only set mysql db defaults if the type is mysql by @pcfreak30 in https://github.com/LumeWeb/portal/pull/199 * refactor: since the account api and configis extracted to a plugin, w… by @pcfreak30 in https://github.com/LumeWeb/portal/pull/200 * Add Event System by @pcfreak30 in https://github.com/LumeWeb/portal/pull/201 * feat: add getter for event manager by @pcfreak30 in https://github.com/LumeWeb/portal/pull/202 * refactor: change subdomain handling on user service to use new event … by @pcfreak30 in https://github.com/LumeWeb/portal/pull/203 * feat: add exit func inside NewContext that will close the event manager by @pcfreak30 in https://github.com/LumeWeb/portal/pull/204 * feat: add GetPlugin, GetService, GetAPI helpers to Manager by @pcfreak30 in https://github.com/LumeWeb/portal/pull/205 * fix: add GetService and GetAPI need to return interfaces not pointers… by @pcfreak30 in https://github.com/LumeWeb/portal/pull/206 * refactor: unexport cron start and stop methods and remove passing the… by @pcfreak30 in https://github.com/LumeWeb/portal/pull/207 * Cron refactor by @pcfreak30 in https://github.com/LumeWeb/portal/pull/208 * refactor: rename CronService.RegisterService to RegisterEntity by @pcfreak30 in https://github.com/LumeWeb/portal/pull/209 * refactor: extract the sync service completely to the sync plugin by @pcfreak30 in https://github.com/LumeWeb/portal/pull/210 * refactor: remove the standard preset and always require use of xportal by @pcfreak30 in https://github.com/LumeWeb/portal/pull/211 * Release by @pcfreak30 in https://github.com/LumeWeb/portal/pull/212 * ci: remove golangci by @pcfreak30 in https://github.com/LumeWeb/portal/pull/213 * chore: force release by @pcfreak30 in https://github.com/LumeWeb/portal/pull/214 * ci: fix publish workflow by @pcfreak30 in https://github.com/LumeWeb/portal/pull/215 * chore: force release by @pcfreak30 in https://github.com/LumeWeb/portal/pull/216 * ci: add pnpm by @pcfreak30 in https://github.com/LumeWeb/portal/pull/217 * chore: force release by @pcfreak30 in https://github.com/LumeWeb/portal/pull/218 * Version Packages by @github-actions in https://github.com/LumeWeb/portal/pull/219 ## New Contributors * @github-actions made their first contribution in https://github.com/LumeWeb/portal/pull/219 **Full Changelog**: https://github.com/LumeWeb/portal/compare/v0.0.1...v0.1.0