Skip to content

Releases: database-playground/app-sf

v0.4.0

08 Jan 06:24
abe6b81
Compare
Choose a tag to compare

There are too many changes after v0.3.0 – mainly the structure adjustment, sqlrunner optimization, the email sending.

What's Changed

Full Changelog: v0.3.0...v0.4.0

v0.4.0-pre.2

30 Dec 08:17
e55b467
Compare
Choose a tag to compare
v0.4.0-pre.2 Pre-release
Pre-release

What's Changed

Full Changelog: v0.4.0.pre-1...v0.4.0-pre.2

v0.4.0.pre-1

15 Dec 17:38
080b49b
Compare
Choose a tag to compare
v0.4.0.pre-1 Pre-release
Pre-release

Warning

This version has passed the smoke test and is now in production. However, you may need to update your infrastructure to adapt v0.4.0-pre.1. Please check the latest README for details.

Changelog

Features

  • Admin:
    • Use Pretty URLs for EasyAdmin.
    • Add "last login at" field.
    • Experience Points feature.
  • Events:
    • Reindex questions when updated.
    • Use Pretty URL for feedback link.
  • SQL Runner:
    • Implement SQL Runner SDK.
    • Migrate to new SQL Runner.
  • Footer:
    • Add Service Status.
  • General:
    • Add assets to fetch in Link header.
    • Implement GPT-4o support.
    • Add "Learn More" button to overview.
    • Email Event with admin preview page and "test" kind.
    • Email Delivery Event.
    • Allow adding plain text content in emails.
    • Add Amazon SES mailer.
    • Add Dockerfile linter.
    • Add app-sf-worker for asynchronous message handling.
    • Command for last login and completed questions statistics.

Fixes

  • Admin:
    • Replace deprecated icon names and fix action layouts for mobile.
    • Correct data grid usage in email_template_index.
    • Disable delete, edit, and new actions by default.
  • Challenge:
    • Fix incorrect title of diff results.
    • Handle SchemaExecuteException and QueryExecuteException.
  • Docker:
    • Refresh Symfony cache when building.
    • Remove debug-only configs from production images.
    • Ensure unique messenger customer names.
  • Twig:
    • Downgrade to version 3.14.
    • Use underscores instead of dots for global variables.
  • Overview:
    • Handle high-level rendering correctly.
  • Migrations:
    • Drop default value for required text_content column.
  • General:
    • Add PHP 8.4 polyfill.

Refactors

  • Admin:
    • Remove batch actions.
    • Move email template preview to admin panel.
    • Move statistics page to admin.
    • Rename app_admin route to admin.
    • Use snake case for email_template.
  • Config:
    • Migrate YAML configurations (e.g., routes, services, twig) to PHP.
    • Remove lock.yaml.
    • Simplify parameter determination logic.
  • Docker:
    • Improve CMD and linter compliance.
    • Move dev-only configurations to "dev" folder.
  • Messenger:
    • Use Redis for asynchronous messaging.
    • Make LINE Notify asynchronous.
  • General:
    • Remove redundant imports and unused dependencies.
    • Lazy load unneeded components.

Performance Improvements

  • FrankenPHP:
    • Disable timestamp check in opcache.
  • General:
    • Install cURL extension for better HTTP performance.

Style

  • Docker:
    • Unify space characters usage.

Tests

  • Email:
    • Add tests for EmailCreatedSubscriber, EmailKind, and EmailDto.

Documentation

  • Add deployment notes for sqlrunner and Zeabur.
  • Add Amazon SES configuration details.
  • Update README with new variables.

Chores

  • Upgrade dependencies.
  • Add symplify/config-transformer.
  • Correct sqlrunner references in .env.
  • Exclude .pnpm-store in .gitignore.

Full Changelog: v0.3.0...v0.4.0.pre-1

v0.3.0

20 Nov 01:17
dfd4f33
Compare
Choose a tag to compare

