Skip to content

Raise dev container upload limits to 1G for large .elpx packages - #113

Merged
erseco merged 1 commit into
mainfrom
chore/dev-upload-limits
Jul 28, 2026
Merged

Raise dev container upload limits to 1G for large .elpx packages#113
erseco merged 1 commit into
mainfrom
chore/dev-upload-limits

Conversation

@erseco

@erseco erseco commented Jul 28, 2026

Copy link
Copy Markdown
Contributor

What this fixes

The development container (erseco/alpine-moodle, used by docker-compose.yml)
was rejecting uploads of large .elpx course packages. Moodle's file picker
upload only succeeds when nginx's client_max_body_size and PHP's
post_max_size / upload_max_filesize all agree on a limit high enough for
the package being uploaded.

Why 1G

client_max_body_size and post_max_size were already set to 1G for the
moodle service. upload_max_filesize was still at its container default,
which is lower than post_max_size and silently truncates/rejects the
upload before PHP even gets to enforce post_max_size. Setting all three to
the same 1G value removes that mismatch and gives enough headroom for the
.elpx packages used in manual testing and demos.

Scope

Development environment only (docker-compose.yml, moodle service
environment block). No production code, plugin logic, or CI configuration
is touched.


Validated with docker compose config; a real upload >50M is recommended after merge (reviewer suggestion).


Moodle Playground Preview

The changes in this pull request can be previewed and tested using a Moodle Playground instance.

Preview in Moodle Playground

ℹ️ The eXeLearning editor is fetched from the shared release and unpacked into the plugin when the playground boots, so the first load may take a few extra seconds. ELPX upload, viewer and preview work normally.

The erseco/alpine-moodle dev container was rejecting uploads of large
.elpx packages. Add upload_max_filesize alongside the existing
client_max_body_size and post_max_size so the three PHP/nginx limits
agree at 1G. Development environment only.
@codecov-commenter

codecov-commenter commented Jul 28, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 92.31%. Comparing base (973a611) to head (f840bb3).
✅ All tests successful. No failed tests found.

Additional details and impacted files
@@            Coverage Diff            @@
##               main     #113   +/-   ##
=========================================
  Coverage     92.31%   92.31%           
  Complexity      824      824           
=========================================
  Files            51       51           
  Lines          3734     3734           
=========================================
  Hits           3447     3447           
  Misses          287      287           
Flag Coverage Δ
javascript 94.11% <ø> (ø)
php 92.23% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

Components Coverage Δ
PHP (server-side) 92.23% <ø> (ø)
JavaScript (SCORM tracker) 94.11% <ø> (ø)
🚀 New features to boost your workflow:
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@erseco erseco self-assigned this Jul 28, 2026
@erseco erseco added the enhancement New feature or request label Jul 28, 2026
@erseco
erseco merged commit 0be72e3 into main Jul 28, 2026
25 checks passed
@erseco
erseco deleted the chore/dev-upload-limits branch July 28, 2026 16:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants