Skip to content

Releases: ReCodEx/api

v2.0.2

10 Oct 22:53

Choose a tag to compare

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

03 Oct 11:40

Choose a tag to compare

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

25 Sep 18:13

Choose a tag to compare

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

26 Mar 23:10

Choose a tag to compare

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

03 Mar 21:01

Choose a tag to compare

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

03 Feb 22:30

Choose a tag to compare

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

07 Dec 00:18

Choose a tag to compare

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

v1.23.1

23 Nov 21:48

Choose a tag to compare

Changelog

  • Fixing rounding problem with score threshold in assignments.
  • Fixing bugs from last release.

Commits

7e51a4e #! v1.23.1
a90a22c Fixing rounding problem with score threshold in assignments.
879e02a Evaluation loader should treat missing result file as soft error unless in case when the broker explicitly reports success (refactoring included).
e255064 Fixing argument passing error in uploaded file name check.

v1.23.0

22 Nov 22:06

Choose a tag to compare

Changelog

  • Implementing completely new file storage (local FS and hash-based), which shall replace the Fileserver component.
  • Making bison exec path configurable in pipeline.
  • Switching ZMQ socket creation to non-persistent mode when starting evaluation.
  • Seting up RPM packaging for core-api component.

Commits

8cc3d87 #! v1.23.0
21b0b32 Fixing last bugs.
782bd53 Fixing testing issues and travis config.
78188d9 Preventing race conditions on uploaded result archives.
c4fb304 Updating nette/application version in lock file (fixing security vulnerability).
dbaf7b6 Cleanup (except for entity properties, which will be removed in phase two).
30f5ebb Cleanup commands fixed and added.
ecfdf4b Completing the transformation so that entire core module uses file storage manager.
5ea4335 Updating assignments solutions presenter to use new file storage manager.
24afde2 The upload files presenter was updated to use new file storage manager.
fc0c353 Replacing UploadFileStorage with file storage manager.
a00bf75 Replacing formal ExerciseFileStorage helper with new file storage manager.
8083531 Improving functions of file storage.
a52f4a9 Updating file-related entities to be ready for new file storage. Implementing routes to serve worker needs (downloading and uploading files).
ae225b0 Implementing completely new file storage (local FS and hash-based), which shall replace the Fileserver component.
5a9deae Updating specs file.
2867f31 Making bison exec path configurable in pipeline.
80ec503 Switching ZMQ socket creation to non-persistent mode when starting evaluation.
64b2728 Updating fixtures ... and RPM spec file ... and migrations ... (#365)
82e2f84 Small bug in sample config fixed.
9d6d8a0 Packaging (#354)

v1.22.0

13 Aug 21:51

Choose a tag to compare

Changelog

  • Implementing a universal score calcularor that computes score based on user expression (represented in AST)
  • Each solution remembers its score config (so it can be explained to the user)
  • Better way of reporting errors from exercise valiadator (error messages include tags which can be used for translated errors at client)
  • Adding 'isDetaining' flag to groups, which prevents students from leaving the group on their own

Commits

012429d (HEAD -> master, origin/master, origin/HEAD) Improving user-error reporting for empty exercise specifications (@no-texts).
df9a5ac Adding tests for universal score calculator and fixing found bugs.
15f1999 Adjusting the AST expression representation and utilizing it for universal score calculator implementation.
8a7e0af Creating classes for AST representation of universal score config.
697e747 Fixing exercise limits validation (missing tests in the limits config are reported).
fc0c63b Modifying semantics of broken exercises' error messages.
3efb22f Changing the API of score configs so that Yaml encoding is handled internally and the config is always treated as a structure.
c553f8d Final refactoring and polishing.
d20e29c Adding endpoints that allow retrieving score configs for solution evaluations.
43a748f Updating exercise configs cleanup to encompass the score configs as well (and optimizing the cleanup script).
cba5a38 Making sure that evaluation remembers the exercise score config used to compute the score.
4415702 Simple score calculator was split to uniform and weighted calculators (data migration included).
bc995bd Moving exercise score config into separate entity (score config endpoint breaks BC).
2f67af9 Adding 'isDetaining' flag to groups, which prevents students from leaving the group on their own.