Re-tagging the version.

Features

Profile

  • Implement feature flag for "Editable Profile", "Hint", and "Comment"

Challenge page

  • Rewrite DbRunner and Challenge page
    • Typed query result: We previously returned the raw "array" and type-hinted them everywhere. Now, the DbRunner returns a QueryResultDto that wraps this type.
    • Improved "Result Presenter": Instead of passing the result everywhere, retrieve it directly in the tabs rather than receiving it from the Executor.
    • Compare the results only on needed
    • Added a new Comparer that provides more comprehensive difference information.
    • Removed "Module" from the component namespace.
    • Update DbRunner return style

Improvements

Bug fixes

Chores

  • Update dependencies.

Full Changelog: v0.2.3...v0.3.0

v0.2.3

02 Nov 02:39
45effc0
Compare
Choose a tag to compare

What's Changed

Leaderboard

  • Limit leaderboard to show 10 users (#80)
  • Improve RWD on small devices (#80)
  • Fix overflow for long name (#80)

dbrunner

  • Implement LEFT() function (#82)
  • Clear dbrunner cache on starting up (#85)
  • Type check: The key might be scalar (#82)
  • Mark SQLite functions as deterministic (#82)
  • Mark DbRunnerProcessPayload as allowed_classes (#82)
  • Correct cache storage and name (#85)

Docker

  • Change to alpine for newer SQLite version (#82)

Miscellaneous

  • Upgrade dependencies (SWC, PHP, JS, …)
  • Remove doctrine GitHub source from Composer (#85)

Full Changelog: v0.2.2...v0.2.3

v0.2.2 (2024-10-24)

24 Oct 03:17
a51a0d9
Compare
Choose a tag to compare

What's Changed

  • Store sessions in Redis to make the Database Playground stateless, allowing for restarts without session concerns. (#75)
  • Remove "適用題目" from "補充資料" as it is too verbose. (#79)
  • Eliminate duplicate counts of questions solved on the leaderboard. (#79, Resolve #77)
  • Pre-fill the previous answer on the challenge page. (#79)
  • Disallow resubmissions and empty queries. (#79)
  • Permit specific users (ROLE_ALLOWED_TO_SWITCH) to impersonate others. (#79)
  • Refactors:
    • Use the native Twig filter to truncate (u.truncate(50, '…')). (#79)
    • Upgrade dependencies to the latest version as of 2024-10-24. (#79)

Full Changelog: v0.2.1...v0.2.2

v0.2.1 (2024-10-20)

19 Oct 19:17
e4f8887
Compare
Choose a tag to compare

What's Changed

  • Fixed race conditions and early-cancel issues in dbrunner (#71, #72).
  • The daily chart may now include information from other users (#74).
  • Added the ability to bulk insert users from a CSV file (app:create-users) (#74, Resolves #73).
  • Upgraded dependencies to the latest version on October 20.

v0.2.0 (2024-10-07)

07 Oct 01:45
2b0a4af
Compare
Choose a tag to compare

RWD in Login Page

Enhance the user experience of logging in on mobile devices.

Login page in mobile device

Grouping

Global statistics (such as “first solver”) will be differentiated based on groups, and the problem-solving status within each group does not affect other groups. Suitable for distinguishing between classes.

Grouping

Feedback

You can now send feedback on a page.

Feedback page

Administrators can check all the feedback on the admin dashboard.

Feedback in admin dashboard

You can set a LINE Notify to get the feedback notification instantly:

LINE Notify

Weekly Question XP

#33 is implemented.

Others

  • Improve codebase and upgrade dependencies
  • Fix the question pagination (so the pagination follows the search result)
  • Make the linting stricter.

Full Changelog: v0.1.0...v0.2.0

v0.1.0 (2024-10-04)

04 Oct 04:41
cd48cb1
Compare
Choose a tag to compare
ci: correct branch (#57)