Releases: ReCodEx/api
v2.2.0
Changelog
- Significant modifications in pipeline-related endpoints.
- Adding boxes required for Maven runtime.
- Runtime CLI commands for import, export, and exercise config migration.
- Bug fixes.
Commits
961474b #! v2.2.0
c8ddbcc Creating new command to fix exercise configs when runtime is updated by import command.
f5abfab Fixing bug in task dependencies serialization.
150a515 Fixing bugs.
270ec6b Custom compilation do not check existence of output file if the port is not occupied.
a254906 Fixing bug in scalar-to-array conversion boxes.
cae1689 Adding extract box for decompressing project archives (e.g., in zip).
a594258 Fixing bugs, improving code.
1997b90 Bump latte/latte from 2.10.3 to 2.10.8
54634fd Fixing bugs.
1fe0bb4 Adding small epsilon value to points calculation before the value is floor-ed.
16b6586 Implementing runtime (and pipelines) import command. The runtimes and pipelines have been removed from init fixtures as they will be now imported explicitly.
8c7509c Implementing runtimes:export bin command to backup runtime environments and their pipelines.
e744716 Code cleanup and fixing bugs.
f8e84f2 New endpoint to fetch a list of exercises that use particular pipeline.
e1cd56a Removing exercises from pipelines in endpoints and view; forkedFrom added to pipeline view.
113c42f Providing frontend code and metadata for bad request exception caused by version mismatch in update actions.
4cdf5c5 Allow supervisor to create (or change existing to) global pipelines.
7109a27 New endpoint for setting pipeline-environments associations.
v2.1.1
Changelog
- Optimizing endpoint for fetching paginated exercises.
Commits
2f28d4a #! v2.1.1
fdc92ae Optimizing exercise pagination endpoint by integrating some ACL checks into database queries.
49539a9 Implementing lookup cache of membership relations for exercise permission policies (performance optimization).
be7d29c Bug in dispatcher (async job unschedule fails) fixed.
ee27ec4 Bug in dispatcher (async job unschedule fails) fixed.
v2.1.0
Changelog
318bd49 Updating ACLs to divide assignExercise permission between group and exercise, which can be checked independently.
- Adding deadline to shadow assignments and allow notifications to be sent when the deadline approaches.
- Adding last submission entity into view of reference solution.
- Migrating ui-specific user settings into user UI data record.
- New scheduled async job that notifies users about new assignments which have exact date from which they are visible.
- Fixing output buffering issue that overflows memory when larger files are downloaded.
- Adjusting ACLs - preventing students reading exercises (bugfix) and making exercise assignment more lenient
Commits
e953aa8 #! v2.1.0
318bd49 Updating ACLs to divide assignExercise permission between group and exercise, which can be checked independently.
09b124c User titles can be edited by the user only in case of local accounts (same as for the name).
22ed1af Adding deadline to shadow assignments and allow notifications to be sent when the deadline approaches.
bb3f83d Making sure download actions are logged as well in user actions log.
3bab8a6 Adding last submission entity into view of reference solution.
7343949 Fixing ACLs -- students are not the group members that should be allowed access to exercises.
7d43b37 Fixing the migration to correctly convert bools.
a202e34 Updating the ui update endpoint to merge the ui data as default (overwrite is optional by a flag).
8e87ef3 Migrating ui-specific user settings into user UI data record.
40e063c Implementing scheduled async job that notifies users about new assignments which have exact date from which they are visible.
43b3554 Preparing new scheduled async job that sends email notifications the moment new assignment becomes visible to students.
4859c62 Fixing output buffering issue that overflows memory when larger files are downloaded.
v2.0.2
Changelog
- Fixing bugs
- Preventing users with not validated mails from receiving notifications
Commits
bcbaa0c #! v2.0.2
2dcbf34 Fixing a bug.
33c4127 Removing paragraph about user settings from emails not affected by settings.
c4d36d9 Users with not verified email address will not receive any regular mail notifications.
v2.0.1
Changelog
- Fixing bugs (and pretty serious one in
db:cleanup:uploads
command). - Updating ACLs to impose restrictions for modification in archived groups.
- Improving performance (fixing inotify) in async worker.
Commits
3661fde #! v2.0.1
db8d5e2 Only group admin can bind group to SIS scheduling event (not supervisor).
1162845 Fixing the cleanup script that removes files from partial uploads that have no corresponding entity.
c25a132 Imposing restrictions on data modifications within archived groups.
1449df9 Fixing inotify notifications for async worker.
v2.0.0
Changelog
- Implementing async operations (jobs) executed in background worker (as a service).
- Resubmit all operation re-implemented as an async job.
- Per-partes file upload so that large files may be handled (despite the limitations of PHP upload handler).
- Optimizing archiving flags for groups.
- Refactoring group memberships and introducing new "observer" membership type (corresponding endpoints refactored in backwards incompatible way).
- Implementing linear interpolation for assignment max. points between the first and the second deadline.
- Optimizing storage for submissions containing single ZIP archive (will be necessary for Maven).
- Endpoints for retrieving files were modified to allow direct retrieval compressed files from ZIP archives (backwards incompatible changes).
- Solution files are now marked with entry-point flags (actual main file of the solution for interpreted languages).
- New endpoint for retrieving all solutions of a single user from all assignments of a group.
- Extensive refactoring and dependency updates.
Commits
da36bce #! v2.0.0
d956826 Renaming "degrees" to "titles" in the user entity.
0f633a0 Creating new endpoint for retrieving all solutions of a user from all assignments in a group at once.
4a20951 Refactoring code into solution files view.
b35d81d Enhancing solution files endpoints to mark entry point files as well.
9672490 Fixing bug in permissions related to new observer membership type.
545c409 Updating download and contents endpoints to allow retrieving nested files from ZIP archives if possible.
41520e5 Creating new endpoints for retrieving solution files.
c72c89e Removing old routes.
202a8e1 Removing files from solutions structures (and simplifying the structure).
bc46d2f Fine-tuning, bug-fixing, cleanup.
b4fdecf Creating SolutionZipFile entity and optimizing special case when a single ZIP archive is submitted as a solution file (the archive is not compressed again).
b70ea61 Refactoring: Combining common parts of assignment and reference solution submission into submission helper.
92ed2bd Optimizing compression level for nested ZIP archives in file storage.
671cf39 Adding observer membership type.
0eab9b0 Fixing and improving groups default action, removing unused stuff from users view (user no longer carry memberships information).
60522f9 Unifying API routes for membership manipulation (backward incompatible modifications).
114980b Updating model to fully embrace the inherited memberships and use membership inheritance for archived groups.
496448d Integrating group admins into group_membership relations.
47dfa25 Optimizing archiving flags for groups.
799ceef Implementing max. points linear interpolation between first and second deadline.
f6973fb Fixes after rebasing magic-accessors-begone
6957b45 Update composer dependencies
c40481e Fixes from review comments and type properly all repositories
be7ad31 Repair some other phpstan issues with typing
1429027 Add phpstan analysis for tests in CI
5f15eeb Properly type repositories for phpstan analysis
657832b Get rid of Kdyby MagicAccessors and generate getters/setters in entities
611cd95 Updating pipeline fixtures to hold new JVM migrated configurations.
a57cae8 Migrate java related pipeline configurations from specific java compilation/execution boxes to more general ones
dd9d0a9 Adding offset query param to append operation for verification.
73c0548 Adding digest feature so the frontend may verify the success of an upload by comparing hashes.
abd36c3 Adding tests and fixing found bugs.
09ec4cc Updating uploads cleanup command to encompass partial uploads as well.
05f0e1c Implementing API endpoints for file uploads conducted per-partes.
e636833 Merge pull request #392 from ReCodEx/async-ops
aaefe79 Satisfying code reviews.
b57f03c Merge branch 'master' of https://github.com/ReCodEx/api into async-ops
f0ac4a3 Adding basic async jobs tests and fixing some minor issues.
49553d6 Re-implementing resubmit all (solutions of an assignment) as an asynchronous job.
8b0220b Refactoring submission process, moving common parts to SubmissionHelper.
52459b6 AsyncJobs upkeep command that deletes old jobs and sends warning emails if jobs get stalled.
be191fc Updating async worker to better handle termination on signal (i.e., graceful shutdown of the service).
ae9368e Fixing bugs.
709df78 Database migration (adding async jobs table).
e889456 Implementing presenter and routes for async jobs (including ACLs).
cfda7a5 Adding a ping (empty) async job handler.
c75cd1a Adding systemd service file that should keep async worker running.
6d6eee2 Adjusting the condition that checks whether an assignment localization needs syncing with exercise.
2ccfb87 Updating score calculation to compute points even if some of tests failed in compilation.
1acc342 Implementation of the async operations core (worker, dispatcher, ...).
v1.26.0
Changelog
- CAS/LDAP registration and authentication delegated to external authentication adapter-application.
Commits
817d149 Email verification added.
bf2a29c Adjustments, cleanup, fixing frontend codes.
31fade0 Updating tests and fixing bugs.
658a0c2 Removing old external authentication services.
c311e1f External service authenticator redesigned.
v1.25.1
Changelog
- Fixing bug in error reporter
- Adjusting ACLs for exercise configs
Commits
08af2a4 #! v1.25.1
7d3df9c Introducing viewConfig into exercise ACLs (so supervisors may see configs of exercises they can assign).
2d1948b Fix: nette/security update changed behavior of User security structure, mimic the previous behavior by calling user-storage directly
55f2aa5 Minor ACL adjustment. Only a full supervisor role can set admins of a group.
af6820f Fixing minor issue with capturing token parsing exceptions.
v1.25.0
Changelog
- Upgrading to Nette 3.1 (+ subsequent upgrades of relevant libs)
- Switch from kdyby/doctrine to nettrine doctrine integration (requires minor adjustment of existing config files!)
- Improvements in SIS Integration API
- Removing deprecated DB properties, refactoring
Commits
f96dc06 #! v1.25.0
d750ef1 Adding regression test to prevent such bug emerging again.
33e580b Fixing bug in group assignment stats loading.
464b67c Fixing a small bug (failure when extracting empty files from zip archive).
f31e083 Adding optional noAdmin flag to add group endpoint which prevents assigning the logged-in user as admin of newly created groups.
64ee4f5 Update app/V1Module/presenters/SisPresenter.php
037be18 Improving how the group names are created from SIS courses and their scheduling information.
ffb4815 Separating group object and group references for individual courses in SIS supervisedCourses endpoint.
2af480d Improving the response of SIS subscribed groups (student view). The response now includes course data and ancestral closure of relevant groups.
269ed7a Resolve all deprecations in code
b803b35 Update composer packages, mainly because of new nette 3.1 version
56e5e42 Update zxcvbn-php to version 1.2
1278a78 Removing properties of file-related entities which are no longer used after FS migration.
6f227df Final polishing of nelmio/alice upgrade
7f3bd8a Make export of fixtures work after nelmi/alice upgrade
894735e Upgrade nelmio/alice to version 3.7 and modify code accordingly
84585f5 Updating readme and fixing specs file.
d3475c2 Use new bootstrap file format from nette/sandbox
9429bae Use new bootstrap file format from nette/sandbox
1901804 Switch from kdyby/doctrine to nettrine doctrine integration
6af7649 Integrate zenify/doctrine-fixtures within API
343aa13 Why did I do that? I do not f'ing remember
c4adeac Fixing issue with routers in security presenter.
0111207 Removing unused preflight route.
84852c0 Bring back kdyby/events so the gedmo doctrine extensions continues to work
33cc114 Proper instantiation of Nette Passwords service.
a222513 Updating ZipFilesResponse to implement interface rather than extend existing implementation.
909be79 Downgrade doctrine/dbal as it breaks console interface
035f377 Repair some more phpstan and tests errors after upgrade
7de6a46 Do composer update and update all remaining dependencies
9218fb0 Repair codebase after nette 3.0 upgrade
c630351 Upgrade nette to version 3.0
34cad9e Add some php extensions to composer config
v1.24.0
Changelog
- Judge logs are collected separately (stdout, stderr), exercise may switch between merged/split logs, assignment can select visibility of split logs individually.
- Signal exit codes are collected presented in solution results.
- Fixing cleanup commands.
- Fixing issues from previous release (FS migration).
Commits
654392d #! v1.24.0
bd39d61 Fixing bug in merge judge log indicator in reference solutions.
839b24b Adding mergeJudgeLogs flag to exercise (and assignment) which allows the user to choose whether a split log is desired for a particular exercise (ensuring BC).
87af0e2 Database migration and some final polishing.
a21c28c Fixing unit tests and found bugs.
2850d3c Updating settings, ACLs, and views to reflect the split of judge logs.
0735f21 Updating task result entity - splitting the judge log to stdout and stderr and additionally collecting exit signal from the result.
4939a53 Fixing stupid typo in file name.
e534355 Fixing worker files cleanup command.
0b51f3c Fixing uploaded files cleanup command.
1a55c71 Updating RPM .spec file to reflect recent file storage modifications.
d978317 Improving submission notifications in case a solution is re-evaluated.
160e077 Fixing problem with uploaded files rights.
508c8ba Invalid characters in uploaded file will now produce a 400 Bad Request response (instead of 500 Internal Error).
5b5dfdd Repair test after phpstan corrections
6a55d11 Repair some of the new phpstan errors
6d77ad9 Fix badges after wrong codecov badge update
ed9799a Remove obsoleted phpstan run script
6ebe22b Yet another attempt to fix tests.
3b9f730 Remove phpstan/extension-installer dev dependency
326f863 Attempt to fix unit tests.
5138b6a Switch to codecov from coveralls
22cf847 Make phpstan working in GitHub Actions and use phpstan-nette integration
90e8295 Update doctrine/migrations, nette packages and test packages
2df8d40 Rename workflow to CI from PHP
58bf94d Remove travis configuration
d39e596 Configure github actions